人脸识别项目FFmpeg+OpenCV+虹软SDK

一、注册虹软

人脸识别项目FFmpeg+OpenCV+虹软SDK_第1张图片
人脸识别项目FFmpeg+OpenCV+虹软SDK_第2张图片
人脸识别项目FFmpeg+OpenCV+虹软SDK_第3张图片

APP_ID:5vypHP9yEx3gq3s9Kf7tF4SVxfGaCBaJb5CkKfuiKNMz
SDK_KEY:5vJZ7hRJfqj8eQdFvEBUg2meYgfGuuLyG9foTKUhBHxV

二、下载源码

人脸识别项目FFmpeg+OpenCV+虹软SDK_第4张图片

三、修改源码

我这里用的是Sourceinsight打开的源码。将asfort_manage.h文件中的APPIDSDKKEY替换成自己在刚刚注册的。
人脸识别项目FFmpeg+OpenCV+虹软SDK_第5张图片

四、移植源码

1、将虹软的SDK放到ubuntu中,可以新建一个文件夹存放虹软的SDK目录下,我的SDK文件件路径是

/home/zhiguoxin/Arcsoft

人脸识别项目FFmpeg+OpenCV+虹软SDK_第6张图片

2、新建一个文件夹myproject 将工程文件ffmpeg_arc_face-recognize放到这个文件夹中并赋予777权限

cd /home/zhiguoxin/
mkdir myproject 
cd myproject
cp ffmpeg_arc_face-recognize /home/zhiguoxin/myproject
chmod 777 -R ffmpeg_arc_face-recognize

3、下载sqilte源码,并将sqlite-autoconf-3380500.tar.gz拷贝到myproject中然后解压

tar zvxf sqlite-autoconf-3380500.tar.gz

4、进入到sqlite-autoconf-3380500目录中

cd sqlite-autoconf-3380500

5、配置信息,生成Makefile

./configure

6、编译安装

make
make install

7、进入/home/zhiguoxin/Arcsoft/inc文件夹下

cd /home/zhiguoxin/Arcsoft/inc

8、将/home/zhiguoxin/Arcsoft/inc中的文件拷贝至/home/zhiguoxin/myproject/ffmpeg_arc_face-recognize

cp amcomdef.h  arcsoft_face_sdk.h  asvloffscreen.h  merror.h /home/zhiguoxin/myproject/ffmpeg_arc_face-recognize/


9、拷贝/home/zhiguoxin/Arcsoft/lib/linux_x64中的动态库到/usr/local/lib/

cp libarcsoft_face_engine.so libarcsoft_face.so /usr/local/lib/

10、修改home/zhiguoxin/myproject/ffmpeg_arc_face-recognize中的makeflie文件

gedit  Makefile
all:
	g++ map_manage.cpp sqlite3_operation.cpp asfort_manage.cpp opencv_queue.cpp ffmpeg_camera_asfort.cpp -I./asfort_include -I/usr/ffmpeg4.1/ffmpeg/include -L/usr/ffmpeg4.1/ffmpeg/lib -L./asfort_lib/ -o ffmpeg_camera_asfort -lsqlite3 -lSDL2 -lSDL -lm -lasound -larcsoft_face_engine -larcsoft_face -lavformat -lavcodec -lavutil -lavfilter -lavdevice -lswresample -lswscale -lpthread -lopencv_core -lopencv_dnn -lopencv_features2d -lopencv_flann -lopencv_highgui -lopencv_imgcodecs -lopencv_imgcodecs -lopencv_imgproc -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_videoio -lopencv_video -larcsoft_face_engine -larcsoft_face
	g++ asfort_face_insert.cpp sqlite3_operation.cpp asfort_manage.cpp -I./asfort_include -I/usr/ffmpeg4.1/ffmpeg/include -L/usr/ffmpeg4.1/ffmpeg/lib -L./asfort_lib/ -o asfort_face_insert -lsqlite3 -lSDL2 -lSDL -lm -lasound -larcsoft_face_engine -larcsoft_face -lavformat -lavcodec -lavutil -lavfilter -lavdevice -lswresample -lswscale -lpthread -lopencv_core -lopencv_dnn -lopencv_features2d -lopencv_flann -lopencv_highgui -lopencv_imgcodecs -lopencv_imgcodecs -lopencv_imgproc -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_videoio -lopencv_video -larcsoft_face_engine -larcsoft_face

注意:./asfort_face_insert ./face_lib/face 按TAB键(表示查找./face_lib/路径下face开头的文件)
之后出来图片都是以face开头的

11、编译

make

11、将/face_lib文件中的图片插入数据库

./asfort_face_insert ./face_lib/face01.png hhh
./asfort_face_insert ./face_lib/liuyao.png liuyao
./asfort_face_insert ./face_lib/yangjiacheng.png yangjiacheng

12、执行可执行文件,注意需要在root用户下执行次命令

./ffmpeg_camera_asfort

如果是识别到了liuyao.png 就会显示liuyao名字

技巧

进入root用户命令

sudo su


退出root用户命令

su zhuguoxin //zhiguoxin为你的用户名

你可能感兴趣的:(嵌入式Linux,opencv,sqlite,数据库)