当前位置:文档之家› 数字图像处理实验报告 (2)

数字图像处理实验报告 (2)

数字图像处理实验报告 (2)
数字图像处理实验报告 (2)

数字图像处理试验报告

实验二:数字图像得空间滤波与频域滤波

姓名:XX学号:2XXXXXXX 实验日期:2017 年4 月26日

1、实验目得

1、掌握图像滤波得基本定义及目得.

2、?理解空间域滤波得基本原理及方法。

3、掌握进行图像得空域滤波得方法。

4、?掌握傅立叶变换及逆变换得基本原理方法。

5、?理解频域滤波得基本原理及方法。

6、掌握进行图像得频域滤波得方法。

2、实验内容与要求

1、?平滑空间滤波:

1) 读出一幅图像,给这幅图像分别加入椒盐噪声与高斯噪声后并与前一张图显示在同

一图像窗口中。

2)?对加入噪声图像选用不同得平滑(低通)模板做运算,对比不同模板所形成得效果, 要求在同一窗口中显示。

3) 使用函数 imfilter时,分别采用不同得填充方法(或边界选项,如

零填充、’replicate'、'symmetric’、’circular')进行低通滤波,显

示处理后得图像.

4)运用for循环,将加有椒盐噪声得图像进行10 次,20 次均值滤波,查瞧其特点,显示均值处理后得图像(提示:利用fspecial函数得’average’

类型生成均值滤波器)。

5)?对加入椒盐噪声得图像分别采用均值滤波法,与中值滤波法对有噪声得图像做处理,

要求在同一窗口中显示结果。

6) 自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后得图像。

2、锐化空间滤波

1)?读出一幅图像,采用3×3得拉普拉斯算子 w = [ 1, 1, 1;1– 8 1; 1, 1, 1]

对其进行滤波。

2) 编写函数w = genlaplacian(n),自动产生任一奇数尺寸n 得拉普拉斯算子,

如 5

×5得拉普拉斯算子

w =[ 1 1 1 1 1

1 1 1 1

1

1 1 —24 1

1 1 1 1 1

1 1 1 1 1

1]

3)?分别采用5×5,9×9,15×15与25×25大小得拉普拉斯算子对blurry_moon、tif

行锐化滤波,并利用式g(x, y) = f (x, y) -?2 f (x, y) 完成图像得锐化增强,观察其有何

不同,要求在同一窗口中显示.

4) 采用不同得梯度算子对该幅图像进行锐化滤波,并比较其效果.

5)自己设计锐化空间滤波器,并将其对噪声图像进行处理,显示处理后得图像;

3、傅立叶变换

1)读出一幅图像,对其进行快速傅立叶变换,分别显示其幅度图像与相位图像。

仅对相位部分进行傅立叶反变换后查瞧结果图像.

2) 仅对幅度部分进行傅立叶反变换后查瞧结果图像。

3) 将图像得傅立叶变换 F 置为其共轭后进行反变换,比较新生成图像与原始图像得差异。

4、平滑频域滤波

1)?设计理想低通滤波器、巴特沃斯低通滤波器与高斯低通滤波器,截至频率自选,分别

给出各种滤波器得透视图.

2)读出一幅图像,分别采用理想低通滤波器、巴特沃斯低通滤波器与高斯低通滤波器对其进行滤波(截至频率自选),再做反变换,观察不同得截止频率下采用不同低通滤波器得到得图像与原图像得区别,特别注意振铃效应。(提示:1)在频率域滤波同样要注意到填充问题;2)注意到(-1)x+y;)

5、?锐化频域滤波

1) 设计理想高通滤波器、巴特沃斯高通滤波器与高斯高通滤波器,截至频率自选,分

别给出各种滤波器得透视图。

2)读出一幅图像,分别采用理想高通滤波器、巴特沃斯高通滤波器与高斯高通滤波器对其进行滤波(截至频率自选),再做反变换,观察不同得截止频率下采用不同高通滤波器得到得图像与原图像得区别。

3、实验具体实现

1、平滑空间滤波:

(1)、读出一幅图像,给这幅图像分别加入椒盐噪声与高斯噪声后并与前一张图显示在

同一图像窗口中.

img=imread('lena、png')

figure,subplot(1,3,1); imshow(img);title('

原始图像'); img2=imnoise(img,'salt &

pepper',0、02); subplot(1,3,2);

imshow(img2); title('椒盐噪声图像

');

img3=imnoise(img,'gaussian',0、

02); subplot(1,3,3),imshow(img3);

title('高斯噪声图像');

(2)、对加入噪声图像选用不同得平滑(低通)模板做运算,对比不同模板所形成得效果,要求在同一窗口中显示。平滑滤波就是低频增强得空间域滤波技术。它得目得有两个,一就是模糊,二就是消除噪声。将空间域低通滤波按线性与非线性特点有:线性、非线性平滑滤波器,线性平滑滤波器包括均值滤波器,非线性得平滑滤波器有最大值滤波器,中值滤波器,最小值滤波器.

代码如下:

img=imread(’lena、png’) img

=rgb2gray(img);figure,subplot(1,

3,1); imshow(img);title(’原

始图像'); img2=imnoise(img,’salt

& pepper’,0、02);

subplot(1,3,2);imshow(img2);title('椒盐噪

声图像'); img3=imnoise(img,'gaussian’,0、02);

subplot(1,3,3),imshow(img3); title(’高

斯噪声图像');

%对椒盐噪声图像进行滤波处理h=fspeci

al(’average’,3); I1=filter2(h,im

g2)/255; I2=medfilt2(img2,[3

3]);

figure,subplot(2,2,1),imshow(img),title('原图像'); sub

plot(2,2,2),imshow(img2),title(’椒盐噪声图’);subpl

ot(2,2,3),imshow(I1),title(’3*3均值滤波图’); subplot(2,

2,4),imshow(I2),title('3*3 中值滤波图');

%对高斯噪声图像进行滤波处理 G1=filte

r2(h,img3)/255; G2=medfilt2(im

g3,[3 3]);

figure,subplot(2,2,1),imshow(img),title(’原图像’);su

bplot(2,2,2),imshow(img3),title('高斯噪声图’); subplot

(2,2,3),imshow(G1),title(’3*3 均值滤波图'); subplot(2,2,

4),imshow(G2),title(’3*3 中值滤波图');

(3)、使用函数imfilter 时,分别采用不同得填充方法(或边界选项,如

零填充、'replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后得图像。

g = imfilter(f, w, filtering_mode, boundary_options, size_options),其中,f 为输入图像,w 为滤波掩模,g 为滤波后图像。

h=fspecial('motion',50,45); %创建一个运动模糊滤波器

filteredimg=imfilter(img,h);

boundaryReplicate=imfilter(img,h,'replicate');

boundary0=imfilter(img,h,0);

boundarysymmetric=imfilter(img,h,'symmetric');

boundarycircular=imfilter(img,h,'circular');

figure,subplot(3,2,1),imshow(img),title('Original Image');

subplot(3,2,2),imshow(filteredimg),title('Motion Blurred Image');

subplot(3,2,3),imshow(boundaryReplicate),title('Replicate');

subplot(3,2,4),imshow(boundary0),title('0-Padding');

subplot(3,2,5),imshow(boundarysymmetric),title('symmetric');

subplot(3,2,6),imshow(boundarycircular),title('circular');

实验结果如下:

(4)、运用for循环,将加有椒盐噪声得图像进行10次,20 次均值滤波,查瞧其特点,显示均值处理后得图像(提示:利用fspecial 函数得’average'类型生成均值滤波器)。

代码如下:

h=fspecial('average');

实验结果:

(5)、对加入椒盐噪声得图像分别采用均值滤波法,与中值滤波法对有噪声得图像做处理,要求在同一窗口中显示结果。

实验结果为:

(6)、自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后得图像。

代码如下:

[m n]=size(img2);

figure,subplot(1,2,1),imshow(img2);

s=zeros(1,9);

代码如下:

h1=fspecial('average');

J=imfilter(img2,h1);

J2=medfilt2(img2);

figure,subplot(1,3,1),imshow(img2),title('salt & pepper Noise');

subplot(1,3,2),imshow(J),title('Averaging Filtering');

subplot(1,3,3),imshow(J2),title('Median Filtering');

for i=1:10

J1=imfilter(img2,h);

end

for j=1:20

J2=imfilter(img2,h);

end

figure,subplot(1,3,1),imshow(img2),title('salt & pepper Noise');

subplot(1,3,2),imshow(J1),title('10 Average Filtering');

subplot(1,3,3),imshow(J2),title('20 Average Filtering');

for i=2:1:m-1

for j=2:1:n-1

h=1;

for p=i-1:1:i+1

for q=j-1:1:j+1

s(h)=img2(p,q);

h=h+1;

end

end

s=sort(s);

I(i,j)=s(5);

end

end

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

实验结果:

2、锐化空间滤波

(1)读出一幅图像,采用3×3得拉普拉斯算子w = [ 1, 1, 1; 1– 8 1; 1, 1, 1]对其进行滤波.

代码如下:

img=imread('lena、png');

img=rgb2gray(img);

img=im2double(img);

w=[1,1,1;

1,-8,1;

1,1,1]

k=conv2(img,w,'same');

imshow(k);

实验结果为:

(2)编写函数w = genlaplacian(n),自动产生任一奇数尺寸n 得拉普拉斯算子,如5×5得拉普拉斯算子

w = [ 1 1 11 1

1 11 1 1

11—24 1 1

1 1 1 1 1

代码如下:

num=input('please enter any

num:');n=num;

W=ones

(n,n); for

i=1:n

forj=1:n

if(i==fix(n/2)+1 && j==fix(n/2)+1)

W(i,j)=n*n—1;

end

end

end

display (W);

代码运行结果为:

行锐化滤波,并利用式完成图像得锐化增强,观察其有何不同,要求在同一窗口中显示。

代码如下: 基于上一题要求形

成一函数:

function [W]=lapulasi(num)

n=num,W=ones(n),x=fix(n/2)+1;

W(x,x)=-(n*n-1);

其她代码: f=imread('moon、

tif'); f=im2double(f);

figure,subplot(2,3,1),imshow(f),title('Original Image'); w0=lapulasi(3),w1=lapulasi(5),w2=lapulasi(9);

w3=lapulasi(15),w4=lapulasi(25);

f0=f-imfilter(f,w0,'replicate');

subplot(2,3,2),imshow(f0),title('3*3 lapulasi');

f1=f-imfilter(f,w1,'replicate');

subplot(2,3,3),imshow(f1),title('5*5 lapulasi');

f2=f-imfilter(f,w2,'replicate');

subplot(2,3,4),imshow(f2),title('9*9 lapulasi');

f3=f-imfilter(f,w3,'replicate');

subplot(2,3,5),imshow(f3),title('15*15 lapulasi');

f4=f-imfilter(f,w4,'replicate');

subplot(2,3,6),imshow(f4),title('25*25 lapulasi');

实验结果为:

(4)采用不同得梯度算子对该幅图像进行锐化滤波,并比较其效果。

实验效果如下:

代码如下:

[I,map]=imread('moon、

tif'); I=double(I);

figure,subplot(2,3,1),imshow(I,map),title('Original Image'); [Gx,Gy]=gradient(I);

G=sqrt(Gx、*Gx+Gy、*Gy),J1=G;

subplot(2,3,2),imshow(J1,map),title('Operator1 Image');

J2=I;K=find(G>=7);

J2(K)=G(K);

subplot(2,3,3),imshow(J2,map);

title('Operator2 Image');

J3=I;

K=find(G>=7);

J3(K)=255;

subplot(2,3,4),imshow(J3,map),title('Operator3 Image');

J4=I;

K=find(G<=7);

J4(K)=255;

subplot(2,3,5),imshow(J4,map),title('Operator4 Image');

J5=I;

K=find(G<=7);

J5(K)=0;

Q=find(G>=7);

J5(Q)=255;

subplot(2,3,6),imshow(J5,map),title('Operator5 Image');

(5)自己设计锐化空间滤波器,并将其对噪声图像进行处理,显示处理后得图像;

代码如下:

I=imread('lena、png');

I=rgb2gray(I);

h=fspecial('sobel');

h1=h'*0、5;

h2=h';

h3=h'*1、5;

z1=imfilter(I,h1);

z2=imfilter(I,h2);

z3=imfilter(I,h3);

figure,subplot(2,2,1),imshow(I),title('Original Image');

subplot(2,2,2),imshow(z1);title('Vertical filtering1');

subplot(2,2,3),imshow(z2);title('Vertical filtering2');

subplot(2,2,4),imshow(z3);title('Vertical filtering3')

运行结果如下:

3、傅立叶变换

(1)、读出一幅图像,对其进行快速傅立叶变换,分别显示其幅度图像与相位图像.仅对相位部分进行傅立叶反变换后查瞧结果图像.

代码为: img=imread('lena、

png'); img=rgb2gray(img);

f1=fft2(img); %快速傅里叶变换

f2=log(1+abs(f1)); %振幅谱

f3=fftshift(f1);

f4=angle(f1); %相位谱

figure,subplot(1,3,1),imshow(img),title('Original Image');

subplot(1,3,2),imshow(log(1+abs(f3)),[]),title('amplitude spectrum'); subplot(1,3,3),imshow(f4),title('phase spectrum');

实验结果为:

代码为:

f=ifft2(abs(f1));

figure,subplot(1,3,1),imshow(img),title('Original Image');

subplot(1,3,2),imshow(log(1+abs(f3)),[]),title('amplitude spectrum'); subplot(1,3,3),imshow(log(1+abs(f)),[]),title('absamplitude spectrum');

(2)、仅对幅度部分进行傅立叶反变换后查瞧结果图像.

实验结果为:

(3)、将图像得傅立叶变换F 置为其共轭后进行反变换,比较新生成图像与原始图像得差异。

代码

f1=fft2(img);

f2=log(1+abs(f1));

f3=fftshift(f1);

f4=angle(f1);

f5=-f4;

f6=double(f3*exp(f4)); %傅立叶变换得复共轭

f7=ifft2(f6); %反傅立叶变换

figure,subplot(1,2,1),imshow(img),title('Original Image');

subplot(1,2,2),imshow(real(f7),[]),title('inverse fourier transform'); 实验效果:

4、平滑频域滤波

(1)、设计理想低通滤波器、巴特沃斯低通滤波器与高斯低通滤波器,截至频率自选,分别给出各种滤波器得透视图。

%%%%%%%%%%%%%%%%%%%理想低通滤波器得透视图%%%%%

a=100;

b=100;

U=0:a;

V=0:b;

M=length(U);N=length(V);

D0=10; %D0 就是频带得中心半径;

x1=50;y1=50;

x0=-50;y0=-50;

m=fix(M/2); n=fix(N/2);

H=zeros(M,N);

n=2;

for u=1:M

for v=1:N

a=sqrt((U(u) - 50) 、* (U(u)-50) + (V(v) - 50) 、* (V(v) - 50));%D(u,v)得值

if(a<=D0)%理想滤波器

H(u,v)=1;

else

H(u,v)=0;

end

end

end

figure; subplot(1,3,1),

surf(U,V,H),title('理想低通滤波透视图') ;

%%%%%%%%%%%%2 阶巴特沃斯低通滤波透视图%%%%%%%%%%%%%%%%55

a=100;

b=100;

U=0:a;

V=0:b;

M=length(U);N=length(V);

D0=10;%W=200;%D0 就是频带得中心半径;W 就是频带得宽度

x1=50;y1=50;

x0=-50;y0=-50;

m=fix(M/2); n=fix(N/2);

H=zeros(M,N);

n=2;

for u=1:M

for v=1:N

a=sqrt((U(u) - 50) 、* (U(u)-50) + (V(v) - 50) 、* (V(v) - 50));%D(u,v)得值

b=1+(a/D0)^2*n;

H(u,v)=1/b;

end

end

subplot(1,3,2),surf(U,V,H);

title('n=2 Butterworth lowess filter')

%%%%%%%%%%%%%%%%%%%%%%高斯低通滤波%%%%%%%%%%%%%%%%%%%%%

a=100;

b=100;

U=0:a;

V=0:b;

M=length(U);N=length(V);

D0=10; %D0 就是频带得中心半径

x1=50;y1=50;

x0=-50;y0=-50;

m=fix(M/2); n=fix(N/2);

H=zeros(M,N);

for u=1:M

for v=1:N

D1=((u-m-x0)^2+(v-n-y0)、^2)^0、5;

D2=((u-m+x0)^2+(v-n+y0)、^2)^0、5;

D11=((u-m-x1)^2+(v-n-y1)、^2)^0、5;

D21=((u-m+x1)^2+(v-n+y1)、^2)^0、5;

H(u,v) = (U(u) - 50) 、* (U(u)-50) + (V(v) - 50) 、* (V(v)

- 50);

end

end

%在绘制高斯曲面得时候,加上下述代码,显示得美观

S=50;

H = -H/(2*S);

H = exp(H) / (sqrt(2*pi) * sqrt(S));

subplot(1,3,3),surf(U,V,H),title('Gaussian lowess filter');

实验结果:

由上图可知,当频带中心宽度相同时,理想低通滤波器为圆柱形图像,二阶巴特沃斯

低通滤波器得面线比较紧凑,高斯滤波图像最为平滑。

(2)读出一幅图像,分别采用理想低通滤波器、巴特沃斯低通滤波器与高斯低通滤波器对其进行滤波(截至频率自选),再做反变换,观察不同得截止频率下采用不同低通滤波器得到得图像与原图像得区别,特别注意振铃效应。(提示:1)在频率域滤波同样要注意到填充问题;2)注意到(—1)x+y;)

%理想低通滤波

img=imread('lena、png');

img=rgb2gray(img);

f=double(img);

g=fft2(f); %傅立叶变换

g=fftshift(g);

[M,N]=size(g);

d0=15;

m=fix(M/2);

n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

if(d<=d0)

h=1;

else

h=0;

end

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result);

J2=uint8(real(J1));

figure,subplot(2,2,1),imshow(img),title('Original Image');

subplot(2,2,2),imshow(J2),title('d0=15 lowpss filter');

%%%%%%%%d0=30 得理想低通滤波%%%%%%%%%%%%%%%

d0=30;

m=fix(M/2);

n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

if(d<=d0)

h=1;

else

h=0;

end

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result);

J2=uint8(real(J1));

subplot(2,2,3),imshow(J2),title('d0=30 lowpss filter');

%%%%%%%%d0=100 得理想低通滤波%%%%%%%%%%%%%%%

d0=100;

m=fix(M/2);

n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

if(d<=d0)

h=1;

else

h=0;

end

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result);

J2=uint8(real(J1));

subplot(2,2,4),imshow(J2),title('d0=100 lowpss filter');

实验结果:

当截止频率d0=15 时,滤波后得图像比较模糊,振铃现象也很明显;当d0=30 时,图像模糊程度减弱,振铃现象仍存在。当d0=100 时,滤波后得图像比较清晰,但高频分量损失后,图像边沿仍然存在一点振铃现象。

2阶巴特沃斯低通滤波

nn=2;

d0=15;

m=fix(M/2),n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

h=1/(1+0、414*(d/d0)^(2*nn));

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result);

J2=uint8(real(J1));

figure,subplot(2,2,1),imshow(img),title('Original Image');

subplot(2,2,2),imshow(J2),title('d0=15 Butterworth lowpss filter');

%%%%%%%%d0=30 得巴特沃斯低通滤波%%%%%%%%%%%%%%%

d0=30;

m=fix(M/2),n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

h=1/(1+0、414*(d/d0)^(2*nn));

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result),J2=uint8(real(J1));

subplot(2,2,3),imshow(J2),title('d0=30 Butterworth lowpss filter');

%%%%%%%%d0=100 得巴特沃斯低通滤波%%%%%%%%%%%%%%%d0=100;

m=fix(M/2),n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

h=1/(1+0、414*(d/d0)^(2*nn));

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result),J2=uint8(real(J1));

subplot(2,2,4),imshow(J2),title('d0=100 Butterworth lowpss filter');

实验效果为:

采用截止频率分别为15,30,100 进行实验,滤波后得图像逐渐清晰,整体得振铃现象

没有理想低通滤波器得严重。

%高斯低通滤波

d0=15;

m=fix(M/2),n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

h=exp(-(d、^2)、/(2*(d0^2)));

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result),J2=uint8(real(J1));

figure,subplot(2,2,1),imshow(img),title('Original Image');

subplot(2,2,2),imshow(J2),title('d0=15 Gaussian filter');

%%%%%%%%d0=30 得高斯低通滤波%%%%%%%%%%%%%%%

d0=30;

m=fix(M/2),n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

h=exp(-(d、^2)、/(2*(d0^2)));

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result),J2=uint8(real(J1));

subplot(2,2,3),imshow(J2),title('d0=30 Gaussian filter');

%%%%%%%%d0=100 得高斯低通滤波%%%%%%%%%%%%%%%

d0=100;

m=fix(M/2),n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

h=exp(-(d、^2)、/(2*(d0^2)));

result(i,j)=h*g(i,j);

end

end

result=ifftshift(result);

J1=ifft2(result),J2=uint8(real(J1));

subplot(2,2,4),imshow(J2),title('d0=100 Gaussian filter');

实验结果为:

从实验对比可知,高斯滤波器得平滑效果不如二阶巴特沃斯滤波器,但用高斯滤波后得图像无振铃现象产生.

5、锐化频域滤波

(1)设计理想高通滤波器、巴特沃斯高通滤波器与高斯高通滤波器,截至频率自选,分别给出各种滤波器得透视图.

%%%%%%%%%%%%%%%%理想高通滤波器%%%%%%%%%%%%%%%%%%%%%%%%%%%

a=100;

b=100;

U=0:a;

V=0:b;

M=length(U);N=length(V);

D0=15; %D0 就是频带得中心半径;

H=zeros(M,N);

n=2;

for u=1:M

for v=1:N

a=sqrt((U(u)-50)、*(U(u)-50)+(V(v)-50)、*(V(v)-50));%D(u,v)得值

if(a>=D0)

H(u,v)=1;

else

H(u,v)=0;

end

end

数字图像处理实验1

实验一 实验内容和步骤 练习图像的读取、显示和保存图像数据,步骤如下: (1)使用命令figure(1)开辟一个显示窗口 (2)读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内显示、二值图像和灰度图像,注上文字标题。 (3)保存转换后的灰度图像和二值图像 (4)在同一个窗口显示转换后的灰度图像的直方图 I=imread('BaboonRGB.bmp'); figure,imshow(I); I_gray=rgb2gray(I); figure,imshow(I_gray); I_2bw=Im2bw(I_gray); figure,imshow(I_2bw); subplot(1,3,1),imshow(I),title('RGB图像'); subplot(1,3,2),imshow(I_gray),title('灰度图像'); subplot(1,3,3),imshow(I_2bw),title('二值图像'); imwrite(I_gray,'Baboongray.png'); imwrite(I_2bw,'Baboon2bw.tif'); figure;imhist(I_gray);

RGB 图 像灰度图 像二值图 像 050100150200250 500 1000 1500 2000 2500 3000

(5)将原RGB 图像的R 、G 、B 三个分量图像显示在figure(2)中,观察对比它们的特点,体会不同颜色所对应的R 、G 、B 分量的不同之处。 [A_RGB,MAP]=imread('BaboonRGB.bmp'); subplot(2,2,1),imshow(A_RGB),title('RGB'); subplot(2,2,2),imshow(A_RGB(:,:,1)),title('R'); subplot(2,2,3),imshow(A_RGB(:,:,2)),title('G'); subplot(2,2,4),imshow(A_RGB(:,:,3)),title('B'); (6)将图像放大1.5倍,插值方法使用三种不同方法,在figure(3)中显示放大后的图像,比较不同插值方法的结果有什么不同。将图像放大到其它倍数,重复实验;A=imread('BaboonRGB.bmp'); figure(3),imshow(A),title('原图像'); B=imresize(A,1.5,'nearest'); figure(4),imshow(B),title('最邻近法') C=imresize(A,1.5,'bilinear'); ; figure(5),imshow(C),title('双线性插值'); D=imresize(A,1.5,'bicubic'); figure(6),imshow(D),title('双三次插值 '); RGB R G B

数字图像处理 课程设计报告

数字图像处理 课程设计报告 姓名: 学号: 班级: 设计题目:图像处理 教师:赵哲老师 提交日期: 12月29日

一、设计内容: 主题:《图像处理》 详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,浮雕效果,素描效果,雾化效果等), 二、涉及知识内容: 1、二值化 2、各种滤波 3、算法等 三、设计流程图 四、实例分析及截图效果: 运行效果截图: 第一步:读取原图,并显示 close all;clear;clc; % 清楚工作窗口clc 清空变量clear 关闭打开的窗口close all I=imread(''); % 插入图片赋给I imshow(I);% 输出图I I1=rgb2gray(I);%图片变灰度图 figure%新建窗口 subplot(321);% 3行2列第一幅图 imhist(I1);%输出图片

title('原图直方图');%图片名称 一,图像处理模糊 H=fspecial('motion',40); %% 滤波算子模糊程度40 motion运动 q=imfilter(I,H,'replicate');%imfilter实现线性空间滤波函数,I图经过H滤波处理,replicate反复复制q1=rgb2gray(q); imhist(q1); title('模糊图直方图'); 二,图像处理锐化 H=fspecial('unsharp');%锐化滤波算子,unsharp不清晰的 qq=imfilter(I,H,'replicate'); qq1=rgb2gray(qq); imhist(qq1); title('锐化图直方图'); 三,图像处理浮雕(来源网络) %浮雕图 l=imread(''); f0=rgb2gray(l);%变灰度图 f1=imnoise(f0,'speckle',; %高斯噪声加入密度为的高斯乘性噪声 imnoise噪声污染图像函数 speckle斑点 f1=im2double(f1);%把图像数据类型转换为双精度浮点类型 h3=1/9.*[1 1 1;1 1 1;1 1 1]; %采用h3对图像f2进行卷积滤波 f4=conv2(f1,h3,'same'); %进行sobel滤波 h2=fspecial('sobel'); g3=filter2(h2,f1,'same');%卷积和多项式相乘 same相同的 k=mat2gray(g3);% 实现图像矩阵的归一化操作 四,图像处理素描(来源网络) f=imread(''); [VG,A,PPG] = colorgrad(f); ppg = im2uint8(PPG); ppgf = 255 - ppg; [M,N] = size(ppgf);T=200; ppgf1 = zeros(M,N); for ii = 1:M for jj = 1:N if ppgf(ii,jj)

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 1)掌握读、写图像的基本方法。 2)掌握MATLAB语言中图像数据与信息的读取方法。 3)理解图像灰度变换处理在图像增强的作用。 4)掌握绘制灰度直方图的方法,理解灰度直方图的灰度变换及均衡化的方 法。 二、实验内容与要求 1.熟悉MATLAB语言中对图像数据读取,显示等基本函数 特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。 1)将MATLAB目录下work文件夹中的forest.tif图像文件读出.用到imread, imfinfo 等文件,观察一下图像数据,了解一下数字图像在MATLAB中的处理就是处理一个矩阵。将这个图像显示出来(用imshow)。尝试修改map颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。 2)将MATLAB目录下work文件夹中的b747.jpg图像文件读出,用rgb2gray() 将其 转化为灰度图像,记为变量B。 2.图像灰度变换处理在图像增强的作用 读入不同情况的图像,请自己编程和调用Matlab函数用常用灰度变换函数对输入图像进行灰度变换,比较相应的处理效果。 3.绘制图像灰度直方图的方法,对图像进行均衡化处理 请自己编程和调用Matlab函数完成如下实验。 1)显示B的图像及灰度直方图,可以发现其灰度值集中在一段区域,用 imadjust函 数将它的灰度值调整到[0,1]之间,并观察调整后的图像与原图像的差别,调整后的灰

度直方图与原灰度直方图的区别。 2) 对B 进行直方图均衡化处理,试比较与源图的异同。 3) 对B 进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。 图1.1 分段线性变换函数 三、实验原理与算法分析 1. 灰度变换 灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。 1) 图像反转 灰度级范围为[0, L-1]的图像反转可由下式获得 r L s --=1 2) 对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围, 如直接使用原图,则一部分细节可能丢失。解决的方法是对原图进行灰度压缩,如对数变换: s = c log(1 + r ),c 为常数,r ≥ 0 3) 幂次变换: 0,0,≥≥=γγc cr s 4) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

数字图像处理 作业1汇总

数字图像处理 报告标题:01 报告编号: 课程编号: 学生姓名: 截止日期: 上交日期:

摘要 (1)编写函数计算灰度图像的均方误差(MSE)、信噪比(SNR)、峰值信噪比(PSNR)、平均绝对误差(MAE);(2)编写函数对灰度图像经行降采样,直接消除像素以及消除像素前进行简单平滑滤波;(3)编写函数对图像进行放大,分别使用像素直接复制和双线性插值的方法:(4)编写函数用题目给出的量化步骤Q去量化灰度图像,并给出相应的MSE和直方图;(5)编写函数对灰度图像执行直方图均衡化,显示均衡前后的直方图。同时,熟悉使用MATLAB,并且熟练操作对图像进行各种修改变换等。 KEY WORD :MATLAB MSE、PSNR 直方图量化

技术探讨 数字图像处理是基于Matlab来实现的,由于Matlab 独特的功能和对矩阵,图像,函数灵活的处理,因而用于图像的处理相当的方便。 task1 均方误差(MSE),信噪比(SNR),峰值信噪比(PSNR),平均绝对误差(MAE)。可以使用使用for循环语句,分别计算图像MSE/SNR/PSNR/MAE,具体的计算公式见附录代码,下面只附运算原理代码 均方误差(MSE): sum=sum+(a(i,j)-b(i,j))^2; MSE=sum/(M*N) 信噪比(SNR): sum2=sum2+a(i,j)^2; SNR=10*log10(sum2/MSE) 峰值信噪比(PSNR): sum=sum+(a(i,j)-b(i,j))^2; PSNR=10*log10(255^2/MSE) 平均绝对误差(MAE): sum=sum+a(i,j)+b(i,j); MAE=sum/(M*N) 在每次对同一个图像处理时它们的均方误差(MSE),信噪比(SNR),峰值信噪比(PSNR),平均绝对误差(MAE)都会有所不同,因为它是原图像与加噪后的图像比较,而电脑的每次操作都会对加噪过得图像有影响。 task3 按比例缩小灰度图像 (1)直接消除像素点: I1=g(1:m:end,1:m:end);I1 为缩小后的图像,g为原图。 (2)先平滑滤波再消除像素点: 滤波函数,g=imfilter(I,w,'corr','replicate'); task4 对图像的放大运用了pixel repetition法以及双线性插值法: 它有三种插值法:即最近邻插值(pixel repetition)、双线性插值、双三次插值(缩放倍数为0.5) ;缩放与放大由给定的参数来确定。 ;缩放与放大由给定的参数来确定。而缩小则同样适用I1=g(1:m:end,1:m:end); 而放大的代码为“J=imresize(I,m,'nearest');%使用pixel repetition法”和“J=imresize(I,m,'bilinear');%使用双线性插值法” 放大倍数更改m值即可 task4 对图像的量化,使用“J=histeq(I,x); ”,x为可变的量化步长 task5 灰度图像的量化和直方图均衡化直接调用函数。“J=histeq(I)”“imhist(I,64)”

武汉科技大学 数字图像处理实验报告

二○一四~二○一五学年第一学期电子信息工程系 实验报告书 班级:电子信息工程(DB)1102班姓名 学号: 课程名称:数字图像处理 二○一四年十一月一日

实验一图像直方图处理及灰度变换(2学时) 实验目的: 1. 掌握读、写、显示图像的基本方法。 2. 掌握图像直方图的概念、计算方法以及直方图归一化、均衡化方法。 3. 掌握图像灰度变换的基本方法,理解灰度变换对图像外观的改善效果。 实验内容: 1. 读入一幅图像,判断其是否为灰度图像,如果不是灰度图像,将其转化为灰度图像。 2. 完成灰度图像的直方图计算、直方图归一化、直方图均衡化等操作。 3. 完成灰度图像的灰度变换操作,如线性变换、伽马变换、阈值变换(二值化)等,分别使用不同参数观察灰度变换效果(对灰度直方图的影响)。 实验步骤: 1. 将图片转换为灰度图片,进行直方图均衡,并统计图像的直方图: I1=imread('pic.jpg'); %读取图像 I2=rgb2gray(I1); %将彩色图变成灰度图 subplot(3,2,1); imshow(I1); title('原图'); subplot(3,2,3); imshow(I2); title('灰度图'); subplot(3,2,4); imhist(I2); %统计直方图 title('统计直方图'); subplot(3,2,5); J=histeq(I2); %直方图均衡 imshow(J); title('直方图均衡'); subplot(3,2,6); imhist(J); title('统计直方图');

原 图 灰度图 01000 2000 3000统计直方图 100200直方图均衡 0统计直方图 100200 仿真分析: 将灰度图直方图均衡后,从图形上反映出细节更加丰富,图像动态范围增大,深色的地方颜色更深,浅色的地方颜色更前,对比更鲜明。从直方图上反应,暗部到亮部像素分布更加均匀。 2. 将图片进行阈值变换和灰度调整,并统计图像的直方图: I1=imread('rice.png'); I2=im2bw(I1,0.5); %选取阈值为0.5 I3=imadjust(I1,[0.3 0.9],[]); %设置灰度为0.3-0.9 subplot(3,2,1); imshow(I1); title('原图'); subplot(3,2,3); imshow(I2); title('阈值变换'); subplot(3,2,5); imshow(I3); title('灰度调整'); subplot(3,2,2); imhist(I1); title('统计直方图'); subplot(3,2,4);

东南大学数字图像处理实验报告

数字图像处理 实验报告 学号:04211734 姓名:付永钦 日期:2014/6/7 1.图像直方图统计 ①原理:灰度直方图是将数字图像的所有像素,按照灰度值的大小,统计其所出现的频度。 通常,灰度直方图的横坐标表示灰度值,纵坐标为半个像素个数,也可以采用某一灰度值的像素数占全图像素数的百分比作为纵坐标。 ②算法: clear all PS=imread('girl-grey1.jpg'); %读入JPG彩色图像文件figure(1);subplot(1,2,1);imshow(PS);title('原图像灰度图'); [m,n]=size(PS); %测量图像尺寸参数 GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255 GP(k+1)=length(find(PS==k))/(m*n); %计算每级灰度出现的概率end figure(1);subplot(1,2,2);bar(0:255,GP,'g') %绘制直方图 axis([0 255 min(GP) max(GP)]); title('原图像直方图') xlabel('灰度值') ylabel('出现概率') ③处理结果:

原图像灰度图 100 200 0.005 0.010.0150.020.025 0.030.035 0.04原图像直方图 灰度值 出现概率 ④结果分析:由图可以看出,原图像的灰度直方图比较集中。 2. 图像的线性变换 ①原理:直方图均衡方法的基本原理是:对在图像中像素个数多的灰度值(即对画面起主 要作用的灰度值)进行展宽,而对像素个数少的灰度值(即对画面不起主要作用的灰度值)进行归并。从而达到清晰图像的目的。 ②算法: clear all %一,图像的预处理,读入彩色图像将其灰度化 PS=imread('girl-grey1.jpg'); figure(1);subplot(2,2,1);imshow(PS);title('原图像灰度图'); %二,绘制直方图 [m,n]=size(PS); %测量图像尺寸参数 GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255

数字图像处理部分作业答案

3.数字化图像的数据量与哪些因素有关? 答:数字化前需要决定影像大小(行数M、列数N)和灰度级数G的取值。一般数字图像灰度级数G为2的整数幂。那么一幅大小为M*N,灰度级数为G的图像所需的存储空间M*N*g(bit),称为图像的数据量 6.什么是灰度直方图?它有哪些应用?从灰度直方图你能获得图像的哪些信息? 答:灰度直方图反映的是一幅图像中各灰度级像素出项的频率之间的关系。以灰度级为横坐标,纵坐标为灰度级的频率,绘制频率同灰度级的关系图就是灰度直方图。 应用:通过变换图像的灰度直方图可以,使图像更清晰,达到图像增强的目的。 获得的信息:灰度范围,灰度级的分布,整幅图像的平均亮度。但不能反映图像像素的位置。 2. 写出将具有双峰直方图的两个峰分别从23和155移到16和255的图像线性变换。 答:将a=23,b=155 ;c=16,d=255代入公式: 得 1,二维傅里叶变换有哪些性质?二维傅里叶变换的可分离性有何意义? 周期性,线性,可分离性,比例性质,位移性质,对称性质,共轭对称性,差分,积分,卷积,能量。 意义:分离性表明:二维离散傅立叶变换和反变换可用两组一维离散傅立叶变换和反变换来完成。 8.何谓图像平滑?试述均值滤波的基本原理。 答:为了抑制噪声改善图像质量所进行的处理称图像平滑或去噪。 均值滤波是一种局部空间域处理的算法,就是对含有噪声的原始图像f(x,y)的每个像素点取一个领域S,计算S中所有像素的灰度级平均值,作为空间域平均处理后图像g(x,y)像素值。 9.何谓中值滤波?有何特点? 答:中值滤波是对一个滑动窗口内的诸像素灰度值排序,用中值代替窗口中心像素的原来灰度值,它是一种非线性的图像平滑法。 它对脉冲干扰及椒盐噪声的的图像却不太合适。抑制效果好,在抑制随机噪声的同时能有效保护边缘少受模糊。但它对点、线等细节较多 6图像几何校正的一般包括哪两步?像素灰度内插有哪三种方法?各有何特点? 答:1)建立失真图像和标准图像的函数关系式,根据函数关系进行几何校正。 2)最近邻插值,双线性插值,三次卷积法 3)最近邻插值:这种插值方法运算量小,但频域特性不好。 3、若f(1,1)=4,f(1,2)=7,f(2,1)=5,f(2,2)=6,分别按最近邻元法、双线性插值法确定点(1.2,1.6)的灰度值。 最近邻元法:点(1.2,1.6)离(1,2)最近,所以其灰度值为7.双线性法:f(i+u,j+v)=(1-u)(1-v)f(i,j)+(1-u)vf(i,j+1)+u(1-v)f(i+1,j)+uvf(i+1,j+1) 将i=1,j=1,u=0.2,v=0.6代入,求得:f(i+u,j+v)=5.76。四舍五入取整后,得该点其灰度值为6

数字图像处理实验 实验二

实验二MATLAB图像运算一、实验目的 1.了解图像的算术运算在数字图像处理中的初步应用。 2.体会图像算术运算处理的过程和处理前后图像的变化。 二、实验步骤 1.图像的加法运算-imadd 对于两个图像f x,y和 (x,y)的均值有: g x,y=1 f x,y+ 1 (x,y) 推广这个公式为: g x,y=αf x,y+β (x,y) 其中,α+β=1。这样就可以得到各种图像合成的效果,也可以用于两张图像的衔接。说明:两个示例图像保存在默认路径下,文件名分别为'rice.png'和'cameraman.tif',要求实现下图所示结果。 代码: I1 = imread('rice.png'); I2 = imread('cameraman.tif'); I3 = imadd(I1, I2,'uint8'); I4 = imadd(I1, I2,'uint16'); subplot(2, 2, 1), imshow(I1), title('?-ê?í???1'); subplot(2, 2, 2), imshow(I2), title('?-ê?í???2'); subplot(2, 2, 3), imshow(I3), title('8??í?????ê?'); subplot(2, 2, 4), imshow(I4), title('16??í?????ê?'); 结果截图:

2.图像的减法运算-imsubtract 说明: 背景图像可通过膨胀算法得到background = imopen(I,strel('disk',15));,要求实现下图所示结果。 示例代码如下: I1 = imread('rice.png'); background = imerode(I1, strel('disk', 15)); rice2 = imsubtract(I1, background); subplot(2, 2, 1), imshow(I1), title('?-ê?í???'); subplot(2, 2, 2), imshow(background), title('±3?°í???'); subplot(2, 2, 3), imshow(rice2), title('′|àíoóμ?í???'); 结果截图: 3.图像的乘法运算-immultiply

数字图像处理技术应用课程报告

集中稀疏表示的图像恢复 董伟胜中国西安电子科技大学电子工程学院wsdong@https://www.doczj.com/doc/334109293.html, 张磊香港理工大学计算机系cslzhang@https://www.doczj.com/doc/334109293.html,.hk 石光明中国西安电子科技大学电子工程学院gmshi@https://www.doczj.com/doc/334109293.html, 摘要 本文对于图像恢复任务提出了一种新的称为集中稀疏表示(CSR)的稀疏表示模型。为了重建高还原度的图像,通过给定的字典,退化图像的稀疏编码系数预计应该尽可能接近那些未知的原始图像。然而,由于可用的数据是原始图像的退化版本(如噪声、模糊和/或者低采样率),正如许多现有的稀疏表示模型一样,如果只考虑局部的稀疏图像,稀疏编码系数往往不够准确。为了使稀疏编码更加准确,通过利用非局部图像统计,引入一个集中的稀疏性约束。为了优化,局部稀疏和非局部稀疏统一到一个变化的框架内。大量的图像恢复实验验证了我们的CSR模型在以前最先进的方法之上取得了令人信服的改进。 1、介绍 图像恢复(IR)目的是为了从,比如说通过一个低端摄像头或者在有限条件下得到图像的图像退化版本(例如噪声、模糊和/或者低采样率),来恢复一副高质量的图像。对于观察的图像y,IR问题可以表示成: y = Hx + v (1) 其中H是一个退化矩阵,x是原始图像的矢量,v是噪声矢量。由于IR的病态特性,尝试把观察模型和所需解决方案的先验知识合并到一个变分公式的正则化技术,已经被广泛地研究。对于正则方法,对自然图像适当的先验知识进行寻找和建模是最重要的关注点之一,因此学习自然图像先验知识的各种方法已经被提出来了【25,5,6,12】。 近年来,对于图像恢复基于建模的稀疏表示已经被证明是一种很有前途的模型【9,5,13,20,16,21,27,15,14】。在人类视觉系统【23,24】的研究中,已经发现细胞感受区域使用少量的从一个超完备的编码集中稀疏选出的结构化基元来编码自然图像。在数学上,一个x ∈ R N的信号可以表示为一个字典Φ中的几个原子的线性组合,例如,X ≈Φα,用|0 最小化:

数字图像处理——彩色图像实验报告

6.3实验步骤 (1)对彩色图像的表达和显示 * * * * * * * * * * * *显示彩色立方体* * * * * * * * * * * * * rgbcube(0,0,10); %从正面观察彩色立方体 rgbcube(10,0,10); %从侧面观察彩色立方 rgbcube(10,10,10); %从对角线观察彩色立方体 %* * * * * * * * * *索引图像的显示和转换* * * * * * * * * * f=imread('D:\Picture\Fig0604(a)(iris).tif'); figure,imshow(f);%f是RGB真彩图像 %rgb图像转换成8色索引图像,不采用抖动方式 [X1,map1]=rgb2ind(f,8,'nodither'); figure,imshow(X1,map1); %采用抖动方式转换到8色索引图像 [X2,map2]=rgb2ind(f,8,'dither'); figure,imshow(X2,map2); %显示效果要好一些 g=rgb2gray(f); %f转换为灰度图像 g1=dither(g);%将灰色图像经过抖动处理,转换打二值图像figure,imshow(g);%显示灰度图像 figure,imshow(g1);%显示抖动处理后的二值图像 程序运行结果:

彩色立方体原图 不采用抖动方式转换到8色索引图像采用抖动方式转换到8色索引图像 灰度图像抖动处理后的二值图像

(2)彩色空间转换 f=imread('D:\Picture\Fig0604(a)(iris).tif'); figure,imshow(f);%f是RGB真彩图像 %转换到NTSC彩色空间 ntsc_image=rgb2ntsc(f); figure,imshow(ntsc_image(:,:,1));%显示亮度信息figure,imshow(ntsc_image(:,:,2));%显示色差信息figure,imshow(ntsc_image(:,:,3));%显示色差信息 %转换到HIS彩色空间 hsi_image=rgb2hsi(f); figure,imshow(hsi_image(:,:,1));%显示色度信息figure,imshow(hsi_image(:,:,2)); %显示饱和度信息figure,imshow(hsi_image(:,:,3));%显示亮度信息 程序运行结果: 原图 转换到NTSC彩色空间

2013数字图像处理课程设计报告

数字图像处理 课程设计报告 课设题目:彩色图像增强软件学院:信息科学与工程学院专业:电子与信息工程 班级: 1002501 姓名:曾小路 学号: 100250131 指导教师:赵占峰 哈尔滨工业大学(威海) 2013 年12月27日

目录 目录 .......................................................................................................................... I 一. 课程设计任务 (1) 二. 课程设计原理及设计方案 (2) 2.1 彩色图像基础 (2) 2.2 彩色模型 (2) 三. 课程设计的步骤和结果 (6) 3.1 采集图像 (6) 3.2 图像增强 (7) 3.3 界面设计 (9) 四. 课程设计总结 (12) 五. 设计体会 (13) 六. 参考文献 (14)

哈尔滨工业大学(威海)课程设计报告 一. 课程设计任务 1.1设计内容及要求: (1)、独立设计方案,根据所学知识,对由于曝光过度、光圈过小或图像亮度不均匀等情况下的彩色图像进行增强,提高图像的清晰度(通俗地讲,就是图像看起来干净、对比度高、颜色鲜艳)。 (2)、参考photoshop 软件,设计软件界面,对处理前后的图像以及直方图等进行对比显示; (3)、将实验结果与处理前的图像进行比较、分析。总结设计过程所遇到的问题。 1.2参考方案 1、实现图像处理的基本操作 学习使用matlab 图像处理工具箱,利用imread()语句读入图像,例如image=imread(flower.jpg),利用彩色图像模型转换公式,将RGB 类型图像转换为HSI 类型图像,显示各分量图像(如imshow(image)),以及计算和显示各分量图像直方图。 2、彩色图像增强实现 对HSI彩色模型图像的I分量进行对比度拉伸或直方图均衡化等处理,提高亮度图像的对比度。对S分量图像进行适当调整,使图像色彩鲜艳或柔和。 H 分量保持不变。将处理后的图像转换成RGB 类型图像,并进行显示。分析处理图像过程和结果存在的问题。 3、参照“photoshop”软件,设计图像处理软件界面 可设计菜单式界面,在功能较少的情况下,也可以设计按键式界面,视 功能多少而定;参考matlab 软件中GUI 设计,学习软件界面的设计 - 1 -

数字图像处理实验报告

数字图像处理试验报告 实验二:数字图像的空间滤波和频域滤波 姓名:XX学号:2XXXXXXX 实验日期:2017 年4 月26 日 1.实验目的 1. 掌握图像滤波的基本定义及目的。 2. 理解空间域滤波的基本原理及方法。 3. 掌握进行图像的空域滤波的方法。 4. 掌握傅立叶变换及逆变换的基本原理方法。 5. 理解频域滤波的基本原理及方法。 6. 掌握进行图像的频域滤波的方法。 2.实验内容与要求 1. 平滑空间滤波: 1) 读出一幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一 图像窗口中。 2) 对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要 求在同一窗口中显示。 3) 使用函数 imfilter 时,分别采用不同的填充方法(或边界选项,如零填 充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图 像。 4) 运用 for 循环,将加有椒盐噪声的图像进行 10 次,20 次均值滤波,查看其特点, 显 示均值处理后的图像(提示:利用fspecial 函数的’average’类型生成均值滤波器)。 5) 对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要 求在同一窗口中显示结果。 6) 自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。 2. 锐化空间滤波 1) 读出一幅图像,采用3×3 的拉普拉斯算子 w = [ 1, 1, 1; 1 – 8 1; 1, 1, 1] 对其进行滤波。 2) 编写函数w = genlaplacian(n),自动产生任一奇数尺寸n 的拉普拉斯算子,如5 ×5的拉普拉斯算子 w = [ 1 1 1 1 1 1 1 1 1 1 1 1 -24 1 1 1 1 1 1 1 1 1 1 1 1] 3) 分别采用5×5,9×9,15×15和25×25大小的拉普拉斯算子对

数字图像处理作业 1

数字图像处理作业 1 1.基本问题 a.什么是数字图像处理,英语全称是什么? 数字图像处理:对图像进行一些列的操作,以达到预期目的的技术,可分为模拟图像处理和数字图像处理两种方式。英文全称:Image Processing b.数字图像处理与什么领域的发展密切相关? 数字图像处理与数字计算机的发展,医学,遥感,通信,文档处理和工业自动化等许多领域的发展密切相关。 c.人类主要通过什么来感知获取信息的? 主要通过人的视觉、味觉、嗅觉、触觉、听觉以及激光、量子通信、现代计算机网络、卫星通信、遥感技术、数码摄影、摄像等来获取信息。 d.数字图像处理技术与哪些学科领域密切相关? 与数学、物理学、生理学、心理学、电子学、计算机科学等学科密切相关 e.数字图像处理在哪些领域得到广泛应用? 数字图像处理的应用越来越广泛,已渗透到工程、工业、医疗保健、航空航天、军事、科研、安全保卫等各个领域。 f.数字图像处理起源于什么年代? 20世纪20年代 g.现代大规模的图像处理需要具备哪些计算机能力? 需要具备图像处理、图像分析、图像理解计算机能力 h.根据人的视觉特点,图像可分为哪两种图像? 分为可见图像和不可见图像。 i.根据光的波段,图像可分为哪几种图像? 分为单波段、多波段和超波段图像。 j.图像数字与模拟图像的本质区别是什么? 区别: 模拟图像:空间坐标和明暗程度都是连续变化的、计算机无法直接处理。 数字图像:空间的坐标和灰度都不连续、用离散的数字表示,能被计算机处理。 2.通过互联网,查下数字图像处理有哪些应用?选一个应用范例即可。具体描绘如何通过数字图像处理技术来实现其应用。要有图像范例说明。 数字图像处理主要应用领域有:生物医学,遥感领域,工业方面,军事公安领域,通信领域,交通领域等。我就生物医学领域做一个简单介绍。 自伦琴1895年发现X射线以来,在医学领域可以用图像的形式揭示更多有用的医学信息医学的诊断方式也发生了巨大的变化。随着科学技术的不断发展,现代医学已越来越离不开医学图像的信息处理,医学图像在临床诊断、教学科研等方面有重要的作用。目前的医学图像主要包括CT (计算机断层扫描) 图像、MRI( 核磁共振)图像、B超扫描图像、数字X 光机图像、X 射线透视图像、各种电子内窥镜图像、显微镜下病理切片图像等。 医学图像处理跨计算机、数学、图形学、医学等多学科研究领域,医学图像处理技术包括图像变换、图像压缩、图像增强、图像平滑、边缘锐化、图像分割、图像识别、图像融合等等。在此联系数字图像处理的相关理论知识和步骤设计规划系统采集和处理的具体流程同时充分考虑到图像采集设备的拍摄效果以及最终处理结果的准确性。下面是关于人体微血管显微图像的采集实例。

数字图像处理实验

《数字图像处理》 实验报告 学院:信息工程学院 专业:电子信息工程 学号: 姓名: 2015年6月18日

目录 实验一图像的读取、存储和显示 (2) 实验二图像直方图分析 (6) 实验三图像的滤波及增强 (15) 实验四噪声图像的复原 (19) 实验五图像的分割与边缘提取 (23) 附录1MATLAB简介 (27)

实验一图像的读取、存储和显示 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格式图像。 2.熟练掌握在MATLAB中如何读取图像。 3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。 4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。 5.图像的显示。 二、实验原理 一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。图像关于x和y坐标以及振幅连续。要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。将坐标值数字化成为取样;将振幅数字化成为量化。采样和量化的过程如图1所示。因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。 三、实验设备 (1) PC计算机 (2) MatLab软件/语言包括图像处理工具箱(Image Processing Toolbox) (3) 实验所需要的图片 四、实验内容及步骤 1.利用imread( )函数读取一幅图像,假设其名为flower.tif,存入一个数组中; 2.利用whos 命令提取该读入图像flower.tif的基本信息; 3.利用imshow()函数来显示这幅图像; 4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息; 5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件设为flower.jpg语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。 6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flower.bmp。 7.用imread()读入图像:Lenna.jpg 和camema.jpg; 8.用imfinfo()获取图像Lenna.jpg和camema.jpg 的大小;

数字图像处理课程设计报告

课程设计报告书课程名称:数字图像处理 题目:数字图像处理的傅里叶变换 学生姓名: 专业:计算机科学与技术 班别:计科本101班 学号: 指导老师: 日期: 2013 年 06 月 20 日

数字图像处理的傅里叶变换 1.课程设计目的和意义 (1)了解图像变换的意义和手段 (2)熟悉傅里叶变换的基本性质 (3)热练掌握FFT的方法反应用 (4)通过本实验掌握利用MATLAB编程实现数字图像的傅里叶变换 通过本次课程设计,掌握如何学习一门语言,如何进行资料查阅搜集,如何自己解决问题等方法,养成良好的学习习惯。扩展理论知识,培养综合设计能力。 2.课程设计内容 (1)熟悉并掌握傅立叶变换 (2)了解傅立叶变换在图像处理中的应用 (3)通过实验了解二维频谱的分布特点 (4)用MATLAB实现傅立叶变换仿真 3.课程设计背景与基本原理 傅里叶变换是可分离和正交变换中的一个特例,对图像的傅里叶变换将图像从图像空间变换到频率空间,从而可利用傅里叶频谱特性进行图像处理。从20世纪60年代傅里叶变换的快速算法提出来以后,傅里叶变换在信号处理和图像处理中都得到了广泛的使用。 3.1课程设计背景 数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。 3.2 傅里叶变换 (1)应用傅里叶变换进行数字图像处理 数字图像处理(digital image processing)是用计算机对图像信息进行处理的一门技术,使利用计算机对图像进行各种处理的技术和方法。 20世纪20年代,图像处理首次得到应用。20世纪60年代中期,随电子计算机的发展得到普遍应用。60年代末,图像处理技术不断完善,逐渐成为一个新兴的学科。利用数字图像处理主要是为了修改图形,改善图像质量,或是从图像中提起有效信息,还有利用数字图像处理可以对图像进行体积压缩,便于传输和保存。数字图像处理主要研究以下内容:傅立叶变换、小波变换等各种图像变换;对图像进行编码和压缩;采用各种方法对图像进行复原和增强;对图像进行分割、描述和识别等。随着技术的发展,数字图像处理主要应用于通讯技术、宇宙探索遥感技术和生物工程等领域。

数字图像处理实验报告

数字图像处理实验 报告 学生姓名:学号: 专业年级: 09级电子信息工程二班

实验一常用MATLAB图像处理命令 一、实验内容 1、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。 实验结果如右图: 代码如下: Subplot (1,3,1) i=imread('E:\数字图像处理\2.jpg') imshow(i) title('RGB') Subplot (1,3,2) j=rgb2gray(i) imshow(j) title('灰度') Subplot (1,3,3) k=im2bw(j,0.5) imshow(k) title('二值') 2、对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题。 实验结果如右图: 代码如下: Subplot (3,2,1) i=imread('E:\数字图像处理 \16.jpg') x=imresize(i,[250,320]) imshow(x) title('原图x') Subplot (3,2,2) j=imread(''E:\数字图像处理 \17.jpg') y=imresize(j,[250,320]) imshow(y) title('原图y') Subplot (3,2,3) z=imadd(x,y) imshow(z)

title('相加结果');Subplot (3,2,4);z=imsubtract(x,y);imshow(z);title('相减结果') Subplot (3,2,5);z=immultiply(x,y);imshow(z);title('相乘结果') Subplot (3,2,6);z=imdivide(x,y);imshow(z);title('相除结果') 3、对一幅图像进行灰度变化,实现图像变亮、变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题。 实验结果如右图: 代码如下: Subplot (2,2,1) i=imread('E:\数字图像处理 \23.jpg') imshow(i) title('原图') Subplot (2,2,2) J = imadjust(i,[],[],3); imshow(J) title('变暗') Subplot (2,2,3) J = imadjust(i,[],[],0.4) imshow(J) title('变亮') Subplot (2,2,4) J=255-i Imshow(J) title('变负') 二、实验总结 分析图像的代数运算结果,分别陈述图像的加、减、乘、除运算可能的应用领域。 解答:图像减运算与图像加运算的原理和用法类似,同样要求两幅图像X、Y的大小类型相同,但是图像减运算imsubtract()有可能导致结果中出现负数,此时系统将负数统一置为零,即为黑色。 乘运算实际上是对两幅原始图像X、Y对应的像素点进行点乘(X.*Y),将结果输出到矩阵Z中,若乘以一个常数,将改变图像的亮度:若常数值大于1,则乘运算后的图像将会变亮;叵常数值小于是,则图像将会会暗。可用来改变图像的灰度级,实现灰度级变换,也可以用来遮住图像的某些部分,其典型应用是用于获得掩膜图像。 除运算操作与乘运算操作互为逆运算,就是对两幅图像的对应像素点进行点(X./Y), imdivide()同样可以通过除以一个常数来改变原始图像的亮度,可用来改变图像的灰度级,其典型运用是比值图像处理。 加法运算的一个重要应用是对同一场景的多幅图像求平均值 减法运算常用于检测变化及运动的物体,图像相减运算又称为图像差分运算,差分运算还可以用于消除图像背景,用于混合图像的分离。

数字图像处理大作业

大作业指导书 题目:数字图像处理 院(系):物联网工程学院 专业: 计算机 班级:计算机1401-1406 指导老师: 学号: 姓名: 设计时间: 2016-2017学年 1学期

摘要 (3) 一、简介 (3) 二、斑点数据模型 .参数估计与解释 (4) 三、水平集框架 (5) 1.能量泛函映射 (5) 2.水平集传播模型 (6) 3.随机评估方法 (7) 四、实验结果 (8) 五、总结 (11)

基于水平集方法和G0模型的SAR图像分割 Abstract(摘要) 这篇文章提出了一种分割SAR图像的方法,探索利用SAR数据中的统计特性将图像分区域。我们假设为SAR图像分割分配参数,并与水平集模型相结合。分布属于G分布中的一种,处于数据建模的目的,它们已经成功的被用于振幅SAR图像中不同区域的建模。这种统计数据模型是驱动能量泛函执行区域映射的基础,被引用到水平集传播数值方案中,将SAR 图像分为均匀、异构和极其异构区域。此外,我们引入了一个基于随机距离和模型的评估过程,用于量化我们方法的鲁棒性和准确性。实验结果表明,我们的算法对合成和真实SAR 数据都具有准确性。+ 简介 1、Induction(简介) 合成孔径雷达系统是一种成像装置,采用相干照明比如激光和超声波,并会受到斑点噪声的影响。在SAR图像处理过程中,返回的是斑点噪声和雷达切面建模在一起的结果。这个积性模型(文献[1])因包含大量的真实SAR数据,并且在获取过程中斑点噪声被建模为固有的一部分而被广泛应用。因此,SAR图像应用区域边界和目标检测变得更加困难,可能需要斑点去除。因此,斑点去除是必需的,有效的方法可以在文献[2][3][4][5][6][7][8][9][10]中找到。 对于SAR图像分割,水平集方法构成一类基于哈密顿-雅克比公式的重要算法。水平集方法允许有效的分割标准公式,从文献[12]中讨论的传播函数项可以得到。经典方法有着昂贵的计算成本,但现在的水平集的实现配置了有趣的低成本的替换。 水平集方法的一个重要方面,比如传播模型,可以用来设计SAR图像的分割算法。这个传播函数能够依据伽马和伽马平方根法则将斑点统计进行整合,函数已经被广泛地应用于SAR图像中的均质区域分割。Ayed等基于伽马分布任意建模,设计方案将SAR图像分成多个均质区域。尽管多区分割问题已经解决,该方案人需要一定数量的区域作为输入。Shuai 和Sun在文献[16]中提出对这个方法进行了改进,他们使用了一个有效的传播前收敛判断。Marques等引入了一个类似于含有斑点噪声图像中目标检测的框架,将基于本地区域的斑点噪声统计融合进去。这些作者采用伽马平方根对均质区域进行建模并用一个自适应窗口方案检测本地的同质性。 最近,新的SAR数据模型比如K,G,显示出了优势。经典法则受限于均质区域特性的描述,而最近的法则展现出了在数据建模中更有吸引力的特性。法则允许同构、异构和高度异构幅度SAR数据的建模。这个分布族提供了一组参数,可以描述SAR图像中的不同区域。分布的参数信息,可以被广泛的应用于设计SAR图像处理和分类技术。在文献[21]中,Mejail 等人介绍了SAR监督数据分类器,它基于其参数映射并实现了有趣的结果。Gambini等人在文献[22]中使用这个分布的一个参数来量化SAR数据的粗糙度,通过活动轮廓和B样条差值来检测边缘。然而,这种技术需要一个初始分割步骤,并受拓扑限制。一般来说,活动轮廓方法不能解决不连续区域分割的问题。 本文介绍了一种新的水平集算法来实现SAR图像中均质、异构和极其异构区域分割的目标。由于分布能够描述SAR图像的同质性和规模,我们的方法采用分布对斑点数据进行建模。这些分布参数基于每一个域点进行估计,通过这些信息,我们可以在水平集分割框架内得到一个能量泛函来驱动向前传播(front propagation)。该泛函以最大化不同区域平均能量间的差异作为结束。最终水平集阶段以能量带作为依据得到SAR图像的分割结果。

相关主题
文本预览
相关文档 最新文档