Más contenido relacionado
Similar a Using openCV on Raspberry Pi (20)
Más de CAVEDU Education (20)
Using openCV on Raspberry Pi
- 6. 視訊套件
• luvcview(Linux USB Video Class View)
– $which luvcview
– $sudo apt-get install luvcview
– $luvcview –s 320X240
• Guvcview
– $sudo apt-get install guvcview
– $sudo guvcview
6
- 12. camera.py
• import cv2.cv as cv:匯入opencv資料庫
• import time:匯入時間資料庫
• 1、cv.NamedWindow(“camera”, 1):建立一個展示
畫面的視窗
• 2、capture = cv.CaptureFromCAM(0):建立攝影
機與畫面的結構
• 3、cv.SetCaptureProperty(capture, 3, 360):設定
畫面寬度
• 4、cv.SetCaptureProperty(capture, 4, 240):設定
高度
12
- 13. camera.py
• while True: #建立顯示畫面的迴圈
• img = cv.QueryFrame(capture)#捕捉畫面並指定
於img
• cv.ShowImage(“camera”, img)#將img定位於視窗
• if cv.WaitKey(10) == 27#按下ESC鍵結束
• break
• cv.DestroyAllWindows()
13
- 18. camera2.py
• cv.InRangeS(hue_img, (38,120,60),(75,
255, 255), threshold_img)
– #將(38,120,60),(75, 255, 255)為特定顏色的彩
色範圍
– #Python: cv.InRangeS(src, lower, upper, dst)
18
- 32. camera3.py
• storage = cv.CreateMemStorage(0)
• #建立操控畫面的記憶體空間
• contour = cv.FindContours(threshold_img, storage,
cv.CV_RETR_CCOMP,
cv.CV_CHAIN_APPROX_SIMPLE)
• #尋找在臨界門檻值內的區塊
• points = [] #建立保存不同色點的陣列
• while contour: #檢查所有迴圈內的輪廓
• rect = cv.BoundingRect(list(contour))
• #對彩色區塊建立一個封閉的長方形
32
- 33. camera3.py
• contour = contour.h_next() #為下一個輪廓準備
• size = (rect[2]*rect[3])
• #計算長方形的面積
• if size>100: #大小大於100像素
• pt1=(rect[0],rect[1])
• #長方形左側X、Y座標
• pt2=(rect[0]+rect[2],rect[1]+rect[3])
• cv.Rectangle(img, pt1, pt2, ))
• #在指定的位置上畫一個長方形
33
Notas del editor
- compare() , inRange() , threshold() , adaptiveThreshold() , Canny()