gpt4 book ai didi

c++ - OpenCV facedetect 示例不会加载级联分类器 xml

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:59:44 24 4
gpt4 key购买 nike

我正在开发一个需要使用 Haar 级联分类器进行 OpenCV 对象检测的应用程序。我在 64 位 Windows 机器上使用 OpenCV 2.3.1 和 VS2010。我自己编译和构建了 OpenCV,没有使用任何预编译的二进制文件。

首先,我想开始研究 OpenCV 中包含的示例 facedetect.cpp。我构建它没有错误,但是当我尝试运行它时,它不会打开级联分类器 xml 文件(CascadeClassifier.load() 函数返回 false)。我没有对示例源代码进行任何更改。

我使用的是与 OpenCV 一起分发的 xml 文件,因此问题不在于 xml 文件。我还确保应用程序可以使用简单的 fopen 访问和读取文件。

我相信(但不确定)问题似乎是级联分类器属于“旧”类型。但在 OpenCV 文档中明确暗示新的 CascadeClassifier 对象可以打开“旧”和"new"级联分类器。

这是一个链接:http://opencv.itseez.com/modules/objdetect/doc/cascade_classification.html#cascadeclassifier-load

我什至尝试使用预编译的 OpenCV2.2 二进制文件,它与该 xml 配合得很好。然后我尝试编译2.2示例源代码,还是无法加载xml。

我知道我可以尝试使用旧对象 CvHaarClassifierCascade,但我更喜欢使用最新版本的 OpenCV 及其对象。

有谁知道我做错了什么吗?

最佳答案

给出xml文件的完整路径

String face = "c:/data/xml/haarcascade_frontalface_alt.xml";

它应该有效!

关于c++ - OpenCV facedetect 示例不会加载级联分类器 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8152983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com