import cv2 as cv import numpy as np #通过级联分类器(或级联检测器)来加载特征值 #正脸清晰图片识别精确度较高,侧脸可能识别不出人脸位置 def face_detect_demo(): #将图像转换为灰色度图像,所有特征都是基于灰度图像处理的 gray = cv.cvtColor(src,cv.COLOR_BGR2GRAY) #级联分类器加载人脸识别所需要的特征值 face_detector = cv.CascadeClassifier("D:/OpencvFace/haarcascades/haarcascade_frontalface_alt_tree.xml") #detectMultiScale,在多个尺度空间对图像进行人脸检测 #第一个参数gray表示我们输入的图像 #第二个参数1.02表示尺度变化 #第三个参数表示相似范围,数值越大人脸识别精确度越高,数值越小人脸识别度精确度越差(为1时可能识别错误) #若长时间检测不到人脸,可将数值降低 faces = face_detector.detectMultiScale(gray,1.02,1) for x,y,w,h in faces: #cv.rectangle() 在图像上标出矩形 #第一个参数src需要进行标注的图片 #第二个参数(X,Y)矩形左上角标记位置 #第三个参数(x+w,y+h)矩形右下角标记位置 #第四个参数(0,0,255)为矩形标记边框线的颜色 #第五个参数2为矩形标记边框线的线宽 cv.rectangle(src,(x,y),(x+w,y+h),(0,0,255),2) cv.imshow("result",src) src = cv.imread('dili.jpg') cv.imshow("timg",src) face_detect_demo() #只创建一次window,后面在此window上进行刷新显示 cv.namedWindow("result",cv.WINDOW_AUTOSIZE) cv.waitKey(0) cv.destroyAllWindows()
Python的Opencv初学部分知识点(七)
最新推荐文章于 2021-12-25 09:50:23 发布