使用opencv做人臉識別

本文介绍了如何使用OpenCV进行人脸识别。通过pip安装opencv-python,然后在PyCharm中创建并运行face_detect.py脚本,可以实现对脸部的检测。然而,测试中存在无法准确识别眼睛的问题。
摘要由CSDN通过智能技术生成

opencv做人臉識別已經做的比較好了,比如相繼拍照時自動鎖定人臉,並對臉部做特殊的濾光或補光處理。下面就體驗一把吧。

1. 安裝opencv。網上有很種方法,但看起來很複雜,其實最簡單的方式就是直接用pip install opencv-python安裝。如果使用pycharm開發,直接寫import cv2,pycharm會提示安裝,按照提示安裝即可(不過這樣只會在項目裏安裝),而且安裝的內容不夠全,需要手動到opencv官網下載源文件。

2. 在pycharm中新建python文件face_detect.py,代碼如下:

import cv2
import sys
face_cascade = cv2.CascadeClassifier('/home/richard/richard/opencv-3.4.0/data/haarcascades//haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('/home/richard/richard/opencv-3.4.0/data/haarcascades/haarcascade_eye.xml')
img_path = sys.argv[1]
img = cv2.imread(img_path)
img_gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(img_gray)
for (x,y,w,h) in faces:
    face_area = cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
    face_gray = img_gray[y:y+h,x:x+w]
    face_color = img[y:y+h,x:x+w]
    eyes = eye_cascade.detectMultiScale(face_gray)
    for (ex,ey,ew,eh) in eyes:
        cv2.rectangle(face_color,(ex,ey),(ew,eh),(0,255,0),2)
cv2.imwrite('/home/richard/richard/myOpencv/face_detect.png',img)

3. 直接在pycharm的terminal中測試: python face_detect.py /home/richard/1.jpg 就能看到

/home/richard/richard/myOpencv/face_detect.png

的效果文件了。

我這邊測試了很多遍始終無法正確識別眼睛,臉是能準確識別的。那位大佬知道原因的話請告知。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值