用matlab实现图像灰度变换课程设计

合集下载

基于matlab的图像处理课程设计

基于matlab的图像处理课程设计

基于matlab的图像处理课程设计一、课程目标知识目标:1. 学生能理解图像处理的基本概念,掌握图像的数字化表示方法。

2. 学生能掌握Matlab软件的基本操作,运用其图像处理工具箱进行图像的读取、显示和保存。

3. 学生能掌握图像处理的基本算法,如灰度变换、图像滤波、边缘检测等,并理解其原理。

技能目标:1. 学生能运用Matlab进行图像处理操作,解决实际问题。

2. 学生能通过编程实现图像处理算法,具备一定的程序调试和优化能力。

3. 学生能运用所学知识,结合实际问题,设计简单的图像处理程序。

情感态度价值观目标:1. 学生通过学习图像处理,培养对计算机视觉和人工智能领域的兴趣,激发创新意识。

2. 学生在课程实践中,培养团队协作精神,提高沟通与表达能力。

3. 学生能认识到图像处理技术在生活中的广泛应用,增强学以致用的意识。

分析课程性质、学生特点和教学要求,本课程目标旨在使学生在掌握基本图像处理知识的基础上,通过Matlab软件的实践操作,培养其编程能力和解决实际问题的能力。

同时,注重培养学生的团队协作和情感态度,使其在学习过程中获得成就感,激发学习兴趣。

课程目标将具体分解为学习成果,以便后续教学设计和评估。

二、教学内容1. 图像处理基础理论:- 数字图像概念及表示方法- 图像处理的基本操作:读取、显示、保存- 像素运算与邻域处理2. Matlab基础操作:- Matlab软件安装与界面介绍- 数据类型与基本运算- 矩阵运算与函数编写3. 图像处理算法:- 灰度变换与直方图处理- 图像滤波:低通滤波、高通滤波- 边缘检测:Sobel算子、Canny算子4. 实践项目:- 图像增强与去噪- 图像分割与特征提取- 目标检测与跟踪5. 教学大纲:- 第一周:图像处理基础理论,Matlab基础操作- 第二周:灰度变换与直方图处理,图像滤波- 第三周:边缘检测,实践项目一- 第四周:图像分割与特征提取,实践项目二- 第五周:目标检测与跟踪,课程总结与展示教学内容根据课程目标,结合教材章节进行选择和组织,确保科学性和系统性。

参考matlab界面编程实现灰度变换

参考matlab界面编程实现灰度变换

图形图像处理课程大作业姓名:班级:学号:界面编程实现图像灰度变换摘要正文1.MATLAB界面编程简介:2. 图像的灰度变换简介3. 采用MATLAB Guide 设计界面3.1 问题分析:3.2 实验方法:3.3 实验结果:4. 线性变换的算法设计与实现:4.1 问题分析:4.2 实验方法:4.3 实验结果:5. 对数变换的算法设计与实现5.1 问题分析:5.2 实验方法:5.3 实验结果:6. 幂律变换的算法设计与实现:6.1 问题分析:6.2 实验方法:6.3 实验结果:实验心得附录1 .参考文献:2. 源代码: 目录1010101113131313界面编程实现图像灰度变换问题描述:本课题主要解决的问题是通过MATLAB界面编程实现图像的灰度变换,包括线性灰度变换、对数灰度变换、幂律灰度变换,以此来实现图像增强,使图像更适合于进一步的分析和对它内容的提取。

实现界面编程可以更方便的对图片进行操作,例如可以打开任意一张需要处理的图片,可以使图像处理结果更直观,对比更明显,更利于进行观察,同时可以实现保存处理后的图片,这样,图像的操作更简洁、直接。

摘要本次报告旨在完成以下几个任务:1、MATLAB界面编程简介;2、图像的灰度变换简介;3、采用MATLAB Guide 设计界面,设计实现下列功能的按钮:可以读入并显示任意一张图像,可以实现图像灰度变换(线性变换、对数变换和幂律变换),可以保存处理后的图片,可以退出程序,点击相应的按钮可以实现相应的功能;4、线性变换的算法设计与实现;5、对数变换的算法设计与实现;6、幂律变换的算法设计与实现。

结果如正文所示。

正文1.MATLAB 界面编程简介:图形用户界面是由窗口、光标、按键、菜单、文字说明等对象构成的一个用户界面。

用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,如实现计算、绘图等。

若想制作一个可供反复使用且操作简单的专用工具,则图形用户界面是非常好的选择之一。

matlab(图形图像的课程设计)

matlab(图形图像的课程设计)

图形图像处理课程设计设计说明书灰度图像的旋转变换学生姓名学号班级成绩指导教师计算机科学与技术系图形图像处理课程设计评阅书摘要本次课程设计是在Matlab6.0开发工具下,实现灰度图像的旋转变换。

MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境;灰度变换(Gray-Scale Transformation,GST) 处理是图像增强处理技术中一种非常基础、直接的空间域图像处理方法,也是图像数字化软件和图像显示软件的一个重要组成部分。

关键词:灰度图像;Matlab;旋转变换目录1.课题描述 (1)2可行性研究 (2)2.1系统的实用价值 (2)2.2灰度图像 (2)2.3灰度图像的旋转 (2)2.4系统的流程图 (3)2.5系统的数据流图 (4)2.6系统的数据字典 (4)3.需求分析 (5)3.1系统功能 (5)3.2系统开发环境 (5)3.3系统的适应范围 (5)3.4系统的用途 (5)4.程序编码与设计 (6)4.1程序源代码 (6)4.2系统的测试结果 (6)总结 (7)参考文献 (8)1.课题描述该项目利用Matlab6.0作为开发工具,实现灰度图像的旋转。

所谓图像旋转实际上就是指将图像中所有的像素(基准点除外)按给定的角度Ø在XY平面内顺时针或逆时针方向沿圆弧路径进行变换的过程。

2可行性研究2.1系统的实用价值图像是一种重要的信息源,通过图像处理可以帮助人们了解信息的内涵。

在图像分析中,对输入图像进行特征抽取、分割和匹配前所进行的处理。

图像预处理的主要目的是消除图像中无关的信息,恢复有用的真实信息,增强有关信息的可检测性和最大限度地简化数据,从而改进特征抽取、图像分割、匹配和识别的可靠性。

预处理过程一般有数字化、几何变换、归一化、平滑、复原和增强等步骤。

用于改正图像采集系统的系统误差和仪器位置的随机误差所进行的变换。

基于MATLAB的彩色图像灰度化处理

基于MATLAB的彩色图像灰度化处理

目录第1章绪论............................................................................................................................ - 0 - 第2章设计原理.................................................................................................................... - 1 - 第3章彩色图像的灰度化处理............................................................................................ - 2 - 3.1加权平均法 .. (2)3.2平均值法 (2)3.3最大值法 (3)3.4举例对比 (4)3.5结果分析 (5)第4章结论.......................................................................................................................... - 7 - 参考文献.................................................................................................................................... - 7 - 附录............................................................................................................................................ - 8 -基于Matlab的彩色图像灰度化处理第1章绪论在计算机领域中,灰度数字图像是每个像素只有一个采样颜色的图像。

基于matlab的图像处理(一)

基于matlab的图像处理(一)

1烟台大学通信工程专业综合课程设计基于MATLAB的图像直方图灰度变换院系:光电信息科学技术学院专业:通信工程班级:光114-1姓名:2014年11月18 日基于MATLAB的图像直方图灰度变换 (3)一、原理部分 (3)1、图像的灰度直方图 (3)2、灰度直方图的均衡化 (4)3、灰度直方图的规定化 (5)4、频域低通滤波 (6)5、二值图像及其面积的计算 (6)二、实验设计......................................................................................... 错误!未定义书签。

1、实验流程................................................................................... 错误!未定义书签。

2、仿真过程................................................................................... 错误!未定义书签。

3、结果分析................................................................................... 错误!未定义书签。

三、设计分工和主要贡献................................................................... 错误!未定义书签。

1、设计分工................................................................................. 错误!未定义书签。

2、课程总结感言......................................................................... 错误!未定义书签。

matlab图片处理课程设计

matlab图片处理课程设计

matlab图片处理课程设计一、课程目标知识目标:1. 掌握MATLAB软件的基本操作,了解其在图片处理中的应用;2. 学习并掌握使用MATLAB进行图片读取、显示、保存等基本功能;3. 学习并掌握MATLAB中的图像处理工具箱,了解其功能及使用方法;4. 了解常见的图片处理技术,如灰度化、二值化、滤波、边缘检测等,并掌握其在MATLAB中的实现方法。

技能目标:1. 能够独立使用MATLAB进行图片的读取、显示、保存等操作;2. 能够运用MATLAB中的图像处理工具箱进行图片处理,实现灰度化、二值化、滤波、边缘检测等功能;3. 能够分析图片处理技术的原理,根据实际问题选择合适的图片处理方法;4. 能够结合实际问题,运用MATLAB进行图片处理,解决具体问题。

情感态度价值观目标:1. 培养学生对图像处理技术的兴趣,激发学生探索图像处理领域知识的热情;2. 培养学生动手实践、团队协作的能力,养成合作、分享的学习习惯;3. 培养学生运用所学知识解决实际问题的能力,增强学生的自信心和成就感;4. 引导学生认识到图像处理技术在现实生活中的应用,提高学生对技术改变生活的认识。

课程性质:本课程为实践性较强的课程,结合课本知识,让学生在实际操作中掌握图片处理技术。

学生特点:学生具备一定的计算机操作能力,对图像处理有一定了解,但可能对MATLAB软件及图像处理工具箱的使用不够熟悉。

教学要求:教师需注重理论与实践相结合,引导学生通过实际操作掌握图片处理技术,同时关注学生的个体差异,给予个别指导。

在教学过程中,关注学生的学习进度和反馈,及时调整教学方法和节奏,确保课程目标的实现。

二、教学内容本课程教学内容主要依据课程目标,结合教材相关章节,进行如下安排:1. MATLAB软件入门- MATLAB软件安装与界面介绍- 基本数据类型、运算符和数组操作- MATLAB编程基础:流程控制、函数编写与调试2. 图像处理基础- 图像的读取、显示与保存- 图像类型及转换:彩色图像、灰度图像、二值图像- 图像的基本属性:分辨率、像素、颜色空间3. 图像处理方法- 灰度化处理:加权平均法、最大值法、最小值法等- 二值化处理:全局阈值法、局部阈值法、Otsu方法等- 滤波处理:均值滤波、中值滤波、高斯滤波等- 边缘检测:Sobel算子、Prewitt算子、Canny算子等4. MATLAB图像处理工具箱- 图像处理工具箱的安装与使用- 常用函数介绍:imread、imshow、imwrite、rgb2gray、edge等- 结合实例进行图像处理操作演示教学内容安排与进度:1. 第1周:MATLAB软件入门2. 第2周:图像处理基础3. 第3周:图像处理方法(灰度化、二值化、滤波)4. 第4周:图像处理方法(边缘检测)及MATLAB图像处理工具箱教学内容依据教材章节进行组织,确保科学性和系统性。

matlab数字图像处理课程设计

matlab数字图像处理课程设计

matlab数字图像处理课程设计一、课程目标知识目标:1. 学生能理解数字图像处理的基本概念,掌握图像的表示方法和存储格式。

2. 学生能掌握MATLAB软件的基本操作,并运用其进行数字图像处理。

3. 学生能掌握图像的灰度变换、图像滤波、边缘检测等基本图像处理技术。

4. 学生能了解频域图像处理的基本原理,并运用MATLAB进行频域滤波。

技能目标:1. 学生能够运用MATLAB软件进行数字图像的读取、显示和保存。

2. 学生能够运用MATLAB实现基本的图像处理算法,如灰度变换、滤波等。

3. 学生能够分析图像处理算法的效果,并进行相应的参数调整。

4. 学生能够运用所学知识解决实际问题,如图像增强、边缘检测等。

情感态度价值观目标:1. 学生对数字图像处理产生兴趣,培养主动学习和探究的精神。

2. 学生通过实践操作,培养团队合作意识和解决问题的能力。

3. 学生能够认识到数字图像处理在科技、医疗、安全等领域的广泛应用,增强社会责任感。

4. 学生能够遵循学术道德,尊重他人成果,树立正确的价值观。

课程性质:本课程为数字图像处理相关学科的教学实践,旨在通过MATLAB软件的使用,使学生掌握数字图像处理的基本方法和技能。

学生特点:学生具备一定的数学基础和编程能力,对图像处理有一定了解,但实践经验不足。

教学要求:结合课本内容,注重理论与实践相结合,强调学生的动手实践能力,培养解决实际问题的能力。

通过课程目标的具体分解,使学生在学习过程中能够达到预期的学习成果,为后续深入学习打下坚实基础。

二、教学内容本课程教学内容围绕以下几部分展开:1. 数字图像处理基础理论- 图像的表示与存储格式- 图像处理的基本操作(读取、显示、保存)2. MATLAB软件操作- MATLAB界面与基本操作- MATLAB图像处理工具箱的使用3. 灰度变换与图像增强- 灰度变换函数及其应用- 直方图均衡化与规定化4. 图像滤波- 空域滤波器设计- 频域滤波器设计- 常用滤波算法(如高斯滤波、中值滤波等)5. 边缘检测- 基本边缘检测算法(如Sobel、Prewitt)- 高级边缘检测算法(如Canny)6. 频域图像处理- 频域变换(傅里叶变换、DCT等)- 频域滤波(低通、高通、带通滤波器)教学大纲安排如下:1. 基础理论(1课时)2. MATLAB软件操作(2课时)3. 灰度变换与图像增强(2课时)4. 图像滤波(2课时)5. 边缘检测(2课时)6. 频域图像处理(2课时)教学内容与教材章节紧密关联,通过以上安排,使学生系统掌握数字图像处理的基本概念、方法和技能。

彩色图转灰度图--matlab-实现代码

彩色图转灰度图--matlab-实现代码

(一):彩色图像转灰度图1、设计任务1) 读入彩色和灰度图像并显示;2) 对彩色图像转化为灰度图像并显示;3) 比较两种方法的效果。

2、设计目的1) 掌握彩色图转灰度图的基本原理与方法;2) 初步掌握MATLAB的使用方法;3) 了解MATLAB在数字信号处理,尤其是图像处理中显现出来的优势。

3、源代码% 把RGB格式的图片转换为YUV格式。

clear; clc;x=imread('lena512.BMP');[line,row,dim]=size(x);x1=double(x); % 数据类型转换subplot(1,3,1) % 分割当前绘图窗口为(1,3)的区域,显示此图片与1号区域imshow(uint8(x)) % 数据类型转换,并且显示当前图片title('原图');% 矩阵乘,根据【RGB】转【YUV】关系转灰度图Y1=0.299*x(:,:,1)+0.587*x(:,:,2)+0.114*x(:,:,3);y1=[round(Y1)]; % 取整subplot(1,3,2)imshow(uint8(y1))title('根据各分量转换关系转换后图片');% 求RGB各个分量均值转灰度图Y2=(x(:,:,1)+x(:,:,2)+x(:,:,3))/3;y2=[round(Y2)];subplot(1,3,3)imshow(uint8(y2))title('求均值转换后图片');图(1)彩色转灰度图程序运行结果4、结果分析由运行结果可以看出,根据RGB到YUV各个分量关系转换得到的灰度图比较真实,而用简单的求RGB各个分量的均值转弧度图,其结果很不理想,图片基本看不清楚原来的轮廓。

(二):对灰度图像实现按比例缩小和放大1、设计任务1) 对灰度图实现在行上k1=0.6,列上k2=0.75的按比例缩小;2) 对灰度图实现在行上k1=1.2,列上k2=1.5的按比例放大;2、设计目的1) 掌握图像的放大和缩小原理;2) 用MATLAB实现图像的按比例放大和缩小;3) 明白图像的放大和缩小并不是简单的互为逆过程。

matlab灰度处理课程设计

matlab灰度处理课程设计

matlab灰度处理课程设计一、课程目标知识目标:1. 学生能理解灰度处理的原理及其在图像处理中的重要性。

2. 学生能掌握利用MATLAB进行灰度转换、直方图均衡化等基本操作。

3. 学生能解释不同灰度变换对图像视觉效果的影响。

技能目标:1. 学生能够独立运用MATLAB软件进行图像的读取、显示和保存。

2. 学生能够编写MATLAB程序完成灰度变换,包括但不限于线性灰度变换、对数变换和幂次变换。

3. 学生能够分析图像直方图,并应用直方图均衡化方法改善图像质量。

情感态度价值观目标:1. 培养学生对图像处理技术的兴趣和探究精神,激发学生进一步学习的欲望。

2. 增强学生的团队合作意识,通过小组讨论、实践操作等方式,使学生体验知识共享与交流的重要性。

3. 培养学生严谨的科学态度,通过实验数据的处理和分析,让学生认识到数学与计算机技术在图像处理领域中的实际应用。

课程性质:本课程为实践性较强的选修课程,旨在通过MATLAB软件操作,帮助学生将理论知识与实际应用相结合。

学生特点:学生为高年级本科生,具备一定的数学基础和编程能力,对图像处理有一定了解。

教学要求:结合学生特点,课程注重理论与实践相结合,强调学生的动手操作能力,以实现课程目标。

通过具体的学习成果分解,为后续教学设计和评估提供依据。

二、教学内容1. 理论知识:- 图像处理基本概念回顾:图像类型、色彩空间、图像质量评价。

- 灰度处理原理:线性灰度变换、对数变换、幂次变换、直方图均衡化。

2. 实践操作:- MATLAB软件入门:熟悉MATLAB环境,掌握基本命令与操作。

- 图像的读取、显示与保存:使用MATLAB内置函数实现图像的基本操作。

- 灰度变换实现:编写程序完成不同类型的灰度变换。

- 直方图均衡化:分析图像直方图,应用均衡化技术改善图像对比度。

3. 教学内容安排与进度:- 第一周:图像处理基本概念回顾,灰度处理原理学习。

- 第二周:MATLAB软件入门,图像读取、显示与保存操作。

基于matlab的图像处理课程设计

基于matlab的图像处理课程设计

基于matlab的图像处理课程设计一、教学目标本课程的教学目标是使学生掌握基于MATLAB的图像处理基本理论和方法,培养学生运用MATLAB进行图像处理和分析的能力。

具体分解为以下三个维度:1.知识目标:学生需要掌握MATLAB图像处理的基本概念、原理和方法,包括图像读取、显示、转换、滤波、边缘检测等。

2.技能目标:学生能够熟练使用MATLAB进行图像处理操作,具备解决实际图像处理问题的能力。

3.情感态度价值观目标:培养学生对图像处理技术的兴趣,使其认识图像处理在实际生活中的重要性,激发学生探索新知识、新方法的欲望。

二、教学内容教学内容围绕MATLAB图像处理展开,具体包括以下几个部分:1.MATLAB图像处理基础:介绍MATLAB图像处理工具箱的安装和使用,图像的基本概念和属性,图像的读取和显示。

2.图像处理基本算法:包括图像的灰度变换、空间滤波、频率域滤波、边缘检测、图像分割等。

3.图像处理实践案例:通过具体案例使学生掌握图像处理方法在实际问题中的应用,如车牌识别、人脸识别等。

4.图像处理进阶知识:介绍一些先进的图像处理方法,如图像压缩、特征提取、机器学习在图像处理中的应用等。

三、教学方法为了提高教学效果,我们将采用以下几种教学方法:1.讲授法:用于讲解图像处理的基本概念、原理和方法。

2.案例分析法:通过分析实际案例,使学生掌握图像处理方法在实际问题中的应用。

3.实验法:安排实验课,让学生亲自动手操作,加深对图像处理方法的理解。

4.讨论法:学生进行课堂讨论,激发学生的思维,培养学生的创新能力。

四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:《MATLAB图像处理教程》等相关教材。

2.参考书:提供一些图像处理领域的经典论文和书籍,供学生课后阅读。

3.多媒体资料:制作课件、视频等多媒体资料,丰富教学手段。

4.实验设备:计算机、MATLAB软件、摄像头等实验设备,用于实验教学。

实验二 Matlab图像处理

实验二 Matlab图像处理

实验二Matlab图像处理一、实验目的利用Matlab图像处理工具箱中的函数实现各种图像常规处理,深化课程理论知识认识。

二、实验内容和要求实习内容:利用matlab读取BMP图像,实现图像点变换、空间域局部处理、几何变换、彩色合成和彩色变换。

三、实习步骤1 图像的灰度变换I= imread('cameraman-8.bmp','bmp');figure; subplot(2,2,1), imshow(I);subplot(2,2,2),imhist(I);[counts1,x1] = imhist(I);%观察Counts,x的值subplot(2,2,3),stem(x1,counts1);J=imadjust(I,[0.1 0.7],[0.0 0.9]);subplot(2,2,4), imshow (J);figure;subplot(2,3,1),imshow(I);subplot(2,3,2),imshow(J);subplot(2,3,4),imhist(I);subplot(2,3,5),imhist(J);[counts2,x2] = imhist(J);subplot(2,3,6), stem(x2,counts2);2 图像直方图处理2.1直方图均衡化I=imread('cameraman-8.bmp','bmp') ;J=histeq(I) ;figure(1),subplot(2,2,1),imshow(I),subplot(2,2,2),imshow(J);figure(1),subplot(2,2,3),imhist(I),subplot(2,2,4),imhist(J);2.2直方图规定化I1=imread('TM5.bmp','bmp');I2=imread('TM3.bmp','bmp');K1=histeq(I1,imhist(I2));figure;subplot(3,2,1),imshow(I1);subplot(3,2,2), imhist(I1);subplot(3,2,3),imshow(I2);subplot(3,2,4), imhist(I2);subplot(3,2,5),imshow(K1);subplot(3,2,6), imhist(K1);3 图像空间域平滑3.1 用均值滤波器实现图像空间域的平滑I=imread('cameraman-8.bmp','bmp');J=imnoise(I,'gaussian'); %添加高斯噪声K=imnoise(I,'salt & pepper'); %添加椒盐噪声M=imnoise(I,'speckle'); %添加乘性噪声H=ones(3,3)/9; %3*3的均值去噪模板I1=imfilter(I,H);J1=imfilter(J,H);K1=imfilter(K,H);M1=imfilter(M,H) ; %去噪figure;subplot(2,4,1),imshow(I);title('原图');subplot(2,4,2),imshow(J); title('高斯噪声图像');subplot(2,4,3),imshow(K); title('椒盐噪声图像');subplot(2,4,4),imshow(M); title('乘性噪声图像');subplot(2,4,6),imshow(J1); title('高斯噪声滤波图像'); subplot(2,4,7),imshow(K1); title('椒盐噪声滤波图像'); subplot(2,4,8),imshow(M1) ; title('乘性噪声滤波图像') ;3.2 用中值滤波器实现图像空间域的平滑I=imread('cameraman-8.bmp');I1=imnoise(I,'gaussian');I2=imnoise(I,'salt & pepper',0.02);I3=imnoise(I,'speckle');J=medfilt2(I,[3,3]); %3×3中值滤波模板J1=medfilt2(I1,[3,3]);J2=medfilt2(I2,[3,3]);J3=medfilt2(I3,[3,3]);figure,subplot(2,4,1),imshow(I) ; title('原图') ;subplot(2,4,2),imshow(I1) ; title('添加高斯噪声') ; subplot(2,4,3),imshow(I2) ; title('添加椒盐噪声') ; subplot(2,4,4),imshow(I3) ; title('添加乘性噪声') ; subplot(2,4,6),imshow(J1) ;title('高斯噪声3*3中值滤波') ;subplot(2,4,7),imshow(J2) ;title('椒盐噪声3*3中值滤波') ;subplot(2,4,8),imshow(J3) ;title('乘性噪声3*3中值滤波') ;K=medfilt2(I, [5,5]); %5×5中值滤波模板K1=medfilt2(I1,[5,5]);K2=medfilt2(I2,[5,5]);K3=medfilt2(I3,[5,5]);figure;subplot(2,2,1),imshow(K); title('原图5*5中值滤波');subplot(2,2,2),imshow(K1) ; title('高斯噪声5*5中值滤波') ;subplot(2,2,3),imshow(K2); title('椒盐噪声5*5中值滤波');subplot(2,2,4),imshow(K3) ; title('乘性噪声5*5中值滤波');4 图像空间域锐化I=imread('cameraman.bmp','bmp')H=fspecial('sobel')%用sobel算子做模板J=imfilter(I,H)figure,subplot(1,2,1),imshow(I),subplot(1,2,2),imshow(J);5 图像几何变换5.1 缩放I=imread('cameraman.bmp', 'bmp') ;J=imresize(I,2) ;K=imresize(I,0.5) ;figure(1),subplot(),imshow(I),title('原图'),figure(2),subplot(),imshow(J),title('放大两倍的图'),figure(3),subplot(),imshow(K),title('缩小0.5倍的图') ;5.2旋转I=imread('cameraman.bmp', 'bmp') ;M=imrotate(I,45) ;figure;subplot(1,2,1),imshow(I),subplot(1,2,2),imshow(M) ;6、彩色图像处理6.1 彩色变换I=imread('autumn.bmp','bmp');HSV=rgb2hsv(I) ;RGB=hsv2rgb(HSV) ;figure;subplot(1,3,1),imshow(I),title('原图'),subplot(1,3,2),imshow(HSV),title('HSV图像');subplot(1,3,3),imshow(RGB),title('RGB图像') ;6.2彩色合成I=imread('autumn.bmp','bmp');J1=I;J2=I;J3=I;J4=I;J5=I;J1(:,:,1)=I(:,:,2), J1(:,:,2)=I(:,:,3), J1(:,:,3)=I(:,:,1) ;J2(:,:,1)=I(:,:,1), J2(:,:,2)=I(:,:,3), J2(:,:,3)=I(:,:,2) ;J3(:,:,1)=I(:,:,2), J3(:,:,2)=I(:,:,1), J3(:,:,3)=I(:,:,3) ;J4(:,:,1)=I(:,:,3), J4(:,:,2)=I(:,:,2), J4(:,:,3)=I(:,:,1) ;J5(:,:,1)=I(:,:,3), J5(:,:,2)=I(:,:,1), J5(:,:,3)=I(:,:,2) ; figure,subplot(2,3,1),imshow(I),title('原图');subplot(2,3,2),imshow(J1),title('变换一') ;subplot(2,3,3),imshow(J2),title('变换二') ;subplot(2,3,4),imshow(J3),title('变换三') ;subplot(2,3,5),imshow(J4),title('变换四') ;subplot(2,3,6),imshow(J5),title('变换五');附录:函数说明Imread():读取图像Imadjust():Adjust image intensity values or colormap Imhist():Display histogram of image datastem():Plot discrete sequence datasubplot():Create axes in tiled positionshisteq():Enhance contrast using histogram equalization imshow():Display imageimnoise():Add noise to imageones():Create array of all onesmedfilt2():2-D median filteringrgb2hsv():Convert RGB colormap to HSV colormap hsv2rgb():Convert HSV colormap to RGB colormap。

用matlab实现图像灰度变换课程设计

用matlab实现图像灰度变换课程设计

用matlab实现图像灰度变换课程设计课程设计报告册课程名称: MATLAB课程设计课题名称:灰度变换增强专业班级:姓名: Bob Wang 学号: 15164 课程设计主要场所:信息楼220时间:指导教师:成绩:前言数字图像处理技术是20世界60年代发展起来的一门新兴学科,随着图像处理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。

MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。

它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。

根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或变成以完成各自的计算。

MATLAB中集成了功能强大的图像处理工具箱。

由于MATLAB语言的语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以MATLAB在图像处理的应用中具有很大的优势。

MATLAB是一种以矩阵运算为基础的交互式程序语言,能够满足科学、工程计算和绘图的要求,与其它计算机语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高。

我们学习掌握MATLAB,也可以说是在科学工具上与国际接轨。

目录一、课程设计目的 (2)二、设计任务及内容 (2)三、课题设计实验条件 (3)四、涉及知识 (3)五、具体设计过程及调试 (4)5.1、图像的读入和显示5.1.1、打开图像 (4)5.1.2、显示原图像 (5)5.1.3、图像灰度处理 (7)5.1.4、显示灰阶后图像 (8)5.2、直方图均衡化5.2.1、生成直方图 (10)5.2.2、直方图均衡化 (12)5.3、灰度变换5.3.1、线性变换 (9)5.3.2、分段线性变换 (9)5.3.3、非线性变换.................................... (9)六、心得体会 (17)七、参考文献 (18)八、程序清单 (19)一、设计目的本次课程设计旨在提升学生的动手能力,加强并巩固对专业理论知识的理解和实际运用。

实验一 图像的灰度变换及直方图均衡化

实验一 图像的灰度变换及直方图均衡化

实验一:图像灰度变换及直方图均衡化实验一、实验目的:1. 掌握灰度直方图的概念及其计算方法;2. 掌握利用图像灰度变换实现对图像的增强处理;3. 掌握利用直方图直方图均衡化和直方图规定化实现对图像的增强处理;4. 熟悉MA TLAB中图像增强的相关函数。

二、实验设备:1. 硬件设备:计算机;2. 软件环境:Windows+Matlab编程与仿真环境;3. 其他设备:记录用的纸、笔,以及U盘等存储设备。

三、实验原理:灰度直方图(histogram)是灰度级的函数,它表示图像中具有每种灰度级的像素的个数,反映图像中每种灰度出现的频率。

一般来说,灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的概率,是图像的最基本的统计特性。

从概率论的观点来理解,灰度出现的频率可看作其出现的概率,这样直方图就对应于概率密度函数PDF(Probability Density Function),而概率分布函数就是直方图的累积和,即概率密度函数的积分。

1. 直方图均衡化直方图均衡化是通过灰度变换将一幅图像转换另一幅具有均衡直方图,即在每个灰度级上都具有相同的像素点数的过程。

设灰度变换s=T(r)为斜率有限的非减连续可微函数,它将输入图像A(x,y)转换为输出图像B(x,y),输入图像的直方图为H a(r),输出图像的直方图为H b(s),它们的关系如下:图1.1 输入图像和输出图像直方图之间的关系图直方图均衡化的基本思想是把原始图像的直方图变换成均匀分布的形式图像灰度值的动态范围,从而达到了增强图像整体对比度的效果。

具体方法为:①列出原始图像的灰度级Sk, k=0,1…L-1,其中L是灰度级的个数;②统计原始图像各灰度级的像素数目nk;③计算原始图像直方图各灰度级的频率数;④计算原始图像的累计直方图;⑤取整计算;⑥确定映射关系;⑦统计新直方图各个灰度级的像素数目nk;⑧计算新的直方图。

2. 灰度变换灰度变换是图像增强的另一种重要手段,它可使图像动态范围加大,使图像对比度扩展,图像更加清晰,特征更加明显。

matlab图像处理课程设计

matlab图像处理课程设计

matlab图像处理课程设计一、课程目标知识目标:1. 理解并掌握Matlab软件在图像处理领域的基本功能与操作方法。

2. 学习并掌握图像处理的基本概念,包括图像的表示、类型转换、灰度变换、滤波等。

3. 掌握图像处理中常用的算法,如边缘检测、图像增强、图像分割等。

技能目标:1. 能够独立使用Matlab软件进行图像读取、显示、保存等基本操作。

2. 能够运用Matlab进行图像的灰度变换、滤波处理,实现图像增强。

3. 能够运用边缘检测、图像分割等方法对图像进行处理,解决实际问题。

情感态度价值观目标:1. 培养学生对图像处理领域的兴趣,激发其探索精神,使其乐于学习、主动探究。

2. 培养学生的团队协作意识,使其在课程实践过程中学会与他人合作、共同解决问题。

3. 引导学生认识到图像处理技术在现实生活中的广泛应用,提高学生的技术应用意识。

课程性质分析:本课程为高中年级的选修课程,以实践操作为主,理论讲解为辅。

课程内容紧密联系实际,注重培养学生的动手能力和解决实际问题的能力。

学生特点分析:高中年级学生具备一定的数学基础和编程能力,对新鲜事物充满好奇,但学习时间有限,需要在课程设计中充分考虑学生的学习负担。

教学要求:1. 确保课程内容与教材紧密关联,注重实用性和操作性。

2. 课程设计要符合学生特点,难度适中,注重激发学生的学习兴趣。

3. 教学过程中要注重理论与实践相结合,引导学生将所学知识应用于实际问题。

二、教学内容1. 图像处理基础知识:- 图像的表示与类型转换- 图像的读取、显示与保存2. 图像灰度变换与滤波:- 灰度变换方法(线性、对数、幂次)- 图像滤波(低通、高通、带通滤波器)3. 图像增强:- 直方图均衡化- 自适应直方图均衡化- 图像锐化4. 边缘检测:- 索贝尔算子- 拉普拉斯算子- Canny边缘检测5. 图像分割:- 阈值分割- 区域生长- 水平集方法6. 实践案例分析:- 选择具有代表性的图像处理案例,如车牌识别、人脸识别等,结合所学的理论知识进行实践操作。

matla图像的灰度变换

matla图像的灰度变换

实验二 图像的灰度变换一、实验目的1、 理解数字图像处理中点运算的基本作用;2、 掌握对比度调整与灰度直方图均衡化的方法。

二、实验原理1、对比度调整如果原图像f (x , y )的灰度范围是[m , M ],我们希望对图像的灰度范围进行线性调整,调整后的图像g (x , y )的灰度范围是[n , N ],那么下述变换:[]n m y x f mM 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 程序文件。

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

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

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('原始图像直⽅图') %在原图直⽅图上加标题运⾏结果如下:例⼦:读⼊图像‘rice.png’,在⼀个窗⼝中显⽰灰度级n=64,128和256的图像直⽅图。

图像处理灰度变换实验

图像处理灰度变换实验

图像处理灰度变换实验一.实验目的1.熟悉和掌握利用matlab 工具进行数字图像的读、写、显示、像素处理等数字图像处理的基本步骤和流程。

2.熟练掌握各种空间域图像增强的基本原理及方法。

3.熟悉通过灰度变换方式进行图像增强的基本原理、方法和实现。

4.熟悉直方图均衡化的基本原理、方法和实现。

二.实验原理(一)数字图像的灰度变换灰度变换是图像增强的一种经典而有效的方法。

灰度变换的原理是将图像的每一个像素的灰度值通过一个函数,对应到另一个灰度值上去从而实现灰度的变换。

常见的灰度变换有线性灰度变换和非线性灰度变换,其中非线性灰度变换包括对数变换和幂律(伽马)变换等。

1、线性灰度变换1)当图像成像过程曝光不足或过度,或由于成像设备的非线性和图像记录设备动态范围太窄等因素,都会产生对比度不足的弊病,使图像中的细节分辨不清,图像缺少层次。

这时,可将灰度范围进行线性的扩展或压缩,这种处理过程被称为图像的线性灰度变换。

对灰度图像进行线性灰度变换能将输入图像的灰度值的动态范围按线性关系公式拉伸扩展至指定范围或整个动态范围。

2)令原图像f (x,y )的灰度范围为[a,b],线性变换后得到图像g (x,y ),其灰度范围为[c,d],则线性灰度变换公式可表示为a y x fb y x f a b y x fc c a y x f a b cd d y x g <≤≤>+---=),(),(),(,,]),([,),( (1)由(1)式可知,对于介于原图像f (x,y )的最大和最小灰度值之间的灰度值,可通过线性变换公式,一一对应到灰度范围[c,d]之间,其斜率为(d-c)/(b-a);对于小于原图像的最小灰度值或大于原图像的最大灰度值的灰度值,令其分别恒等于变换后的最小和最大灰度值。

变换示意图如图1所示。

图1 线性灰度变换示意图当斜率大于一时,变换后的灰度值范围得到拉伸,图像对比度得到提高;当斜率小于一时,变换后的灰度值范围被压缩,最小与最大灰度值的差变小,图像对比度降低;当斜率等于一时,相当于对图像不做变换。

图像的灰度化处理

图像的灰度化处理

教师评阅意见:签名:年月日实验成绩:一、实验目的:1.了解MATLAB的操作环境和基本功能。

2.掌握MATLAB中图像的读入、显示、保存的方法,掌握相关函数。

3.掌握MATLAB中图像的灰度化处理的实现方法,加强算法设计以及编程实现的能力。

二、实验主要内容及要求:1.熟悉MATLAB的编程环境,完成在相关环境下图像的读入、显示、保存等操作;2.完成图像的灰度化处理。

三、实验设备及软件:PC机一台,MATBLAB软件四、设计方案任务一:1)首先选取一张合适的图片存放在MATLAB当前的工作文件夹下(Current Folder),因为只有在当前文件夹下,图像才能被读入,否则会提示文件不存在。

2)利用imread函数完成图像的读入,利用imshow函数完成图像的显示,利用imwrite函数完成图像的保存,或者也可以利用图像显示框的保存按键完成图像的保存。

任务二:1)首先利用clc,clear函数完成清屏和清除变量的操作,清除变量是以免在程序运行时出现错误。

2)利用imread,im2double函数分别完成图像的读入和将图像像素点值转换到0-1之间的处理。

3)利用size函数求出图像的的大小,即维度值。

然后利用zeros函数建立一个和原图像大小相等的二位零矩阵,用于存放处理后的灰度图像。

4)利用双重循环以及相应的公式,完成图像的转换,新的的图像存到步骤3)中的零矩阵中。

五、主要代码及必要说明:任务一代码:clc;clear; %清屏,清除变量;a=imread('coins.png'); %读入coins.png图像,并赋给变量a;imshow(a); %显示图像;imwrite(a,'fg.png','png'); %将图像以png的格式存入,文件名fg;任务二代码:clc;clear; %清屏,清除变量;b=imread('Water lilies.jpg');a=im2double(b);si=size(a),m=si(1),n=si(2),z=si(3); %求出a的大小,即维度值;g=zeros(m,n);for x=1:m %完成彩色图像的转换;for y=1:ng(x,y)=0.299*a(x,y,1)+0.587*a(x,y,2)+0.114*a(x,y,3);endendimshow(a);figure,imshow(g);六、测试结果及说明:任务一:可以完成图像的读入,显示与存入。

实验六 图像增强—灰度变换

实验六   图像增强—灰度变换

实验六 图像增强—灰度变换****************共8小题****************20124178 付蕊一.实验目的及要求1.了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识;2.学会对图像直方图的分析;3.掌握直接灰度变换的图像增强方法。

二.实验设备与软件1.PC 计算机2.MATLAB 软件/语言包括图像处理工具箱(Image Processing Toolbox)3.实验所需要的图片三.实验内容1.获取实验用图像:rice.jpg. 使用imread 函数将图像读入MATLAB 。

由于只有rice.bmp ,所以先获取jpg 格式试验用图像>>imwrite(I,'rice.jpg','quality',100);>> I=imread('rice.jpg');2.产生灰度变换函数T1,使得:⎪⎩⎪⎨⎧>+≤≤+<=0.65 r 1)-0.3(r 10.65 r 0.350.35)-2.6333(r 0.1050.35 r 0.3r s 用T1对原图像rice.jpg 进行处理,使用imwrite 函数保存处理后的新图像。

用T1对原图像rice.jpg 进行处理>> r=[0:0.001:1];>> T1=[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,T1);title('2p,');用imwrite 函数保存处理后的新图像>> imshow(T1);title('2p,');>> imwrite(T1,'rice1.jpg','jpg');3.产生灰度变换函数T2,使得:⎩⎨⎧>+≤=5.012.00.5)-(r 0.5r 15.9744r 0.25r s>> s=[r<=0.5].*(r.^5)*15.9744+[r>0.5].*((r-0.5).^0.2+0.12);plot(r,s);title('3p,');>> T2=[r<=0.5].*(r.^5)*15.9744+[r>0.5].*((r-0.5).^0.2+0.12);plot(r,T2);title('3p,');4.用T2对原图像rice.jpg进行处理,使用imwrite保存处理后的新图像。

matla在图片处理课程设计

matla在图片处理课程设计

matla在图片处理课程设计一、课程目标知识目标:1. 学生能理解并掌握MATLAB在图片处理中的基本操作,如读取、显示、保存图片。

2. 学生能运用MATLAB进行基本的图像变换,包括灰度转换、二值化处理等。

3. 学生能了解并运用MATLAB进行图像滤波、边缘检测等图像处理技术。

技能目标:1. 学生能熟练使用MATLAB软件进行图片的读取、显示和保存。

2. 学生能运用MATLAB进行图片的灰度转换、二值化处理,并对处理结果进行分析。

3. 学生能通过MATLAB实现图像滤波、边缘检测等操作,提高图像处理技能。

情感态度价值观目标:1. 学生通过学习MATLAB图片处理技术,培养对图像处理领域的兴趣,激发学习热情。

2. 学生在学习过程中,培养团队协作意识,学会分享、讨论和解决问题。

3. 学生通过实践操作,认识到科技在现实生活中的应用,增强实践能力,提高创新精神。

课程性质:本课程为实践性较强的课程,以MATLAB软件为工具,结合图片处理技术,使学生掌握图像处理的基本方法。

学生特点:学生具备一定的计算机操作基础,对图像处理有一定了解,但对MATLAB软件操作较陌生。

教学要求:教师需结合学生特点,由浅入深地进行教学,注重理论与实践相结合,关注学生个体差异,提高学生的实践操作能力。

通过教学设计和评估,确保学生达到课程目标,实现具体学习成果。

二、教学内容1. MATLAB软件基础操作:包括软件安装、界面认识、基本命令介绍,重点讲解图片读取(imread)、显示(imshow)、保存(imwrite)等函数。

教材章节:第一章 MATLAB基础操作2. 图像灰度转换与二值化处理:介绍灰度转换的原理,讲解im2gray函数的使用;阐述二值化处理的方法,讲解imbinarize函数的应用。

教材章节:第二章 图像预处理3. 图像滤波技术:讲解各种滤波器(如高斯滤波、中值滤波等)的原理和适用场景,演示filter2、medfilt2等函数的使用。

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

课程设计报告册课程名称: MATLAB课程设计课题名称:灰度变换增强专业班级:姓名: Bob Wang 学号: ***** 课程设计主要场所:信息楼220时间:指导教师:*绩:前言数字图像处理技术是20世界60年代发展起来的一门新兴学科,随着图像处理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。

MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。

它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。

根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或变成以完成各自的计算。

MATLAB中集成了功能强大的图像处理工具箱。

由于MATLAB语言的语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以MATLAB在图像处理的应用中具有很大的优势。

MATLAB是一种以矩阵运算为基础的交互式程序语言,能够满足科学、工程计算和绘图的要求,与其它计算机语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高。

我们学习掌握MATLAB,也可以说是在科学工具上与国际接轨。

目录一、课程设计目的 (2)二、设计任务及内容 (2)三、课题设计实验条件 (3)四、涉及知识 (3)五、具体设计过程及调试 (4)5.1、图像的读入和显示5.1.1、打开图像 (4)5.1.2、显示原图像 (5)5.1.3、图像灰度处理 (7)5.1.4、显示灰阶后图像 (8)5.2、直方图均衡化5.2.1、生成直方图 (10)5.2.2、直方图均衡化 (12)5.3、灰度变换5.3.1、线性变换 (9)5.3.2、分段线性变换 (9)5.3.3、非线性变换.................................... (9)六、心得体会 (17)七、参考文献 (18)八、程序清单 (19)一、设计目的本次课程设计旨在提升学生的动手能力,加强并巩固对专业理论知识的理解和实际运用。

通过使用MATLAB软件,根据所分配的课题,锻炼我们的自学能力,提高我们实践能力,为毕业设计做铺垫。

1、熟悉并掌握应用MATLAB语言相关知识和程序设计方法。

2、掌握MATLAB GUI程序设计3、熟悉MATLAB图像处理工具箱4、学会运用MATLAB工具箱对图像进行处理和分析二、设计任务及内容利用MATLAB GUI设计实现图像处理的图形用户界面,利用MATLAB 图像处理工具箱实现以下的图像处理功能:1.采用matlab Guide设计图像界面;可以读入并显示图像,设计实现下列功能的按钮,点击相应的按钮可以实现相应的功能。

2.自选图像一幅,进行线性变换、分段线性变换和非线性变换,对比源图像与变换后的图像特征变换,体会该变换的特点。

3.自选图像一幅,生成并绘制图像的直方图。

4.直方图均衡化方法研究,比较变换前后图像的直方图。

三、题目研究的实验条件计算机、相关书籍、MATLAB7以上版本四、课题所涉及知识面数字图像处理和MATLAB软件知识五、具体设计过程及调试5.1、图像的读入和显示采用matlab Guide设计图像界面;可以读入并显示图像,设计实现下列功能的按钮,点击相应的按钮可以实现相应的功能。

图形界面5.1.1、打开图像从计算机中查找要打开的图片5.1.2、显示原图像把选中的图片显示在第一显示区5.1.3、图像灰度处理利用灰度处理函数rgb2gray()对原真彩图像灰阶化5.1.4、灰阶后的图像显示把灰阶后的图像显示在第二显示区,对两幅图片进行比较,观察两者特点。

显示原图像和灰阶后的图像结论:对图像灰阶处理就是对原图像黑白化5.2、直方图均衡化直方图均衡化是一种常用的灰度增强算法,是将原图的直方图经过变换函数修正为均匀的直方图,然后按照均衡后直方图修整原图像。

5.2.1、生成直方图图像的直方图是表示数字图像中每一灰度级与该灰度级出现的频数,函数为imhist(X,map)显示原图像的灰度直方图5.2.2、直方图均衡化均衡化函数为histeq(I,n),其中n默认为64直方图均衡化比较5.3、灰度变换某些情况下,需要对图像的灰度级整个范围或者其中的某一段扩展或压缩到记录器件输入灰度级动态范围之内。

灰度变换可分为线性变换、分段线性变换、非线性变换和其他的灰度变换。

5.3.1、线性变换具体实现形式为:g(x,y)=(d-c)/(b-a)[f(x,y)-a]+c线性变换结果对比作用:使曝光不充分图像中黑的更黑,白得更白,从而提高图像对比度5.3.2、分段线性变换具体实现形式:g(x,y)=c/df(x,y) 0<=f(x,y)<=a g(x,y)= (d-c)/(b-a)[f(x,y)-a]+c a<=f(x,y)<=b g(x,y)= (f-b)/(e-a)[f(x,y)-b]+d b<=f(x,y)<=c分段线性变换结果对比5.3.3、非线性变换具体实现形式:g(x,y)=a+ln[f(x,y)+1]/b*lnc非线性变换结果对比六、心得体会这次MATLAB课程设计让我学到了很多,不仅仅是知识,还学到了许多学习方法。

MATLAB软件在这之前接触的很少,仅仅是在数字信号处理的实验课上有过一点了解。

为了做好这次的课程设计,我查阅了大量的资料,并上网搜索了许多与此相关的知识,这个过程使我受益匪浅,那就认识了很多关于MATLAB的论坛,论坛上面提供了很多关于MATLAB学习的方法及其自学的方法,那些论坛对于将来学习MATLAB及其它方面的知识也有很大的帮助。

虽然在规定的时间内完成了老师所布置的课题,但是还是觉得不免有些不足。

由于时间局限,对许多MATLAB所运用到的知识仅仅是有所了解,而并没有完全地掌握,甚至可以说是只知其然,而不知其所以然。

这使我意识到对于MATLAB的学习任务还很艰巨,还有许多知识需要去了解,去深入研究。

通过这次MATLAB课设,学到了MATLAB GUI程序设计,并通过MATLAB所生成的图像调试结果,以达到系统的要求。

MATLAB作为第四代计算机语言,具有相当强大的矩阵运算和操作功能,其程序编写也比其它语言要简单,是一种对学习非常有帮助的软件,在之后的时间,我依然会对它进行学习。

七、参考文献1.郭仕剑、邱志模、陆静芳.MATLAB入门与实践.北京:人民邮电出版社,20082.张智星.MATLAB程序设计及应用.北京:清华大学出版社,20023.肖伟、刘忠.MATLAB程序设计与应用[M].北京:清华大学出版社,20054.瞿亮.基于MATLAB的控制系统计算机仿真.北京:清华大学出版社,北京交通大学出版社.2005八、程序清单一打开图片和灰阶化global imglobal xglobal yglobal zx=0.002;y=0.02;z=0.04;[filename,pathname]=...uigetfile();str=[pathname filename]; im=imread(str);axes(handles.axes1);imshow(im);title();im = rgb2gray(im);axes(handles.axes2);imshow(im);title();二线性变换global im;global J;J=imadjust(im,[0.3,0.7],[]); axes(handles.axes1);imshow(im);title();axes(handles.axes2);imhist(im);title();axes(handles.axes3);imshow(J);title();axes(handles.axes4);imhist(J);title();三分段线性变换global im;global H;H=double(im);[M,N]=size(H);%½øÐлҶȱ任for i=1:Mfor j=1:Nif H(i,j)<=30H(i,j)=H(i,j);elseif im(i,j)<=150H(i,j)=(200-30)/(150-30)*(H(i,j)-30)+30;elseH(i,j)=(255-200)/(255-150)*(H(i,j)-150)+200;endendend%±ä»»ºóµÄ½á¹ûaxes(handles.axes1);imshow(im);title();axes(handles.axes2);imhist(im);title();axes(handles.axes3);imshow(uint8(H));title();axes(handles.axes4);imhist(uint8(H));title();四非线性变换global im;global J;global H;J=double (im) ;H=(log(J+1))/10;axes(handles.axes1);imshow(im);title();axes(handles.axes2);imhist(im);title();axes(handles.axes3);imshow(H);title();axes(handles.axes4);imhist(H);title();五生成灰度直方图global im;axes(handles.axes1);imshow(im);title();axes(handles.axes2);imhist(im);title();六直方图均衡化global im;global J;J=histeq(im);axes(handles.axes1);imshow(im);title();axes(handles.axes2);imshow(J);title();axes(handles.axes3);imhist(im);title();axes(handles.axes4);imhist(J);title平滑处理用3*3屏蔽窗口的8近邻均值进行滤波for(int j=1;j<height-1;j++){for(int i=1;i<wide-1;i++){averg=0;averg=(int)((p_data[(j-1)*wide+(i-1)]+p_data[(j-1)*wide+i]+p_data[(j-1)*wide+(i+1)]+p_data[j*wide+(i-1)]+p_data[j*wide+i+1]+p_data[(j+1)*wide+(i-1)]+p_data[(j+1)*wide+i]+p_data[(j+1)*wide+i+1])/8); //求周围8近邻均值if(abs(averg-p_temp[j*wide+i])>127.5)p_temp[j*wide+i]=averg;}}利用巴特沃斯(Butterworth)低通滤波器对受噪声干扰的图像进行平滑处理I=imread('aaa.jpg');imshow(I);J1=imnoise(I,'salt & pepper'); % 叠加椒盐噪声figure,imshow(J1);f=double(J1); % 数据类型转换,MATLAB不支持图像的无符号整型的计算g=fft2(f); % 傅立叶变换g=fftshift(g); % 转换数据矩阵[M,N]=size(g);nn=2; % 二阶巴特沃斯(Butterworth)低通滤波器d0=50;m=fix(M/2); n=fix(N/2);for i=1:Mfor j=1:Nd=sqrt((i-m)^2+(j-n)^2);h=1/(1+0.414*(d/d0)^(2*nn)); % 计算低通滤波器传递函数result(i,j)=h*g(i,j);endendresult=ifftshift(result);J2=ifft2(result);J3=uint8(real(J2));figure,imshow(J3); % 显示滤波处理后的图像运行结果:。

相关文档
最新文档