数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/7c20c01d53ea551810a6f524ccbff121dd36c503.png)
数字图像处理实验报告中南⼤学数字图像处理实验报告⽬录⼀、实验⼀:数字图像基本操作及灰度调整1.实验⽬的 (1)2.实验基本原理 (1)3.实验内容与要求 (3)4. 实验具体实现 (4)⼆、实验⼆:数字图像的空间域滤波和频域滤波1.实验⽬的 (9)2.实验基本原理 (9)3.实验内容与要求 (12)4. 实验具体实现 (14)三、实验三:图像分割与边缘检测1.实验⽬的 (32)2.实验基本原理 (32)3.实验内容与要求 (34)4. 实验具体实现 (35)实验⼀:数字图像基本操作及灰度调整1.实验⽬的1) 掌握读、写图像的基本⽅法。
2) 掌握MATLAB 语⾔中图像数据与信息的读取⽅法。
3) 理解图像灰度变换处理在图像增强的作⽤。
4) 掌握绘制灰度直⽅图的⽅法,理解灰度直⽅图的灰度变换及均衡化的⽅法。
2.实验原理1. 灰度变换灰度变换是图像增强的⼀种重要⼿段,它常⽤于改变图象的灰度范围及分布,是图象数字化及图象显⽰的重要⼯具。
1) 图像反转灰度级范围为[0, L-1]的图像反转可由下式获得r L s --=12) 对数运算:有时原图的动态范围太⼤,超出某些显⽰设备的允许动态范围,如直接使⽤原图,则⼀部分细节可能丢失。
解决的⽅法是对原图进⾏灰度压缩,如对数变换:s = c log(1 + r ),c 为常数,r ≥ 03) 幂次变换:0,0,≥≥=γγc cr s4) 对⽐拉伸:在实际应⽤中,为了突出图像中感兴趣的研究对象,常常要求局部扩展拉伸某⼀范围的灰度值,或对不同范围的灰度值进⾏不同的拉伸处理,即分段线性拉伸:其对应的数学表达式为:2. 直⽅图均衡化灰度直⽅图的横坐标是灰度级,纵坐标是该灰度级出现的频度,它是图像最基本的统计特征。
依据定义,在离散形式下,⽤r k 代表离散灰度级,⽤p r (r k )代表p r (r ),并且有下式成⽴:nnr P k k r =)( 1,,2,1,010-=≤≤l k r k式中:n k 为图像中出现r k 级灰度的像素数,n 是图像像素总数,⽽n k /n 即为频数。
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/e311586ccec789eb172ded630b1c59eef8c79a09.png)
数字图像处理实验报告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编程语言和相关库实现了图像的读取、显示、灰度化、二值化、平滑处理、边缘检测和直方图均衡化等操作。
3.图像增强—灰度变换 - 数字图像处理实验报告
![3.图像增强—灰度变换 - 数字图像处理实验报告](https://img.taocdn.com/s3/m/51285a18e2bd960590c677fc.png)
计算机与信息工程学院验证性实验报告一、实验目的:1、了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。
2、学会对图像直方图的分析。
3、掌握直接灰度变换的图像增强方法。
二、实验原理及知识点术语‘空间域’指的是图像平面本身,在空间与内处理图像的方法是直接对图像的像素进行处理。
空间域处理方法分为两种:灰度级变换、空间滤波。
空间域技术直接对像素进行操作其表达式为g(x,y)=T[f(x,y)]其中f(x,y)为输入图像,g(x,y)为输出图像,T是对图像f进行处理的操作符,定义在点(x,y)的指定领域内。
定义点(x,y)的空间邻近区域的主要方法是,使用中心位于(x,y)的正方形或长方形区域。
此区域的中心从原点(如左上角)开始逐像素点移动,在移动的同时,该区域会包含不同的领域。
T应用于每个位置(x,y),以便在该位置得到输出图像g。
在计算(x,y)处的g值时,只使用该领域的像素。
灰度变换T的最简单形式是使用领域大小为1×1,此时,(x,y)处的g值仅由f 在该点处的亮度决定,T也变为一个亮度或灰度级变化函数。
当处理单设(灰度)图像时,这两个术语可以互换。
由于亮度变换函数仅取决于亮度的值,而与(x,y)无关,所以亮度函数通常可写做如下所示的简单形式:s=T(r)其中,r表示图像f中相应点(x,y)的亮度,s表示图像g中相应点(x,y)的亮度。
三、实验内容:1、图像数据读出2、计算并分析图像直方图3、利用直接灰度变换法对图像进行灰度变换下面给出灰度变化的MATLAB程序f=imread('medicine_pic.jpg');g=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('point.jpg');h=log(1+double(g)); %对输入图像对数映射变换h=mat2gray(h); %将矩阵h转换为灰度图片h=im2uint8(h); %将灰度图转换为8位图figure,imshow(h)四、实验仪器PC一台,MATLAB软件五、实验图片columbia480.bmp Fig0704(Vase).tif.tif六、实验程序及结果clc;clear allf=imread('columbia480.bmp');subplot 121;imshow(f)title('原始图像')subplot 122;imhist(f,256)title('原始图像直方图')%灰度转换,实现明暗转换(负片图像)f1=imadjust(f,[0 1],[1 0]);figure(2)subplot 121,imshow(f1)title('明暗转换后的图像')subplot 122;imhist(f1,256) title('明暗转换直方图')%将0.5到0.75的灰度级扩展到范围[0 1] f2=imadjust(f,[0.5 0.75],[0 1]); figure(3)subplot 121;imshow(f2)title('0.5到0.75的灰度级扩展到范围[0 1]的图像') subplot 122;imhist(f2,256) title('灰度级扩展直方图')原始图像0原始图像直方图100200明暗转换后的图像明暗转换直方图1002000.5到0.75的灰度级扩展到范围[0 1]的图像04灰度级扩展直方图100200clc;clear allm=imread('Fig0704(Vase).tif.tif');h=log(1+double(m)); %对输入图像对数映射变换 h=mat2gray(h); %将矩阵h 转换为灰度图片 h=im2uint8(h); %将灰度图转换为8位图 figuresubplot 221;imshow(m) title('原始图像') subplot 222;imhist(m) title('原始图像直方图') subplot 223;imshow(h)title('经log 变换后的图像') subplot 224;imhist(h)title('经log 变换后的图像直方图')原始图像原始图像直方图100200经log变换后的图像0经log 变换后的图像直方图100200教师签名:年 月 日。
图像增强(灰度图像-空间域)实验报告
![图像增强(灰度图像-空间域)实验报告](https://img.taocdn.com/s3/m/a25808d9ce2f0066f533225e.png)
给予二阶微分的图像处理—拉普拉斯算子
0
-1
0
-1
4
-1
0
-1
0
以下两个模板是Sobel算子
-1 -2 -1
0 0 0
1 2 1
-1 0 1
-2ห้องสมุดไป่ตู้0 2
-1 0 1
二:使用Visual C++编写程序,利用对比度拉伸(Contrast stretching)和对数变换(Log transformation)的方法,对本目录下的图gray001.bmp进行操作,以凸显图像中的细节信息。根据图像的具体情况自行选择具体的变换函数,以达到最佳处理效果。
1.(第一组模板用于平滑处理)
3x3
1/9
1/9
1/9
1/9
1/9
1/9
1/9
1/9
1/9
1/16 2/16 1/16
2/16 4/16 2/16
1/16 2/16 1/16
5x5
1/25 1/25 1/25 1/25 1/25
1/25 1/25 1/25 1/25 1/25
1/25 1/25 1/25 1/25 1/25
通过以上实验可知平滑模板可以将原始图像平滑,但是在这三幅图例子中改变很小;锐化模板锐化效果比较明显。
二:对图像gra其中参数选择为第一个坐标点为(40,20)第二个坐标点为(130,150)
与原图像比较可以看到对比度有所增强,细节更突出。
对图像gray001.bmp进行对数变换得到如下图像:
其中对数变换参数选择为C=50,与原图像比较可知图像细节更加突出,特别是图像右下角部分。
通过此实验,掌握了空间域利用模版进行图像平滑和增强的基本方法;对图像平滑和增强的效果建立了直观的印象,加深对图像处理算法原理的理解;通过此次实验,还掌握图像灰度变换的一些基本方法。
数字图像处理实验报告(图像灰度变换处理)
![数字图像处理实验报告(图像灰度变换处理)](https://img.taocdn.com/s3/m/4a4aa427a2161479171128ac.png)
数字图像处理实验报告班级:姓名:学号:数字图像处理实验报告一.实验名称:图像灰度变换二.实验目的:1 学会使用Matlab;2 学会用Matlab软件对图像灰度进行变换,感受各种不同的灰度变换方法对最终图像效果的影响。
三.实验原理:Matlab中经常使用的一些图像处理函数:读取图像:img=imread('filename'); //支持TIFF,JPEG,GIF,BMP,PNG,XWD等文件格式。
显示图像: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表示输出图像指定的灰度级数。
像平滑与锐化(空间滤波):w=fspecial('type',parameters);imfilter(img,w); //这两个函数结合将变得十分强大,可以实现photoshop里的任意滤镜。
图像复原:deconvlucy(img,PSF); //可用于图像降噪、去模糊等处理。
四.实验步骤:1.获取实验用图像:Fig3.10(b).jpg. 使用imread函数将图像读入Matlab。
2.产生灰度变换函数T1,使得:0.3r r < 0.35s = 0.105+2.6333(r–0.35) 0.35 ≤ r ≤ 0.65 1+0.3(r–1) r > 0.65用T1对原图像Fig3.10(b).jpg进行处理,打印处理后的新图像。
数字图像处理 实验 灰度变换
![数字图像处理 实验 灰度变换](https://img.taocdn.com/s3/m/d7c728e4524de518964b7d26.png)
XXXXXXX
实验名称图像灰度变换
实验时间年月日
专业姓名学号
预习操作座位号
教师签名总评
一、实验目的:
1.深入理解图像灰度变换的基本原理。
2.学习编程实现图像灰度变换,并分析各种算法的效果。
二、实验原理:
现行拉伸:
void CHangView::OnXxls()
{
// TODO: Add your command handler code here
long w,h;
unsigned char *lpsrc;
lpsrc=m_Image;
w=m_DibHead->biWidth;
h=m_DibHead->biHeight;
对数变换:对数变换的一般表达式为:s = c log(1 + r),其中C是一个常数。低灰度区扩展,高灰度区压缩。图像加亮、减暗。非线性拉伸不是对图像的整个灰度范围进行扩展,而是有选择地对某一灰度值范围进行扩展,其他范围的灰度值则有可能被压缩。
三、实验内容:
与实验二建立菜单方式相同。
建立相应的类向导使之建立函数(步骤与实验二相同),函数代码如下:
}
分段变换:
void CHangView::OnFenduan()
{
// TODO: Add your command handler code here
long w,h;
unsigned char *lpsrc;
lpsrc=m_Image;
w=m_DibHead->biWidth;
h=m_DibHead->biHeight;
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/f339b8fb32d4b14e852458fb770bf78a65293a8b.png)
数字图像处理实验报告数字图像处理实验报告数字图像处理实验报告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等高级语言编写数字图像处理的一些基本算法程序,来巩固和掌握图像处理技术的基本技能,提高实际动手能力,并通过实际编程了解图像处理软件的实现的基本原理。
数字图像处理实验报告之数字图像的空间域滤波
![数字图像处理实验报告之数字图像的空间域滤波](https://img.taocdn.com/s3/m/aaa7241e0b4e767f5acfcef7.png)
数字图像处理实验报告学院:班级:学号:时间:2012.11.29实验三:数字图像的空间域滤波——锐化滤波1.实验目的1.掌握图像滤波的基本定义及目的。
2.理解空间域滤波的基本原理及方法。
3.掌握进行图像的空域滤波的方法。
2.实验基本原理1.空间域增强空间域滤波是在图像空间中借助模板对图像进行领域操作,处理图像每一个像素的取值都是根据模板对输入像素相应领域内的像素值进行计算得到的。
空域滤波基本上是让图像在频域空间内某个范围的分量受到抑制,同时保证其他分量不变,从而改变输出图像的频率分布,达到增强图像的目的。
空域滤波一般分为线性滤波和非线性滤波两类。
线性滤波器的设计常基于对傅立叶变换的分析,非线性空域滤波器则一般直接对领域进行操作。
各种空域滤波器根据功能主要分为平滑滤波器和锐化滤波器。
平滑可用低通来实现,平滑的目的可分为两类:一类是模糊,目的是在提取较大的目标前去除太小的细节或将目标内的小肩端连接起来;另一类是消除噪声。
锐化可用高通滤波来实现,锐化的目的是为了增强被模糊的细节。
结合这两种分类方法,可将空间滤波增强分为四类:线性平滑滤波器(低通)非线性平滑滤波器(低通)线性锐化滤波器(高通)非线性锐化滤波器(高通)空间滤波器都是基于模板卷积,其主要工作步骤是:1)将模板在图中移动,并将模板中心与图中某个像素位置重合;2)将模板上的系数与模板下对应的像素相乘;3)将所有乘积相加;4)将和(模板的输出响应)赋给图中对应模板中心位置的像素。
2.锐化滤波器图像平滑往往使图像中的边界、轮廓变得模糊,为了减少这类不利效果的影响,需要利用图像锐化技术,使图像的边缘变得清晰。
1)线性锐化滤波器线性高通滤波器是最常用的线性锐化滤波器。
这种滤波器的中心系数都是正的,而周围的系数都是负的,所有的系数之和为0。
对3×3 的模板来说,典型的系数取值为:[-1 -1 -1;-1 8 -1;-1 -1 -1]事实上这是拉普拉斯算子。
数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)
![数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)](https://img.taocdn.com/s3/m/75e7634ea1c7aa00b42acb1c.png)
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的值即为数组排序后的中值。
优点:由于中值滤波本身为一种利用统计排序方法进行的非线性滤波方法,故可以滤除在排列矩阵两边分布的脉冲噪声,并较好的保留图像的细节信息。
缺点:当噪声密度较大时,使用中值滤波后,仍然会有较多的噪声点出现。
数字图像处理实验及报告(含源码)
![数字图像处理实验及报告(含源码)](https://img.taocdn.com/s3/m/f61ad898a0116c175f0e48d0.png)
大学数字图像处理实验报告设计题目:数字图像处理专业名称:软件工程班级: 1 学号: 1 姓名: MARK 指导教师:2016年5月16日目录实验一数字图像的采集和Photoshop软件的操作 (4)1.1实验目的 (4)1.2实验任务及要求 (4)1.3实验内容、步骤和结果 (4)1.4 结果分析 (7)实验二图像的傅里叶变换 (8)2.1实验目的 (8)2.2实验任务及要求 (8)2.3实验内容、步骤和结果 (8)2.4 结果分析 (11)实验三图像的灰度变换和直方图变换 (12)3.1实验目的 (12)3.2实验任务及要求 (12)3.3实验内容、步骤和结果 (12)3.4 结果分析 (16)实验四图像的平滑处理 (17)4.1实验目的 (17)4.2实验任务及要求 (17)4.3实验内容、步骤和结果 (17)4.4 结果分析 (20)实验五 (21)5.1实验目的 (21)5.2实验任务及要求 (21)5.3实验内容、步骤和结果 (21)5.4 结果分析 (24)实验六 (26)6.1实验目的 (26)6.2实验任务及要求 (26)6.3实验内容、步骤和结果 (26)6.4 结果分析 (28)实验一数字图像的采集和Photoshop软件的操作1.1实验目的1、熟悉并掌握MATLAB,PHOTOSHOP等工具的使用;2、实现图像的读取、显示、代数运算和简单的变换。
1.2实验任务及要求1、根据实验内容在MATLAB中编写相应地代码,使结果符合题目要求;2、在PHOTOSHOP中实现与MATLAB中相同对图像的处理,进行对比;3、完成实验报告。
1.3实验内容、步骤和结果1、实验内容:a)读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口上分成三个子窗口来分别显示RGB图像、灰度图像和二值图像,注上文字标题;b)对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题;c)对一幅图像进行灰度变化,实现图像变亮,变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题;d)学会常用数字图像处理软件Photoshop的功能操作练习。
数字图像处理基本操作及灰度调整实验报告
![数字图像处理基本操作及灰度调整实验报告](https://img.taocdn.com/s3/m/d7d02206effdc8d376eeaeaad1f34693dbef1079.png)
数字图像处理基本操作及灰度调整实验报告实验目的1.掌握数字图像处理的基本概念和原理。
2.学会使用Python编程语言进行图像处理。
3.理解并实现图像灰度调整的方法。
4.分析实验结果,讨论图像处理方法的优缺点。
2.1 数字图像处理概述数字图像处理(Digital Image Processing,DIP)是一门研究使用计算机对图像进行处理的技术。
它的目的是改善图像的质量,使之更适合人类或计算机对图像进行观察和分析。
数字图像处理涉及到图像采集、存储、传输、分析以及图像的恢复等方面。
2.2 图像的表示和描述数字图像由图像元素(像素)组成,每个像素有一个对应的灰度值。
灰度值表示像素的亮度,通常用8位二进制数表示,其范围为0~255。
像素的灰度值越高,亮度越高。
数字图像可以表示为一个矩阵,矩阵中的每个元素对应一个像素的灰度值。
彩色图像通常采用RGB颜色模型,每个像素包含三个分量,分别对应红色、绿色和蓝色通道的亮度。
2.3 图像灰度调整图像灰度调整是指调整图像像素的灰度值,以改善图像的质量。
常用的图像灰度调整方法有:1.线性灰度变换:通过线性映射关系改变图像灰度值,可以实现图像亮度的调整和对比度的拉伸。
2.直方图均衡化:通过调整图像的灰度直方图,使其均匀分布,可以提高图像的对比度。
•操作系统:Windows 10•编程语言:Python 3.8•图像处理库:OpenCV 4.5.2•集成开发环境:Visual Studio Code4.1 图像读取和显示首先,我们需要使用OpenCV库读取和显示图像。
以下是读取和显示图像的Python代码:4.2 图像灰度化为了便于后续的灰度调整操作,我们需要将彩色图像转换为灰度图像。
以下是图像灰度化的Python代码:4.3 灰度调整接下来,我们将对图像进行灰度调整。
首先,实现线性灰度变换。
以下是线性灰度变换的Python代码:4.4 图像直方图均衡化直方图均衡化是一种能够提高图像对比度的方法。
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/1c75ed2591c69ec3d5bbfd0a79563c1ec5dad7b8.png)
数字图像处理实验报告实验一数字图像的获取一、实验目的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列,在同一个窗口中显示平移前和平移后的图像。
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/1200c3534b7302768e9951e79b89680202d86b04.png)
数字图像处理实验报告图像处理课程的目标是培养学生的试验综合素质与能力。
使学生通过实践,理解相关理论学问,将各类学问信息进行新的组合,制造出新的方法和新的思路,提高学生的科学试验与实际动手操作能力[1]。
从影像科筛选有价值的图像,建成影像学数字化试验教育平台,系统运行正常;具备图像上传、图像管理、图像检索与扫瞄、试验报告提交、老师批阅等功能;能满意使用要求[2]。
1.试验内容设计思路1.1项目建设内容和方法数字图像处理的内容:完整的数字图像处理大体上分为图像信息的猎取,存储,传送,处理,输出,和显示几个方面。
数字图像信息的猎取主要是把一幅图像转换成适合输入计算机和数字设备的数字信号,包括摄取图像,光、电转换及数字化。
数字图像信息的存储,数字图像信息的突出特点是数据量巨大,为了解决海量存储问题,数字图像的存储主要研究图像压缩,图像格式及图像数据库技术。
数字图像信息的传送数字图像信息的传送可分为系统内部传送与远距离传送[4]数字图像信息处理包括图像变换,图像增加,图像复原,彩色与多光谱处理图像重建,小波变换,图像编码,形态学,目标表示与描述。
数字图像输出和显示,最终目的是为人和机器供应一幅便于解释和识别的图像,数字图像的输出和显示也是数字图像处理的重要内容之一。
1.2数字图像处理的方法大致可以分为两大类,既空域法和频域法空域法:是把图像看做平面中各个像素组成的集合,然后直接对一维和二维函数进行相应处理,依据新图像生成方法的不同,空域处理法可为点处理法,区处理法,叠代处理法,跟踪处理法,位移不变与位移可变处理法。
点处理法的优点,点处理的典型用途a)灰度处理b)图像二值处理点处理方法的优点a)可用LUT方法快速实现b)节省存储空间。
区处理法,邻域处理法。
它依据输入图像的小邻域的像素值,按某些函数得到输出像素。
区处理法主要用于图象平滑和图像的锐化。
叠代处理法:叠代就是反复进行某些处理运算,图像叠代处理也是如此,拉普拉斯算子或平滑处理的结果是物体轮廓,该图像轮廓边缘太宽或粗细不一,要经过多次叠代把它处理成单像素轮廓——图像细化。
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/22efae3153ea551810a6f524ccbff121dc36c560.png)
数字图像处理实验报告一、引言数字图像处理是一门涉及图像获取、图像处理和图像分析的重要学科,广泛应用于计算机科学、电子工程、通信技术等领域。
本报告旨在介绍并总结我所进行的数字图像处理实验,讨论实验的目的、方法、结果和分析。
二、实验目的通过本次实验,旨在掌握和理解数字图像处理的基本原理和常见技术,包括灰度变换、空间域滤波、频域滤波等,以及层次分割、边缘检测和形态学处理等高级应用技术。
三、实验方法1. 寻找合适的图像在实验中,我选用了一张自然风景图像作为处理对象。
这张图像包含丰富的纹理和颜色信息,适合用于多种图像处理方法的验证和比较。
2. 灰度变换灰度变换是数字图像处理中常见的基础操作,可以通过对图像的像素灰度值进行线性或非线性变换,来调整图像的对比度、亮度等特征。
在实验中,我利用线性灰度变换方法将原始彩色图像转换为灰度图像,并进行对比度的调整,观察处理结果的变化。
3. 空间域滤波空间域滤波是一种基于像素邻域的图像处理方法,常用于图像去噪、边缘增强等应用。
我使用了平滑滤波和锐化滤波两种方法,并针对不同的滤波算子和参数进行了实验和比较,评估其对图像细节和边缘保留的影响。
4. 频域滤波频域滤波是一种基于图像的频谱特征的图像处理方法,广泛应用于图像增强、去噪和特征提取等方面。
我利用傅里叶变换将图像从空间域转换到频域,采用理想低通滤波器和巴特沃斯低通滤波器进行图像的模糊处理,并进行了实验对比和分析。
5. 高级应用技术在实验中,我还研究了数字图像处理中的一些高级应用技术,包括层次分割、边缘检测和形态学处理。
通过应用不同的算法和参数,我实现了图像区域分割、提取图像边缘和形态学形状变换等效果,评估处理结果的准确性和稳定性。
四、实验结果与分析通过对以上实验方法的实施,我获得了一系列处理后的图像,并进行了结果的比较和分析。
在灰度变换实验中,我发现线性变换对图像的对比度有较大影响,但对图像的细节变化不敏感;在空间域滤波实验中,平滑滤波可以有效降噪,但会导致图像细节损失,而锐化滤波可以增强图像的边缘效果,但也容易引入噪声;在频域滤波实验中,理想低通滤波对图像的模糊效果明显,而巴特沃斯低通滤波器可以在一定程度上保留图像的高频细节信息;在高级应用技术实验中,边缘检测和形态学处理对提取图像边缘和形状变换非常有效,但参数的选择会对结果产生较大影响。
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/ecf24730182e453610661ed9ad51f01dc28157b6.png)
数字图像处理实验报告重庆邮电⼤学《数字图像处理》课程上机实验学院⽣物信息学院专业⽣物医学⼯程班级 0611302姓名李霞学号 2013211957实验⼀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基本数据类型的数值数组本⾝⼗分适于表达图像,矩阵的元素和图像的像素之间有着⼗分⾃然的对应关系。
根据图像数据矩阵解释⽅法的不同,MA TLAB把其处理为4类:亮度图像(Intensity images)⼆值图像(Binary images)索引图像(Indexed images)RGB图像(RGB images)(1) 亮度图像⼀幅亮度图像是⼀个数据矩阵,其归⼀化的取值表⽰亮度。
若亮度图像的像素都是uint8类或uint16类,则它们的整数值范围分别是[0,255]和[0,65536]。
若图像是double类,则像素取值就是浮点数。
《数字图像处理》实验报告
![《数字图像处理》实验报告](https://img.taocdn.com/s3/m/e9cefd58a9114431b90d6c85ec3a87c241288a54.png)
《数字图像处理》实验报告数字图像处理是计算机科学与技术领域中的一个重要分支,它涉及到对图像进行获取、处理、分析和显示等一系列操作。
在本次实验中,我们将学习和探索数字图像处理的基本概念和技术,并通过实验来加深对这些概念和技术的理解。
首先,我们需要了解数字图像的基本概念。
数字图像是由像素组成的二维矩阵,每个像素代表图像中的一个点,像素的灰度值或颜色值决定了该点的亮度或颜色。
在实验中,我们将使用灰度图像进行处理,其中每个像素的灰度值表示了该点的亮度。
在数字图像处理中,最基本的操作之一是图像的获取和显示。
我们可以通过摄像头或者从文件中读取图像数据,然后将其显示在计算机屏幕上。
通过这种方式,我们可以对图像进行观察和分析,为后续的处理操作做好准备。
接下来,我们将学习一些常见的图像处理操作。
其中之一是图像的灰度化处理。
通过将彩色图像转换为灰度图像,我们可以减少图像数据的维度,简化后续处理的复杂度。
灰度化处理的方法有多种,例如将彩色图像的RGB三个通道的像素值取平均值,或者使用加权平均值的方法来计算灰度值。
另一个常见的图像处理操作是图像的平滑处理。
图像平滑可以减少图像中的噪声,并使得图像更加清晰。
常用的图像平滑方法包括均值滤波和高斯滤波。
均值滤波通过计算像素周围邻域像素的平均值来平滑图像,而高斯滤波则使用一个高斯核函数来加权平均邻域像素的值。
除了平滑处理,图像的锐化处理也是数字图像处理中的一个重要操作。
图像的锐化可以增强图像的边缘和细节,使得图像更加清晰和鲜明。
常用的图像锐化方法包括拉普拉斯算子和Sobel算子。
这些算子通过计算像素周围邻域像素的差异来检测边缘,并增强边缘的灰度值。
此外,我们还将学习一些图像的变换操作。
其中之一是图像的缩放和旋转。
通过缩放操作,我们可以改变图像的尺寸,使其适应不同的显示设备或应用场景。
而旋转操作可以将图像按照一定的角度进行旋转,以达到某种特定的效果。
最后,我们将学习一些图像的特征提取和分析方法。
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/966d62ccb04e852458fb770bf78a6529647d3586.png)
数字图像处理实验报告指导老师:***小组成员:刘立超 0710210230郑琳 0710210109南京理工大学自动化学院2010年12月1 图像变换(1)DCT 变换公式:①1维DCT 变换:1D 正变换1D 反变换f x = 1N F 0 + 2N F u N−1u =1cos 2x +1 uπ2N②2维DCT 变换:2D 正变换:2D 反变换:其中:c x = 1/ 2,x =01,x ≠0(2)C++文件中函数的参量形式分别为: ①DCT 变换输入参数:int height :图像高(行数) int width :图像宽(列数)unsigned char * input_image :读入的图像数据,对于灰度图像大小为WxH()110(0)()21()()cos 2N x F f x x F f x Nμπμ-=-==+=∑∑∑-=-=++=1010222])12(cos[])12(cos[),()()(),(M x N y M N MNc y x y x f c c F υμυμυμππ∑∑-=-=++=1010222])12(cos[])12(cos[),()()(),(M N M N c MNy x F c c y x f μυππυμυμυμ字节;unsigned char * output:处理后的图像数据,对于灰度图像大小为WxH字节int dimention :1--一维DCT 2--二维DCT函数说明:void DCT(unsigned char * input_image, double * output,int height, int width,int dimention)②DCT逆变换输入参数:int height:图像高(行数)int width:图像宽(列数)unsigned char * input_image:DCT数据;unsigned char * output:处理后的数据;int dimention :1-一维IDCT 2--二维IDCT函数说明:void IDCT(double * input_image, double * output,int height, int width,intdimention)(3)使用上述的函数对图像进行变换将变换结果使用log(1+|DCT()|)校正,并用vi工具进行观察,得到的源图像和变换后的图像如图1-1所示。
灰度变换与空间滤波之一(读数字图像处理学习halcon)
![灰度变换与空间滤波之一(读数字图像处理学习halcon)](https://img.taocdn.com/s3/m/f8f1b416bfd5b9f3f90f76c66137ee06eef94e50.png)
灰度变换与空间滤波之一(读数字图像处理学习halcon)接触机器视觉的东西到现在有好长一段时间了,从以前折腾opencv到现在折腾halcon,这么浑浑噩噩的一年折腾,也没折腾出什么深刻的认识。
回过头来想想,自己的学习过程完全是建造空中楼阁。
提到的opencv及halcon的大部分资料都在介绍函数,算子等。
因此决定,从基础做起,以数字图像处理这本书来理解halcon里的算子的想法的学习方式孕育而生。
前提以8bit灰度图作为研究对象(L=256),输入图像、输出图像的灰度值都在范围【0,255】.1、图像反转 s=L-1-r,即每个灰度值将会变成(255-r)。
这两图相加将会是一个灰度为255的图。
read_image (Image, 'fabrik')invert_image (Image, ImageInvert)add_image (Image, ImageInvert, ImageResult, 1, 0)适用于增强嵌入在一副图像暗区域中的白色或灰色细节,特别是当黑色面积在尺寸上站主导地位时。
例如图像中左下角的2.2、对数变换 s=c*log(1+r) 假设|R|表示输入图像的最大灰度值,将该图像使用对数变化让其灰度最大值为255 则c=255/(log(1+|R|))。
该变换将输入范围较窄的低灰度值映射到输出范围较宽的灰度值,高灰度值的范围却被压缩了。
read_image (Image, 'fabrik')log_image (Image, LogImage2, 2)min_max_gray (Image, LogImage2, 0, Min, Max, Range)scale_image (LogImage2, ImageScaled1, 256/Max, 0)3、幂律(伽马)变换 s=cr^γ.当γ<1时,低灰度区域(暗区),灰度值“拉伸”了,高灰度区域(亮区)灰度值“压缩”了,当γ>1时,结果相反。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
应于液晶显示器的显示
使用灰度线性拉伸的方法,将图像由I1-I2范围内线性扩展到0-255灰度。
1.2
图1增加盐噪声的原始细胞图像
在网上下载了一张细胞图像,并对其加了盐噪声,模拟题目中所要求的明亮 且孤立的点。
为了验证可滤除明亮且孤立的点的最佳方法,我选取了高斯滤波、均值滤波、 中值滤波、自适应中值滤波,并使用MATLAB编写了函数代码(非直接使用MATLAB自带函数程序) ,对原始图像进行了处理, 处理结果如上图所示。 高斯滤波几乎对 噪声没有作用,故 高斯滤波并不适合去除明亮且孤立的点 ;使用均值滤波可以使 原有噪声变得不那么“明亮” (求了平均值, 故白色噪声灰度值减小), 但也牺牲 了图片本身的清晰度,故 均值滤波效果一般 ;使用中值滤波可以使用矩阵内中值 代替灰度值极大或极小的点,大部分孤立且明亮的点均被滤除,故 中值滤波处理 效果较优 ,但中值滤波模板大小固定并不利于取得最佳结果(模板太小,不能有 效滤除全部噪声; 模板太大, 运算时间变慢, 图像细节信息减少) ;使用自适应中 值滤波可以很好的弥补中值滤波自身的缺点,自适应中值滤波使用噪声敏感度判 断所需模板大小,由处理结果可以看出,与中值滤波相比,自适应中值滤波所得 结果边界更清晰,图像细节信息更丰富,故 自适应中值滤波法对明亮且孤立的点 处理效果最优 。
1.1
(
对于明亮且孤立的点, 其应为脉冲且灰度值为255(uint8)噪声,即盐噪声, 为此,首先对下载的细胞图像增加盐噪声,再 选择不同滤波 方式进行滤除。
均值滤波: 均值滤波是典型的线性滤波算法,它是指在图像上对目ห้องสมุดไป่ตู้像素给一个模板, 该模板包括了其周围的临近像素 (以目标像素为中心的周围8个像素,构成一 个滤波模板, 即去掉目标像素本身) ,再用模板中的全体像素的平均值来代替 原来像素值。
图2采用不同滤波方法滤除明亮孤立的点
图3原图与直方图均衡化后的直方图
上图为原图像与使用直方图均衡化(64)后的结果,可以看出, 直方图均衡化 后图像的灰度信息更丰富 。
图4对原图进行对比度增强的结果
其过程为:
a、存储像素1,像素2像素9的值;
b、对像素值进行排序操作;
c、像素5的值即为数组排序后的中值。 优点:由于中值滤波本身为一种利用统计排序方法进行的非线性滤波方法, 故可以滤除在排列矩阵两边分布的脉冲噪声,并较好的保留图像的细节信息。
缺点:当噪声密度较大时,使用中值滤波后,仍然会有较多的噪声点出现。 自适应中值滤波:
1.
一种成熟的医学技术被用于检测电子显微镜生成的某类图像。 为简化检测任 务,技术决定采用数字图像处理技术。发现了如下问题:(1)明亮且孤立的点 是不感兴趣的点; (2)清晰度不够,特别是边缘区域不明显; (3)一些图像的 对比度不够;(4)技术人员发现某些关键的信息只在灰度值为I1-I2的范围, 因此,技术人员想保留I1-I2区间范围的图像, 将其余灰度值显示为黑色。 (5) 将处理后的I1-I2范围内的图像,线性扩展到0-255灰度,以适应于液晶显示器 的显示。请结合本章的数字图像处理处理,帮助技术人员解决这些问题。
自适应的中值滤波器也需要一个矩形的窗口Sxy,和常规中值滤波器不同的 是这个窗口的大小会在滤波处理的过程中进行改变(增大)。需要注意的是, 滤波器的输出是一个像素值,该值用来替换点(x, y)处的像素值,点(x, y)是滤波窗口的中心位置。
其涉及到以下几个参数:
其计算过程如下:
常规的中值滤波器,在噪声的密度不是很大的情况下(根据经验,噪声的 出现的概率小于0.2),效果不错。但是当概率出现的概率较高时,常规的中 值滤波处理后,仍然具有噪声点,并丢失了细节和边缘,效果不是很好。
优点: 速度快,实现简单;
缺点:均值滤波本身存在着固有的缺陷, 即它不能很好地保护图像细节, 在 图像去噪的同时也破坏了图像的细节部分, 从而使图像变得模糊, 不能很好地 去除噪声点。
其公式如下:
使用矩阵表示该滤波器则为:
中值滤波:
滤除盐噪声首选的方法应为中值滤波,中值滤波法是一种非线性平滑技术, 它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中 值。
3
当图片自身对比对不够时,应使用对比度增强的方法对图像进行对比度增
直方图均衡化:
直方图均衡化处理的 “中心思想” 是把原始图像的灰度直方图从比较集中的 某个灰度区间变成在全部灰度范围内的均匀分布。 直方图均衡化就是对图像进 行非线性拉伸,重新分配图像像素值, 使一定灰度范围内的像素数量大致相同。 直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。
优点:自适应滤波器不但能够滤除概率较大的椒盐噪声, 而且能够更好的 保护图像的细节,这是常规的中值滤波器做不到的。
缺点: 实现复杂,运行时间长。
2
对于图像清晰度不够, 边缘区域不够明显的情况, 应考虑使用图像锐化算 法对图像边缘区域进行增强,以强调图像的边缘与细节。
为验证强调图像边缘与细节的最佳算法,我主要运用了拉普拉斯算子,sobel算子,prewitt算子,roberts算子对图像边缘进行了增强。
优点:形式可以任意合成, 增强输入图像中感兴趣的灰度区域, 相对抑制那 些不感兴趣的灰度区域。
缺点: 是需要更多的用户输入。
技术人员想保留I1-I2区间范围的图像,将其余灰度值显示为黑色。应提取目标区域的灰度值特性, 将图像进行二值化, 即可保留范围在I1-I2区 间范围的图像,将其余灰度值显示为黑色。
优点:对于背景和前景都太亮或者太暗的图像非常有用,且计算量不大。
缺点:变换后图像的灰度级减少, 某些细节消失; 某些图像, 如直方图有高
峰,经处理后对比度不自然的过分增强。
灰度分段线性变换:
分段线性变换函数可以增强原图各部分的反差, 即增强输入图像中感兴趣的 灰度区域,相对抑制那些不感兴趣的灰度区域。