OpenCV UIImageToMat链接器在xcode中失败

DcC*_*CoO 5 c++ xcode opencv ios

我在xcode上写了一些OpenCV代码但是当我编译时,2个方法导致链接器失败:UIImageToMatMatToUIImage

我使用的是opencv2.framework(来自opencv网站,版本3.1 for iOS),它工作正常,然后我在我的项目中使用了cocoapods并集成了opencv 3.1.1,并且所有代码的工作方式相同,除了这两个函数给出了我连接器失败了.我不明白为什么他们不工作,当我删除#include "opencv2/imgcodecs/ios.h"它说,功能不存在(而不是链接器失败).

有谁知道如何解决这个问题?谢谢

DcC*_*CoO 6

我能够解决它.

Cocoapods中的OpenCV 3.1.1有#include "opencv2/imgcodecs/ios.h"但它不包含实现(这就是为什么我得到链接器失败的原因,因为标题没有将函数链接到任何地方),只是这些函数的声明,就像看到的那样这里:https://github.com/opencv/opencv/blob/master/modules/imgcodecs/include/opencv2/imgcodecs/ios.h

为了解决这个问题,在我包含此头文件的类中,我添加了这两个函数的实现:https://github.com/opencv/opencv/blob/master/modules/imgcodecs/src/ios_conversions.mm

它工作得很好,我想这是获得UIImageToMatMatToUIImage使用OpenCV 3.1.1(以及3.2)pod 的最简单的解决方案.