汤文俊 彭立 席博文
【摘 要】OpenCV是一个用C++语言编写的计算机视觉库,在Java程序中可以通过JavaCV来访问OpenCV。本文介绍了一个基于JavaCV的人脸识别程序,该程序事先要对人脸识别器进行训练,之后就可以根据输入的人脸照片识别出相应的身份。
【关键词】JavaCV;OpenCV;人脸识别
中图分类号: TP391.41 文献标识码: A 文章编号: 2095-2457(2019)01-0003-002
DOI:10.19694/j.cnki.issn2095-2457.2019.01.002
0 引言
人臉识别是基于人的脸部特征信息进行身份识别的一种生物识别技术,目前已被广泛应用于各类具有身份识别功能的系统中,如考勤系统[1]。OpenCV是一个用C++语言编写的跨平台计算机视觉开源库,它实现了计算机视觉和图像处理方面很多较为完善的算法,并提供了几百个函数供用户使用,OpenCV已成为计算机视觉领域的首选开发库[2]。在Java程序中可以通过JavaCV来访问OpenCV。JavaCV是一组Jar包,它封装了各种常用计算机视觉库的接口,其中就有openCV[3]。本文介绍了一个基于JavaCV的人脸识别程序,该程序已被用于笔者开发的课堂移动考勤系统中。
1 程序介绍
该程序用Java语言编写,它借助JavaCV实现了人脸识别功能。程序用到了三个JavaCV提供的Jar包,分别是:javacpp.jar、javacv-windows-x86.jar、javacv.jar。
为了确保人脸识别的准确性,程序事先要用大量的人脸照片对人脸识别器进行训练,该项工作分为两步进行。首先,程序对origin_ph