【发布时间】:2011-11-03 17:46:49
【问题描述】:
我现在尝试了几天来运行这段代码......
http://opencv.willowgarage.com/wiki/FaceDetection
...但没有成功。
1) 我在具有 2GHz 和 1GB RAM 的 VM 上使用 CentOS 6 64Bit。
2) 我已经在几个版本的操作系统上尝试过它,甚至在不同的发行版上,直到我终于找到了一个包(我认为它是 2.0.9 OpenCV for 64Bit),其中包含所有需要的软件。
3) 我安装了所有东西,并使用 build_all.sh 成功编译了 /samples/c 中的所有样本,只有 facedetect.c 和 people...c。没有编译。所以我搜索了另一个面部检测代码,并在上面的链接中找到了那个,它确实编译了!但是当试图从终端调用二进制文件时,我得到:“分段错误(核心转储)”。
我对c++一无所知(我是一名PHP/JS开发人员),经过一番研究,我发现错误与代码本身有关,可能与环境无关。
我只需要人脸的坐标,源是一个普通的图像文件,我只搜索“最大”的脸(图片上最主要的)。所以代码可以大大减少。不幸的是,我对 C++ 一无所知。我只需要一张普通图像的一个面的坐标,这样我就可以用 PHP 进一步处理这些坐标。
也许您还有替代代码(C/C++/Pyhton ... 没关系)。我试过原生的PHP实现,但是数据文件不如OpenCV的好。
提前致谢。 :)
【问题讨论】:
-
只是为了澄清 - 你是自己编译 OpenCV 还是使用二进制包?
-
我用过这个 .rpm rpm.pbone.net/index.php3/stat/4/idpl/16618134/dir/centos_6/com/… 我已经编译了 /samples/c/ 的内容,但是用安装程序安装了 OpenCV(不是用 cmake)。其他示例工作完美,只有 facedetect 和 peopledetect 不起作用(即使将代码中的路径编辑为例如 highgui)
-
请同时指定您正在使用的级联文件,并检查您是否能够使用使用此包编译的任何其他 OpenCV 示例打开您的视频文件/相机。
-
我正在使用默认的级联 haarcascade_frontalface_alt.xml 目前仅使用 lena.jpg 进行测试。我也尝试使用 cmake 64Bit 手动安装,但不幸的是我的 CentOS 不支持“make”,尽管它已安装。在 CentOS 5.4 上,手动安装可以正常工作(cmake/make/make install),但没有一个示例工作。目前大多数示例都在 CentOS 6 上运行,所以我想自己坚持使用这个版本。
标签: opencv segmentation-fault centos centos6