搜档网
当前位置:搜档网 › 数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)

数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)

数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)
数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)

1.灰度变换与空间滤波

一种成熟的医学技术被用于检测电子显微镜生成的某类图像。为简化检测任务,技术决定采用数字图像处理技术。发现了如下问题:(1)明亮且孤立的点是不感兴趣的点;(2)清晰度不够,特别是边缘区域不明显;(3)一些图像的对比度不够;(4)技术人员发现某些关键的信息只在灰度值为I1-I2的范围,因此,技术人员想保留I1-I2区间范围的图像,将其余灰度值显示为黑色。(5)将处理后的I1-I2范围内的图像,线性扩展到0-255灰度,以适应于液晶显示器的显示。请结合本章的数字图像处理处理,帮助技术人员解决这些问题。

1.1问题分析及多种方法提出

(1)明亮且孤立的点是不够感兴趣的点

对于明亮且孤立的点,其应为脉冲且灰度值为255(uint8)噪声,即盐噪声,为此,首先对下载的细胞图像增加盐噪声,再选择不同滤波方式进行滤除。

均值滤波:

均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标像素为中心的周围8个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值。

优点:速度快,实现简单;

缺点:均值滤波本身存在着固有的缺陷,即它不能很好地保护图像细节,在图像去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,不能很好地去除噪声点。

其公式如下:

使用矩阵表示该滤波器则为:

中值滤波:

滤除盐噪声首选的方法应为中值滤波,中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。

其过程为:

a 、存储像素1,像素2.....像素9的值;

b 、对像素值进行排序操作;

c 、像素5的值即为数组排序后的中值。

优点:由于中值滤波本身为一种利用统计排序方法进行的非线性滤波方法,故可以滤除在排列矩阵两边分布的脉冲噪声,并较好的保留图像的细节信息。

缺点:当噪声密度较大时,使用中值滤波后,仍然会有较多的噪声点出现。 自适应中值滤波:

自适应的中值滤波器也需要一个矩形的窗口xy S ,和常规中值滤波器不同的是这个窗口的大小会在滤波处理的过程中进行改变(增大)。需要注意的是,滤波器的输出是一个像素值,该值用来替换点),(y x 处的像素值,点),(y x 是滤波窗口的中心位置。 其涉及到以下几个参数:

其计算过程如下:

常规的中值滤波器,在噪声的密度不是很大的情况下(根据经验,噪声的出现的概率小于0.2),效果不错。但是当概率出现的概率较高时,常规的中值滤波处理后,仍然具有噪声点,并丢失了细节和边缘,效果不是很好。

优点:自适应滤波器不但能够滤除概率较大的椒盐噪声,而且能够更好的保护图像的细节,这是常规的中值滤波器做不到的。

缺点:实现复杂,运行时间长。

(2)图像本身清晰度不够,特别是边缘区域不够明显

对于图像清晰度不够,边缘区域不够明显的情况,应考虑使用图像锐化算法对图像边缘区域进行增强,以强调图像的边缘与细节。

为验证强调图像边缘与细节的最佳算法,我主要运用了拉普拉斯算子,sobel算子,prewitt算子,roberts算子对图像边缘进行了增强。

(3)一些图像的对比度不够

当图片自身对比对不够时,应使用对比度增强的方法对图像进行对比度增

强。

直方图均衡化:

直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。

优点:对于背景和前景都太亮或者太暗的图像非常有用,且计算量不大。缺点:变换后图像的灰度级减少,某些细节消失;某些图像,如直方图有高峰,经处理后对比度不自然的过分增强。

灰度分段线性变换:

分段线性变换函数可以增强原图各部分的反差,即增强输入图像中感兴趣的灰度区域,相对抑制那些不感兴趣的灰度区域。

优点:形式可以任意合成,增强输入图像中感兴趣的灰度区域,相对抑制那些不感兴趣的灰度区域。

缺点:是需要更多的用户输入。

(4)技术人员发现某些关键的信息只在灰度值为I1-I2的范围,因此,技术人员想保留I1-I2区间范围的图像,将其余灰度值显示为黑色。应提取目标区域的灰度值特性,将图像进行二值化,即可保留范围在I1-I2区

间范围的图像,将其余灰度值显示为黑色。

(5)将处理后的I1-I2范围内的图像,线性扩展到0-255灰度,以适应于液晶显示器的显示。

使用灰度线性拉伸的方法,将图像由I1-I2范围内线性扩展到0-255灰度。

1.2处理结果

图1 增加盐噪声的原始细胞图像

在网上下载了一张细胞图像,并对其加了盐噪声,模拟题目中所要求的明亮且孤立的点。

为了验证可滤除明亮且孤立的点的最佳方法,我选取了高斯滤波、均值滤波、中值滤波、自适应中值滤波,并使用MATLAB编写了函数代码(非直接使用MATLAB 自带函数程序),对原始图像进行了处理,处理结果如上图所示。高斯滤波几乎对噪声没有作用,故高斯滤波并不适合去除明亮且孤立的点;使用均值滤波可以使原有噪声变得不那么“明亮”(求了平均值,故白色噪声灰度值减小),但也牺牲了图片本身的清晰度,故均值滤波效果一般;使用中值滤波可以使用矩阵内中值代替灰度值极大或极小的点,大部分孤立且明亮的点均被滤除,故中值滤波处理效果较优,但中值滤波模板大小固定并不利于取得最佳结果(模板太小,不能有效滤除全部噪声;模板太大,运算时间变慢,图像细节信息减少);使用自适应中值滤波可以很好的弥补中值滤波自身的缺点,自适应中值滤波使用噪声敏感度判断所需模板大小,由处理结果可以看出,与中值滤波相比,自适应中值滤波所得结果边界更清晰,图像细节信息更丰富,故自适应中值滤波法对明亮且孤立的点处理效果最优。

图2 采用不同滤波方法滤除明亮孤立的点

图3 原图与直方图均衡化后的直方图

上图为原图像与使用直方图均衡化(64)后的结果,可以看出,直方图均衡化后图像的灰度信息更丰富。

图4 对原图进行对比度增强的结果

、上图为采用直方图均衡化与灰度线性拉伸进行对比度增强的结果。其中,灰

度线性拉伸算法是自己编写的。采用直方图均衡化后,细菌与背景可以很好的分离开,但是背景也因此变得杂乱,不符合人眼的观察习惯,故直方图均衡化对于对比度增强效果一般;采用灰度线性拉伸法时,由于背景灰度值约为230上下,细菌灰度值约为150上下,因此选择以170,230为拐点对原图进行灰度线性拉伸,如图整幅图像的对比度得到了有效提升,且背景干净均匀,与原图像除对比度外无较大差异,故使用灰度线性拉伸法进行对比度增强最优。

图5 使用不同算子对边缘进行增强

图5为使用不同算子对边缘进行增强的结果,由图可以看出,prewitt算子对边缘增强的效果最优。

图6图7分别是二值化的结果与灰度线性扩展的结果。

图6 二值化的结果

图7 线性扩展

clear;

clc;

close all;

%读入一副白细胞图像并将其转为灰度图像

path1='白细胞.jpg';

img=imread(path1);img=rgb2gray(img);

%为图像加上盐噪声,模拟孤立且明亮的点

img=imnoise(img,'salt & pepper',0.1);

[M,N]=size(img);

for i=1:M

for j=1:N

if(img(i,j)==0)

img(i,j)=255;

end

end

end

imshow(img),title('原始细胞图像');

%对图像进行高斯滤波

g_img=guass_filter(img,[3 3],0.2);

figure(2),

imshow(g_img,[]),title('使用高斯滤波进行处理后的结果');

%并未有效滤除图像中孤立明亮的点,说明该算法对盐噪声去除效果差%对图像进行均值滤波

a_img=average_filter(img,5);

figure(3),

imshow(a_img),title('使用均值滤波进行处理后的结果');

%虽然有效去除了孤立明亮的点,但图像的清晰度明显下降,不利于后续的图像分割或者边缘提取等操作

%对图像进行中值滤波

m_img=median_filter(img,5);

figure(4),

imshow(m_img),title('使用中值滤波进行处理后的结果');%对图像进行自适应中值滤波

ad_img=adp_median(img,19);

figure(5),

imshow(ad_img),title('使用自适应中值滤波进行处理后的结果');

========================================================= average_filter.m

function [ img ] = average_filter( image, m )

%----------------------------------------------

%作者:

%日期:2018.5.29

%均值滤波

%输入:

%image:原图

%m:模板的大小3*3的模板,m=3

%输出:

%img:均值滤波处理后的图像

%All rights reserved~

%----------------------------------------------

if(rem(m,2)==0)

error('parameter2 must be an odd number!')

end

n = m;

[ height, width ] = size(image);

x1 = double(image);

x2 = x1;

for i = 1: height-n+1

for j = 1:width-n+1

mb = x1( i:(i+n-1), j:(j+n-1) );

mb = mb(:);

mm = mean(mb);

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

end

end

img = uint8(x2);

end

=========================================================gray_ linner.m

function [ img_gl ] = gray_linner( image, fa,fb,ga,gb )

%作者:

%日期:2018.5.29

% fa; 横坐标,即目标灰度区间

% fb;

%

% ga; 纵坐标, 即拉伸后目标灰度区间

% gb;

%All rights reserved~

k1 = ga/fa;

k2 = (gb-ga)/(fb-fa);

k3 = (255-gb)/(255-fb);

%3, 求拉伸后灰度值

[row,col] = size(image);

img_gl= zeros(row,col);%默认g 为double。g = f; g为uint8 for i=1:row

for j=1:col

if(0<=image(i,j) && image(i,j)<=fa)

img_gl(i,j) = k1*image(i,j);

elseif(fa<=image(i,j) && image(i,j)<=fb)

img_gl(i,j) = k2*(image(i,j)-fa)+ga;

else

img_gl(i,j) = k3*(image(i,j)-fb)+gb;

end

end

end

img_gl=uint8(img_gl);

end

%----------------------------------------------

function [img] = guass_filter(image,m,sigma)

%----------------------------------------------

%作者:

%日期:2018.5.29

%高斯滤波

%输入:

%image:原图

%m:高斯滤波器尺寸

%img:均值滤波处理后的图像

%sigma:滤波器的标准差%All rights reserved!

%----------------------------------------------

siz=(m-1)/2;

[x,y]=meshgrid(-siz(2):siz(2),-siz(1):siz(1));

arg= -(x.*x + y.*y)/(2*sigma*sigma);

h=exp(arg);

h(h

sumh = sum(h(:));

if sumh ~= 0

h = h/sumh;

end;

img=uint8(conv2(double(image),double(h),'same')); end%----------------------------------------------

siz=(m-1)/2;

[x,y]=meshgrid(-siz(2):siz(2),-siz(1):siz(1));

arg= -(x.*x + y.*y)/(2*sigma*sigma);

h=exp(arg);

h(h

sumh = sum(h(:));

if sumh ~= 0

h = h/sumh;

end;

img=uint8(conv2(double(image),double(h),'same')); end

function img_bw=im_bw(img,min,max)

%IM_BW:对输入阈值的图像进行二值化处理

%日期:2018.5.28

%img:输入图像

%min:灰度值最小值

%max:灰度值最大值

%All rights reserved~img=double(img);

if(min>max||max>255||min<0)

error('Parameter 3 (<255)must be bigger than parameter 2(>0)!'); end

if(ndims(img)>2)

error('Pleae input the 2-D image!');

end

[M,N]=size(img);

for i=1:M

for j=1:N

if(img(i,j)max)

img(i,j)=0;

end

end

end

img_bw=uint8(img);

end

function [out_img] = sharp_roberts(img)

%SHARP_ROBERTS:使用roberts算子对图像进行锐化处理%作者:

%日期:2018.5.29

%Roberts斜45°方向模板1:

% 0 1 0

% 0 0 -1

%Roberts斜45°方向模板2:

% 0 0 0

% 0 0 -1

% 0 1 0

%delta(x,y)的计算:

% delta(x,y)=(dx^2+dy^2)^1/2

%All rights reserved~

[M,N]=size(img);

img=double(img);

b=zeros(M,N);

c=zeros(M,N);

out_img=img;

for i=1:M-2

for j=1:N-2

b(i+1,j+1)=img(i,j)-img(i+1,j+1); c(i+1,j+1)=img(i,j+1)-img(i+1,j); out_img(i+1,j+1)=sqrt(b(i+1,j+1)^2+c(i+1,j+1)^2)+img(i+1,j+1); end

end

out_img=uint8(out_img);

end

function [out_img] = sharp_sobel(img)

%SHARP_SOBEL:使用sobel算子对图像进行锐化处理

%作者:

%日期:2018.5.29

%Sobel水平方向模板:

% -2 0 2

% -1 0 1

%Sobel竖直方向模板:

% -1 -2 -1

% 0 0 0

% 1 2 1

%delta(x,y)的计算:

% delta(x,y)=(dx^2+dy^2)^1/2

%All rights reserved~

img=double(img);

[M,N]=size(img);

delta=zeros(M,N);

for i=2:M-1

for j=2:N-1

dx=-img(i-1,j-1)-2*img(i-1,j)-img(i-1,j+1)+img(i+1,j-

1)+2*img(i+1,j)+img(i+1,j+1);

dy=-img(i-1,j-1)-2*img(i,j-1)-img(i+1,j-1)+img(i-

1,j+1)+2*img(i,j+1)+img(i+1,j+1);

delta(i,j)=sqrt(dx.^2+dy.^2);

end

end

out_img=uint8(img-delta);

end

========================================================= function [out_img,delta] = sharp_laplace(img,mode)

%SHARP_LAPLACE:使用拉普拉斯算子对图像进行锐化% mode表示选择4连通域模式,或8连通域模式

% 四连通域模板:

% 0 -1 0

% -1 0 -1

% 0 -1 0

% 八连通域模板:

% -1 -1 -1

% -1 8 -1

% -1 -1 -1

%时间:2018.05.29

%作者:

%All rights reserved~

if (mode~=4)&&(mode~=8)

error('Parameter 2 should be 4 or 8!');

end

img=double(img);

[M,N]=size(img);

delta=zeros(M,N);

for i=2:M-1

for j=2:N-1

%4连通域模式

if(mode==4)

delta(i,j)=4*img(i,j)-img(i,j-1)-img(i,j+1)-img(i-1,j)-img(i+1,j); end

%8连通域模式

if(mode==8)

delta(i,j)=8*img(i,j)-img(i-1,j-1)-img(i,j-1)-img(i+1,j-1)-

img(i,j+1)-img(i-1,j)-img(i+1,j)-img(i-1,j+1)-img(i+1,j+1); 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

图像灰度变换实验报告

图像灰度变换报告 一.实验目的 1.学会使用Matlab ; 2.学会用Matlab 软件对图像进行灰度变换,观察采用各种不同灰度变换发法对最终图像效果的影响; 二.实验内容 1.熟悉Matlab 中的一些常用处理函数 读取图像:img=imread('filename'); //支持TIF,JPEG,GIF,BMP,PNG 等文件格式。 显示图像:imshow(img,G); //G 表示显示该图像的灰度级数,如省略则默认为256。 保存图片:imwrite(img,'filename'); //不支持GIF 格式,其他与imread 相同。 亮度变换:imadjust(img,[low_in,high_in],[low_out,high_out]); //将low_in 至high_in 之间的值映射到low_out 至high_out 之 间,low_in 以下及high_in 以上归零。 绘制直方图:imhist(img); 直方图均衡化:histeq(img,newlevel); //newlevel 表示输出图像指定的灰度级数。 2.获取实验用图像:rice.jpg. 使用imread 函数将图像读入Matlab 。 3 .产生灰度变换函数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 函数保存处理后的新图像。 4.产生灰度变换函数T2,使得: s = 5.用T2imwrite 保存处理后的新图像。 6.分别用 s = r 0.6; s = r 0.4; s = r 0.3 对kids.tiff 图像进行处理。为简便起见,使用Matlab 中的imadjust 函数,最后用imwrite 保存处理后的新图像。 7.对circuit.jpg 图像实施反变换(Negative Transformation )。s =1-r; 使

数字图像处理四个实验报告,带有源程序

数字图像处理 实验指导书 学院:通信与电子工程学院 专业:电子信息工程 班级: 学号: 姓名: XX理工大学

实验一 MATLAB数字图像处理初步 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格式图像。 2.熟练掌握在MATLAB中如何读取图像。 3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。 4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。 5.图像间如何转化。 二、实验原理及知识点 1、数字图像的表示和类别 一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。 图像关于x和y坐标以及振幅连续。要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。将坐标值数字化成为取样;将振幅数字化成为量化。采样和量化的过程如图1所示。因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。 作为MATLAB基本数据类型的数值数组本身十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。 图1 图像的采样和量化 根据图像数据矩阵解释方法的不同,MA TLAB把其处理为4类: 亮度图像(Intensity images) 二值图像(Binary images) 索引图像(Indexed images) RGB图像(RGB images)

数字图像处理实验报告

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

数字图像处理实验指导书模板

《数字图像处理》实验指导书 编写: 罗建军 海南大学三亚学院 10月

目录 一、概述 ....................................................................... 错误!未定义书签。 二、建立程序框架 ....................................................... 错误!未定义书签。 三、建立图像类 ........................................................... 错误!未定义书签。 四、定义图像文档实现图像读/写.............................. 错误!未定义书签。 五、实现图像显示 ....................................................... 错误!未定义书签。 六、建立图像处理类................................................... 错误!未定义书签。 七、实现颜色处理功能............................................... 错误!未定义书签。 (一) 亮度处理................................................................. 错误!未定义书签。 (二) 对比度处理............................................................. 错误!未定义书签。 (三) 色阶处理................................................................. 错误!未定义书签。 (四) 伽马变换................................................................. 错误!未定义书签。 (五) 饱和度处理............................................................. 错误!未定义书签。 (六) 色调处理................................................................. 错误!未定义书签。 八、实现几何变换功能............................................... 错误!未定义书签。 (一) 图像缩放................................................................. 错误!未定义书签。 (二) 旋转......................................................................... 错误!未定义书签。 (三) 水平镜像................................................................. 错误!未定义书签。 (四) 垂直镜像................................................................. 错误!未定义书签。 (五) 右转90度................................................................. 错误!未定义书签。 (六) 左转90度................................................................. 错误!未定义书签。 (七) 旋转180度............................................................... 错误!未定义书签。 九、实现平滑锐化功能............................................... 错误!未定义书签。 十、图像处理扩展编程............................................... 错误!未定义书签。

北航卡尔曼滤波课程-捷联惯导静基座初始对准实验

卡尔曼滤波实验报告 捷联惯导静基座初始对准实验 一、实验目的 ①掌握捷联惯导的构成和基本工作原理; ②掌握捷联惯导静基座对准的基本工作原理; ③了解捷联惯导静基座对准时的每个系统状态的可观测性; ④了解双位置对准时系统状态的可观测性的变化。 二、实验原理 选取状态变量为:[]T E N E N U x y x y z X V V δδεεε=ψψψ??,其

中导航坐标系选为东北天坐标系,E V δ为东向速度误差,N V δ为北向速度误差,E ψ为东向姿态误差角,N ψ为北向姿态误差角,U ψ为天向姿态误差角,x ?为东向加速度偏置,y ?为北向加速度偏置,x ε为东向陀螺漂移,y ε为北向陀螺漂移,z ε为天向陀螺漂移。则系统的状态模型为: X AX W =+ (1) 其中, 1112212211 12 1321222331323302sin 000002sin 000000000sin cos 0000sin 000000cos 0000000000000000000000000000000000000000000000000000 0L g C C L g C C L L C C C L C C C L C C C A Ω-? ? ??-Ω????Ω-Ω? ?-Ω????Ω=? ?????? ?????????? ? [00000]E N E N U T V V W W W W W W δδψψψ=,E D V W W δψ 为零均值高斯 白噪声,分别为加速度计误差和陀螺漂移的噪声成分,Ω为地球自转角速度,ij C 为姿态矩 阵n b C 中的元素,L 为当地纬度。 量测量选取两个水平速度误差:[ ]T E N Z V V δδ=,则量测方程为: 10000000000100000000E E N N V X V δηδη???? ??=+???????????? (2) 即Z HX η=+ 其中,H 为量测矩阵,[]T E N ηηη=为量测方程的随机噪声状态矢量,为零均值高 斯白噪声。 要利用基本卡尔曼滤波方程进行状态估计,需要将状态方程和量测方程进行离散化。 系统转移矩阵为: 2323/1111102!3!! n n k k k k k k n T T T I TA A A A n ∞ -----=Φ=++++=∑ (3)

数字图像处理实验 实验二

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

matlab图像处理图像灰度变换直方图变换

附录1 课程实验报告格式 每个实验项目包括:1)设计思路,2)程序代码,3)实验结果,4)实验中出现的问题及解决方法。 实验一:直方图灰度变换 A:读入灰度图像‘debye1.tif’,采用交互式操作,用improfile绘制一条线段的灰度值。 imread('rice.tif'); imshow('rice.tif'),title('rice.tif'); improfile,title('主对角线上灰度值')

B:读入RGB图像‘flowers.tif’,显示所选线段上红、绿、蓝颜色分量的分布imread('flowers.tif'); imshow('flowers.tif'),title('flowers.tif'); improfile,title('主对角线红绿蓝分量') C:图像灰度变化 f=imread('rice.png'); imhist(f,256); %显示其直方图 g1=imadjust(f,[0 1],[1 0]); %灰度转换,实现明暗转换(负片图像) figure,imshow(g1)%将0.5到0.75的灰度级扩展到范围[0 1] g2=imadjust(f,[0.5 0.75],[0 1]); figure,imshow(g2) 图像灰度变换处理实例: g=imread('me.jpg'); imshow(g),title('原始图片'); h=log(1+double(g)); %对输入图像对数映射变换 h=mat2gray(h); %将矩阵h转换为灰度图片

h=im2uint8(h); %将灰度图转换为8位图 imshow(h),title('转换后的8位图'); 运行后的结果: 实验二:直方图变换 A:直方图显示 I=imread('cameraman.tif'); %读取图像 subplot(1,2,1),imshow(I) %输出图像 title('原始图像') %在原始图像中加标题 subplot(1,2,2),imhist(I) %输出原图直方图 title('原始图像直方图') %在原图直方图上加标题运行结果如下:

数字图像处理程序

数字图像处理程序

数字图像处理实验 图像处理实验(一)直方图 灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特 征更加明显。 灰度级的直方图给出了一幅图像概貌的描述,通过修改灰度直方图来得到图像 增强。 1、灰度直方图 (1)计算出一幅灰度图像的直方图 clear close all I=imread('004.bmp'); imhist(I) title('实验一(1)直方图'); (2)对灰度图像进行简单的灰度线形变换, figure subplot(2,2,1) imshow(I); title('试验2-灰度线性变换'); subplot(2,2,2) histeq(I); (3)看其直方图的对应变化和图像对比度的变化。 原图像 f(m,n) 的灰度范围 [a,b] 线形变换为图像 g(m,n),灰度范围[a’,b’]公式:g(m,n)=a’+(b’-a’)* f(m,n) /(b-a) figure subplot(2,2,1) imshow(I) J=imadjust(I,[0.3,0.7],[0,1],1); title(' 实验一(3)用g(m,n)=a’+(b’-a’)* f(m,n) /(b-a)进行变换 '); subplot(2,2,2) imshow(J) subplot(2,2,3) imshow(I) J=imadjust(I,[0.5 0.8],[0,1],1); subplot(2,2,4) imshow(J) (4) 图像二值化(选取一个域值,(5) 将图像变为黑白图像) figure subplot(2,2,1)

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

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

实验一Matlab图像处理基础及图像灰度变换

实验一Matlab图像处理基础及图像灰度变换 一、实验目的 了解Matlab平台下的图像编程环境,熟悉Matlab中的DIP (Digital Image Processing)工具箱;掌握Matlab中图像的表示方法,图像类型、数据类型的种类及各自的特点,并知道怎样在它们之间进行转换。掌握Matlab环境下的一些最基本的图像处理操作,如读图像、写图像、查看图像信息和格式、尺寸和灰度的伸缩等等;通过实验掌握图像直方图的描绘方法,加深直方图形状与图像特征间关系间的理解;加深对直方图均衡算法的理解。 二、实验内容 1.从硬盘中读取一幅灰度图像; 2.显示图像信息,查看图像格式、大小、位深等内容; 3.用灰度面积法编写求图像方图的Matlab程序,并画图; 4.把第3步的结果与直接用Matlab工具箱中函数histogram的结果进行比较,以衡量第3步中程序的正确性。 5.对读入的图像进行直方图均衡化,画出处理后的直方图,并比较处理前后图像效果的变化。 三、知识要点 1.Matlab6.5支持的图像图形格式 TIFF, JEPG, GIF, BMP, PNG, XWD (X Window Dump),其中GIF不支持写。 2.与图像处理相关的最基本函数 读:imread; 写:imwrite; 显示:imshow; 信息查看:imfinfo; 3.Matlab6.5支持的数据类 double, unit8, int8, uint16, int16, uint32, int32, single, char (2 bytes per element), logical. 4.Matlab6.5支持的图像类型 Intensity images, binary images, indexed images, RGB image 5.数据类及图像类型间的基本转换函数 数据类转换:B = data_class_name(A);

数字图像处理实验报告

数字图像处理实验报告

实验一数字图像处理编程基础 一、实验目的 1. 了解MA TLAB图像处理工具箱; 2. 掌握MA TLAB的基本应用方法; 3. 掌握MA TLAB图像存储/图像数据类型/图像类型; 4. 掌握图像文件的读/写/信息查询; 5. 掌握图像显示--显示多幅图像、4种图像类型的显示方法; 6. 编程实现图像类型间的转换。 二、实验内容 1. 实现对图像文件的读/写/信息查询,图像显示--显示多幅图像、4种图像类型的显示方法、图像类型间的转换。 2. 运行图像处理程序,并保存处理结果图像。 三、源代码 I=imread('cameraman.tif') imshow(I); subplot(221), title('图像1'); imwrite('cameraman.tif') M=imread('pout.tif') imview(M) subplot(222), imshow(M); title('图像2'); imread('pout.bmp') N=imread('eight.tif') imview(N) subplot(223), imshow(N); title('图像3'); V=imread('circuit.tif') imview(V) subplot(224), imshow(V); title('图像4');

N=imread('C:\Users\Administrator\Desktop\1.jpg') imshow(N); I=rgb2gary(GRB) [X.map]=gary2ind(N,2) RGB=ind2 rgb(X,map) [X.map]=gary2ind(I,2) I=ind2 gary(X,map) I=imread('C:\Users\dell\Desktop\111.jpg'); subplot(231),imshow(I); title('原图'); M=rgb2gray(I); subplot(232),imshow(M); [X,map]=gray2ind(M,100); subplot(233),imshow(X); RGB=ind2rgb(X,map); subplot(234),imshow(X); [X,map]=rbg2ind(I); subplot(235),imshow(X); 四、实验效果

自适应滤波实验报告

LMS 自适应滤波实验报告 姓名: 学号: 日期:2015.12.2 实验内容: 利用自适应滤波法研究从宽带信号中提取单频信号的方法。 设()()()()t f B t f A t s t x 212cos 2cos π?π+++=,()t s 是宽带信号,A ,B ,1f ,2f , ?任选 (1)要求提取两个单频信号; (2)设f f f ?+=12,要求提取单频信号()t f 22cos π,研究f ?的大小对提取单频信号的影响。 1. 自适应滤波器原理 自适应滤波器理论是现代信号处理技术的重要组成部分,它对复杂信号的处理具有独特的功能。自适应滤波器在信号处理中属于随机信号处理的范畴。在一些信号和噪声特性无法预知或他们是随时间变化的情况下,自适应滤波器通过自适应滤波算法调整滤波器系数,使得滤波器的特性随信号和噪声的变化,以达到最优滤波的效果,解决了固定全系数的维纳滤器和卡尔曼滤波器的不足。 (1) 自适应横向滤波器 所谓自适应滤波,就是利用前一时刻已获得的滤波器参数等结果,自动调节现时刻的滤波器参数,以适应信号和噪声未知或随时间变化的统计特性,从而实现最优滤波。自适应滤波器由两个部分组成:滤波器结构和调节滤波器系数的自适应算法。自适应滤波器的特点是自动调节自身的冲激响应,达到最优滤波,此算法适用于平稳和非平稳随机信号,并且不要求知道信号和噪声的统计特性。 一个单输入的横向自适应滤波器的原理框图如图所示:

实际上这种单输入系统就是一个FIR 网络结构,其输出()n y 用滤波器单位脉冲响应表示成下式: ()()()∑-=-=1 N m m n x m w n y 这里()n w 称为滤波器单位脉冲响应,令:()()n i n x x i w w m i i i ,1,1,1+-=-=+=用j 表示,上式可以写成 ∑==N i ij i j x w y 1 这里i w 也称为滤波器加权系数。用上面公式表示其输出,适用于自适应线性组合器,也适用于FIR 滤波器。将上式表示成矩阵形式: X W W X j T T j j y == 式中 [][ ] T Nj j j j T N x x x w w w X W ,...,,, ,...,,2121== 误差信号表示为 X W j T j j j j d y d e -=-= (2) 最小均方(LMS )算法 Widrow 等人提出的最小均方算法,是用梯度的估计值代替梯度的精确值,这种算法简单易行,因此获得了广泛的应用。 LMS 算法的梯度估计值用一条样本曲线进行计算,公式如下:

数字图像处理实验

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

数字图像处理实验

学院计算机与通信工程学院专业生物医学工程专业 班级51111 学号5111133 姓名杨静 指导教师贾朔 2014年04月21日

实验一图像的基本运算 一、实验目的: 1、掌握图像处理中的点运算、代数运算、逻辑运算和几何运算及应用。 2、掌握各种运算对于图像处理中的效果。 二、实验内容: 1、(1)选择一幅图像lena8.jpg,设置输入/输出变换的灰度级范围,a=0.2,b=0.6,c=0.1,d=0.9. (2)设置非线性扩展函数的参数c=2. (3)采用灰度级倒置变换函数s=255-r进行图像变换 (4)设置二值化图像的阈值,分别为level=0.4,level=0.7 解:参考程序如下: I=imread('C:\lena8.jpg'); figure; subplot(2,3,1); imshow(I); title('原图'); J=imadjust(I,[0.3;0.6],[0.1;0.9]); %设置灰度变换的范围 subplot(2,3,2); imshow(J); title('线性扩展'); I1=double(I); %将图像转换为double类型 I2=I1/255; %归一化此图像 C=2; K=C*log(1+I2); %求图像的对数变换 subplot(2,3,3); imshow(K); title('非线性扩展'); M=im2bw(I,0.5); M=~M; %M=255-I; %将此图像取反 %Figure subplot(2,3,4); imshow(M); title('灰度倒置'); N1=im2bw(I,0.4); %将此图像二值化,阈值为0.4 N2=im2bw(I,0.7); %将此图像二值化,阈值为0.7 subplot(2,3,5); imshow(N1); title('二值化阈值0.4'); subplot(2,3,6); imshow(N2); title('二值化阈值0.7');

自适应滤波实验报告

LMS 自适应滤波实验报告 : 学号: 日期:2015.12.2 实验容: 利用自适应滤波法研究从宽带信号中提取单频信号的方法。 设()()()()t f B t f A t s t x 212cos 2cos π?π+++=,()t s 是宽带信号,A ,B ,1f ,2f , ?任选 (1)要求提取两个单频信号; (2)设f f f ?+=12,要求提取单频信号()t f 22cos π,研究f ?的大小对提取单频信号的影响。 1. 自适应滤波器原理 自适应滤波器理论是现代信号处理技术的重要组成部分,它对复杂信号的处理具有独特的功能。自适应滤波器在信号处理中属于随机信号处理的畴。在一些信号和噪声特性无法预知或他们是随时间变化的情况下,自适应滤波器通过自适应滤波算法调整滤波器系数,使得滤波器的特性随信号和噪声的变化,以达到最优滤波的效果,解决了固定全系数的维纳滤器和卡尔曼滤波器的不足。 (1) 自适应横向滤波器 所谓自适应滤波,就是利用前一时刻已获得的滤波器参数等结果,自动调节现时刻的滤波器参数,以适应信号和噪声未知或随时间变化的统计特性,从而实现最优滤波。自适应滤波器由两个部分组成:滤波器结构和调节滤波器系数的自适应算法。自适应滤波器的特点是自动调节自身的冲激响应,达到最优滤波,此算法适用于平稳和非平稳随机信号,并且不要求知道信号和噪声的统计特性。

一个单输入的横向自适应滤波器的原理框图如图所示: 实际上这种单输入系统就是一个FIR 网络结构,其输出()n y 用滤波器单位脉冲响应表示成下式: ()()()∑-=-=1 N m m n x m w n y 这里()n w 称为滤波器单位脉冲响应,令: ()()n i n x x i w w m i i i ,1,1,1+-=-=+=用j 表示,上式可以写成 ∑==N i ij i j x w y 1 这里i w 也称为滤波器加权系数。用上面公式表示其输出,适用于自适应线性组合器,也适用于FIR 滤波器。将上式表示成矩阵形式: X W W X j T T j j y == 式中 [][ ] T Nj j j j T N x x x w w w X W ,...,,, ,...,,2121== 误差信号表示为 X W j T j j j j d y d e -=-= (2) 最小均方(LMS )算法 Widrow 等人提出的最小均方算法,是用梯度的估计值代替梯度的精确值,这种算法简单易行,因此获得了广泛的应用。

数字图像处理实验一

数字图像处理—实验一 一.实验内容: 图像灰度变换 二.实验目的: 学会用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];

matlab图像的灰度变换

实验二 图像的灰度变换 一、实验目的 1、 理解数字图像处理中点运算的基本作用; 2、 掌握对比度调整与灰度直方图均衡化的方法。 二、实验原理 1、对比度调整 如果原图像f (x , y )的灰度范围是[m , M ],我们希望对图像的灰度范围进行线性调整,调整后的图像g (x , y )的灰度范围是[n , N ],那么下述变换: []n m y x f m M n N y x g +---=),(),(就可以实现这一要求。 MATLAB 图像处理工具箱中提供的imadjust 函数,可以实现上述的线性变换对比度调整。imadjust 函数的语法格式为: J = imadjust(I,[low_in high_in], [low_out high_out]) J = imadjust(I, [low_in high_in], [low_out high_out])返回原图像I 经过直方图调整后的新图像J ,[low_in high_in]为原图像中要变换的灰度范围,[low_out high_out]指定了变换后的灰度范围,灰度范围可以用 [ ] 空矩阵表示默认范围,默认值为[0, 1]。 不使用imadjust 函数,利用matlab 语言直接编程也很容易实现灰度图像的对比度调整。但运算的过程中应当注意以下问题,由于我们读出的图像数据一般是uint8型,而在MATLAB 的矩阵运算中要求所有的运算变量为double 型(双精度型)。因此读出的图像数据不能直接进行运算,必须将图像数据转换成双精度型数据。 2、直方图均衡化 直方图均衡化的目的是将原始图像的直方图变为均衡分布的形式,即将一已知灰度概率密度分布的图像,经过某种变换变成一幅具有均匀灰度概率密度分布的新图像,从而改善图像的灰度层次。 MATLAB 图像处理工具箱中提供的histeq 函数,可以实现直方图的均衡化。 三、实验内容及要求 1、 用MATLAB 在自建的文件夹中建立example2.m 程序文件。在这个文件的程序中,将girl2.bmp 图像文件读出,显示它的图像及灰度直方图(可以发现其灰度值集中在一段区

相关主题