实验一图像的直方图均衡数字图像的空间域滤波.docx

上传人:b****5 文档编号:14983616 上传时间:2023-06-29 格式:DOCX 页数:17 大小:941.07KB
下载 相关 举报
实验一图像的直方图均衡数字图像的空间域滤波.docx_第1页
第1页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第2页
第2页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第3页
第3页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第4页
第4页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第5页
第5页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第6页
第6页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第7页
第7页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第8页
第8页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第9页
第9页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第10页
第10页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第11页
第11页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第12页
第12页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第13页
第13页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第14页
第14页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第15页
第15页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第16页
第16页 / 共17页
实验一图像的直方图均衡数字图像的空间域滤波.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

实验一图像的直方图均衡数字图像的空间域滤波.docx

《实验一图像的直方图均衡数字图像的空间域滤波.docx》由会员分享,可在线阅读,更多相关《实验一图像的直方图均衡数字图像的空间域滤波.docx(17页珍藏版)》请在冰点文库上搜索。

实验一图像的直方图均衡数字图像的空间域滤波.docx

实验一图像的直方图均衡数字图像的空间域滤波

实验一、图像的直方图均衡

一、实验目的

1、理解直方图均衡的原理与作用;

2、掌握统计图像直方图的方法;

3掌握图像直方图均衡的方法。

二、实验原理

在实际应用中,希望能够有目的地增强某个灰度区间的图像,即能够人为地修正直方图的形状,使之与期望的形状相匹配,这就是直方图规定化的基本思想。

换句话说,希望可以人为地改变直方图形状,使之成为某个特定的形状,直方图规定化就是针对上述要求提出来的一种增强技术,它可以按照预先设定的某个形状来调整图像的直方图。

直方图规定化是在运用均衡化原理的基础上,通过建立原始图像和期望图像之间的关系,选择地控制直方图,使原始图像的直方图变成规定的形状,从而弥补了直方图均衡不具备交互作用的特性。

三、实验步骤

1、利用matlab图像处理工具箱提供的函数进行均衡处理;

程序如下:

clc

IM=imread('imag.jpg');

figure,

imshow(IM);

imwrite(rgb2gray(IM),'Gray.bmp');%将彩色图片灰度化并保存

figure,

subplot(2,1,1),

imshow('gray.bmp')

IM=rgb2gray(IM);%转换为灰度图

subplot(2,1,2),

imhist(IM);%画出直方图

figure,

IM2=histeq(IM);%利用函数图像均值

subplot(2,1,1),

imshow(IM2);%显示均值后图片

subplot(2,1,2),

imhist(IM2);%显示处理后的直方图

处理结果:

原始图片:

用系统函数均衡后结果:

均值后:

2、自己设计程序实现图像的直方图均衡;

自己设计的均值代码:

%读入图片:

clc

IM=imread('imag.jpg');

figure,

imshow(IM)

imwrite(rgb2gray(IM),'Gray.bmp');%将彩色图片灰度化并保存

figure,

subplot(2,1,1),

imshow('gray.bmp')

IM=rgb2gray(IM);%灰度化后的数据存入数组

%直方图均衡化

S1=zeros(1,256);

fori=1:

256

forj=1:

i

S1(i)=GP(j)+S1(i);%计算Sk

end

end

S2=round((S1*256)+0.5);%将Sk归到相近级的灰度

fori=1:

256

GPeq(i)=sum(GP(find(S2==i)));%计算现有每个灰度级出现的概率

end

figure,

subplot(2,1,1),bar(0:

255,GPeq,'b')%显示均衡化后的直方图

title('均衡化后的直方图')

xlabel('灰度值')

ylabel('出现概率')

%四,图像均衡化

PA=IM;

fori=0:

255

PA(find(IM==i))=S2(i+1);%将各个像素归一化后的灰度值赋给这个像素

end

subplot(2,1,2),imshow(PA)%显示均衡化后的图像

title('均衡化后图像')

imwrite(PA,'PA.bmp');

3、画出均衡后的图像直方图;

处理后

4、比较上述两种处理方法的不同。

实验二、数字图像的空间域滤波

一、实验目的

1、理解图像空间域滤波的原理;

2、掌握图像均值滤波、中值滤波的原理与实现方法;

3掌握上述方法的改进方法。

二、实验原理

均值滤波的主要步骤为:

(1)将模板在途中漫游,并将模板中心与途中某个象素位置重合;

(2)将模板上系数与模板下对应象素相乘;

(3)将所有乘积相加;

(4)将和(模板的输出响应)赋给途中对应模板中心位置的象素。

中值滤波的主要步骤为:

(1)将模板在途中漫游,并将模板中心与途中某个象素位置重合;

(2)读取模板下各对应象素的灰度值;

(3)将这些灰度值从小到大排成1列;

(4)找出这些值里排在中间的1个;

(5)将这个中间值赋给对应模板中心位置的象素。

三、实验内容

基本要求:

1、自己编程实现图像的均值滤波;

2、自己编程实现图像的中值滤波;

3、利用matlab图像处理工具箱中的函数实现图像的上述处理;

clear;

c=imread('imag.jpg');

c=imnoise(c,'salt&pepper',0.02);

subplot(2,2,1)

imshow(c);

%c=double(c);

title('originimage');%显示原图像

x=ones(3)/9;

d=imfilter(c,x);

subplot(2,2,2)

imshow(d);

title('avagefilter');%调用系统函数实现均值滤波

d=medfilt2(c,[3,3]);

subplot(2,2,3)

imshow(d);

title('midfilter');%调用系统函数实现中值滤波

%------------------编程实现均值和中值滤波-------------------%

x=double(ones(3)/9);

form=2:

255

forn=2:

255

x1=double(c(m-1:

m+1,n-1:

n+1));%在原图像中取出3*3的矩阵

y=x.*x1;%模板上系数与模板下对应象素相乘

y=[y(1,:

)y(2,:

)y(3,:

)];%将所有乘积相加

y=uint8(sum(y));

d(m,n)=y;%取和值赋给所在元素

end

end

subplot(2,2,4)

imshow(d);

title('avagefilterbyown');

form=2:

255

forn=2:

255

x=c(m-1:

m+1,n-1:

n+1);%在原图像中取出3*3的矩阵

y=[x(1,:

)x(2,:

)x(3,:

)];%将其转换为1*9的矩阵

y=sort(x);%按由小到大顺序排列

d(m,n)=y(5);%取中间值赋给所在元素值

end

end

subplot(2,2,4)

imshow(d);

title('avagefilterbyown');

实验结果:

扩展要求:

4、实现一种图像加权中值滤波或加权均值滤波;

实验三、图像的变换域压缩编码

一、实验内容

设计一种基于变换域的压缩编码方法(如DCT,DHT等),并在变换域设计一种系数量化方案压缩图像。

二、技术指标

基本要求:

1、比较不同变换方式的压缩比;

2、比较不同量化编码方式的压缩比

扩展要求:

3、比较不同变换的图像恢复信噪比;

4、比较不同量化编码方式的图像恢复信噪比。

四、实验步骤

1.图像压缩编码的理论算法。

程序如下

clear;

c=imread('lena.bmp');

subplot(2,2,1)

imshow(c);

c=double(c);

title('originimage');

T=@dct2;%dct_____________

B=blkproc(c,[88],T);

subplot(2,2,2);%showthedctimage

imshow(B);

mask=[11111000

11110000

11100000

11000000

10000000

00000000

00000000

00000000];

B2=blkproc(B,[88],'P1.*x',mask);

T=@idct2;

d=blkproc(B2,[88],T);

d=mat2gray(d);

subplot(2,2,4);

imshow(d);

实验结果

2.2自编函数实现

clear;

I=imread('lena.jpg');

I=double(rgb2gray(I));

figure

(1);

imshow(uint8(I));

title('原图像');

Y=zeros(8,8);

fori=1:

8

forj=1:

8

ifi==1

Y(i,j)=sqrt(1/8);

else

Y(i,j)=sqrt(2/8)*cos((pi*(2*(j-1)+1)*(i-1))/16);

end

end

end

s=blkproc(I,[88],'P1*x*P2',Y,Y');

figure

(2);

imshow(uint8(s));

forj=1:

8

fori=1:

8

ifj<=8-i+1

a(i,j)=1;

else

a(i,j)=0;

end;

end;

end;

s=blkproc(s,[88],'P1.*x',a);

figure(3);

imshow(uint8(s));

s=blkproc(s,[88],'P1*x*P2',Y',Y);

figure(4);

imshow(uint8(s));

title('经过压缩处理的图像')

四、实验结果

对比压缩前后的图像易知,仿真中取了l0个DCT系数,占l5%比较原图和重构图像,可以发现:

在抛弃85%的DCT系数后,重构图像时并不会因此而带来其画面质量的显著下降,即重构图像的失真不大。

当量化表的有效个数为10时压缩的图像稍显模糊,这是因为该压缩算法为有损压缩,压缩后的图像丢失了原始图像部分数据信息。

但由于DCT变换有使图像能量集中在左上方的特性,因此压缩图像保留了原始图像大部分的图像特征,其视觉效果与原始图像相差不大。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2