基于opencv-python 实现人脸识别,每一步都有解释。
2018-11-21 12:50
543 查看
-
本人新手,只是拿别人代码练手,中间遇到的情况 以此记录一下,方便后续查看,如有问题,恳请大佬们指正!*
import cv2 patha ="C:\\Users\\LYD\\Desktop\\haarcascade_frontalface_alt2.xml" faceCascade = cv2.CascadeClassifier(patha)#分类器的使用 #填(0)表示插入摄像头,或者一段视频(插入视频的话用绝对路径) video_capture = cv2.VideoCapture("C:\\Users\\LYD\\Desktop\\123.mp4") while True: #video_capture表示按帧读取视频,ret,frame获取两个返回值 # ,ret为布尔型,如果读取是正确的,则返回true,视频读完则返回false。 #frame表示读取的每一帧图像 ret, frame = video_capture.read() #cvtColor()是颜色空间转换函数,此时将每一帧图像转换为灰度图。 gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) #detectMultiscale()可以检测图片中所有的人脸,并将人脸用 # vector保存各人脸的坐标、大小(用矩形表示),函数由分类器对象调用 faces = faceCascade.detectMultiScale( gray,#视频传下来的每一帧灰度图 scaleFactor=1.1,#表示在前后两次相继的扫描中,搜索窗口的比例系数,默认1.1,即每次搜索窗口依次扩大10% minNeighbors=3,#表示构成检测目标的相邻矩形的最小个数 (默认为3) #如果组成检测目标的矩形个数的和小于min_neighbors -1 都会被排除, # 若minineighbors为0.则什么也不做,返回所有的被检候选矩形框 minSize=(30, 30),#用来限制检测目标区域的范围 flags=cv2.cv2.CASCADE_SCALE_IMAGE #这一行代码可以不用,具体什么作用,我没查到 ) # 面部画框 for (x, y, w, h) in faces: #第一个参数:frame是原图, # 第二个参数:(x,y)是矩阵的左上点坐标, # 第三个参数:(x+w,y+h)是矩阵的右下点坐标, # 第四个参数:(0,255,0)是画线对应的rgb颜色, # 第五个参数:2是所画的线的宽度 cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2) #显示图片 cv2.imshow('Video', frame) #imshow()就是显示图片 if cv2.waitKey(1) & 0xFF == ord('q'): #cv2.waitKey(1) 1为参数,单位毫秒,表示间隔时间 # ord(' ')将字符转化为对应的整数(ASCII码) # 0xFF是十六进制常数,二进制值为11111111。 # 通过使用位和(和)这个常数,它只留下原始的最后8位 # (在这种情况下,无论CV2.WaITKEY(0)是),此处是防止BUG。 break video_capture.release() # 运行视频。 cv2.destroyAllWindows() #cv2.destroyWindows():删除指定的窗口。
相关文章推荐
- 基于python3 OpenCV3实现静态图片人脸识别
- 静态图片人脸识别 OpenCV3,Python3实现
- python调用OpenCV实现人脸识别功能
- 基于OpenCV的EigenFace FisherFace LBPHFace人脸识别的实现
- Python基于OpnenCV实现人脸识别
- 基于OpenCV的人脸检测——C++和Python实现
- OpenCV 3计算机视觉 Python语言实现(第二版) P72页人脸识别例子代码编译错误说明
- 基于python OpenCV实现动态人脸检测
- 基于caffe,opencv-python的人脸检测+识别
- Python基于OpenCV库Adaboost实现人脸识别功能详解
- 【图像识别】 Python+Opencv调用摄像头实现人脸识别并保存视频
- Python基于OpenCV实现视频的人脸检测
- python使用opencv实现人脸识别系统
- Python基于OpenCV实现视频的人脸检测
- 使用 HTML5, javascript, webrtc, websockets, Jetty 和 OpenCV 实现基于 Web 的人脸识别
- OpenCV3计算机视觉Python语言实现人脸识别笔记
- 人脸识别opencv3.1 for python(基于LBH)
- python下实现人脸识别(opencv2)
- OpenCV + python 实现人脸检测(基于照片和视频进行检测)
- 【Python+OpenCV】人脸识别基于环境Windows+Python3 version_3(Anaconda3)+OpenCV3.4.3安装配置最新版安装配置教程