概述
最近需要实现一个快速人脸检测的功能,网上冲浪发现深大的大佬开源了一个非常快的检测项目,于是想试一试。本来以为很简单的安装测试步骤却着实花了我不少时间。在这里也把我的心路历程说一下(ubuntu16.04虚拟机)
首先下载
git clone https://github.com/ShiqiYu/libfacedetection.git
我直接是下载到了/home文件夹下面。
然后执行
cd /home/libfacedetect
mkdir build
cd build
cmake ..
然后需要修改src/facedetectcnn.h ,注释掉:
//#define _ENABLE_AVX2 //Please enable it if X64 CPU
//#define _ENABLE_NEON //Please enable it if ARM CPU
然后
cd /home/libfacedetection/build
make
这里有一个特别奇怪的地方,其他的博客都没有。就是make的时候会报错,报错内容我不记得了,就是说他缺少一个include的头文件,整的我头大,本人c++不太熟悉,然后github也用的不太好,所以卡了很久,就是就直接在那个报错的地方加上这个头文件就可以了。
然后就make成功了,至于cmake和make都是什么意思,这篇文章讲的还算通俗易懂。
然后我就想看一下有多快啊,原谅我c++真的不好,所以不知道这个example到底咋个用法。
然后快速入门了一下,基本懂了一丢丢。
总之就是先进去example这个文件夹,然后
g++ libfacedetectcnn-example.cpp -o test `pkg-config --cflags --libs opencv` -I ../src/ -L ../build/ -lfacedetection
这个时候这个文件夹就多出来一个test的文件了。
然后,在这个文件夹的终端输入
./test /home/lin/libfacedetection/images/keliamoniz2.jpg
然后理所当然的又报错了,真的是xXXx了。
lin@lin-VirtualBox:~/libfacedetection/example$ ./test /home/lin/libfacedetection/images/keliamoniz2.jpg
./test: error while loading shared libraries: libfacedetection.so: cannot open shared object file: No such file or directory
报错长这样,不知道什么牛鬼蛇神,但是好像我缺少或者说编译器没找到libfacedetect.so的库,这个动态库非常强,以至于以后直接在头文件引用一下,就可以白嫖使用了。
然后我就又硬着头皮去查这个错误是个啥,然后查到了这篇文章。
人家说是这个libfacedetect.so这个牛逼的库家住哪里,其实这个库我们之前就知道了啊,就在/libfacedetect/build这个文件夹下面啊。只是你没告诉人家编译器他在哪,所以找不到这个库的位置(我觉得有点想环境变量的意思,当然只是我觉得,而我觉得一般都是错的)。那就简单了啊,复制起来,于是我先:
cd /home/libfacedetection/build
sudo cp -i libfacedetection.so /usr/local/lib
然后再到上面有test的那个文件夹执行:
./test /home/lin/libfacedetection/images/keliamoniz2.jpg
同样出错。。。就是要我把所有的都试一试呗!
好。
cd /home/libfacedetection/build
sudo cp -i libfacedetection.so /usr/lib
俺还就不信了,然后:
cd /home/libfacedetection/example
./test /home/lin/libfacedetection/images/keliamoniz2.jpg
搞定!
结果:
谢谢大家观看,有卡住的问题可以评论联系我!看到的话都会尽力解答的!
最后
以上就是从容汽车为你收集整理的libfacedetection-安装不成功你打我-也没用啊的全部内容,希望文章能够帮你解决libfacedetection-安装不成功你打我-也没用啊所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复