数字图像处理(5):幂次变换(C语言实现)

本文探讨了幂次变换在核磁共振图像处理中的应用,详细介绍了使用C语言实现幂次变换的代码,并分析了不同γ值对图像亮度的影响。通过实验,验证了幂次变换对图像对比度增强的效果。

幂次变换

幂次变换,点运算的一种,运算公式为s=crγ,其中,c和γ是正常数。

当γ<1,此时扩展低灰度级,压缩高灰度级,在正比函数上方,使图像变亮;

当γ>1,此时扩展高灰度级,压缩低灰度级,在正比函数下方,使图像变暗。
在这里插入图片描述

核磁共振图像

是利用核磁共振(nuclear magnetic resonance,简称NMR)原理,依据所释放的能量在物质内部不同结构环境中不同的衰减,通过外加梯度磁场检测所发射出的电磁波,即可得知构成这一物体原子核的位置和种类,据此可以绘制成物体内部的结构图像。

本图像来源翰·霍普金斯大学Elliot Fishman博士和Karen Horton博士的教学案例和图片。图像大小为455*600,8位灰度图像。为了增强本次实验效果,将此图像人为的进行了亮度调低。
在这里插入图片描述

亮度调低
在这里插入图片描述

代码实现

平台:vs2015
语言:C语言

流程:
1)读取图片
2)对每个像素进行幂次计算
3)输出处理后的图片
4)改变γ的值,重复上述流程

关键代码:

    for (i = 0; i < height; i++)
    {
   
   
        for (j = 0; j < width; j++)
        {
   
   
            temp = c * pow( Pic[i][j]/255.0 , v )*255; 
            Pic[i][j] = (char)temp;
        }
    }

处理结果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

分析:

如幂次变换特点——当γ<1,此时扩展低灰度级,压缩高灰度级,使图像变亮;当γ>1,此时扩展高灰度级,压缩低灰度级,使图像变暗。

感觉在γ为0.4时相比于0.6的一些细节更清晰一些,当γ为0.2时图片有点过亮,一些细节反而不容易观察。

而当γ大于1时,原本就比较暗的图像变得更暗,基本上无法观察了。

另外,还测试了γ分别为0.1,0.2,0.3,0.4……0.9的结果,发现确实可以通过幂律变换实现亮暗度变化的对比度增强。

遇到问题

最初写代码直接带入公式,代码写成了如下:

    for (i 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值