在ROS機器人的應用開發中,調用攝像頭進行機器視覺處理是比較常見的方法,現在把利用opencv和python語言實現攝像頭調用並轉換成HSV模型的方法分享出來,希望能對學習ROS機器人的新手們一點幫助。至於為什么轉換成HSV模型,因為在機器視覺方面用HSV模型進行圖像處理是比較方便的,實現的方法和效果相對於其他模型都較為突出。
接下來是完整步驟:
1、打開一個終端,用vim編輯器新建並打開一個后綴為.py的文件
1 $ vim a.py
2.在打開的文件里按“a”進入編輯模式,然后輸入以下代碼
1 import cv2 2 import numpy as np 3 cap=cv2.VideoCapture(0) #打開默認攝像頭 4 while(1): 5 ret,frame = cap.read() #讀取實時圖像 6 cv2.imshow("capture",frame) #顯示讀取出來的圖像 7 hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) #把RGB模型轉換成HSV模型 8 cv2.imshow("HSV",hsv) #顯示轉換后的圖像 9 if cv2.waitKey(1) & 0xFF == ord('q'): 10 break
11 cap.release() 12 cv2.destoryAllwindows()
然后按“ESC”鍵退出編輯模式,按shift+;鍵會在底下顯示一個冒號,輸入wq保存並退出,回到終端
3、用python執行這個程序
1 $ python a.py
接下來就能看見調用出來的圖像了。按q就退出執行了。
注意:執行程序時要注意程序的路徑,要么在程序所在位置打開終端,要么在執行程序時寫清楚程序所在路徑,例如 python /home/zjx/a.py