1.
进入
Matlab 7.3
集成开发环境,并打开脚本编辑器。
2.
在脚本编辑器中编写一段程序,要求:
(1)
读入存放在
tire.tif
中的原始图像;
(2)
用函数
histeq
对该图像进行直方图均衡化处理,并显示结果图像;
(3)
用函数
imhist
分别对原始图像和直方图均衡化后图像进行直方图统计,并显示结果。
3.
将编写的程序保存为
Example3_2_3EquGrayImage1.m
。
4.
运行该程序,并比较原始图像与结果图像,以结果来检验直方图均衡化增强的效果。
5.
修改原来的程序,将所有图像放置在一个窗口中显示对比,并:
(1)
用
load woman
调入一幅索引图像进行直方图均衡化处理;
(2)
读入存放在
lena.jpg
中的原始图像,用该图像的直方图去规定化
tire.tif
图像的直方图,并统计直方图规定化后图像的直方图与
lena.jpg
图像直方图,进行比较;
(3)
将结果保存在
Example3_2_3EquGrayImage2.m
中,并运行验证结果。
%%Example3_2_3EquGrayImage1
clear;
clc;
TIF=imread('tire.tif');%%读入TIF图像
J=histeq(TIF);%%函数 histeq 对该图像进行直方图均衡化处理
H.color=[1 1 1];%%设置背景为白色,打开原图像
figure(H);
subplot(221);
imshow(J);
title('直方图均衡化处理图');
subplot(222);
imhist(J);
subplot(223);
imshow(TIF);
title('原图');
subplot(224);
imhist(TIF);
%%Example3_2_3EquGrayImage2
clear;
clc;
TIF=imread('tire.tif');%%读入TIF图像
%%函数 histeq 对该图像进行直方图均衡化处理
J=histeq(TIF);
H.color=[1 1 1];%%设置背景为白色,打开原图像
figure(H);
subplot(221);
imshow(J);
title('直方图均衡化处理图');
subplot(222);
imhist(J);
subplot(223);
imshow(TIF);
title('原图');
subplot(224);
imhist(TIF);
%%调入一幅索引图像进行直方图均衡化处理
RGB=imread('greenleaf.jpg');%%读入RGB图像
[X,map]=rgb2ind(RGB,64);%%转化为64级索引图象
newmap=histeq(X,map);
figure(H);
subplot(121);
imshow(X);
title('索引图像');
subplot(122);
imshow(newmap);
title('索引图像-直方图均衡化处理图');
%%用图像的直方图去规定化tire.tif图像的直方图
E=histeq(RGB,J);
figure(H);
subplot(121);
imshow(E);
subplot(122);
imshow(TIF);