iOS集成OpenCV遇到的问题

释放双眼,带上耳机,听听看~!

1、
这里写图片描述

OpenCV是用C和C++语言写的,这种类似cv::Mat都是C++的写法,然而.m文件是不支持C++的,这时候就需要我们把文件的后缀名改成.mm。改完编译就会发现错误消失。

2、在控制器里引用文件
这里写图片描述
紧接着第二个错误就出来了。
这里写图片描述
此时我们发现上部有一个warning

warning Detected Apple ‘NO’ macro definition, it can cause build conflicts. Please, include this header before any Apple headers.

OK,字面意思是让我们在引用这个头文件的时候应该放在所有Apple头文件之前
这里写图片描述

或者,我们可以自己建一个pch文件加入,引入需要的头文件

#ifdef __cplusplus
#import <opencv2/opencv.hpp>
#import <opencv2/imgproc/types_c.h>
#import <opencv2/core.hpp>
#import <opencv2/features2d.hpp>
#import <opencv2/calib3d.hpp>
#import <opencv2/objdetect.hpp>
#import <opencv2/highgui.hpp>
#import <opencv2/imgproc.hpp>
#import <opencv2/objdetect/objdetect.hpp>
#endif

再次编译,就没有错啦。

人已赞赏
iOS文章

iOS FMDB总结及其中的一些注意点

2020-3-4 6:44:20

iOS文章

iOS忽略编译警告

2020-3-4 8:08:36

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索