作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我尝试使用 C++ 和 OpenCV 2.3.1 库在 Visual Studio 2010 上构建人脸检测应用程序所以,我声明 String 类型并初始化:
String face_cascade_name = "haarcascade_frontalface_alt.xml";
接下来,我创建一个类 CascadeClassifier 的对象:
CascadeClassifier face_cascade;
然后我加载级联:
if( !face_cascade.load(face_cascade_name) ){ printf("--(!)Error loading\n"); return -1; };
项目构建和调试没有问题,但是当我运行应用程序和应用程序尝试加载级联程序时崩溃!
我看到了这样的交流:程序“[1288] OpenCV2.0.exe: Native”已退出,代码为 -1 (0xffffffff)。
最佳答案
我在 CascadeClassifier
和 FileStorage
上遇到了同样的问题。
例如,如果您尝试这样做:
FileStorage fs(xml_fname, FileStorage::READ);
if (!fs.isOpened())
{
cout<<"can not read xml"<<endl;
}
可能,它不会起作用。
在我的例子中,我将 VC++ 从 Debug模式传递到 Release模式,指定的 .lib
文件末尾没有 d
(例如 opencv_core231.lib
) 现在可以使用了。
关于c++ - 如何在openCV 2.3.1中加载xml级联文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8934595/
我是一名优秀的程序员,十分优秀!