多功能天文经纬仪图像采集系统
2014-05-13张益恭李彬华杨磊程向明
张益恭,李彬华,杨磊,程向明
(1.昆明理工大学信息工程与自动化学院,云南 昆明 650500;2.中国科学院云南天文台,云南 昆明 650011;3.中国科学院天体结构与演化重点实验室,云南 昆明 650011)
多功能天文经纬仪图像采集系统
张益恭1,李彬华1,杨磊2,3,程向明2,3
(1.昆明理工大学信息工程与自动化学院,云南 昆明 650500;2.中国科学院云南天文台,云南 昆明 650011;3.中国科学院天体结构与演化重点实验室,云南 昆明 650011)
多功能天文经纬仪是云南天文台新近研制的一种基于通用CCD观测的天体测量望远镜。在这台新型望远镜中,用两个模拟相机分别测量仪器的水平差和高度轴的准直差。当望远镜工作时,望远镜控制系统发出两路触发信号,一路控制数字相机,另一路控制两个模拟相机。两个采集卡分别安装在不同的工作站上,工作在外触发模式。介绍了望远镜的转轴观测模式,主要包含转轴前和转轴后两个观测阶段,采集图像的时刻和数量是由外触发信号控制的。介绍了硬件结构图。说明了软件编写的流程和实现方法,并且对系统中涉及的主要程序算法进行了较为详细的说明。图像采集软件的编写采用VC++和Sapera LT。给出了采集系统软件的工作界面及图像采集系统采集的图像,并对数字相机拍摄的恒星像进行了简单的分析。
多功能天文经纬仪;图像采集系统;软件;硬件;算法
CN53-1189/P ISSN1672-7673
子午环是一种经典的天体测量仪器,几个世纪以来它一直被用来测量天体的位置。20世纪90年代初,欧洲空间局的依巴谷卫星(Hipparcos)进行了几乎覆盖全天区较亮恒星的首次空间天体位置测量,之后编制了约12万颗恒星的高精度星表(精度约1 mas)。此后,包括子午环在内的许多地面天体测量望远镜开始逐渐被淘汰或者开始进行适当的修改来满足其他的科学研究要求,例如美国海军天文台旗杆镇的8英寸天体测量望远镜(FASTT)[1]和云南天文台的低纬子午环(LLMC)[2-3]。随着地球科学的发展,某些经典的天文技术方法在地球与大气科学上有了新的应用,例如测量大气折射改正[2-3],铅垂线的校正[4]以及测定时间和纬度的残差[5]。
最近,云南天文台成功研制了一台多功能天文经纬仪的新型天体测量望远镜。这是一台小型反射望远镜,口径30 cm,配备了3个通用CCD相机,采用与低纬子午环类似的转轴观测方式进行成像观测。用一个非制冷的数字相机采集恒星像和人造星像,另外用两个模拟相机做水平差和轴准直差的测定。该望远镜可以用来建立本地大气折射实测模型,也可以测量地球的铅垂线变化。其图像采集系统就是为实现望远镜上3个光路中的图像采集功能设计开发的,本文主要介绍该系统的工作模式、硬件构成和软件设计方法。
1 系统的工作模式
多功能天文经纬仪采用的转轴观测[6-7]模式,是在被测星星像通过视场垂直中线之前约12 s时开始露光,先用主光路CCD照相机采集50幅主光路的人造星像,再采集得到100幅被测星图像(43 ms/幅),将它们叠在一起则获得所观测恒星按一定轨迹排列的100颗点像,采集被测星图像的同时电水准以及轴准直光路的两个模拟相机同时采集100幅图像;接着花费12 s时间将仪器上盘及其以上部分,包括望远镜镜筒、高度轴(水平轴)、左右叉臂和电水准等部件,绕方位轴(垂直方向)转置180°,同时将镜筒随着高度轴旋转预置天顶距约两倍的角度,使它仍然指向该被测星,露光约5 s,也得到被测星100幅图像,采集被测星像的同时电水准以及轴准直光路的两个模拟相机也同时采集100幅图像,然后采集50幅主光路人造星像。具体的工作模式见图1。
图1 多功能天文经纬仪采集系统工作模式Fig.1 Block diagram of the operation mode of the image acquisition system of the YNAO Multi-Function Astronomical Theodolite
2 系统的硬件
多功能天文经纬仪的图像采集系统主要由3个光路的采集子系统构成,分别为主光路、电水准光路和轴准直光路,其中主光路用来观测恒星,所使用的CCD相机是一个数字相机,电水准和轴准直光路用来测定仪器误差,所使用的CCD相机为模拟相机。
主光路的相机采用Imperx公司的BOBCAT ICL_B1410_SC000面阵相机。该相机采用Sony公司的ICX285AL,它是尺寸为2/3″的行间转移CCD,像素大小为6.45 μm×6.45 μm。在1 392×1 040分辨率,相机的像素深度为12 bit时,采集帧频可以到达23帧/秒。相机由一个12 V的直流电源供电。这个相机支持多种触发模式,包括外触发模式[8]。
数字相机通过Cameralink电缆连接Dalsa公司的X64-CL iPro数字采集卡。这种采集卡可以支持两个Base配置的Cameralink相机或者一个Medium配置的Cameralink相机,图像的传输速率可以达到528 MB/s[9]。多功能天文经纬仪的图像采集系统使用一个Base配置。
两路测误差的光路中用到的模拟相机是JAI公司的CV-M10SX面阵相机,用到的CCD尺寸是1/ 2″,像素大小为8.3 μm×8.3 μm。配合图像采集卡,在768×621分辨率,像素深度为8 bit时,采集帧频可以到达25帧/秒。相机由一个12 V的直流电源供电。这款相机也支持多种触发模式,包括外触发模式[10]。
模拟相机用两根专门定做的电缆连接到图像采集工作站的图像采集卡上。模拟相机用的图像采集卡是Dalsa X64-AN Quad,这个采集卡能够为每一个输入信号通道的准确跟踪提供时间戳,能够对4个具有独立格式的相机进行并行采集,图像传输的速度达到528 MB/s,支持PCI-X总线[11]。
系统用外触发模式控制相机的采集。对于数字相机,外触发信号通过板卡将TTL信号转换为LVDS信号,因为数字采集卡支持Cameralink标准,所使用的信号是LVDS信号。对于模拟相机TTL信号可以直接被使用。具体的图像采集流程如图2。
图2 图像采集系统框图Fig.2 Block diagram of the image acquisition system
3 系统的软件框架
多功能天文经纬仪的图像采集系统的软件用Visual C++6.0编写,编程过程中使用Dalsa公司的SaperaLT6.31Release开发包。Sapera LT[12-13]是用于图像采集与控制的功能强大的开发库。Sapera LT独立于硬件,可以进行多处理操作,还附有功能强大、易于使用的相机配置工具CamExpert,支持面扫描和线扫描CameraLink相机,并且提供实时视频显示和诊断信息。
在多功能天文经纬仪的图像采集系统中,用CamExpert配置硬件信息,包括相机以及采集卡的一些工作状态和模式,例如触发方式、内存大小等。
Sapera LT能加快软件的开发速度,在多功能天文经纬仪的图像采集系统中,对于3个相机的采集模块的软件编写用Sapera LT的一些API函数,对于不同的相机采用的API函数没有明显的差别,具体的流程图如图3。
4 程序设计方法
Sapera是一种高级的C++库,它主要包括两部分基础应用类(Basic Classes)和GUI类(GUI Classes)[12-13]。基础应用类提供了用户进行图像开发的基本函数,GUI类提供了许多常用设置对话框,使用者可根据自己的需要选用。
在对图像采集系统3个采集软件的编写中,由于用到的硬件配置的驱动都基于Sapera++,因此3个采集软件的编程技巧没有很大的区别。下面以数字相机为例介绍图像采集系统软件编程用到的一些方法。
图3 图像采集系统流程图Fig.3 Flowchart of the software for recording images through the image acquisition system
4.1 初始设置
地表水受到严重污染,城镇供水水源地水质不能达到有关标准;大量未经处理的废污水排入河道和渗井、渗坑,加之过量使用农药和化肥,使得河流和地下水受到严重污染。城市下游河道多为不能利用的超V类水体,减少了水资源的可利用量。
4.2 采集控制和图像的存储
相机采集的数据要经过3个节点,分别是相机、采集卡和图像处理工作站。图像从相机开始,经过采集卡,最终将数据保存在图像处理工作站的硬盘中。具体的实现方法见下面一段代码:
多功能天文经纬仪的图像采集软件有两种工作模式:一种是离线模式,另一种是在线模式。在线模式是指在有相机及采集卡的情况下软件工作的方式,检测到有硬件的连接,软件就会弹出硬件配置的对话框,当选定所有信息之后,软件会进入在线工作模式。SapAcquisition函数的功能是通过硬件的选择确定软件获取的数据来自哪一个相机;SapBufferWithTrash函数的功能是建立一个被称为trash buffer的附加资源,常用于实时图像处理操作中。当数据传送速度比处理速度快时,图像将被保存在trash buffer中,直到能够稳定输出。这个函数能够在图像处理工作站进行内存开辟。开辟内存空间的大小是由望远镜采集图像帧数确定。例如,一个采集阶段要采集200幅图像,开辟的内存空间就应该为200。单个内存空间为多大是由另外一个变量m_Acq决定的。此后就是如何将相机获取的数据转移到图像处理工作站的内存中。这时需要使用SapAcqToBuf函数,其功能将m_Acq变量所对应的数据,也就是相机传输到板卡的数据,转移到图像处理工作站的内存中。
离线模式是指没有连接相机但采集卡连接在图像处理工作站上时的工作状态,或者在进行硬件信息配置的时候选择取消,也就是相当于没有硬件接入情况下软件的工作模式。这种情况下使用SapBuffer函数开辟内存空间。该函数默认单块内存空间的大小为640×480,像素深度为8位。在这种模式下,图像采集等操作是无法进行的。
4.3 图像数据的存储
图像采集系统的最终目标是将相机获取的图像数据保存在图像处理工作站的硬盘中,下面的代码就是这个功能的实现:
4.4 图像自动存储功能的实现
在整晚的观测中,如果一直采用人工进行图像的存盘操作,工作量大且易出错,所以图像的自动存储是必须的。在多功能天文经纬仪的图像采集系统中,采用了一种自动存储方法实现这一功能。为此需要再创建一个图像存储的线程,因为图像的存储是一个大批数据的处理过程,如果采用单线程的方式,存储过程会影响主线程(也就是采集线程)的工作。在这个线程中实现图像自动存储功能的方法是,先获取纲要时间(即观测时刻),与工作站的机器时间(观测前已进行校正到本地时间)进行比较,如果机器时间小于纲要时间,就等待观测时刻的到来;然后按照多功能天文经纬仪的观测控制要求进行采集时序的设定并对采集的图像数据进行存储。由于存储要求的时间精度在秒量级,因此系统对于时间的控制是用Sleep( )函数实现。这是一个WIN32 API函数,通过这个函数整个系统就能很好地控制采集的时间。多功能天文经纬仪的实际观测证明了这种方法是可行的。
此外,在时间判断的问题上还涉及一个过午夜24点的问题。过24点后的纲要时间是小于之前的机器时间的,按上述的自动存储方法,图像在24点之后就不会被存储。解决这个问题的办法是对机器时间进行判断和调整,即当机器时间的整点数小于12时,就在这个时间变量上加24。
5 测试结果
多功能天文经纬仪已经试观测了半年之久,一晚上大约能够观测到200颗星,采集的图像大约有1.2TB,所有的图像被存储到图像处理工作站的磁盘阵列中,第二天上午对图像进行自动处理。图像采集软件的框架如图4。
对于轴准直以及电水准两个测误差的光路,目前采用的是3×3的星点板构成误差测量准直图像,如图5。
图4 多功能天文经纬仪图像采集软件界面Fig.4 A screenshot of the user interface of the software for recording images
图6是主相机拍摄的恒星像被放大之后得到的图像,以及该星像亮度值加和之后投影在X、Y轴方向(左边为X轴,右边为Y轴)的分布,可以看到星像亮度值基本符合高斯分布。这说明,对于用曝光时间很短(几十毫秒)的工业相机进行的恒星位置测量的要求而言,多功能天文经纬仪图像采集系统拍摄的恒星图像质量是不错的。
图5 模拟相机拍摄的准直图像Fig.5 An image recorded by one analog camera showing the axis collimation
图6 主相机拍摄的恒星像Fig.6 A stellar image recorded by the digital camera
6 结束语
多功能天文经纬仪是中国科学院云南天文台研制的一种新型天体测量望远镜。根据望远镜的总体技术要求,研制了多功能天文经纬仪图像采集系统。该系统采用一个数字相机和一块标准的Cameralink数字图像采集卡,两个模拟相机和一块模拟视频采集卡,以及两台图像工作站作为主要硬件设备。使用Microsoft Visual C++6.0和Sapera LT开发包开发了整个图像采集系统的软件部分。采集系统在几个月的观测过程中运行良好,获取图像数量巨大,图像质量也能满足后期图像处理的要求。
[1] Stone R C,Monet D G,Monet A K B,et al.The flagstaff astrometric scanning transit telescope (FASTT)and star positions determined in the extragalactic reference frame[J].The Astronomical Journal,1996,111(4):1721-1742.
[2] Mao W,Li B H,Yang L,et al.Constructing an observational model of the neutral atmospheric refraction delay from measured values of the astronomical refraction[J].The Astronomical Journal,2007,134(5):2054-2060.
[3] Mao W,Zhang H W,Li B H,et al.A possible means of improving the accuracy of refraction delay correction of neutral atmosphere[J].Chinese Astronomy and Astrophysics,2007,31(2):211-220.
[4] 铁琼仙,林辉,杨磊,等.建立经纬度异常变化三角监测网的仪器和误差的测定[J].天文研究与技术——国家天文台台刊,2008,5(4):360-364.
Tie Qiongxian,Lin Hui,Yang Lei,et al.The instruments and instrumental-error evaluation method for the triangular monitoring network of abnormal changes in the longitude and latitude of an observing station[J].Astronomical Research&Technology——Publications of National Astronomical Observatories of China,2008,5(4):360-364.
[5] 胡辉,苏有锦,付红,等.大姚、普洱地震前云南天文台时纬残差异常[J].自然灾害学报,2007,16(5):106-110.
Hu Hui,Su Youjin,Fu Hong,et al.Anomalies in time-latitude residuals at Yunnan Observatory before Dayao and Puer earthquakes[J].Journal of Natural Disasters,2007,16(5):106-110.
[6] Mao W,Li Z M,Fan Y,et al.A new method of determining absolute azimuth and latitude and suggestion for a new type of meridian circle[C]//IAU Symp,1986,109:551-552.
[7] 冒蔚,李志明,范瑜,等.子午天文方法[M].北京:科学出版社,1987.
[8] Imperx Inc.BOBCAT Hardware User’s Manual[EB/OL].[2012-12-29].http://www.imperx.com/bobcat/icl-b1410(2009).
[9] DALSA Coreco Inc.X64-CL iProTMSeries User’s Manual[EB/OL].[2012-12-29].http://www.teledynedalsa.com/prot/mv/manuals(2005).
[10] JAI Corp.Monochrome Progressive Scan Camera CV-M10SX Operation Manual[EB/OL]. [2012-12-29].http://www.jai.com/en/products/cv-m10sxc(2009).
[11] Coreco Imaging Inc.X64-AN QuadTMUser’s Manual[EB/OL].[2012-12-29].http://www.teledynedalsa.com/prot/mv/manuals(2004).
[12] Dalsa.Sapera LTTM6.31 User’s Manual[EB/OL].[2012-12-29].http://www.teledynedalsa.com/mv/support(2009).
[13] Dalsa.Sapera++LTTM6.31 Programmer’s Manual[EB/OL].[2012-12-29].http://www.teledynedalsa.com/mv/support(2009).
The Image Acquisition System of the YNAO Multi-Function Astronomical Theodolite
Zhang Yigong1,Li Binhua1,Yang Lei2,3,Cheng Xiangming2,3
(1.College of Information Engineering and Automation,University of Science and Technology of Kunming,Kunming 650500,China,Email:lbh@bao.ac.cn;2.Yunnan Observatories,Chinese Academy of Sciences,Kunming 650011,China;3.Key Laboratory for the Structure and Evolution of Celestial Objects,Chinese Academy of Science,Kunming 650011,China)
A new telescope for astrometry,the YNAO Multi-Function Astronomical Theodolite,has been built in the Yunnan Observatory.Its main imaging device is a digital CCD camera without cooling.Two analog CCD cameras are used to measure telescope pointing errors in the azimuth and altitude directions,respectively. In using the telescope two sets of triggering signals are generated from the telescope control system,for controlling the digital camera and the analog-camera pair,respectively.The two image acquisition cards are separately installed in two workstations and can be operated in an external triggering mode.We describe the telescope operation mode which involves using rotation of the telescope.The observation mode can be described as two sets of exposures,which are before and after the telescope rotation,respectively.The start moments and amounts of exposures are set by external signals.The paper shows the block diagram of the entire image acquisition system and the flowchart of the software of using the system.The paper also gives the details of main programming methods of the software based on the VC++and Sapera LT.As a demonstration of the effectiveness of the system,we provide a screenshot of the user interface of the software,some images acquired by the cameras,and an analysis of a stellar image recorded by the digital camera.
Multi-Function Astronomical Theodolite;Image Acquisition System;Software;Hardware;Programming method
P111
A
1672-7673(2014)01-0072-08
2012-12-29;修定日期:2013-01-14
张益恭,男,硕士.研究方向:探测与成像技术.Email:zhangyigong198807@126.com
李彬华,男,教授.研究方向:天文技术与方法,电路与系统.Email:lbh@bao.ac.cn