OpenCV 在 iOS 开发环境下的编译和配置

来源:http://www.onevcat.com/2012/03/opencv-build-and-config/

原作:OneV‘s Den http://www.onevcat.com/2012/03/opencv-build-and-config/

2014.5.3 更新

现在一般都直接使用方便的 CocoaPods 来进行依赖管理了,特别是对于像 OpenCV 这样关系复杂的类库来说尤为如此。可以访问 CocoaPods 的页面并搜索 OpenCV 找到相关的 pod 信息就可以进行简单的导入了。如果您还不会或者没有开始使用 CocoaPods 的话,现在正是时候学习并实践了!



最近在写一个自己的app,用到一些图像识别和处理的东西。研究后发现用OpenCV是最为方便省事的,但是为iOS开发环境编译和配置 OpenCV的库还是需要费点功夫,网上资料也并不是很全,而且有不少已经过期。在此进行一些总结,算是留底,也希望能对其他人有所帮助。

OpenCV (Open Source Computer Vision Library) 是跨平台的开源项目,由一系列C函数和少量C++类构成,提供了图像处理和计算机视觉方面很多通用的算法。在开发有关图像识别和处理的app的时 候,OpenCV提供了一系列易用轻量的API,而且遵循BSD License。

OpenCV For iOS一键编译

OpenCV用在iOS上,一般是以静态库的方式提供服务的,因此需要先将源码进行编译。如果你想省事,这里有一个我预先编译好的库,可以直接使用 (OpenCV版本为2.3,虽然文件名字有part1,但是只有这一个包,开袋即食),如果需要最新版本的OpenCV,可以选择自行编译。

先从OpenCV的repository下载最新的OpenCV

svn co https://code.ros.org/svn/opencv/trunk

这里包含了源码和所有范例教程等,有1G多,小水管需谨慎。如果只想下载源码的话,可以从这里check out

svn co https://code.ros.org/svn/opencv/trunk/opencv

如果之前有check out过,那么用svn update进行更新即可拿到最新版的源码,或者到sourceforge进行下载

由于darwin没有内置CMake,因此在编译前需要下载并安装CMake,在CMake的官网可以找到下载。 Eugene Khvedchenya写了一个超级棒的脚本,可以在这里找到下载,或者这里有一个本地的副本(不再更新)。将下载的脚本放到trunk目录中,运行

sh BuildOpenCV.sh opencv/ opencv_ios_build

数分钟后即可在opencviosbuild目录下找到头文件和编译好的静态库。

如果是从官方库签出的OpenCV并且不怕麻烦的话,也可以使用官方的脚本完成编译,具体可以参看下载的/opencv/ios/readme.txt文件。

OpenCV的库配置

和其他静态库的配置基本一致,以Xcode4为例。

  • 将编译好的opencv文件夹拖入工程中,记得勾选Copy items into destination group’s folder (if needed)

  • 在Build Settings的Header Search Paths和Library Search Paths中填入相应的头文件位置和库文件位置,并将Always Search User Paths勾为Yes

  • 在Build Phases中的Link Binary Libraries中添加用到的库文件即可

编译脚本

编译OpenCV的脚本如下,请不要直接复制粘贴该脚本,可能某些符号会在字符转换过程中出现问题。可以访问这里下载该脚本的最新版本,或者点击这里取得脚本的副本。

时间: 2024-10-27 10:17:42

OpenCV 在 iOS 开发环境下的编译和配置的相关文章

iOS系统提供开发环境下命令行编译工具:xcodebuild

iOS系统提供开发环境下命令行编译工具:xcodebuild[3] xcodebuild 在介绍xcodebuild之前,需要先弄清楚一些在XCode环境下的一些概念[4]: Workspace:简单来说,Workspace就是一个容器,在该容器中可以存放多个你创建的Xcode Project, 以及其他的项目中需要使用到的文件. 使用Workspace的好处有: 1),扩展项目的可视域,即可以在多个项目之间跳转,重构,一个项目可以使用另一个项目的输出.Workspace会负责各个Project

windows下cocos2dx3.0开发环境及Android编译环境搭建

cocos2dx更新到了3.x版本,自己一直没有换,现在开发组要求统一换版本,我就把搭建环境的过程记录下来. 一.Windowns下开发环境搭建 1.  所需工具 1)cocos2d-x-3.0rc0.zip   http://cn.cocos2d-x.org/download/  截止写博文时,最新版本为V3.2. 2)VS2012 http://www.baidu.com/s?wd=VS2012 3)Python  https://www.python.org/download/releas

Windows下搭建IOS开发环境(一)

我们都知道开发iPhone等ios平台的移动应用时需要使用Mac本,但是Mac本都比较昂贵,所以我们可以采用Windows7上利用VMWare安装Mac操作系统的方法来模拟ios开发环境,达到降低成本的目的. 1.相关配置 操作系统:windows7旗舰版 Work station:VMWare10 Mac操作操作系统:OS X 10.8 2.相关资源下载地址 (1)VMWare10的资源比较多,可以到网上自己下载 http://www.xp510.com/xiazai/ossoft/deskt

linux下apache+mysql+php开发环境纯源代码编译搭建

linux下apache+mysql+php开发环境纯源代码编译搭建 记录一下我在fedora core 1下通过源代码编译出来的apache+mysql+php开发环境的全部过程 通常安装一台服务器当然使用rpm是最方便的,不需要考虑太多配置的问题,就可以轻松获得需要的环境了.不过rpm包互相关联的问题也不是这么容易解决. apache,mysql,php这三个应用从源代码编译安装还是比较简单的,配置参数不算复杂,而且没有太多的依赖关系,从源码编译出来的系统也比较稳定一些,方便未来打补丁和升级

ios开发环境配置及cordova安装与常用命令

一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本: 3.下载并安装unlock-all(VMware Workstation默认限制安装Mac虚拟机,需要安装此文件后解除限制); 4.下载Mac OS操作系统的镜像文件(需要是.ios文件)如果下载的是.dmg文件,需要用 anytoiso.exe工具转换成.ios文件,下载完成后在VMware

Windows 7, VMware Workstation10部署IOS开发环境[Mac OS X Server10.6系统安装]

Windows 7, VMware Workstation10部署IOS开发环境 Mac OS X Server10.6系统安装 基本情况是Windows7 专业版32位系统,VMware Workstation10.0虚拟机,Mac OS X Server10.6操作系统.Mac OS是一套运行于苹果Macintosh系列电脑上的操作系统.Mac OS是首个在商用领域成功的图形用户界面.现行的最新的系统版本是OS X 10.10 Yosemite,本文介绍的是Mac OS X Server10

myeclipse 开发环境下,提示 String cannot be resolved to a type

从SVN上下载项目,所有代码都有下来,在本地编译,java类总是报出n多红叉,惨不忍睹,String cannot be resolved to a type都出来了,以为是jar包未被加载,于是project-properties--java build path -- libraries,删掉已经存在的jar包,去workspace下重新加载jar包,不可以. project-properties--java complier- configure workspace settings 把j

图文教程:在Mac上搭建Titanium的iOS开发环境

http://mobile.51cto.com/web-317170_all.htm 跨平台开发工具Titanium的兴起之路:HTML 5是最大威胁 比较Titanium和PhoneGap两大iOS移动应用开发框架 跨平台移动Web开发工具 Titanium Mobile简介 图文教程:在Windows 7上搭建Titanium Mobile开发环境 Titanium架构分析图文教程:在Mac上搭建Titanium的iOS开发环境,码迷,mamicode.com

Delphi for iOS开发指南(1):在Mac上配置你的开发环境

http://cache.baiducontent.com/c?m=9d78d513d99516f11ab7cf690d678c3b584380122ba7a0020fd18438e4732b40506793ac57240773a4d20c1116dc4348adb0687d6d4566f58cc9fb57c0ebcc757a9f2743215dd01d05d36ef39c00388477cb4deedb5ca0bcfb3092aad2d2de49008a155e2bdea7960c575299