我正在研究需要使用Haar级联分类器进行OpenCV对象检测的应用程序。 我在64位Windows机器上使用OpenCV 2.3.1和VS2010。 我自己编译和构建OpenCV,并没有使用任何预编译的二进制文件。OpenCV facedetect示例不会加载级联分类器xml
首先,我想开始插手OpenCV中包含的示例facedetect.cpp。 我没有错误地构建它,但是当我尝试运行时它不会打开级联分类器xml文件(CascadeClassifier.load()函数返回false)。我没有从示例源代码中更改任何内容。
我正在使用与OpenCV一起发布的xml文件,所以问题不在xml文件中。 我也确保应用程序可以使用简单的fopen访问和读取文件。
我相信(但不确定)问题似乎是级联分类器是“旧”类型。 但是在OpenCV文档中,它特别暗示新的CascadeClassifier对象可以打开“旧”和“新”级联分类器。
这里有一个链接:http://opencv.itseez.com/modules/objdetect/doc/cascade_classification.html#cascadeclassifier-load
我即使使用预编译的二进制OpenCV2.2尝试,它做工精良与XML。然后我尝试编译2.2示例源代码,并再次无法加载xml。
我知道我可以尝试使用旧对象CvHaarClassifierCascade,但我更喜欢使用最新版本的OpenCV及其对象。
有没有人有线索我做错了什么?
它为我工作 – Srinivas