呼叫攝像頭程式
import numpy as np
import cv2
#呼叫筆記本內建攝像頭,所以引數為0,如果有其他的攝像頭可以調整引數為1,2
cap=cv2.videocapture(0)
while
true
:#從攝像頭讀取
sucess,img=cap.read(
)#轉為灰度
gray=cv2.cvtcolor(img,cv2.color_bgr2gray)
#顯示攝像頭,背景是灰度。
cv2.imshow(
"img"
,gray)
#保持畫面的持續。
k=cv2.waitkey(1)
if k ==27:
# 通過esc鍵退出攝像
cv2.destroyallwindows(
)break
elif k ==
ord(
"s")
:# 通過s鍵儲存,並退出。
#關閉攝像頭
cap.release(
)
1、cap = cv2.videocapture(0)
2、ret,frame = cap.read()
3、cv2.waitkey(1),waitkey()方法本身表示等待鍵盤輸入,
引數過大如cv2.waitkey(1000),會因為延時過久而卡頓感覺到卡頓。
c得到的是鍵盤輸入的ascii碼,esc鍵對應的ascii碼是27,即當按esc鍵是if條件句成立
4、呼叫release()釋放攝像頭,呼叫destroyallwindows()關閉所有影象視窗。
5、cv2.cvtcolor(img,cv2.color_bgr2gray)
opencv預設格式為bgr,轉化為灰度圖,也有cv2.cvtcolor(img,cv2.color_bgr2rgb)轉化為rgb圖
6、cv2.imshow(wname,img)
顯示,wname為名稱,img為要顯示的
7、**使用函式cv2.imwrite(file,img,num)儲存乙個影象。**第乙個引數是要儲存的檔名,第二個引數是要儲存的影象。可選的第三個引數,它針對特定的格式:對於jpeg,其表示的是影象的質量,用0 - 100的整數表示,預設95;對於png ,第三個引數表示的是壓縮級別,預設為3。
注意:cv2.imwrite_jpeg_quality型別為 long ,必須轉換成 int
cv2.imwrite_png_compression, 從0到9 壓縮級別越高影象越小
cv2.imwrite(
'1.png'
,img,
[int
( cv2.imwrite_jpeg_quality),95
])cv2.imwrite(
'1.png'
,img,
[int
(cv2.imwrite_png_compression),9
])
opencv與人臉識別
人臉識別最近幾年比較流行,不接觸還以為是什麼高階什麼 今天學學記錄一下其實除去訓練模型不好做,利用opencv還是很容易實現的,就來玩玩人臉識別。人臉檢測器 預設 haarcascade frontalface default.xml 人臉檢測器 快速harr haarcascade frontal...
OpenCV人臉檢測 4 繪製人臉與人眼區域
img 為目標 左上角座標為 x,y 右下角座標為 x w,y h 顏色 b,g,r 255,0,0 表示藍色,0,255,0 表示綠色,0,0,255 表示紅色,3 表示 bgr 三個通道。2代表邊框線粗度為 2。使用 opencv 分類器檢測人臉之後,一張中可能包含多個人臉,所以對每乙個識別到的...
python中使用Opencv進行人臉識別
python中使用opencv進行人臉識別 cv2.imshow無法顯示影象 在執行cv2.imshow後,需要使用cv2.waitkey來保持視窗的顯示。python opencv影象標註矩形框bounding box 用 opencv 標註 bounding box 主要用到下面兩個工具 cv2...