OpenMV鏡頭係一款細小、低功耗、低成本嘅電路板,佢幫你好輕鬆咁完成機器視覺(machine vision)應用。你可以透過高級語言Python腳本(準確啲講係MicroPython)嚟編程,而唔係用C/C++。Python嘅高級數據結構令你好容易喺機器視覺算法度處理複雜嘅輸出。不過,你仍然可以完全控制OpenMV。你可以好容易咁用外部終端觸發拍攝或者執行算法,亦都可以將算法嘅結果用嚟控制IO引腳。
OpenMV鏡頭嘅特點:
- STM32H743VIARM Cortex M7 處理器,480 MHz,1MB RAM,2 MB flash。所有 I/O 引腳輸出 3.3V 並且 5V 耐受。這個處理器有以下嘅 I/O 接口。
- 全速USB (12Mbs) 介面,連接至電腦。當插入OpenMV鏡頭後,你的電腦會出現一個虛擬COM端口同一個「U盤」。
- μSD卡槽提供100Mbps嘅讀寫速度,讓你嘅OpenMV攝像頭可以錄製影片,並將機器視覺素材從SD卡中提取出嚟。
- 一個SPI總線高達54Mbs速度,容許你簡單地將影像流數據傳送至LCD擴展板、WiFi擴展板或其他控制器。
- 一個 I2C 匯流排、CAN 匯流排,以及兩個非同步串列匯流排 (TX/RX),用於連接其他控制器或感測器。
- 一個12-bit ADC 同一個12-bit DAC。
- 3個I/O引腳用於舵機控制。
- 所有I/O端口皆可用於中斷同PWM(塊板上面有10個I/O引腳)。
- 一個RGB LED(三色),兩個高亮度850nm IR LED(紅外線)
- 可拆卸的鏡頭模組系統,容許OpenMV Cam H7與不同的感光元件模組連接:
- OpenMV4 H7預設配置嘅MT9M114感光元件處理640×480 8-bit 灰階圖或者640×480 16-bit RGB565彩色影像可以達到40 FPS;當解析度低於320×240可以達到80FPS。大多數簡單的演算法可以執行40~80FPS以上。你的 OpenMV 攝像頭有一個2.8mm焦距鏡頭在一個標準M12鏡頭底座上。如果你想使用更多的特殊鏡頭,你可以很容易地安裝。
- 對於專業嘅機器視覺應用,你可以購買我哋嘅全局快門攝像頭模組mt9V034。
- 對於紅外熱成像機器視覺應用,您可以購買我們的FLIR Lepton 紅外線熱成像模組。
- 3.7V 鋰離子電池接口,適用於業餘愛好者機械人應用。
資料請睇:https://singtown.com/openmv/
應用
目前OpenMV摄像头可以用嚟做以下嘅事情 (將來會更多):
- 神經網絡目標點檢測
- 你可以使用0penMV自行訓練神經網絡進行目標點檢測,訓練任何你想要檢測的目標。例如不同的數字、不同的水果、不同的標誌物、不同的零件甚至任何特定的不規則目標等,都可以訓練識別得到特定目標的數量、座標以及物體種類名稱等。
- 可以根據我們的影片教學,檢測實際道路上的交通標誌,例如禁止鳴笛、禁止停車、限速80等。/learn/50918
- 神經網絡分類
- 你可以使用0penMV自行訓練神經網絡進行目標點檢測,訓練任何你想要檢測的目標。例如不同的數字、不同的水果、不同的標誌物、不同的零件甚至任何特定的不規則目標等,都可以訓練識別得到特定目標的數量、座標以及物體種類名稱等。
- 可以根據我們的影片教學,分類人物是否佩戴口罩。/learn/50872
- 幀差分演算法
- 你可以使用OpenMV Cam上的幀差分算法來查看場景中的運動情況。幀差分算法可以將OpenMV用於安全應用。
- 顏色追蹤
- 你可以使用OpenMV在圖像中同時檢測多達16種顏色(實際上永遠不會想要找到超過4種顏色),並且每種顏色都可以有任意數量的不同色塊。OpenMV會告訴您每個色塊的位置、大小、中心和方向。使用顏色追蹤,您的OpenMV Cam可以進行編程,以追蹤太陽、線條追蹤、目標追蹤等等。影片示範:/learn/49993
- Marker Tracking標記追蹤
- 您可以使用OpenMV Cam來偵測顏色組的顏色,而非單獨的顏色。這讓您可以在物件上放置顏色標籤(2種或更多顏色的標籤),OpenMV會擷取標籤物件的內容。
- Face Detection 人臉偵測
- 你可以使用OpenMV Cam(或任何通用物件)偵測臉孔。你的OpenMV鏡頭能夠處理Haar模板進行通用物件偵測,並配備內置的Frontal Face模板和Eye Haar模板來偵測人臉和眼睛。/learn/50013
- 眼動追蹤
- 你可以使用眼球追蹤來偵測某人的注視方向。你可以用它來控制機械人。眼睛追蹤會偵測瞳孔的位置,同時偵測影像中是否有眼睛。
- 人物偵測
- 你可以使用內置嘅人體檢測器(TensorFlow Lite模型)檢測視野中係咪有人。
- 光流
- 你可以使用光流來偵測你嘅OpenMV攝影機面前嘅畫面。例如,你可以用四旋翼上嘅光流嚟控制喺空中嘅穩定性。
- QR Code Detection/Decoding 二維碼檢測/解碼
- 您可以使用OpenMV Cam在其視野中讀取QR碼。透過QR碼檢測/解碼,您可以讓智能機械人能夠讀取環境中的標籤。
- Data Matrix 檢測/解碼 矩陣碼檢測/解碼
- OpenMV Cam 亦能夠偵測同解讀矩陣碼(二維條碼 Data Matrix)。您可以喺度睇到我哋嘅影片。
- 線性條碼解碼
- OpenMV Cam 亦能夠處理一維條碼。它可以解碼 EAN2、EAN5、EAN8、UPCE、ISBN10、UPCA、EAN13、ISBN13、I25、DATABAR、DARABAR_EXP、CODABAR、CODE39、CODE93 以及 CODE128。在此觀看我們的影片:/learn/50017
- AprilTag追蹤標記追蹤
- 甚至比上面嘅QR碼更好,OpenMV Cam 亦都可以追蹤AprilTags。AprilTags係旋轉不變、尺度不變、剪切不變同照明不變嘅最先進基準標記。喺呢度睇我哋嘅影片:/learn/49590
- 直線偵測
- OpenMV Cam能夠在幾乎全速運行嘅情況下,快速完成無限長直線檢測。同時,亦能夠偵測到非無限長嘅線段。您可以喺度觀看我哋嘅影片:/learn/50009
- 圓形檢測
- 矩形偵測
- OpenMV亦能夠偵測矩形,佢用咗AprilTag庫入面嘅方形檢測程式碼。
- 模板匹配
- 您可以使用OpenMV模板匹配來檢測視野中是否有模板相似的圖片。例如,可以使用模板匹配來查找PCB上的標記,或讀取顯示器上的已知數字。
- 影像擷取
- 你可以使用OpenMV擷取RGB565/灰階的BMP/JPG/PPM/PGM影像。可以直接喺Python腳本中控制點樣擷取影像。最重要嘅係,使用機器視覺嘅演算法,進行繪製直線、繪製字符,然後儲存。
- 影片錄製
- 你可以使用OpenMV攝影機記錄RGB565/灰階的MJPEG影片或GIF圖像(或者RAW影片)。你可以在Python腳本中直接控制如何將每個影片幀記錄,並完全控制影片錄製的開始和結束。而且,像拍攝圖像一樣,你可以使用機器視覺的演算法,進行繪製直線,繪製字符,然後儲存。
最後,所有上述功能都可以混合IO引腳的控制,來配合你自己的自訂應用,以與現實世界交談。