面向天文图像低表面亮度的小尺度星系检测
2023-11-22院守晋蔡江辉杨海峰郑爱宇
院守晋,蔡江辉,杨海峰,郑爱宇
(太原科技大学 计算机科学与技术学院,山西 太原 030024)
0 引 言
天体目标检测是天文观测数据中获取天体目标物理信息的重要任务。以往的天文目标检测方法[1]要考虑到噪声的统计分布,运用数字图像处理方法检测出那些高于背景的像素,从而提取目标天体,需要进行多参数调整,自动化程度差且很难检测出低表面亮度的小尺度目标。
近年来,针对自然场景中的目标检测算法有了长足发展,其结构也从基于手工特征的传统算法转向基于深度学习的算法。随着深度学习的发展,基于深度学习的目标检测技术取得了巨大的进展。目前,基于深度学习的目标检测方法可分为2类,一类是2阶段目标检测方法,例如Faster R-CNN[2],此类方法先生成候选区域,然后再对候选区域进行分类和回归;另一类是1阶段目标检测方法,这类方法直接从图像中回归出物体的类别和坐标,无须生成候选框,代表性方法有YOLO[3]、SSD[4]等。但由于小目标分辨率低、图像模糊、可利用的特征也非常有限,基于深度学习的小目标的检测任务同样面临着巨大的困难和挑战[5],在实际的天文场景下更是难以获得理想的效果[6]。
针对上述问题,该文提出了一种面向天文图像低表面亮度的小尺度星系检测方法。面对图中繁杂的星体,该方法不直接检测星系目标,而是换个角度先提取体积较大、亮度较高的非检测目标,然后将其去除得到低表面亮度的小尺度候选体,最后再结合天文领域中的星表完成星系的识别与认证。
1 相关工作
1.1 天文图像目标检测
目标检测是天文观测数据中获取天体目标物理信息的基本步骤。在天体物理研究中,大部分的天体信息是从天文图像中获取的,例如天体数量、天体种类、天体颜色、星等分布、物理特性等等。天文目标检测方法由以下步骤组成[7]:背景值的初始估计,背景噪声估计,设计判断标准来检测目标并获取天体信息。之后有研究者提出一套名为Source-Extractor的开源软件[8],该软件已被广泛地运用于巡天任务中目标提取和天体物理参数测量。软件方法大致为:首先对图像进行背景估计;然后通过过滤和卷积等方法平滑图像,减弱噪声对目标检测的影响;最后对经过背景减法的过滤图像进行阈值分割,得到连通像素组,从而完成对目标的提取。这些天文目标检测方法对于目标和背景的灰度级有明显差别的图像能很容易制定一个判断标准提取目标,达到较好的检测结果,但面对亮度低、特征弱的小目标时却很难实现目标的提取。
1.2 阈值分割在天文目标检测中的应用
阈值分割是一种简单有效的图像分割方法,利用星体和背景的灰度差异可以实现对天文图像的分割。阈值法可以分为全局阈值和局部阈值两种[9]。全局阈值是利用全局信息对整幅图像求出最优分割阈值。局部阈值是把原始整图图像分为几个小的子图像,再对每个子图像应用全局阈值分别求出最优阈值。全局阈值法中,基于灰度直方图的阈值分割方法计算简便,但只适用于目标与整幅图像的面积比已知的情况。基于双峰阈值的分割法[10]适用于目标和背景的灰度级有明显差别的图像,该方法不能对灰度不明显或直方图曲线平坦的图像使用。阈值分割的关键是如何确定一个合适的阈值将图像分割开,然而对于天文图像中低表面亮度的小尺度目标,其灰度值与背景值差异较小,在灰度直方图中波段不明显,故很难确定一个合适的阈值实现对该目标的分割与检测[11]。此外,由于天文图像与常用数据集图像不同,像素灰度变化范围较大,在使用一些传统的图像分割方法时不得不对这些天文图像进行像素或频域的复杂变换,造成信息的丢失,不能完全反映出天文图像的真实面貌[12]。
2 方 法
本节详细描述了面向天文图像的低表面亮度的小尺度星系检测方法。由于天文图像背景复杂,通过设置一个阈值很难将所有非检测目标提取出来,因此根据特征差异性,将非检测目标分为2类:体积大且亮度高的星体和小型点状源,如图1所示。之后对上述2类目标进行筛除,先后分为2个阶段:大型星体的提取与筛除和小型点源的检测与筛除,得到低表面亮度的小尺度候选体。最后与天文领域星表中记录的真实天体信息进行交叉匹配,以识别认证出星系目标。
图1 大型星体与小型点源的形态特征
2.1 基于目标总数变化率的阈值确定方法
阈值的确定是提取目标的关键,也是去除非检测目标的关键。天文图像中的目标源是由目标、背景和背景噪声叠加起来的,阈值的设置是在背景与背景噪声之和以上,传统的天文图像处理方法K-σClipping[13]将阈值表示为:
TS=B±n·Brms
(1)
其中,B为天文图像背景估计值,Brms为天文图像背景噪声估计值,n为常数。该方法经过多次迭代计算区域内所有像素c的平均值(mean)、中值(median)和标准差(σ),最终利用众数值(mode)来估计B:
mode(c)=2.5median(c)-1.5mean(c)
(2)
B=mode(c)
(3)
由于背景噪声服从高斯正态分布,通过σ来近似Brms。最终阈值表示为:
TS=B±n×σ
(4)
然而,上述表示中阈值的大小由系数n来决定,对于不同图像需要进行适应性参数n的调整,自动化程度较弱。该文针对上述问题进行改进,提出了一种基于目标总数下降变化率的阈值确定方法。首先初始化一个最小参数n,提取当前n值对应阈值下的目标并统计目标总数;之后更新参数n:
n=n+stride
(5)
其中,stride为n的增长值,统计当前n值下目标的总数Sn,计算前后两次目标总数的变化率sn:
(6)
重复上述步骤。由于初始化阈值较小,提取出来的目标总数极大,其中包含大量无效目标,随着n的提升,提取到的目标总数会骤降,之后前后两次目标总数下降率会趋于平稳,稳定在一个很小的范围之内。取首次出现前后两次下降率达到平稳时的n值,定义为首次平稳点,此n值对应的阈值为理想阈值。
2.2 基于掩码机制的非检测目标筛除方法
2.2.1 大型星体的提取与去除
在大型星体筛除阶段,首先进行图像分割[14],根据图像的灰度特性将图像分为前景和背景。图像分割是基于阈值的,阈值的确定是图像分割的前提。根据该文提出的阈值确定方法,首先初始化n值并根据公式(4)确定初始阈值来进行图像分割,检测图像中亮度高于此阈值的连通区域,区域内每个像素都大于阈值。
其次进行连通域分析[15]。通过设置最小连接像素数(npixels)来指定目标区域大小,将npixels≥150的天体定义为大型星体,通过满足以下3个条件来提取大型星体并统计其总数:(1)所有像素值要高于设定的分割阈值;(2)所有像素必须在一个连通区域内;(3)这些像素的数量必须不少于设定的最小连接的像素数。根据公式(5)来更新阈值,计算前后两次阈值下前景目标总数下降变化率。重复上述步骤,得到首次平稳点n,其对应的阈值为理想分割阈值(TS)。最后利用掩码机制完成大型星体的去除和背景填充工作。将提取到的大型星体区域内像素值置为1,其余像素值置为0,得到二值化分割掩码矩阵(Mn)。通过公式(3)进行背景估计,并利用单位矩阵(E)生成与图像大小一致的二维背景图像(Bn):
Bn=E×mode(c)
(7)
(8)
图2 大型星体筛除阶段
2.2.2 基于自适应半径的点源区域获取与去除
在去除大型星体之后,剩余目标中仍然存在一些亮度相对较高的小型点状恒星源。该文要检测的是低表面亮度的小型星系而非较亮的点源恒星,因此需要再次利用掩码机制将其去除。
图3 基于自适应半径的点源区域获取
其次进行点源区域获取。由于点源形状规则为点状圆形,如图3(a)所示,故以其质心坐标为圆心,设计参数r为半径圈出点源区域。r确定方法如下:首先,以点源质心坐标(x,y)为出发点,以一个像素点为单位沿着x或y轴方向更新坐标,如图3(b)箭头所示为沿着x方向向右更新坐标;其次,每经过一个像素点记录该点的像素值,并与先前记录的像素值进行比较,如图3(c)所示,坐标(x+n+1,y)处的像素值与(x+n,y)处的进行比较。由于点源亮度分布服从高斯分布,当(x+n,y)坐标处的像素值与(x+n-1,y)和(x+n+1,y)坐标处的像素值的差的绝对值几乎相等时,认为到了背景区域:
|c(n)-c(n-1)|≈|c(n+1)-c(n)|
(9)
其中,c为像素值,n为走过的像素点个数。最终将半径表示为:
r=n+1
(10)
圈出点源区域,如图3(c)所示。根据点源编号遍历每个点源重复上述操作。
(11)
图4 去掉小型点源阶段
2.3 候选体的定位与交叉认证方法
表1 候选体属性表
图5 去除非检测目标后的图像
表2 对应星表信息
(12)
m=1,2,…,M
(13)
其中,R,D为误差范围,通常定义在3角秒之内。若落在这个范围之内,则交叉匹配成功,表明这个候选者(xn)是星表中所记录的真实存在的天体;若超出这个范围,则匹配不成功,说明该候选者(xn)未被记录在星表中,其存在的真实性不得而知,故将其类别信息标注为no-label。匹配成功的候选者类别有:未知类别的目标(TYPE=0)、星系(TYPE=3)或恒星(TYPE=6)。筛除TYPE=6的恒星以及组成像素数(area)小于5个像素的目标,因为SDSS天文图像大小为2 048×1 489像素,组成像素数小于5个像素的目标在天文图像中面积占比极小,更是远远小于国际光学工程学会所定义的小目标尺寸,因此该文认为这些极小目标极大可能是检测出来的噪点,故将其筛除。
3 实验分析
3.1 数据集
该文使用的数据集为SDSS真实天文数据集,图像大小为2 048×1 489像素。SDSS图像使用5种滤镜(u,g,r,i和z)的光度系统拍摄,其中g波段、r波段和i波段的SDSS图像包含了天体最丰富的信息,在以往的研究中经常使用它们来搜索低表面亮度的小尺度目标。因此,该文也选择这3个波段图像作为实验数据。在SDSS数据中,r波段与i波段与对应的g波段图像之间存在一定的偏移,该文通过参考g波段图像坐标系将三者对齐、合成RGB图像来可视化每个阶段的实验效果,检测方法整体流程如图6所示。
图6 低表面亮度的小尺度星系检测框架
3.2 非检测目标筛除实验和分析
在去除大型星体阶段,该文将最小连接像素数(npixels)≥150的目标定义为大型星体,利用基于目标总数变化率的阈值确定方法确定分割阈值,并通过比较不同n值下的可视化效果来验证该阈值确定方法和目标筛除方法的有效性。如图7(b)所示,当n值较小时,阈值过低会错误地将周围目标认定为大型星系的一部从而分割出大量噪声,对后续目标识别工作造成负面影响。如图7(c)所示,当n值较大时,会平滑掉一些边缘像素使得大型天体的轮廓分割效果较差。图7(d)为文中方法得到的理想阈值下的分割效果,图7(e)为该阈值下星体的去除效果。
图7 不同分割阈值下的分割效果和去除效果
在去除小型点源阶段,同样利用该文提出的阈值确定方法,根据点源检测总数变化率确定理想的点源阈值。通过比较不同n值下的可视化效果验证阈值确定方法的有效性。n较小时会检测出大量无效目标与本阶段的目的相违背;n较大时会出现目标遗漏现象。
在该文提出的自适应半径确定方法下,得到点源区域半径(r),圈出点源区域效果如图8(c)所示,去除小型点源的效果如图8(d)所示。通过比较不同r值下的实验效果来验证文中方法的可靠性。如图8(a)所示,当r较小时不足以圈出整个区域;如图8(b)所示,当r较大时会出现两点源区域重叠现象。
图8 不同半径(r)圈出小型点源
3.3 目标检测结果和可视化
检测结果中包括3种目标:(1)星系(TYPE=3);(2)真实存在的未知种类天体(TYPE=0);(3)星表中未记录的负样本目标(TYPE=no-label),其存在的真实性不得而知。统计检测结果的总数为:
Nobj=n0+n3+nno-label
(14)
其中,n0,n3,nno-label为上述3种目标各自的数量。由于不确定星表中未记录目标(TYPE=no-label)的真实性,其可能是真实存在的天体也可能是检测出来的噪声信息等,故不把其作为目标的真正例,将目标检测率定义为:
(15)
由于不确定n0和nno-label中是否存在星系,将低表面亮度小尺度星系的识别率定义为:
(16)
表3列出了系统模型检测结果。文中方法在SDSS天文数据集上的目标检测率为94.90%,对低表面亮度的微小星系识别率可达89.21%。在候选者与对应星表交叉识别后,得到最终星系检测结果,以其质心为中心绘制检测框,目标检测可视化效果如图9所示。
表3 系统模型在SDSS数据集上的检测结果
图9 低表面亮度的小尺度目标检测可视化
3.4 检测率和识别率比较
文中方法与经典的目标检测方法(如SSD、YOLOv3[17]、Efficientdet[18]、YOLOv4[19])在目标的检测率和低表面亮度的小尺度星系识别率上进行比较。对于经典的目标检测算法,SDSS图像较大为2 048×1 489像素,在数据集的制作过程中,根据计算机的计算性能和容量,需要先将3波段图像合成RGB图像,并将每张图像切割为16张512×372大小的图像,参照图像对应的星表,确定目标类别,给低表面亮度的小尺度星系制作标签。
在测试阶段,统计每张图的检测结果与真实标签数相比,计算目标检测率。对比文中方法与经典检测算法的目标检测率,结果如表4所示。统计检测结果中星系数量,计算低表面亮度的小尺度星系识别率,对比文中方法与经典检测算法的低表面亮度、小尺度星系识别率,结果如表4所示。可以看出,Efficientdet模型因其较强的特征提取和特征融合能力,在面对低表面亮度的小目标时,检测率和目标识别率要高于SSD、YOLOv3和YOLOv4。YOLOv4作为YOLOv3的改进版,相较于YOLOv3,在目标检测率和准确率上都有所提升。而文中方法在低表面亮度的小尺度星系的检测率和识别率上都高于其他方法。由此表明,文中方法能有效地应用于真实天文图像中低表面亮度的小尺度星系检测任务,而上述经典的目标检测算法在运用到该特定场景中,检测亮度低、特征弱、体积小的天体时仍然面临着困难和挑战。
表4 低亮度的小尺度目标检测率和星系识别率
4 结束语
面对天文图像中多而繁杂的星体,该文提出了一种面向天文图像的低表面亮度小目标的检测方法。该方法不直接去检测目标星系,而是从另一个角度出发,先将非检测目标层层筛除,得到体积较小、亮度微弱的候选者,再从候选者中识别和证认星系。总体结构分为两部分:干扰目标的筛除和目标的交叉认证。首先,设计了基于目标总数变化率的阈值确定方法,基于自适应半径的点源区域获取方法以及掩码机制,生成掩码矩阵将绝大多数非检测目标去除;然后,利用天文星表中记录的真实天体信息与候选者进行交叉认证,进一步识别候选者中的星系目标。实验表明,在真实的天文数据集上,该方法可以有效地用于检测低表面亮度的小尺度星系,具有一定的应用价值。未来工作将进一步研究如何优化上述方法,以更好地、更自动地处理星体非常密集或是噪点非常多的特殊类图像。