首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于VC的密集星场测光软件设计
来源:本站整理  作者:佚名  2011-09-15 05:24:26



      密集星场的测光研究及其进展在恒星物理星系动力学、星系形成和演化及宇宙学等众多天文学领域具有重要意义。随着天文研究的进步和发展,对密集星场测光软件的要求越来越高。密集场测光软件作为天文研究的重要组成部分,不仅要实现自动寻星、孔径测光、建立点扩散函数(PSF)模型、星象分组、光度拟合等功能还要能方便广大天文研究者使用。而国际现有的密集场测光软件都是基于Linux的,对于非计算机专业的研究者来说安装和使用十分不便。

     设计和实现基于VC的密集星场测光软件是解决上述问题的有效途径。本系统采用MFC架构结合STL库,在Windows平台上开发,提高了代码的运行效率,为二次开发提供了极大的扩展性和灵活性。

    1 需求分析

  为了在密集场中测量出星像的亮度,通常的点扩散函数测光方法是在实际拍摄的CCD图像上拟合一个二维的光度分布函数模型(点扩散函数)并在这个模型上加一个天空背景[2]。因此要实现密集星场测光,计算机软件必须完成如下任务:
 (1)自动寻星。自动寻星是指能自动在CCD图像上搜寻并初步定位一些亮度比较强的物体,并且这些物体代表了实际的星象。
 (2)孔径测光。在稀疏场,孔径测光[5]是一种可靠的测光方法,在密集场孔径测光,为最后的光度拟合提供了合适的初值。
 (3)建立点扩散函数(PSF)模型。一个准确的点扩散模型必须被建立用来在密集星场测光。
 (4)光度拟合。一旦PSF模型被建立,就可以把它放在不同的星像上来拟合它们的光度。

    2 程序流程

   系统采用VC6.0和WindowsXP开发环境,系统的程序流程图如图1所示。

3 主要模块软件实现
3.1 动态链接库模块

 动态链接库模块主要调用了CFISIO库实现对FIT文件的读取,使用了如下函数:
 打开fit文件:
 fits_open_image(&FPtr, FilePath, READONLY, &status);
 读取图像数据类型:
 fits_get_img_type(fptr,&BITPIX,&status);
 读取图像维数:
 fits_get_img_dim(fptr,&NAXIS,&status);
 读取图像各维的长度:
 fits_get_img_size(fptr,NAXIS,NAXES,&status);
 读取曝光时间:  
 fits_read_keyword( fptr,keyname,m_exposure,NULL ,&status );
 关闭文件:
 fits_close_file(fptr,&status);
 其中fptr为fits文件句柄,status为状态指针,NAXIS只能为2,表示二维图像。NAEXS[0]存储横向像素数,NAEXS[1]存储纵向像素数。
3.2 自动寻星模块
 首先,选择一颗中等亮度的处在比较稀疏区域的星象,用二维高斯拟合法[4]来测得这颗星的半高全宽(full width half maximum);然后选择一个形如图2所示的高斯模板来与原始图像做卷积。在卷积后的图像上识别星象。这个卷积核(nbox)一般取3倍的高斯函数标准差(即1.274倍的FWHM)大小。

 

 

[1] [2]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:115,335.90000 毫秒