2018年10月15日的文章

Python人脸检测(初级)

忙了一段时间,少有时间写文,前两天公司的一个web项目需要用户上传自拍照然后检查自拍照里面的人脸状态(人脸数量,是否正脸,是否戴眼镜,是否戴帽子等等),如果状态合适就将人脸提取出来,最后与设置的前景图片进行融合。

这其中涉及到的关键点在于人脸的检测,人脸的提取,至于人脸与前景的融合则可以使用前端js实现,对人脸的处理一般使用滤镜处理,前端可以使用腾讯AlloyTeam团队开源的项目AlloyImage()处理图片,拥有丰富的滤镜。当然也可以在后端处理好传给前端,后端处理可以选择使用OpenCV,后端处理的缺点在于多用户同时上传的时候服务器压力较大,交给前端处理比较妥当。

关于滤镜处理图片这部分不多说了,仔细研读腾讯的开源项目文档就能搞定,今天说说人脸检测和提取部分,注意是“检测”,不是“识别”。

检测的意思是只需要检查是人脸和人脸的状态以及人脸的位置,识别则是根据人脸特征匹配到人的姓名,这是两种不同的概念,千万不要混淆。

» 阅读全文