美文网首页
iOS之OpenCV (一)不同颜色空间转换

iOS之OpenCV (一)不同颜色空间转换

作者: 南枫小谨 | 来源:发表于2017-06-01 11:09 被阅读0次


           最近在学习OpenCV ,现在把自己学习的历程跟大家分享一下,将由浅入深持续更新,希望大家一起进步。

    第一步 :创建一个OPenCVUtil 的类,引入头文件#import<opencv2/opencv.hpp> #import<opencv2/imgproc/types_c.h> #import<opencv2/imgcodecs/ios.h>

    创建一个类方法 + (UIImage*)convertImage:(UIImage*)image

    + (UIImage*)convertImage:(UIImage*)image {

    cv::Mat cvImage;

    UIImageToMat(image, cvImage); //将UIImage 转换成 C++的image cvImage 为C++ 能处理的image

    if(!cvImage.empty()){

    cv::Mat output;

    //从RGB转换为 灰度图像 output 为灰度图像

    //cv::cvtColor(cvImage, output, CV_RGB2GRAY);

    //转换成HLS L亮度 S饱和度 转化成这种的话方便调整饱和度

    //        cv::cvtColor(cvImage, output, CV_RGB2HLS);

    // HSV 色彩空间 s是饱和度

    cv::cvtColor(cvImage, output, CV_RGB2HSV);

    return MatToUIImage(output); //将处理后的图像转换成UIIimage

    }

    return nil;

    }

    第二步:在 Viewcontroller 引入OpenCvUtil.h 在 viewDidLoad 添加如下代码

    UIImageView *testImageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];

    testImageView.image = [OpenCvUtil convertImage:[UIImage imageNamed:@"test"]];

    [self.view addSubview:testImageView];

    你就可以看到图像处理后的效果了

    相关文章

      网友评论

          本文标题:iOS之OpenCV (一)不同颜色空间转换

          本文链接:https://www.haomeiwen.com/subject/qfwsfxtx.html