Python3.5+openCv進行人臉識別的環境搭建(Windows下)


一、環境是Windows下,python3.5,openCv選擇opencv_python‑3.3.1+contrib‑cp35‑cp35m‑win_amd64.whl (一定要選擇cp35的,電腦64位就選擇64的)

  openCv下載地址https://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv

  (其他方法可以下載openCv到本地,將opencv里的cv2.pyd拷貝到python\Lib\site-package文件夾后。但是我這樣操作后還是存在同樣的問題。嘗試了各種辦法均以失敗告終。
      后來了解到可能是python和opencv版本不兼容的問題,於是刪除了opencv文件,下載了對應於python3.5的opencv。我的python是3.5.3所以opencv對應選擇cp35的版本       opencv_python-3.2.0+contrib-cp35-cp35m-win_amd64.whl(這里需要注意如果python安裝的是32位的版本那么opencv也應該選擇32位的版本,否則opencv會安裝失敗)。

  把下載好的.whl拷貝到python\Lib\site-packages文件夾。開始菜單cmd進入命令窗口然后使用pip進行安裝,安裝命令為:pip install opencv_python-3.2.0+contrib-cp35-cp35m-    win_amd64.whl安裝成功后,問題解決。)

二、openCv小試牛刀(附贈openCv教程)

1顯示圖片(兩種方式,一種用matplotlib,一種用openCv)

    

2.調用攝像頭識別人臉

運用的技術有opencv(攝像頭、圖片處理),numpy(圖片數字化),os(文件的操作和處理),keras(構建神經網絡進行圖像識別)。

1讀取圖片、視頻
2灰度轉換:灰度轉換的作用就是:轉換成灰度的圖片的計算強度得以降低
3畫圖
4顯示圖像
5獲取人臉識別訓練數據
6探測人臉

 1 import numpy as np 
 2 import cv2
 3 import sys
 4 
 5 def CatVideo():
 6     cv2.namedWindow("shibie")
 7     #1調用攝像頭
 8     cap=cv2.VideoCapture(0)
 9     #2人臉識別器分類器   Train.xml可以自行下載,也可以去我git下載,地址稍后發布
10     classfier=cv2.CascadeClassifier("Train.xml")
11     color=(0,255,0)
12     while cap.isOpened():
13         ok,frame=cap.read()
14         if not ok:
15             break
16         #3灰度轉換
17         grey=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
18         #4人臉檢測,1.2和2分別為圖片縮放比例和需要檢測的有效點數
19         faceRects = classfier.detectMultiScale(grey, scaleFactor = 1.2, minNeighbors = 3, minSize = (32, 32))
20         if len(faceRects) > 0:            #大於0則檢測到人臉      
21             print("測試1")                             
22             for faceRect in faceRects:  #單獨框出每一張人臉
23                  x, y, w, h = faceRect  #5畫圖   
24                  cv2.rectangle(frame, (x - 10, y - 10), (x + w + 10, y + h + 10), color, 3)
25         cv2.imshow("shibie",frame)
26         print("ceshi2")
27         if cv2.waitKey(10)&0xFF==ord('q'):
28             break
29 
30     cap.release()
31     cv2.destroyAllWindows()
32 
33 
34 
35 CatVideo()

 git地址:https://github.com/chaoyuebeijita/face.git


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM