在人工智能应用领域,人脸检测和标记已经不是一个太复杂的技术实现了,在此前的一篇文章《Python实现人脸面部表情识别案例》里,我已经实现了利用Dlib类库对视频流(摄像头拍摄到的动态视频和录制下来的视频文件等)完成人脸检测和标记,并在此基础上做人脸情绪分析的案例。
事实上,很容易就可以想到,在此基础上已经可以实现人脸识别了。所谓的人脸识别,简单而言,就是比较两个人脸的相似度,相似度达到一定程度即可认定此人脸是彼人脸,当然了,这种认定的准确性还是需要更多的生物检测数据和更复杂的算法支持才能真正达到实用程度,否则,遇到了PS大神和武侠小说里传得神乎其神的人皮面具就要造成重大损失了!
在本文的案例中,利用Dlib类库标记图片上的人脸特征值,然后和人脸库里的数据做对比,找到相似度最高的那个,然后给出一个最可能的答案,这是一个简单的静态图片人脸识别的实现。当然了,其实现在市场上的人脸识别解决方案(例如百度AI开放平台的人脸识别服务等)的原理也是如此,只是需要检测的数据和算法更加复杂而已。
实现这个案例的第一步要创建人脸库,简单准备了三张图片,分别命名:
第一段代码是对人脸库里的图片进行人脸数据监测和标记:
准备了一张我本人的相片做测试:
第二段代码就是对这个相片进行人脸数据检测和标记,然后和第一段代码里人脸库里的图片数据进行对比,按照相似度排除一个顺序,相似度最高的就可能是这个人脸的名字。
运行程序,结果不错,真得认出我了!
看起来很复杂很难搞的一个人脸识别的案例,真正明白原理了,其实实现起来就不是那么复杂了。这个案例如此,其他功能需求说到底也一样。因为不理解不明白,才会认为很复杂技术上实现不了,实际上不然,只是实现难度以及需要的工作量和成本不同而已,搞懂原理了,一定可以找到一个解决问题的方法。办法总比困难多!
我老大有一句话说得好,“我不理解你的明白”,这句话意味深长,印象深刻!当时似乎理解了老大这句话的意思,最近读了一些沟通方面的书,又对这句话有了更多的理解,值得认真思考并且应用到工作和生活中去!活到老,学到老,果然是有道理的!
这个案例实现了静态图片的人脸识别,接下来在此基础上就可以实现动态视频的人脸识别,距离开始学习和研究人工智能时想要在视频会议里标记出每一个人的名字和职位,然后convert speech to Text自动做会议记录,并且做实时翻译的目标越来越接近了!
领取专属 10元无门槛券
私享最新 技术干货