在上篇文章中整理了自定义方法实现图片美白,下面介绍一下使用openC实现图片美白。


第一步:下载openCV的framework。
openCV官方网址:http://opencv.org

第二步:将framework导入工程。
再将framework导入工程中后,进行编译有可能会出现错误,自己这边出了如下错误。

解决方法是

中有重复的,删掉一个就可以了。

第三步:引入所需要的头文件。

#import <opencv2/opencv.hpp>
#import <opencv2/imgcodecs/ios.h>

第四步:创建命名空间
将涉及到的.m文件的文件名改为.mm

using namespace cv;

第五步:创建一个方法实现美白效果

+(UIImage *)openCVImageWhitening:(UIImage *)image:(int)MAX
{Mat mat_image_src;UIImageToMat(image, mat_image_src);Mat mat_image_dst;cvtColor(mat_image_src, mat_image_dst, CV_RGBA2RGB,3);Mat mat_image_clone = mat_image_dst.clone();for (int i = 0; i< MAX; i = i + 2){bilateralFilter(mat_image_dst, mat_image_clone, i, i * 2, i / 2);}UIImage * newImage = MatToUIImage(mat_image_clone);return newImage;
}

仅供学习使用,如有错误请见谅!

iOS学习笔记--图片美白(二)相关推荐

  1. iOS学习笔记--图片美白(一)

    在iOS开发中,图片美白通常的方法有自定义方法和第三方框架实现,下面就自己在学习的过程中用到的方法做个整理. 通过自定义方法实现 个人认为图片美白实际上就是对图片的像素点进行修改,可以分为一下几个步骤 ...

  2. OpenCV for Ios 学习笔记(4)-标记检测1

    本文原始地址:OpenCV for Ios 学习笔记(4)-标记检测1 简单的标记经常是以白色块和黑色块构成的规则图形.因为我们预先知道这些因素,所以我们可以很容易检测标记. 如图: 首先,我们需要找 ...

  3. iOS学习笔记22 推送通知

    ###一.推送通知 推送通知就是向用户推送一条信息来通知用户某件事件,可以在应用退到后台后,或者关闭后,能够通过推送一条消息通知用户某件事情,比如版本更新等等. ######推送通知的常用应用场景: ...

  4. IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法...

    IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法 Author:hmjiangqq Email:jiangqqlmj@163.com ...

  5. IOS学习笔记(四)之UITextField和UITextView控件学习

    IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...

  6. Python基础学习笔记之(二)

    Python基础学习笔记之(二) zouxy09@qq.com http://blog.csdn.net/zouxy09 六.包与模块 1.模块module Python中每一个.py脚本定义一个模块 ...

  7. iOS学习笔记-自己动手写RESideMenu

    代码地址如下: http://www.demodashi.com/demo/11683.html 很多app都实现了类似RESideMenu的效果,RESideMenu是Github上面一个stars ...

  8. iOS学习笔记-地图MapKit入门

    代码地址如下: http://www.demodashi.com/demo/11682.html 这篇文章还是翻译自raywenderlich,用Objective-C改写了代码.没有逐字翻译,如有错 ...

  9. iOS学习笔记-自定义过渡动画

    代码地址如下: http://www.demodashi.com/demo/11678.html 这篇笔记翻译自raywenderlick网站的过渡动画的一篇文章,原文用的swift,由于考虑到swi ...

最新文章

  1. JavaScript模块化开发技术概述
  2. Matlab实用程序--图形应用-图形标注
  3. 我是如何打败拖延症的
  4. CDH6.3.2 HUE集成HBase
  5. [No000035]操作系统Operating System之OS Interface操作系统接口
  6. POJ1088 滑雪 记忆化搜索
  7. 虚拟机和Linux系统的安装
  8. TAR命令参数详解[转]
  9. 数据建模大数据就业挑战月薪30K
  10. Oracle 练习作业10.1-1-2
  11. 再求f(x,n)(信息学奥赛一本通-T1167)
  12. 回溯算法 python
  13. 《Http Client 官方文档》7. 高级主题
  14. Docker网络实践运用
  15. cadlisp框选打印_caD批量打印LISP程序,因为工作需要。只要LISP的。
  16. niceScroll 的使用
  17. intellij idea 修改字体 修改主题
  18. Racket 8.3下载安装(Win10)
  19. Eclipse代码/目录虚线对齐设置
  20. 任正非、董明珠、曹德旺,中国实业三大网红!他们有个共同点:坚决不做一件事!

热门文章

  1. toco生成tflite模型
  2. matlab广义误差分布,利用广义帕累托分布对尾数据建模
  3. 学习笔记(02):Java小白修炼手册-种族天赋:大谈Java成功之道
  4. STM32定时器详解及简述
  5. STM32定时器实现串口通信
  6. JS垃圾回收机制是怎样的?
  7. 单样本KS检验,案例分析及Matlab可视化
  8. VS2010安装失败
  9. 转发:C++中GB2312字符串和UTF-8之间的转换
  10. 【三子棋】C语言版——妈咪级讲解