标签:iOS
OpenCV
最近尝试在 iOS 上使用 OpenCV,网上的资料比较少,且大多资料和源码都已经无用,来回折腾了好久才跑通一个基本的 Demo 程序,记录下来留作笔记。
iOS 中导入 OpenCV
最早尝试 OpenCV 官网上的介绍的下载源码编译生成 framework、或者直接从官网上下载 framework 导入工程,都无法使用。同样网上介绍直接使用 CocoaPods 飞速导入 OpenCV 也无法使用。
最终在 github 上查找开源的 iOS OpenCV 源码,找到一个可以运行使用的项目 EasyPR-iOS,导入了其中的opencv2.framework
,才成功过编译通过。
项目环境配置
开发环境:XCode8.2
1.项目中导入相关 frameworks
ImageIO.framework
QuartzCore.framework
CoreVideo.framework
CoreImage.framework
CoreGraphics.framework
AVFoundation.framework
AssetsLibrary.framework
CoreMedia.framework
opencv2.framework
……
2.修改 Build Settings
'Build Options'->'Enable Bitcode'修改为NO
'Apple LLVM 8.0 - Language - C++'->'C++ Standard Library'设置为'libc++(LLCV C++ standard library with C++ 11 support)'
'Other Warning Flags'增加条目'-Wno-documentation',以屏蔽一些注释产生的 warning
3.修改项目.pch 文件(若没有的话,自己生成一个),将文件内容修改成如下所示
#import <Availability.h>
#ifdef __cplusplus
#import <opencv2/opencv.hpp>
#endif
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#endif
4.将调用 OpenCV 的文件后缀修改为 .mm。
5.调用 OpenCV,代码参考官方教程Video Processing
大功告成!