博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
灰度图像亮度对比度调整的简单代码
阅读量:6904 次
发布时间:2019-06-27

本文共 1228 字,大约阅读时间需要 4 分钟。

代码:

#include
using namespace cv;int brightness = 5;int contrast = 5;Mat src;Mat brightnessContrast;void BrightnessContrastFilter(int, void*){ float bri = brightness / 5.0f; float cont = contrast / 5.0f; //增亮图像 cv::Mat bright = src*(bri); //平均亮度 float sum = 0; for (int i = 0; i < bright.rows; i++){ for (int j = 0; j < bright.cols; j++){ sum += bright.at
(i, j); } } float aver = sum / (bright.cols*bright.rows); cv::Mat averImg = cv::Mat::ones(bright.rows, bright.cols, bright.type()); averImg *= aver; //根据contrast进行插值 brightnessContrast = (bright - averImg)*cont + averImg; imshow("brightnessContrast", brightnessContrast);}int main(){ src = imread("densityGray.png", 0); imshow("src", src); namedWindow("brightnessContrast"); createTrackbar("brightness", "brightnessContrast", &brightness, 20, BrightnessContrastFilter); createTrackbar("contrast", "brightnessContrast", &contrast, 20, BrightnessContrastFilter); BrightnessContrastFilter(0, 0); imshow("brightnessContrast", brightnessContrast); waitKey(); destroyAllWindows(); return 0;}

效果:

 

转载于:https://www.cnblogs.com/bluebean/p/5631159.html

你可能感兴趣的文章
oracle 10g升级流程
查看>>
linux下DNS服务器的实现1
查看>>
BGinfo设置记录文档
查看>>
爆款打造之中小卖家如何做到零成本选/测款?(一)
查看>>
性能监测工具 dstat
查看>>
匿名无须交互输入用户名和密码的samba配置方法(security=user)
查看>>
我的友情链接
查看>>
UTM四公子
查看>>
6016.Cacti监控思科6509交换机告警灯和系统运行状态
查看>>
sed-n/N/g/G/h/H/x…
查看>>
供应链管理-初见
查看>>
用 JavaScript 操作字符串
查看>>
Oracle计算时间差常用函数
查看>>
外链的理解
查看>>
机器学习:选对时机直线超车
查看>>
Java基础基本常识
查看>>
谈谈Python实战数据可视化之matplotlib模块(实战篇)
查看>>
2.27linux和windows互传文件 3.1 用户配置文件和密码配置文件 3.2 用户组管理
查看>>
Java程序员需要技术能力达到什么程度,才能拿到月薪30k?
查看>>
Java之品优购课程讲义_day14(5)
查看>>