CertFaceApp用法 - housekeeper-software/tech GitHub Wiki
准备环境
mkdir /data/test
将如下的文件复制到 /data/test
certfaceapp
libwebrtc.so
libfacesdk_rv1109.so
libmcvsdk_hal.so
libmcvsdk_search.so
libmegsearch.so
device.json
face.json
search.json
model/目录下的megvii 模型数据
chmod +x certfaceapp
export LD_LIBRARY_PATH=/data/test:$LD_LIBRARY_PATH
测试数据目录
工作目录在 /data/face
人脸照片放在/data/face/register
测试报告在 /data/face/report
人脸对比照片放在 /data/face/compare
人脸数据库在 /data/face/face.db
人脸注册
先将需要注册的人脸照片复制到 /data/face/register目录下
然后执行:
./certfaceapp --cmd=register --within=0.75 --minface=10
等待测试完成。
测试报告在: /data/face/report/register.log
人脸对比
先将需要对比的人脸照片复制到/data/face/compare目录下
然后执行:
./certfaceapp --cmd=compare --within=0.75 --minface=10
等待测试完成
测试报告在 /data/face/report/compare.log
视频人脸搜索
先启动测试程序:
./certfaceapp --cmd=video --url=rtsp://192.168.180.119:8554
然后启动 rtsp server开始推流
等待推流完成,测试程序自动退出
测试报告在: /data/face/report/video.log
活体测试
先启动测试程序:
./certfaceapp --cmd=liveness
这个测试无法自动完成,如需终止,重新开启一个终端,运行 ./certfaceapp --shell=quit
测试报告在: /data/face/report/liveness.log
device.json,face.json
这个来自别墅门口机 res目录下的同名配置
search.json
这个是视频人脸搜索的高级配置,如下:
{
"face_within_thr":0.75, #人脸占比
"min_face":10, #最小人脸高度
"use_external_decoder":true, #使用ffmpeg解码器,否则使用rockchip硬件解码器
"report_confidence_level":70.0, #可信度达到这个数值就报告识别
"extract_confidence_level":80.0, #人脸特征提取可信度超过这个数值算成功
"rtsp":{ #这里是rtsp client的配置,可以从ffmpeg rtsp搜索相关信息,只是ffmpeg内置的参数
"options":[
{
"key":"listen_timeout", #侦听超时
"value":"-1" #永不超时,一定等待推流端推流
},
{
"key":"stimeout",
"value":"3000000"
},
{
"key":"timeout",
"value":"-1"
}
],
"max_analyze_duration":300000, #最多分析300毫秒的视频数据
"probesize":512000,
"fps_probe_size":1,
"flags":0,
"disable_audio":true #不取音频流,对我们的测试没有用
}
}
人脸数据库
首先应当注册人脸。数据库位于 /data/face/face.db
表中只有三项:
ID:索引
userId:人脸的名字
feature:特征,这是二进制数据,不能读
debug日志
在 /data/test下, touch .debug,会产生详细日志
日志文件位于 /data/test/certfaceapp.log