图像灰度值调整(C/C++源代码)

这篇博客介绍了如何使用C/C++和OpenCV4.0在VC6.0环境下进行图像的像素值变换,包括亮度、对比度和GAMMA校正。算法灵感来源于MATLAB的imadjust函数,通过调整输入和输出的强度范围以及伽马值来改变图像的亮度和对比度。代码实现了将8位灰度图像的像素值映射到新的范围,并处理超出范围的值,确保结果在有效范围内。
摘要由CSDN通过智能技术生成

图像的象素值变换,包括亮度、对比度和GAMMA校正算法,环境是OPENCV4.0,VC6.0。算法参考了MATLAB函数 imadjust 。

//
// perform histgram equalization for single channel image
//

#include "cv.h"
#include "highgui.h"

/*
Reference for correspondent MATLAB function: imadjust
IMADJUST Adjust image intensity values or colormap.
    J = IMADJUST(I,[LOW_IN HIGH_IN],[LOW_OUT HIGH_OUT],GAMMA) maps the
    values in intensity image I to new values in J such that values between
    LOW_IN and HIGH_IN map to values between LOW_OUT and HIGH_OUT. Values
    below LOW_IN and above HIGH_IN are clipped; that is, values below LOW_IN
    map to LOW_OUT, and those above HIGH_IN map to HIGH_OUT. You can use an
    empty matrix ([]) for [LOW_IN HIGH_IN] or for [LOW_OUT HIGH_OUT] to
    specify the default of [0 1]. GAMMA specifies the shape of the curve
    describing the relationship between the values in I

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值