基于LabVIEW的图像反色处理系统Word文件下载.docx
- 文档编号:15103828
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:11
- 大小:1.32MB
基于LabVIEW的图像反色处理系统Word文件下载.docx
《基于LabVIEW的图像反色处理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于LabVIEW的图像反色处理系统Word文件下载.docx(11页珍藏版)》请在冰豆网上搜索。
LabVIEW是一种图形化的编程语言和开发环境,是一个功能强大并且灵活的软件,利用它可以方便的建立自己的虚拟仪器。
使用这种语言编程时,基本上不需要编写程序代码,而是“绘制”程序流程图。
LabVIEW尽可能利用工程技术人员熟悉的术语、图标和概念,因而它是一种面向最终用户的开发工具,可以增强工程人员构建自己的科学和工程系统的能力,可以为实现仪器编程和数据采集等系统提供便捷途径。
以LabVIEW为代表的图形化语言,有称为“G”语言。
它能够以其直观简便的编程方式、众多的源码级的设备驱动程序、多种多样的分析和表达功能支持,为用户快捷地构筑自己在实际生产中所需要的仪器系统创造了基础条件,是一种通用的编程系统,具有各种各样、功能强大的函数库,包括数据采集、GPIB、串行仪器控制、数据分析、数据显示及数据存储,甚至还有目前十分热门的网络功能。
LabVIEW也有完善的仿真、调试工具,如设置断点、单步等。
LabVIEW的动态连续跟踪方式,可以连续、动态地观察程序中的数据及其变化情况,比其它语言的开发环境更方便、更有效。
此外利用LabVIEW,可产生独立运行的可执行文件,能脱离LabVIEW环境运行,像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本,这给发布应用程序带来了极大的方便。
利用LabVIEW软件能对图像进行处理的方式有很多种,如对图像进行边缘检测、图像特征提取、图像分割等。
但考虑到现有的实验条件,本文选择了对图像进行了反色处理。
大家对照片的底片一定都很熟悉了,底片上的颜色与色彩鲜艳的照片的颜色是正好相反的,即反色,这也是我们制作反色图像的核心。
图像反色实际上就是取每一个像素点的相对颜色值进行处理。
本设计根据这一原理进行了系统设计。
1.总体方案设计
本设计中,主要利用labVIEW方便PictureFunctions功能模块。
能直接读入和存储图像。
再通过算法改变每一像素点所对应的RGB方法就能得到了反色的图像。
1.1图像反色原理
我们所见到的图片各种色彩都是由红、绿、蓝三种颜色按不同的比例混合而成的,这就是我们所说的三基色,它们的颜色值(RGB值)是
0~255
,所以我们只需去的图像上各个点的RGB值,然后用255减去这个值,并将这个值重新赋值给各个点,就会达到我们想要的底片效果了,即反色处理。
1.2程序流程图
程序运行时,首先从硬盘中选择要导入图像,通过ReadBMPFile.Vi导入图像,再通过与图像的数据做减法运算后重新赋值,获得反色后的图并存储。
具体程序流程图如图1所示。
图1程序流程图
2.模块的设计
基于以上的分析,以处理BMP格式图像为例,用labVIEW编写程序对图像进行处理并在计算机屏幕上显示出来。
本系统可为三个模块即图像的导入、反色处理和显示并存储处理后的图像。
2.1各模块的设计原理
2.1.1图像读入模块的设计
在本模块中,用户只需要在导入BMP格式的图像,经过DrawFlattenedPixmap.Vi操作(绘制平化像素图)后,Newpicture(原始图象)就会根据用户导入图像进行显示。
其模块由图2所示。
图2读入图像模块
2.1.2图像处理模块设计
图3图像处理模块
在本模块中将原图像的的数据,经过ArraySize,由于imagedate输入的为一维数组,所以输出的是一个整数值,接入forloop的计数端子决定循环执行次数。
数据与255做减法运算后,重新赋值给各个点。
通过bundle函数输出,再经过显示就得到了反色处理后的图像。
Rectangle来显示图像的像素,imagedepth来显示图像的深度。
其模块如图3所示。
2.1.3图像存储模块的设计
在本模块中,WriteBMPFile.Vi接收到处理后的图像,将图像进行存储。
再次经过DrawFlattenedPixmap.Vi操作(绘制平化像素图),将处理后的图像显示在计算机上。
其模块如图4所示。
图4图像存储模块
2.2图像显示及处理面板设计
2.2.1前面板的设计
前面板是图形化的用户界面,用于设置输入数值和观察输出量。
(1)执行Controls>
>
Buttons>
buttons&
Switches>
OkButtons操作,放置开始按钮,用来控制执行过程。
此处添加了4个按钮,分别显示导入图像、获取数据、显示处理后的图像、存储图像。
(2)执行Controls>
StopButton操作,放置停止按钮,用来控制WhileLoop。
完成后的面板如图5所示。
图5前面板窗口设计
2.2.2流程图设计
(1)执行AllFunctions>
Structures>
EventStructure操作,放置事件结构。
(2)执行AllFunctions>
WhileLoop操作,放置While循环。
(3)执行AllFunctions>
Graphics&
sound>
GraphicsFormats>
ReadBMPFile.Vi操作,读入图像。
(4)执行AllFunctions>
PictureFunctions>
DrawFlattenedPixmap.Vi操作,绘制平化像素图。
(5)执行AllFunctions>
Array>
ArraySize操作,放置任意维数的数组。
(6)执行AllFunctions>
WriteBMPFile.Vi操作,存储图像。
完成后的面板如图6所示,进行连线。
图6框图窗口设计
3.调试及结果分析
3.1运行检验
基于以上设计,对整个实验进行了验证,随着前面板的Run按钮的按下,当导入图像的按钮按下时,界面提示Selectthebitmapfiletoload,表示从电脑的硬盘中选择要上传的图像。
当获取数据按钮按下时,界面就会显示图像的像素、深度等参数。
当显示处理后的图像按钮按下时,界面就会显示处理后的图像。
当存储图像按钮时按下,界面提示SelecttheBMPfiletowrite,表示选择经过处理后的图像所要存储的位置。
然后整个过程结束。
其导入过程界面如图7所示,图像的数据的显示及显示反色后的图像界面过程如图8所示,存储处理后的图像界面如图9所示。
图7图像的导入界面
图8图像的数据的显示及显示反色后的图像界面
图9存储处理后的图像界面
据上图可知,基本上达到了实验的目的。
3.2调试分析
在实验调试过程中遇到了很多问题,为了使界面方便用户的使用,本设计才用的是时间结构。
在后面板编辑代码时,运行出现了如图10所示的结果。
图10调整前的运行结果
分析出现上述结果的原因:
基于本设计的特点,添加事件的时候要用到上个事件中的数据,上图中虽然是imagedate,但是在前面板又生成了另一个数据,不符合事件结构的要求。
解决方法:
把上图中imagedate数组常量,通过点击右键选择Creat>
Localvariable改变为与第2个事件中相同的数据类型。
调整后的后面板和运行结果如图11所示。
图11调整后的运行结果
4.结论及进一步设想
本实验基本上实现了图像的显示及反色处理,但图像显示界面有一定的缺陷,只能显示设定大小区域的图像,如果能将图像进行缩放后再进行处理显示,那么显示界面就会更美观些。
参考文献
[1]侯国屏等.LabVIEW7.1编程与虚拟仪器设计.北京:
清华大学出版社,2005.
[2]陆绮荣.基于虚拟仪器技术个人实验室的构建.北京:
电子工业出版社,2006
[3]刘君华等.基于LabVIEW的虚拟仪器设计.北京:
电子工业出版社,2003
[4]杨乐平李海涛杨磊LabVIEW程序设计与应用(第2版)北京电子工业出版社2006
[5]蔡建安陈洁华基于LabVIEW的工程软件应用
重庆大学出版社
2006
课设体会
三个星期的课程设计已经结束了,在这紧张的3周课程设计中,我收获很多。
不仅对虚拟仪器的知识也有了更深一步的掌握,对图像处理也有了更深层次的了解,而且对LabVIEW软件的应用也更加熟悉。
从找不到模块到能熟练应用的过程,我收获了知识。
明白了课程设计不只是单单的重复上课所学到的知识,而且要学会将学到的知识充分的应用到实际中。
在这三周的努力当中,我充分的了解到了本次课程设计的重要性和实用性。
同时也让我深刻的认识到,理论与实际相差很远,要把理论和实际相结合需要付出很大的努力。
在设计中也发现自己的知识欠缺很多,特别是英语,因为软件都是英文界面,所以以后一定要加强自己的知识,培养自己的动手动脑能力,在设计的过程中,指导老师给了我许多的帮助。
老师在我的设计过程中一直给我指导和帮助,帮我解决了许多在设计中遇到的难题,减少了我在设计中遇到的困难,并教会了我许多有关LABVIEW的知识,扩展了我的知识面。
[2009年1月9日完成]
附录基于LabVIEW的图像反色处理系统
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 LabVIEW 图像 处理 系统