1、就是数据的准备,你要从网络上下载一些人脸库,后面用来训练人脸识别模型。人脸检测模型opencv是自带的,但是识别模型需要自己训练。下载人脸库之后需要粗余对人脸进行标记,这是一个繁琐的工作,不过网上有脚本或者自己写个程序简化工作岩明滚量。
2、把数据标记好之后就是opencv的事情。
3、打开摄像头进行人脸检测,就是框出人脸的位置。人脸检测模型是opencv自带的。
OpenCV是一个开源的图像处理库,QML是Qt官方推出的一个描述性语言,Qt Markup Language,Qt Quick也是Qt官方推出的一个技术框架,在开发嵌入式、动态触屏等时有一定的优势。
模块的作用:
打一个很简单的比方,QML就是Qt的HTML,C++就是Qt的JavaScript,而Qt Quick相当于一些已经集成好的开发框架,使开发应用程序变得更加简单省事。
OpenCV是一个基于C/C++的开源图像处理库,和Qt本身没有太多关联,其主要是用于计算机视觉和图形开发,Qt的扩展应用OpenCV并不是每个应用程序都要用到,只是某些有特殊需求宏启辩的应用程序可以更方便地使用Qt扩展的OpenCV应用。比如说用Qt开发一个软件,要使用人脸识别功能,就可以集成OpenCV来实现。
使用频率:
虽然说QML相当于HTML,C++相当于JavaScript,但是还是有一定区别:所有的网页都是通过解析HTML渲染出的,JavaScript虽然可以动态改变网页,但是最终还是通过改变HTML来达到效果;QML、C++的关系恰好反过来,在Qt中,C++是“更加底层”的,QML使用更加简单的标记语言的语法来调用底层的C++绘图支持API,从而提高程序开发的效率。
使用QML可以更快速、简捷地开发应用程序,在Qt中的使用频率也是很高的,不过这要根据特定开发人群、开发目标而定。有些开发者习惯直接使用C++开发,而有些开发者更喜欢简单的QML,很多时候都是“用QML开发用户界面,用C++开发业务逻辑”,但是用C++开发用户界面的也不在少数。
Qt Quick是一套开发框架,核旁宏心语言就是QML。
Qt Quick的使用频率不低,从Qt的New Project界面就可以看出,Qt Quick是和Qt传统的C++ Widge平起平坐的(当然还有Qt for Python等)。
OpenCV在不需要图形处理功能的情况下是不需要用到的,所以不怎么好说“使用频率”,因为这是针对特定的软件需求来的。
是否有必要学习:
Qt Quick能够使应用程序开发更有效率,但是并不是开发一个程序必备的,能用Qt Quick开发的,蔽缺C++肯定能够做出来,但是耗费时间、精力更多。在Qt开发工作这一块,掌握Qt的核心功能是必须的,而且这还远远不够。在招聘的时候肯定是考察应聘者对Qt各种技术和开发思想的理解和掌握情况,而Qt Quick是官方推出的框架,掌握其开发方法应该是基本功。
人脸识别软件如下:
1、Ageitgey
Ageitgey是最流行的免费人脸识别软件,它在GitHub上也有37.6k的星星。该软件可以通过Python API或其二进制命令行工具使用。这个平台有关于安装的所山正有说明,这使得它更加有趣和流行。
2、CompreFace
CompreFace于2020年在GitHub上发布,拥有约900颗星星。它是少数几个只需一个docker compose命令即可使用的自托管REST API自由人脸识别软件之一。该软件可以识别多个视频流中的人脸。CompreFace还有一个用于管理用户角色和面部集合的UI。
3、DeepFace
DeepFace于2020年在Github上发布,拥有约1100颗星星。这个免费的人脸识别软件支持不同的人脸识别耐枝方法,如FaceNet和Insightface。
4、FaceNet
FaceNet是一个由谷歌研究人逗亩悔员创建的免费人脸识别程序,它是一个开源Python库,实现了该程序。FaceNet具有很高的准确性,但唯一的缺点是它没有RESTAPI。
5、InsightFaceInsightFace
是另一款免费人脸识别软件,拥有约800颗星星。该软件使用最新和准确的人脸识别方法。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)