首页 A Survey on Star Identification Algorithms

A Survey on Star Identification Algorithms

举报
开通vip

A Survey on Star Identification Algorithms Algorithms 2009, 2, 93-107; doi:10.3390/a2010093 OPEN ACCESS algorithms ISSN 1999-4893 www.mdpi.com/journal/algorithms Review A Survey on Star Identification Algorithms Benjamin B. Spratling, IV and Daniele Mortari ? Aerospace Engineering, Texas A&M Univ...

A Survey on Star Identification Algorithms
Algorithms 2009, 2, 93-107; doi:10.3390/a2010093 OPEN ACCESS algorithms ISSN 1999-4893 www.mdpi.com/journal/algorithms Review A Survey on Star Identification Algorithms Benjamin B. Spratling, IV and Daniele Mortari ? Aerospace Engineering, Texas A&M University, College Station, 77843-3141 TX, USA E-mails: benspratling@tamu.edu; mortari@tamu.edu ? Author to whom correspondence should be addressed. Received: 30 October 2008; in revised form: 13 January 2009 / Accepted: 16 January 2009 / Published: 29 January 2009 Abstract: The author surveys algorithms used in star identification, commonly used in star trackers to determine the attitude of a spacecraft. Star trackers are a staple of attitude deter- mination systems for most types of satellites. The paper covers: (a) lost-in-space algorithms (when no a priori attitude information is available), (b) recursive algorithms (when some a priori attitude information is available), and (c) non-dimensional algorithms (when the star tracker calibration is not well-known). The performance of selected algorithms and support- ing algorithms are compared. Keywords: Star Identification; Attitude Estimation; Star Tracker Algorithms. 1. Introduction The requirement for attitude (orientation) information of a spacecraft has been the mother of invention of many devices and algorithms, notably the process of autonomously identifying stars (Star-ID). Though there is much history of devices used to identify stars and compute an attitude that do not use a star camera, this paper primarily analyzes algorithms that use a star camera with an imaging array and an algorithm to match observed (body) directions of stars with catalog (inertial) directions of stars without requiring reorienting the camera or the spacecraft. These algorithms fall into two basic categories, lost- in-space algorithms, in which no information regarding the attitude of the spacecraft is available, and recursive algorithms, in which some information regarding the attitude is available. These techniques typically use inter-star angles (the angle between the line-of-sight of two stars from the perspective of a camera), the brightness of the stars, and some computations of these values to distinguish stars. A further Algorithms 2009, 2 94 subcategory of both categories is non-dimensional Star-ID, in which the exact angular separations are not required but the values are normalized to be insensitive to poor camera calibration, or time-varying camera calibration parameters [1–3]. Figure 1. Typical Star-Tracker Image-based Attitude Determination Flow. Star-ID is just one step in the process of determining the attitude of a spacecraft, as depicted in Figure 1. The first algorithms in the sequence measure body-frame vectors for the locations to observed stars. The Star-ID process has as its primary purpose determining the inertial-frame vectors for some or all of the body-frame vectors given to it. Subsequent algorithms determine a suitable transformation that correctly maps the body vectors to the inertial vectors, thereby calculating the spacecraft’s attitude. When sensing the stars with a CCD imaging array, the information available for the identification process is the brightness of the star and the angular separation between stars. Figure 2. Typical Star-ID Process. Star-ID task has three basic pieces, with an optional fourth, as illustrated in Figure 2. First, an al- gorithm must extract features from a set of body vectors and associated brightness. Second, a database search matches a subset of the observations with entries in the database, and third makes some estimate as to the probability that they are correct. Optionally, the remaining body vectors are identified once an estimate of the attitude is available in a method called “recursive” Star-ID. This fourth step typically implements a variation of the “direct match” technique in which stars are identified by their close prox- imity to their predicted location. The recursive mode is typically much faster than the first two, and can usually be repeated successively for additional observations with an a priori estimate of the attitude. 1.1. Topics Covered, Notation, and Figures The algorithms surveyed in this paper are evaluated by the analytical asymptotic performance of 1. the feature extraction step, Algorithms 2009, 2 95 2. database search, and 3. their utilization of independent pattern features in the star features based on how many stars are used in a pattern. For all cases, the number of stars referenced in the star catalog is n, the average number of stars observed in the field of view of the camera is f , and the number of stars in a pattern is b. Although a star pattern containing b stars has b(b− 1) 2 inter-star angles which may be measured, the number of independent pattern features for a star pattern of b stars, is only (2b−3), since some inter-star angles are dependent on the values of others. By including star magnitude information, which is typically much less precise than inter-star angle information, an additional b independent pattern features may be used. Throughout this paper, the use of asymptotic notation, O(. . .), is used to indicate the highest order term in the running time of an algorithm. Algorithms are analyzed based on the described implementation in the referenced papers. Any assumptions drawn about their performance time, when not directly stated in the paper, is based on the progression and availability of certain algorithms at the time, although alternative running times are discussed if it seems likely they could have been implemented. Furthermore, the common computer science notation, “lg n” is used to mean “log2 n”. To preserve the original authors’ intent, the figures shown here are duplicated from the referenced papers. 2. The Beginning After the first CCD-based star tracker was developed by Salomon in 1976 at JPL [4], Junkins, Turner, Strikwerda [5, 6], and others began work on implementing an algorithm that could identify stars in real-time. While they realized the benefit of using the easily-computable sine of inter-star angles as a pattern feature, the key problem that arose was the matching of observed inter-stars to the items in the database. After several years of work and a few conference papers, Junkins et al. published “Star Pattern Recognition and Spacecraft Attitude Determination” in 1981 [7]. Although the algorithm was able to identify star triplets, it had the primary limitation of requiring an a priori estimate of the spacecraft’s attitude before it was able to perform in real-time. The reason is that Junkins had used “sub catalogs” of the sky, illustrated in Figure 3, each representing a portion of the sky, in order to accelerate the computation. Although the method was robust to non-stars because the catalog included all combinations of stars that might be observed, it only updated the attitude estimation algorithm once or twice a minute, as contrasted with the angular rate sensors, which updated at 1, 000 times per minute. The majority of the attitude estimation was propagation of the angular rate sensors, and periodic checks were established to confirm and improve the propagated attitude. Junkins’ feature extraction runs very fast, in O(b) time, since it may select any three of the observed stars and measure the sine of their inter-star angles. However, since his database search considers every possible permutation of stars available in a given region of sky, the search time is O(f 3), where f is the number of stars in a given sub-catalog, usually the same size of a given field of view. The time to perform Star-ID increases if the stars are not located in the predicted field of view as other sub-catalogs are searched. The database itself would grow as O(nf 2). In 1986, Groth [8] suggested that a faster way to search the sub-catalogs would be to sort the triangles sides in order based on permutation-invariant values such as the logarithm of the perimeter of a triangle. Algorithms 2009, 2 96 Figure 3. Field-of-view-sized sub-catalogs (reprinted from [7]). He admits, however, that his algorithm runs at high polynomial power of n, much as Junkins’ has. Groth’s algorithm differs in that the performance has a lower constant factor. While the asymptotic order of the database is identical to Junkins, there would be more data included, associated with the permutation-invariant values. In 1987, Sasaki [9] and others published a patent showing how to improve the search time by using the area of a star triangle and the sum of the luminous intensities as preliminary markers in performing the star identification, using O(b)-time for star feature extraction. His method does not discuss the way in which the database is searched, requiring only that a “number of stars” will be selected from the database by a method using “parallel, serial, or the like” processors. It is not noted whether his database indeed contains as many star triplets as does Junkins’ method, nor is the search procedure described. Later, in 1989, Van Bezooijen [2] suggested in his dissertation that the speed of the star pattern recog- nition algorithm could be improved by making more use of the available information in the star patterns. Van Bezooijen discussed directly the relationship between the number of stars and the amount of in- formation available from a star pattern with a given number of stars. His analysis also included a very detailed statistical probability that a star had been identified correctly. Unfortunately, Van Bezooijen’s method sometimes required the spacecraft to slew in order to detect stars for his Star-ID method, and as such, his work is not covered in depth here. In 1991, with Junkins on his advisory committee, David Anderson [10] addressed the ambiguity of the order of star triplets by proposing a permutation matrix, and the development of star pattern parameters that were independent of the order in which the stars are selected. Sticking with the tried-and-true star- triple pattern, Anderson also proposed the use of an array processor to handle the matrix multiplications required to use his permutation matrices. Unfortunately, the database storage remained O(nf 2), and there was no advance made on the database search. Anderson suggested that an array processor be used to perform the matrix multiplication, decreasing the running time of the Star-ID process. The design engineer should note that array processors, while performing a comparatively large number of computations when contrasted with a serial processor, also use a comparatively large amount of power, Algorithms 2009, 2 97 because they both tend to use identical amounts of energy to perform each computation. 3. Search Process Acceleration The next year, Liebe [11] made the critical connection of the feature selection process to the database search time, making the Lost-In-Space problem tractable. Liebe suggested the use of the two closest stars to a selected star as components of the star pattern, and the angular separations from the two closest stars and the angle between them as his parameters, as illustrated in Figure 4, and addressed the situations in which predicted stars would not be seen due to their magnitude being very close to the detection threshold. Liebe also address the situation in which small errors would cause the incorrect selection of the closest two stars when the distance to these stars were similar. Although Leibe’s feature extraction process now took O(f lg b)-time to compute, his database could be reduced to O(n), and subsequently, his database search could be performed much faster, though still linear-time. Liebe makes full use of the available angular independent pattern features, neglecting the stellar magnitudes. Liebe later implements the optional recursive direct match mode which could identify the remaining stars up to 20 times faster than the Lost-In-Space algorithm. Figure 4. Liebe’s parameters, 2 inter-star angles and 1 interior angle (reprinted from [11]). Then in 1993, Baldini [12] proposed a multi-step Star-ID method. Baldini’s method identifies the brightest b stars in a given image, requiring O(f lg b) time. He then measures the angular separation of the sequence of five stars, O(b) time. Baldini then proceeds through a linear search of the catalog search for every star in the catalog which falls within an acceptable tolerance range of the observed stars, requiring O(bn)-time, neglecting the time for dynamic list creation, although this step would be improved by other algorithms in the future. If we use the expression ∆m to represent the fraction of stars in the catalog that fall within the acceptable range, he has an intermediate result of O(∆mn) stars in each of b lists. He then compares the distance of each star in adjacent lists determining if any star cannot have an angular separation within the tolerance of the observed angular separation, requiring O (b(∆mn)2)-time, although as he points out, as items are eliminated the number of comparison at each iteration is reduced. Baldini is then left with b lists containing stars that meet their neighboring distance criteria, he then forms all combinations of the stars, discarding combinations whose sequence of angular separations does not match the observed stars. The running time of this step is represented analytically by O ( ab ) , assuming there are approximately a stars in each of b lists. It is certain that the rejection of certain combinations in the second or third step is sure to reduce the total number of comparisons, and Algorithms 2009, 2 98 Baldini is certain to conclude with only one or two possible combinations of stars. Baldini has used five stars, inherently containing twelve independent features, but uses only nine when performing his identification process, suggesting the required field of view may be larger for Baldini’s method when compared to other methods to be sure that there will be enough visible stars. Although non-stars will get weeded out in the process, the addition of non-stars to the algorithms increases most of the steps linearly or quadratically. In 1995 Ketchum [13] proposed a second sequential filtering algorithm, this time using the brightness of the brightest star to attempt to determine the likelihood of pointing in any particular direction. She then filters the list of possible stars using the brightness of the second brightest star. Although she admits the algorithm would need to search as much as 43% of the catalog for the appropriate stars, she notes that the storage space required by his algorithm is much less than required by Van Bezooijen’s method. Furthermore, Ketchum is one of few to give direct empirical data regarding the running-time of his algorithm, reporting it requires up to 63 seconds to run on a 50 MHz processor. Later in 1995, Scholl [14] published a more straightforward method. The inter-star angles were to be ordered by their relative brightness, eliminating the permutations that arise when considering the possible orders of three stars. Unfortunately, Scholl retains the O(n f 2)-sized catalogs, and does not specify the search technique used. While it’s true that his method uses less time to search the database when compared to Baldini, it is nonetheless still O(n f 2), since faster techniques were not proposed until the following year. 3.1. Search Time Dramatically Reduced In 1996, Quine [15] was the first to attack the database search problem head on, realizing that a binary search tree (see Figure 5) could be used to search the database in O(lg n)-time. He retains Liebe’s use of the two closest stars to a given star to form a pattern, resulting in a database of size O(n), instead of previous catalogs that used all observable combinations of stars. While this increases his feature extraction time to O(f lg b), the trade off is quite advantageous for large values of n. Figure 5. Quine’s Binary Tree (reprinted from [15]). Algorithms 2009, 2 99 3.2. Novel Grid Algorithm In 1997, Padgett [16] published perhaps the first novel star pattern recognition algorithm, which actually used a star “pattern.” Padgett’s grid algorithm cast the locations of neighboring stars as items on a loose grid (see Figure 6). Padgett solved the roll ambiguity by rotating the observed stars about a given star until the nearest star to the given star was aligned with the x axis. The cells in the grid were then considered to be “on” if there was a star located inside it, and “off” if there were not. The locations of the “on cells” then become the features, the indexes of the “on cells” were listed as items in a vector. His feature extraction time became O(f). Unfortunately, Padgett was unable to improve the database search time for his features beyond linear, and the resulting database search remained O(n). Further analysis indicated that Padgett’s method was quite robust to the presence of non-stars owing to its large grid cell size when compared to the angular error in star position. Figure 6. Illustration of Padgett’s Grid Algorithm (reprinted from [16]). 3.3. Search Time Reduced Much Further Later in 1997, Mortari [17, 18] proposed an even faster database search technique, the “Search-Less Algorithm,” (SLA). Mortari retained the approach of selecting any pair of stars in the field of view, O(b)- time, but he proposed using a “k-vector” to search the database in an amount of time independent of the size of the database [19]. Figure 7 shows the k-vector construction for a 10-element database. The small horizontal lines are equally spaced and they give the k-vector values: 0, 2, 2, 3, 3, 5, 6, 8, 9, 10. The search time for a single star-pair would be O(k), where k is the number of possible star pairs with Algorithms 2009, 2 100 Figure 7. Example of k-vector construction (reprinted from [19]). 0 2 2 3 3 5 6 8 9 10 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 K−vector Elements So rte d Da ta ba se s =y (I) y a yb 1 2 3 4 5 6 7 8 9 10 inter-star angles within the measurement tolerance. Unfortunately, the dominant time of the algorithm came when comparing multiple lists of stars returned for each inter-star angle. Since multiple stars had to have all their inter-star angles confirmed to be a match, the running time of the comparison would be O(bk2), and b is the number of stars in the pattern required to guarantee uniqueness. Even though the resulting value of k would be a number based on the uncertainty associated with the inter-star angle measurement and the number of observable star pairs, Mortari had made the first important step in breaking the dependence of the database search time on the size of the database. Mortari’s method could also reject a single non-star from a set of selected stars, without loosing the progress made in identifying the others. The resulting Search-Less Algorithm (SLA) was then successfully tested on orbit on an Indian satellite [20]. A few years later, realizing that the robustness to non-star “spikes” was essential towards reducing the number of iterations of his algorithm, Mortari developed the “Pyramid” algorithm [21] which uses an optimal permutation algorithm to exploit the ability of his algorithm to select which stars to match. This permutation is written to minimize the time spent considering stars that don’t match, fearing them to be non-star spikes. The code has been tested to reject non-stars in an image containing only five real star but with 63 non-stars thrown in. The Pyramid algorithm has been successfully tested on Draper’s “Inertial Stellar Compass” star tracker [22] and on MIT’s satellites HETE and HETE-2 [23]. This algorithm is presently under exclusive contract to StarVision Technologies. Neural networks, have been proposed for use in Star ID as early as 1989, [24]. In 2000, Hong [25], proposed using a neural network and fuz
本文档为【A Survey on Star Identification Algorithms】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_477726
暂无简介~
格式:pdf
大小:369KB
软件:PDF阅读器
页数:15
分类:军事
上传时间:2011-04-30
浏览量:31