您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 广告经营 > 能力拓展训练课设-图像颜色RGB调整的MATLAB实现
武汉理工大学《能力拓展训练》课程设计说明书I摘要当今的信息化社会,图像是人类赖以获取信息的最重要的来源之一。随着计算机技术的迅猛发展,图像技术与计算机技术不断融合,产生了一系列图像处理软件,如VC、MALAB,这些软件的广泛应用为图像技术的发展提供了强大的支持。MATALB已成为公认的最优秀的应用软件之一,具有编程简单、数据可视化功能强、可操作性强等优点,配有功能强大、专业函数丰富的图像处理工具箱,是进行图像处理方面工作必备的软件工具。MATLAB提供了强大的图形功能,利用程序与绘图的结合,可以将结果计算以图形展示。RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。本次课程设计使用RGB颜色模型对24bits彩色图像的颜色进行R,G,B三分量值调节,并显示原始的R,G,B三分量的灰度图像。关键词:MATLABRGB调整灰度图像武汉理工大学《能力拓展训练》课程设计说明书II目录摘要........................................................................I1设计任务及要求............................................................12原理分析..................................................................12.1RGB模式简介.........................................................12.2灰度图像............................................................13总体设计..................................................................24编程及仿真................................................................34.1RGB颜色调整.........................................................34.1.1图像读取与显示.................................................44.1.2RGB颜色调整..................................................54.2原始R、G、B三分量灰度图............................................65结果分析.................................................................86小结及体会...............................................................8参考文献....................................................................9附录1仿真图..............................................................11附录2源程序..............................................................12武汉理工大学《能力拓展训练》课程设计说明书1图像颜色RGB调整的MATLAB实现1设计任务及要求对24bits彩色图像的颜色,使用RGB颜色模型,来对其进处理。设计图形界面(GUI)程序,使用三个滑动条实现R,G,B各分量上下可调。调整范围在0到1之间,即:滑动条被拖动时,产生一个0到1之间的系数,乘以该分量的原始值,得到调整后的分量值。显示原始图像,和调整后的图像。同时显示原始的R,G,B三分量的灰度图像。2原理分析2.1RGB模式简介RGB是色光的彩色模式。R代表红色,G代表绿色,B代表蓝色,三种色彩叠加形成了其他的色彩。因为三种颜色都有256个亮度水平级,所以三种色彩叠加就能形成1670万种颜色了,也就是“真彩色”,通过它们足以再现绚丽的世界。在RGB模式中,由红、绿、蓝相叠加可以形成其他颜色,因此该模式也叫加色模式(CMYK是一种减色模式)。所有的显示器、投影设备以及电视等许多设备都是依赖于这种加色模式实现的。就编辑图像而言,RGB色彩模式也是最佳的色彩模式,因为它可提供全屏幕的24bit的色彩范围,即“真彩色”显示。但是,如果将RGB模式用于打印就不是最佳的了,因为RGB模式所提供的有些色彩已经超出了打印色彩范围之外,因此在打印一幅真彩的图像时,就必然会损失一部分亮度,并且比较鲜明的色彩肯定会失真的。这主要是因为打印所用的是CMYK模式,而CMYK模式所定义的色彩要比RGB模式定义的色彩少得多,因此打印时,系统将自动进行RGB模式与CMYK模式的转换,这样就难以避免损失一部分颜色,出现打印后的失真现象。2.2灰度图像一幅完整的图像,是由红色、绿色、蓝色三个通道组成的。红色、绿色、蓝色三个通道的缩览图都是以灰度显示的。用不同的灰度色阶来表示“红,绿,蓝”在图像中的比武汉理工大学《能力拓展训练》课程设计说明书2重。通道中的纯白,代表了该色光在此处为最高亮度,亮度级别是255。在计算机领域中,灰度数字图像是每个像素只有一个采样颜色的图像。这类图像通常显示为从最暗黑色到最亮的白色的灰度,尽管理论上这个采样可以任何颜色的不同深浅,甚至可以是不同亮度上的不同颜色。灰度图像与黑白图像不同,在计算机图像领域中黑白图像只有黑色与白色两种颜色;灰度图像在黑色与白色之间还有许多级的颜色深度。但是,在数字图像领域之外,“黑白图像”也表示“灰度图像”,例如灰度的照片通常叫做“黑白照片”。在一些关于数字图像的文章中单色图像等同于灰度图像,在另外一些文章中又等同于黑白图像。3总体设计武汉理工大学《能力拓展训练》课程设计说明书3图3-1总体设计界面软件的总体设计界面布局如图3-1所示,主要分为2个部分:显示区域与操作区域。显示区域:显示载入原图、通过RGB调整后的图像以及RGB三分量的灰度图像。操作区域:通过功能键实现对图像的各种处理。在截图中可见,五个功能按键分别对应对图片的处理,界面正中部分为图片显示部分,界面中下方为原图RGB值调节的滚动条。4编程及仿真4.1RGB颜色调整选择一幅24bits彩色图像,使用三个滑动条实现R,G,B各分量上下可调,显示原图和调整后的图像。武汉理工大学《能力拓展训练》课程设计说明书4程序设计流程图如图4-1所示:否是图4-1RGB颜色调整流程图4.1.1图像读取与显示图像读取分两种情况:(1)若图像为MALAB自带图像,利用matlab中“imread”、“imshow”实现图像文件的读取与显示:开始读取原图像调节三分量滚动条‘调整后’按键是否按下显示调整后的图像结束武汉理工大学《能力拓展训练》课程设计说明书5i=imread('football.jpg');%读取图像axes(handles.axes1);imshow(i);%显示图像(2)若图像不是MATALB自带图像,可用以下方式实现图像文件的读取与显示:[filename,pathname]=uigetfile({'*.jpg';'*.bmp';'*.tif';'*.*'},'载入图像');ifisequal(filename,0)|isequal(pathname,0)errordlg('没有选中文件','出错');return;elsefile=[pathname,filename];globalS%设置一个全局变量S,保存初始图像路径,以便之后的还原操作S=file;x=imread(file);axes(handles.axes1);imshow(x);end为了方便操作,本次课设采用第一种方式读取和显示图像。4.1.2RGB颜色调整RGB颜色调整采用三个滑动条分别控制三分量的数值,滑动条被拖动时,产生一个0到1之间的系数,乘以该分量的原始值,得到调整后的分量值。i=imread('football.jpg');R=get(handles.slider1,'value');%获得滑动条数值G=get(handles.slider2,'value');B=get(handles.slider3,'value');c(:,:,1)=i(:,:,1)*R;%获得调整后的分量值c(:,:,2)=i(:,:,2)*G;c(:,:,3)=i(:,:,3)*B;axes(handles.axes2);武汉理工大学《能力拓展训练》课程设计说明书6imshow(c);用get函数得到滑动条的数值,再乘以分量原始值,得到调整后数值,这样我们就可以通过改变滑动条的数值来调节原图像的RGB各个分量的数值,得到想要的效果。如图4-2:图4-2RGB颜色调整4.2原始R、G、B三分量灰度图选择一幅24bits彩色图像,显示原始的R、G、B三分量的灰度图像。分别提取原始图像的R、G、B三分量,用imshow显示各个分量灰度图像。武汉理工大学《能力拓展训练》课程设计说明书7流程图如图4-3:否是图4-3三分量灰度显示流程图具体程序如下(以红色分量为例):i=imread('football.jpg');axes(handles.axes3);imshow(i(:,:,1));%显示红色分量的灰度图R、G、B三分量的灰度图像如图4-4:开始读取原图像‘分量灰度’按键是否按下显示分量灰度图像结束武汉理工大学《能力拓展训练》课程设计说明书8图4-4R、G、B三分量的灰度图5结果分析对于一幅24bits彩色图像,利用MATLAB中(:,:,1),(:,:,2),(:,:,3)可分别提取原图像的红、绿、蓝三分量值,再与滑动条数值相乘,实现了对原图像RGB的调整。当滑动条都置0时,即R、G、B分量均为0时,显示一幅黑色图像,当滑动条都置1时,显示原图像,分别调节三分量的值可以得到需要的RGB图像。在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫灰度值,因此,灰度图像每个像素只需一个字节存放灰度值,灰度范围为0-255。采用分量法对彩色图像进行灰度化,将彩色图像中的三分量的亮度作为三个灰度图像的灰度值,实际应用中可根据需要选取一种灰度图像。6小结及体会通过此次能力拓展训练课程设计,使我对matlab的使用有了进一步的了解和熟悉。武汉理工大学《能力拓展训练》课程设计说明书9MATLAB软件功能强大,本设计是运用MATLAB进行图像处理,这只是它的一个简单的应用,MATLAB还在多方面有应用,如数学和计算算术发展模型;模拟仿真和原型;数据分析,开发和可视化;科学和工程图形等方面。只有自己在以后的学习中慢慢学习,自己探索,更好的掌握这款软件。当我第一次拿到此次的课设题目时,感到有些无所适从。虽然,原来经常用到MATLAB,但由于对matlab的学习更多的只是停留在理论上的学习,同时也是第一次用MATLAB进行图像处理,所以用起来不是很熟练。虽然对课题感到很懵懂,但在查阅相关资料后,我开始找到了解决问题的路径。我的题目是“图像颜色RGB调整的MATLAB实现”。本课题的重点是句柄的使用、GUI的使用以及matlab中相关图像处理函数使用。为此,在实践正式开始前,我利用课余时间,学习了matlab教材,专门借阅了利用matlab进行图像处理的相关教程,通过索引网络上的相关资料,为课设做了较为充分的准备。在参考了相关材料及
本文标题:能力拓展训练课设-图像颜色RGB调整的MATLAB实现
链接地址:https://www.777doc.com/doc-3944305 .html