当前位置:首页 > 电源 > 数字电源
[导读] 摘 要:本文在LabVIEW和NI-IMAQ Vision软件平台下,利用通用图像采集卡开发一种图像实时采集处理虚拟仪器系统。通过调用动态链接库驱动通用图像采集卡完成图像采集,采集图像的帧速率达到25帧每秒。利用NI-IMAQ

     摘 要:本文在LabVIEW和NI-IMAQ Vision软件平台下,利用通用图像采集卡开发一种图像实时采集处理虚拟仪器系统。通过调用动态链接库驱动通用图像采集卡完成图像采集,采集图像的帧速率达到25帧每秒。利用NI-IMAQ Vision视频处理模块,进行图像处理,以完成光电探测器的标定。该系统具有灵活性强、可靠性高、性价比高等优点。

  1.引言

  美国国家仪器(NI)公司的虚拟仪器开发平台LabVIEW,使用图形化编程语言编程,界面友好,简单易学,配套的图像处理软件包能提供丰富的图像处理与分析算法函数,极大地方便了用户,使构建图像处理与分析系统容易、灵活、程序移植性好,大大缩短了系统开发周期。在推出应用软件的基础上,NI公司又推出了图像采集卡,对于NI公司的图像采集卡,可以直接使用采集卡自带的驱动以及LabVIEW中的DAQ库直接对端口进行操作。

  但由于NI公司的图像采集卡成本很高,大多用户难以接受,因此硬件平台往往采用通用图像采集卡,软件方面的图像处理程序仍采用LabVIEW以及视频处理模块编写。本文正是基于这样的目的,提出了一种在LabVIEW环境下驱动通用图像采集卡的方案,在TDS642EVM高速DSP视频处理板卡的平台下,完成实时图像采集及处理。

  在图象处理的工作中主要完成对CCD光电探测器的辐射标定。由于探测器在自然环境下获取图像时,会受到来自大气干扰,自身暗电流,热噪声等影响,使CCD像元所输出信号的数值量化值与实际探测目标辐射亮度之间存在差异,所以要得到目标的精确图像就必须对探测器进行辐射标定。

  2.图像采集卡简介

  闻亭公司TDS642EVM(简称642)多路实时视频处理板卡是基于DSP TMS320DM642芯片设计的*估开发板。计算能力可达到4Gips,板上的视频接口和视频编解码芯片Philips SAA7115H相连,实现实时多路视频图像采集功能,支持多种PAL,NTSC和SECAM视频标准。本系统通过642的PCI接口与主机进行数据交换。PCI支持“即插即用(PnP)”自动配置功能,使图像采集板的配置变得更加方便,其一切资源需求的设置工作在系统初启时交由BIOS处理, 无需用户进行繁琐的开关与跳线操作。PCI接口的海量数据吞吐,为其完成实时图像采集和处理提供保证。

  3.系统组成及工作原理

图1. 图像采集及实时处理系统框图

  图像采集的过程也就是图像采集板卡对来自CCD的标准视频信号(PAL制式)进行模数转换的过程,将量化后的数据通过PCI总线传入计算机内存,然后通过编制的应用程序读取显示。

  如图1所示, 彩色CCD相机输出的视频模拟信号经解码器SAA7115转换为数字信号并输入到642芯片中, 642将处理好的实时数字图像信号输出到编码器, 由编码器将数字信号转化为标准的PAL制式YCbCr视频信号输出到LCD上, 与此同时, 输出的Y-Cb-Cr格式数字视频信号经过视频端口的内部FIFO缓冲后,由642通过EDMA将数据传送到片外同步动态存储器芯片SDRAM中,其中包括四组数据,分别是Sem_标志变量(8bit);Y: Cb: Cr(4:1:1)图像信号:Y(720*574*8bit)数组,Cb(360*287*8bit)数组,Cr(360*287*8bit)数组,分别存储在SDRAM中的0x80003804,0x8102E000,0x81092E80,0x810AC280地址,以供应用程序使用。

  视频采集应用程序由LabVIEW编制完成。在需要进行图像采集时,LabVIEW发送读取SDRAM中存储的YCbCr格式图像数据的请求,642获得请求后,开始采集图像并将采集到的YCbCr数值存储到相应的内存地址,在642完成整一帧的图像采集之后,将SDRAM中的标志变量Sem设定为0,LabVIEW在这个过程中循环读取标志变量的值,当为0时,则从SDRAM中获得图像数据,也就是Y, Cb, Cr三个数组的数据,然后将其转化为LabVIEW能够显示的标准RGB格式输出该图像。[!--empirenews.page--]

  4.图像采集及图像处理

  4.1调用动态链接库驱动图像采集卡

  NI公司针对自己生产的图像采集卡附带有卡的驱动和管理程序,对于普通的I/O卡,还不能直接被LabVIEW所应用,必须采取其他方法。LabVIEW提供了4种调用外部程序代码的途径:端口直接操作、调用库函数节点(Call Library Function Node即CLFN)调用DLL(Dynamic Link Library动态连接库)、使用CIN(Code Interface Node,外部代码节点),调用Active X控件。其中端口直接操作,利用PortIn.Vi和PortOut.vi功能,此法应用简单,但无法实现较复杂的接口功能。而采用动态链接库,可以根据具体需要编写适当的程序,灵活利用LabVIEW的各项功能。较其余三种具有明显的优势。用户可以调用Windows标准的动态连接库(DLL),也可以调用用户自己编制的DLL,实现LabVIEW与硬件的连接。

  建立一个DLL需要的文件有:①h函数声明文件(可选,可包含在c源文件里);②c源文件(必需);③def模块定义文件(如果是使用标准调用或函数输出必需添加关键字__declspec (dllexport) 函数名)。H文件的作用是声明DLL要实现的函数原型,供DLL编译使用,同时还提供应用程序编译使用。C文件是实现具体文件的源文件,它有一个入口点函数,在DLL被初次调用的运行,做一些初始化工作。一般情况下,用户无须做什么初始化工作,只需保留入口点函数框架即可。def文件是DLL项目中比较特殊的文件,它用来定义该DLL项目将输出哪些函数,只有该文件列出的函数才能被应用函数调用。要输出的函数名列在该文件EXPORTS关键字下面。

  本系统在LabVIEW平台下调用动态链接库实现图像数据的采集主要分为五步:1.初始化并打开设备(DM642图像采集卡); 2.读取标志信号位,看是否初始化为默认值3.写入标志信号位,进行图像数据采集;4.对SDRAM中所存储的图像数据进行读取;5.关闭句柄并释放端口资源。主要调用动态链接库sd_pci64.dll的目标函数有PCI64_Open,PCI64_MemRead32和PCI64_Close,函数功能如下表所示:

  函数的具体参数如下:

  ①PCI64_API INT32 PCI64_Open( int BoardNum, PCI64_HANDLE * pHndl );

  BoardNum板口号(0-3),* pHndl 返回句柄的无符号指针,当返回值为0时,表示打开端口成功,非0时,表示失败。

  ②PCI64_API INT32 PCI64_MemRead32( PCI64_HANDLE Hndl, UINT32 Taddr, UINT32 Count , UINT32 * pData );

  获取由PCI64_Open传递的句柄指针,对目标地址存储的数据进行读取,需注意的是目标地址的寻址空间在4M之内,必须初始化一个所需目标数据大小的无符号32位数组空间。同样返回值为0时,表示成功,非0表示失败。

  ③PCI64_API INT32 PCI64_Close( PCI64_HANDLE Hndl );

  需要注意的是,在每次调用PCI64_MemRead32完成读取后,都要将端口关闭,释放地址空间。

  具体的调用过程如下:首先在新建的VI的Block Diagram中,Function> Advanced子菜单中添加Call Library Function Node控件,然后对其进行配置,添加该节点后进行配置的对话框如下图2所示:

图2调用CLFN配置框图[!--empirenews.page--]

  分别对DLLs文件名称及存放路径,函数调用方式,需要调用的目标函数的名称,参数个数,每个参数的类型,数据类型及返回值类型进行设置。设置完成后单击“OK”返回LabVIEW 的设计面板(diagram)中。此时,Call Library Function已经根据刚才配置好的参数个数和类型设置好了输人输出端口,和其它的LabVIEW节点图标一样,只需要将其对应的参数连线即可。

  程序调用sd_pci64.dll的目标函数PCI64_Open,PCI64_MemRead32和PCI64_Close完成对指定地址空间0x8102E000化为十进制21*49280,103320大小的数据读取,最后将读取的数据存储在无符号32位pData数组里面。

  在LabVIEW中利用CLFN节点可以较容易地实现访问动态连接库(DLL)。由于DLL是一个外部模块,提高了程序的开发效率,而且在购买普通数据采集卡的时候,厂商一般会给用户提供动态连接库(DLL),所以研究在LabVIEW平台下通过调用动态链接库功能来驱动普通图像采集卡实现图像采集的方法,成为值得推广的方法,具有重要意义。

  4.2 CCD图象标定

  完成CCD图像数据的标定,数字图象处理是该标定过程的关键,NI公司提供的图象处理模块IMAQ Vision为LabVIEW平台提供了完整的图像处理函数库,如各类边缘检测算子、自动阈值处理、各种形态学算法、滤波器、FFT等,该库包含大量当前证明成功的理论算法,使用户无需专业编程经验,即可迅速开发完成优秀的、适合本专业的图像处理与分析系统。

  在本系统中,对CCD光电探测器相对辐射定标的步骤如下:分别在标准光源照射和普通定标环境下各采集10幅图像,经过自动阈值处理和二值化,消除暗电流热噪声等因素的影响,取处理完得到的10幅图像的均值作为主标准图像和主参考图像。对图像上每个像素的灰度值,通过比对校正,完成CCD像元的不均匀响应校正,求出各自的标定系数,绘出灰度直方图。具体程序的前面板如图3所示:


图3 程序前面板

  5.结论

  本文使用TDS642EVM图像采集卡在LabVIEW平台上开发出一个稳定可靠、经济灵活的实时图像采集及处理系统。通过调用动态链接库,驱动图像采集卡完成图像采集;利用NI-IMAQ Vision提供的强大的图像处理功能通过实时图像处理完成对CCD光电探测器的辐射标定。LabVIEW的开放性,高度的编程灵活性和良好的界面,使高级复杂的应用开发变得简单;动态链接库机制使LabVIEW在对通用图像采集卡的支持上有了一个通用可行的途径。

  本文作者创新点:设计一种在LabVIEW平台完成对普通图像采集卡的实时图像采集及光电探测器的辐射标定系统。


 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

安路科技专注于研发通用可编程逻辑芯片技术及系统解决方案,公司正在不断向更多应用场景的产品矩阵拓展,以顺应下游市场蓬勃发展。安路科技基于PH1A90器件开发了4K摄像头图像采集与实时显示的典型应用,充分利用了PH1A系列F...

关键字: 4K摄像头 图像采集 数据采集

摘要:为了解决视频流数据实时显示和图像预处理问题,设计了基于FPGA和OV5640摄像头的图像采集和处理系统。该系统通过OV5640摄像头进行图像数据的采集,然后将其传输至FPGA内部,FPGA先控制视频流数据存储在SD...

关键字: FPGA OV5640 图像采集

摘 要 :学生在课堂上的考勤是学生日常管理的重要任务,传统的纸质点名方式会浪费很多时间和精力。现有许多非手工方式,虽然能节约精力,但是必须排队刷卡、采集虹膜、人脸或者指纹,也很费力。文中提出一种自动考勤系统,无需人工干预...

关键字: 人脸识别 图像采集 考勤系统 课堂视频 虹膜 出勤率

摘 要:机器视觉已在国内外引起了广范的关注,人们对机器视觉的应用呼声越来越高。文中给出一种以嵌入式芯片为核心,配合摄像头、网络接口等外设,搭建了基于OpenCV的嵌入式图像采集传输系统。从嵌入式微处理器的网络传输和图像处...

关键字: OpenCV3 嵌入式 图像采集 图像传输

面对超出想象的巨大通信市场需求,运营商正在寻求一条新的途径以更低的成本建造新型光传送网络,增强网络容量的扩展能力和组网灵活性。自动交换光网络(ASON)的出现,是在充分吸收了IP网络和技术的优点

关键字: 图像采集 tvp5146

  全球领先的光网络解决方案提供商Xtera CommunicaTIons, Inc. (“Xtera”)今天宣布推出专为海底电缆系统打造的新一代光中继器。此举将提升Xt

关键字: 图像采集 视频系统 智能系统

在12.5 Gbps CoaXPress® 2.0接口标准去年获得批准之前,机器视觉图像采集解决方案已经取代输送带,成为实现更快生产线吞吐量的主要障碍。Microchip Technology Inc.(美国微芯科技公司...

关键字: 视觉图像 图像采集 系统设计

  在制造工业竞争激烈的当代,全世界的制造工厂不得不以提高制造系统的自动化程度和稳定性等途径来节约成本、扩大生产、提高竞争力。   日益增加的人工劳动成本、越来越高的产品品质要求、比例不

关键字: 传感器 图像采集 机器视觉

这几年,大家都在讨论智能化,智能家电。人工智能已经成为社会发展的主流,家电行业更是做的风生水起。 无论是冰箱,空调还是电视等,都在大肆的宣传家居智能化。那么什么又是智能家电? 智

关键字: 人机交互 图像采集 指纹识别

什么是分布式处理系统的LED屏?它有什么特点?分布式视频处理系统作为基于网络传输的新型拼接技术,支持多种显示系统同时控制,可实现将多种分辨率传输到一块超高清大屏上,它在LED小间距屏市场有着很高的渗透率,业内三思航天级品...

关键字: led屏 分布式 处理系统
关闭
关闭