没有合适的资源?快使用搜索试试~ 我知道了~
沙特国王大学学报低成本星敏感器改进的三角形星图识别算法Abderrahim Nabia,b,Zabriir Ahmed-Foitiha,Mohammed El-Amine Cherietba电力系统、太阳能和自动化实验室LEPESA,Mohamed-Boudiaf科学与技术大学,USTO-MB,El Mnaouar,BP 1505,Bir El Djir 31000,Oran,阿尔及利亚b卫星开发中心,Bir El Djir 31130,Oran,阿尔及利亚阿提奇莱因福奥文章历史记录:收到2018年2018年12月19日修订2019年1月16日接受在线预订2019年1月19日保留字:星识别星图识别星库优化星跟踪器小卫星A B S T R A C T基于三角形模式的星识别算法更适合于低成本的星跟踪器,因为它们需要较小的视场中的恒星密度来有效地工作。本文提出在基于三角形的LIEBE算法的基础上,提出了一种改进的星图识别算法。拟议工作的主要贡献是双重的。首先,提出了一种新的星三元组选择策略。其次,新的选择标准的参考星被认为是模式生成过程中。一个天空模拟程序的开发,主要是评估对不同条件的噪声的鲁棒性。实验结果表明,该方法提高了整体识别率,对丢失星具有更强的鲁棒性,对星等噪声具有更高的识别效率。此外,我们提出的算法显示出与最近提出的三角形算法相当的鲁棒性,尽管它们依赖于更精确的相机和验证过程。为了评估算法的性能,在基于ARMCortex-M4处理器的数据处理单元原型上实现了该算法。在这一部分中,我们讨论了主要的设计决策,我们提出了硬件架构的DPU。该算法在ARM平台上实现时,在减少了星载数据库的情况下,显示出良好的运行时间。©2019作者制作和主办:Elsevier B.V.代表沙特国王大学这是一CC BY-NC-ND许可下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。1. 介绍星敏感器是航天器上最精确的姿态测量模块,精度可达角秒级。商业星形跟踪器(Gelin等人,2010)通常由两个独立的单元组成,基于ASIC或FPGA的摄像头单元(CHU)和基于微处理器的数据处理单元(DPU)。迄今为止,人们为提高星敏感器的性能进行了大量的研究工作,在摄像技术、滤波技术、硬件结构、软件设计、星表优化、星敏感器的设计* 通讯作者:实验室电力系统,太阳能和自动化LEPESA,科学与技术大学穆罕默德-布迪亚夫,USTO-MB,El Mnaouar,BP 1505,Bir El Djir 31000,奥兰,阿尔及利亚。电子邮件地址:abderrahim. univ-usto.dz(A.Nabi),zabir.foitih@usto.dz(Z.Ahmed-Foitih),mcheriet@cds.asal.dz(M.E.- A. Cheriet)。沙特国王大学负责同行审查识别和星跟踪算法。星识别是将视场中的恒星与星载恒星数据库进行匹配的过程。在没有姿态先验知识的情况下进行星识别的问题称为空间丢失算法(LISA)。后者被认为是在星跟踪器的设计中最关键的过程,并需要确定鲁棒性和效率之间的最佳权衡,特别是在小卫星中。为此,需要更鲁棒和有效的算法用于低成本的星体跟踪器。最先进的恒星识别方法(Ho,2012; Na和Jia,2006; Padgett等人,1997; Spratling和Mortari,2009)可以分为两大类:子图同构算法和基于网格的算法。第一类以恒星为顶点,利用观测恒星的子图在恒星数据库中寻找同构子图。这个类别可以基于所使用的特征提取方法和它们的数据库结构分为两个子类别:基于三角形的算法和组匹配算法。基于三角形的算法通常通过使用边-边-边或边-角-边来表征星形三元组(Padgett等人,1997年)。属于这一子类的最著名的方法是由Liebe(1992)开发的,他使用一个参考星和它的两个参考星。https://doi.org/10.1016/j.jksuci.2019.01.0081319-1578/©2019作者。制作和主办:Elsevier B.V.代表沙特国王大学这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。制作和主办:Elsevier可在ScienceDirect上获得目录列表沙特国王大学学报杂志首页:www.sciencedirect.comA. Nabi等人/沙特国王大学学报259最接近的恒星在这一开创性工作之后,文献中提出了许多基于三角形的算法(Fan和Zhong,2017; Mortari等人,2004; Quine和Durrant-Whyte , 1996 a , b; Rousseau 等 人 , 2005; vd HeideA 等 人 ,1998;Zhang,2017)。 在这些算法中,是金字塔算法(Mortari等人,2004年),其中第四颗恒星被用来验证主恒星三合体的身份。组匹配算法使用一组观测到的恒星的角距离来生成匹配组。这一分类最早由Van Bezooijen(1990)提出。后来已经提出了其他修改的方法(Fan等人, 2018;Kolomenkin等人,2008年; Li等人,2015; Schiattarella等 人 , 2017 年 ) 。 第 二 类 是 基 于 网 格 算 法 ( Padgett 和 Kreutz-Delgado,1997年),这是由Padgett介绍。该算法首先对选定的一颗恒星产生一个周围恒星的模式,然后通过比较产生的位向量和目录位向量来进行匹配。属于这一类别的几种技术已经在(Na,Zheng和Jia,2009; Silani和Lovera,2006; Zhang等人,2008; Zhao等, 2017年)。在所有上述恒星识别算法中,Liebe方法似乎是最有吸引力的一种,并且更适合于低成本的恒星跟踪器,原因如下:(1)它具有Oersted卫星(Jørgensen andLiebe,1996)的飞行遗产;(2)它只需要FOV中的三颗恒星,并且不依赖于星等信息(Ho,2012;Liebe,1992);(3)Liebe(1992)中获得的有希望的结果;(4)它具有有效的特征提取方法 (Spratling和Mortari ,2009 ) ; 以及 (5 )它 被很 好地记 录(Liebe,1992; Liebe和Joergensen,1996)。尽管文献中已经提出了许多基于Liebe的算法,但其中大多数(Fan和Zhong,2017; Quine和Durrant-Whyte,1996 a,b; vd HeideA等人,1998; Zhang,2017)需要FOV中更多的恒星密度,并更多地依赖于星等信息。本文提出了一种改进的基于Liebe算法的星图识别算法,研究了低成本星敏感器尚未解决的三个相关问题:(1)对漏星的敏感性,(2)对星等噪声的有效性,以及(3)当只检测到少量恒星时的识别失败。为此,提出了一种新的数据库构建方法,即在数据库中添加最佳数量的星三元组,并提出了一种新的参考星特征提取准则,其中考虑了参考星在视场中的位置和相对星等信息。通过这种方式,所提出的方法提高了整体识别率,并提高了鲁棒性,以漏星相比,原来的Liebe算法。它还优化了星形数据库的大小,以提高对幅度噪声的鲁棒性,从而减少数据库访问时间。此外,与最近提出的算法(Fan和Zhong,2017; Zhang,2017)相比,我们的算法对幅度噪声和丢失的恒星表现出类似的鲁棒性,即使这些算法依赖于比我们采用的更精确的恒星相机,这有助于恒星识别,因为更多的恒星在FOV中,并且除了空间丢失算法之外,它们还使用验证过程来拒绝错误识别。到目前为止,很少有研究实施和星识别算法在低成本嵌入式处理器中的应用。为了填补这一空白,我们讨论了硬件实现的数据处理单元DPU基于ARM Cortex-M4运行在一个时钟频率为60 MHz的原型算法算法性能的内存消耗和运行时间的特征提取时间和数据库搜索。实验结果表明,我们的算法是适合实现在低成本的嵌入式系统。图图1说明了仍在开发中的星体跟踪器原型的方框图。本设计包括两个单元:CHU和DPU。CHU基于FPGA完成图像预处理和星检测.恒星的位置和星等被发送到DPU。后者包括ARM Cortex-M4处理器,执行恒星识别,恒星跟踪和姿态计算。论文的其余部分组织如下。第2详细介绍了所提出的算法,并强调了修改原来的Liebe算法。第三分析了该算法对噪声的鲁棒性的第4描述了所提出的算法在ARM处理器上的实现,并从内存使用和运行时间两个方面给出了算法的性能最后,第5总结了研究结果,并提出了进一步改进的建议2. 该算法Liebe提出的三角形星图识别方法利用一颗参考星和它的两颗最近邻星提取三个特征:参考星和它的两颗最近邻星之间的角距离和它们之间的球面角在第一阶段,他的算法选择观测到的恒星三元组进行数据库搜索,当到第二最近的恒星的距离低于恒星然后从其他恒星中选出正确的三合星。为了建立数据库,Liebe插入了更多的恒星三元组来处理恒星位置和恒星等的不确定性,平均每个导航星有180个条目原始文件(Liebe,1992年)提供了进一步的尽管Liebe算法具有对星等噪声的鲁棒性和强大的模式生成技术等优点,但仍存在一些问题需要解决,如对缺失星的敏感性、观测星较少时的失效以及用于处理星等噪声的大型因此,在本文中,我们引入了一个修改版本的Liebe算法来克服这些问题。我们的建议,以提高算法的鲁棒性,对位置噪声和虚假的明星进行了讨论3.4和3.6。该算法与Liebe算法的区别主要体现在两个方面:1. 为数据库构建选择恒星三元组的方式:为此,我们在数据库中添加更多的恒星三元组,以降低对缺失恒星的敏感性,以及当最近的相邻恒星不在FOV时的故障。同时,为了消除幅度噪声,我们加入了较少的星三重态.2. 参考星的选择标准,其中我们选择离FOV中心最近的亮星这些标准减少了恒星数据库和对星等噪声的敏感性下面的小节介绍了我们在我们提出的算法中采用的策略,以改善Liebe方法。在第2.1中,我们解释了如何从星场图像中提取恒星三元组特征;在第2.2节中,我们描述了我们遵循的新方法来选择用于数据库构建的最佳恒星三元组,并强调了我们对Liebe方法所做的主要修改;最后,在第2.3中,我们描述了我们采用的匹配2.1. 特征提取由于星等噪声,星等接近探测阈值的恒星可能会被错过或观测到。在这部作品中,后者被称为暗星。相反,我们称之为亮星,这是一个总是观察到(Liebe和Joergensen,1996)(亮星的星等小于相机的星等极限减去最大预期的星等误差)。为了增加在FOV中具有最近邻星的概率,260A. Nabi等人/沙特国王大学学报×Fig. 1.恒星跟踪器原型的方框图。选择离视场中心最近的亮星作为参考星(S1),如图2所示。选择亮星作为标准提高了鲁棒性,因为它使参考星对星等误差不太敏感,并且还减少了与Liebe相似的数据库大小,因为它不需要包括所有的暗星和数据库中的相邻数据选择离S1最近的两颗恒星(S2,S3),而不依赖于星等信息,以增加它们在FOV中的概率,特别是在恒星密度较小的星场图像中。值得要注意的是,非常微弱的恒星很可能是假星,因此将它们用于三角形特征可能导致识别失败。与Liebe方法相同,使用的三元组特征是:参考星和两个最邻近的恒星之间的角距离(D1,D2),以及它们之间的球面角(Ang)。在所 提出的算 法中, 我们将 两颗星之 间的最小 允许角 距离(LowD)设置为8像素宽度。例如,具有30°FOV和1024 × 1024像素分辨率的相机具有0.234°(843弧秒)的LowD2.2. 数据库建设星表和生成的恒星数据库都存储在星跟踪器上。星表是由赤经、赤经和视星等。星型数据库结构取决于所使用的识别算法。图3示出了用于所提出的算法的数据结构。星表中的每颗星需要12个字节,数据库需要18个字节。与Liebe算法相比,该算法在数据库中添加了更多的可以在某些区域观测到的星三联体图二.一个星三元组的特征提取。图3.第三章。机载数据库的结构的情况下,并优化选择的明星三元组附加在数据库中建库采用的规则如下:为了处理星等噪声,Liebe附加了最近恒星的所有可能组合(Liebeand Joergensen,1996)。相比之下,我们仅附加具有高概率出现在FOV中的组合,以减少星数据库。两种算法之间的差异在图4中的示例中示出。其中S1是一颗参考导航星,S2是第二接近S1的恒星,S3和S4是第三和第四接近的恒星,其他恒星依此类推。使用发生概率首先在Douma算法中被引入,然后在Dude算法中被扩展(vdHeideA等人,1998年)。但是,在该算法中,作者依赖于星等精度来提高识别率和鲁棒性,并且依赖于FOV中的高恒星密度(超过10颗恒星至少在FOV中),这对于低成本的星体跟踪器来说不是这样的。我们只添加参考星:明亮的引导星和最有可能出现在FOV中的恒星例如,暗星S3(如图4右表所示)在数据库中没有作为参考星添加;但是,它可以作为其他亮导星的相邻星添加。这导致进一步的星型数据库减少(除了图1所示的数据库减少之外)。 4).为了提高整体识别率,我们最多为每个在FOV半径内相邻恒星少于18颗的亮导星添加三个恒星三联体。例如,在图4中,可以包括以下条目:S1-S8-S10、S1-S8-S11和S1-S2-S9。这减少了当最近的恒星在FOV之外时的故障,特别是在参考恒星靠近图像边缘并且FOV中的恒星密度较小的情况下,并且还增强了对幅度噪声的鲁棒性。第3.3节对该失效进行了详细分析为了增强对缺失恒星的鲁棒性,我们为每个明亮的引导星最多附加三个额外的恒星三元组。例如,在图4中,可以包括以下条目:S1-S9-S10、S1-S9-S11和S1-S10-S11。所以,在这种情况下,●●●●A. Nabi等人/沙特国王大学学报261见图4。 数值噪声对Liebe算法和所提算法的数据库构建的影响的说明性示例。如果S8和S9中的一个丢失,算法仍然可以在数据库中找到与观测到的恒星三元组相匹配的包含这些星三元组也增强了对幅度噪声的鲁棒性由于恒星位置噪声,特别是当参考星与其最近恒星之间的距离近似相等时,第一和第二最近恒星的选择可能是不正确的。Liebe指出,为了获得最佳结果,我们在位置(3r)中添加距离为最大预期噪声的1.5倍时最近恒星由于角距离误差,特别是当接近时,恒星非常接近,最接近的邻星可能不是唯一的,并且第一和第二最接近的恒星的选择可能是错误的。例如,第二最近的星可以被算法认为是第一最近的星;第三最近的星可以被认为是第二最近的星,等等。为了解决这个问题,当相邻恒星非常接近时,我们将不同的恒星组合纳入数据库通过模拟批准了添加到数据库中的恒星三胞胎的选择,它是基于相邻恒星的星等,最大预期星等噪声,以及相邻恒星的数量和它们的距离。2.3. 匹配过程在该算法中,我们使用线性搜索技术来寻找观测星三胞胎和引导星三胞胎之间的匹配这种搜索技术将恒星数据库中列表的每个元素与观测到的恒星三元组的关键参数(D1,D2,角度)逐一进行比较,直到找到匹配。基于模拟,我们将距离公差TDis和角度公差TAng设置为最佳值。将参数TDis和TAg分别设定为位置(3r)的最大预期误差的1.5倍和44倍。在冗余匹配的情况下,应用最佳匹配选择的标准后者通过模拟进行了优化,发现:15:00:00: 00:00其中AngE是角度误差,D1E和D2E是观测星和导航星之间距离1和距离23. 模拟和结果分析为了测试该算法的鲁棒性,我们在不同的噪声条件下进行了大量的实验。在接下来的小节中,我们提出了开发的天空模拟程序,用于评估和比较我们提出的算法Liebe然后,我们测试我们的算法在不同的条件下:理想的情况下,并与每个单独的噪声添加。通过分析各种噪声对识别率的影响,采用这种方法改进了我们的算法。最后,我们评估了算法的鲁棒性时,添加不同的噪声在一起,我们提供了最近的三角形为基础的算法的相对比较。3.1. 天空模拟程序为了测试我们的算法,我们开发了一个天空模拟程序,该程序使用星载星表来生成观测恒星的位置和星等。这些生成的数据被用作恒星识别算法的输入。我们的模拟方法基于DeAntonio和Padgett的工作(DeAntonio等人,1993年,Padgett等人,1997年)。用户可以指定相机参数(例如FOV和幅度限制)、模拟模式和不同的条件以及噪声水平,如图5所示。可以使用三种模拟模式:(1)随机生成相机方位,(2)定义扫描步长的全天空扫描,(3)从文件中读取传感器方位。模拟程序允许:在恒星位置和星等上添加高斯噪声,在FOV中随机插入假星,以及从FOV中随机删除观测星(缺失星)。这个程序●●●262A. Nabi等人/沙特国王大学学报图五. 天空模拟程序概述。还报告说:特征提取和数据库搜索两者的运行时间、板上数据库存储器使用、识别率和故障情况列表。在这项工作中,我们评估了所提出的算法的性能的基础上,一系列的随机传感器的方向和各种条件的噪声。每个实验都给出了所应用的噪声条件的简要描述。仿 真 程 序 和 算 法 用 C 语 言 编 写 , 运 行 在 Linux Ubuntu 下 的“ThinkPad X240 - Intel Core i5- 4300 U 1.90 GHz 3 MB with 4GB RAM”上3.2. 星型相机参数FOV中所需的最小和平均恒星数量主要取决于所应用的算法和预期的图像噪声(例如,幅度噪声和缺失的恒星)。所提出的算法要求FOV中至少有3颗星才能有效地工作为了优化图像传感器的选择和CHU的光学设计,我们针对不同幅度阈值和FOV大小的不同步长运行了10,000个均匀随机相机方向的模拟;为此,我们选择了圆形FOV。然后,我们计算了每个点的天空覆盖率,作为具有至少3颗星的FOV的数量与迭代总数之间的比率。图6显示了不同视场直径和星等阈值下的理论天空覆盖范围。作为示例,具有20°的圆形FOV和5Mv的检测阈值的相机给出98.9%的天空覆盖率,这导致对于10,000个随机相机取向具有少于3颗星的110种情况。但是,通常建议选择比最小要求的恒星更多恒星的相机分辨率,特别是在预期更高级别的幅度噪声和缺失星(e.g.较高角速率导致幅度阈值的减小)。Liebe在他的算法中使用30°FOV的照相机,其检测阈值比4.5 Mv亮(Liebe,1992);并且他使用PPM目录。在我们的例子中,我们使用依巴谷星表,因为它是一个具有高恒星位置精度的大型天文数据库(Perryman,1997)。我们使用了一个类似的相机配置,以比较所提出的算法与Liebe的性能这也使我们能够验证我们的天空模拟程序的正常运行,因为我们在模拟模型上运行Liebe算法时获得了与Liebe为了验证Liebe的摄像机配置是否我们观察到,对于30°圆形FOV,4.6 Mv的震级阈值是获得100%天空覆盖的最佳值。表1列出了本文中使用的相机配置,其中每个像素表示105.46弧秒。图7表明,恒星的分布是不均匀的,在天空中各不相同。可以看出,具有10至16颗星的FOV更多详情汇总于表2。3.3. 实验1:理想情况在各种噪声条件下对所提出的算法进行评估之前,我们首先在没有施加噪声的理想条件下对其进行了测试这种方法使我们能够识别与方法本身相关的失败原因。起初表1模拟摄像头配置。参数值传感器分辨率1024× 1024像素FOV 30°圆形检测阈值4.6 Mv900080007 006 005 004 003 002 001 000见图6。理论天空覆盖率作为星等阈值和FOV的函数,FOV中至少有三颗恒星。0 10 20 30 40 50 60FOV中的恒星数量见图7。基于100,000个随机相机方向,具有30°圆形FOV和4.6 Mv星等阈值的恒星相机的FOV中的恒星数量分布。表230°圆形FOV和4.6等阈值的天空覆盖结果。参数值FOV中的平均星数16.5FOV中的最小星数3FOV中的最大星数55最有可能出现的FOV(恒星数量)12天空覆盖率(FOV中最少3颗星百分百FOV(视野)A. Nabi等人/沙特国王大学学报263354768步骤中,我们按照Liebe(1992)和Liebe和Joergensen(1996)中的方法对Liebe算法进行编码,只修改了第2.1节中提到的特征提取。获得的识别率为95.3%,这代表了与原始算法(Liebe,1992)几乎相同的结果。进一步的结果如图8所示。可以看出,当FOV中有超过3颗恒星时,故障次数会增加,当观察到的恒星数量为7颗时,故障次数会下降;当恒星数量大于16颗时,故障次数接近0。对这些结果的分析表明,98.1%的故障情况发生在FOV中的恒星数小于17时。进一步的分析表明,故障发生时,最接近的恒星参考星是在FOV。图9示出了故障的真实情况。可以看到,第二颗最近的恒星S3在视野之外,第四颗和第五颗最近的恒星(S4,S5)也是如此。因此,第六颗最近的恒星S6被认为是第二颗离S1最近的恒星。其他类似情况导致识别失败。正如第2.2节中提到的,我们在数据库中添加了更多条目来解决这个问题。我们模拟了不同的情况下,发现最多增加三个星三胞胎为每个明亮的导星少于18个最近的恒星代表了成功率和数据库大小之间的最佳权衡。表3显示了识别率提高了4%,Liebe的原始算法也可以通过增加FOV(具有更宽FOV或更高相机灵敏度的CHU)3.4. 实验2:对虚假和缺失恒星的鲁棒性在这个实验中,我们解决了对假星和丢失星的鲁棒性空间辐射环境(单粒子)1000900000000000000200100表3基于100,000个随机相机方向的理想条件下的改进识别率(所提出的算法)。病例识别率匹配成功率99.6%匹配失败0.4%影响SEE)会影响星型相机的性能并导致硬件故障。因此,虚假的物体可以被认为是恒星(虚假恒星),而更亮的恒星可以被排除(缺失恒星)。虚假恒星的存在也可能是由于热像素和其他天体,如行星,暗星和变星。为了模拟这些条件,我们在FOV中随机添加假星在这个测试中,我们忽略了所有其他类型的噪音。为了提高对缺失恒星的鲁棒性,与Liebe算法相比,我们将更多的恒星三元组纳入数据库(更多细节请参见第2.2节)。不同情况下的模拟结果总结在表4中。与Liebe算法相比,该算法具有更强的抗漏星能力.作为一个例子,识别率为1错过星提高了约10%(Liebe,1992)。另一方面,我们可以看到,该算法对假星更敏感。例如,当FOV中存在一个错误时,识别率为87.9%;这与Liebe获得的结果(85.2%)大致相同。结果分析表明,三角形斑图上出现一颗假星是导致识别失败的原因,而99.98%的失败是由于观测星与导航星不匹配造成的。因此,只有0.02%的失败会导致错误匹配,并可能导致不正确的姿态估计。匹配的缺失并不代表真正的失败,因为识别过程可以重复另一个恒星三联体。对虚假恒星的鲁棒性可以通过使用验证过程来提高(Zhang,2017,Spratling和Mortari,2009,Mortari等人,2004)或使用递归识别(Samaan等人,2005年,被认定为“三重星”。验证过程可以通过对另一个恒星三联体重复识别过程来完成,以验证恒星识别是否正确。正确的和拒绝虚假的明星。也可以包括val-value。00 105060在空间丢失算法本身中进行验证过程,并根据观察到的恒星数量生成用于验证的三角形。例如,我们可以使用四个见图8。基于100,000个随机摄像机方向的识别失败次数与FOV中的恒星数量(Liebe算法和改进的特征提取过程)。见图9。识别失败的真实情况(Liebe算法与改进的特征提取过程)。在FOV中有很少的星星的情况下,观察到的星星;当FOV中有很多星星时,使用六颗星星只生成两个三角形。这种方法还可以减少访问时间,数据库3.5. 实验3:对星等噪声的鲁棒性现在转到恒星星等误差对算法鲁棒性的影响。这个错误的主要来源是恒星表4假星和缺失星对识别率的影响,基于每种情况下10,000次模拟运行。情况识别率理想情况(无噪音)百分之九十九点六1颗缺失的星星百分之九十八点七五2缺失的星星百分之九十七点五九3失踪的星星百分之九十四点三三1颗虚星87.90%203040FOV中的恒星数量数量的故障264A. Nabi等人/沙特国王大学学报99照相机、来自明亮物体的杂散光效应以及幅度校准精度(Lee等人,2005年)。为了模拟星等误差,我们对每个星等加入了零均值和不同标准差的高斯噪声。这种方法可以让星等低于传感器灵敏度(4.6 Mv)的恒星从FOV中消失,而星等高于4.6 Mv的恒星出现。在这个模拟中,我们增加了幅度误差的水平,0至0.5 Mv,步长为0.1 Mv,忽略任何其他噪声。为了提高对减少数据库中的星等噪声的鲁棒性,我们只附加了最可能的星三元组出现在FOV中(更多详细信息,请参见第2.1和2.2节)。图10比较了Liebe的识别率和所提出的算法的幅度误差。我们可以看到百分百百分之五0%的百分比百分之八十五0 0.5 1 1.5 2 2.5 3位置误差的标准偏差(像素)当震级误差小于或等于0.3 Mv时,识别率提高约4.3%,0.5Mv星等误差为6.6%。这种增强是由于三个主要原因:(1)使用明亮的参考星,特征提取使得所选择的星三元组对星等噪声不太敏感;(2)所采用的修改以提高总体识别率;以及(3)使用较小的数据库,这导致较少的冗余星三元组,并且因此较少的故障。3.6. 实验4:对恒星位置噪声的鲁棒性为了测试算法对星位误差的鲁棒性,我们产生了具有零均值和不同标准差的高斯噪声来扰动星位。在此模拟中,我们以0.1像素的步长对0到3像素的恒星位置应用了不断增加的噪声水平,并忽略了所有其他类型的噪声。实际上,星位误差的来源主要是由于星相机(例如, 噪声等效角NEA,相机失真)和质心算法(Lee等人,2005年)。所得结果如图11所示。可以看出,1像素噪声的识别率为97.9%,从1到2像素噪声下降4%,从2到3像素噪声再次下降5%。结果分析表明,冗余匹配的数量增加与位置噪声,错误识别代表最高的失败概率时,位置误差大于1.6个像素。通常,匹配的缺失不代表问题,因为识别的过程可以针对另一捕获的图像重复。相反,错误识别是最坏的情况,并且代表真正的问题,因为它可能导致不正确的姿态解。进一步的分析表明,识别失败与距离D1和D2有关。例如,对于3像素噪声,当D1和D2之和小于9°这些结果百分百百分之九十八百分之九十六百分之九十四百分之九十二百分之九十0.1 0.2 0.3 0.4 0.5见图11。恒星位置噪声对识别率的影响,基于每个噪声步长的10,000个随机相机方向。可以通过较小三角形的角度更受位置噪声影响的事实来解释因此,可以建议增加两颗观测恒星之间的最小允许角距离(LowD)。然而,在视场中找到两颗最近恒星的概率会降低,特别是在恒星密度较小的情况因此,为了实现这一点,需要改变相机参数以增加FOV中的恒星数量。因此,使用三个角距离来表征星形三重体可以改善结果(而不是两个距离和一个角度)。3.7. 进一步的比较在独立研究了算法对每个噪声条件的鲁棒性之后,表5中突出显示了不同噪声对算法的影响。所得到的结果显示出明显的优势,比原来的算法Liebe,他获得了94.6%的识别率时,所有的恒星都在公差范围内,88.4%的情况下,一个失踪的明星(Liebe,1992年)。我们在这项工作中的目的是实现一个强大的和高效的星识别算法,方便低成本的星跟踪器和飞行证明的算法的基础上。将所提出的算法与最近的三角形空间丢失算法进行比较超出了这项工作的范围,需要使用相同的星相机参数,并进一步工作以编程其算法,以进行更有效的评估。然而,相对比较表明,我们的算法在对幅度噪声和缺失恒星的鲁棒性方面与Guangjun(Zhang,2017)的修改三角形算法和Fan(Fan和Zhong,2017)的三角形投票算法相当。例如,在两颗恒星缺失和0.2Mv星等偏差的情况下,我们获得了97.2%的识别率,而在类似的噪声条件下,光俊获得了约97.1%的识别率(Zhang,2017);在0.5 Mv星等偏差的情况下,我们获得了97%的识别率,而光俊和范分别获得了约98.4%(Zhang,2017)和96.5%(Fan和Zhong,2017)。值得一提的是,广军的改进三角形算法使用了最多六颗最亮的星星,并使用了三角形验证过程来改进表5一组噪声条件对基于10,000次模拟运行的所提出的算法的识别率的影响。情况成功率星等误差标准差(Mv)见图10。星等噪声对识别率的影响,基于每个噪声步长的10,000个随机相机方向。- 位置偏差0.5像素- 幅度偏差为0.3 Mv- 2颗失踪的星星百分之九十五点一Liebe算法识别率(%)识别率(%)A. Nabi等人/沙特国王大学学报265他的算法的性能;以及三角形投票算法也依赖于FOV中的更多恒星密度,并使用投票验证过程。这些结果表明,与Zhang(2017)和Fan和Zhong(2017)相比,如果使用比我们在这项工作中使用的更精确的恒星相机,或者添加验证过程以提高整体识别率,我们的算法将得到进一步改进。4. 硬件实现结果在仿真实验中获得的有希望的结果,使所提出的算法适合硬件实现(图。 12)。在接下来的小节中,我们首先描述了用于实现所提出的算法和天空模拟程序的数据处理单元(DPU)原型的体系结构然后,我们讨论了算法的性能方面的内存使用和处理时间。4.1. 硬件架构DPU原型的体系结构基于ARM Cortex-M4 STM32 F407 IGT 6(Microcontroller STM32 F407 IG ARM Cortex-M4),这是一种频率高达168 MHz的32位RISC处理器。我们选择此处理器有几个原因:它适合于小型卫星,因为它在高性能32位处理器和低能耗之间做出了很好的权衡它提供了信号处理功能DSP(例如点积和矢量运算),提高了运行时间性能。它是一种低成本的具有浮点性能的嵌入式处理器。这使得代码更小,可能更快。它包括一个大的嵌入式闪存(1兆字节),允许使用更复杂的算法。它允许通过FSMC接口(灵活静态存储器控制)将外部设备与并行数据和地址总线(例如RAM和闪存)连接。它包括用于CMOS传感器的数字相机接口(DCMI),具有8至14位并行接口,数据传输速率高达54Mbytes/s。该特征在图像处理由处理器执行的情况下尤其重要它提供多达15个嵌入式通信接口,包括:I2C、USART/UART、SPI和CAN接口(2.0B Active)。它包括CRC(循环冗余校验)计算单元,可用于数据传输中的错误检测或验证存储器的存储完整性。它有多达17个定时器(12个16位和2个32位),这使得它足够用于实时系统,如星跟踪器。选择STM32F系列的其他原因包括:已被证明的飞行模块遗产,例如:Cube-计算机OBC和ESTCube-1子系统(CubeComputer,Nano-Satellite OBC; Lätt等人, 2014年)。不同ARM架构之间的软件移植,允许升级到更强大的处理器,而无需更改代码。适用于空间应用的抗辐射ARM(VA 10820-因此,ARM Cortex-M4的使用将有助于在未来的开发中迁移到Rad-hard ARM。图13示出了DPU原型的架构。在本应用中,处理器的运行频率为60MHz。后者包括两个高速嵌入式存储器:用于存储程序的1 MbyteFlash存储器和196 Kbytes SRAM。 为了满足应用要求,我们采用了三种外部存储器:1Mbyte Flash用于星表存储,1Mbyte SRAM用于临时存储(如将星表数据库加载到SRAM中以加快数据库访问速度),8Kbyte FRAM用于配置数据存储(如配置文件:算法和相机参数,外围设备配置)。外部存储器Flash和SRAM通过FSMC接口通过并行数据和地址线进行通信。选择SRAM而不是SDRAM有几个好处:处理器接口更简单,功耗更低,因为它不需要定期刷新。然而,它对辐射更敏感,与SDRAM相比,内存容量更小(Sansoè和Tranchero,2011年)。另一方面,选择FRAM而不是闪存存储配置文件的主要原因是:功耗低,存储容量小,写入速度快,对辐射的敏感性低,高写入/读取耐久 性 , 这 使 得 它 适 合 于 在 轨 道 上 频 繁 更 新 配 置 文 件 ( Sansoè 和Tranchero,2011)。通信接口包括:CAN总线和I2C接口到航天器模块,SPI接口(42 Mbits/ s)和并行数据线到摄像头单元(CHU)。CAN总线广泛用于航天器,因为它是鲁棒的并且具有低功耗(REA,2015),而I2C接口由于其简单性而特别用于立方体卫星(Cornejo等人, 2009年)。 嵌入式三个12位模数转换器(ADC)支持多达24个通道的测量,图12个。DPU原型的实验设置图13岁数据处理单元原型框图●●●●●●●●●●●●266A. Nabi等人/沙特国王大学学报00010111××实时监控几个遥测点,如电流、电源电压和温度。JTAG端口用于与板上芯片进行通信,用于调试目的,板上测试和flash编程。该处理器和所有的外部外设工作在3.3 V,这降低了总功耗,使设计更简单。在下一个硬件设计中包括电源开关电路非常重要,以便在闩锁的情况下重新启动外部外设和CHU,并防止因过流而损坏硬件。在此应用程序中,软件是用C语言编写的,并使用GNU GCC编译器for ARM(GNU Arm Embedded Toolchain)在代码块中编译。4.2. 算法性能正如第2.2节和图中所述。星载数据库由星表和星数据库组成。星表中的每颗恒星都需要3个浮点数(3 4字节)来表示赤经、赤经和视星等(共12字节),而恒星数据库中的每颗恒星三元组都需要3个浮点数(3×4个字节)用于三角形要素和三个整数(3 ×22.8.6.4.21.8.6.4.200 10 20 30 40 50 60FOV中的恒星数量见图14。基于10,000次模拟运行,以60 MHZ的频率在数据处理单元表7比较ThinkPad X240 - Intel Core i5- 4300 U(1.90 GHz 3 MB)、4 GB RAM、Ubuntu14和数据处理单元在60 MHz频率下运行时的算法处理时间,基于10,000次模拟运行。字节)用于三颗星的索引(总共18字节)。在-板数据库大小主要取决于所应用的星识别算法和CHU(FOV大小、摄像机灵敏度)。在这平台PCThinkPadX240(ms)DPU臂Cortex-M4(ms)4.6 Mv的能量选择大星表的原因是由于星等的不准确性,可以让较暗的恒星被观察到。如表6所示,我们的算法消耗了大约248 Kbyte的总机载数据库,而Liebe算法需要1 Mbyte的数据库,用于本工作中使用的相同相机配置(Liebe,1992)。他还在另一项工作中指出,他的算法需要1.5兆字节的2200个指南星使用相机与22° 16°FOV(Liebe和约根森,1996年)。在算法的运行时间方面,我们计算了特征提取过程和数据库查询过程的时间。数据库搜索时间主要取决于数据库的大小、搜索技术以及是否存在冗余匹配。另一方面,特征提取时间取决于观测到的恒星的数量。特征提取的过程是:首先,从一组观测星中,通过计算所有观测星到视场中心的距离,避免选择暗星,从而找到中心亮星;然后,通过计算所选星与其余观测星之间的角距离,找到离参考星最近的两颗星(注意,在选择两颗最近的恒星时,我们将非常暗的恒星视为假星),并且最后计算参考星与其两个最近邻星之间的角度。图14说明了观测到的恒星数量对在DPU中运行时的平均特征提取时间。我们可以看出,平均特征提取时间随着观测到的恒星数量几乎线性增加。作为示例,三颗星的平均特征提取时间为0.4ms,30颗星是1毫秒。表7比较了PC和DPU之间特征提取和数据库搜索从这个数据可以看出表6机载数据库的大小和数据
下载后可阅读完整内容,剩余1页未读,立即下载
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- BSC关键绩效财务与客户指标详解
- 绘制企业战略地图:从财务到客户价值的六步法
- BSC关键绩效指标详解:财务与运营效率评估
- 手持移动数据终端:常见问题与WIFI设置指南
- 平衡计分卡(BSC):绩效管理与战略实施工具
- ESP8266智能家居控制系统设计与实现
- ESP8266在智能家居中的应用——网络家电控制系统
- BSC:平衡计分卡在绩效管理与信息技术中的应用
- 手持移动数据终端:常见问题与解决办法
- BSC模板:四大领域关键绩效指标详解(财务、客户、运营与成长)
- BSC:从绩效考核到计算机网络的关键概念
- BSC模板:四大维度关键绩效指标详解与预算达成分析
- 平衡计分卡(BSC):绩效考核与战略实施工具
- K-means聚类算法详解及其优缺点
- 平衡计分卡(BSC):从绩效考核到战略实施
- BSC:平衡计分卡与计算机网络中的应用
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)