基于MATLAB的一维光谱可视化与分析工具的设计与实现
张珊瑚, 邱丹, 聂嘉潞, 李崇晟, 王习东, 田海俊, 刘高潮, 郑胜     
三峡大学天文与空间科学研究中心, 湖北 宜昌 443002
摘要: 随着LAMOST光谱巡天项目的不断推进,积累的光谱数量已经步入千万量级。因科学研究需求或大量低信噪比光谱的不断产出,在光谱处理过程中,常涉及大量的人工识谱任务。为了方便用户高效便捷地进行人工识谱,基于MATLAB设计并实现了一套一维光谱可视化与分析工具。该工具包括谱线标识、滤波去噪、红移测量、等值宽度估算等功能。该工具操作简单、直观,在特殊天体搜寻、LAMOST"UNKONWN"光谱的人工处理等方面具有较高的使用价值。
关键词: MATLAB    一维光谱    工具    红移测量    等值宽度估算    
Design and Implementation of Visualization and Analysis Tool for 1-D Spectrum Based on MATLAB
Zhang Shanhu, Qiu Dan, Nie Jialu, Li Chongsheng, Wang Xidong, Tian Haijun, Liu Gaochao, Zheng Sheng     
Center for Astronomy and Space Science, Three Gorges University, Yichang 443002, China
Abstract: With the development of LAMOST spectroscopic Sky Survey project, the accumulated spectra in the world have stepped into tens of millions of magnitudes. Due to the need of scientific research or the continuous output of a large number of low signal-to-noise ratio spectra, a large number of manual spectral identification tasks are often involved in spectral processing. In order to facilitate users to carry out manual spectrum recognition efficiently and conveniently, this paper designs and implements a one-dimensional spectral visualization and analysis tool based on MATLAB programming technology. The tool includes spectral line identification, filtering and denoising, redshift measurement, and equivalent width estimation. The tool is simple, intuitive in operation. It has high application value in the search of special celestial objects and the artificial processing of LAMOST "UNKONWN" spectra.
Key words: MATLAB    1-D spectra    Tools    Redshift measurement    Equivalent width estimation    

随着各大型光谱巡天项目的不断开展,最近十几年来,天文学领域已收集了丰富的天体光谱,这些光谱为科学研究提供了重要的数据基础。我国自主研发的大天区面积多目标光纤光谱天文望远镜(Large Sky Area Multi-Object Fiber Spectroscopy Telescope, LAMOST)[1]自2012年正式巡天到2019年3月,已经获取了1 125余万条光谱,其中“UNKNOWN”光谱100余万条。随着巡天观测的深入,“UNKONWN”光谱会越来越多。

这些“UNKONWN”光谱大多数因为信噪比较低,传统的算法无法处理,也可能有极少数奇异的天体,由于谱型奇异,传统的算法无法识别,如文[2]提出了基于加权滤波的低信噪比LAMOST光纤光谱信号降噪。由于每条光谱的获取成本较高,且这些光谱本身可能含有丰富的科学价值,不能舍弃,因此,如何识别挖掘这些“UNKONWN”光谱的科学价值是急需解决的问题。天文学家可以对这些低信噪比光谱进行分类和参数值估计,但是,如此巨量的数据仅靠少数专家利用有限的时间和精力完成人工处理是不可能的,必须开发自动化的光谱分析软件。“工欲善其事,必先利其器”,只有借助良好的光谱分析软件,天文学家才能便捷地对光谱进行分析和研究,从而提高工作效率和科学产出。

国内外专家设计了诸多一维光谱数据可视化与分析软件。比如,欧洲空间局虚拟天文台团队开发的VOSpec[3],可以对光谱进行查询、分析并拟合光谱能量分布;美国空间望远镜科学研究所开发的SpecView[4],可以对光谱进行查询、可视化与分析;德国虚拟天文台团队与捷克共和国科学院天文研究所共同开发的SPLAT[5],可以显示、比较、修改和分析天文光谱数据,并能查询和下载光谱;法国天体物理学和行星学研究所开发的CASSIS[6],可以查询光谱、估算谱线的柱密度等;中国科学院国家天文台开发的ASERA[7],可以识别类星体光谱和测量红移;文[8]设计了一套基于数据挖掘的专家识谱平台[8],可以对光谱数据进行管理、可视化与分析、科学研究与普及等。这些软件能挖掘天体光谱的科学价值,然而,VOSpec, SpecView, SPLAT对LAMOST光谱数据存在不兼容现象;ASERA主要针对类星体的光谱设计,且不能进行滤波去噪、等值宽度估算等。

为此,本文基于MATLAB[9]设计并实现一套一维光谱的可视化与分析工具,重点完成“UNKNOWN”的人工处理,其中包括光谱的人工分类、光谱的红移和等值宽度等特征物理参量的测量、特殊天体搜寻等科学目标。设计的可视化界面力求简洁直观,适合普通学生使用,通过发动学生力量,逐渐消化不断产生的“UNKNOWN”光谱数据。

1 一维光谱可视化与分析工具的总体结构设计

本文设计一个基于MATLAB开源的一维光谱可视化与分析工具,利用MATLAB设计的图形用户界面实现一维光谱的可视化,并结合相关算法实现对光谱平滑去噪、红移测量、等值宽度估算等功能。一维光谱可视化与分析工具的总体结构如图 1

图 1 一维光谱可视化与分析工具总体结构 Fig. 1 Overall architecture design of 1-D spectral visualization and analysis tool

一维光谱可视化与分析工具分为3部分,分别为数据导入、数据可视化和数据分析。

(1) 数据导入:用户将本地光谱数据导入一维光谱可视化与分析工具,光谱文件格式主要分为FITS格式、CSV格式和ASCⅡ格式。LAMOST, SDSS等大型巡天项目的光谱文件通常为FITS格式。

(2) 数据可视化:导入光谱数据后,通过MATLAB程序设计实现光谱数据可视化。光谱数据可视化包括特征谱线标识、多光谱加叠、光谱横纵坐标轴设置、谱线类型设置等。标准谱线文件是在静止坐标系下特征谱线的波长列表,通过导入标准谱线文件进行谱线标识。

(3) 数据分析:数据分析包括红移或视向速度的测量、滤波降噪以及等值宽度的估算等。运用定义法计算红移或视向速度,运用小波平滑去噪算法进行光谱去噪处理,运用定义法测量光谱的等值宽度。

2 一维光谱可视化与分析工具的具体实现

可视化界面设计分为桌面设置、光谱数据导入设置、数据可视化与分析设置3部分,数据分析功能主要包括光谱去噪处理、光谱红移或视向速度的测量和等值宽度测量。这些功能都通过MATLAB实现。

2.1 桌面设置 2.1.1 桌面颜色设置

用户可根据个人的喜好选择不同的颜色界面,系统设计了6种颜色可供选择,分别为绿色(Summer Greens)、蓝色(Winter Blues)、橙色(Earthy Copper)、粉色(Subtle Pinks)、灰色(Gray Tones)和黑色(Dark Blacks)选项。

2.1.2 Logo图标设置

在图形用户界面的左上角是系统的Logo展示区,用户可设置自己的Logo图标。

2.2 数据导入设置

光谱数据导入过程如图 2

图 2 FITS光谱文件导入过程图 Fig. 2 Diagram of importing FITS spectral file

系统仅支持导入一维光谱数据,且主要支持FITS文件格式,用户需要将本地FITS光谱数据上传至系统中。

2.3 数据可视化设置 2.3.1 谱线标识

谱线标识能辅助用户识别光谱上主要的特征谱线,在静止坐标系下测得的常见特征谱线波长如表 1

表 1 常见特征谱线的波长列表(单位:λ/nm) Table 1 The wavelength list of some common spectral lines (unit: λ/nm)
Spectral line Static coordinates/nm
O Ⅵ 1 033.8
Ly 1 215.7
N Ⅴ 1 240.8
O Ⅰ 1 305.5
C Ⅱ 1 335.3
Si Ⅳ 1 397.6
C Ⅳ 1 549.5
He Ⅱ 1 640.4
O Ⅲ 1 665.8
Al Ⅲ 1 857.4
C Ⅲ 1 908.7
Ne Ⅳ 2 439.5
Mg Ⅱ 2 799.1
Ne Ⅴ 3 346.8
Ne Ⅵ 3 426.8
O Ⅱ 3 727.1
He Ⅰ 3 889
S Ⅱ 6 718.3
N Ⅰ 6 529
N Ⅱ 6 549.9
Li 6 707.9
K 3 934.8
H 3 969.6
G 4 305.6
Mg Ⅰ 5 176.7
Na Ⅰ 5 895.6
Ca Ⅱ′ 8 500.4

点击Speclines按钮,系统根据用户设置的红移值,将特征谱线以虚线的形式显示。

2.3.2 多光谱加叠

点击Hold on按钮,图形用户界面可以同时导入多条一维光谱,并对这些光谱进行比较分析,点击Clear按钮清除可视化界面上的光谱图像。多光谱加叠显示如图 3

图 3 多光谱加叠图 Fig. 3 Diagram of multi-spectrums overlapping

图 3显示了两条不同的类星体光谱图像,红色虚线显示的特征谱线有较强的吸收线,特征谱线Mg Ⅱ发生红移后波长坐标在650~675 nm之间,特征谱线C Ⅲ发生红移后波长坐标在450 nm左右。

数据可视化还包括对光谱图像进行网格划分、改变光谱横纵坐标轴的范围、设置谱线类型和设置图形用户界面的标题,用户可以根据自己的需求在可视化界面的编辑框进行设置。

3 光谱数据分析功能的实现

根据文[10]的小波去噪方法、文[11]的等值宽度算法以及文[12-13]的红移测量和谱线证认方法,本文运用MATLAB实现了光谱平滑去噪、红移测量和等值宽度测量等光谱分析功能。

3.1 光谱平滑去噪算法

小波去噪方法既能去除图像中的噪声,又尽可能地保留图像局部的细节,因此小波去噪法可以很好地对光谱进行平滑去噪处理。

3.1.1 光谱平滑去噪法的原理

设(x, y)为图像中点的坐标,f(x, y)为含有噪声的图像,e(x, y)为图像的噪声干扰,σ为噪声方差。图像去噪后可以表示为

$ g(x, y)=f(x, y)-\sigma e(x, y), (x=3700, 3701, \ldots, 9000 ; y=-10, -9, \ldots, 10). $ (1)

小波去噪的主要步骤:

(1) 对f(x, y)作小波变换,得到各尺度的小波系数w(j, k)

(2) 设定各分解层阈值,对小波系数w(j, k)进行阈值处理,得到小波估计系数$\widehat{w}$(j, k);

(3) 重构小波系数,再利用小波估计系数$\widehat{w}$(j, k)进行重新构造,得到去噪处理后的图像$\widehat{f}$(x, y)。

3.1.2 阈值函数选择

阈值的确定和对小波系数的阈值处理是小波去噪的关键,这里选择半软阈值法进行阈值处理:

$ {{{\hat{w}}}_{(j, k)}}=\left\{ \begin{matrix} \text{sgn} \left( {{w}_{(j, k)}} \right)\left( \left| {{w}_{(j, k)}} \right|-\alpha \lambda \right) & \left( {{w}_{(j, k)}}\lambda \right) \\ 0 & \left( {{w}_{(j, k)}}<\lambda \right) \\ \end{matrix} \right., $ (2)

其中,w(j, k)为处理前的小波系数;$\widehat{w}$(j, k)为处理后的小波系数;λ为阈值,且0<α<1。

3.1.3 光谱平滑去噪结果

本文将光谱平滑程度设置成6个等级,分别为3、5、7、9、11和13(单位:pix),平滑程度为3 pix和11 pix的光谱图去噪效果如图 4

图 4 光谱去噪程度比较图 Fig. 4 Comparisons of spectral denoising

图 4可以看出,平滑程度为11 pix的光谱图比平滑程度为3 pix的光谱图更平滑,视觉效果更好,但是平滑程度为11 pix可能会损伤部分微小的光谱特征。因此,用户需要根据自己的需求选择平滑程度。

3.2 红移或视向速度测量算法

在物理学和天文学领域,红移是指物体的电磁辐射由于某种原因使波长被拉伸的现象,具体表现为光谱的谱线朝红端移动了一段距离,即波长变长,频率降低。红移现象目前多用于天体的移动以及规律的预测上,红移值是河外天体最重要的物理参数之一。

3.2.1 红移测量法的原理

设谱线的静止波长为λ′,观测波长为λ, z为红移值,则

$ \lambda =(1+z){{\lambda }^{\prime }}, $ (3)
$ z=\frac{\lambda}{\lambda^{\prime}}-1. $ (4)

谱线的静止波长λ′如表 1,根据可视化界面的特殊谱线位置确定观测波长λ后,将观测波长输入编辑框,点击Enter键,得到特殊谱线的红移值。

3.2.2 红移测量结果

本文以3条光谱测量为例,运用一维光谱可视化与分析工具测得光谱的特征谱线C Ⅲ和Mg Ⅱ的红移值如表 2

表 2 光谱特征谱线红移值 Table 2 Spectral redshift
Spectral file name C Ⅲ Mg Ⅱ
spSpec-51817-0399-235.fit 1.356 6 1.367 5
spSpec-52201-0692-378.fit 1.357 0 1.365 6
spSpec-55920-F5592001-sp09-085.fits 1.358 7 1.363 6
3.3 等值宽度测量算法

等值宽度,即与吸收(或发射)谱线轮廓和连续谱之间包围的面积相当的高度为1的矩形宽度。

3.3.1 等值宽度测量法的原理

以观测光谱C Ⅲ谱线为例,天体特征谱线等值宽度的测量方法如图 5

图 5 C Ⅲ的等值宽度测量示意图 Fig. 5 Chart of equivalent width measurement for C Ⅲ

已知特征谱线峰值的取值范围[(wl1, fl1), (wln, fln)],峰值左边点的取值范围[(a1, b1), (aj, bj)],峰值右边点的取值范围[(c1, d1), (ck, dk)],峰值左边点的坐标(wc1, fc1)为

$ w{{c}_{1}}=\frac{\sum{{{a}_{j}}}}{j}, $ (5)
$ f{{c}_{1}}=\frac{\sum{{{b}_{j}}}}{j}. $ (6)

峰值右边点的坐标(wc2, fc2)为

$ w{{c}_{2}}=\frac{\sum{{{c}_{k}}}}{k}, $ (7)
$ f{{c}_{2}}=\frac{\sum{{{d}_{k}}}}{k}. $ (8)

(wli, fci)是坐标(wc1, fc1)和(wc2, fc2)连接线上的一点,(wli, fci)的值为

$ f{{c}_{i}}=\frac{f{{c}_{2}}-f{{c}_{1}}}{w{{c}_{2}}-w{{c}_{1}}}\left( w{{l}_{i}}-w{{c}_{1}} \right)+f{{c}_{1}}, $ (9)

等值宽度的计算结果为

$ ew=\int_{w{{l}_{1}}}^{w{{l}_{n}}}{\left( 1-\frac{{{f}_{{{c}_{i}}}}}{{{f}_{{{l}_{i}}}}} \right)}\text{d}wl. $ (10)
3.3.2 等值宽度测量结果

本文以3条光谱测量为例,运用一维光谱可视化与分析工具测得光谱的特征谱线C Ⅲ和Mg Ⅱ的等值宽度值如表 3

表 3 光谱特征谱线等值宽度 Table 3 Spectral Equivalent Width
Spectral file name C Ⅲ Mg Ⅱ
spSpec-51817-0399-235.fit 58.592 73.492
spSpec-52201-0692-378.fit 53.797 67.268
spSpec-55920-F5592001-sp09-085.fits 59.297 35.366
4 总结与展望

LAMOST, 2dF, SDSS等大型巡天项目不断获取大量的光谱数据,这些光谱为天文学研究提供了重要的数据基础。为方便用户深度挖掘这些光谱的科学价值,本文基于MATLAB研发了一套一维光谱可视化与分析工具。该工具具备以下几方面的优势:

(1) 针对一维光谱数据,集成多种可视化与分析算法,方便用户简单快捷地计算光谱的红移或视向速度、等值宽度等重要物理参数。

(2) 界面简洁,操作步骤简单,用户只需要掌握可视化界面的操作方法,就可以对光谱进行分析处理。

(3) 能像SPLAT-VO等项目一样,实现一维光谱数据可视化与分析,提高天文学家光谱处理的效率。

我们会根据需求进一步完善该工具功能,借鉴国际上优秀的光谱可视化软件优势,最终使其成为处理LAMOST, SDSS等光谱数据的首选工具。

参考文献
[1] 施建荣. LAMOST望远镜[J]. 科学通报, 2016, 61(12): 1330–1335
[2] 毛晓艳, 张博, 叶中付. 基于加权滤波的低信噪比LAMOST光纤光谱信号降噪[J]. 天文研究与技术, 2015, 12(4): 447–454
[3] OSUNA P, BARBARISI I, SALGADO J, et al. VOSpec: a tool for handling virtual observatorycompli-antspectra[C] // Proceedings of Astronomical Society of the Pacific Conference Series. 2005: 198-202. http://www.researchgate.net/publication/234241704_VOSpec_A_Tool_for_Handling_Virtual_Observatory_Compliant_Spectra
[4] BUSKO I. Specview: a Java tool for spectral visualization and model fiting[C] // Proceedings of SPIE. 2002: 410-418.
[5] ŠKODA P, DRAPER P W, NEVES M C, et al. Spectroscopic analysis in the virtual observatory environment with SPLAT-VO[J]. Astronomy & Computing, 2014, 7/8: 108–120.
[6] LEBOUTEILLER V, BARRY D J, SPOON H W W, et al. CASSIS:the cornell atlas of spitzer/infrared spectrograph sources[J]. Astrophysical Journal Supplement, 2011, 196(1): 849–856.
[7] YUAN H L, ZHANG H T, ZHANG Y X, et al. ASERA:a spectrum eye recognition assistant for quasar spectra[J]. Astronomy & Computing, 2013, 3/4: 65–69.
[8] 雷国洪, 徐洋, 牛晨辉, 等. 专家识谱平台的设计与实现[J]. 天文研究与技术, 2018, 15(2): 216–224
[9] 王文成, 李健, 王瑞兰, 等. 基于Matlab GUI的数字图像处理仿真平台设计与开发[J]. 实验技术与管理, 2019, 36(2): 141–144
[10] 彭广民, 陈婷. 基于Matlab小波去噪的研究方法[J]. 测绘与空间地理息, 2016, 39(7): 24–26
[11] 李天超, 邓李才, 赵刚. 漩涡星系M31和椭圆星系M32CaⅡ三重线的等值宽度[J]. 光谱学与光谱分析, 2000(4): 468–470
[12] 刘蓉, 段福庆, 刘三阳, 等. 基于知识的红移测量和谱线证认方法[J]. 电子与信息学报, 2006(1): 76–79
[13] 屠良平, 罗阿理, 姜斌, 等. 一种新的活动星系光谱红移自动测量方法[J]. 光谱学与光谱分析, 2012, 32(10): 2858–2862
由中国科学院国家天文台主办。
0

文章信息

张珊瑚, 邱丹, 聂嘉潞, 李崇晟, 王习东, 田海俊, 刘高潮, 郑胜
Zhang Shanhu, Qiu Dan, Nie Jialu, Li Chongsheng, Wang Xidong, Tian Haijun, Liu Gaochao, Zheng Sheng
基于MATLAB的一维光谱可视化与分析工具的设计与实现
Design and Implementation of Visualization and Analysis Tool for 1-D Spectrum Based on MATLAB
天文研究与技术, 2020, 17(1): 121-128.
Astronomical Research and Technology, 2020, 17(1): 121-128.
收稿日期: 2019-05-24
修订日期: 2019-07-17

工作空间