为什么删我帖子,树叶那么黄那么多多黄贴不删,就删我的

图像处理OpenCV(50)
ios开发(216)
原文来自:
CMake 2.8.8 或者更高
Xcode 4.2 或者更新
二,从Git库取得最新的 OpenCV
使用 git 客户端从 /itseez/opencv& clone Open 库。
在& max os x 下,可以通过以下命令行完成
cd ~/&my_working _directory&&
git clone /Itseez/opencv.git&
三,使用 cmake 在命令行上从源码构建 OpenCV
1. 为了使 OpenCV 构建脚本能找到 编译器,头文件等内容,创建一个软连接到 Xcode
sudo ln -s /Applications/Xcode.app/Contents/Developer Developer&
2. 构建 OpenCV framework
cd ~/&my_working_directory&&
python opencv/platforms/ios/build_framework.py ios&
如果一切顺利,几分钟之后,你会在& ~/&my_working_directory&/platforms/ios/opencv2.framework& 取得opencv2的框架。这样,你可以在你的项目中添加这个框架。
在 http://docs.opencv.org/doc/tutorials/ios/table_of_content_ios/table_of_content_ios.html#table-of-content-ios 有几个 OpenCV + iOS的入门指南。
&&相关文章推荐
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:426854次
积分:5757
积分:5757
排名:第4030名
原创:100篇
转载:327篇
评论:47条
(1)(2)(1)(4)(6)(1)(2)(7)(8)(4)(5)(17)(12)(67)(35)(28)(30)(43)(30)(100)(27)1043人阅读
iOS基础(OC)(107)
OpenCV基础(2)
##### 第一种方法 #####
在学习处理图片时,无意间接触到OPenCV,记录iOS平台下配置OPenCV的过程。
一、下载OpenCV for IOS,下载地址为:,下载后直接解压即可,解压后为opencv2.framework框架。
最新的OpenCV for IOS,只需导入opencv2.framework框架,使用时导入相应的头文件即可。
二、新建一个Xcode的工程,命名为ImportOpenCV。选中选择”Add files ImportOpenCV” –& opencv2.framework,导入opencv2.framework库。
三、ViewController.m 修改为ViewController.mm,导入头文件
#import &opencv2/opencv.hpp&
#import &opencv2/imgproc/types_c.h&
#import &opencv2/imgcodecs/ios.h&
添加如下代码:
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
CGRect rect = [UIScreen mainScreen].
self.imageView.frame =
UIImage *image = [UIImage imageNamed:@"6_03"];
UIImageToMat(image, cvImage);
if(!cvImage.empty()){
// 将图像转换为灰度显示
cv::cvtColor(cvImage,gray,CV_RGB2GRAY);
// 应用高斯滤波器去除小的边缘
cv::GaussianBlur(gray, gray, cv::Size(5,5), 1.2,1.2);
// 计算与画布边缘
cv::Canny(gray, edges, 0, 50);
// 使用白色填充
cvImage.setTo(cv::Scalar::all(225));
// 修改边缘颜色
cvImage.setTo(cv::Scalar(0,128,255,255),edges);
// 将Mat转换为Xcode的UIImageView显示
self.imageView.image = MatToUIImage(cvImage);
##### 第二种方法 #####
使用cocoapods进行配置
Podfile内容:
platform :ios,'9.0'
pod 'OpenCV', '~& 2.0'
配置成功后:
目前通过cocoapods安装的opencv2.framework不是最新的,缺少imgcodecs目录。目前不建议使用cocoapods安装。
&&相关文章推荐
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:129661次
积分:3885
积分:3885
排名:第7382名
原创:247篇
转载:15篇
评论:131条
(2)(7)(10)(12)(27)(4)(16)(11)(3)(16)(32)(32)(12)(22)(26)(4)(13)(8)(3)(9)阅读(4728)
日一二三四五六301234567891011121314151617181920212223242526272829303112345678910
阅读排行榜
评论排行榜
Powered By: 模板提供:一、&&&&&&前言
&&& OpenCV是开源的跨平台的计算机视觉库,实现了图像处理、计算机视觉和机器学习的很多通用算法。
对于移动设备没有快速输入的键盘,大的屏幕,其优势在于图像和声音,因此要发挥好移动设备的性能,必须很好的利用这一特点。
本文档主要说明如何在iOS系统中使用OpenCV。
二、&&&&&&开发准备
1.&&&&&&&&下载
2.&&&&&&&&打开XCode,新建一个工程,例如新建一个Single View Application
3.&&&&&&&&在项目中添加下载好的OpenCV库,其中一种添加方式,在新建好的项目中,右键Framework,选择Add Files to,在跳出的窗口中找到opencv&2.framework后&点击add。
4.&&&&&&&&最终效果图如下:
5.&&&&&&&&因为OpenCV中的MIN宏和UIKit的MIN宏有冲突。所以需要在.pch文件中,先定义OpenCV的头文件,否则会有编译错误。将工程的.pch文件内容修改成如下所示:
&&&&&&&& #ifdef __cplusplus
&&&&&&&& #import&&opencv2/opencv.hpp&
6.&&&&&&&&在使用OpenCV时,主要使用OpenCV的C++接口,为了混合使用C++和Objective-C,需将源文件扩展名为.m的改成.mm。
7.&&&&&&&&在iOS中图像的显示主要通过UIImage,在OpenCV中处理通过Mat类型,两者之间要进行转换,显示通过UIImage,处理通过Mat。转换写成一个公共类文件,添加到项目中,具体见附件。
8.&&&&&&&&在使用到OpenCV的地方跟原C++一样。
三、&&&&&&测试项目
对基本的图像处理算法进行测试给出原图,测试效果图,处理时间,代码。
1.&&&&&&&&建议对图像处理部分单独建一个类,将设计与处理分开。
2.&&&&&&&&打开.h头文件,直接引用C++的OpenCV库,添加要实现的方法,具体如下:
3.&&&&&&&&在.mm文件中具体实现,实现的部分代码如下:
4.&&&&&&&&Objective-C调用,在头文件中添加类似下面的方法,传入参数为待处理图像、处理方法的序号
-(UIImage&*)processImage:(UIImage&*)inputImage number:(int)useN
具体实现如下:
-(UIImage&*)processImage:(UIImage&*)inputImage number:(int)useNumber
&&&&cv::Mat&inputMat = [UIImageCVMatConverter&cvMatFromUIImage:inputImage];
&&&&cv::Mat&resultM
&&&&//这边到时构建一个字典,将序号转成调用名
&&&&switch&(useNumber)
&&&&&&&&case&0:
&&&&&&&&&&& resultMat =[self&cannyConversion:inputMat];
&&&&&&&&&&&&break;
&&&&&&&&case&1:
&&&&&&&&&&& resultMat =[self&equalizeHistConversion:inputMat];
&&&&&&&&&&&&break;
&&&&&&&&case&2:
&&&&&&&&&&& resultMat =[self&harrisConversion:inputMat];
&&&&&&&&&&&&break;
&&&&&&&&case&3:
&&&&&&&&&&& resultMat =[self&siftConversion:inputMat];
&&&&&&&&&&&&break;
&&&&&&&&case&4:
&&&&&&&&&&& resultMat =[self&surfConversion:inputMat];
&&&&&&&&&&&&break;
&&&&&&&&&&&
&&&&&&&&default:
&&&&&&&&&&&&break;
&&& inputMat.release();
&&&&return&[UIImageCVMatConverter&UIImageFromCVMat:resultMat];
5.&&&&&&&&设计界面,调用上述处理函数
&&&&&&&&&&&&&&&&&&&&&i.&&&&&&&&&&&&添加toolbar和imageview设计界面如下:
&&&&&&&&ii.&&&&&&设置关联,如下图:
&&&&&&iii.&&&&&&调用的过程
1.&&&获得加载图片的UIImage,本例如下:
NSString&*fileName = [[NSBundle&mainBundle]&pathForResource:@"fruits"&ofType:@"jpg"];
&&&&&&& &&&imageView.image&= [UIImage&&&&&&&&&imageWithContentsOfFile:fileName];
&&&&&&&&&&&&&&&&&&&&imageView.contentMode&=&UIViewContentModeScaleAspectFit;
&&&&&&&&&&&&&&&&&&&& loadImage&=&imageView.image;
将加载的图片的UIImage给上述中的loadImage,loadImage进行转换到Mat
直接调用之前写好的ImageProcessing类
imageView.image&= [imageProcessing&processImage:loadImage&&number:numberOfprocess&];
四、 & 实验结果
测试时间ms
五、&&&参考
1.&&&&&&&&
2.&&&&&&&&
3.&&&&&&&&
阅读(...) 评论()}

我要回帖

更多关于 树叶那么黄那么多 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信