目錄
一、OpenMV IDE下載
二、OpenMV界面
三、Hello World!
四、將代碼燒錄到OpenMV實現脫機運行
五、插SD卡(為什么買的時候沒送?)
?
一、OpenMV IDE下載
瀏覽器搜索OpenMV官網,進入后點擊“立即下載”,即可下載OpenMV的IDE。因為我這里是使用Windows開發,所以下載與Windows匹配的版本。
?下載好后一路點擊安裝,什么都不需要管。在最后會提示是否安裝XXX,一路點“是”就可以。安裝好后會自動運行OpenMV的IDE。
二、OpenMV界面
?左邊最大的是代碼編寫框,需要在這里寫代碼。
右上角寫著“沒有圖像”的是OpenMV的Frame Buffer窗口,可以通過它來獲知當前攝像頭捕獲到了什么,不過現在我們沒有鏈接攝像頭,所以什么都不顯示。
它的下方是直方圖,可以顯示不同顏色的閾值,點擊該窗口右上方的下拉三角即可切換不同的數據,包括RGB、灰度、LAB、YUV四種。
用USB數據線將OpenMV與電腦進行鏈接,點擊IDE中左下角的鏈接和運行按鈕,即可看到右邊兩個窗口有了顯示數據。?
三、Hello World!
# Hello World Example
#
# Welcome to the OpenMV IDE! Click on the green run arrow button below to run the script!import sensor
import timesensor.reset() # Reset and initialize the sensor.
sensor.set_pixformat(sensor.RGB565) # Set pixel format to RGB565 (or GRAYSCALE)
sensor.set_framesize(sensor.QVGA) # Set frame size to QVGA (320x240)
sensor.skip_frames(time=2000) # Wait for settings take effect.
clock = time.clock() # Create a clock object to track the FPS.while True:clock.tick() # Update the FPS clock.img = sensor.snapshot() # Take a picture and return the image.print(clock.fps()) # Note: OpenMV Cam runs about half as fast when connected# to the IDE. The FPS should increase once disconnected.
在代碼中,將鼠標移至任意函數或庫處停留一段時間,即可查看光標停留位置指向函數或庫的部分信息。?
新打開的IDE代碼區自帶了一段代碼,第五及第六行是import語句,用于導入本程序需要使用的庫。這個程序中導入了“sensor”及“time”兩個庫。
sensor.reset()用作初始化,初始化OpenMV的感光元件。
sensor.set_pixformat()設置像素模式,需要一個參數,可選項如下:
- sensor.GRAYSCALE: 灰度,每個像素8bit。
- sensor.RGB565: 彩色,每個像素16bit。
sensor.set_framesize()設置圖像的大小,需要一個參數,可選項如下(轉載自官方中文文檔):
- sensor.QQCIF: 88x72
- sensor.QCIF: 176x144
- sensor.CIF: 352x288
- sensor.QQSIF: 88x60
- sensor.QSIF: 176x120
- sensor.SIF: 352x240
- sensor.QQQQVGA: 40x30
- sensor.QQQVGA: 80x60
- sensor.QQVGA: 160x120
- sensor.QVGA: 320x240
- sensor.VGA: 640x480
- sensor.HQQQVGA: 80x40
- sensor.HQQVGA: 160x80
- sensor.HQVGA: 240x160
- sensor.B64X32: 64x32 (用于幀差異 image.find_displacement())
- sensor.B64X64: 64x64 用于幀差異 image.find_displacement())
- sensor.B128X64: 128x64 (用于幀差異 image.find_displacement())
- sensor.B128X128: 128x128 (用于幀差異 image.find_displacement())
- sensor.LCD: 128x160 (用于LCD擴展板)
- sensor.QQVGA2: 128x160 (用于LCD擴展板)
- sensor.WVGA: 720x480 (用于 MT9V034)
- sensor.WVGA2:752x480 (用于 MT9V034)
- sensor.SVGA: 800x600 (僅用于 OV5640 感光元件)
- sensor.XGA: 1024x768 (僅用于 OV5640 感光元件)
- sensor.SXGA: 1280x1024 (僅用于 OV5640 感光元件)
- sensor.UXGA: 1600x1200 (僅用于 OV5640 感光元件)
- sensor.HD: 1280x720 (僅用于 OV5640 感光元件)
- sensor.FHD: 1920x1080 (僅用于 OV5640 感光元件)
- sensor.QHD: 2560x1440 (僅用于 OV5640 感光元件)
- sensor.QXGA: 2048x1536 (僅用于 OV5640 感光元件)
- sensor.WQXGA: 2560x1600 (僅用于 OV5640 感光元件)
- sensor.WQXGA2: 2592x1944 (僅用于 OV5640 感光元件)
?這里樣例代碼設置了“sensor.QVGA”,即設置圖像大小為320×240。
sensor.skip_frames(n=10)跳過一些幀,跳過n張照片,在更改設置后,跳過一些幀,等待感光元件變穩定。樣例代碼設置為2000。
clock = time.clock()開啟一個時鐘。
之后,我們進入一個while的大循環里。在這個循環里,我們使用sensor.snapshot()拍攝一張照片,返回一個image對象,并使其顯示在右側欄當中。
最后一句是打印幀率,我們可以在代碼區下方打開串行終端查看不斷顯示的幀率。
注意:這里顯示的只是傳輸圖像的幀率,如果我們在幀緩沖區右上角點擊禁用,即不再想電腦傳輸圖片,此時再次連接OpenMV,可以看到幀率有一波猛漲。
OpenMV的鏡頭是可以調整對焦的,只需要將鏡頭下方的鎖焦環擰松,然后調整攝像頭位置即可,一般最清晰的位置在底部偏上一些。調整好之后把鏡頭與鎖焦環擰緊即可。
四、將代碼燒錄到OpenMV實現脫機運行
有時候我們想讓OpenMV在不連接電腦的情況下也可以自己運行寫好的代碼,此時需要打開上方工具欄的“將打開的腳本保存到OpenMV CAM(作為main.py)選項。選擇之后可以看到OpenMV亮了紅燈,一會后熄滅,證明程序下載完成。

打開我的電腦可以看到,有一個新的U盤,這個就是OpenMV的Flash空間,打開后可以看到main.py,此時就是我們下載進去的程序。下載好之后,即使我們不連接電腦而是給它獨立供電,也可以運行寫好的程序。
五、插SD卡(“為什么買的時候沒送?”)
如果覺得OpenMV自帶的Flash空間太小,我們可以在背部找到一個卡槽用來裝儲存卡,最大支持32GB。插好卡之后再打開”我的電腦“,可以看到OpenMV的Flash被SD卡代替,存儲空間已經變大了。