数字图像处理期末复习资料全Word格式.docx

上传人:b****6 文档编号:20923951 上传时间:2023-01-26 格式:DOCX 页数:17 大小:72.61KB
下载 相关 举报
数字图像处理期末复习资料全Word格式.docx_第1页
第1页 / 共17页
数字图像处理期末复习资料全Word格式.docx_第2页
第2页 / 共17页
数字图像处理期末复习资料全Word格式.docx_第3页
第3页 / 共17页
数字图像处理期末复习资料全Word格式.docx_第4页
第4页 / 共17页
数字图像处理期末复习资料全Word格式.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

数字图像处理期末复习资料全Word格式.docx

《数字图像处理期末复习资料全Word格式.docx》由会员分享,可在线阅读,更多相关《数字图像处理期末复习资料全Word格式.docx(17页珍藏版)》请在冰豆网上搜索。

数字图像处理期末复习资料全Word格式.docx

delY=50;

%平移量Y

mask=[10delX;

01delY;

001];

%平移的变换矩阵

fori=1:

m

forj=1:

n

tmp=[i;

j;

1];

tmp=mask*tmp;

%矩阵乘法得到的结果是一个3行1列的数

x=tmp(1,1);

y=tmp(2,1);

%判断变换后的位置是否越界

if(x<

=m)&

&

(y<

=n)&

(x>

=1)&

(y>

=1)

res(x,y)=Im(i,j);

end

subplot(1,2,2);

imshow(res);

平移后的图像'

空域内对图像进行镜像运算(几何运算)

%灰度图像

clc

clear

img=imread('

%读取图像

ifndims(img)==3%ndims(a)表示矩阵a的维数。

如果是彩色图像就转换为灰度图像

img=rgb2gray(img);

%转换

subplot(1,3,1);

imshow(img);

原始图像'

img=im2double(img);

%转换为double类型,使所有点在0-1之间

[m,n]=size(img);

%获取图像大小

res1=zeros(m,n)+255;

%构造结果矩阵,加255将图像初始化为白色,不加就是黑色

res2=zeros(m,n)+255;

res1(i,n-j+1)=img(i,j);

%水平镜像

res2(m-i+1,j)=img(i,j);

%垂直镜像

subplot(1,3,2);

imshow(res1);

水平镜像'

subplot(1,3,3);

imshow(res2);

垂直镜像'

imwrite(res1,'

hor.bmp'

imwrite(res2,'

ver.bmp'

%彩色图像

[m,n,l]=size(img);

res1=zeros(m,n,l)+255;

res2=zeros(m,n,l)+255;

fork=1:

l

res1(i,n-j+1,k)=img(i,j,k);

res2(m-i+1,j,k)=img(i,j,k);

空域内使用指定的模板对灰度图像进行平滑处理

[1]%均值滤波

ifnumel(size(img))>

figure;

imshow(img);

img=double(img);

%n是模板大小(即n×

n)

n=3;

a(1:

n,1:

n)=1;

%a即n×

n模板,元素全是1

[height,width]=size(img);

%输入图像是[height,width]的,且hight>

n,width>

n

x1=double(img);

x2=x1;

height-n+1

width-n+1

c=x1(i:

i+(n-1),j:

j+(n-1)).*a;

%取出x1中从(i,j)开始的n行n列元素与模板相乘

s=sum(sum(c));

%求c矩阵中各元素之和

x2(i+(n-1)/2,j+(n-1)/2)=s/(n*n);

%将与模板运算后的各元素的均值赋给模板中心位置的元素

end

end

%未被赋值的元素取原值

pha=uint8(x2);

imshow(pha);

[2]%中值滤波(最大值滤波、最小值滤波)

i+(n-1),j:

j+(n-1));

%取出x1中从(i,j)开始的n行n列元素,即模板(n×

n的)

e=c(1,:

%是c矩阵的第一行

foru=2:

n

e=[e,c(u,:

)];

%将c矩阵变为一个行矩阵

%mm=median(e);

%mm是中值(mm=max(e)是最大值,mm=min(e)是最小值)

mm=min(e);

x2(i+(n-1)/2,j+(n-1)/2)=mm;

%将模板各元素的中值赋给模板中心位置的元素

彩色图像平滑处理(均值滤波)

if(numel(size(img))<

3)

disp('

请输入彩色图像'

else

subplot(2,3,1);

img=imnoise(img,'

gaussian'

%g=imnoise(f,‘gaussian’,m,var)是将均值为m,方差为var的高斯噪声加到图像f上。

m的默认值是0、var默认值是0.01

subplot(2,3,2);

添加噪声后的图像'

%分解

img=double(img);

R=img(:

:

1);

G=img(:

2);

B=img(:

3);

%对彩色图像的R分量进行平滑处理,而其它分量保持不变

[m,n]=size(R);

fori=2:

m-1

forj=2:

n-1

R(i,j)=(R(i-1,j-1)+R(i-1,j)+R(i-1,j+1)+R(i,j-1)+R(i,j)+R(i,j+1)+R(i+1,j-1)+R(i+1,j)+R(i+1,j+1))/9;

img1=cat(3,R,G,B);

img1=uint8(img1);

subplot(2,3,3);

imshow(img1);

R分量平滑处理后'

%对彩色图像的R分量和G分量进行平滑处理,B分量保持不变

G(i,j)=(G(i-1,j-1)+G(i-1,j)+G(i-1,j+1)+G(i,j-1)+G(i,j)+G(i,j+1)+G(i+1,j-1)+G(i+1,j)+G(i+1,j+1))/9;

img2=cat(3,R,G,B);

img2=uint8(img2);

subplot(2,3,4);

imshow(img2);

对R和G分量进行平滑处理后'

%对彩色图像的3个分量同时进行平滑处理

G(i,j)=(G(i-1,j-1)+G(i-1,j)+G(i-1,j+1)+G(i,j-1)+G(i,j)+G(i,j+1)+G(i+1,j-1)+G(i+1,j)+G(i+1,j+1))/9;

B(i,j)=(B(i-1,j-1)+B(i-1,j)+B(i-1,j+1)+B(i,j-1)+B(i,j)+B(i,j+1)+B(i+1,j-1)+B(i+1,j)+B(i+1,j+1))/9;

img3=cat(3,R,G,B);

img3=uint8(img3);

subplot(2,3,5);

imshow(img3);

对3个分量进行平滑处理后'

空域内对灰度图像或彩色图像进行模板卷积运算及增强处理

[1]模板:

%[FileName,FilePath]=uigetfile('

*.jpg;

*.png;

*.tif;

*.img;

*.gif;

'

'

请选择图像数据'

%str=[FilePathFileName];

dimg=img;

%边界

fori=2:

m-1%非边界

dimg(i,j)=(img(i+1,j)+img(i-1,j)+img(i,j+1)+img(i,j-1))/4;

imshow(dimg);

模板运算后的图像'

imshow(img+dimg);

增强的图像'

[2]模板:

a=input('

请输入a值(范围在[0,1]之间):

%边界

m-1%非边界

dimg(i,j)=img(i-1,j)*(-a)+img(i,j-1)*(-a)+img(i,j)*(1+4*a)+img(i,j+1)*(-a)+img(i+1,j)*(-a);

[3]模板:

fori=3:

m-2%%处理非边界像素

forj=3:

n-2

dimg(i,j)=img(i-2,j-2)+img(i-2,j-1)*4+img(i-2,j)*7+img(i-2,j+1)*4+img(i-2,j+2)+img(i-1,j-2)*4+img(i-1,j-1)*16+img(i-1,j)*26+img(i-1,j+1)*16+img(i-1,j+2)*4+img(i,j-2)*7+img(i,j-1)*26+img(i,j)*41+img(i,j+1)*26+img(i,j+2)*7+img(i+1,j-2)*4+img(i+1,j-1)*16+img(i+1,j)*26+img(i+1,j+1)*16+img(i+1,j+2)*4+img(i+2,j-2)+img(i+2,j-1)*4+img(i+2,j)*7+img(i+2,j+1)*4+img(i+2,j+2);

imshow(img+dimg/273);

拉普拉斯模板、锐化算子(P65)

[4]彩色图像拉普拉斯模板

subplot(2,2,1);

img=im2double(img);

%对R分量使用基本的Laplacian模板(P65)进行增强处理;

R1=R+R0

R1=R;

R1(i,j)=R(i,j)*(-4)+R(i-1,j)+R(i+1,j)+R(i,j-1)+R(i,j+1);

R2=R-R1;

%模板中心为负,做减法运算

img1=cat(3,R2,G,B);

subplot(2,2,2);

对R分量处理后'

%对R和G分量使用扩展的Laplacian模板进行增强处理;

G1=G;

R1(i,j)=R(i,j)*(-8)+R(i-1,j)+R(i+1,j)+R(i,j-1)+R(i,j+1)+R(i-1,j-1)+R(i+1,j-1)+R(i-1,j+1)+R(i+1,j+1);

G1(i,j)=G(i,j)*(-8)+G(i-1,j)+G(i+1,j)+G(i,j-1)+G(i,j+1)+G(i-1,j-1)+G(i+1,j-1)+G(i-1,j+1)+G(i+1,j+1);

G2=G-G1;

img2=cat(3,R2,G2,B);

subplot(2,2,3);

对R和G分量处理后'

%使用扩展的Laplacian模板对彩色图像的三个分量进行增强处理

B1=B;

B1(i,j)=B(i,j)*(-8)+B(i-1,j)+B(i+1,j)+B(i,j-1)+B(i,j+1)+B(i-1,j-1)+B(i+1,j-1)+B(i-1,j+1)+B(i+1,j+1);

B2=B-B1;

img3=cat(3,R2,G2,B2);

subplot(2,2,4);

对3个分量处理后'

频域内对图像进行低通处理(理想、Butterworth等)。

6部(P83)

[1]Butterworth滤波:

subplot(221);

xlabel('

原图像'

%数据类型转换

img=fft2(img);

%图像Fourier变换

img=fftshift(img);

%Fourier变换平移,中心变换

%中心变换代码实现,反中心变化也是一样的

%fori=1:

%forj=1:

%img(i,j)=((-1)^(i+j))*img(i,j);

%end

F2=log(abs(img));

%对Fourier变换结果取绝对值,然后取对数

subplot(222);

imshow(F2,[],'

InitialMagnification'

fit'

%将计算后的矩阵用图像表示

xlabel('

(b)原始图像的Fourier变换图像'

[N1,N2]=size(img);

%Fourier变换图像尺寸

n=2;

%参数赋初值。

高通n=0.3

d0=205;

n

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

当前位置:首页 > 经管营销 > 销售营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1