操作方法
首先,在python编译器里面加载opencv和re模块: # -*- coding: utf-8 -*- import cv2,re re模块用来防止转义,主要在python加载文件时,防止文件的绝对路径转义。
指定训练数据集的绝对路径,注意是绝对路径,文件名称是: haarcascade_frontalface_default.xml 这是一个表格文件,用来训练前脸识别的。 绝对路径放在引号里面,并在引号前面加上字母r,防止转义哦。
准备一张图片,放到电脑桌面上。 记下图片的绝对路径。
在python里面加载训练数据,并读取图片。 face_patterns = cv2.CascadeClassifier(path1) sample_image = cv2.imread(path2) 此时运行,不会有任何返回,但是机器已经被训练好了。
用训练的结果,来识别图中人脸的位置。 这个时候返回的是人脸的位置坐标,但是,这个坐标是放在内存里面,你看不到。 faces = face_patterns.detectMultiScale(sample_image,scaleFactor=1.1,minNeighbors=5,minSize=(50, 50))
在原图上,框选人脸,并把图片保存为lian.png。 注意看,导出图片用的也是绝对路径,前面的r防止转义。
下图是导出的图片。