一种基于LabVIEW的EMCCD相机数据采集驱动方法技术

技术编号:14964535 阅读:1040 留言:0更新日期:2017-04-02 19:01
本发明专利技术公开了一种基于LabVIEW的EMCCD相机数据采集驱动方法,首先调用相机内部函数,对相机进行初始化;其次,设置相机各模块的模式;然后计算相机相关拍摄参数,获取相机探测器像素大小;开辟图像存储阵列;再次,设置For循环,进行图像采集和实现暂停功能;最后调用ShutDown命令函数释放内存空间。本发明专利技术减少很多不必要的函数调用,使程序得到了极大的简化;不再受限于只能使用Andor公司的Solis软件,而可以使相机可以与其他LabVIEW驱动的硬件相结合,达到数据采集、图像处理等不同目的,弥补了Solis不能与LabVIEW连接使用的缺陷,使用范围更广,同时达到自由控制相机的拍摄帧数,可在不停止相机拍摄的情况下暂停查看当前单帧图像细节的目的。

【技术实现步骤摘要】

本专利技术属于电子倍增CCD成像系统的图像采集技术,特别是一种基于LabVIEW的EMCCD相机数据采集驱动方法
技术介绍
随着科学信息技术的飞速发展,世界已步入了光子的时代,人们获取信息的手段在向不同波段等更广阔的领域扩展。图像信息作为最直接最有效的信息,已得到了广泛重视。如何获得更清晰更准确的图像信息,成为了重要的研究内容。微光成像技术正是顺应了这一发展趋势,成为当今世界发达国家大力发展的军民两用的新兴高科技之一。电子倍增CCD(ElectronMultiplicationChargeCoupledDevice,EMCCD)是探测领域内灵敏度极高的一种高端光电探测产品,作为新型的全固态微光成像器件,相比于传统微光成像器件具有体积小、寿命长、量子效率高、功耗低、灵敏度高等优点,在微光成像领域有很大的发展潜力和应用前景,如图1所示为电子倍增CCD结构示意图。但是现有的电子倍增CCD相机存在不可避免的缺陷是:数据读出方式受限,无法与其他硬件相连接使用,造成使用范围非常有限。LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。LabVIEW开发环境集成了工程师和科学家快速构建各种应用所需的所有工具,旨在帮助工程师和科学家解决问题、提高生产力和不断创新。但如何利用LabVIEW软件来连接EMCCD相机、成功地控制EMCCD相机的拍摄和数据采集也是一大技术难题。虽然Andor公司提供了Solis软件,可以与相机连接并拍摄,但是它的使用范围仅限制于软件本身,无法与后续的数据处理硬件相结合,仅可拍照,作用单一,没有实时性。其次,当相机出现故障时,无法方便的知晓故障原因。此外,当实验是基于LabVIEW时就无法与之连接并进行数据采集,也就无法实现控制拍摄帧数和暂停查看的功能,并且LabVIEW是连接成像系统、图像处理系统硬件的桥梁,因此具有相当大的技术缺陷。
技术实现思路
本专利技术的目的在于提供一种基于LabVIEW的EMCCD相机数据采集驱动方法。实现本专利技术目的的技术解决方案为:一种基于LabVIEW的EMCCD相机数据采集驱动方法,首先调用相机内部函数,对相机进行初始化;其次,设置相机各模块的模式;然后计算相机相关拍摄参数,获取相机探测器像素大小;开辟图像存储阵列;再次,设置For循环,进行图像采集和实现暂停功能;最后调用ShutDown命令函数释放内存空间。本专利技术与现有技术相比,其显著优点:(1)在一开始就调用初始化函数,初始化成功后再进行下面工作,从而简化相机初始化次数,加快了响应时间,具有良好的实时性,减少很多不必要的函数调用,使程序得到了极大的简化。(2)通过设置加在调用相机采集图像的命令函数和传输图像命令函数的For循环的N值来自由控制相机的拍摄帧数。通过给获取图像命令函数增加For循环,增大For循环的N参数可以实现在不停止相机拍摄的情况下可以暂停,查看任意单帧图像细节的功能。(3)利用LabVIEW软件界面,可随时查看相机各部分工作状态,增加可控性,便于快速找到错误和修改。(4)不再受限于只能使用Andor公司的Solis软件,而可以使相机可以与其他LabVIEW驱动的硬件相结合,达到数据采集、图像处理等不同目的,弥补了Solis不能与LabVIEW连接使用的缺陷,使用范围更广,具有更高的实用价值,同时达到自由控制相机的拍摄帧数,可在不停止相机拍摄的情况下暂停查看当前单帧图像细节的目的。下面结合附图对本专利技术作进一步详细描述。附图说明图1是电子倍增CCD结构示意图。图2是本专利技术的流程示意图。具体实施方式结合图2,本专利技术基于LabVIEW的EMCCD相机数据采集驱动方法,首先调用相机内部函数,对相机进行初始化;其次,设置相机各模块的模式;然后计算相机相关拍摄参数,获取相机探测器像素大小;开辟图像存储阵列;再次,设置For循环,进行图像采集和实现暂停功能;最后调用ShutDown命令函数释放内存空间。实现上述过程的具体步骤如下:步骤一,通过USB接口,连接相机和电脑,通过NIMAX确定相机连接成功。步骤二,打开LabVIEW,创建库函数节点,调用atmcd32d.dll库文件中的Initialize函数,对相机进行初始化。步骤三,设置相机各模块功能模式,包括快门模式、光圈模式、读取模式和数据获取模式,即在LabVIEW中建立顺序结构,每个序列用来设置一个功能模式,所有模式的设置顺序任意,具体操作如下:(1)调用SDK中的库文件atmcd32d.dll中的SetTriggerMode函数设置相机快门模式,给SetTriggerMode函数输入一个常量0,即应用相机的内触发模式;(2)调用SDK中的库文件atmcd32d.dll中的SetGateMode函数设置相机光圈模式,给SetGateMode函数输入一个常量3,即使相机光圈一直打开;(3)调用SDK中的库文件atmcd32d.dll中的SetReadMode函数设置相机读取模式,给SetReadMode函数输入一个常量4,即应用相机读取图像;(4)调用SDK中的库文件atmcd32d.dll中的SetAcquisi-tionMode函数设置相机的获取模式,给SetAcquisitionMode函数输入一个常量1,即应用相机SingleScan模式。步骤四,设置相机相关参数,包括曝光时间和增益大小,具体操作如下:(1)调用SDK中的库文件atmcd32d.dll中的SetExposure-Time函数设置相机的曝光时间,曝光时间值设置在0.02可得到最佳拍摄效果;(2)调用SDK中的库文件atmcd32d.dll中的SetEMGainMode函数设置相机增益大小,增益值范围为0~300,根据自己需要设置,获取相机探测器像素信息。步骤五,传递用户设置信息给相机,计算相机拍摄单帧需要时间,即曝光时间、积累时间和Kinetic周期时间的总和,以及用户设置增益时间。具体操作如下:(1)调用SDK中的库文件atmcd32d.dll中的GetEMCCDGain函数,使相机获取用户设置的增益大小;(2)调用SDK中的库文件atmcd32d.dll中的Get本文档来自技高网
...
一种基于LabVIEW的EMCCD相机数据采集驱动方法

【技术保护点】
一种基于LabVIEW的EMCCD相机数据采集驱动方法,其特征在于首先调用相机内部函数,对相机进行初始化;其次,设置相机各模块的模式;然后计算相机相关拍摄参数,获取相机探测器像素大小;开辟图像存储阵列;再次,设置For循环,进行图像采集和实现暂停功能;最后调用ShutDown命令函数释放内存空间。

【技术特征摘要】
1.一种基于LabVIEW的EMCCD相机数据采集驱动方法,其特征在于首
先调用相机内部函数,对相机进行初始化;其次,设置相机各模块的模式;然后
计算相机相关拍摄参数,获取相机探测器像素大小;开辟图像存储阵列;再次,
设置For循环,进行图像采集和实现暂停功能;最后调用ShutDown命令函数释
放内存空间。
2.根据权利要求1所述的基于LabVIEW的EMCCD相机数据采集驱动方
法,其特征在于具体实现步骤如下:
步骤一,通过USB接口,连接相机和电脑,通过NIMAX确定相机连接成
功;
步骤二,打开LabVIEW,创建库函数节点,调用atmcd32d.dll库文件中的
Initialize函数,对相机进行初始化;
步骤三,设置相机各模块功能模式,包括快门模式、光圈模式、读取模式和
数据获取模式;
步骤四,设置相机相关参数,包括曝光时间和增益大小;
步骤五,传递用户设置信息给相机,计算相机拍摄单帧需要时间,即曝光时
间、积累时间和Kinetic周期时间的总和,以及用户设置增益时间;
步骤六,获取相机探测器像素信息;
步骤七,运用LabVIEW的初始化矩阵功能预先开辟一块内存,设置获取图
像的起始存储地址;
步骤八,设置For循环,命名为FOR1,在FOR1循环函数中调用相机采集
图像的命令函数和传输图像命令函数,进行连续采集,并将采集的图像存储到预
先开辟的阵列中;
步骤九,给相机数据传输并显示函数增加For循环,命名为FOR2,通过增
大FOR2循环的N参数实现拍摄途中暂停,查看当前单帧图像的细节功能;
步骤十,将所有调用函数的第一个返回值输出并在LabVIEW的前面板中显
示出所拍的图像;
步骤十一,调用ShutDown命令函数释放内存空间,关闭相机。
3.根据权利要求2所述的基于LabVIEW的EMCCD相机数据采集驱动方
法,其特征在于步骤三中,设置相机功能模式,包括快门模式、光圈模式、读取

\t模式和数据获取模式,即在LabVIEW中建立顺序结构,每个序列用来设置一个
功能模式,所有模式的设置顺序任意,具体操作如下:
(1)调用SDK中的库文件atmcd32d.dll中的SetTriggerMode函数设置相机
快门模式,给SetTriggerMode函数输入一个常量0,即应用相机的内触发模式;
(2)调用SDK中的库文件atmcd32d.dll中的SetGateMode函数设置相机光
圈模式,给SetGateMode函数输入一个常量3,即使相机光圈一直打开;
(3)调用SDK中的库文件atmcd32d.dll中的SetReadMode函数设置相机读
取模式,给SetReadMode函数输入一个常量4,即应用相机读取图像;
(4)调用SDK中的库文件atmcd32d.dll中的SetAcquisi-tionMode函数设置
相机的获取模式,给SetAcquisitionMode函数输入一个常量1,即...

【专利技术属性】
技术研发人员:张闻文李梦颖陈钱顾国华何伟基路东明于雪莲任侃
申请(专利权)人:南京理工大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1