使用opencv和百度智能云制作一个简易的人脸考勤系统,通过百度智能云里面的照片库和检测的照片比对,拿到返回结果,打印到检测屏幕和log文件。
该系统使用Linux,并且安装opencv,还有相关依赖的如jsoncpp等(在百度智能云sdk有提到)。
原理
1、图片采集
2、人脸检测
3、上传脸部数据
4、对比结果
使用OpenCV库 人脸检测,没有人脸识别
使用百度智能云 人脸设别,脸部数据发送给百度云,识别结束把结果发送给我们
需要提前上传照片到百度云,百度智能云对比返回结果。
安装opencv,打开摄像头。VMware打开摄像头虚拟机打开摄像头。
VideoCapture cap(0);
判断摄像头是否打开,没打开退出程序。
if (!cap.isOpened()) {
cerr << "camera open faile!" << endl;
return -1;
}
定义一个Mat容器,将检测的照片传到Mat
Mat image;
cap >> image;
处理图片,将图片变灰,背景变灰