光电工程  2018, Vol. 45 Issue (8): 180048      DOI: 10.12086/oee.2018.180048     
基于改进MTI算法的视频图像空间目标检测
罗振杰1 , 曾国强2     
1. 国防科技大学微纳卫星工程中心,湖南 长沙 410073;
2. 武汉大学遥感信息工程学院,湖北 武汉 430079
摘要:针对经典MTI算法在处理某型微纳卫星拍摄的视频图像时存在较为耗时的现象,以及空间目标轨迹投影不连续造成无法使用连通域标记同一目标的问题,本文提出一种改进的MTI算法用于空间目标检测。算法通过设计像素“感受域”,消除了空间目标轨迹投影不连续的现象。同时,在简化了像素时序信号投影的步骤后,仍能保留原算法对背景杂光和噪声的滤除作用,并使得算法速度得到提升。基于某型微纳卫星拍摄的视频图像进行算法实验,结果表明,本文算法对于轨迹投影不连续空间目标的检测无虚警,算法速度约为0.06 s/f。
关键词空间目标检测    MTI算法    像素“感受域”    像素时序信号投影    
Space objects detection in video satellite images using improved MTI algorithm
Luo Zhenjie1, Zeng Guoqiang2     
1. Micro & Nano Satellite Engineering Center, National University of Defense Technology, Changsha, Hunan 410073, China;
2. School of Remote Sensing and Information Engineering, Wuhan University, Wuhan, Hubei 430079, China
Abstract: An improved MTI algorithm is proposed in this paper to solve the problem of space objects detection in video satellite images. In order to detect the inconsecutive target's trajectory, at the beginning of the algorithm we set a special preprocessing which is called pixel's feeling domain. To reduce the time of the algorithm, we simplified the time projection part of the classic MTI algorithm, which is used to restrain the background. Finally, targets trajectories are obtained through connected domain detection. The experimental results show that, the improved MTI algorithm can effectively eliminate the background and is suitable for the inconsecutive target's trajectory detection. In addition, the algorithm's processing speed almost meets the real-time task.
Keywords: space objects detection    MTI algorithm    pixel's feeling domain    time projection    

1 引言

天基观测是空间态势感知的一种重要手段,其优点是离空间目标更近且观测不受天气和位置的约束。随着近年来微小卫星技术的迅速发展,微小卫星相对灵活自由、成本较低的优势越来越明显,各国纷纷发展采用微小卫星作为天基观测平台的相关技术研究。加拿大相继发射的MOST[1]、Sapphire[2]和NEOSSat[3]三颗微小卫星成功实现了对空间目标的天基观测,美国的STARE项目也发射了两颗3U立方星进行空间目标精密星历的修正[4]

基于拍摄的星空背景图像实现暗弱的空间目标检测是其中一项关键技术。美国的天基可见光探测器(space-based visible, SBV)提出了经典的空间目标检测流程,主要由经典移动目标迹象(moving target indicator, MTI)检测算法和速度滤波组成[5-6]。MTI算法在一些文献中也称为最大值投影,后来加拿大的Sapphire微小卫星也基本沿用这种检测算法。而美国的STARE卫星则采用单帧的长时曝光实现目标条痕的检测,再对目标条痕的端点进行亚像素定位[7]。国内学者对MTI算法做了一系列的改进。文献[8]改进了MTI滤波器结构以及其目标关联部分算法,使得算法效率得到提升。文献[9]中提出一种改进的MTI算法,将最大值投影时像素的时序信号均值改为时序信号中值。文献[10]在最大值投影获得目标条痕后,采用连通域的方法标记不同的目标。

上述这些算法属于典型的先跟踪后检测框架(track before detect, TBD),一般耗时较长。国内的研究中,算法大部分都是基于仿真或地面望远镜图像,且图像背景杂光较少,而本文处理的某型微纳卫星拍摄的视频图像背景杂光较为严重。同时我们注意到,采用文献[9]的改进算法处理本文的视频图像时,耗时仍较长但检测效果不佳。而文献[10]的方法没有考虑到空间目标运动速度较大时可能会造成同一目标条痕的断裂,形成多个虚警。因此,本文将研究适用于存在背景杂光且空间目标轨迹投影断裂情况下的基于改进MTI的空间目标检测算法。

2 基于改进MTI的空间目标检测算法 2.1 算法整体框架

本文算法主要分为三个部分:改进的MTI方法;基于特征的连通域检测;目标条痕端点亚像素定位。下面各小节将分别对每个部分详细介绍。

图 1所示,给出SBV计划经典检测算法流程框架,其中虚线框内为经典MTI部分。图 2对比地给出本文改进算法的流程框架,虚线框内为改进的MTI部分。

图 1 SBV经典检测算法流程框架 Fig. 1 The classical detection algorithm framework of SBV

图 2 本文算法流程框架 Fig. 2 The algorithm framework in this paper

从算法框图的对比可以看出,本文算法与经典算法相比,主要有两点不同:改进了MTI算法部分,以及最后将速度滤波替换为连通域检测和端点亚像素定位。

2.2 改进的MTI方法

本文的改进MTI方法可以分为像素“感受域”预处理和像素时序信号投影两部分。下面分别展开叙述。

1) 像素“感受域”预处理

本文中提到的像素“感受域”定义为以某个像素为中心,一定大小的正方形邻域。像素“感受域”预处理过程为:首先,对每一帧图像设置一个同等大小的矩阵${{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_i}$,其中i表示第i帧图像,矩阵${{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_i}$中每个元素与图像中每个像素的位置一一对应;然后,将每个像素的“感受域”内所有像素的灰度值加和,并把值赋给矩阵${{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_i}$中对应的元素。

一般目标的亮度会高于它的局部邻域,当目标经过某个像素时,会引起该像素灰度值的增大,从而该像素“感受”到目标。在设置像素“感受域”后,当目标还没有经过该像素,只是进入该像素“感受域”范围内时,即能引起该像素对应矩阵元素值的增大,从而“感受”到目标,而且这个“感受”的时间变长。

像素“感受域”是针对相对运动速度较快的目标而设置的。一般空间目标在成像面内占据3 pixels×3 pixels大小,如图 3所示,当目标相对运动较快时,假设相邻两帧目标中心位置分别为AB,它们之间就没有重叠,则位置C在两帧中都没有“感受”到目标的经过。在形成投影条痕时,同一目标的条痕连通域就会断裂,可能会形成多个虚警。如图 4所示,在引入像素“感受域”后,目标前后两帧之间的断裂位置C,也能通过“感受域”“感受”到目标的经过,从而保证了同一目标条痕的连续性。

图 3 相邻两帧的目标位置 Fig. 3 Target's position in adjacent frames

图 4 相邻两帧的目标位置和“感受域”示意图 Fig. 4 Target's position in adjacent frames and the middle pixel's feeling domain

2) 像素时序信号投影

像素时序信号投影部分需要生成序列帧的最大值投影图像、平均值投影图像以及最大值帧序号矩阵。

设最大值投影图像为Imax,平均值投影图像为Imean,最大值帧序号矩阵为${\mathit{\boldsymbol{T}}}$,第$k$帧经过像素“感受域”预处理的图像为${{\mathit{\boldsymbol{I}}}_k}$,共$N$帧图像。则最大值投影图像,平均值投影图像,最大值帧序号矩阵分别为

${{\mathit{\boldsymbol{I}}}_{\max }}(x, y) = \max \{ {{\mathit{\boldsymbol{I}}}_k}(x, y)\} , $ (1)
${{\mathit{\boldsymbol{I}}}_{{\rm{mean}}}}(x, y) = \frac{1}{N}\sum\limits_{k = 1}^N {{{\mathit{\boldsymbol{I}}}_k}(x, y)} , $ (2)
${\mathit{\boldsymbol{T}}}(x, y) = \mathop {\arg \max }\limits_k \{ {{\mathit{\boldsymbol{I}}}_k}(x, y)\} , $ (3)

其中:$k = 1, 2, ..., N$$(x, y)$表示图像第$x$行第$y$列的像素。

与经典的MTI算法中最大值投影部分相比,减少了标准差投影图像的计算,能够减少算法的耗时。因为在求解最大值投影图像、平均值投影图像以及最大值帧序号矩阵时,能分别通过式(4)~式(6)来迭代计算,而标准差投影图像的计算需要在求得平均值投影图像后再遍历各像素时序信号进行求解,比较费时。

${{\mathit{\boldsymbol{I}}}_{\max }}(x, y, k) = \max \{ {{\mathit{\boldsymbol{I}}}_{\max }}(x, y, k - 1), {{\mathit{\boldsymbol{I}}}_k}(x, y)\} , $ (4)
${{\mathit{\boldsymbol{I}}}_{{\rm{mean}}}}(x, y, k) = {{\mathit{\boldsymbol{I}}}_{{\rm{mean}}}}(x, y, k - 1) + \frac{1}{N}{{\mathit{\boldsymbol{I}}}_k}(x, y), $ (5)
${{\mathit{\boldsymbol{T}}}_k}(x, y) = \mathop {\arg \max }\limits_k \{ {{\mathit{\boldsymbol{T}}}_{k - 1}}(x, y), {{\mathit{\boldsymbol{I}}}_k}(x, y)\} , $ (6)

其中:${{\mathit{\boldsymbol{I}}}_{\max }}(x, y, k)$${{\mathit{\boldsymbol{I}}}_{{\rm{mean}}}}(x, y, k)$${{\mathit{\boldsymbol{T}}}_k}(x, y)$分别为当前积累到第$k$帧时的最大值投影图像、平均值投影图像和最大值帧序号矩阵。

在获得序列帧的最大值投影图像、平均值投影图像以及最大值帧序号矩阵后,用最大值投影图像减去平均值投影图像,得到图像${{\mathit{\boldsymbol{I}}}^1}$

${{\mathit{\boldsymbol{I}}}^1} = {{\mathit{\boldsymbol{I}}}_{\max }} - {{\mathit{\boldsymbol{I}}}_{{\rm{mean}}}}, $ (7)

这里相减是为了去除恒星和背景杂光。在卫星对某天区进行凝视观测时,恒星和背景杂光几乎不变化,而目标由于运动,会使得像素的时序信号在某帧处呈现由小变大再由大变小的起伏。因此,恒星和背景杂光占据的像素的最大值与均值相差不大,相减即能基本抵消,而目标经过的像素的最大值与均值则相差较大,相减后仍保留较多信息。实验表明,对比经典算法,在省去标准差图像计算以及归一化的步骤后,仍能较好地去除背景杂光和恒星。

对图像${{\mathit{\boldsymbol{I}}}^1}$所有像素的值作全局排序,选取第99.5%节点处的值作为阈值$t$,按式(8)进行图像二值化,得到图像${{\mathit{\boldsymbol{I}}}^2}$

${{\mathit{\boldsymbol{I}}}^2}(x, y) = \left\{ {\begin{array}{*{20}{c}} {\begin{array}{*{20}{c}} {255\;, }&{{{\mathit{\boldsymbol{I}}}^1}(x, y) > t} \end{array}} \\ {\begin{array}{*{20}{c}} {0\;\;\;\;, }&{{{\mathit{\boldsymbol{I}}}^1}(x, y) \leqslant t} \end{array}} \end{array}} \right.。$ (8)
2.3 基于特征的连通域检测

在获得的像素时序信号投影图像${{\mathit{\boldsymbol{I}}}^2}$上,除了目标轨迹条痕外,仍会残留部分噪声,因此需要进行进一步的检测提取。本文采用基于特征的连通域检测方法,首先标记所有连通域,再计算每个连通域的特征,这里的特征选取为连通域的像素个数以及偏心率,计算方法参考文献[11]。

首先对该图像进行连通域标记。具体步骤为:遍历图像每一个像素点,判断当前像素是否为有效像素,即其灰度值是否为255;若是有效像素,则判断其左侧和上侧的邻域像素点是否含有已标记的像素点;若含有已标记像素,取其中最小的标记号作为本像素的标记;若不含有已标记的像素,则将本像素标记变为当前全图中标记号序列的后一个。

完成连通域的标记后,得到了每个连通域所包含的所有像素的图像位置坐标以及总的像素个数$n$。根据式(9)~式(15),计算每个连通域的偏心率$e$。若$80 \leqslant n \leqslant 1000$$e > 0.8$,则认为该连通区域为目标的轨迹。

${S_{xx}} = \frac{1}{n}\sum\limits_{i = 1}^n {{{({x_i} - \bar x)}^2}} , $ (9)
${S_{yy}} = \frac{1}{n}\sum\limits_{i = 1}^n {{{({y_i} - \bar y)}^2}} , $ (10)
${S_{xy}} = \frac{1}{N}\sum\limits_{i = 1}^N {({x_i} - \bar x)({y_i} - \bar y)} , $ (11)
$L_{\max }^2 = 8({S_{xx}} + {S_{yy}} + C), $ (12)
$L_{\min }^2 = 8({S_{xx}} + {S_{yy}} - C), $ (13)
$C = \sqrt {{{({S_{xx}} - {S_{yy}})}^2} + 4S_{xy}^2} , $ (14)
$e = \sqrt {1 - \frac{{L_{\min }^2}}{{L_{\max }^2}}} 。$ (15)
2.4 目标条痕端点亚像素定位

空间目标与天基微小卫星平台的相对运动角速度较小,目标在图像中的轨迹可以近似看作匀速直线运动。目前要解决两个问题,首先是确定直线轨迹哪一端是目标运动的起始,哪一端是目标运动的结束;其次是提取起始和结束端的像素进行质心定位。

第一个问题的解决思路是在目标轨迹连通域两端一定范围内,搜索像素点的最大值帧序号矩阵对应元素值,取其中最小的最大值帧序号作为轨迹的起始帧序号,取最大的最大值帧序号作为轨迹的结束帧序号。

第二个问题的解决办法是在轨迹连通域两端分别搜索最大值帧序号等于轨迹起始帧序号以及轨迹结束帧序号的像素,分别记录这些像素的图像坐标以及它们在对应帧的灰度值。然后根据式(16)分别计算目标的起始端质心以及结束端质心。

$\left\{ {\begin{array}{*{20}{c}} {{x_k} = \frac{{\sum\limits_{{x_i} \in {\mathit{\Omega } _k}} {{x_i}f({x_i}, {y_i})} }}{{\sum\limits_{{x_i} \in {\mathit{\Omega } _k}} {f({x_i}, {y_i})} }}} \\ {{y_k} = \frac{{\sum\limits_{{y_i} \in {\mathit{\Omega } _k}} {{y_i}f({x_i}, {y_i})} }}{{\sum\limits_{{y_i} \in {\mathit{\Omega } _k}} {f({x_i}, {y_i})} }}} \end{array}} \right.。$ (16)

式中:${\mathit{\Omega } _k}$表示具有相同最大值帧序号的像素点坐标集合。

3 实验分析 3.1 算法检测效果

对某型微纳卫星拍摄的两段视频图像各抽取含有空间目标的10帧进行处理,原图像大小为960 pixels×576 pixels,图 5为各自其中一帧视频图像的部分截取图。像素“感受域”大小设置为5 pixels×5 pixels,本文算法处理效果如图 6所示,即为完整的检测图像。从结果可以看出,算法对于背景杂光能有效滤除,且检测无虚警。

图 5 某一帧视频图像截图。(a)视频1;(b)视频2 Fig. 5 A frame of video image capture. (a) Video 1; (b) Video 2

图 6 本文算法对两段视频的检测结果图。(a)视频1;(b)视频2 Fig. 6 The detection results of the algorithm in this paper. (a) The detection result of video 1; (b) The detection result of video 2
3.2 有无像素“感受域”设置的对比

为了比较设置像素“感受域”前后的效果,分别对两段视频设置5 pixels×5 pixels大小“感受域”以及不加设置像素“感受域”的处理,其余步骤相同,效果如图 7所示。

图 7 有无设置像素“感受域”的对比。(a)视频1设置像素“感受域”的目标轨迹检测效果局部放大图;(b)视频2设置像素“感受域”的目标轨迹检测效果局部放大图;(c)视频1无设置像素“感受域”的目标轨迹检测效果局部放大图;(d)视频2无设置像素“感受域”的目标检测效果局部放大图 Fig. 7 Contrast before and after setting pixel's feeling domain. (a) Partial map of the object trajectory while using pixel's feeling domain setting in video 1; (b) Partial map of the object trajectory while using pixel's feeling domain setting in video 2; (c) Partial map of the object trajectory while no pixel's feeling domain setting in video 1; (d) Partial map of the object trajectory while using pixel's feeling domain setting in video 2

经过人工标记测量,视频1的目标速度约为2 pixels/frame,而视频2的目标速度约为6 pixels/frame。对于视频1中较慢的运动目标,是否设置像素“感受域”对检测结果几乎无影响;对于视频2中较快的运动目标而言,设置像素“感受域”避免了目标条痕的断裂,降低了虚警。

3.3 算法耗时对比

为了比较本文算法的耗时,与文献[9]中对经典MTI方法进行修改的算法作对比,结果如表 1所示,计算平台是8 G内存的PC机,编程基于C语言和OpenCV库。

表 1 算法耗时对比 Table 1 Time consuming contrast
帧数 文献[9]对经典MTI的修改方法 本文算法
视频1/s 视频2/s 视频1/s 视频2/s
10 10.67 10.28 0.80 0.73
30 13.51 12.68 1.88 1.85
50 15.74 14.12 3.03 3.00

从结果可以看出,本文算法的耗时明显较少,优于文献[9]的方法。本文算法处理速度基本满足实时性要求。

3.4 算法定位精度评价

为了评价算法对目标的定位精度,以人工从图中标出目标点中心作为参考,分别对两段视频的定位精度进行评估。人工标注结果只能用整像素点坐标表示。此部分均采用10帧长度以及5 pixels×5 pixels “感受域”大小。定位结果评估如表 2所示。

表 2 定位结果评估 Table 2 Evaluation of positioning accuracy
视频序号 人工标注 本文算法
起始帧位置 结束帧位置 起始帧位置 结束帧位置
1 x:455, y:68 x:474, y:96 x:454.13, y:67.74 x:474.03, y:96.04
2 x:51, y:98 x:73, y:155 x:49.90, y:98.07 x:73.68, y:154.98

由于人工标注也存在一定的误差,因此两者的对比结果只能作为一种粗略的评估,但从表中可以看出,算法的定位结果与人工标注的结果差距不大,且算法的定位采用的是质心法,理论上能达到0.1~0.4个像素的精度。

4 结论

针对某型微纳卫星拍摄的视频图像,本文提出了一种基于改进MTI的空间目标检测算法。本文对MTI方法的改进主要有两处,一方面通过引入像素“感受域”处理,能有效检测轨迹投影不连续的空间目标,实验结果无虚警。另一方面,本文算法在简化了经典MTI算法中的像素时序信号投影部分后,仍能保留原算法对背景杂光的消除作用,同时还提升了算法的处理速度,实验中算法速度约为0.06 s/f。算法的定位精度理论上与质心法一致,与人工标注的测量结果作对比,证明了算法定位结果没有太大偏差。本文基于改进MTI的空间目标检测算法对于实际的空间态势感知有一定的工程应用价值。

参考文献
[1]
Scott R L, Wallace B, Bedard D. Space-Based Observations of Satellites from the MOST Microsatellite[R]. Ottawa: Defence R & D Canada, 2006. http: //www. researchgate. net/publication/265232484_Space-Based_Observations_of_Satellites_from_the_MOST_Microsatellite
[2]
Scott A, Hackett J, Man K. On-orbit results for canada's sapphire optical payload[C]//Advanced Maui Optical and Space Surveillance Technologies, Maui, 2013. http: //www. ncbi. nlm. nih. gov/pubmed/4791780
[3]
Wallace B, Scott R, Bedard D, et al. The near-earth orbit surveillance satellite[J]. Proceedings of SPIE, 2006, 6265: 626526. DOI:10.1117/12.672090
[4]
Simms L M, Phillion D, De Vries W, et al. Orbit refinement with the STARE telescope[J]. Journal of Small Satellites, 2013, 2(2): 235-251.
[5]
Anderson J C, Downs G S, Trepagnier P C. Signal processor for space-based visible sensing[J]. Proceedings of SPIE, 1991, 1479: 78-92.
[6]
Sharma J, von Braun C, Gaposchkin E M. Space-based visible data reduction[J]. Journal of Guidance, Control, and Dynamics, 2000, 23(1): 170-174.
[7]
Simms L, Riot V, De Vries W, et al. Optical payload for the STARE mission[J]. Proceedings of SPIE, 2011.
[8]
Shen T S, Guo S J, Xi X L, et al. Timeout controlling for moving object orbit detecting under starry-sky background[J]. Opto-Electronic Engineering, 2016, 43(6): 1-6.
沈同圣, 郭少军, 奚晓梁, 等. 星空运动小目标轨迹检测超时控制[J]. 光电工程, 2016, 43(6): 1-6. DOI:10.3969/j.issn.1003-501X.2016.06.001
[9]
Zhang J, Lou S L, Ren J C. Space target detection algorithm based on sequential multi-frames projection[J]. Laser & Infrared, 2015, 45(1): 88-93.
张健, 娄树理, 任建存. 基于时序多帧投影的空间目标检测算法[J]. 激光与红外, 2015, 45(1): 88-93.
[10]
Liu F, Xi X L, Shen T S. Space small targets detection based on maximum projection and quick registration[J]. Infrared and Laser Engineering, 2016, 45(11): 138-143.
刘峰, 奚晓梁, 沈同圣. 基于最大值投影和快速配准的空间小目标检测[J]. 红外与激光工程, 2016, 45(11): 138-143.
[11]
Oniga F, Miron M, Danescu R, et al. Automatic recognition of low earth orbit objects from image sequences[C]// Proceedings of 2011 IEEE International Conference on Intelligent Computer Communication and Processing, Cluj-Napoca, 2011: 335-338. http: //ieeexplore. ieee. org/xpls/icp. jsp?arnumber=6047892