⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yuxiuming.m

📁 此程序为本人编写的关于数字图像处理方面的matlab程序
💻 M
字号:
clear all;
clc;
a0=imread('D:\Mary.bmp');
a=a0;
subplot(2,3,1);
imshow(a);
title('原图像');
subplot(2,3,4);
imhist(a);
title('灰度图像直方图');
a=imadjust(a,[],[0.0,0.4]);
a1=a;
subplot(2,3,2);
imshow(a);
title('原灰度图');
%title('原图像直方图');
%a=imadjust(a,[0.0,0.3],[]);
%a=imadjust(a,[0.0,0.3],[]);
%subplot(2,3,3);
%imshow(a);
%title('均衡化后图象');
%a=imadjust(a,[],[0.0,0.3]);
%a=imadjust(a,[],[0.0,0.4]);
dot=zeros(1,8);
for i=1:256;
    for j=1:256;
        if a(i,j)<33
            b(i,j)=1;
            dot(1)=dot(1)+1;
        elseif  a(i,j)<65
            b(i,j)=2;
            dot(2)=dot(2)+1;
        elseif a(i,j)<97
            b(i,j)=3;
            dot(3)=dot(3)+1;
        elseif a(i,j)<129
            b(i,j)=4;
            dot(4)=dot(4)+1;
        elseif a(i,j)<161
            b(i,j)=5;
            dot(5)=dot(5)+1;
        elseif a(i,j)<193
            b(i,j)=6;
            dot(6)=dot(6)+1;
        elseif a(i,j)<225
            b(i,j)=7;
            dot(7)=dot(7)+1;
        else
            b(i,j)=8;
            dot(8)=dot(8)+1;
        end
    end
end
%for i=1:256;
   % for j=1:256;
       % imshow(a(i,j,1));
       %end;
       %end;
sum=0;
for i=1:8;
    sum=sum+dot(i);
end;
p=zeros(1,8);
for i=1:8;
    p(i)=dot(i)/sum;
end;
subplot(2,3,5);
bar(p,.01);
title(' 八灰度级统计图');
l=zeros(1,8);
l(1)=p(1);
for i=2:8;
    l(i)=p(i)+l(i-1);
end;
%取整扩展
dd=zeros(1,8);
for i=1:8;
    dd(i)=round((8-1)*l(i)-.5);
end
t=zeros(1,8);
t(dd(1))=dot(1);
for i=2:8;
    cc=dd(i);
    if dd(i-1)==cc
        t(cc)=t(cc)+dot(i);
    else
        t(cc)=dot(i);
    end
end
tt=zeros(1,8);
tt=t./sum;
%t(5)=dot(1)/sum;
%t(6)=dot(2)/sum;
%t(7)=1-t(1)-t(5);
a=double(a);
for i=1:256;
    for j=1:256;
        %d=(a1(i,j)/32)+0.5;
        d=b(i,j);
        c(i,j)=(dd(d)-d)*32+a(i,j);     %+(t(d)-a(i,j))*32;
        %if a(i,j)==1;
          %  a(i,j)=1;
          %elseif a(i,j)==2;
            %a(i,j)=2;
            %else
            %a(i,j)=7;
    end
end
c=double(c);
c=mat2gray(c);
subplot(2,3,3);
imshow(c);
title('均衡化后图象');
subplot(2,3,6);
bar(tt,.01);
title('均衡化直方图');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -