数字图像处理实习报告

合集下载

图像处理实习报告

图像处理实习报告

图像处理实习报告篇一:数字图像处理实习报告目录1、图像直方图实验 (1)2、图像的傅立叶变换实验 .......................................... 23、直方图均衡化实验 .................................................. 5 4.图像空间平滑实验 .................................................. 6 5.图像空间锐化实验.................................................. 8 6、图像分割实验-.................................................... 12 7、图像分割实验二 (17)1、图像直方图实验一、实验目的1.在ENVI软件中观察图像的灰度直方图,结合图像掌握直方图的性质和应运。

2.学有余力的同学可采用自己熟悉的开发语言如matlab,IDL等自己制作图像的灰度直方图。

二、实验素材ENVI软件,图像三、实验原理灰度直方图反映的是灰度级函数,描述的是图像中该灰度级的像素个数,它是图像的重要特征之一,反映了图像灰度分布情况。

任何一张图像都对应着唯一的灰度直方图,但不同的图像可以对应相应的直方图,可以用实验来验证。

四、实验过程下图为实验步骤截图:1五、实验心得:通过本次试验学会在Envi软件中查看图像的灰度直方图,在灰度直方图上,准确的反映了图像灰度分布的情况。

2、图像的傅立叶变换实验一、实验目的理解傅立叶变换的原理和傅里叶变换的使用,掌握运用ENVI进行傅立叶变换及频率域平滑和锐化的步骤和方法。

二、实验素材2Envi 软件,图像三、实验原理傅立叶变换原理:连续:反变换:F{f(x)}?F(u)??f(x)e?j2?uxdxj?1f(x)?F?1{F(u)}??F(u))ej2?uxdu1F(u)?N离散:f(x)?反变换:x?0N?1f(x)e?j2?ux/Nj2?ux/NN?1x?0F(u)e四、实验过程:利用傅立叶变换方法进行图像异常(高频)信息提取:1、打开ENVI4.7,单击FILE菜单,在下拉菜单中选择open image file 选项,单击打开自己的图像文件。

遥感数字图像处理教程实习报告

遥感数字图像处理教程实习报告

遥感数字图像处理教程实习报告《数字图像处理》课程实习报告( 2011 - 2012学年第 1 学期)专业班级:地信09-1班姓名:梁二鹏学号:310905030114指导老师:刘春国----------------------------------------------实习成绩:教师评语:教师签名:年月日实习一:图像彩色合成实习一、实验目的在学习遥感数字图像彩色合成基础上,应用所学知识,基于遥感图像处理软件ENVI进行遥感数字图像彩色合成。

二、实验内容彩色合成:利用TM图像can_tmr.img,实现灰度图像的密度分割、多波段图像的真彩色合成、假彩色合成和标准假彩色合成。

三、实验步骤1、显示灰度图像主要步骤:1、打开ENVI4.7,单击FILE菜单,在下拉菜单中选择open image file 选项,然后在弹出的对话框中选择can_tmr.img文件,单击打开。

2、在可用波段列表对话框中,选中某一波段图像,选中gray scale单选按钮,单击LOAD BAND按钮,显示一幅灰度图像。

3、在可用波段列表对话框中,选择其他某一波段图像,进行显示。

4、利用可用波段列表中的display按钮,同时有多个窗口显示多个波段图像。

5、链接显示。

利用图像窗口tool菜单下的link子菜单link display实现多图像的链接显示。

如图所示:红色方框。

6、使用tool菜单下的Cursor Location/value和pixel Locator功能在确定像素的值和位置。

2、伪彩色合成的主要步骤:1、打开ENVI4.7,单击FILE菜单,在下拉菜单中选择open image file 选项,然后在弹出的对话框中选择can_tmr.img 文件,单击打开。

2、在可用波段列表对话框中,选中gray scale单选按钮,单击LOAD BAND 按钮3、在#1 TM BAND1:CAN_TMR.IMG对话框中,单击菜单栏上的OVERLAY 菜单,在下拉菜单中选择DENSITY SLICE…按钮,在弹出的对话框中选择任意一个波段名称,4、在弹出的对话框中显示系统默认的密度分割,通过定义MIN和max的值可以定义需要分割的密度范围,通过EDIT RANGE ,deleted range,clear ranges 三个按钮可以对默认的分割进行修改,待修改完毕后,单击APPLY按钮,即可显示修改后的效果。

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

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

数字图像处理课程综合实习实习报告学院班级学号姓名日期指导教师一、实习目的和意义本实习内容旨在让同学们通过用VC等高级语言编写数字图像处理的一些基本算法程序,来巩固和掌握图像处理技术的基本技能,提高实际动手能力,并通过实际编程了解图像处理软件的实现的基本原理。

为学生进一步学习数字摄影测量、遥感和地理信息系统等专业课程以及应用图像处理解决实际问题奠定基础。

二、实习原理和方法实习一实现RAW->BMP格式的转换RAW格式:文件按照数字图像组成的二维矩阵,将像素按行列号顺序存储在文件中。

这种文件只含有图像像素数据,不含有信息头,因此,在读图像时,需要根据文件大小,计算图像所包含的行列号,或者需要事先知道图像大小(矩阵大小)。

但这种文件读取和保存简单。

RAW文件按图像上行到下行、左列到右列顺序存储,而BMP文件数据区按图像上下行到上行、左列列到右列顺序存储到数据区。

实现RAW文件到BMP文件的转换,需要为BMP文件生成文件头、信息头、颜色表、数据区,将RAW文件数据区赋值到BMP文件数据区。

实习二灰度线性变换点运算是指像素值(即像素点上的灰度值)通过运算改变之后,可以改善图象的显示效果。

这是一种像素的逐点运算,是旧图象与新图象之间的映射关系,是一种简单但却十分有效的一种图象处理手段。

常用方法有灰度线性变换、直方图均衡、对比度调整、直方图规定化、对数变换、指数变换、密度分割等方法。

灰度的线性变换就是指图像的中所有点的灰度按照线性灰度变换函数进行变换。

灰度变换方程如下:D0=f(Di)=a*Di+b该方程为线性方程。

式中参数Di为输入图像的像素的灰度值,参数D0为输出图像的灰度,a和b由给定条件确定。

实习三图像局部处理:高通滤波和低通滤波局部处理在处理某一像素时,利用与该像素相邻的一组像素,经过某种变换得到处理后图像中某一点的像素值。

目标像素的邻域一般是由像素组成的二维矩阵,该矩阵的大小为奇数,目标像素位于该矩阵的中央,即目标像素就是区域的中心像素。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告数字图像处理实验报告(一)实验目的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等高级语言编写数字图像处理的一些基本算法程序,来巩固和掌握图像处理技术的基本技能,提高实际动手能力,并通过实际编程了解图像处理软件的实现的基本原理。

《数字图像处理》实验报告

《数字图像处理》实验报告

《数字图像处理》实验报告数字图像处理是一门将图像进行数字化处理的学科,它通过计算机算法和技术手段对图像进行分析、增强、压缩和重建等操作。

在本次实验中,我们学习了数字图像处理的基本概念和常用算法,并通过实验来探索其应用和效果。

首先,我们进行了图像的读取和显示实验。

通过使用Python中的OpenCV库,我们能够轻松地读取图像文件,并将其显示在屏幕上。

这为我们后续的实验奠定了基础。

同时,我们还学习了图像的像素表示方法,了解了图像由像素点组成的原理。

这使我们能够更好地理解后续实验中的算法和操作。

接下来,我们进行了图像的灰度化实验。

灰度化是将彩色图像转换为灰度图像的过程。

在实验中,我们使用了不同的算法来实现灰度化操作,包括平均值法、最大值法和加权平均法等。

通过比较不同算法得到的灰度图像,我们发现不同算法对图像的处理效果有所差异,这使我们深入理解了灰度化的原理和应用。

随后,我们进行了图像的直方图均衡化实验。

直方图均衡化是一种用于增强图像对比度的方法。

在实验中,我们使用了直方图均衡化算法来对图像进行处理,并观察了处理前后的效果变化。

通过实验,我们发现直方图均衡化能够显著提高图像的对比度,使图像更加清晰和鲜明。

在进一步探索图像处理技术的过程中,我们进行了图像的滤波实验。

滤波是一种常用的图像处理操作,它通过对图像进行卷积操作来实现。

在实验中,我们学习了不同类型的滤波器,包括均值滤波器、高斯滤波器和中值滤波器等。

通过比较不同滤波器对图像的处理效果,我们发现每种滤波器都有其适用的场景和效果。

此外,我们还进行了图像的边缘检测实验。

边缘检测是一种用于提取图像边缘信息的方法。

在实验中,我们学习了不同的边缘检测算法,包括Sobel算子、Canny算子和Laplacian算子等。

通过比较不同算法对图像的处理效果,我们发现每种算法都有其独特的特点和应用。

最后,我们进行了图像的压缩实验。

图像压缩是一种将图像数据进行压缩以减小文件大小的方法。

数字图像处理实验报告

数字图像处理实验报告

实 验 内 容
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.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、⼆值化图像10.⽤im2bw将⼀幅灰度图像转化为⼆值图像,并且⽤imshow显⽰出来观察图像的特征。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告学院:地信院班级:生医1101 姓名:学号:指导教师:戴培山,喻罡时间: 2014.7.15数字图像处理实习一.目的1.用MATLAB或其他的语言来实现数字图像处理方面的一些操作;2.熟悉MATLAB7.1的一些基本函数及与数字图像处理相关的函数;3.熟悉图形用户界面(GUI),并用其来编写界面;4.熟悉数字图像处理课程中的一些知识点,如图像灰度变化,直方图,图像增强,滤波,图像复原,形态学处理,图像边缘检测,图像放大和缩小等等,并能用MATLAB实现以上的功能;5.掌握从简单到复杂的方法,一步一步的实现功能,并能耐心排错,养成合作互助精神。

二.任务1.实现图像的打开,显示,保存操作,实现图像的旋转;2.实现图像的灰度变换(图像反转,对数反转,幂次反转);3.实现图像的大小变换;4.实现图像的直方图处理及直方图均衡化;5.实现图像的空域和频域增强,实现均值滤波,维纳滤波,中值滤波及巴特沃斯低通、高通滤波;6.实现图像的加噪,如椒盐噪声、高斯噪声等;7.实现图像的形态学运算,如开运算,闭运算,膨胀运算,腐蚀运算等操作;8.实现图像的边缘检测,如Robert算子边缘检测,Sobel算子边缘检测,Prewitt算子边缘检测,Log 算子边缘检测,Canny算子边缘检测;9.实现整个界面的设计,编排,最终达到一种比较完美的效果。

三.主要内容程序和界面截图设计步骤1启动GUIDE在命令窗口中键入guide,启动GUIDE,显示如下图所示的“GUIDE Quick Start”对话框。

打开“GUIDE Quick Start”对话框,利用GUIDE 模板创建新的GUI,选择一个模板后,单机OK 按钮,在输出编辑器中打开GUI。

如下:2输出编辑器在GUIDE中打开GUI以后,它显示在输出编辑器中。

输出编辑器是所有GUIDE工具的控制面板。

可以通过拖拉控件来设计GUI,这些控件位于输出编辑器左侧的工具箱中,有按钮、弹出式菜单和坐标系等多种。

也可以用输出编辑器设置GUI控件的基本属性。

3菜单编辑器利用菜单编辑器,可以创建、设置、修改下拉式菜单和弹出式菜单。

在GUIDE中单机工具栏上的按钮,或者选择“Tools”菜单中的“Menu Editor…”选项,打开菜单编辑器的界面,如下图所示:上图中左上角第一个按钮用于创建下拉式菜单。

用户可以通过单击它来创建下拉式主菜单。

第二个按钮用于创建下拉式主菜单的子菜单最终GUI菜单栏运行效果图如下:4整体界面设计首次运行后会自动生成Pjimage.m和pjimage.fig两个文件,默认目录设在MATLAB安装目录下的雅丽课设文件夹里,pjimage.m中存放的是GUI的相关编码,以及相关控件的回调函数,今后可以对其进行代码修改,添加,删除等操作,pjimage.fig是GUI的界面文件。

这次课设主要是对pjiamge.m 文件里面代码的相关操作以实现相关功能!模块设计菜单栏各文件下面有相关的子文件。

如下图:灰度变化下的子文件有灰度变换、对数变换和图像反转。

工具栏设计如下:这些图标分别对应于文件打开、保存、图像还原。

数字图像处理其他方法设计,如下图:以及拓展的功能按钮系统各主要功能分析及演示1、文件的打开及保存在主菜单“文件”的下拉菜单中,有个“打开”选项,在其回调函数中添加打开某个文件的相关代码。

图1打开一幅图像后在界面窗口显示在m_file_save_Callback程序的基础上添加如下代码。

[filename, pathname] = uiputfile({'*.bmp','BMP files';'*.jpg;','JPGfiles';'*.tif;','tif files'}, 'Pick an Image');if isequal(filename,0) || isequal(pathname,0)return;elsefpath=fullfile(pathname, filename);¨endimg_src=getappdata(handles.figure_pjimage,'img_src');imwrite(img_src,fpath);准备把当前文件*.tif保存到当前目录下,文件保存对话框中目录下的该文件,保存的文件名和路径名保存到newfile和newpath中。

2图像增强图像增强是数字图像处理的基本内容之一,其目的是根据应用需要突出图像中的某些“有用”的信息,削弱或去除不需要的信息,以达到扩大图像中不同物体特征之间的差别,使处理后的图像对于特定应用而言,比原始图像更合适,或者为图像的信息提取以及其他图像分析技术奠定了基础。

一般情况下,经过增强处理后,图像的视觉效果会发生改变,这种变化意味着图像的视觉效果得到了改善,某些特定信息得到了增强。

输入参数:获得增强图像:3 基本变换大小变换和旋转为几何变换。

几何变换又称为几何运算,它是图像处理和图像分析的重要内容之一。

通过几何运算,可以根据应用的需要使原图像产生大小、形状、和位置等各方面的变化。

简单的说,几何变换可以改变像素点所在的几何位置,以及图像中各物体之间的空间位置关系,这种运算可以被看成是将各物体在图像内移动,特别是图像具有一定的规律性时,一个图像可以由另外一个图像通过几何变换来产生。

实际上,一个不受约束的几何变换,可将输入图像的一个点变换到输出图像中的任意位置。

几何变换不仅提供了产生某些特殊图像的可能,甚至还可以使图像处理程序设计简单化。

从变换性质来分可以分为图像的位置变换、形状变换等。

本次课设,我们主要是为了实现大小变换和图像的旋转1)大小变换原来的图像点击“ok”2)旋转旋转后的图像,可以设置任意角度参数,得到的效果不相同。

4 灰度变化灰度变换是将彩色图像转换为灰度图像,MATLAB把灰度图像存储为一个数据矩阵,该数据矩阵中的元素分别代表了图像中的像素,其直为颜色的灰度值。

大多数情况下,灰度图像很少跟颜色映射表一起保存,但是在显示灰度图像时,MATLAB仍然在后台使用系统预定义的默认的灰度颜色映射表对数变换与图像反转是基于点的图像增强,需要在灰度变换的基础上进行操作。

1)灰度变换前的图像变换后图像2)对数变换后的图像还可以设置其他的参数3)图像反转后的图像(就是图像对比度增强,黑白颜色看起来像互换)5、直方图均衡直方图均衡属于灰度变换增强,灰度变换增强是把对比度弱的图像变成对比度强的图像。

由于各种拍摄条件的限制,导致图像的对比度比较差,图像的直方图分布不够均衡,主要的元素集中在几个像素值附近,通过直方图均衡化,使得图像中各个像素值尽可能均匀分布或者服从一定形式的分布,从而提高图像处理的对比度。

图像的直方图是一个统计像素个数的图形,它统计一副图像中相同像素值的个数,即一幅图像中有多少个像素值为1,有多少个像素值为2,利用图像的直方图对图像进行增强是一种简单有效地方法。

直方图均衡化是将一副图像的像素值均匀地分布在图像的各个区间上,从而使图像的视觉效果得到改善。

在MATLAB中,用于直方图均衡化的函数是histeq。

1)原来的图像和均衡化后的图像2)原来的直方图和均衡化的直方图3.6、图像二值化图像二值化是将原图像转换成二值图像,二值图像只需要一个数据矩阵,每个像素只能取两个灰度值0或者1中的一个。

二值图像可以采用uint8或double类型存储。

7 加噪和滤波数字图像中往往存在各种各样的噪声,噪声使获得的图像的像素值不能反映真实场景亮度的误差。

为了模拟不同方法的去噪效果,MATLAB图像处理工具箱中使用imnoise函数对一幅图像加入不同类型的噪声。

(使用以上的原图加噪,之所以没有用彩色图像是因为只有真彩色图像加噪后才能滤波成功,而真彩色的图像不易寻找)滤波是一种图像增强的技术。

对一幅图像进行滤波可以强调一些特征而去除另外一些特征。

通过图像的滤波可以实现图像的光滑、锐化和边缘检测。

图像滤波是一种领域操作,输出图像的像素值是对输入图像的像素的领域值进行一定的处理而得到的。

线性滤波是指对输入图像的领域进行线性算法操作得到输出图像。

均值滤波是线性滤波,中值滤波和维纳滤波是空间域滤波增强,巴特沃斯则是频率域的图像增强。

A、加噪处理1)椒盐噪声2)高斯噪声3)斑点噪声B、以椒盐噪声为例进行不同类型的滤波处理1)椒盐噪声加噪及均值滤波效果(椒盐噪声参数设置为0.5)2)椒盐噪声加噪及中值滤波效果(0.5)3)椒盐噪声加噪及维纳滤波效果(0.5)4)椒盐噪声加噪及巴特沃斯低通滤波效果(0.5)5)椒盐噪声加噪及巴特沃斯高通滤波效果(0.5)8边缘检测在图像中,边缘是指图像中对象的边界,即反应图像中像素值剧烈变化的曲线。

MATLAB图像处理工具箱使用使用edge函数来检测边界,这个函数寻找像素值剧烈变化的像素点。

edge函数用来求边界的方法很多,其中有roberts,sobel,prewitt,log,canny等。

1)prewitt算子检测后的图像2)sobel算子检测后的图像3)log算子检测后的图像4)canny算子检测后的图像5)roberts算子检测后的图像6)零交叉9 形态学运算形态学运算是由一组形态学的代数运算子组成,是用一定形态的结构元素找到图像中的对应形状以达到图像分割识别的目的,基本操作有腐蚀、膨胀、开运算和闭运算。

腐蚀和膨胀是数学形态学的基本操作,数学形态学的很多操作都是以腐蚀和膨胀为基础推导的算法。

膨胀是将像素加到图像中对象的边缘,而腐蚀是指删除图像中对象的边缘。

开操作是先腐蚀后膨胀,闭操作是先膨胀再腐蚀。

1)膨胀2)腐蚀3)开操作4)闭操作截图功能四:设计过程中遇到的问题及解决方案1 界面设计中遇到的问题在设计界面滚动条的时候,程序代码粘贴上去了,没有错误,但运行之后滚动条上面没有出现数值,查找资料询问他人知道,是因为滚动条上面的static text 的tag属性没有设置,滚动条的该属性也没有设置。

设置之后就运行成功了。

初始弹出的界面框,标题是untitled,查找原因发现是在界面保存的时候没有按照要求命名,这个不能直接更改,可能会出现问题吧,只有先备份一个。

在各种处理方法做好按钮加比较大的框的时候,加完后发现,在已完成的按钮上弹不出callback 界面,试了各种方法,询问了别人,开始的时候是让所有的程序都编写好之后再加框,后来还是不能运行。

最终,当请教别人调程序的时候,被告知框的类型错误,不应该是Bushbutton,而应该是Panel,这样就不会出现错误了。

2 运行的过程中出现的问题最开始运行的时候更改和添加相关程序后,发现图片可以保存,但却不可以打开,通过调试程序,清除界面上的相关图标等方法,发现时保存的界面名称出现了问题。

相关文档
最新文档