一,原图:

二,代码:

//11高反差保留
int R = 5;
void HighContrastRetention()
{Mat src = imread("D:\\test\\26.png");int width = src.cols;int heigh = src.rows;Mat img;src.copyTo(img);Mat avg;//GaussianBlur(img,avg,Size(R,R),0.0);blur(img, avg, Size(R, R));Mat dst(img.size(), CV_8UC3);float tmp;for (int y = 0; y<heigh; y++){uchar* imgP = img.ptr<uchar>(y);uchar* avgP = avg.ptr<uchar>(y);uchar* dstP = dst.ptr<uchar>(y);for (int x = 0; x<width; x++){float r0 = abs((float)imgP[3 * x] - (float)avgP[3 * x]) / 128;tmp = abs(((float)imgP[3 * x])*r0 + 128 * (1 - r0));tmp = tmp>255 ? 255 : tmp;tmp = tmp<0 ? 0 : tmp;dstP[3 * x] = (uchar)(tmp);float r1 = abs((float)imgP[3 * x + 1] - (float)avgP[3 * x + 1]) / 128;tmp = (uchar)abs(((float)imgP[3 * x + 1])*r1 + 128 * (1 - r1));tmp = tmp>255 ? 255 : tmp;tmp = tmp<0 ? 0 : tmp;dstP[3 * x + 1] = (uchar)(tmp);float r2 = abs((float)imgP[3 * x + 2] - (float)avgP[3 * x + 2]) / 128;tmp = (uchar)abs(((float)imgP[3 * x + 2])*r2 + 128 * (1 - r2));tmp = tmp>255 ? 255 : tmp;tmp = tmp<0 ? 0 : tmp;dstP[3 * x + 2] = (uchar)(tmp);}}imshow("high", dst);//高通滤波测试Mat kern = (Mat_<char>(3, 3) << -1, -1, -1,-1, 5, -1,-1, -1, -1);Mat dstF;filter2D(img, dstF, img.depth(), kern);imshow("kernel", dstF);waitKey();imwrite("D:/高反差保留.jpg", dst);imwrite("D:/高通滤波.jpg", dstF);
}//-----开始------
void COpenCVLearningDlg::OnBnClickedStartButton()
{HighContrastRetention();
}

三,结果:

欢迎扫码关注我的微信公众号

原文地址:https://blog.csdn.net/sangni007/column/info/stylizefliter

OpenCV_11高反差保留相关推荐

  1. 高斯模糊与高反差保留

    目前很多教程都以实例为主,很多朋友看了教程也跟着教程做出了与教程相同或相似的效果,也有很多朋友有这样一个疑问:为什么要这样做呢? 其实实例教程只说了操作步骤及思路,对于基础的理论很少提及!所以难怪很多 ...

  2. 由Photoshop高反差保留算法原理联想到的一些图像增强算法。

    关于高反差保留的用处说明呢,从百度里复制了一段文字,我觉得写得蛮好的: 高反差保留就是保留图像的高反差部分,再说得真白些,就是保留图像上像素与周围反差比较大的部分,其它的部分都变为灰色.拿一个人物照片 ...

  3. opencv 高反差保留算法

    Mat HighPass(Mat img) { Mat temp; //GaussianBlur(img, temp, Size(3, 3), 1.6, 1.6); medianBlur(img, t ...

  4. Photoshop - 高反差保留

    对图像处理相关学习的一些笔记归档发表,关于锐化的原理: 首先简而言之,当颜色明度为100%的时候,为白色,反之为黑色: 为50%时,就是中性灰: 在混合方式中,变暗这一组,除了白色,其它亮度的颜色都会 ...

  5. Photoshop脚本 高反差保留滤镜的使用

    源自:http://coolketang.com/tutorials/menu7lesson11.php 本节将演示如何使用脚本,调用系统的[高反差保留滤镜].首先创建一个空白的脚本文档,并保存在硬盘 ...

  6. photoshop高反差保留锐化原理和经典案例教程

    第一,ps高反差保留锐化原理介绍 锐化是强化突出轮廓的过程,但不是所有模糊图像都能处理为非常清晰的效果,这一点需要明白. 高反差保留锐化方法的原理是只提取画面轮廓,而其他区域转换为灰色,再通过叠加模式 ...

  7. 高反差保留阈值——素描效果——鸟儿

    1.选择 滤镜->其他->高反差保留 2.选择阈值进行调节 3.效果先这样啦

  8. PS理论:高斯模糊与高反差保留

    目前很多教程都以实例为主,很多朋友看了教程也跟着教程做出了与教程相同或相似的效果,也有很多朋友有这样一个疑问:为什么要这样做呢? 其实实例教程只说了操作步骤及思路,对于基础的理论很少提及!所以难怪很多 ...

  9. 用OpenCV实现Photoshop算法(九): 高反差保留

    系列文章: 用OpenCV实现Photoshop算法(一): 图像旋转 用OpenCV实现Photoshop算法(二): 图像剪切 用OpenCV实现Photoshop算法(三): 曲线调整 用Ope ...

最新文章

  1. redis 主从切换
  2. iOS网络开发(8)文件下载的实现
  3. 量子位「MEET 2021智能未来大会」来啦!邀智能科技企业共探明日行业新格局
  4. 吃透Java中的动态代理
  5. 一个小程序看流的读取
  6. UVA 11259 Coin Changing Again
  7. ansible自动化部署
  8. 百度地图infoWindow圆角处理
  9. 怎么用ubuntu进入python_ubuntu 下python环境的切换使用
  10. python网页请求超时_python爬虫多次请求超时的几种重试方法(6种)
  11. 中值滤波器 ( Median Filter ) C++ 实现
  12. transform-style: preserve-3d「In CSS」
  13. Zortam Mp3 Media Studio pro 25.40破解版
  14. 【PyQt5】串口数据实时绘图
  15. 写bat文件,报系统找不到指定文件的处理方式
  16. 使用阿里云的身份证实名认证接口
  17. [渝粤教育] 西南科技大学 语文教材教法 在线考试复习资料2021版
  18. python二元一次方程组用鸡兔同笼的思路来写编程_python二元一次方程组用鸡兔同笼的思路来写编程_《应用二元一次方程组——鸡兔同笼》......
  19. 计算机组成原理百道必考大总结(下)
  20. 别让拖延毁掉你自己 | 《拖延心理学》全书解读

热门文章

  1. 网络栈主要结构介绍(socket、sock、sk_buff,etc)
  2. 海康威视产品的token更新
  3. Android推特图片保存路径,从twitter获取个人资料图片图像使用解析推特登录为Android...
  4. 改进YOLOv7系列:首发结合最新Centralized Feature Pyramid集中特征金字塔,通过COCO数据集验证强势涨点
  5. Nginx快速入门(三)正向代理、HTTP服务器与动静分离
  6. SQL为什么动不动就N百行以K计
  7. 人间还是仙界?聊一聊linux系统的用户空间和内核空间
  8. 将一个excel多个文件合并成一个文件的多个sheet
  9. Windows 解决teamview远程必须mstsc连接
  10. 自然数因式分解最小和