数字图像处理--实验四 空间域增强-灰度变换

实验四 空间域增强-灰度变换

实验目的:

1.利用matlab进行处理图像;

2.掌握常用的灰度变换方法进行空间域增强。

实验内容:

  1. 实现对比度拉伸变换

(1)根据书上的原理,实现对比度拉伸变换,并对图像进行处理,把原图和处理后的结果显示在一个窗口中。

    

(2)根据下面的公式对图像进行处理,自行选择不同的参数m和E,把原图和处理后的结果显示在一个窗口中。

请将实验代码贴在此处:

1.1

f = imread('fractured_spine.tif');

[m,n] = size(f);

f = im2double(f);

alpha = 0.3;

belta = 1.5;

gamma = 0.5;

a = 0.2;

b = 0.7;

g = ones(m,n);

for i  = 1:m

    for j = 1:n

        if (f(i,j)<a && f(i,j)>=0)

            g(i,j) =f(i,j)*alpha;

        end

        if(f(i,j)<b && f(i,j)>=a)

            g(i,j) =(f(i,j)-a)*belta+a*alpha;

        end

        if(f(i,j)<1 && f(i,j)>=b)

            g(i,j) =(f(i,j)-b)*gamma+belta*(b-1)+a*alpha;

        end

    end

end

figure

subplot(121),imshow(f);

subplot(122),imshow(g);

1.2

f = imread('fractured_spine.tif');

f = im2double(f);

e = 4;

m = 0.5;

g = 1./(1+(m./f).^e);

figure

subplot(121),imshow(f);

subplot(122),imshow(g);

请将运行结果贴在此处:

  1. 请用如下变换曲线对图像进行处理,并把处理后的图片和原图显示在一个窗口中。

 

请将实验代码贴在此处:

%% 6

f = imread('fractured_spine.tif');

[m,n] = size(f);

f = im2double(f);

a=0.3;

b=0.3;

g = ones(m,n);

h = ones(m,n);

k = ones(m,n);

for i  = 1:m

    for j = 1:n

        if (f(i,j)<a && f(i,j)>=0)

            g(i,j) =f(i,j)*0;

        end

        if(f(i,j)<b && f(i,j)>=a)

            g(i,j) =(f(i,j)-a)*0+a*0;

        end

        if(f(i,j)<1 && f(i,j)>=b)

            g(i,j) =(f(i,j)-b)*0;

        end

    end

end

for i  = 1:m

    for j = 1:n

        if (f(i,j)<a && f(i,j)>=0)

            h(i,j) =f(i,j)*0;

        end

        if(f(i,j)<b && f(i,j)>=a)

            h(i,j) =(f(i,j)-a)*0+a*0;

        end

        if(f(i,j)<1 && f(i,j)>=b)

            h(i,j) =(f(i,j)-b)+0*(b-1)+a*0;

        end

    end

end

for i  = 1:m

    for j = 1:n

        if (f(i,j)<a && f(i,j)>=0)

            k(i,j) =f(i,j);

        end

        if(f(i,j)<b && f(i,j)>=a)

            k(i,j) =a;

        end

        if(f(i,j)<1 && f(i,j)>=b)

            k(i,j) =(f(i,j)-b)*1+a;

        end

    end

end

figure

subplot(221),imshow(f);

subplot(222),imshow(g);

subplot(223),imshow(h);

subplot(224),imshow(k);

请将运行结果贴在此处:

  1. 给定了图像‘aerial_image.tif’和图像‘fractured_spine.tif’(这两幅图像如果用imread报错,请换成其他图像),请用幂律变换,对图片进行不同程度的灰度变换。并分别把这两幅图像的原图和处理后的结果显示在一个窗口中。幂律变换公式如下:

请将实验代码贴在此处:

f = imread('fractured_spine.tif');

f = im2double(f);

g = f.^4;

figure

subplot(121),imshow(f);

subplot(122),imshow(g);

请将运行结果贴在此处:

  1. 给定灰度图像’pout.tif‘利用imadjust函数将灰度图像 [0.2-0.5]的灰度值调整为[0-1],并且要求将调整后的两幅图像显示在同一个图像窗口中。函数用法如下:

g= imadjust(f, [low_in, high_in], [low_out, high_out], gamma)

请将实验代码贴在此处:

f = imread('fractured_spine.tif');

f = im2double(f);

g = imadjust(f,[0.5 0.7],[0 1],4);

figure

subplot(121),imshow(f);

subplot(122),imshow(g);

%%4

请将运行结果贴在此处:

  1. 利用函数histeq对图像进行直方图均衡,并显示均衡后的结果。

请将实验代码贴在此处:

%% 5

% ¶ÁÈëͼÏñ

I = imread('football.jpg');

% ת»»Îª»Ò¶ÈͼÏñ

gray = rgb2gray(I);

a=histeq(gray);

b=histeq(gray,255);

figure

subplot(141),imhist(a);

subplot(142),imshow(a);

subplot(143),imhist(b);

subplot(144),imshow(b);

请将运行结果贴在此处:

  1. 使用函数histeq()对灰度图像’pout.tif’做直方图规定化处理,要匹配直方图的图像分别用’coins.png’’circuit.tif’,并且要求将原图和规定化后的两幅图像显示在同一个图像窗口中,原始图像的直方图和直方图规定化后图像的直方图显示在另一个图像窗口中。

请将实验代码贴在此处:

%% 6

I = imread('pout.tif');

Ieq = histeq(I);

figure;

subplot(1,2,1); imshow(I); title('ԭʼͼÏñ');

subplot(1,2,2); imshow(Ieq); title('Ö±·½Í¼¹æ¶¨»¯ºóµÄͼÏñ');

coins = imread('coins.png');

circuit = imread('circuit.tif');

coins_gray = rgb2gray(coins);

circuit_gray = rgb2gray(circuit);

coins_eq = histeq(coins_gray);

circuit_eq = histeq(circuit_gray);

figure;

subplot(1,2,1); imshow(coins_gray);

subplot(1,2,2); imshow(coins_eq);

figure;

subplot(1,2,1); imshow(circuit_gray); title('ԭʼµç·ͼÏñ');

subplot(1,2,2); imshow(circuit_eq); title('µç·ֱ·½Í¼¹æ¶¨»¯ºóµÄͼÏñ');

figure;

subplot(1,2,1); imhist(I);

subplot(1,2,2); imhist(Ieq);

请将运行结果贴在此处:

  • 25
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值