因为一些原因,需要使用ROS去运行seetaface2(中科院人脸识别引擎)去完成一个seetaface2项目,然后就开始了盲目的探索。
问题1:环境配置问题。在我已经搭建好的ROS环境下,将seetaface2(中科院人脸识别引擎)的头文件等文件整理进去,然后编辑CMakeLists等文件,安装Opencv库等等,中间出了各种问题,各种意外,最后用了学长给的配置好的环境。
解决方法:无,尚未学会。
问题2:编译,刚拿到代码包,编译。ok,100% 。然后,卡死,最后,生成文件失败。处理,检查文件位置,检查文件路径,重新把这些内容手打了一遍。 然后未发现问题,未解决,放弃治疗,随手编译,成功。!!!
解决方法:检查路径是否错误,检查环境, 更新 sudo apt-get update
。未发现问题所在,玄学解决。
问题3:运行,好了,编译通过了,运行。先运行一下“Hello world” ,失败,什么鬼,寻找问题,路径问题。解决。运行成功。然后开始运行example里面的代码。先试试最简单的,初始化FaceDetector2。
1.1 Initialize FaceDetector2
#include <seeta/FaceDetector2.h>
int main()
{
seeta::FaceDetector2 FD("catkin_ws/SeetaFaceDetector2.0.ats");
}
编译,成功,舒服,运行一下。然后,凉凉。
Error: Can not access "./catkin_ws/SeetaFaceDetector2.0.ats"
terminate called after throwing an instance of 'std::logic_error'
what(): Missing model
Aborted (core dumped)。
问题:Can not access “./catkin_ws/SeetaFaceDetector2.0.ats” 怀疑是路径问题,然后开始进行更改路径,更换了各种路径,无法解决问题。开始百度寻找,然后未发现相关解决方法。
解决方法:问题还是路径问题,引文路径方面内容需要改为
/home/dell(系统名称)/catkin_ws(工作包名称)/SeetaFaceDetector2.0.ats/
使用
./catkin_ws/SeetaFaceDetector2.0.ats
编译时不能识别其所在位置。
注:相关的链接这个博主写的挺好,可以参考。
附:seetaface2的github的教程地址:github
解决问题后会继续更新下一篇。