在做深度學(xué)習(xí)的時候,難免會用到攝像頭采集圖像。在這個就會用到python調(diào)用攝像頭+opencv圖像處理。視頻圖像的處理和單幅圖片處理是一樣的,視頻就是很多單幅圖像連續(xù)播放。每秒播放(采集)的圖片數(shù)量叫幀率。
import cv2
#########圖像讀取部分
cap=cv2.VideoCapture('2.wmv') #調(diào)用目錄下的視頻
#cap=cv2.VideoCapture(0) #調(diào)用攝像頭‘0’一般是打開電腦自帶攝像頭,‘1’是打開外部攝像頭(只有一個攝像頭的情況)
width=1280
height=960
cap.set(cv2.CAP_PROP_FRAME_WIDTH,width)#設(shè)置圖像寬度
cap.set(cv2.CAP_PROP_FRAME_HEIGHT,height)#設(shè)置圖像高度
#顯示圖像
while True:
ret,frame=cap.read()#讀取圖像(frame就是讀取的視頻幀,對frame處理就是對整個視頻的處理)
print(ret)#
#######例如將圖像灰度化處理,
img=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)#轉(zhuǎn)灰度圖
cv2.imshow("img",img)
########圖像不處理的情況
cv2.imshow("frame",frame)
input=cv2.waitKey(20)
if input==ord('q'):#如過輸入的是q就break,結(jié)束圖像顯示,鼠標(biāo)點擊視頻畫面輸入字符
break
cap.release()#釋放攝像頭
cv2.destroyAllWindows()#銷毀窗口
###########圖像處理部分
img=cv2.imread("1.jpg",cv2.IMREAD_COLOR)#讀入圖片,后面的參數(shù)是怎么讀取圖片一般有灰度,全彩等
#img=cv.imread('E:\pytest\1.png') #或者直接讀取該路徑下的圖片
#cv2.imshow("src",img[:,:,0])
px=img[0,0,2]#img 第一個參數(shù),第二個參數(shù)是像素坐標(biāo);第三個坐標(biāo)是rgb三通道。取值(0,1,2)
print(px)
img[100,100]=(0,0,0)#更改指定坐標(biāo)的像素
#con=img[0:200,0:200]#扣矩形區(qū)域的圖
img=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)#轉(zhuǎn)灰度圖
blur=cv2.GaussianBlur(img,(5,5),0)#高斯濾波
ret3,th3=cv2.threshold(blur,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)#二值化
#cv2.imshow("gaussianblur",th3)
#cv2.imshow("sec",img)
#cv2.imwrite("1-1.jpg",255-img)
cv2.waitKey(0)
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
