配好了OpenCV的Python环境,

opencv api

要想使用opencv,就必须先知道其能干什么,怎么做。于是API的重要性便体现出来了。就本例而言,使用到的函数很少,也就普通的读取图片,灰度转换,显示图像,简单的编辑图像罢了。

读取图片

只需要给出待操作的图片的路径即可。

复制代码
import cv2 image = cv2.imread(imagepath)
复制代码

灰度转换

灰度转换的作用就是:转换成灰度的图片的计算强度得以降低。

复制代码
import cv2 gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
复制代码

画图

opencv 的强大之处的一个体现就是其可以对图片进行任意编辑,处理。 
下面的这个函数最后一个参数指定的就是画笔的大小。

复制代码
import cv2 cv2.rectangle(image,(x,y),(x+w,y+w),(0,255,0),2)
复制代码

显示图像

编辑完的图像要么直接的被显示出来,要么就保存到物理的存储介质。

复制代码
import cv2 cv2.imshow("Image Title",image)
复制代码

获取人脸识别训练数据看似复杂,其实就是对于人脸特征的一些描述,这样opencv在读取完数据后很据训练中的样品数据,就可以感知读取到的图片上的特征,进而对图片进行人脸识别。

复制代码
import cv2 face_cascade = cv2.CascadeClassifier(r'./haarcascade_frontalface_default.xml')
复制代码

里卖弄的这个xml文件,就是opencv在GitHub上共享出来的具有普适的训练好的数据。我们可以直接的拿来使用。

训练数据参考地址:https://github.com/opencv/opencv/tree/master/data/haarcascades 

探测人脸

说白了,就是根据训练的数据来对新图片进行识别的过程。