new star pattern identification with vector pattern matching for attitude determination
TRANSCRIPT
New Star Pattern Identification
with Vector Pattern Matching
for Attitude Determination
HYOSANG YOON
Satrec Initiative Co. Ltd.
Korea
SUNG WOOK PAEK
Massachusetts Institute of Technology
YEERANG LIM
Korea Advanced Institute of Science and Technology (KAIST)
BYUNG-HOON LEE
HUNGU LEE
Satrec Initiative Co. Ltd.
Korea
We propose a new star pattern identification algorithm using
the vector pattern matching technique on the celestial sphere.
The proposed algorithm provides more robust identification
performance in cases where the captured star images are biased
from the onboard catalog star image positions. The technique is
based on the approach of maximizing the target score function,
which is formed by the correlation between the original and the
reference star patterns on the celestial sphere.
Manuscript received June 1, 2011; revised July 10, 2011 and June
6, 2012; released for publication September 19, 2012.
IEEE Log No. T-AES/49/2/944524.
Refereeing of this contribution was handled by P. Willett.
Authors’ addresses: H. Yoon and B. Lee, Satrec Initiative
Co. Ltd., Attitude & Orbit Control System Team, 461-26
Jeonmin-dong, Yuseong-Gu, Daejeon, 305-811, Korea, E-mail:
([email protected]); S. W. Paek, Strategic Engineering Research
Group (SERG), Massachusetts Institute of Technology, Cambridge,
MA 02139-4204; Y. Lim, Aerospace Systems and Control
Laboratory (ASCL), Korea Advanced Institute of Science and
Technology (KAIST), Daejeon, Korea; H. Lee, Satrec Initiative Co.
Ltd., Satellite Development Division, Daejeon, Korea.
0018-9251/13/$26.00 c° 2013 IEEE
NOMENCLATURE
A Amplitude of the Gaussian function
h(x,y) Two-dimensional cross-correlation
H(!x,!y) Fourier transform of the 2D
cross-correlation
S, S0, S00 Score function
RRi Distance between R and Ri_RRi Arc length on the celestial sphere between
R and RiRi Center position of ith star
P(x,y) Star pattern model on the X-Y plane
pi(x,y) ith star model on the X-Y plane
xi, yi, zi X, Y, and Z coordinates of the center
position of the ith star¾2 Variance of the Gaussian function
!x, !y Frequency in the X and Y directions
(¢ ¢ ¢ ) Complex conjugate of (¢ ¢ ¢ ).
I. INTRODUCTION
Attitude determination is one of the most critical
data elements required by almost all flying vehicles.
Attitude is a core factor that affects the performance
of all spacecraft, from Earth-orbiting satellites to
interplanetary probes. Attitude is also indispensible
for aerial flying objects, like unmanned aerial vehicles
(UAVs) or rockets. In past decades many types of
attitude sensors have been developed, including sun
sensors, geomagnetometers, gyroscopes, and star
sensors. Of these star sensors are regarded as one
of the most accurate, with accuracy down to a few
arcminutes (arcmin, 1/60 deg) or arcseconds (arcsec,
1/3600 deg), with no cumulative error buildup over
time.
Star sensors estimate the attitude by comparing
the star patterns captured by a star camera with the
reference star catalog (onboard star catalog). This is
similar to the navigation method used by shepherds
and handed down from ancient times. Because the star
pattern information is supplied as an image from a
star camera, a sequence of processes must then be
performed to ultimately obtain attitude information.
First, the star positions on the image are extracted
from the image, along with their corresponding
vectors with respect to the sensor frame. Then, some
stars in the image are identified as stars present in the
reference star catalog. Finally, the attitude is estimated
by comparing the star vectors from the image with
the reference star catalog. Usually, the processes
are called centroiding, star identification, and
attitude determination, respectively. Of those star
identification is the most complicated and time-
consuming process.
There have been many studies of star identification
over the past few decades. The final goal is usually
the same (to identify stars as quickly and robustly as
1108 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 49, NO. 2 APRIL 2013
possible), but the methods can be roughly categorized
into two principal groups: subgraph isomorphism and
pattern recognition. The first approach compares the
angular distance and the length between stars, or the
geometric figures. The polygon-based algorithm and
match group algorithms follow this strategy; among
these is the triangle algorithm, which is the oldest of
them and also the most intuitive. The brightest stars
in the image are chosen, forming a triangle. The three
sides of the triangle and the brightness of each star
are then compared with those in the database. The
other algorithms in this category, including the match
group algorithm and pyramid algorithm, were then
developed from these foundations [8—14] and feature
improved robustness and speed compared with the
triangle algorithm.
Pattern recognition is a strategy that locates
the most similar image by comparing the entire
image pattern with an onboard database pattern. The
grid algorithm, a neural network algorithm, and a
genetic algorithm are all classified into this category
[15—23].The algorithms in this category identify
stars by matching the patterns thus obtained to the
reference pattern generated by other methods. The
grid algorithm is one of the most famous algorithms
in this category because it is intuitive, simple, and fast.
Neural network algorithms and genetic algorithms are
optimized pattern recognition methods. Recently, a
singular value decomposition method was proposed by
NASA.
The two categories each have their own properties.
The first category, subgraph isomorphism, is faster
when used with high-performance optics, and it is
also most robust to false stars because it uses only
some of the captured stars. The other category of
pattern recognition is more robust to star position
errors and has lower memory requirements. Because
it uses the whole star pattern, rather than a part of it,
it can tolerate more errors in the position of individual
stars.
In this study we propose a new star identification
algorithm that is developed for use on spacecraft as
well as high-altitude flying vehicles in the atmosphere,
such as unmanned aerial vehicles (UAVs). Starlight
is scattered by the air in the atmosphere, depending
on the altitude. Moreover, the scattered light of the
sun could affect the star image in the atmosphere.
Therefore, it is difficult to predict the intensity with
which a star will appear on the image. For usage
in space it is also relatively difficult to predict and
guarantee the actual star intensity on the image before
actually taking a star image using a star camera in
space. In this situation disagreement between the
onboard star catalog and the stars that appear on the
image can easily occur. Moreover, the star position
error is often large in this situation. Therefore, a star
identification algorithm is needed that can be used in
the case of disagreement with the star catalog and that
is also robust to the star position error.
II. STAR PATTERN MODEL AND CORRELATION
The new algorithm proposed in this study finds the
star vector pattern on the celestial sphere in the star
catalog that is most similar to the star pattern obtained
from a camera. The information obtained from the star
image consists of a set of star centroid positions on
the image plane and their signal magnitudes. From the
centroid positions a set of star vectors is calculated
with respect to the optical axis of the star camera. The
set of star vectors is the final star pattern information
obtained from the star camera. The new algorithm
uses the star vectors directly to identify stars. A
star vector that is normalized to a magnitude of 1 is
equivalent to a star position located on the surface of a
celestial sphere with a radius of 1. By modeling each
star as a Gaussian function with a normal probability
distribution, the star pattern image on the celestial
sphere is reconstructed. The new algorithm identifies
stars by maximizing the cross-correlation between
the image on the celestial sphere from the star
camera and that from a portion of the reference star
catalog.
A. Star Pattern Model in Cartesian X-Y Coordinates
Before modeling star patterns on the celestial
sphere from star vectors, we model the star image
in Cartesian X-Y coordinates as it is a good
approximation of the image on the celestial sphere.
The star vectors obtained from a star image inevitably
have a certain error that cannot be calibrated away.
The error that cannot be modeled exactly is usually
modeled as white noise with normal probability
distribution. Therefore, it is reasonable to model a
star vector as a two-dimensional Gaussian function on
the celestial sphere’s surface. The Gaussian function
is described by two parameters: mean and variance.
In this case the mean value is the star position on
the celestial sphere, and the variance depends on the
performance of the star camera because the model
represents the probability of the star position. If the
camera has good performance, the variance will be
small.
The two-dimensional Gaussian function is as
follows [2].
f(x,y) = A exp
"¡((x¡ xi)22¾2x
+(y¡ yi)22¾2y
)#: (1)
Under the assumption that the error is not directional,
the variance is the same in the x and y directions.The amplitude A is considered to be 1 because theweight for each star is the same in this algorithm.
YOON, ET AL.: NEW STAR PATTERN IDENTIFICATION WITH VECTOR PATTERN MATCHING 1109
Fig. 1. Center positions of stars on X-Y plane.
Fig. 2. Reconstructed star model on X-Y plane–top view.
With these conditions the model for the ith star is asfollows.
pi(x,y) = exp
·¡½(x¡ xi)2 + (y¡ yi)2
2¾2
¾¸: (2)
The star pattern model for several stars is just a
superposition of the models of individual stars.
P(x,y) =Xi
pi(x,y)
=Xi
exp
·¡½(x¡ xi)2 + (y¡ yi)2
2¾2
¾¸: (3)
Figures 1, 2, and 3 show the star center positions
and the models related to the center positions.
B. Correlation of the Star Pattern Models in CartesianX-Y Coordinates
The correlation is one of the most popular
mathematical quantities for representing the degree of
similarity between two functions. A higher correlation
between two functions indicates that the two functions
are more similar to each other. In particular it is
an important metric for image recognition in the
computer science field [1]. In this stud, the correlation
is used as a score function to be maximized. In two
Fig. 3. Reconstructed star model on X-Y plane–side view.
dimensions the score function is defined as
S =
Z Za(x,y) ¢ b(x,y)dxdy (4)
where
a(x,y) =Xk
exp
·¡½(x¡ xk)2 + (y¡ yk)2
2¾2
¾¸
b(x,y) =Xl
exp
·¡½(x¡ xl)2 + (y¡ yl)2
2¾2
¾¸:
(5)
According to the cross-correlation theorem, the
cross-correlation of the two functions in (4) satisfies
the following properties, as expressed by (6) and (7).
h(n,m) =
Z Za(x,y) ¢ b(n+ x,m+ y)dxdy (6)
H(!x,!y) = A(!x,!y) ¢B(!x,!y): (7)
In these equations the capital letters denote
Fourier-transformed functions, and the overbar
denotes the complex conjugate.
Because the two functions in (5) are real-valued
functions, the score function can be written as
J =
Z Za(x,y) ¢ b(x,y)dxdy
=
Z Za(x,y) ¢ b(0+ x,0+ y)dxdy = h(0,0): (8)
The Fourier-transformed functions of the
two-dimensional images are given by (9).
A(!x,!y) =Xk
e¡j!xxk ¢ e¡j!yyk ¢p2¼¾e¡!
2x ¾
2=2
¢p2¼¾e¡!
2y ¾
2=2
B(!x,!y) =Xl
e¡j!xxl ¢ e¡j!yyl ¢p2¼¾e¡!
2x ¾
2=2
¢p2¼¾e¡!
2y ¾
2=2:
(9)
1110 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 49, NO. 2 APRIL 2013
Using (9), (7) becomes
H(!x,!y) = A(!x,!y) ¢B(!x,!y)=Xk
Xl
ej!x(xk¡xl) ¢ ej!y(yk¡yl)
¢ 2¼¾2e¡!2x ¾2 ¢ 2¼¾2e¡!2y ¾2 : (10)
Using the inverse Fourier transform, thecross-correlation function is derived as follows:
h(x,y) =Xk
Xl
¾p¼ ¢ efx¡(xk¡xl)g2=4¾2
¢¾p¼ ¢ efy¡(yk¡yl)g2=4¾2 : (11)
Finally, the score function can be expressed as
S = h(0,0) =Xk
Xl
¾2¼ ¢ e((xk¡xl)2+(yk¡yl)2)=4¾2 :
(12)
The cross-correlation of two images can be computedusing only the center coordinates of stars and thevariance.Equations (5) and (12) can be expressed by the
distance between two points rather than by theircoordinates. Equation (5) is expressed by the distancefrom a star centroid position.
a(x,y) =Xk
eRRk2=2¾2g
b(x,y) =Xl
e¡fRRl2=2¾2g
(13)
where
RRk =q(x¡ xk)2 + (y¡ yk)2
RRl =q(x¡ xl)2 + (y¡ yl)2:
(14)
Equation (12) is expressed by the distance betweentwo center positions of stars as follows.
S =Xk
Xl
¾2¼ ¢ e¡((xk¡xl)2+(yk¡yl)2)=4¾2
=Xk
Xl
¾2¼ ¢ e¡RkRl2=4¾2 (15)
where
RkRl =q(xk ¡ xl)2 + (yk ¡ yl)2: (16)
C. Star Pattern Model and Correlation on CelestialSphere
As in (13) it is possible to construct a star patternmodel as a sum of Gaussian functions over the arclength (Fig. 4) because the stars are located on thesurface of the celestial sphere.
A(R) =Xk
e¡(_RR2k =2¾
2)
B(R) =Xl
e¡(_RR2l =2¾
2):
(17)
Fig. 4. Arc length_RR 2 on celestial sphere.
It is possible to define the score function as
follows.
S =
Z ZA(R) ¢B(R)dArea
=
Z Z Xk
Xl
e¡(_RR2k =2¾
2)e¡(_RR2l =2¾
2)dArea: (18)
It is difficult to integrate the score function (18)
through the celestial sphere analytically. However,
it is possible to obtain a good approximate value
for it. Equation (18) consists of two exponential
functions of ¡( _RR2i =2¾2). Because the value rapidlydecreases when ¡( _RR2i =2¾2) becomes larger (e¡10 ¼0:0000454), it is possible to neglect the score whenit is very distant from the centroid of stars. Star
cameras generally have an accuracy of at worst 100
arcsec, so the standard deviation (¾) is less than4:8481£10¡4. In this case the maximum arc length
of_RRi is 2:1682£ 10¡3, the score function has a
meaningful score value greater than e¡10, and theratio of
_RRi to RRi is 1.000000195870. Therefore,
the arc length between the point of evaluation and
the center of the star image is small enough to
be approximated as a straight-line distance under
meaningful score values. Also, the surface of the
celestial sphere can be regarded as a Cartesian X-Y
plane over this portion. Therefore, we can define a
new score function, which is an approximation of the
exact score function.
S ' S0 =Xk
Xl
Z ZArea near Rk ,Rl
e¡(RRk2=2¾2)e¡(RRl
2=2¾2)dudv:
(19)
Equation (19) is the integration over U-V
coordinates, a rectangular coordinate system on the
celestial sphere surface for each centroid of the stars.
Using (15) we can solve (19). The final formula for
YOON, ET AL.: NEW STAR PATTERN IDENTIFICATION WITH VECTOR PATTERN MATCHING 1111
the new score function is obtained as
S0 =Xk
Xl
¾2¼ ¢ e¡(RkRl2=4¾2)
=Xk
Xl
¾2¼ ¢ expf¡[f(xk ¡ xl)2 + (yk ¡ yl)2
+ (zk ¡ zl)2g=4¾2]g: (20)
Equation (20) is the approximated correlation
function, which represents the similarity of two star
patterns on the celestial sphere.
For convenience in calculation it is possible to
neglect the common part for each star (¾2¼).
S00 =Xk
Xl
expf¡[f(xk ¡ xl)2 + (yk ¡ yl)2
+ (zk ¡ zl)2g=4¾2]g: (21)
III. THE NEW STAR IDENTIFICATION ALGORITHM
A. Required Data Tables
The new algorithm identifies the stars using the
score function in (21). The basic idea of identification
is to find a star pattern that maximizes the score
function. There are reference stars in the star catalog
all over the celestial sphere. It is almost impossible
to compare the star pattern obtained from the star
camera with every part of the celestial sphere in every
direction. A method is needed to fit the star pattern
to a part of the celestial sphere. In this study a pair of
stars is used as a reference for fitting. It is possible
to make a sorted star-pair table, called the “pair
table,” including star ID numbers and interangles.
By searching the pair table using existing algorithms
such as the search-less algorithm [9] or binary search
tree [10], candidate star pairs are chosen with that
certain angle. With the pairs as a reference mark,
the star pattern is then fitted to the celestial sphere.
After the fitting the calculation of the score function,
(21), should be done using the stars that are near
the reference pair stars. It is very time-consuming
work to select the near stars from the star catalog.
Therefore, another table, called the “nearby star table,”
which contains the stars close to each star in the star
catalog, is needed. Given the nearby star table, we
can calculate the score function without searching
the entire star catalog every time. To summarize two
precomputed and sorted tables are needed: the pair
table and the nearby star table. To save on memory
usage, it is necessary to limit the number of nearby
stars stored for each star in the nearby table. In this
simulation the maximum number of nearby stars
for each reference star is 30. The criteria to collect
nearby stars in the field of view (FOV) is that 1) for
stars brighter than magnitude 5 Mv, choose stars
in brightness order and 2) choose residual stars by
distance from the reference star, close one first. This
is because the possibility to be appeared increases as
brighter and as closer to the reference star. The criteria
can be changed, depending on systems.
B. Star Identification Algorithm
Given the two tables and a star catalog containing
reference star vectors, the star identification is
conducted based on maximizing the score function
(21). First, a star pair has to be selected from the
star vectors from the star image. By searching the
star-pair table, candidate star pairs are chosen. Based
on the two reference star pairs, the direction cosine
matrix (DCM) from the star camera frame to part
of the inertial frame is calculated using an attitude
determination algorithm like TRIAD, q-method, or
QUEST [4]. Using the DCM the star vectors obtained
from the star camera are fitted to the celestial sphere.
Using the nearby star table, the score function is
then calculated. After calculating the score for each
candidate star pair, the maximum score and the
corresponding star ID numbers closest to each star
in the image are saved (or added if the ID number
is already present). By repeating the identification
sequence several times (depending on the reliability
and the identification time), the star ID number that
has the maximum score is chosen as the ID number
for each star.
To reduce the identification time and memory, it
is necessary to limit the number of stars used in the
algorithm. Although it is more reliable to use all the
stars in the image, using just 20 bright stars is good
enough to identify stars, as shown in the simulation
study and the actual star image identification. The
criteria to select stars were the order of brightness.
C. Filtering of Identification Results
Because our identification algorithm uses a score
function, it is possible to filter the results based on the
score value. After the identification process each star
has a certain ID score, which is summed up through
the whole identification process. A higher ID score
corresponds to a greater probability of being a correct
answer. Because of this we can filter the results based
on the absolute score values as well as the relative
score values among the identified stars. The score
function (21) consists of the sum of exponential
functions. Each exponential function in (20) has a
maximum value of 1, which occurs when two stars are
exactly matched. Using this fact it is possible to filter
by a minimum score value or a minimum proportion
of the highest score value found among all of the IDs.
Comparing the angular distances from the maximum
score star with the other stars also provides for good
filtering. If the angular distance of the star image is
not close to the one of the star catalog, then one of the
star IDs must be wrong.
The filtering process makes it possible to use only
reliable results, thus increasing the performance of
attitude determination.
1112 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 49, NO. 2 APRIL 2013
IV. SIMULATION STUDY
Simulations are conducted to confirm the
performance of the new proposed identification
algorithm. The target star sensor systems are based on
the actual star tracker SST20S, which was developed
by the Satrec Initiative. The system specifications are
as follows: CCD size of 1024£1024 (pixels), with apixel length of 0.013 mm/pixel; an aperture diameter
of 50 mm; and an FOV of 15 deg for the stand-alone
star sensor.
For the simulation we use a star catalog extracted
from SKYMAP 2000 Version 5, which is published
by the NASA Goddard Space Flight Center. The
catalog is assumed to be an onboard star catalog. A
total of 4975 stars in the catalog are brighter than
5.5 Mv. Our images have an average of 21.23 stars
(with a minimum of 0 stars and a maximum of 85
stars). Multiple stars are excluded from the onboard
star catalog.
The simulations are conducted under three
different conditions. In case I the stars in the image
are brighter than 5.5 Mv, and all of them except the
false stars are included in the onboard star catalog.
The minimum star magnitude is 5.0 Mv for case II
and 6.0 Mv for case III. These levels allow for
discrepancies between the onboard catalog stars
and the stars in the image. In case II some of the
stars that should have been captured are absent. In
case III the stars in the image outnumber the stars
in the onboard catalog. In case II and case III, the
robustness of the new algorithm can be verified when
there is a discrepancy between the stars in the onboard
star catalog and the actual stars captured by the star
camera.
For each simulation condition we intentionally
add some star position errors, star magnitude errors,
and false stars to the star images to highlight the
identification system’s tolerance to measurement
errors and false stars. White noise with a 1¾ valuethat varies from 0 arcsec to 60 arcsec (1 arcmin) is
added to the measured star vectors, and white noise
with a 1¾ value of 0.5 Mv is added to the measuredstar magnitude. On the CCD image we also scatter up
to 3 false stars, each with a random brightness ranging
from 0 Mv to 5.0 Mv.
The results of the new algorithm are compared
with the results of an algorithm from the pattern
recognition group and an algorithm from the subgraph
isomorphism group. For the former we choose
the modified grid algorithm (or elastic binary grid
algorithm) [16]. The original grid algorithm is the
most famous algorithm of the pattern recognition
group on account of its efficiency and robustness [15];
however, it is unsuitable for our simulation because
of the number of stars in the reference star catalog
and the average number of stars in the FOV. The
modified grid algorithm, which is an improved version
Fig. 5. Identification rates for case I.
of the original grid algorithm, is more suitable for the
conditions of our simulation. We use a 61£61 grid,where 16:78£ 16:78 (1024/61) pixels constitutes agrid. In order to make a fair comparison, the filtering
of identified results, introduced in Section III-C, is
applied to that of the modified grid algorithm. Since
the modified grid algorithm uses cost function, the
angular distances between the minimum cost star and
the other stars are compared with those of the star
catalog.
From the subgraph isomorphism group, we choose
the pyramid algorithm [12] because of its efficiency,
robustness, and verified performance in space. In
the frequency test of the pyramid algorithm, we use
a threshold frequency of 3.0 for the triangular star
patterns.
Ten thousand star identification simulations
are conducted for each case. In the three cases the
random attitudes are generated by a normal random
unit quaternion generator that generates uniformly
distributed random unit quaternions [27, 28], which
is used to simulate a star sensor. Because we assume
a random attitude, sometimes there are fewer than
three stars present in the image. This phenomenon
occurs in 0.80% of the case I simulations and 2.83%
of the case II simulations. Identifying the stars in this
situation is impossible. The criteria of success include
the correct identification of more than two stars and
no incorrect identification of any stars.
A. Case I: Minimum Star Magnitude of 5.5 Mv
Figure 5 shows the simulation results for case I.
When there are no false stars, the new algorithm
achieves an identification rate of 98% to 99%. In
contrast the modified grid algorithm achieves a rate
of 92% to 96%, and the pyramid algorithm achieves
a rate of 92% to 99%. For a small position error,
the pyramid algorithm works well; however, if the
YOON, ET AL.: NEW STAR PATTERN IDENTIFICATION WITH VECTOR PATTERN MATCHING 1113
Fig. 6. Identification rates for case II.
position error increases, the performance of the
algorithm is degraded more than the other algorithms
because the pyramid algorithm basically uses only
four stars, whereas the others use more than four.
This degradation is inherent for star identification
algorithms based on the subgraph isomorphism
approach because they use fewer stars than do the
algorithms based on the pattern recognition approach.
As the number of false stars is increased, the
identification rates of the modified grid algorithm
decrease more than the rates of the other algorithms.
In many failed cases the modified grid algorithm
accurately identifies true stars but mistakenly identifies
false stars as true stars. The latter problem is attributed
to the comparatively large grid. The increment of the
number of grids for a more accurate detection of false
stars leads to performance degradation in position
errors in this condition.
When the number of false stars is increased, the
identification rates decrease more with the pyramid
algorithm than with the other algorithms. The pyramid
algorithm initially starts to identify false stars because
a false star is relatively brighter than a true star. It
can accurately detect false stars if the position error
is small but tends to mistakenly identify false stars as
true stars if the position error is large (because of the
resultant increase in the pair-search range).
B. Case II: Minimum Star Magnitude of 5.0 Mv
In case II some stars in the star catalog are missing
in the image. The number of stars brighter than
5.0 Mv is 2911, which accounts for only 60% of the
stars in the onboard star catalog. Figure 6 shows the
simulation results for this condition.
The degradation in the performance of the
modified grid algorithm is noticeably worse for
case II than for case I. The modified grid algorithm
Fig. 7. Identification rates for case III.
uses preconstructed reference grid patterns, and each
reference grid pattern is a two-dimensional pattern
based on the arrangement of two reference stars.
The absence or change of one of the reference stars
results in a mismatch with the reference grid pattern.
Accordingly, the modified grid algorithm has a lower
identification rate than the other algorithms.
For the new algorithm and the pyramid algorithm,
the case II performance degradation with respect to
position errors and false stars is similar to that of
case I.
C. Case III: Minimum Star Magnitude of 6.0 Mv
In case III the image contains some stars that
are not in the onboard star catalog. The number of
stars brighter than 6.0 Mv is 8559, which accounts
for more than 70% of the stars in the onboard star
catalog. The stars not in the onboard star catalog are
false stars produced by the star sensor. We limit the
number of bright stars in the modified grid algorithm
to 20 in order to improve the algorithm’s performance
and to ensure a fair comparison. Without this upper
boundary the algorithm performs very poorly because
it uses a multitude of false stars.
Figure 7 shows the simulation results for case III.
For case III the performance of the modified grid
algorithm is degraded more than that of the other
algorithms. The reasons for the degradation are the
same as those for case II. For small position errors
the pyramid algorithm outperforms the new algorithm
because the pyramid algorithm uses only four stars,
whereas the new algorithm uses all of the 20 stars,
many of which may be false stars. However, as the
position errors increase, the identification rates of the
pyramid algorithm decrease significantly, whereas the
new algorithm maintains a stable performance for the
same reasons as in case I.
1114 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 49, NO. 2 APRIL 2013
To sum up the new algorithm produces more stable
identification rates than the modified grid algorithm
and the pyramid algorithm. Thus, we can conclude
that the new algorithm is more robust in the way
it handles position errors, false stars, and incorrect
predictions of the star magnitude.
D. Memory Usage and Identification Time
The memory usage and identification time are
important factors for actual implementation of the star
identification algorithm.
In terms of memory usage, the new algorithm
requires two tables: a pair table and a nearby star
table. Only a part of the pair table is required for the
fitting procedures. For this study we use 8 bytes for
one pair: a float (4 bytes) inter-angle and two short
(2 bytes) ID numbers. In the nearby star table, each
star in the onboard star catalog has a maximum of
30 ID numbers for nearby stars; each ID number
is saved as a short (2 bytes) type. The pair table
uses 478 KB for 61,263 pairs, and the nearby star
table uses 241 KB for 123,256 ID numbers. A total
memory of 874KB is required to store information on
4975 stars, including information on the stars of the
onboard star catalog.
The modified grid algorithm requires grid pattern
data for all the stars in the star catalog. The grid
pattern data uses 4 bytes for each grid that contains
a star. The size of the grid pattern data used in this
simulation is 512 KB with 130,952 items of grid
information. A total memory of 667 KB is required
to store the star information, including information on
the stars in the onboard star catalog.
The pyramid algorithm requires a k-vector table
and a whole pair table, which includes almost all
the inter-angle pairs in the FOV to guarantee the
full performance of the algorithm. In the k-vector
table each vector component uses 4 bytes. For this
simulation we use a 942 KB k-vector table and a
1883 KB pair table with 240,942 pairs. The total
memory usage is 2961 KB.
The modified grid algorithm requires the least
memory of all these algorithms for star identification.
However, a memory of 874 KB for the new algorithm
is reasonable in relation to typical star sensor systems.
There are several parameters that affect the
identification time of the new algorithm. The principal
factor is the number of candidate pairs. Because the
algorithm calculates the score function for every
candidate pair, the time is proportional to the number
of candidate pairs. The range depends largely on
the performance of the optics. The correct pair
should be included among the selected candidate
pairs. If the optics provide more accurate star
vectors, the range and identification time can be
reduced. In this simulation the range over which
the candidate stars are selected is §0:025 deg (90
arcsec) from the inter-angle of the target pair. Another
important parameter is the number of identifications
required. The calculation of the score function
is performed for each target pair of stars in the
image. Just one identification sequence for a target
pair is adequate if the stars of the pair are real
stars that are included in the onboard star catalog.
However, relying on a single sequence cannot give
the correct answer if one of the stars in a pair is
missing from the star catalog. Several identification
sequences are needed to increase the probability
of successful identification. In the simulations
the maximum number of identifications is limited
to 20.
The simulations are performed on a computer
with a 2.4 GHz Intel Core 2 Quad Q6600 processor,
using the Microsoft Visual Studio 2008 C compiler.
The identification time is measured for 10,000
simulations of case I. For a fair comparison we set
the maximum number of 20 identifications for both
the modified grid algorithm and the new algorithm.
The simulation processing takes 738 s for the new
algorithm and 365 s for the modified grid algorithm.
For the pyramid algorithm the identification varies
from 4 s to 279 s, depending on the position errors
applied.
The average identification time is 73.8 ms for the
new algorithm and 36.5 ms for the modified grid
algorithm. The parameters used in the simulations
are set to yield stable identification rates for star
positioning errors of up to 60 arcsec. If implemented
in a finely calibrated star sensor with optimized
parameters, the new algorithm can identify stars more
quickly.
V. IDENTIFICATION OF ACTUAL STAR IMAGE
The proposed algorithm is applied to identify stars
on an actual image from a star sensor, namely, the
SST20S, with 15 deg FOV and guaranteed single
star accuracy of 20 arcsec. Some of the images are
taken on the ground,, and others are taken on the
DubaiSat1 Earth-orbiting satellite. Figures 8 and 9
illustrate the images and present their identification
results. Figure 8 is the image taken on the ground,
and Fig. 9 is taken on the satellite. The numbers
next to the stars are the ID numbers in the star
catalog used. By comparing the attitudes obtained
from the star image and from the experimental
conditions, the identification is confirmed to be
correct for all of the images. The memory usage
is 874 KB, the same as in the simulations. The
average identification time is 13.5 ms on the desktop
computer. Because the performance of the optics
is good and measured accurately, the parameters
of the new algorithm are optimized. Therefore,
the identification time is much shorter than in the
simulations.
YOON, ET AL.: NEW STAR PATTERN IDENTIFICATION WITH VECTOR PATTERN MATCHING 1115
Fig. 8. Star identification–image on ground.
Fig. 9. Star identification–image in space.
VI. CONCLUSION
In this paper we propose a new star identification
algorithm with a vector pattern matching technique.
It uses a score function, which is defined as an
approximation of the correlation between two
reconstructed star patterns in the celestial sphere.
With the help of the score function, the algorithm
uses star vectors directly to identify star patterns. The
simulation studies confirm that the new algorithm
is robust against star position errors and false stars.
Moreover, the new algorithm performs stably when
presented with discrepancies between the star catalog
and the stars captured by the star camera. The actual
star image identifications confirm that the new
algorithm is suitable for actual applications.
REFERENCES
[1] Kumar, B. V. K. V., Mahalanobis, A., and Juday, R. D.
Correlation Pattern Recognition.
Cambridge, UK: Cambridge University Press, 2005.
[2] Hayter, A. J.
Probability & Statistics for Engineers & Scientists (2nd
ed.).
Pacific Grove, CA: Duxbury Press, 2002.
[3] Wie, B.
Space Vehicle Dynamics and Control (AIAA Education
Series).
Reston, VA: AIAA, 1998.
[4] Shuster, M. D. and Oh, S. D.
Three-axis attitude determination from vector
observations.
AIAA Journal of Guidance, Control and Dynamics, 4, 1
(1981), 70—77.
[5] Padgett, C., Kreutz-Delgado, K., and Udomkesmalee, S.
Evaluation of star identification techniques.
AIAA Journal of Guidance, Control and Dynamics, 20, 2
(1997), 259—267.
[6] Spratling, B. B. and Mortari, D.
A survey on star identifications algorithms.
Algorithms, 2, 1 (2009), 93—107.
[7] Silani, E. and Lovera, E.
Star identification algorithms: Novel approach &
comparison study.
IEEE Transactions on Aerospace and Electronic Systems,
42, 4 (2006), 1275—1288.
[8] Junkins, J. L., White, C., and Turner, J.
Star pattern recognition for real-time attitude
determination.
AIAA Journal of the Astronautical Sciences, 25 (1977),
251—270.
[9] Mortari, D.
Search-less algorithm for star pattern recognition.
Journal of the Astronautical Sciences, 45, 2 (1997),
179—194.
[10] Quine, B. M. and Whyte, H. F. D.
A fast autonomous star-acquisition algorithm for
spacecraft.
Control Engineering Practices, 4, 12 (Dec. 1996),
1735—1740.
[11] Mortari, D. and Neta, B.
K-vector range searching techniques.
Proceedings of the 10th Annual AIAA/AAS Space Flight
Mechanics Meeting, Clearwater, FL, 2000, Paper AAS
00-128.
[12] Mortari, D., Junkins, J. L., and Samman, M. A.
Lost-in-space pyramid algorithm for robust star pattern
recognition.
Proceedings of the Guidance and Control Conference,
Breckenridge, CO, 2001, Paper AAS 01-004.
[13] Cole, C. and Crassidis, J.
Fast star-pattern recognition using planar triangles.
AIAA Journal of Guidance, Control & Dynamics, 29, 1
(2006), 64—71.
[14] Lamy Au Rousseau, G., Bostel, J., and Mazari, B.
Star recognition algorithm for APS star tracker: Oriented
triangles.
IEEE Aerospace and Electronic Systems Magazine, 20, 2
(2005), 27—31.
1116 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 49, NO. 2 APRIL 2013
[15] Padgett, C. and Kreutz-Delgado, K.
A grid algorithm for star identification.
IEEE Transactions on Aerospace and Electronic Systems,
31, 1 (1997), 202—213.
[16] Na, M., Zheng, D., and Jia, P.
Modified grid algorithm for noisy all-sky autonomous
star identification.
IEEE Transactions on Aerospace and Electronic Systems,
45, 2 (Apr. 2009), 516—522.
[17] Kim, K. T. and Bang, H.
Reliable star pattern identification technique by using
neural networks.
Journal of the Astronautical Sciences, 52, 1—2 (Jan.—June
2004), 239—249.
[18] Hong, J. and Dickerson, J. A.
Neural-network-based autonomous star identification
algorithm.
AIAA Journal of Guidance, Control & Dynamics, 23, 4
(July 2000), 728—735.
[19] Nagendra Rao, G., Seethatama Bhat, M., and Alex, T. K.
Star pattern identification using attitude variation
technique.
AIAA Journal of Guidance, Control & Dynamics, 28, 6
(Nov. 2005), 1140—1149.
[20] Lindsey, C. S., Lindblad, T., and Eide, A. J.
Method for star identification using neural networks.
In S. K. Rogers (Ed.), Proceedings of SPIE, vol. 3077,
Applications and Science of Artificial Neural Networks III,
1997, pp. 471—478.
[21] Servidia, P. A. and Sanchez Pena, R. S.
New robust star identification algorithm.
IEEE Transactions on Aerospace and Electronic Systems,
42, 3 (July 2006), 1126—1131.
Hyosang Yoon received his B.S. and the M.S. in aerospace engineering fromKorea Advanced Institute of Science and Technology (KAIST), Daejeon,
Republic of Korea, in 2008 and 2010.
Since 2009 he has worked for the Attitude & Orbit Control System Team at
Satrec Initiative Co. Ltd.
Sung Wook Paek received his B.S. degrees in aerospace engineering andelectrical engineering from Korea Advanced Institute of Science and Technology
(KAIST), Daejeon, Republic of Korea in 2010 and his M.S. degree in aeronautics
and astronautics from the Massachusetts Institute of Technology (MIT),
Cambridge, MA, in 2012.
He works for the Strategic Engineering Research Group (SERG) at MIT and
is also affiliated with the Space Systems Laboratory (SSL).
[22] Paladugu, L., Williams, B. G., and Schoen, M. P.
Star pattern recognition for attitude determination using
genetic algorithm.
Presented at the 17th AIAA/USU Conference on Small
Satellites, Logan, UT, Aug. 2003.
[23] Wei, X., Zhang, G., and Jiang, J.
Star identification algorithm based on log-polar transform.
AIAA Journal of Aerospace Computing, Information &
Communication, 6, 8 (2009), 483—490.
[24] Samaan, M. A., Mortari, D., and Junkins, J. L.
Recursive mode star identification algorithms.
IEEE Transactions on Aerospace and Electronic Systems,
41, 4 (2005), 1246—1254.
[25] Xie, J., Jiang, W., and Gong, J.
A new star identification algorithm based on matching
probability.
Proceedings of the IEEE International Geoscience and
Remote Sensing Symposium (IGARSS 2008), vol. 3,
Boston, MA, July 7—11, 2008, pp. 1166—1169.
[26] Udomkesmalee, S., Alexander, J. W., and Tolivar, A. F.
Stochastic star identification.
AIAA Journal of Guidance, Control & Dynamics, 17, 6
(Nov. 1994), 1283—1286.
[27] Shuster, M. D.
Man, like these attitudes are totally random!–I.
Quaternions.
Advances in the Astronautical Sciences, 108 (2001),
383—396.
[28] Shuster, M. D.
Man, like these attitudes are totally random!–II. Other
representations.
Advances in the Astronautical Sciences, 108 (2001),
397—408.
YOON, ET AL.: NEW STAR PATTERN IDENTIFICATION WITH VECTOR PATTERN MATCHING 1117
Yeerang Lim received her B.S. degree in aerospace engineering from Korea
Advanced Institute of Science and Technology (KAIST), Daejeon, Republic
of Korea in 2009 and her M.S. degree from the Space Exploration Program at
KAIST in 2011.
She works for the Aerospace Systems and Control Laboratory (ASCL) at
KAIST as a Ph.D. candidate student.
Byung-Hoon Lee received his B.S. and M.S. degrees in aerospace and mechanical
engineering from Korea Aviation University, respectively.
He is currently working as a senior research engineer for the Attitude & Orbit
Control System Team at Satrec Initiative Co. Ltd.
Hungu Lee received his B.S. in physics and his M.S. and Ph.D. degreesin aerospace engineering from Korea Advanced Institute of Science and
Technology (KAIST), Daejeon, Republic of Korea in 1992, in 1994, and in 1999,
respectively.
He was a visiting research scholar at Aerospace Engineering of Georgia
Institute of Technology from April, 1999 until March, 2000. Since 2000 he has
been working with Satrec Initiative Co. Ltd. in satellite system development. He
is now a project manager in the Satellite Development Division.
1118 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 49, NO. 2 APRIL 2013