数字图像处理——灰度变换

灰度变换函数

对于以像素存储的数字图像来说,可对像素进行相应的操作,可得到处理过后的图像。而对像素邻域进行计算的的叫滤波,对单像素进行变换的叫映射,而这个映射关系就是变换函数。

本文主要介绍的一些主要的灰度变换函数。

1、反转变换

反转变换可将图像的灰度级进行反转,公式可参考下式:

s = L − r − 1 s = L - r -1 s=Lr1

其中,[0, L-1]为灰度级范围, r为原图像灰度级, s为变换图像灰度级。

参考代码

void inverse(Mat &img)
{
   
	// 初始化图像迭代器
	MatIterator_<uchar> srcIterStart = img.begin<uchar>();
	MatIterator_<uchar> srcIterEnd = img.end<uchar>();

	while (srcIterStart != srcIterEnd)
	{
   
		*srcIterStart = 255 - *srcIterStart;
		srcIterStart++;
	}
}

效果图与应用场景

反转图像的使用场景一般用于对原始图像难以分析出不同之处,例如分析乳房组织时,用反转图像更易观察。

2、对数变换

对数变换可分为对数变换和反对数变换,而反对数变换是属于伽马变化(幂律变换)的范围。对数变换公式可参考下列公式:

s = c l o g ( 1 + r ) s = clog(1 + r) s=clog(1+r)

对数变换可拉伸暗像素值,压缩亮像素值。

参考代码

void log_image(Mat &img, uchar rate = 1)
{
   
	// 初始化图像迭代器
	MatIterator_<uchar> srcIterStart = img.begin<uchar>(
  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值