1.传入XML文件建立模型
import cv2
face_cascade=cv2.CascadeClassifier("haarcascade_frontalface_default.xml")
2.载入图片
传入为BGR图,转为Grey图后进行识别;
#识别模型
img = cv2.imread("photo.jpg") #不传入参数 默认1
grey_img = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) #将BGR转为gray
#cascade XML model
3.参数
得到的face为numpyarray,为监测到的左上角坐标与宽高参数;
#numpy_array
faces = face_cascade.detectMultiScale(grey_img,
scaleFactor=1.05,#每次放大1.05去找更大的face 越接近1,每次寻找约精确
minNeighbors=5) #每次找5个neighbor
4.在图像上画出方框
cv2.rectangle(img,顶点1(,),顶点2(,),颜色,宽度)
#print(faces) #给出左上角的点坐标,以及长款
for x,y,w,h in faces:
img = cv2.rectangle(img,(x