数字图像处理实验报告1
数字图像处理实验报告
数字图像处理实验报告1. 引言数字图像处理是使用计算机来处理和优化图像的一种技术。
在本实验中,我们将探索几种常见的数字图像处理方法,并使用Python编程语言和相关库来实现。
2. 实验目的本实验的主要目的是:1.了解图像的基本特性和数字图像处理的基本原理;2.熟悉Python编程语言和相关图像处理库的使用;3.实现常见的图像处理算法并进行实验验证。
3. 实验方法在本实验中,我们使用Python编程语言和以下相关库来实现图像处理算法:•OpenCV:用于图像读取、显示和保存等基本操作;•Numpy:用于图像数据的处理和算术运算;•Matplotlib:用于图像的可视化和结果展示。
以下是实验涉及到的图像处理方法和步骤:1.图像读取和显示:使用OpenCV库读取图像,使用Matplotlib库显示图像;2.图像的灰度化:将彩色图像转换为灰度图像;3.图像的二值化:将灰度图像转换为黑白二值图像;4.图像的平滑处理:使用平滑滤波器对图像进行平滑处理,如均值滤波和高斯滤波;5.图像的边缘检测:使用边缘检测算法对图像进行边缘检测,如Sobel算子和Canny算子;6.图像的直方图均衡化:对灰度图像进行直方图均衡化,增强图像的对比度。
4. 实验过程和结果4.1 图像读取和显示首先,我们使用OpenCV库读取一张图像,并使用Matplotlib库显示该图像:import cv2import matplotlib.pyplot as plt# 读取图像img = cv2.imread('image.jpg')# 显示图像plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) plt.axis('off')plt.show()4.2 图像的灰度化接下来,我们将彩色图像转换为灰度图像:# 灰度化图像gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 显示灰度图像plt.imshow(gray_img, cmap='gray')plt.axis('off')plt.show()4.3 图像的二值化然后,我们将灰度图像转换为黑白二值图像:# 二值化图像_, binary_img = cv2.threshold(gray_img, 128, 255, cv2.THRESH_BINARY)# 显示二值图像plt.imshow(binary_img, cmap='gray')plt.axis('off')plt.show()4.4 图像的平滑处理接下来,我们使用平滑滤波器对图像进行平滑处理,例如使用5x5的均值滤波器和高斯滤波器:# 均值滤波mean_img = cv2.blur(img, (5, 5))# 高斯滤波gaussian_img = cv2.GaussianBlur(img, (5, 5), 0) # 显示平滑处理后的图像plt.figure(figsize=(10, 5))plt.subplot(121)plt.imshow(cv2.cvtColor(mean_img, cv2.COLOR_BGR2R GB))plt.title('Mean Filter')plt.axis('off')plt.subplot(122)plt.imshow(cv2.cvtColor(gaussian_img, cv2.COLOR_B GR2RGB))plt.title('Gaussian Filter')plt.axis('off')plt.show()4.5 图像的边缘检测然后,我们使用边缘检测算法对图像进行边缘检测,例如使用Sobel算子和Canny算子:# 边缘检测sobel_img = cv2.Sobel(gray_img, cv2.CV_8U, 1, 1, ksize=3)canny_img = cv2.Canny(gray_img, 50, 150)# 显示边缘检测结果plt.figure(figsize=(10, 5))plt.subplot(121)plt.imshow(sobel_img, cmap='gray')plt.title('Sobel Operator')plt.axis('off')plt.subplot(122)plt.imshow(canny_img, cmap='gray')plt.title('Canny Operator')plt.axis('off')plt.show()4.6 图像的直方图均衡化最后,我们对灰度图像进行直方图均衡化,以增强图像的对比度:# 直方图均衡化equalized_img = cv2.equalizeHist(gray_img)# 显示直方图均衡化结果plt.imshow(equalized_img, cmap='gray')plt.axis('off')plt.show()5. 实验总结通过本实验,我们熟悉了数字图像处理的基本方法和步骤,并使用Python编程语言和相关库实现了图像的读取、显示、灰度化、二值化、平滑处理、边缘检测和直方图均衡化等操作。
(完整word版)数字图像处理 实验报告(完整版)
数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily.tif,存入一个数组中;2.利用whos 命令提取该读入图像flower.tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:>>I=imread('lily.tif')>> whos I>> imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily.bmp。
7.用imread()读入图像Sunset.jpg和Winter.jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter.jpg显示出来,观察两幅图像的质量。
其中9的实验结果如下图:源代码:4~6(接上面两个) >>I=imread('lily.tif')>> imfinfo 'lily.tif';>> imwrite(I,'lily.jpg','quality',20);>> imwrite(I,'lily.bmp');7~9 >>I=imread('Sunset.jpg');>>J=imread('Winter.jpg')>>imfinfo 'Sunset.jpg'>> imfinfo 'Winter.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。
数字图像处理实验报告
数字图像处理实验报告数字图像处理实验报告(一)实验目的1.理解数字图像处理的基本概念与原理。
2.掌握数字图像处理的基本方法。
3.掌握常用数字滤波器的性质和使用方法。
4.熟练应用数字图像处理软件进行图像处理。
实验器材计算机、MATLAB软件实验内容1.图像的读写与显示首先,我们需要在MATLAB中读入一幅图像,并进行显示。
% 导入图像文件I = imread('myimage.jpg');% 显示图像imshow(I);2.图像的分辨率与色彩空间转换数字图像处理中的一个重要概念是图像的分辨率,通常用像素数量表示。
图像的分辨率越高,代表着图像包含更多的像素,从而更具细节和清晰度。
在数字图像处理中,常常需要将一幅图像从一种色彩空间转换为另一种色彩空间。
RGB色彩空间是最常见的图像色彩空间之一,并且常常作为其他色彩空间的基础。
% 转换图像色彩空间J = rgb2gray(I);% 显示转换后的图像imshow(J);3.图像的增强与滤波图像的增强通常指的是对图像的对比度、亮度和清晰度等方面进行调整,以改善图像的质量和可读性。
数字图像处理中的滤波是一种常用的图像增强方法。
滤波器是一个能够对图像进行局部操作的矩阵,它能够提取或抑制特定的图像特征。
% 对图像进行平滑滤波K = imgaussfilt(J, 1);% 显示滤波后的图像imshow(K);4.数字图像处理在实际应用中的例子数字图像处理在很多实际应用中被广泛应用。
这些应用包括医疗成像、计算机视觉、人脸识别、安防监控等。
下面是数字图像处理在人脸识别应用中的一个简单例子。
% 导入图像文件I = imread('face.jpg');% 进行人脸检测faceDetector = vision.CascadeObjectDetector;bbox = step(faceDetector, I);% 在图像上标记人脸位置IFaces = insertObjectAnnotation(I, 'rectangle', bbox, 'Face');imshow(IFaces);实验结论通过本次实验,我已经能够理解数字图像处理的基本概念与原理,掌握数字图像处理的基本方法,熟练应用数字图像处理软件进行图像处理。
数字图像处理实验报告
数字图像处理实验报告数字图像处理实验报告1一. 实验内容:主要是图像的几何变换的编程实现,具体包括图像的读取、改写,图像平移,图像的镜像,图像的转置,比例缩放,旋转变换等.具体要求如下:1.编程实现图像平移,要求平移后的图像大小不变;2.编程实现图像的镜像;3.编程实现图像的转置;4.编程实现图像的比例缩放,要求分别用双线性插值和最近邻插值两种方法来实现,并比较两种方法的缩放效果;5.编程实现以任意角度对图像进行旋转变换,要求分别用双线性插值和最近邻插值两种方法来实现,并比较两种方法的旋转效果.二.实验目的和意义:本实验的目的是使学生熟悉并掌握图像处理编程环境,掌握图像平移、镜像、转置和旋转等几何变换的方法,并能通过程序设计实现图像文件的读、写操作,及图像平移、镜像、转置和旋转等几何变换的程序实现.三.实验原理与主要框架:3.1 实验所用编程环境:Visual C++(简称VC)是微软公司提供的基于C/C++的应用程序集成开发工具.VC拥有丰富的功能和大量的扩展库,使用它能有效的创建高性能的Windows应用程序和Web应用程序.VC除了提供高效的C/C++编译器外,还提供了大量的可重用类和组件,包括著名的微软基础类库(MFC)和活动模板类库(ATL),因此它是软件开发人员不可多得的开发工具.VC丰富的功能和大量的扩展库,类的重用特性以及它对函数库、DLL库的支持能使程序更好的模块化,并且通过向导程序大大简化了库资源的使用和应用程序的开发,正由于VC具有明显的优势,因而我选择了它来作为数字图像几何变换的开发工具.在本程序的开发过程中,VC的核心知识、消息映射机制、对话框控件编程等都得到了生动的体现和灵活的应用.3.2 实验处理的对象:256色的BMP(BIT MAP )格式图像BMP(BIT MAP )位图的文件结构:具体组成图: BITMAPFILEHEADER位图文件头(只用于BMP文件) bfType=”BM” bfSize bfReserved1bfReserved2bfOffBitsbiSizebiWidthbiHeightbiPlanesbiBitCountbiCompressionbiSizeImagebiXPelsPerMeterbiYPelsPerMeterbiClrUsedbiClrImportant单色DIB有2个表项16色DIB有16个表项或更少256色DIB有256个表项或更少真彩色DIB没有调色板每个表项长度为4字节(32位)像素按照每行每列的顺序排列每一行的字节数必须是4的整数倍BITMAPINFOHEADER 位图信息头 Palette 调色板 DIB Pixels DIB图像数据1. BMP文件组成BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成.2. BMP文件头BMP文件头数据结构含有BMP文件的类型(必须为BMP)、文件大小(以字节为单位)、位图文件保留字(必须为0)和位图起始位置(以相对于位图文件头的偏移量表示)等信息.3. 位图信息头BMP位图信息头数据用于说明位图的尺寸(宽度,高度等都是以像素为单位,大小以字节为单位, 水平和垂直分辨率以每米像素数为单位) ,目标设备的级别,每个像素所需的位数, 位图压缩类型(必须是 0)等信息.4. 颜色表颜色表用于说明位图中的颜色,它有若干个表项,每一个表项是一个RGBQUAD类型的结构,定义一种颜色.具体包含蓝色、红色、绿色的亮度(值范围为0-255)位图信息头和颜色表组成位图信息5. 位图数据位图数据记录了位图的每一个像素值,记录顺序是在扫描行内是从左到右,扫描行之间是从下到上.Windows规定一个扫描行所占的字节数必须是4的倍数(即以long为单位),不足的以0填充.3.3 BMP(BIT MAP )位图的显示:①一般显示方法:1. 申请内存空间用于存放位图文件2. 位图文件读入所申请内存空间中3. 在函数中用创建显示用位图, 用函数创建兼容DC,用函数选择显示删除位图但以上方法的缺点是: 1)显示速度慢; 2) 内存占用大; 3) 位图在缩小显示时图形失真大,(可通过安装字体平滑软件来解决); 4) 在低颜色位数的设备上(如256显示模式)显示高颜色位数的图形(如真彩色)图形失真严重.②BMP位图缩放显示 :用视频函数来显示位图,内存占用少,速度快,而且还可以对图形进行淡化(Dithering )处理.淡化处理是一种图形算法,可以用来在一个支持比图像所用颜色要少的设备上显示彩色图像.BMP位图显示方法如下:1. 打开视频函数,一般放在在构造函数中2. 申请内存空间用于存放位图文件3. 位图文件读入所申请内存空间中4. 在函数中显示位图5. 关闭视频函数 ,一般放在在析构函数中以上方法的优点是: 1)显示速度快; 2) 内存占用少; 3) 缩放显示时图形失真小,4) 在低颜色位数的设备上显示高颜色位数的图形图形时失真小; 5) 通过直接处理位图数据,可以制作简单动画.3.4 程序中用到的访问函数Windows支持一些重要的DIB访问函数,但是这些函数都还没有被封装到MFC中,这些函数主要有:1. SetDIBitsToDevice函数:该函数可以直接在显示器或打印机上显示DIB. 在显示时不进行缩放处理.2. StretchDIBits函数:该函数可以缩放显示DIB于显示器和打印机上.3. GetDIBits函数:还函数利用申请到的内存,由GDI位图来构造DIB.通过该函数,可以对DIB的格式进行控制,可以指定每个像素颜色的位数,而且可以指定是否进行压缩.4. CreateDIBitmap函数:利用该函数可以从DIB出发来创建GDI 位图.5. CreateDIBSection函数:该函数能创建一种特殊的DIB,称为DIB项,然后返回一个GDI位图句柄.6. LoadImage函数:该函数可以直接从磁盘文件中读入一个位图,并返回一个DIB句柄.7. DrawDibDraw函数:Windows提供了窗口视频(VFW)组件,Visual C++支持该组件.VFW中的DrawDibDraw函数是一个可以替代StretchDIBits 的函数.它的最主要的优点是可以使用抖动颜色,并且提高显示DIB的速度,缺点是必须将VFW代码连接到进程中.3.5 图像的几何变换图像的几何变换,通常包括图像的平移、图像的镜像变换、图像的转置、图像的缩放和图像的旋转等.数字图像处理实验报告2一、实验的目的和意义实验目的:本实验内容旨在让学生通过用VC等高级语言编写数字图像处理的一些基本算法程序,来巩固和掌握图像处理技术的基本技能,提高实际动手能力,并通过实际编程了解图像处理软件的实现的基本原理。
数字图像处理实验报告
实 验 内 容
3-2 根据直方图定义,通过结构化编程方式给出 3-1)中灰度图像像素点统计形式的直方图,并与利用 函数调用方式获得的直方图在两个不同窗口中进行比较,两窗口图像名称分别为”编程直方图”、”函 数调用直方图”; 参考函数 imread、size、bar、imhist、image I=imread('panda.jpg'); B=rgb2gray(I); A=uint8(B); [m n]=size(B); s=zeros(m,n); for i=1:m for j=1:n for rank=0:255 if B(i,j)==rank s(rank+1)=s(rank+1)+1; end
在水平和垂直方 列的方式同时显
I=imread('panda.jpg');
subplot(1,3,1);imshow(I)
subplot(1,3,2);imshow(I)
colorbar
subplot(1,3,3);imshow(I)
colorbar('horizontal')
实 验 1)、实验采用的原始图片要求是包含自己头像的照片,图片大小控制在 640×480 之内; 要 2)、实验中的当前工作目录采用 MATLAB 目录下的 work 文件夹。 求
学号
12109940423 指导教师
实验地点
1C06-329
实验成绩
图像灰度统计特性及其相关变换
12 级 1 班 杜云明
实 理解直方图的形成原理,掌握绘制灰度直方图的方法;熟悉图像灰度直方图的变换及直方图均衡化方 验 法;理解图像灰度变换处理在图像增强中的作用;熟悉图像灰度分布统计与图像视觉质量之间的关系; 目 通过工具箱函数调用和结构化编程两种方式实现图像的相关处理,在加深理解基本原理的同时,提高 的 编程实践的技巧和能力。
数字图像处理 实验报告(完整版)【精选文档】
数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily。
tif,存入一个数组中;2.利用whos 命令提取该读入图像flower。
tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:〉>I=imread('lily。
tif’)>〉whos I>〉imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily。
jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0—100.6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily。
bmp。
7.用imread()读入图像Sunset。
jpg和Winter。
jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter。
jpg显示出来,观察两幅图像的质量。
其中9的实验结果如下图:源代码:4~6(接上面两个)〉>I=imread('lily.tif’)>> imfinfo ’lily。
tif’;〉> imwrite(I,'lily.jpg’,’quality’,20);〉> imwrite(I,’lily。
bmp’);7~9 〉>I=imread('Sunset。
jpg');>>J=imread('Winter。
jpg')>>imfinfo 'Sunset。
jpg'>> imfinfo ’Winter。
数字图像处理实验报告
《数字图像处理》实验报告目录第一章实验一数字图像的基本操作和灰度变换 (3)1.1实验目的 (3)1.2实验原理与方法 (3)1.3实验内容与结果分析 (4)1.4思考问题 (8)第二章实验二图像的空间域增强 (9)2.1实验目的 (9)2.2实验原理与方法 (9)2.3实验内容与结果分析 (10)2.4思考问题 (16)第三章实验三图像的傅里叶变换和频域处理 (17)3.1实验目的 (17)3.2实验原理与方法 (17)3.3实验内容与结果分析 (18)附录:实验代码 (23)第一章实验一数字图像的基本操作和灰度变换1.1实验目的①了解数字图像的基本数据结构②熟悉Matlab中数字图像处理的基本函数和基本使用方法③掌握图像灰度变换的基本理论和实现方法④掌握直方图均衡化增强的基本理论和实现方法1.2实验原理与方法1.2.1图像灰度的线性变换灰度的线性变换可以突出图像中的重要信息。
通常情况下,处理前后的图像灰度级是相同的,即处理前后的图像灰度级都为[0,255]。
那么,从原理上讲,我们就只能通过抑制非重要信息的对比度来腾出空间给重要信息进行对比度展宽。
设原图像的灰度为),(j i f ,处理后的图像的灰度为),(j i g ,对比度线性展宽的原理示意图如图1.1所示。
假设原图像中我们关心的景物的灰度分布在[a f ,b f ]区间内,处理后的图像中,我们关心的景物的灰度分布在[a g ,b g ]区间内。
在这里)(a b g g g -=∆()b a f f f >∆=-,也就是说我们所关心的景物的灰度级得到了展宽。
根据图中所示的映射关系中分段直线的斜率我们可以得出线性对比度展宽的计算公式:),(j i f α, a f j i f <≤),(0=),(j i ga a g f j i f +-)),((β,b a f j i f f <≤).,( (1-1)b b g f j i f +-)),((γ,255),(<≤j i f f b(m i ,3,2,1Λ=;n j ,3,2,1Λ=) 其中,a a f g =α,a b a b f f g g --=β,bbf g --=255255γ,图像的大小为m ×n 。
数字图像处理实验报告(五个实验全)
数字图像处理实验报告(五个实验全)实验⼀ Matlab图像⼯具的使⽤1、读图I=imread('lena.jpg');imshow(I);2、读⼊⼀幅RGB图像,变换为灰度图像和⼆值图像,并在同⼀个窗⼝内分成三个⼦窗⼝来分别显⽰RGB图像和灰度图像。
a=imread('lena.jpg')i = rgb2gray(a)I = im2bw(a,0.5)subplot(3,1,1);imshow(a);subplot(3,1,2);imshow(i);subplot(3,1,3);imshow(I);原图像灰度图像⼆值图像实验⼆图像变换1、对⼀幅图像进⾏平移,显⽰原始图像与处理后图像,分别对其进⾏傅⾥叶变换,显⽰变换后结果,分析原图的傅⾥叶谱与平移后傅⾥叶频谱的对应关系。
s=imread('beauty.jpg');i=rgb2gray(s)i=double(i)j=fft2(i);k=fftshift(j); 原图像原图的傅⾥叶频谱l=log(abs(k));m=fftshift(j);RR=real(m);II=imag(m);A=sqrt(RR.^2+II.^2);A=(A-min(min(A)))/(max(max(A)))*255;b=circshift(s,[800 450]);b=rgb2gray(b)b=double(b) 平移后的图像平移后的傅⾥叶频谱c=fft2(b);e=fftshift(c);l=log(abs(e));f=fftshift(c);WW=real(f);ZZ=imag(f);B=sqrt(WW.^2+ZZ.^2);B=(B-min(min(B)))/(max(max(B)))*255;subplot(2,2,1);imshow(s);subplot(2,2,2);imshow(uint8(b));subplot(2,2,3);imshow(A);subplot(2,2,4);imshow(B);2、对⼀幅图像进⾏旋转,显⽰原始图像与处理后图像,分别对其进⾏傅⾥叶变换,显⽰变换后结果,分析原图的傅⾥叶谱与旋转后傅⾥叶频谱的对应关系。
数字图像处理实验报告
数字图像处理实验报告实验一数字图像的获取一、实验目的1、了解图像的实际获取过程。
2、巩固图像空间分辨率和灰度级分辨率、邻域等重要概念。
3、熟练掌握图像读、写、显示、类型转换等matlab函数的用法。
二、实验内容1、读取一幅彩色图像,将该彩色图像转化为灰度图像,再将灰度图像转化为索引图像并显示所有图像。
2、编程实现空间分辨率变化的效果。
三、实验原理1、图像读、写、显示I=imread(‘image.jpg’)Imview(I)Imshow(I)Imwrite(I,’wodeimage.jpg’)2、图像类型转换I=mat2gray(A,[amin,amax]);按指定的取值区间[amin,amax]将数据矩阵A转化为灰度图像I,amin对应灰度0,amax对应1,也可以不指定该区间。
[x,map]=gray2ind(I,n);按指定的灰度级n将灰度图像转化为索引图像,n默认为64I=ind2gray(x,map);索引图像转化为灰度图像I=grb2gray(RGB);真彩色图像转化为灰度图像[x,map]=rgb2ind(RGB);真彩色图像转化为索引图像RGB=ind2rgb(x,map);索引图像转化为真彩色图像BW=im2bw(I,level);将灰度图像转化为二值图像,level取值在[0,1]之间BW=im2bw(x,map,level);将索引图像转化为二值图像,level取值在[0,1]之间BW=im2bw(RGB,level);将真彩色图像转化为二值图像,level取值在[0,1]之间四、实验代码及结果1、in=imread('peppers.png');i=rgb2gray(in);[x,map]=gray2ind(i,128);subplot(131),imshow(in)subplot(132),imshow(i)subplot(133),imshow(x),colormap(map)2、%空间分辨率变化的效果clc,close all,cleari=imread('cameraman.tif');i=imresize(i,[256,256]);i1=i(1:2:end,1:2:end);[m1,n1]=size(i)i2=i1(1:2:end,1:2:end);[m2,n2]=size(i2)i3=i2(1:2:end,1:2:end);[m3,n3]=size(i3)subplot(221),imshow(i),xlabel('256x256')subplot(222),imshow(i1),xlabel('128x128')subplot(223),imshow(i2),xlabel('64x64')subplot(224),imshow(i3),xlabel('32x32')256 x 256128 x 12864 x 6432 x 32实验二图像的几何变换一、实验目的掌握图像的基本几何变换的方法1、图像的平移2、图像的旋转二、实验内容练习用matalb 命令实现图像的平移、旋转操作1、.编写实现图像平移的函数2、用imread 命令从你的硬盘读取一幅256×256灰度图;3、调用平移函数,将256×256灰度图平移100行200列,在同一个窗口中显示平移前和平移后的图像。
数字图像处理实验报告
数字图像处理实验报告图像处理课程的目标是培养学生的试验综合素质与能力。
使学生通过实践,理解相关理论学问,将各类学问信息进行新的组合,制造出新的方法和新的思路,提高学生的科学试验与实际动手操作能力[1]。
从影像科筛选有价值的图像,建成影像学数字化试验教育平台,系统运行正常;具备图像上传、图像管理、图像检索与扫瞄、试验报告提交、老师批阅等功能;能满意使用要求[2]。
1.试验内容设计思路1.1项目建设内容和方法数字图像处理的内容:完整的数字图像处理大体上分为图像信息的猎取,存储,传送,处理,输出,和显示几个方面。
数字图像信息的猎取主要是把一幅图像转换成适合输入计算机和数字设备的数字信号,包括摄取图像,光、电转换及数字化。
数字图像信息的存储,数字图像信息的突出特点是数据量巨大,为了解决海量存储问题,数字图像的存储主要研究图像压缩,图像格式及图像数据库技术。
数字图像信息的传送数字图像信息的传送可分为系统内部传送与远距离传送[4]数字图像信息处理包括图像变换,图像增加,图像复原,彩色与多光谱处理图像重建,小波变换,图像编码,形态学,目标表示与描述。
数字图像输出和显示,最终目的是为人和机器供应一幅便于解释和识别的图像,数字图像的输出和显示也是数字图像处理的重要内容之一。
1.2数字图像处理的方法大致可以分为两大类,既空域法和频域法空域法:是把图像看做平面中各个像素组成的集合,然后直接对一维和二维函数进行相应处理,依据新图像生成方法的不同,空域处理法可为点处理法,区处理法,叠代处理法,跟踪处理法,位移不变与位移可变处理法。
点处理法的优点,点处理的典型用途a)灰度处理b)图像二值处理点处理方法的优点a)可用LUT方法快速实现b)节省存储空间。
区处理法,邻域处理法。
它依据输入图像的小邻域的像素值,按某些函数得到输出像素。
区处理法主要用于图象平滑和图像的锐化。
叠代处理法:叠代就是反复进行某些处理运算,图像叠代处理也是如此,拉普拉斯算子或平滑处理的结果是物体轮廓,该图像轮廓边缘太宽或粗细不一,要经过多次叠代把它处理成单像素轮廓——图像细化。
数字图像处理实验报告
数字图像处理实验报告一、引言数字图像处理是一门涉及图像获取、图像处理和图像分析的重要学科,广泛应用于计算机科学、电子工程、通信技术等领域。
本报告旨在介绍并总结我所进行的数字图像处理实验,讨论实验的目的、方法、结果和分析。
二、实验目的通过本次实验,旨在掌握和理解数字图像处理的基本原理和常见技术,包括灰度变换、空间域滤波、频域滤波等,以及层次分割、边缘检测和形态学处理等高级应用技术。
三、实验方法1. 寻找合适的图像在实验中,我选用了一张自然风景图像作为处理对象。
这张图像包含丰富的纹理和颜色信息,适合用于多种图像处理方法的验证和比较。
2. 灰度变换灰度变换是数字图像处理中常见的基础操作,可以通过对图像的像素灰度值进行线性或非线性变换,来调整图像的对比度、亮度等特征。
在实验中,我利用线性灰度变换方法将原始彩色图像转换为灰度图像,并进行对比度的调整,观察处理结果的变化。
3. 空间域滤波空间域滤波是一种基于像素邻域的图像处理方法,常用于图像去噪、边缘增强等应用。
我使用了平滑滤波和锐化滤波两种方法,并针对不同的滤波算子和参数进行了实验和比较,评估其对图像细节和边缘保留的影响。
4. 频域滤波频域滤波是一种基于图像的频谱特征的图像处理方法,广泛应用于图像增强、去噪和特征提取等方面。
我利用傅里叶变换将图像从空间域转换到频域,采用理想低通滤波器和巴特沃斯低通滤波器进行图像的模糊处理,并进行了实验对比和分析。
5. 高级应用技术在实验中,我还研究了数字图像处理中的一些高级应用技术,包括层次分割、边缘检测和形态学处理。
通过应用不同的算法和参数,我实现了图像区域分割、提取图像边缘和形态学形状变换等效果,评估处理结果的准确性和稳定性。
四、实验结果与分析通过对以上实验方法的实施,我获得了一系列处理后的图像,并进行了结果的比较和分析。
在灰度变换实验中,我发现线性变换对图像的对比度有较大影响,但对图像的细节变化不敏感;在空间域滤波实验中,平滑滤波可以有效降噪,但会导致图像细节损失,而锐化滤波可以增强图像的边缘效果,但也容易引入噪声;在频域滤波实验中,理想低通滤波对图像的模糊效果明显,而巴特沃斯低通滤波器可以在一定程度上保留图像的高频细节信息;在高级应用技术实验中,边缘检测和形态学处理对提取图像边缘和形状变换非常有效,但参数的选择会对结果产生较大影响。
数字图像处理实验报告(附答案解析)
实验一常用MATLAB图像处理命令一、实验目的1、熟悉并掌握MA TLAB工具的使用;2、实现图像的读取、显示、代数运算和简单变换。
二、实验环境MATLAB 6.5以上版本、WIN XP或WIN2000计算机三、常用函数●读写图像文件1 imreadimread函数用于读入各种图像文件,如:a=imread('e:\w01.tif')2 imwriteimwrite函数用于写入图像文件,如:imwrite(a,'e:\w02.tif',’tif’) 3 imfinfoimfinfo函数用于读取图像文件的有关信息,如:imfinfo('e:\w01.tif') ●图像的显示1imageimage函数是MATLAB提供的最原始的图像显示函数,如:a=[1,2,3,4;4,5,6,7;8,9,10,11,12];image(a);2 imshowimshow函数用于图像文件的显示,如:i=imread('e:\w01.tif');imshow(i);title(‘原图像’)%加上图像标题3 colorbarcolorbar函数用显示图像的颜色条,如:i=imread('e:\w01.tif');imshow(i);colorbar;4 figurefigure函数用于设定图像显示窗口,如:figure(1); /figure(2);5 subplot把图形窗口分成多个矩形部分,每个部分可以分别用来进行显示。
Subplot(m,n,p)分成m*n个小窗口,在第p个窗口中创建坐标轴为当前坐标轴,用于显示图形。
6 plot绘制二维图形plot(y)Plot(x,y)xy可以是向量、矩阵。
图像类型转换1 rgb2gray//灰色把真彩图像转换为灰度图像i=rgb2gray(j)2 im2bw//黑白通过阈值化方法把图像转换为二值图像I=im2bw(j,level)Level表示灰度阈值,取值范围0~1(即0.n),表示阈值取自原图像灰度范围的n%3 imresize改变图像的大小I=imresize(j,[m n])将图像j大小调整为m行n列图像运算1 imadd两幅图像相加,要求同样大小,同种数据类型Z=imadd(x,y)表示图像x+y2 imsubstract两幅图像相减,要求同样大小,同种数据类型Z=imsubtract(x,y)表示图像x-y3 immultiplyZ=immultiply(x,y)表示图像x*y4 imdivideZ=imdivide(x,y)表示图像x/y5:m = imadjust(a,[,],[0.5;1]) ;%图像变亮n = imadjust(a,[,],[0;0.5]) ;%图像变暗g=255-a;%负片效果四、实验内容(请将实验程序填写在下方合适的位置,实验图像结果拷屏粘贴)1、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。
数字图像处理实验报告
实验一、图像的显示与格式变换1、实验目的1)熟悉常用的图像文件格式与格式转换;2)熟悉图像矩阵的显示方法(灰度、索引、黑白、彩色);3)熟悉图像矩阵的格式转换2、实验内容练习图像读写命令imread和imwrite并进行图像文件格式间的转换。
特别是索引图像与1,4,8,16比特图像的存储与转换。
3、实验步骤a.用图像读命令(imread)从你的硬盘中读取图像(cameramen.tif);b.用图像显示功能(imshow)将刚读入的图像显示在一图像窗中;c.显示颜色条功能(colorbar)在图像的左边画一条颜色亮度显示条;d.用(imfinfo)功能得到(gray.bmp)图像的相关信息;e.用(colormap )获取当前图像的调色板,观察调色板中的颜色设置;f.用(getimage)功能从坐标轴取得当前图像数据;g.用(imagesc)功能显示图像从64-128的灰度值;h. 用(immovie)功能将一个4-D 图像创建多帧索引图的电影动画;i. 用(warp)功能将图像('testpat1.tif)显示到纹理映射柱面;思考:怎样让(cameraman.tif)图像如下图一样显示?四.实验结果及代码a.代码:>>X=imread(‘cameraman.tif’)b.代码:>>y=imshow(X)显示的图像为:c、代码:>>I = colorbar('cameraman.tif')H=imshow('cameraman.tif')显示的图像为d、代码:>>info=imfinfo(‘gray.bmp')显示结果为:Filename: [1x71 char]FileModDate: '16-Apr-2010 11:23:52'FileSize: 107786Format: 'bmp'FormatV ersion: 'V ersion 3 (Microsoft Windows 3.x)'Width: 409Height: 259BitDepth: 8ColorType: 'indexed'FormatSignature: 'BM'NumColormapEntries: 256Colormap: [256x3 double]RedMask: []GreenMask: []BlueMask: []ImageDataOffset: 1078BitmapHeaderSize: 40NumPlanes: 1CompressionType: 'none'BitmapSize: 106708HorzResolution: 0V ertResolution: 0NumColorsUsed: 0NumImportantColors: 0e、代码:>>x=imread(‘256.bmp’)color1=colormap %获取当前图象的调色板image (x)info=imfinfo(’256.bmp’)color2=info.Colormap %注意观察调色板有多少种颜色colormap(color2)f、代码:>>I=getimageg、代码:>> imagesc(x,[64 128])h、代码:>> load mri;mov = immovie(D,map); movie(mov,3)显示图像为:i.源代码:>>[x,y,z]=cylinder;I= imread('testpat1.tif');warp(x,y,z,I),图像显示为:思考:代码:>>X=inread('cameramen.tif');Y=[X X];[x,-y,z]=cylinder;I=imread(Y);warp(x,y,z,I)显示图像为:实验二、图像增强一、实验目的1.理解图像直方图的含义;2.了解直方图的应用;3.掌握直方图均衡化的实现方法。
数字图像处理实验报告
数字图像处理实验报告数字图像处理实验报告实验⼀数字图像基本操作及灰度调整⼀、实验⽬的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. 学习使用图像处理软件,如Photoshop或Matlab等。
2. 掌握图像增强的方法,如直方图均衡化、滤波和锐化等。
3. 理解图像压缩和编码的原理,如JPEG和PNG等格式。
4. 了解图像分割和边缘检测的基本算法,如阈值分割和Canny边缘检测等。
三、实验过程1. 图像增强图像增强是指通过一系列算法和技术,改善图像的质量和视觉效果。
在实验中,我们可以使用直方图均衡化算法来增强图像的对比度和亮度。
该算法通过将图像的像素值映射到一个更大的范围内,使得图像的亮度分布更加均匀。
2. 图像滤波图像滤波是指通过一系列滤波器对图像进行处理,以实现去噪、平滑和锐化等效果。
在实验中,我们可以使用平滑滤波器(如均值滤波器和高斯滤波器)来去除图像中的噪声。
同时,我们还可以使用锐化滤波器(如拉普拉斯滤波器和Sobel滤波器)来增强图像的边缘和细节。
3. 图像压缩和编码图像压缩是指通过减少图像的数据量来减小图像文件的大小,从而实现存储和传输的效率提升。
在实验中,我们可以使用JPEG和PNG等压缩算法来对图像进行压缩和编码。
JPEG算法通过对图像的频域进行离散余弦变换和量化,实现对图像的有损压缩。
而PNG算法则采用无损压缩的方式,通过对图像的差值编码和哈夫曼编码,实现对图像的高效压缩。
4. 图像分割和边缘检测图像分割是指将图像分成若干个区域,以实现对图像的目标提取和图像分析的目的。
而边缘检测是指通过检测图像中的边缘和轮廓,实现对图像的形状分析和目标识别。
数字图像处理实验报告
数字图像处理实验报告数字图像处理实验报告第一章总论数字图像处理是计算机图形学、数字信号处理等学科交叉的一门学科。
它是基于数字计算机对图像信号进行数字处理的一种方法。
数字图像处理技术已广泛应用于医学影像诊断、遥感图像处理、图像识别、安防监控等领域,在当今社会中具有不可替代的重要作用。
本次实验主要介绍了数字图像处理的基本方法,包括图像采集、图像增强、图像恢复、图像分割、图像压缩等几个方面。
在实验过程中,我们采用了一些常用的数字图像处理方法,并通过 Matlab 图像处理工具箱进行实现和验证。
第二章实验过程2.1 图像采集在数字图像处理中,图像采集是一个重要的步骤。
采集到的图像质量直接影响到后续处理结果的准确性。
本次实验使用的图像是一张 TIF 格式的彩色图像,通过 Matlab 读取图像文件并显示,代码如下:```Matlabim = imread('test.tif');imshow(im);```执行代码后,可以得到如下图所示的图像:![image_1.png](./images/image_1.png)2.2 图像增强图像增强是指利用某些方法使图像具有更好的视觉效果或者变得更适合某种应用。
本次实验我们主要采用直方图均衡化、灰度变换等方法进行图像增强。
2.2.1 直方图均衡化直方图均衡化是一种常用的增强方法,它可以增加图像的对比度和亮度,使图像更加清晰。
代码实现如下:```Matlabim_eq = histeq(im);imshow(im_eq);```执行代码后,会得到直方图均衡化后的图像,如下图所示:![image_2.png](./images/image_2.png)可以看出,经过直方图均衡化处理后,图像的对比度和亮度得到了明显提高。
2.2.2 灰度变换灰度变换是一种用于调整图像灰度级别的方法。
通过变换某些像素的灰度级别,可以增强图像的视觉效果。
本次实验我们采用对数变换和幂函数变换两种方法进行灰度变换。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
J2=medfilt2(J1); %用 3×3 的滤波窗口对有椒盐噪声图像进行中值滤波 J3=medfilt2(J1,[5 5]); %用 5×5 的滤波窗口对有椒盐噪声图像进行中值滤 波 subplot(2,2,1);imshow(I);title('原始图像'); subplot(2,2,2);imshow(J1);title('加入椒盐噪声的图像(参数为 0.2)'); subplot(2,2,3);imshow(J2);title('3*3 模板中值滤波图像'); subplot(2,2,4);imshow(J3);title('5*5 模板中值滤波图像'); 四、 图像边缘检测 1、实验任务
直方图均衡也称灰度均衡,目的是通过点运算使输入图像转换为在每一
灰度级上都有相同的像素点数的输出图像(即输出的直方图是平的)。
按照图像的概率密度函数的定义:
DB
f
(DA )
DMAX A0
DA
Hi
i0
p(x) 1 H (x) A0
其中 H ( x) 为直方图, A0 为图像的面积。
设转换前图像的概率密度函数为 pr (r) ,转换后图像的概率密度函数
7
研究的主要问题之一。当模板中所有系数都取同样的值时,称其为 Box 模板,常 用的 3×3 和 5×5 模板如下:
3×3 平滑模板
5×5 平滑模板
利用 Box 模板对图像进行平滑处理又称为邻域平均法平滑处理。Box 模板 对当前像素及其相邻的的像素点都一视同仁,统一进行平均处理,这样就可 以滤去图像中的噪声。
2
N 1
N 1
2
2
g(n)WNmn h(n)WNmn
n0
n0
N 1
N 1
2
2
x(2n)WNm(2n) x(2n 1)WNm(2n1)
n0
n0
N 1
N 1
2
2
x(2n)WNmn x(2n 1)WNmnWNm
n0
2
n0
2
=G(m)+WNm H(m)
因此,一个求 N 点的 FFT 可以转换成两个求 N 点的 FFT。根据以上公式 2
《数字图像处理》
课程实验报告
专业 班级 学号 学生姓名 指导教师 学期 完成日期
计算机系统结构 (1)班 1303210015 刘贺鹏 吕建平老师
2013-2014 学年第 2 学期 2014-6-10
1
《数字图像处理》实验内容及要求
一、灰度图像的快速傅立叶变换 1、 实验任务 对一幅灰度图像实现快速傅立叶变换(DFT),得到并显示出其频谱图,
像如下:
6、实验心得
6
histeq 通过一个算法,把亮度重新分配,让人看得舒服自然。比如说原 来的点都集中在暗处,1-25 之间,histeq 就可以把 25 亮度的点“拉”到 255 处,24“拉”到 240 处.. 最后图像的细节都回呈现在你面前。通过这次实验, 掌握基本的图象增强方法,观察图象增强的效果,加深对灰度直方图及直方图 均衡化的理解,掌握直方图均衡化方法。
⑵ 中值滤波法
中值滤波是一种非线性的信号处理方法,与其对应的中值滤波器是一种 非线性的滤波器。中值滤波在一定的条件下可以克服线性滤波如最小均方滤 波、均值滤波等带来的图像细节模糊问题,而且对滤除脉冲干扰及图像扫描 噪声最为有效。由于在实际运算过程中不需要图像的统计特征,因此也带来 不少方便。
中值滤波一般采用一个含有奇数个点的滑动窗口,将窗口中各点灰度值 的中值来替代指定点(一般是窗口的中心点)的灰度值。对于奇数个元素, 中值是指按大小排序后,中间的数值;对于偶数个元素,中值是指排序后中 间两个元素灰度值的平均值。对二维中值滤波来说,窗口的形状和尺寸对滤 波器的效果影响很大。不同图像内容和不同应用往往选用不同的窗口形状和 尺寸。常用的二维中值滤波窗口形状有线状、方形、圆形、十字形等。 4、实验步骤
快速傅立叶变换的基本思路是把序列分解成若干短序列,并与系数矩阵 元素巧妙结合起来计算离散傅立叶变换。若按照奇偶序列将 X(n)进行划分, 设:
g(n) x(2n) h(n) x(2n 1)
(n=0,1,2,…, N 1 ) 2
则一维傅立叶变换可以改写成下面的形式:
N 1
X (m) x(n)WNmn n0
Laplacian 算子为:
近似计算为:
11
常用的 LOG 算子是 5*5 的模板,如下所示:
4、实验步骤 ⑴ 实现灰度图像读取、保存模块; ⑵ 读入灰度图像并用 Roberts 算子检测边缘。
处理和中值滤波处理去除噪声。 2、实验条件
微机一台、Matlab R2013a 版本 3、实验原理: ⑴ 邻域平均法 图像平滑处理就是用平滑模板对图像进行处理,以减少图像的噪声。平滑模 板的思想是通过一点和周围邻域内像素点的平均来去除突然变化的点,从而滤掉 一定的噪声,其代价是图像有一定程度的模糊,减少图像的模糊是图像平滑处理
⑴ 实现灰度图像读取、保存模块; ⑵ 读入灰度图像并加入椒盐噪声; ⑶ 对图像进行中值滤波处理,并显示处理后的图像。
8
5、实验结果 实验采用大小为 256×256 的灰度图像 liuhp.jpg。原始图像、加噪后的
图像和中值滤波后的图像如下所示。
6、实验心得 平滑滤波技术用于平滑图像中的噪声。平滑噪声可以在空间域中进行,基本 方法是求像素灰度的平均值或中值。也可以在频域中用基于傅立叶的分析方法进 行。图像平滑主要是针对图像的各种噪声而言的,因此需要模拟数字图像的各种 噪声来分析滤波效果。通过此次实验让我学习到图像滤波函数 imfilter 函数。 实验代码如下: clear all; I=imread('liuhp.jpg'); I=rgb2gray(I); J1=imnoise(I,'salt & pepper',0.2);%加均值 0,方差 0.2 椒盐噪声
观察图像傅立叶变换的一些重要性质。 2、 实验条件 微机一台、Matlab R2013a 版本 3、实验原理 傅立叶变换是一种常见的图像正交变换,通过变换可以减少图像数据的相
关性,获取图像的整体特点,有利于用较少的数据量表示原始图像。 二维离散傅立叶变换的定义如下:
M 1 N 1
j 2 ( ux vy )
常用的梯度算子如下表所示:
算子 H1
名称
H2
特
点
Rober ts
边缘定位准, 对噪声敏感。
10
Prewi tt
平均、微分对 噪声有抑制作 用。
Sobel
加权平均边 宽≥2 象素。
Isotr opic Sobel
权值反比于 邻点与中心点的 距离,检测沿不 同方向边缘时梯 度幅度一致。
拉普拉斯高斯(loG)算法是一种二阶边缘检测方法。它通过寻找图像灰度 值中二阶微分中的过零点(Zero Crossing)来检测边缘点。其原理为,灰度级 变形成的边缘经过微风算子形成一个单峰函数,峰值位置对应边缘点;对单峰函 数进行微分,则峰值处的微分值为 0,峰值两侧符号相反,而原先的极值点对英 语二阶微分中的过零点,通过检测过零点即可将图像的边缘提取出来。
⑴ 了解图像边缘提取的基本概念; ⑵ 了解进行边缘提取的基本方法; ⑶ 掌握用不同算子对图像进行边缘检测的方法. ⑷ 在 Matlab 或 VC++环境下,编写程序分别用 Roberts,Sobel 和拉普拉
斯高斯算子对图像进行边缘检测,比较三种算子处理的不同之处。 2、实验条件
微机一台、Matlab R2013a 版本 3、实验原理
二、 灰度图像的直方图均匀化
4
1、实验任务 ⑴ 进一步掌握灰度图象直方图的概念,性质; ⑵ 对一幅灰度图象实现直方图均衡化,对比修正前后的图像效果 ⑶ 通过 Matlab 或 VC++开发环境,编程实现灰度图象的直方图均匀化 处理。
2、实验条件
微机一台、Matlab R2013a 版本
3、 实验原理
实验代码如下: clear all; Image1=imread('liuhp.jpg'); Image1=rgb2gray(Image1);%将此图像转化成灰度图像 Image2=histeq(Image1);%直方图均衡化 subplot(2,2,1);imshow(Image1);title('原灰度图像') subplot(2,2,2);imhist(Image1);%获取图像数据直方图 axis([0 255 0 1000]);title('原图像直方图'); subplot(2,2,3);imshow(Image2);title('直方图均衡化所得图像'); subplot(2,2,4);imhist(Image2); axis([0 300 0 2000]);title('均衡变换后的直方图'); 三、 图像平滑处理 1、实验任务 ⑴ 理解图像噪声,模板等概念; ⑵ 掌握邻域平滑法原理及实现方法; ⑶ 掌握中值滤波法原理及实现方法; ⑷ 通过 Matlab 或 VC++环境编程实现对一幅有噪声的灰度图象的邻域平滑
0
该转换公式被称为图像的累积分布函数。
直方图均衡的转换公式为:
5
DBH (u)du
0
对于离散图像,转换公式则为:
DB
f
(DA )
DMAX A0
DA
Hi
i0
4、实验步骤
⑴ 实现灰度图像读取、保存模块;
⑵ 编程实现图像的直方图均衡。
5、实验结果 实验采用大小为 256×256 的灰度图像 liuhp.jpg。实验结果所得到的图
图像的边缘是图像的最基本特征,它指的是周围像素灰度有阶跃变化或屋 顶变化的那些像素的集合。物体的边缘是由灰度的不连续性反映的。阶跃性边缘 是指它两边的像素的灰度值有着显著的不同,屋顶状边缘位于灰度值从增加到减 少的变化转折点。经典的边缘提取方法是考察图像的每个像素在某个领域内灰度 的变换,利用边缘邻近一阶或二阶方向导数变换规律,用简单的方法检测边缘, 这种方法称为边缘检测局部算子法。