失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > matlab幂次变换代码 matlab实现 图像的灰度变换 增强输入图像的对比度 幂律变换 代码...

matlab幂次变换代码 matlab实现 图像的灰度变换 增强输入图像的对比度 幂律变换 代码...

时间:2022-04-24 06:14:16

相关推荐

matlab幂次变换代码 matlab实现 图像的灰度变换 增强输入图像的对比度 幂律变换 代码...

matlab实现 图像的灰度变换 增强输入图像的对比度 幂律变换 代码

发布时间:-10-25 21:20,

浏览次数:891

, 标签:

matlab

题目:选择合适的基本灰度变换模型及其参数,通过该变换增强测试图像EXP2C.tif的全局对比度。

说明:要求设置合适的模型参数,以保证对比度增强后的图像不会丢失过多的图像细节信息。

实现思路:

选择幂律(伽马)变换模型来增强图像的对比度,幂律变换的模型为

在实验中将用X来表示伽马值γ。

步骤:

1.将图像归一化为0~255的double的图像,以便计算;

2.将图像数据代入幂律变换公式C*(img .^ X)中,根据所给参数处理图像;

3.通过不断调整幂律变换的参数伽马值X,输出图像;

4.分别查看和对比不同参数输出的图像情况,找到一个最适合的伽马值;

5.分析处理结果:当伽马值X为3时,图像处理结果有点“偏淡”,即一些细节看不清;当伽马值X为4时,图像处理效果比较好,细节比较明显;当伽马值X为5时,图像处理结果中有些地方“太暗了”,效果没有伽马值X为4时好;

6.得出结论:通过比较各参数输出图像的对比度情况,得出参数伽马值X为4时处理效果最好。

实现效果:

在同一个图形界面上演示对比度线性拉伸前后的图像

图1 幂律变换各参数结果图

实现源代码:

function img2 = myImageMiLv(img1,C,X) img = im2double(img1); img2 = C*(img .^

X);%进行幂律变换 end clc; clear; img1 = imread('EXP2C.tif'); figure('NumberTitle',

'off', 'Name', '实验二 第二题'); subplot(2,2,1); imshow(img1); title('原始图像'); C = 1;

X = 3; img2 = myImageMiLv(img1,C,X); subplot(2,2,2); imshow(img2);

title(['C:',num2str(C),' X:',num2str(X)]); C = 1; X = 4; img2 =

myImageMiLv(img1,C,X); subplot(2,2,3); imshow(img2); title(['C:',num2str(C),'

X:',num2str(X)]); C = 1; X = 5; img2 = myImageMiLv(img1,C,X); subplot(2,2,4);

imshow(img2); title(['C:',num2str(C),' X:',num2str(X)]);

如果觉得《matlab幂次变换代码 matlab实现 图像的灰度变换 增强输入图像的对比度 幂律变换 代码...》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。