编译FaceAlignment,之前网上也有教程,但是很少,几乎一两篇,而且出现错误也没有给出解决方法,现在按照自己编译过程出现的错误及修改方法进行详细记录,最终编译成功。
编译FaceAlignment详细步骤:
(1)进入到FaceAlignment目录下
(2)执行命令
mkdir build
cd build
(3)将FaceDetection中的/include/face_detection.h和/build/libseeta_facedet_lib.dylib拷贝到/FaceAlignment/build文件夹下;
拷贝/FaceDetection/model文件夹下的seeta_fd_frontal_v1.0.bin文件到FaceAlignment的build中;
打开FaceAlignment
/src/test/face_alignmen_test.cpp文件,将模型路径修改。第54行,./build/seeta_fd_frontal_v1.0.bin
(4)执行编译命令:
cmake ..
make
发现报错,error内容如下:
按照提示更改cfan.cpp和sfit.cpp文件中的abs为fabs,依然报错;将abs改为std::abs,继续报错;后来看到答案:
在cfan.cpp和sfit.cpp文件中加入#include.再次cmake ..然后make。编译通过。
若出现cmake warning:
修改CMakeLists.txt:
再次编译,编译通过。
(5)执行./fa_test
提示segmention fault:11段错误,则是face_alignment_test文件中data或者model的路径不对,更改下路径即可。
运行成功后会在./build文件夹下生成result.jpg,结果如下。