基于LabVIEW平台下的图像采集 毕业设计.doc

上传人:laozhun 文档编号:2387760 上传时间:2023-02-17 格式:DOC 页数:19 大小:575.50KB
返回 下载 相关 举报
基于LabVIEW平台下的图像采集 毕业设计.doc_第1页
第1页 / 共19页
基于LabVIEW平台下的图像采集 毕业设计.doc_第2页
第2页 / 共19页
基于LabVIEW平台下的图像采集 毕业设计.doc_第3页
第3页 / 共19页
基于LabVIEW平台下的图像采集 毕业设计.doc_第4页
第4页 / 共19页
基于LabVIEW平台下的图像采集 毕业设计.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《基于LabVIEW平台下的图像采集 毕业设计.doc》由会员分享,可在线阅读,更多相关《基于LabVIEW平台下的图像采集 毕业设计.doc(19页珍藏版)》请在三一办公上搜索。

1、题 目基于LabVIEW平台下的图像采集 院系名称: 信息工程学院 专业班级: 计算机应用技术 学生姓名: 学 号: 110401121 指导教师: 2014年4月25日目录摘要1第一章 引言21.1 LabVIEW简介21.2 LabVIEW软件的基本组成21.3程序前面板21.4框图程序22.6 LabVIEW 特点32.7 LabVIEW的优势3第三章 毕业设计任务书43.1基于labview的信号系统摄像头设计43.2实验要求43.3 设计目的4第四章 基于LABVIEW图像采集内容54.1 基于LabVIEW环境下图像采集介绍54.2图像采集原理分析64.3图像采集流程图设计74.3

2、图像采集前面板设计94.4图像采集程序框图设计94.4.1前面面板视频窗口的设置程序104.4.2图像采集并显示的程序设计114.4.3图像采集定时循环程序124.4.4图像采集程序调试13第5章 总结和展望14致 谢16参考文献17摘要图像与人们的生产生活息息相关,它不仅能够辨别大千世界的各种色彩,而且向人们直观形象的展现和记录生活的片段。图像成为人们获取信息的主要来源,据统计人类有80%以上的信息来自于图像。随着计算机软件、硬件技术的日新月异的发展和普及,人类已经进入一个高速发展的信息化时代,这必然使得图像采集技术的全面更新和进步,以适应现代信息技术发展的需求,同时图像采集技术也是卫星军事

3、技术等方面的重要科研领域。图像显示系统包括图像采集、图像传输、图像存储、图像处理和图像分析等。其中图像显示是图像采集技术的基础和前提,图像显示是指把将采集到得图像数据以完整的模式显示出来。随着计算机技术的发展和计算机应用的拓展,越来越迫切的需要将外面的信息传输到计算机当中进行显示和监控,而图像采集技术作为图像信息处理的基础,是图像处理技术的关键。传统的显示方法是应用VC+进行开发,在这种开发环境下的开发有很高的编程要求,这要求编程人员具有很高的编程能力并且对VC具有很高的认识。本文是基于LabVIEW2010版本下开发的图像采集的应用程序,开发简单,操作方便。论文简要分析了图像采集的原理,功能

4、和简单应用。关键字:Labview 图像采集 图像处理第一章 引言1.1 LabVIEW简介LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。LabVIEW(Laboratory Virtual instrument Engineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。1.2 LabVIEW软件的基本

5、组成(1)程序前面板:交互式的用户界面。(2)框图程序:是程序源代码,用模块代替普通函数。(3)图标/连接器(子VI):可被高级VI调用的VI。1.3程序前面板(1)控制件:类似与仪器的输入器件,为框图程序提供数据。(2)显示件:类似于仪器的输出器件,显示通过框图程序采集或产生的数据。1.4框图程序(1)节点:是程序执行元素,类似于传统文本编程语言程序中的语句、操作符、函数或者子程序。 (2)端子:是在框图程序和前面板之间或者在框图程序的节点之间进行数据传输的接口。(3)连线:连线是输入和输出端子间的数据通道,代表程序执行过程中的数据流。类似于普通程序中的参数。 2.6 LabVIEW 特点尽

6、可能采用了通用的硬件,各种仪器的差异主要是软件。可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。用户可以根据自己的需要定义和制造各种仪器。2.7 LabVIEW的优势1.提供了丰富的图形控件,采用了图形化的编程方法,把工程师从复杂苦涩的文件编程工作中解放出来。2.采用数据流模型,实现了自动的多线程,从而能充分利用处理器(尤其是多处理器)的处理能力。3.内建有编译器,能在用户编写程序的同时自动完成编译,因此如果用户在编写程序的过程中有语法错误,就能立即在显示器上显示出来;4.通过DLL、CIN节点、ActiveX、.NET、MATLAB脚本节点等技术,能够轻松的实现Lab

7、VIEW与其他编程语言的混合编程;5.内建有600多个分析函数用于数据分析和信号处理;6.通过应用程序生成器可轻松的发布可执行程序、动态链接库或安装包;7.提供了大量的驱动和专用工具,几乎能够与任何接口的硬件轻松连接;8.NI同时提供了丰富的附加模块,用于扩展LabVIEW在不同领域第三章 毕业设计任务书3.1基于labview的信号系统摄像头设计1、完成采像功能2、能对采像的格式进行设置3、有采像存储3.2实验要求1、用LABVIEW82010版本完成设计要求3、程序必须能运行4、每组的成员必须参与程序的设计5、能对设计基本的问题进行描述3.3 设计目的1.培养学生的动手能力,激发了学生的学

8、习兴趣,体会到这是纯理论教学所不可替代的。该学科的理论知识2.只有通过高质量的实验才能给予同学足够的感性认识,才能真正理解和掌握该学科的理论知识。3.提高动手实践能力,培养分析问题的能力,以便于提高自身综合能力。第四章 基于LABVIEW图像采集内容 本章是设计的核心内容,主要阐述和分析图像采集的原理、功能和实现方法。设计是在NI公司的虚拟仪器开发环境LabVIEW2010版本下完成的。本章主要包括流程图设计、前面板设计和程序框图设计。4.1 基于LabVIEW环境下图像采集介绍图像采集处理也可以称作视觉处理,LabVIEW提供了多种图像处理的方法。其中NI公司的视觉采集软件提供的驱动和函数,

9、既能够从数千种连接到 NI 帧接收器上的不同相机上采集图像,也能够从连接在PC、PXI系统或笔记本计算机上标准端口的IEEE 1394和千兆位以太网视觉相机采集图像。在推出应用软件的基础上,NI公司又推出了图像采集卡,对于NI公司的图像采集卡,可以直接使用采集卡自带的驱动以LabVIEW中的DAQ库直接对端口进行操作。但由于NI公司的图像采集卡成本很高,大多用户难以接受,因此硬件平台往往采用通用图像采集卡,软件方面的处理程序仍采用LabVIEW以及图像采集处理模块写。LabVIEW中的视觉开发模块作为强大的机器视觉处理库,配有各类函数,其中包括:边缘检测、颗粒分析、光学字符识别和验证、一维和二

10、维代码支持、几何与模式匹配、颜色工具。该模块可与NI公司的所有软件、C+、Microsoft Visual Basic、Microsoft .NET 相互调用,为用户提供了相当便利的操作。用户可通过视觉开发模块的同步功能,实现与运动或数据采集测量的同步。NI公司提供的图像处理软件包Vision 2010 Acquisition Software ,是专门为LabVIEW 2010服务的。它可以在LabVIEW 2010中完成各种关于图像处理、视觉运行的控制。4.2图像采集原理分析(1)图像灰度处理的基本原理 将彩色图像转化成为灰度图像的过程称为图像的灰度化处理。彩色图像中的每个像素的颜色有R、

11、G、B三个分量决定,而每个分量有255中值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其一个像素点的变化范围为255种,所以在数字图像处理中一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。图像的灰度化处理可用两种方法来实现。第一种方法使求出每个像素点的R、G、B三个分量的平均值,然后将这个平均值赋予给这个像素的三个分量。第二种方法是根据YUV的颜色空间中,Y的分量的物理意义是点的亮度,由该值反

12、映亮度等级,根据RGB和YUV颜色空间的变化关系可建立亮度Y与R、G、B三个颜色分量对应:Y=0.3R+0.59G+0.11B,以这个亮度值表达图像的灰度值。(2)图像采集模块原理图4-1光探测器主要是由光传感器和光电处理器件组成。在光传感器采集到图像后经过光电处理产生不同的模拟信号,产生的模拟信号经过数模转换后产生不同的数字信号。产生数字信号后由数字电路进行暂存处理,每个图像的像素通常对应于二维空间中一个特定的位置,并且有一个或者多个与那个点相关的采样值组成数值。这样就实现将采集的图像转换成了数字信号并以像素的形式暂存,然后读取数字信息实时显示。开始4.3图像采集流程图设计High=396,

13、width=726;nID=0;x1=0,y1=0;x2=0,y2=0;对窗口名称、大小、风格等属性进行设置。鼠标单击信息处理,调用库函数的属性设置节点函数封装设置全局变量hWnd of Capture处理鼠标消息MSG_1=X40A,wParam=0, MSG_2=X432,MSG_3=X1, MSG_4=X0,MSG_5=X435,MSG_6=X1,MSG_7=X0, MSG_8=X434, MSG_9=X30, MSG_10=X0;设置调用函数库节点属性封装函数是否有视频源?NY将采集图像发送到窗口显示同时进行检测处理停止?Y结束 图4-24.3图像采集前面板设计图4-3在前面板中主要由

14、自定义控件、图像捕获窗口、停止按键、捕获鼠标的窗口句柄等组成。4.4图像采集程序框图设计由于软件的运行比较复杂,数据的采集又是实时的,要求处理速度比较快,所以要对其进行整体设计,合理安排控件的调用和执行顺序。程序框图主要采用层叠式顺序结构,在层叠式结构中主要包括三个标签,他们分别是:前面面板视频窗口的设置程序、图像采集并显示的程序设计、定时循环程序。4.4.1前面板视频窗口的设置程序图4-4程序框图主要实现窗口化功能,avicap32.dll是Windows API应用程序接口相关模块,用于对摄像头和其它视频硬件进行AVI电影和视频的截取。此框图实现对图像采集窗口大小,窗口标题、窗口风格等属性

15、进行设置。该控件是当前线程里要捕获鼠标的窗口句柄,用以接收鼠标信号。在窗口化编程中,该函数只有前台窗口才能捕获鼠标。如果一个后台窗口想捕获鼠标,则该窗口仅为其光标热点在该窗口可见部份的鼠标事件接收消息。另外,即使前台窗口已捕获了鼠标,用户也可点击另一个窗口,将其调入前台。此函数不能被用来捕获另一进程的鼠标输入。在该设计中仅有一个图像采集显示窗口。用来表示视频窗口的名称。常量0设置左边距、右边距相对于父窗口。视频宽度视频高度两者的大小不影响像素的的大小,仅是窗口显示的大小,另外由于与显示相关的操作要放到UI线程里操作,所以要对调用库函数节点的属性进行设置。方法是双击然后弹出对话框,对相应设置进行

16、更改。4.4.2图像采集并显示的程序设计图4-5由于程序是层叠顺序执行的,通过全局变量,将值传递给下一程序,在设置好SMG、wParam的参数后,调用函数库节点完成函数的封装,完成封装后的函数的功能:该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。此时该函数把参数信息传递给前面板窗口,然后经过判断结构,判断设备是否存在视频源,若存在,执行层叠顺序结构进行图像采集,并把采集的图像数据在前面板窗口显示,用定时循环框对图像数据进行检测,再单击stop是程序停止运行。如果不存在视频源,图像不能采集,定时循环框将持续检测,直到按下停止按钮。4.4.3

17、图像采集定时循环程序图4-6程序框图用于定时检测图像采集信息的准确。主要参数有优先级、周期、期限、超时、偏移量等组成。主要通过定时循环采样读取图像信息,并检测信息是否出错,同时改程序中设计了图像采样系统的停止按钮。4.4.4图像采集程序调试图4-7程序编写完成后,要对系统进行软硬件的联机调试。这里把NI公司的USB摄像头和计算机连接,并在计算机上安装此软件工具包。具体操作如下:(1)运行本程序,在运行程序前设置图像显示窗口大小和像素大小,并显示实时采集到的图像。(2)当图像采集时,在界面上可以看到清晰的采集结果。如图4-6。第5章 总结和展望LabVIEW是一种程序开发环境,由美国国家仪器(N

18、I)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。从学习过程中也能看到这一点,利用框图来编程序即形象又容易记忆,当熟悉各个框图在什么地方时,编一个程序变得容易很多了。与C和BASIC一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储,等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子

19、VI)的结果、单步执行等等,便于程序的调试。它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,而且这款软件还提供了很多范例,让你想用的时候打开即用,节省了很多时间。再来谈谈我的设计,在做此设计时给了我很多感触,也遇到了很多困难,很多时候只是一点点问题,却能卡上我整整一天的时间,等到想明白的时候才发现原来是这么简单的问题。这个项目虽然看似短小,实质精悍。麻雀虽小,五脏具全。在设计的过程中学到了很多东西。特别是对于新型控件的设计。起初由于定时循环结构不甚了解,做的时候吃尽了苦头,还有就是对图像带数字的转换以及存储读取等方面的知识贫乏,走了一段很艰难的路

20、。但最后还是做出了成品,经过调试后,达到了我预想的效果,虽然过程艰辛,但还是令我很欢心。我的付出得到了我想要的回报。虽然我做出了这个设计,但是从中我感觉到我懂的知识太少了,如果我的基础再好一点的话,很多问题是很容易就能解决的。所以我要在以后的学习当中加强对LabVIEW的理解,真正达到熟练掌握。另外,如果程序是VI格式,那么在实际教学或者实验中有可能没有安装LabVIEW软件,这样的话就不能运行,因此,还应将程序转换为可执行文件,方便实际应用。致 谢这篇论文是在周先飞老师的悉心指导下完成的。回想做这个毕业设计的日子,遇到过很多困难,但困难过后便是惊喜,每个困难的来临都是不断进步和不断成长的源泉

21、。使我独立解决问题的能力得到了很大的提升,不管是自己在书上找突破口,还是在网上找相关问题的解决方法,亦或者是在图书馆翻阅大量的相关资料,都是在这段时间常有的。当然还有一些烦琐的问题我解决不好的,就是在指导老师周老师不厌其烦的指导下一点一点地解决的,班上的同学也是热情帮助我,想办法为我解决一些问题。在此我要深深地感激给过我帮助的老师和同学。祝福我的老师工作顺心,家庭美满,身体健康。祝福我的同学都能找到一份满意的工作。时间飞逝,转眼间大学三年就这样过去,又是一年毕业时。而今天毕业的主角是我们11届的学生,这三年里有太多美好的回忆,这都将成为我们每个人永远难忘的记忆。衷心谢谢我的同窗们,并且祝福你们

22、毕业顺利,顺心,顺意。不管将来我们在哪里都记得在芜湖职业技术学院的青春岁月。谢谢!参考文献1 林静 林振宇 郑福仁. LabVIEW虚拟仪器程序设计.北京: 人民邮电出版社,2010. 2 吴成东,孙秋野,盛科. LabVIEW虚拟仪器程序设计及应用.北京: 人民邮电出版社,2008. 3 刘其和,李云明. LabVIEW虚拟仪器程序设计与应用. 北京:化学工业出版社,2011.4 沈大鹏,高扬杰.虚拟仪器的设计与实现一则.仪表技术,2000 5 鞠阳.一种新型程控正弦信号发生器.仪表技术,1998 (3)6陈一尧,黄丽,方红斌.数字合成正弦波发生器.仪表技术,1998 7秦树人,汤宝平.面向21世纪的绿色仪器系统.中国机械工程,2000 8龙志强,赵海龙,罗辉.虚拟仪器测试技术研究.仪表技术,2000 9张小牛,侯国平,赵伟.虚拟仪器技术回顾与展望.测控技术,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号