我的電腦是windows,在這裏記錄是自己從安裝Python包到代碼成功運行的過程。
程序代碼使用到了numpy和opencv庫。
所以windows下要安裝這兩個庫,通過pip安裝。
numpy:一個用python實現的科學計算包。包括:1、一個強大的N維數組對象Array;2、比較成熟的(廣播)函數庫;3、用於整合C/C++和Fortran代碼的工具包;4、實用的線性代數、傅里葉變換和隨機數生成函數。numpy和稀疏矩陣運算包scipy配合使用更加方便。
OpenCV:一個基於BSD許可(開源)發行的跨平臺計算機視覺庫,可以運行在Linux、Windows、Android和Mac OS操作系統上。
安裝pip過程:
1.將ez_setup.py下載下來,安裝setuptools:
ez_setup.py地址:https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py #安裝setuptools
安裝成功後會在你的python安裝目錄下有一個Scripts文件夾,建議將其弄在環境變量中。後續要用到。
2.安裝pip
easy_install.exe pip
3.安裝numpy
pip install numpy
下面開始安裝opencv庫:下載opencv程序,我下載的是2.4.x的。其實opencv的安裝就是解壓的過程。
將上面的文件移動到Python的安裝包下。
程序正文:
#Python 3
#使用python程序獲取我們電腦攝像頭或者外接的usb免驅攝像頭的圖像
#若提取的圖像是電腦自帶的攝像頭,括號內的數字爲0,外界的USB免驅攝像頭爲1
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
while(true):
ret.frame = cap.read()
gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
cv2.imshow("frame",gray) #顯示圖像
if cv2.waitKey(1) & 0xFF == ord('q'):
break;
cap = release()
cv2.destroyAllWindows()
#這裏實現的是圖像的圓的識別,描邊與圓心的計算。
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
while(1):
#獲取每一幀
ret.frame = cap.read()
#轉到HSV
hsv = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
#設定藍色的閥值
lower_blue = np.array([110,50,50])
upper_blue = np.array([130,255,255])
#根據閥值構建
mask = cv2.inRange(hsv,lower_blue,upper_blue)
#對圖像和..進行位運算
res = cv2.bitwise_and(frame,frame,mask=mask)
gray_img = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
img = cv2.medianBlur(gray_img,5)
cimg = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR)
try:
circles = cv2.HoughCircles(img,cv2.HOUGH_GRADIENT,1,120,param1=100,param2=30,minRadius=0,maxRadius=0)
circles = np.unint16(np.around(circles))
for i in circles[0, :]:
# draw the outer circle
cv2.circle(cimg,(i[0],i[1]),i[2],(0,255,0),2)
# draw the center of the circle
cv2.circle(cimg,(i[0],i[1]),2,(0,0,255),3)
except Exception as e:
raise
else:
pass
finally:
pass
效果圖:
有什麼問題聯繫我:839505138
源地址:源地址
輔助:輔助