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

本文共 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

你可能感兴趣的文章
Python中注释的添加
查看>>
.vdat文件怎么打开
查看>>
合并多个cv::Mat类型,即合并多个图片的接口
查看>>
经验点滴
查看>>
甘肃高分残疾考生请求带母上学(转载)
查看>>
HT for Web可视化QuadTree四叉树碰撞检测
查看>>
http之get与post
查看>>
max_element( )
查看>>
CSS Grid 布局
查看>>
接口的幂等性
查看>>
java中的类
查看>>
黑马程序员—03-数据类型、常量、变量
查看>>
android 自定义文字跑马灯 支持拖拽,按住停止滚动,自定义速度
查看>>
SpringMVC完成文件上传的基本步骤
查看>>
实例168 使用指针输出数组元素
查看>>
bind 与unbind
查看>>
CSS: Flexbox
查看>>
Python学习
查看>>
Java并发_volatile实现可见性但不保证原子性
查看>>
百度地图添加带数字标注
查看>>