Python+OpenCV静态图像读取与显示_Haar模型实现简单的人脸识别

目的:

1.主要是熟悉一下静态图像的读取与显示;

2.然后了解下基于OpenCV安装目录下haar特征识别人脸区域(人脸特征数据)

基于“tengxing007”的博客:

Python + OpenCV 实现简单的人脸识别点击打开链接

下载了作者github上的代码,代码最终可以运行,由于是新手走了些弯路,主要遇到问题:

1.model_face = ...haar-----.xml这里,要改成对应的目录

2.faceUtil.py里面多了个import matplotlib as plt,而且这也是错误的表达,这个问题找了半天

import matplotlib as plt这个表示错了,老是提醒我说没有对应的module

有人还说是pyc的问题,反正我这个不是

3.其实图片的相对路径还是绝对路径都可以,只是我在window上下载的"008.jpg"这张图片,挖槽,居然是损坏的,貌似没下载全,开始根本就打不开,好大个坑...

008.jpg图像损坏的情况下,运行时会报错:opencv-3.3.1\modules\highgui\src\window.cpp:339: error: (-215) size.width>0 && size.height>0 in function cv::imshow

后面发现,基于“半吊子全栈工匠”的博客:

7行Python代码的人脸识别点击打开链接

只要7行代码就搞定了,厉害厉害~

Python+OpenCV静态图像读取与显示_Haar模型实现简单的人脸识别

我大概画了个流程,里面这个CascadeClassifier(级联分类器),还不是很理解,这个多尺度检测,更加没有听说了。后续会在我自己的评论中添加对这两部分内容的解释

发现一个有趣的问题:“tengxing007”博客中的图片那几个美女的脸只能识别4个人,挖槽,这样子不行啊,你看“半吊子全栈工匠”里面全部识别出来了,汗~

怀疑是“scaleFactor”的问题,我没试将此参数的值改变会有什么影响...

scaleFactor=1.1