文档视界 最新最全的文档下载
当前位置:文档视界 › 数字图像处理实验报告92184

数字图像处理实验报告92184

数字图像处理实验报告92184
数字图像处理实验报告92184

数字图像处理试验报告

实验二:数字图像的空间滤波和频域滤波

姓名: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=fspecial('average',3);

I1=filter2(h,img2)/255;

I2=medfilt2(img2,[3 3]);

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

subplot(2,2,2),imshow(img2),title('椒盐噪声图');

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

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

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

G1=filter2(h,img3)/255;

G2=medfilt2(img3,[3 3]);

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

subplot(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’、’c ircular’)进行低通滤波,显示处理后的图像。

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 函数的’ave rage’类型生成均值滤波器)。

代码如下:

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');

实验结果:

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);

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)编写函数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]

代码如下:

num=input('please enter any num:');

n=num;

W=ones(n,n);

for i=1:n

for j=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).读出一幅图像,对其进行快速傅立叶变换,分别显示其幅度图像和相位图像。仅对相位部分进行傅立叶反变换后查看结果图像。

实验结果为:

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

实验结果为:

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

代码

f1=fft2(img);

f2=log(1+abs(f1)); f3=fftshift(f1); f4=angle(f1);

代码为:

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');

实验效果:

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

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');

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)

实验结果:

由上图可知,当频带中心宽度相同时,理想低通滤波器为圆柱形图像,二阶巴特沃斯 低通滤波器的面线比较紧凑,高斯滤波图像最为平滑。

(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

- 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');

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

数字图像处理课程心得

数字图像处理课程心得 本学期,我有幸学习了数字图像处理这门课程,这也是我大学学习中的最后一门课程,因此这门课有着特殊的意义。人类传递信息的主要媒介是语音和图像。据统计,在人类接受的信息中,听觉信息占20%,视觉信息占60%,其它如味觉、触觉、嗅觉信息总的加起来不过占20%。可见图像信息是十分重要的。通过十二周的努力学习,我深刻认识到数字图像处理对于我的专业能力提升有着比较重要的作用,我们可以运用Matlab对图像信息进行加工,从而满足了我们的心理、视觉或者应用的需求,达到所需图像效果。 数字图像处理起源于20世纪20年代,当时通过海底电缆从英国伦敦到美国纽约采用数字压缩技术传输了第一幅数字照片。此后,由于遥感等领域的应用,使得图像处理技术逐步受到关注并得到了相应的发展。第三代计算机问世后,数字图像处理便开始迅速发展并得到普遍应用。由于CT的发明、应用及获得了备受科技界瞩目的诺贝尔奖,使得数字图像处理技术大放异彩。目前数字图像处理科学已成为工程学、计算机科学、信息科学、统计学、物理、化学、生物学、医学甚至社会科学等领域中各学科之间学习和研究的对象。随着信息高速公路、数字地球概念的提出以及Internet的广泛应用,数字图像处理技术的需求与日俱增。其中,图像信息以其信息量大、传输速度快、作用距离远等一系列优点成为人类获取信息的重要来源及利用信息的重要手段,因此图像处理科学与技术逐步向其他学科领域渗透并为其它学科所利用是必然的。 数字图像处理是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。数字图像处理的产生和迅速发展主要受三个因素的影响:一是计算机的发展;二是数学的发展(特别是离散数学理论的创立和完善);三是广泛的农牧业、林业、环境、军事、工业和医学等方面的应用需求的增长。图像处理科学是一门与国计民生紧密相联的应用科学,它给人类带来了巨大的经济和社会效益,不久的将来它不仅在理论上会有更深入的发展,在应用上亦是科学研究、社会生产乃至人类生活中不可缺少的强有力的工具。它的发展及应用与我国的现代化建设联系之密切、影响之深远是不可估量的。在信息社会中,数字图象处理科学无论是在理论上还是在实践中都存在着巨大的潜力。近几十年,数字图像处理技术在数字信号处理技术和计算机技术发展的推动下得到了飞速的发展,正逐渐成为其他科学技术领域中不可缺少的一项重要工具。数字图像处理的应用领域越来越广泛,从空间探索到微观研究,从军事领域到工农业生产,从科学教育到娱乐游戏,越来越多的领域用到了数字图像处理技术。 虽然通过一学期的课程学习我们还没有完全掌握数字图像处理技术,但也收获了不少,对于数字图像处理方面的知识有了比较深入的了解,当然也更加理解了数字图像的本质,即是一些数字矩阵,但灰度图像和彩色图像的矩阵形式是不同的。对于一些耳熟能详的数字图像相关术语有了明确的认识,比如常见的:像素(衡量图像的大小)、分辨率(衡量图像的清晰程度)、位图(放大后会失真)、矢量图(经过放大不会失真)等大家都能叫上口却知识模糊的名词。也了解图像处理技术中一些常用处理技术的实质,比如锐化处理是使模糊的图像变清晰,增强图像的边缘等细节。而平滑处理是的目的是消除噪声,模糊图像,在提取大目标之前去除小的细节或弥合目标间的缝隙。对常提的RGB图像和灰度图像有了明确的理解,这对大家以后应用Photoshop等图像处理软件对图像进行处理打下了

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 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) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

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

数字图像处理 课程设计报告 姓名: 学号: 班级: 设计题目:图像处理 教师:赵哲老师 提交日期: 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)

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

数字图像处理 实验报告 学号: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

数字图像处理实验 实验二

实验二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

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

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彩色空间

上数字图像处理技术的心得

上数字图像处理技术的心得我一直对PS挺感兴趣的,虽然我去图书馆借了许多书,可是有很多地方解释不清楚也没有素材,我都快崩溃了。单我发现这门课立即就报了它。我的最初目的不是要去学数字图像处理技术,而是冲着学photoshop去的。 刚开始上第一节课时,老师您并没有讲PS,而是讲一些关于数字图像处理技术的原理知识。我本以为我可能不会喜欢这种类型的课。但是出于一个理科生的本能反应,我挺喜欢这些内容。我发觉我的几个选修都正好符合我的兴趣爱好。我第一次接触数字图像处理技术,才知道图像的原理竟然一些数字矩阵。不愧叫数字图像处理技术。 但老师开始讲PS的时候,我自然是更加高兴了。因为这是我主要的学习目的。图像处理技术只是碰巧撞上。说实话,我对PS上的一些工具及使用方法还不是很了解。老师能从基本知识讲起正和我心意。虽然有很多我以前都会了。 我现在来讲讲我从在这门选修课中学到最主要的两项知识。 其一就是老师最希望我们了解的数字图像处理技术。我们现在都知道一张像数码相机照出来的照片(数字图像)是由一大堆数字矩阵组成。黑白与彩色图像的矩阵又有一些不同。老师用北京邮电大学的那个软件给我们演示一下PS里面的图像处理原理是怎样形成的。比如模糊,锐化等等。还有很多的图像处理通过PS来说明解释。后面主要就是介绍压缩技术。当然也涉及到一些视频音频的压缩。图像

压缩老师您也介绍了很多不同的方法。可我想不起来了,但是起码我们知道了它的压缩原理。知道原图像与压缩后所占存储量的巨大差异。我在这里也和老师一样用画图做一个。有一点失真,这就是有损压缩。 另外那个无损压缩从视觉上是抗不出来的,就不用做了。 其二,就是在photosop的操作上。老师您举了许许多多的操作例子来提高我们对数字图像处理技术的兴趣,尤其是在图层和滤镜的学习,我都学到很多在书上看不懂的方法技能。下面我也简简单单做一张,就当做是作业来完成吧! 如下三张图:通过第一张图中草地,山与第二张的天空合成第三张图。

数字图像处理实验报告

数字图像处理试验报告 实验二:数字图像的空间滤波和频域滤波 姓名: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大小的拉普拉斯算子对

数字图像处理实验

《数字图像处理》 实验报告 学院:信息工程学院 专业:电子信息工程 学号: 姓名: 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 的大小;

武汉大学数字图像处理课程综合实习实习报告

数字图像处理课程综合实习 实习报告 学院 班级 学号 姓名 日期 指导教师

一、实习目的和意义 本实习内容旨在让同学们通过用VC等高级语言编写数字图像处理的一些基本算法程序,来巩固和掌握图像处理技术的基本技能,提高实际动手能力,并通过实际编程了解图像处理软件的实现的基本原理。为学生进一步学习数字摄影测量、遥感和地理信息系统等专业课程以及应用图像处理解决实际问题奠定基础。 二、实习原理和方法 实习一实现RAW->BMP格式的转换 RAW格式:文件按照数字图像组成的二维矩阵,将像素按行列号顺序存储在文件中。这种文件只含有图像像素数据,不含有信息头,因此,在读图像时,需要根据文件大小,计算图像所包含的行列号,或者需要事先知道图像大小(矩阵大小)。但这种文件读取和保存简单。 RAW文件按图像上行到下行、左列到右列顺序存储,而BMP文件数据区按图像上下行到上行、左列列到右列顺序存储到数据区。 实现RAW文件到BMP文件的转换,需要为BMP文件生成文件头、信息头、颜色表、数据区,将RAW文件数据区赋值到BMP文件数据区。 实习二灰度线性变换 点运算是指像素值(即像素点上的灰度值)通过运算改变之后,可以改善图象的显示效果。这是一种像素的逐点运算,是旧图象与新图象之间的映射关系,是一种简单但却十分有效的一种图象处理手段。常用方法有灰度线性变换、直方图均衡、对比度调整、直方图规定化、对数变换、指数变换、密度分割等方法。 灰度的线性变换就是指图像的中所有点的灰度按照线性灰度变换函数进行变换。灰度变换方程如下: D0=f(Di)=a*Di+b 该方程为线性方程。式中参数Di为输入图像的像素的灰度值,参数D0为输出图像的灰度,a和b由给定条件确定。 实习三图像局部处理:高通滤波和低通滤波

数字图像处理实验报告

数字图像处理实验 报告 学生姓名:学号: 专业年级: 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()同样可以通过除以一个常数来改变原始图像的亮度,可用来改变图像的灰度级,其典型运用是比值图像处理。 加法运算的一个重要应用是对同一场景的多幅图像求平均值 减法运算常用于检测变化及运动的物体,图像相减运算又称为图像差分运算,差分运算还可以用于消除图像背景,用于混合图像的分离。

数字图像处理实验一

数字图像处理—实验一 一.实验内容: 图像灰度变换 二.实验目的: 学会用Matlab软件对图像灰度进行变换;感受各种不同的灰度变换方法对最终图像效果的影响。 三.实验步骤: 1.获取实验用图像:rice.jpg. 使用imread函数将图像读入Matlab。 程序: clc;clear; figure; subplot(4,4,1); i = imread('rice.png'); i = im2double(i); imshow(i);title('1'); 2.产生灰度变换函数T1,使得: 0.3r r < 0.35 s = 0.105 + 2.6333(r – 0.35) 0.35 ≤r ≤0.65

1 + 0.3(r – 1) r > 0.65 用T1对原图像rice.jpg进行处理,使用imwrite函数保存处理后的新图像。程序: subplot(4,4,2); r=[0:0.001:1]; s=[r<0.35].*r*0.3+[r<=0.65].*[r>=0.35].*(0.105+2.6333*(r-0.35))+[r>0.65].*(1 +0.3*(r-1)); plot(r,s);title('2p'); subplot(4,4,3); T1=[i<0.35].*i*0.3+[i<=0.65].*[i>=0.35].*(0.105+2.6333*(i-0.35))+[i>0.65].*( 1+0.3*(i-1)); imshow(T1);title('2i'); imwrite(T1,'rice_T1.jpg','jpg');

3.产生灰度变换函数T2,使得: 用T2对原图像rice.jpg进行处理,使用imwrite保存处理后的新图像。 %3 subplot(4,4,4); r = [0:0.001:1];

数字图像处理心得体会

《数字图像处理》心得体会 图像处理是指对图像信息进行加工,从而满足人类的心理、视觉或者应用的需求的一种行为。图像处理方法一般有数字法和光学法两种,其中数字法的优势很明显,已经被应用到了很多领域中,相信随着科学技术的发展,其应用空间将会更加广泛。数字图像处理又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。数字图像处理是从20世纪60年代以来随着计算机技术和VLSL的发展而产生、发展和不断成熟起来的一个新兴技术领域。数字图像处理技术其实就是利用各种数字硬件与计算机,对图像信息通过转换而得到的电信号进行相应的数学运算,例如图像去噪、图像分割、提取特征、图像增强、图像复原等,以便提高图像的实用性。其特点是处理精度比较高,并且能够对处理软件进行改进来优化处理效果,操作比较方便,但是由于数字图像需要处理的数据量一般很大,因此处理速度有待提高。 由于数字图像处理的方便性和灵活性,因此数字图像处理技术已经成为了图像处理领域中的主流。数字图像处理技术主要涉及到的关键技术有:图像的采集与数字化、图像的编码、图像的增强、图像恢复、图像分割、图像分析等。? 图像的采集与数字化:就是通过量化和取样将一个自然图像转换为计算机能够处理的数字形式。? 图像编码:图像编码的目的主要是来压缩图像的信息量,以便能够满足存储和传输的要求。? 图像的增强:图像的增强其主要目的是使图像变得清晰或者将其变换为机器能够很容易分析的形式,图像增强方法一般有:直方图处理、灰度等级、伪彩色处理、边缘锐化、干扰抵制。?

图像的恢复:图像恢复的目的是减少或除去在获得图像的过程中因为各种原因而产生的退化,可能是由于光学系统的离焦或像差、被摄物与摄像系统两者之间的相对运动、光学或电子系统的噪声与介于被摄像物跟摄像系统之间的大气湍流等等。? 图像的分割:图像分割是将图像划分为一些互相不重叠的区域,其中每一个区域都是像素的一个连续集,通常采用区域法或者寻求区域边界的境界法。? 图像分析:图像分析是指从图像中抽取某些有用的信息、数据或度量,其目的主要是想得到某种数值结果。图像分析的内容跟人工智能、模式识别的研究领域有一定的交叉。? 数字图像处理的特点主要表现在以下几个方面:? 1)?数字图像处理的信息大多是二维信息,处理信息量很大。因此对计算机的计算速度、存储容量等要求较高。? 2)?数字图像处理占用的频带较宽。与语言信息相比,占用的频带要大几个数量级。所以在成像、传输、存储、处理、显示等各个环节的实现上技术难度较大,成本亦高。这就对频带压缩技术提出了更高的要求。? 3)?数字图像中各个像素不是独立的,其相关性大。在图像画面上,经常有很多像素有相同或接近的灰度。所以,图像处理中信息压缩的潜力很大。?图像受人的因素影响较大,因为图像一般是给人观察和评价的。? 数字图像处理的优点主要表现在4个方面。? 1)?再现性好。数字图像处理与模拟图像处理的根本不同在于它不会因图像的存储、传输或复制等一系列变换操作而导致图像质量的退化。只要图像在数字化时准确地表现了原稿,那么数字图像处理过程始终能保持图像的再现。? 2)?处理精度高。将一幅模拟图像数字化为任意大小的二维数组,主要取决于

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

二○一四~二○一五学年第一学期电子信息工程系 实验报告书 班级:电子信息工程(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);

数字图像处理实验报告

目录 实验一:数字图像的基本处理操作 (4) :实验目的 (4) :实验任务和要求 (4) :实验步骤和结果 (5) :结果分析 (8) 实验二:图像的灰度变换和直方图变换 (9) :实验目的 (9) :实验任务和要求 (9) :实验步骤和结果 (9) :结果分析 (13) 实验三:图像的平滑处理 (14) :实验目的 (14) :实验任务和要求 (14) :实验步骤和结果 (14) :结果分析 (18) 实验四:图像的锐化处理 (19) :实验目的 (19) :实验任务和要求 (19) :实验步骤和结果 (19) :结果分析 (21)

实验一:数字图像的基本处理操作 :实验目的 1、熟悉并掌握MATLAB、PHOTOSHOP等工具的使用; 2、实现图像的读取、显示、代数运算和简单变换。 3、熟悉及掌握图像的傅里叶变换原理及性质,实现图像的傅里叶变换。:实验任务和要求 1.读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分 成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。 2.对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分 别显示,注上文字标题。 3.对一幅图像进行平移,显示原始图像与处理后图像,分别对其进行傅里叶变换, 显示变换后结果,分析原图的傅里叶谱与平移后傅里叶频谱的对应关系。 4.对一幅图像进行旋转,显示原始图像与处理后图像,分别对其进行傅里 叶变换,显示变换后结果,分析原图的傅里叶谱与旋转后傅里叶频谱的 对应关系。 :实验步骤和结果 1.对实验任务1的实现代码如下: a=imread('d:\'); i=rgb2gray(a); I=im2bw(a,; subplot(1,3,1);imshow(a);title('原图像'); subplot(1,3,2);imshow(i);title('灰度图像'); subplot(1,3,3);imshow(I);title('二值图像'); subplot(1,3,1);imshow(a);title('原图像'); 结果如图所示:

《数字图像处理》课程学习心得

《数字图像处理》课程学习心得 导读:本文《数字图像处理》课程学习心得,仅供参考,如果能帮助到您,欢迎点评和分享。 《数字图像处理》课程学习心得(一) 在这一学期,我选修了《数字图像处理基础》这门课程,同时,老师还讲授了一些视频处理的知识。在这里,梳理一下这学期学到的知识,并提出一些我对这门课程的建议。 图像处理是指对图像信息进行加工,从而满足人类的心理、视觉或者应用的需求的一种行为。图像处理方法一般有数字法和光学法两种,其中数字法的优势很明显,已经被应用到了很多领域中,相信随着科学技术的发展,其应用空间将会更加广泛。数字图像处理又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。数字图像处理是从20世纪60年代以来随着计算机技术和VLSL的发展而产生、发展和不断成熟起来的一个新兴技术领域。数字图像处理技术其实就是利用各种数字硬件与计算机,对图像信息通过转换而得到的电信号进行相应的数学运算,例如图像去噪、图像分割、提取特征、图像增强、图像复原等,以便提高图像的实用性。其特点是处理精度比较高,并且能够对处理软件进行改进来优化处理效果,操作比较方便,但是由于数字图像需要处理的数据量一般很大,因此处理速度有待提高。目前,随着计算机技术的不断发展,计算机的运算速度得到了很大程度的提高。在短短的历史中,它

却广泛应用于几乎所有与成像有关的领域,在理论上和实际应用上都取得了巨大的成就。 1、数字图像处理需用到的关键技术 由于数字图像处理的方便性和灵活性,因此数字图像处理技术已经成为了图像处理领域中的主流。数字图像处理技术主要涉及到的关键技术有:图像的采集与数字化、图像的编码、图像的增强、图像恢复、图像分割、图像分析等。 图像的采集与数字化:就是通过量化和取样将一个自然图像转换为计算机能够处理的数字形式。 图像编码:图像编码的目的主要是来压缩图像的信息量,以便能够满足存储和传输的要求。 图像的增强:图像的增强其主要目的是使图像变得清晰或者将其变换为机器能够很容易分析的形式,图像增强方法一般有:直方图处理、灰度等级、伪彩色处理、边缘锐化、干扰抵制。 图像的恢复:图像恢复的目的是减少或除去在获得图像的过程中因为各种原因而产生的退化,可能是由于光学系统的离焦或像差、被摄物与摄像系统两者之间的相对运动、光学或电子系统的噪声与介于被摄像物跟摄像系统之间的大气湍流等等。 图像的分割:图像分割是将图像划分为一些互相不重叠的区域,其中每一个区域都是像素的一个连续集,通常采用区域法或者寻求区域边界的境界法。 图像分析:图像分析是指从图像中抽取某些有用的信息、数据或

相关文档
相关文档 最新文档