【问题标题】:OpenCV 3.0 CascadeClassifier.load() Assertion Fail (!empty)OpenCV 3.0 CascadeClassifier.load() 断言失败 (!empty)
【发布时间】:2015-06-04 14:30:28
【问题描述】:

我刚刚将我的 iOS 项目更新到版本 OpenCV 3.0,每当我尝试加载 haarcascade 文件时,我都会收到断言失败。

以前版本的 OpenCV 工作正常,我获取路径和加载文件的方式没有改变(见下文),它似乎不适用于 3.0 版

NSString *faceCascadePath = [[NSBundle mainBundle] pathForResource:kFaceCascadeFilename ofType:@"xml"];
_faceCascade.load([faceCascadePath UTF8String])

我还尝试修改我读取文件的方式(我在下面找到了另一个示例)。

const CFIndex CASCADE_NAME_LEN = 2048;
char *CASCADE_NAME = (char *) malloc(CASCADE_NAME_LEN);
CFStringGetFileSystemRepresentation( (CFStringRef)faceCascadePath, CASCADE_NAME, CASCADE_NAME_LEN);

但还是无济于事......

任何建议将不胜感激。

C.

【问题讨论】:

    标签: ios opencv face-detection opencv3.0


    【解决方案1】:

    好的,我想通了,我在单独的线程中运行“detectMultiScale”并尝试在主 ViewDidLoad 中加载 haarcascade 文件。

    在进行实际检测的线程中移动了负载,它似乎修复了它。

    仍然不确定为什么以前的版本没有受到影响。

    【讨论】:

      猜你喜欢
      • 2021-09-10
      • 1970-01-01
      • 1970-01-01
      • 2014-02-10
      • 2012-11-26
      • 2014-11-24
      • 2014-05-28
      • 2020-12-31
      • 2015-09-12
      相关资源
      最近更新 更多