1. 程式人生 > >opencv+python3.4的人臉識別----2017-7-19

opencv+python3.4的人臉識別----2017-7-19

pri 除法 mage idt .com aar 特征 ges 讀取

opencv3.1 + python3.4

第一回合(抄代碼,可實現):人臉識別涉及一個級聯表,目前能力還無法理解。

流程:1.讀取圖像---2.轉換為灰度圖---3.創建級聯表---4.對灰度圖使用級聯表方法過濾---5.叠代得到的結果依次標記出來---6.保存圖像

完整代碼:

import cv2
#讀取圖片
img = cv2.imread(5.jpg)
#轉化為灰度圖
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
#特征級聯表
face_cascade = cv2.CascadeClassifier(rhaarcascade_frontalface_default.xml
) # print(type(face_cascade)) #<class ‘cv2.CascadeClassifier‘> #多尺寸檢測,返回列表 # print(face) #[[1947 2275 374 374].... face = face_cascade.detectMultiScale( gray,1.3,5 ) print(發現{0}個臉.format(len(face))) for (x,y,w,h) in face: #(圖像對象,圓心,半徑,顏色,封閉?) cv2.circle(img,((x+x+w)//2,(y+y+h)//2),w//2,(0,255,0),-1)
#保存圖像 cv2.imwrite(14Peoele.jpg,img) #顯示圖像 cv2.imshow(gray,img) #防止閃屏 cv2.waitKey(0)

註意:1.python3中除法的整數用“//”

    2.識別跟圖像像素有關,像素大,識別度高。

結果:

低像素:

技術分享技術分享

高像素:

技術分享技術分享

opencv+python3.4的人臉識別----2017-7-19