Links to Exploration step
Le document en format XML
<record><TEI><teiHeader><fileDesc><titleStmt><title xml:lang="en">GPS/MEMS INS Data Fusion and Map Matching in Urban Areas</title>
<author><name sortKey="Chu, Hone Jay" sort="Chu, Hone Jay" uniqKey="Chu H" first="Hone-Jay" last="Chu">Hone-Jay Chu</name>
</author>
<author><name sortKey="Tsai, Guang Je" sort="Tsai, Guang Je" uniqKey="Tsai G" first="Guang-Je" last="Tsai">Guang-Je Tsai</name>
</author>
<author><name sortKey="Chiang, Kai Wei" sort="Chiang, Kai Wei" uniqKey="Chiang K" first="Kai-Wei" last="Chiang">Kai-Wei Chiang</name>
</author>
<author><name sortKey="Duong, Thanh Trung" sort="Duong, Thanh Trung" uniqKey="Duong T" first="Thanh-Trung" last="Duong">Thanh-Trung Duong</name>
</author>
</titleStmt>
<publicationStmt><idno type="wicri:source">PMC</idno>
<idno type="pmid">23979480</idno>
<idno type="pmc">3821347</idno>
<idno type="url">http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3821347</idno>
<idno type="RBID">PMC:3821347</idno>
<idno type="doi">10.3390/s130911280</idno>
<date when="2013">2013</date>
<idno type="wicri:Area/Pmc/Corpus">000544</idno>
<idno type="wicri:explorRef" wicri:stream="Pmc" wicri:step="Corpus" wicri:corpus="PMC">000544</idno>
</publicationStmt>
<sourceDesc><biblStruct><analytic><title xml:lang="en" level="a" type="main">GPS/MEMS INS Data Fusion and Map Matching in Urban Areas</title>
<author><name sortKey="Chu, Hone Jay" sort="Chu, Hone Jay" uniqKey="Chu H" first="Hone-Jay" last="Chu">Hone-Jay Chu</name>
</author>
<author><name sortKey="Tsai, Guang Je" sort="Tsai, Guang Je" uniqKey="Tsai G" first="Guang-Je" last="Tsai">Guang-Je Tsai</name>
</author>
<author><name sortKey="Chiang, Kai Wei" sort="Chiang, Kai Wei" uniqKey="Chiang K" first="Kai-Wei" last="Chiang">Kai-Wei Chiang</name>
</author>
<author><name sortKey="Duong, Thanh Trung" sort="Duong, Thanh Trung" uniqKey="Duong T" first="Thanh-Trung" last="Duong">Thanh-Trung Duong</name>
</author>
</analytic>
<series><title level="j">Sensors (Basel, Switzerland)</title>
<idno type="eISSN">1424-8220</idno>
<imprint><date when="2013">2013</date>
</imprint>
</series>
</biblStruct>
</sourceDesc>
</fileDesc>
<profileDesc><textClass></textClass>
</profileDesc>
</teiHeader>
<front><div type="abstract" xml:lang="en"><p>This paper presents an evaluation of the map-matching scheme of an integrated GPS/INS system in urban areas. Data fusion using a Kalman filter and map matching are effective approaches to improve the performance of navigation system applications based on GPS/MEMS IMUs. The study considers the curve-to-curve matching algorithm after Kalman filtering to correct mismatch and eliminate redundancy. By applying data fusion and map matching, the study easily accomplished mapping of a GPS/INS trajectory onto the road network. The results demonstrate the effectiveness of the algorithms in controlling the INS drift error and indicate the potential of low-cost MEMS IMUs in navigation applications.</p>
</div>
</front>
<back><div1 type="bibliography"><listBibl><biblStruct><analytic><author><name sortKey="Godha, S" uniqKey="Godha S">S. Godha</name>
</author>
<author><name sortKey="Cannon, A M E" uniqKey="Cannon A">A.M.E. Cannon</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Sukkarieh, S" uniqKey="Sukkarieh S">S. Sukkarieh</name>
</author>
<author><name sortKey="Nebot, E M" uniqKey="Nebot E">E.M. Nebot</name>
</author>
<author><name sortKey="Durrant Whyte, H F" uniqKey="Durrant Whyte H">H.F. Durrant-Whyte</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Dissanayake, G" uniqKey="Dissanayake G">G. Dissanayake</name>
</author>
<author><name sortKey="Sukkarieh, S" uniqKey="Sukkarieh S">S. Sukkarieh</name>
</author>
<author><name sortKey="Nebot, E" uniqKey="Nebot E">E. Nebot</name>
</author>
<author><name sortKey="Durrant Whyte, H" uniqKey="Durrant Whyte H">H. Durrant-Whyte</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Bevly, D M" uniqKey="Bevly D">D.M. Bevly</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Wendel, J" uniqKey="Wendel J">J. Wendel</name>
</author>
<author><name sortKey="Meister, O" uniqKey="Meister O">O. Meister</name>
</author>
<author><name sortKey="Schlaile, C" uniqKey="Schlaile C">C. Schlaile</name>
</author>
<author><name sortKey="Trommer, G F" uniqKey="Trommer G">G.F. Trommer</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Ochieng, W Y" uniqKey="Ochieng W">W.Y. Ochieng</name>
</author>
<author><name sortKey="Quddus, M A" uniqKey="Quddus M">M.A. Quddus</name>
</author>
<author><name sortKey="Noland, R B" uniqKey="Noland R">R.B. Noland</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Quddus, M A" uniqKey="Quddus M">M.A. Quddus</name>
</author>
<author><name sortKey="Ochieng, W Y" uniqKey="Ochieng W">W.Y. Ochieng</name>
</author>
<author><name sortKey="Zhao, L" uniqKey="Zhao L">L. Zhao</name>
</author>
<author><name sortKey="Noland, R B" uniqKey="Noland R">R.B. Noland</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Cossaboom, M" uniqKey="Cossaboom M">M. Cossaboom</name>
</author>
<author><name sortKey="Georgy, J" uniqKey="Georgy J">J. Georgy</name>
</author>
<author><name sortKey="Karamat, T" uniqKey="Karamat T">T. Karamat</name>
</author>
<author><name sortKey="Noureldin, A" uniqKey="Noureldin A">A. Noureldin</name>
</author>
</analytic>
</biblStruct>
<biblStruct><analytic><author><name sortKey="Park, M" uniqKey="Park M">M. Park</name>
</author>
<author><name sortKey="Gao, Y" uniqKey="Gao Y">Y. Gao</name>
</author>
</analytic>
</biblStruct>
</listBibl>
</div1>
</back>
</TEI>
<pmc article-type="research-article"><pmc-dir>properties open_access</pmc-dir>
<front><journal-meta><journal-id journal-id-type="nlm-ta">Sensors (Basel)</journal-id>
<journal-id journal-id-type="iso-abbrev">Sensors (Basel)</journal-id>
<journal-title-group><journal-title>Sensors (Basel, Switzerland)</journal-title>
</journal-title-group>
<issn pub-type="epub">1424-8220</issn>
<publisher><publisher-name>MDPI</publisher-name>
</publisher>
</journal-meta>
<article-meta><article-id pub-id-type="pmid">23979480</article-id>
<article-id pub-id-type="pmc">3821347</article-id>
<article-id pub-id-type="doi">10.3390/s130911280</article-id>
<article-id pub-id-type="publisher-id">sensors-13-11280</article-id>
<article-categories><subj-group subj-group-type="heading"><subject>Article</subject>
</subj-group>
</article-categories>
<title-group><article-title>GPS/MEMS INS Data Fusion and Map Matching in Urban Areas</article-title>
</title-group>
<contrib-group><contrib contrib-type="author"><name><surname>Chu</surname>
<given-names>Hone-Jay</given-names>
</name>
</contrib>
<contrib contrib-type="author"><name><surname>Tsai</surname>
<given-names>Guang-Je</given-names>
</name>
</contrib>
<contrib contrib-type="author"><name><surname>Chiang</surname>
<given-names>Kai-Wei</given-names>
</name>
</contrib>
<contrib contrib-type="author"><name><surname>Duong</surname>
<given-names>Thanh-Trung</given-names>
</name>
<xref rid="c1-sensors-13-11280" ref-type="corresp"><sup>*</sup>
</xref>
</contrib>
<aff id="af1-sensors-13-11280">Department of Geomatics, National Cheng Kung University, No.1, University Road, Tainan 701, Taiwan; E-Mails:<email>honejaychu@gmail.com</email>
(H.-J.C.);<email>a7760968@hotmail.com</email>
(G.-J.T.);<email>kwchiang@mail.ncku.edu.tw</email>
(K.-W.C.)</aff>
</contrib-group>
<author-notes><corresp id="c1-sensors-13-11280"><label>*</label>
Author to whom correspondence should be addressed: E-Mail: <email>p68987015@mail.ncku.edu.tw</email>
; Tel.: +886-6-237-0876; Fax: +886-6-237-5764.</corresp>
</author-notes>
<pub-date pub-type="collection"><month>9</month>
<year>2013</year>
</pub-date>
<pub-date pub-type="epub"><day>23</day>
<month>8</month>
<year>2013</year>
</pub-date>
<volume>13</volume>
<issue>9</issue>
<fpage>11280</fpage>
<lpage>11288</lpage>
<history><date date-type="received"><day>20</day>
<month>6</month>
<year>2013</year>
</date>
<date date-type="rev-recd"><day>19</day>
<month>8</month>
<year>2013</year>
</date>
<date date-type="accepted"><day>22</day>
<month>8</month>
<year>2013</year>
</date>
</history>
<permissions><copyright-statement>© 2013 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
<copyright-year>2013</copyright-year>
<license><license-p><pmc-comment>CREATIVE COMMONS</pmc-comment>
This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (<ext-link ext-link-type="uri" xlink:href="http://creativecommons.org/licenses/by/3.0/">http://creativecommons.org/licenses/by/3.0/</ext-link>
).</license-p>
</license>
</permissions>
<abstract><p>This paper presents an evaluation of the map-matching scheme of an integrated GPS/INS system in urban areas. Data fusion using a Kalman filter and map matching are effective approaches to improve the performance of navigation system applications based on GPS/MEMS IMUs. The study considers the curve-to-curve matching algorithm after Kalman filtering to correct mismatch and eliminate redundancy. By applying data fusion and map matching, the study easily accomplished mapping of a GPS/INS trajectory onto the road network. The results demonstrate the effectiveness of the algorithms in controlling the INS drift error and indicate the potential of low-cost MEMS IMUs in navigation applications.</p>
</abstract>
<kwd-group><kwd>map-matching</kwd>
<kwd>GPS</kwd>
<kwd>MEMS IMU</kwd>
<kwd>Kalman filter</kwd>
</kwd-group>
</article-meta>
</front>
<body><sec><label>1.</label>
<title>Introduction</title>
<p>A critical component of a navigation system is the Global Positioning System (GPS). However, outages and multi-path phenomenon of GPS signals frequently occur in urban areas. Another navigation system, the inertial navigation system (INS), is an interesting complementary navigation system [<xref rid="b1-sensors-13-11280" ref-type="bibr">1</xref>
]. GPS has long-term stability with homogeneous accuracy, while the short-term stability with high navigation accuracy of the INS is excellent, but stand-alone INS positioning accuracy deteriorates rapidly with time. Thus, the integration of GPS and INS provides a high data rate of complete navigation solutions (<italic>i.e.</italic>
, position, velocity, and attitude) with superior accuracy. Advances in Micro-Electro-Mechanical System (MEMS) inertial sensor technology have rendered the integrated GPS and INS a low-cost option for positioning and navigation. In data fusion, the Kalman Filter (KF) suffers from divergence in the approximations of the linearization process during GPS outages. Inertial sensor biases are not well estimated leading to residual drifts, especially when using MEMS-based inertial measurement units (IMUs) [<xref rid="b2-sensors-13-11280" ref-type="bibr">2</xref>
,<xref rid="b3-sensors-13-11280" ref-type="bibr">3</xref>
]. Previous studies applied KF to combine GPS and IMU data in vehicle and aircraft navigation [<xref rid="b4-sensors-13-11280" ref-type="bibr">4</xref>
,<xref rid="b5-sensors-13-11280" ref-type="bibr">5</xref>
]. Bevly [<xref rid="b4-sensors-13-11280" ref-type="bibr">4</xref>
] demonstrated the ability of a low-cost GPS receiver to reduce errors inherent in low-cost ground vehicle IMUs. Wendel <italic>et al.</italic>
[<xref rid="b5-sensors-13-11280" ref-type="bibr">5</xref>
] addressed the development of an integrated navigation system based on MEMS IMU and GPS for an unmanned aerial vehicle (UAV).</p>
<p>To obtain a robust navigation system, mapping the position onto a spatial road map is necessary [<xref rid="b6-sensors-13-11280" ref-type="bibr">6</xref>
]. This spatial mismatch is particularly severe at junctions and built-up areas with complex routes. Quddus <italic>et al.</italic>
[<xref rid="b7-sensors-13-11280" ref-type="bibr">7</xref>
] reviewed the literature on map matching and listed the advantages and drawbacks of the various algorithms. The commonly used methods are point-to-curve matching and curve-to-curve matching. The point-to-curve matching algorithm attempts to identify the curve (link) that is closest to a point. The approach uses a local or incremental algorithm that maps current positions onto a road line on a map. Cossaboom <italic>et al.</italic>
[<xref rid="b8-sensors-13-11280" ref-type="bibr">8</xref>
] used KF to integrate GPS and INS in a loosely coupled scheme to enhance navigational solution while further improvement is achieved by the map matching. However, the approach only considers the current position and the matching accuracy is generally low. A more novel approach is curve-to-curve matching, which considers the estimated location as a curve consisting of a set of points. This algorithm achieves better accuracy based on certain distance measures and aligns an entire trajectory with a road map.</p>
<p>The main purpose of this study is to conduct KF and map matching by integrating GPS and INS data to identify the right trajectory and robust navigation, and to improve the matching navigation accuracy. In addition, this study compares the point-to-curve and curve-to-curve matching approaches in the process of using a road network map. Result shows that the curve-to-curve matching approach is more effective in navigation applications.</p>
</sec>
<sec sec-type="methods"><label>2.</label>
<title>Methods</title>
<sec><label>2.1.</label>
<title>Data Fusion Algorithm</title>
<p>KF is used for data fusion in this study. KF addresses the general problem to estimate the state <italic>x</italic>
of a discrete-time controlled process that is governed by the state equation as follows:
<disp-formula id="FD1"><label>(1)</label>
<mml:math id="mm1"><mml:mrow><mml:msub><mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub><mml:mi mathvariant="normal">Φ</mml:mi>
<mml:mrow><mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub><mml:mi>x</mml:mi>
<mml:mrow><mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub><mml:mi>w</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
Where
<inline-formula><mml:math id="mm2"><mml:mrow><mml:msub><mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msubsup><mml:mrow><mml:mo>[</mml:mo>
<mml:mi>δ</mml:mi>
<mml:mi>R</mml:mi>
<mml:mspace width="0.2em"></mml:mspace>
<mml:mi>δ</mml:mi>
<mml:mi>V</mml:mi>
<mml:mspace width="0.2em"></mml:mspace>
<mml:mi>δ</mml:mi>
<mml:mi>ψ</mml:mi>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msub><mml:mi>b</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msub><mml:mi>b</mml:mi>
<mml:mi>g</mml:mi>
</mml:msub>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msub><mml:mi>s</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msub><mml:mi>s</mml:mi>
<mml:mi>g</mml:mi>
</mml:msub>
<mml:mo>]</mml:mo>
</mml:mrow>
<mml:mrow><mml:mn>21</mml:mn>
<mml:mo>×</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
is the state vector at time <italic>k</italic>
including position error, velocity error, attitude error, accelerometer bias, gyroscope bias, accelerometer scale factor, and gyroscope scale factor, respectively, Ф<italic><sub>k</sub>
</italic>
<sub>−1;</sub>
<italic><sub>k</sub>
</italic>
is the state transition matrix from time <italic>k</italic>
−<italic>1</italic>
to <italic>k</italic>
, and <italic>w<sub>k</sub>
</italic>
is the system noise.</p>
<p>The measurement model is:
<disp-formula id="FD2"><label>(2)</label>
<mml:math id="mm3"><mml:mrow><mml:msub><mml:mi>z</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>H</mml:mi>
<mml:msub><mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub><mml:mi>ɛ</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>Since the aiding measurements from GPS are position and velocity, <xref rid="FD2" ref-type="disp-formula">Equation (2)</xref>
can be rewritten as:
<disp-formula id="FD3"><label>(3)</label>
<mml:math id="mm4"><mml:mrow><mml:msub><mml:mi>z</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow><mml:mo>[</mml:mo>
<mml:mrow><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:msubsup><mml:mi>R</mml:mi>
<mml:mtext mathvariant="italic">INS</mml:mtext>
<mml:mi>e</mml:mi>
</mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup><mml:mi>R</mml:mi>
<mml:mtext mathvariant="italic">GPS</mml:mtext>
<mml:mi>e</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd><mml:mrow><mml:msubsup><mml:mi>V</mml:mi>
<mml:mtext mathvariant="italic">INS</mml:mtext>
<mml:mi>e</mml:mi>
</mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup><mml:mi>V</mml:mi>
<mml:mtext mathvariant="italic">GPS</mml:mtext>
<mml:mi>e</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow><mml:mo>[</mml:mo>
<mml:mrow><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>H</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:mspace width="0.2em"></mml:mspace>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd><mml:mrow><mml:mn>0</mml:mn>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msub><mml:mi>H</mml:mi>
<mml:mi>V</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
<mml:mspace width="0.2em"></mml:mspace>
<mml:mrow><mml:mo>[</mml:mo>
<mml:mrow><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:mi>δ</mml:mi>
<mml:msup><mml:mi>R</mml:mi>
<mml:mi>e</mml:mi>
</mml:msup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd><mml:mrow><mml:mi>δ</mml:mi>
<mml:msup><mml:mi>V</mml:mi>
<mml:mi>e</mml:mi>
</mml:msup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:mrow><mml:mo>[</mml:mo>
<mml:mrow><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>ɛ</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>ɛ</mml:mi>
<mml:mi>V</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
where
<inline-formula><mml:math id="mm5"><mml:mrow><mml:msub><mml:mi>H</mml:mi>
<mml:mi>R</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub><mml:mi>H</mml:mi>
<mml:mi>V</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow><mml:mo>[</mml:mo>
<mml:mrow><mml:mtable columnalign="center"><mml:mtr><mml:mtd><mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd><mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd><mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd><mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd><mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd><mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr><mml:mtd><mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd><mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd><mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>
are mapping matrices, <italic>δR<sup>e</sup>
</italic>
= (<italic>δx<sup>e</sup>
</italic>
, <italic>δy<sup>e</sup>
</italic>
, <italic>δz<sup>e</sup>
</italic>
)<italic><sup>T</sup>
</italic>
is the position error vector;
<inline-formula><mml:math id="mm6"><mml:mrow><mml:mi>δ</mml:mi>
<mml:msup><mml:mi>V</mml:mi>
<mml:mi>e</mml:mi>
</mml:msup>
<mml:mo>=</mml:mo>
<mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>δ</mml:mi>
<mml:msubsup><mml:mi>V</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>e</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>δ</mml:mi>
<mml:msubsup><mml:mi>V</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>e</mml:mi>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mi>δ</mml:mi>
<mml:msubsup><mml:mi>V</mml:mi>
<mml:mi>z</mml:mi>
<mml:mi>e</mml:mi>
</mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>
is the velocity error vector expressed in the Earth-centered Earth-fixed frame (ECEF or e-frame); <italic>ε<sub>R</sub>
</italic>
and <italic>ε<sub>V</sub>
</italic>
are the position and velocity noise, respectively.
<inline-formula><mml:math id="mm7"><mml:mrow><mml:msubsup><mml:mi>R</mml:mi>
<mml:mtext mathvariant="italic">INS</mml:mtext>
<mml:mi>e</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
and
<inline-formula><mml:math id="mm8"><mml:mrow><mml:msubsup><mml:mi>R</mml:mi>
<mml:mtext mathvariant="italic">GPS</mml:mtext>
<mml:mi>e</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
are the positions in the e-frame obtained by INS and GPS, respectively.
<inline-formula><mml:math id="mm9"><mml:mrow><mml:msubsup><mml:mtext>V</mml:mtext>
<mml:mtext mathvariant="italic">INS</mml:mtext>
<mml:mi>e</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
and
<inline-formula><mml:math id="mm10"><mml:mrow><mml:msubsup><mml:mtext>V</mml:mtext>
<mml:mtext mathvariant="italic">GPS</mml:mtext>
<mml:mi>e</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
are the velocities in the e-frame obtained by INS and GPS, respectively.</p>
<p>In a KF-based system, the system noise (<italic>w<sub>k</sub>
</italic>
) and the measurement noise (<italic>ε<sub>k</sub>
</italic>
) are assumed to be independent normal distributions with zero mean and variances (<italic>Q<sub>k</sub>
</italic>
and <italic>R<sub>k</sub>
</italic>
), respectively:
<disp-formula id="FD4"><label>(4)</label>
<mml:math id="mm11"><mml:mrow><mml:msub><mml:mi>w</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>~</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub><mml:mi>Q</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>,</mml:mo>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msub><mml:mi>ɛ</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>~</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub><mml:mi>R</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
In fact, the system noise and measurement noise are not usually correctly estimated but can be modeled by the representation of a system noise model and measurement noise model. In practice, <italic>Q<sub>k</sub>
</italic>
is modeled based on sensor calibration and <italic>R<sub>k</sub>
</italic>
is modeled based on the GPS position and velocity uncertainty.</p>
<p>Now, let's define
<inline-formula><mml:math id="mm12"><mml:mrow><mml:msubsup><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
and
<inline-formula><mml:math id="mm13"><mml:mrow><mml:msubsup><mml:mtext>P</mml:mtext>
<mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
as the <italic>a priori</italic>
state and associated variance matrix estimated at time <italic>k</italic>
given the knowledge of the process prior to time <italic>k</italic>
−<italic>1</italic>
, where:
<disp-formula id="FD5"><label>(5)</label>
<mml:math id="mm14"><mml:mrow><mml:msubsup><mml:mrow><mml:mover accent="true"><mml:mtext>x</mml:mtext>
<mml:mo>^</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub><mml:mi>ϕ</mml:mi>
<mml:mrow><mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
<mml:mrow><mml:mtext>k</mml:mtext>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:msub><mml:mrow><mml:mover accent="true"><mml:mtext>x</mml:mtext>
<mml:mo>^</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow><mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="FD6"><label>(6)</label>
<mml:math id="mm15"><mml:mrow><mml:msubsup><mml:mtext>P</mml:mtext>
<mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub><mml:mi>ϕ</mml:mi>
<mml:mrow><mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
<mml:mtext>k</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:msub><mml:mtext>P</mml:mtext>
<mml:mrow><mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msubsup><mml:mi>ϕ</mml:mi>
<mml:mrow><mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>;</mml:mo>
<mml:mtext>k</mml:mtext>
</mml:mrow>
<mml:mtext>T</mml:mtext>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msub><mml:mtext>Q</mml:mtext>
<mml:mtext>k</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<italic>x̂</italic>
<italic><sub>k</sub>
</italic>
is the <italic>a posteriori</italic>
state estimate at time <italic>k</italic>
given the measurement <italic>z<sub>k</sub>
</italic>
. <italic>A priori</italic>
and <italic>a posteriori</italic>
estimate errors and associated covariance matrices are:
<disp-formula id="FD7"><label>(7)</label>
<mml:math id="mm16"><mml:mrow><mml:msubsup><mml:mi>e</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub><mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msubsup><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msubsup><mml:mi>P</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mi>E</mml:mi>
<mml:mo stretchy="false">[</mml:mo>
<mml:msubsup><mml:mi>e</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:msubsup><mml:mi>e</mml:mi>
<mml:mi>k</mml:mi>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="FD8"><label>(8)</label>
<mml:math id="mm17"><mml:mrow><mml:msub><mml:mi>e</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub><mml:mi>x</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msub><mml:mi>P</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>E</mml:mi>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub><mml:mi>e</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:msubsup><mml:mi>e</mml:mi>
<mml:mi>k</mml:mi>
<mml:mi>T</mml:mi>
</mml:msubsup>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The linear combination between the <italic>a posteriori</italic>
state estimate <italic>x̂<sub>k</sub>
</italic>
, <italic>a priori</italic>
state estimate
<inline-formula><mml:math id="mm18"><mml:mrow><mml:msubsup><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
, and a weighted difference between actual measurement <italic>z<sub>k</sub>
</italic>
and measurement prediction
<inline-formula><mml:math id="mm19"><mml:mrow><mml:mi>H</mml:mi>
<mml:msubsup><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>
is:
<disp-formula id="FD9"><label>(9)</label>
<mml:math id="mm20"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mrow><mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msubsup><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:mi>K</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub><mml:mi>z</mml:mi>
<mml:mrow><mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>H</mml:mi>
<mml:msubsup><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The associated covariance matrix P<sub>k</sub>
is determined as:
<disp-formula id="FD10"><label>(10)</label>
<mml:math id="mm21"><mml:mrow><mml:msub><mml:mtext>P</mml:mtext>
<mml:mtext>k</mml:mtext>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msubsup><mml:mtext>P</mml:mtext>
<mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msub><mml:mtext>K</mml:mtext>
<mml:mtext>k</mml:mtext>
</mml:msub>
<mml:msub><mml:mtext>H</mml:mtext>
<mml:mtext>k</mml:mtext>
</mml:msub>
<mml:msubsup><mml:mtext>P</mml:mtext>
<mml:mtext>k</mml:mtext>
<mml:mo>−</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>
where the equation
<inline-formula><mml:math id="mm22"><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:msub><mml:mi>z</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>H</mml:mi>
<mml:msubsup><mml:mover accent="true"><mml:mi>x</mml:mi>
<mml:mo>^</mml:mo>
</mml:mover>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
is called measurement innovation or the residual. <italic>K</italic>
is called as Kalman gain matrix and can be shown by:
<disp-formula id="FD11"><label>(11)</label>
<mml:math id="mm23"><mml:mrow><mml:msub><mml:mi>K</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msubsup><mml:mi>P</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:msup><mml:mi>H</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo>
<mml:mi>H</mml:mi>
<mml:msubsup><mml:mi>P</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>−</mml:mo>
</mml:msubsup>
<mml:msup><mml:mi>H</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:msub><mml:mi>R</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mrow><mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The KF estimates a process by using a form of feedback control—the filter estimates the process state at some time and then obtains feedback in the form of measurements. As such, the KF updates in two steps each stage: time update and measurement update. The time update estimates the current state and error covariance for the next time step. The measurement update incorporates a new measurement into the <italic>a priori</italic>
estimate to obtain an improved <italic>a posteriori</italic>
estimate.</p>
</sec>
<sec><label>2.2.</label>
<title>Map-Matching Algorithm</title>
<p>The purpose of developing the curve-to-curve algorithm was to reduce the position error drift during GPS outages. The method used in the study is modified from [<xref rid="b8-sensors-13-11280" ref-type="bibr">8</xref>
]. <xref rid="f1-sensors-13-11280" ref-type="fig">Figure 1</xref>
shows the processes in the algorithm. In the data processing, signal points are ordered in time and then point ID are attached. A link represents a road in the map and the road azimuth is known. The steps are described as follows:
<list list-type="order"><list-item><p>Integrate GPS and IMU data using the KF: Extended KF (EKF) is used to integrate GPS and INS data based on a loosely coupled scheme. The details of EKF can be found in previous researches [<xref rid="b3-sensors-13-11280" ref-type="bibr">3</xref>
]. In this study, a linear approximation of a nonlinear function is proposed. The EKF can be simplified to the KF algorithm. The equations of the algorithm are shown in <xref rid="FD1" ref-type="disp-formula">Equations (1)</xref>
–<xref rid="FD11" ref-type="disp-formula">(11)</xref>
.</p>
</list-item>
<list-item><p>Search candidate road links in a 30-m trajectory buffer and project points to links: The purpose of this step is to determine all link candidates and project signal points to candidate links for map matching. Firstly, the buffer is created based on the GPS/ INS trajectory. All links within the buffer will be defined as the candidate road links.</p>
</list-item>
<list-item><p>Cluster point sets considering projected link azimuth and point ID continuity: Signal points and candidate road links are stored in a database of a GIS. When the position errors in some points are large, the projected link azimuth and point ID are vital information to facilitate dividing links into point clusters. <xref rid="f2-sensors-13-11280" ref-type="fig">Figure 2</xref>
illustrates the clustering process. Point sets in each road link can be separated when considering projected link azimuth and point ID information. <italic>G<sub>i</sub>
</italic>
and <italic>G<sub>ij</sub>
</italic>
are defined as the clustering point sets based on link azimuth <italic>i</italic>
and the ones based on link azimuth <italic>i</italic>
and section <italic>j</italic>
. A two-step clustering approach is shown. For example, the point sets are firstly separated into <italic>G<sub>2</sub>
</italic>
(p4, 5) and the other cluster <italic>G<sub>1</sub>
</italic>
(p1, 2, 3, 6, 7, 8) based on the projected link azimuth, and then are separated into <italic>G<sub>11</sub>
</italic>
(p1, 2, 3) and <italic>G<sub>12</sub>
</italic>
(p6, 7, 8) according to point ID continuity.</p>
</list-item>
<list-item><p>Determine the closest link in each point set: The objective is to determine the minimum distance from a point set to a link as the map matching indicator. If the minimum distance from a point set to a candidate link is determined, the link with the minimal distance is identified as the matching link:
<disp-formula id="FD12"><label>(12)</label>
<mml:math id="mm24"><mml:mrow><mml:mi>L</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mtext mathvariant="italic">arg</mml:mtext>
<mml:mspace width="0.2em"></mml:mspace>
<mml:mtext>min</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub><mml:mi>D</mml:mi>
<mml:mrow><mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
where <italic>D<sub>ij</sub>
</italic>
is the distance from a point set <italic>i</italic>
to a link <italic>j; Li</italic>
is the matching link in a point set <italic>i</italic>
. For example, in <xref rid="f2-sensors-13-11280" ref-type="fig">Figure 2</xref>
, the link with the minimal average distance is the best-matched link such as <italic>L</italic>
1 link 1 in <italic>G<sub>11</sub>
</italic>
, <italic>L</italic>
2: link 4 in <italic>G<sub>2</sub>
</italic>
, and <italic>L</italic>
3: link 6 in <italic>G<sub>12</sub>
</italic>
. However, the point-to-curve algorithm skips step 4 and directly determines the closest link in each point.</p>
</list-item>
<list-item><p>Reduce redundancy: When the testing motorcycle stops, the redundancy is a large amount of duplicated random points. In the model, redundancy can be identified and removed automatically based on velocity information:
<disp-formula id="FD13"><label>(13)</label>
<mml:math id="mm25"><mml:mrow><mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mspace width="0.2em"></mml:mspace>
<mml:msub><mml:mi>v</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo><</mml:mo>
<mml:msub><mml:mi>v</mml:mi>
<mml:mtext mathvariant="italic">thres</mml:mtext>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mspace width="0.2em"></mml:mspace>
<mml:mtext mathvariant="italic">then pi is a redundant point</mml:mtext>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
where <italic>v<sub>i</sub>
</italic>
is velocity of the vehicle at point <italic>pi</italic>
; <italic>v<sub>thres</sub>
</italic>
is the threshold velocity in motorcycle stopping.</p>
</list-item>
</list>
</p>
</sec>
</sec>
<sec><label>3.</label>
<title>Experiments and Materials</title>
<p>Tests were performed in Tainan City to assess the efficacy of both algorithms. The test trajectory length was approximately 6 km and the total experiment time was about 1,500 s. The MIDG II low-cost IMU and single frequency GPS receiver were mounted on a motorcycle to collect data (<xref rid="f3-sensors-13-11280" ref-type="fig">Figure 3</xref>
). <xref rid="t1-sensors-13-11280" ref-type="table">Table 1</xref>
shows the MIDG II specifications. The MIDG II is a GPS-aided INS for use in obtaining attitude, position, velocity, acceleration, and angular rates for navigation.</p>
</sec>
<sec><label>4.</label>
<title>Results and Discussion</title>
<p><xref rid="f4-sensors-13-11280" ref-type="fig">Figure 4</xref>
shows the raw GPS point data (Left panel) and GPS/INS data integrated by KF (Right panel). Although GPS signals are often unavailable due to signal outages in urban canyons, the MEMS-based inertial sensor technology has high-frequency signals without outages for low-cost integrated vehicle navigation systems [<xref rid="b9-sensors-13-11280" ref-type="bibr">9</xref>
]. An integrated GPS and INS will overcome the outages, but the KF cannot compensate all the drift errors caused by both sensors on the motorcycle platform. The resulting trajectory doesn't match well the road map used as the reference. The average error of each integrated point to a matching line is 5.09 m (right panel in <xref rid="f4-sensors-13-11280" ref-type="fig">Figure 4</xref>
). Compared to the average errors of only GPS from each point to the matching road, an INS/GPS system with an average position error is still large because the platform is a motorcycle. Motorcycles are not as stable as vehicles. In the system, we don't consider the nonholonomic constraint (NHC) that limits the velocity of the vehicle in the plane perpendicular to the forward direction. Thus, map matching is used directly to overcome the problem</p>
<p><xref rid="f5-sensors-13-11280" ref-type="fig">Figure 5</xref>
displays the point-to-curve (left) and curve-to-curve (right) map-matching results. Average errors for each point in both matching approaches are 1.73 and 0.61 m. The results show that the point-to-curve algorithm exhibits low accuracy, and some links are discontinuous when the motorcycle platform is not steady and the drift errors in the integrated data are large. The low-accuracy point-to-curve algorithm cannot identify all the right links for map matching (Left panel of <xref rid="f5-sensors-13-11280" ref-type="fig">Figure 5</xref>
). However, the curve-to-curve algorithm mitigates most of the errors and improves the navigational solution (Right panel of <xref rid="f5-sensors-13-11280" ref-type="fig">Figure 5</xref>
). <xref rid="f6-sensors-13-11280" ref-type="fig">Figure 6</xref>
shows the details of matching result comparisons of the two algorithms. The matched links are separated into three sub-links using the point-to-curve algorithm (Left panel of <xref rid="f6-sensors-13-11280" ref-type="fig">Figure 6</xref>
), but can be improved using the curve-to-curve algorithm (Right panel of <xref rid="f6-sensors-13-11280" ref-type="fig">Figure 6</xref>
).</p>
<p>Most of the limitations of existing algorithms have been explained in [<xref rid="b7-sensors-13-11280" ref-type="bibr">7</xref>
]. Two major limitations of map matching are incorrect matches at junctions or parallel roads (<xref rid="FD1" ref-type="disp-formula">Equation (1)</xref>
) and redundant points when the motorcycle stops (<xref rid="FD2" ref-type="disp-formula">Equation (2)</xref>
). The difficulty of identifying the correct link at a junction using the traditional map-matching procedures is observable in the left panel of <xref rid="f6-sensors-13-11280" ref-type="fig">Figure 6</xref>
. The point-to-curve algorithm assigns an incorrect link because the algorithm does not take all azimuth (heading) information of the trajectory into account. In our approach, the heading information for each point set is considered in the map matching. This information implies that the trajectory is the same link. The algorithm accurately matches the correct track with the road map (Right panel of <xref rid="f6-sensors-13-11280" ref-type="fig">Figure 6</xref>
). In the system, KF has not considered the constraint of zero velocity update, however, many redundant points occurred when the motorcycle stopped in waiting areas and crossroads. The problem of redundant points will be solved by using map matching. According to the model, redundancy can be removed using the curve-to-curve algorithm when the motorcycle stops (Right panel of <xref rid="f7-sensors-13-11280" ref-type="fig">Figure 7</xref>
). The algorithm can overcome the redundant point problem (Left panel of <xref rid="f7-sensors-13-11280" ref-type="fig">Figure 7</xref>
) by considering point ID continuity and road network information, therefore, the research develops a smart map matching algorithm for road networks. The algorithm can reduce the drift errors associated with the GPS outages, incorrect matches, and redundant points when the motorcycle is stationary for the precise identification of the correct link.</p>
</sec>
<sec sec-type="conclusions"><label>5.</label>
<title>Conclusions</title>
<p>This study applies data fusion and a map-matching model in identifying the relationship between GPS/INS measured data and road map data for a robust navigation solution. The algorithm is suitable for integrating GPS and INS data into map matching in urban areas, and improves the incorrect routes based on the point-to-curve map matching. Therefore, even using a low-cost IMU or an unstable platform, the curve-to-curve map-matching algorithm can identify the right routes. Consequently, the proposed scheme can provide consistent navigation solutions with improved sustainability in GPS-denied environments. The best routes of map matching can be determined by reducing the irrational routes in GPS-denied environments. Future studies will be conducted to extend the procedure from 2-D to 3-D in land vehicular navigation systems. In addition, further study of personal mobile devices for real-time pedestrian navigation will be undertaken.</p>
</sec>
</body>
<back><ack><p>The authors thank the financial supporting this research under Contract No. 101-2119-M-006-013. The authors also would like to thanks Deng and Lin for treatments of paper editing. This research received funding from the Headquarters of University Advancement at the National Cheng Kung University, which is sponsored by the Ministry of Education, Taiwan.</p>
</ack>
<notes><title>Conflicts of Interest</title>
<p>The authors declare no conflict of interest.</p>
</notes>
<ref-list><title>References</title>
<ref id="b1-sensors-13-11280"><label>1.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Godha</surname>
<given-names>S.</given-names>
</name>
<name><surname>Cannon</surname>
<given-names>A.M.E.</given-names>
</name>
</person-group>
<article-title>GPS/MEMS INS integrated system for navigation in urban areas</article-title>
<source>GPS Solut.</source>
<year>2007</year>
<volume>11</volume>
<fpage>193</fpage>
<lpage>203</lpage>
</element-citation>
</ref>
<ref id="b2-sensors-13-11280"><label>2.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Sukkarieh</surname>
<given-names>S.</given-names>
</name>
<name><surname>Nebot</surname>
<given-names>E.M.</given-names>
</name>
<name><surname>Durrant-Whyte</surname>
<given-names>H.F.</given-names>
</name>
</person-group>
<article-title>A high integrity IMU GPS navigation loop for autonomous land vehicle applications</article-title>
<source>IEEE Trans. Rob. Autom.</source>
<year>1999</year>
<volume>15</volume>
<fpage>572</fpage>
<lpage>578</lpage>
</element-citation>
</ref>
<ref id="b3-sensors-13-11280"><label>3.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Dissanayake</surname>
<given-names>G.</given-names>
</name>
<name><surname>Sukkarieh</surname>
<given-names>S.</given-names>
</name>
<name><surname>Nebot</surname>
<given-names>E.</given-names>
</name>
<name><surname>Durrant-Whyte</surname>
<given-names>H.</given-names>
</name>
</person-group>
<article-title>The aiding of a low-cost strapdown inertial measurement unit using vehicle model constraints for land vehicle applications</article-title>
<source>IEEE Trans. Rob. Autom.</source>
<year>2001</year>
<volume>17</volume>
<fpage>731</fpage>
<lpage>747</lpage>
</element-citation>
</ref>
<ref id="b4-sensors-13-11280"><label>4.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Bevly</surname>
<given-names>D.M.</given-names>
</name>
</person-group>
<article-title>Global positioning system (GPS): A low-cost velocity sensor for correcting inertial sensor errors on ground vehicles</article-title>
<source>J. Dynam. Syst. Measur. Control Trans. ASME</source>
<year>2004</year>
<volume>126</volume>
<fpage>255</fpage>
<lpage>264</lpage>
</element-citation>
</ref>
<ref id="b5-sensors-13-11280"><label>5.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Wendel</surname>
<given-names>J.</given-names>
</name>
<name><surname>Meister</surname>
<given-names>O.</given-names>
</name>
<name><surname>Schlaile</surname>
<given-names>C.</given-names>
</name>
<name><surname>Trommer</surname>
<given-names>G.F.</given-names>
</name>
</person-group>
<article-title>An integrated GPS/MEMS-IMU navigation system for an autonomous helicopter</article-title>
<source>Aerosp. Sci. Technol.</source>
<year>2006</year>
<volume>10</volume>
<fpage>527</fpage>
<lpage>553</lpage>
</element-citation>
</ref>
<ref id="b6-sensors-13-11280"><label>6.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Ochieng</surname>
<given-names>W.Y.</given-names>
</name>
<name><surname>Quddus</surname>
<given-names>M.A.</given-names>
</name>
<name><surname>Noland</surname>
<given-names>R.B.</given-names>
</name>
</person-group>
<article-title>Map-matching in complex urban road networks</article-title>
<source>Braz. J. Cartogr.</source>
<year>2004</year>
<volume>55</volume>
<fpage>1</fpage>
<lpage>18</lpage>
</element-citation>
</ref>
<ref id="b7-sensors-13-11280"><label>7.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Quddus</surname>
<given-names>M.A.</given-names>
</name>
<name><surname>Ochieng</surname>
<given-names>W.Y.</given-names>
</name>
<name><surname>Zhao</surname>
<given-names>L.</given-names>
</name>
<name><surname>Noland</surname>
<given-names>R.B.</given-names>
</name>
</person-group>
<article-title>A general map matching algorithm for transport telematics applications</article-title>
<source>GPS Solut.</source>
<year>2003</year>
<volume>7</volume>
<fpage>157</fpage>
<lpage>167</lpage>
</element-citation>
</ref>
<ref id="b8-sensors-13-11280"><label>8.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Cossaboom</surname>
<given-names>M.</given-names>
</name>
<name><surname>Georgy</surname>
<given-names>J.</given-names>
</name>
<name><surname>Karamat</surname>
<given-names>T.</given-names>
</name>
<name><surname>Noureldin</surname>
<given-names>A.</given-names>
</name>
</person-group>
<article-title>Augmented kalman filter and map matching for 3D RISS/GPS integration for land vehicles</article-title>
<source>Int. J. Navig. Observ.</source>
<year>2012</year>
<volume>2012</volume>
<fpage>1</fpage>
<lpage>16</lpage>
</element-citation>
</ref>
<ref id="b9-sensors-13-11280"><label>9.</label>
<element-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Park</surname>
<given-names>M.</given-names>
</name>
<name><surname>Gao</surname>
<given-names>Y.</given-names>
</name>
</person-group>
<article-title>Error and performance analysis of MEMS-based inertial sensors with a low-cost GPS receiver</article-title>
<source>Sensors</source>
<year>2008</year>
<volume>8</volume>
<fpage>2240</fpage>
<lpage>2261</lpage>
</element-citation>
</ref>
</ref-list>
</back>
<floats-group><fig id="f1-sensors-13-11280" position="float"><label>Figure 1.</label>
<caption><p>The map-matching algorithm.</p>
</caption>
<graphic xlink:href="sensors-13-11280f1"></graphic>
</fig>
<fig id="f2-sensors-13-11280" position="float"><label>Figure 2.</label>
<caption><p>Two-step signal point clustering.</p>
</caption>
<graphic xlink:href="sensors-13-11280f2"></graphic>
</fig>
<fig id="f3-sensors-13-11280" position="float"><label>Figure 3.</label>
<caption><p>The GPS Receiver and MEMs IMU mounted on a motorcycle.</p>
</caption>
<graphic xlink:href="sensors-13-11280f3"></graphic>
</fig>
<fig id="f4-sensors-13-11280" position="float"><label>Figure 4.</label>
<caption><p>Raw GPS (<bold>Left</bold>
) and integrated GPS/INS point data by KF (<bold>Right</bold>
).</p>
</caption>
<graphic xlink:href="sensors-13-11280f4"></graphic>
</fig>
<fig id="f5-sensors-13-11280" position="float"><label>Figure 5.</label>
<caption><p>Point-to-curve (<bold>Left</bold>
) and curve-to-curve (<bold>Right</bold>
) map-matching results.</p>
</caption>
<graphic xlink:href="sensors-13-11280f5"></graphic>
</fig>
<fig id="f6-sensors-13-11280" position="float"><label>Figure 6.</label>
<caption><p>Details of point-to-curve (<bold>Left</bold>
) and curve-to-curve (<bold>Right</bold>
) map-matching results.</p>
</caption>
<graphic xlink:href="sensors-13-11280f6"></graphic>
</fig>
<fig id="f7-sensors-13-11280" position="float"><label>Figure 7.</label>
<caption><p>Map matching before (<bold>Left</bold>
) and after signal redundancy reduction (<bold>Right</bold>
).</p>
</caption>
<graphic xlink:href="sensors-13-11280f7"></graphic>
</fig>
<table-wrap id="t1-sensors-13-11280" position="float"><label>Table 1.</label>
<caption><p>MIDG II specification.</p>
</caption>
<table frame="hsides" rules="groups"><thead><tr><th align="left" valign="top" rowspan="1" colspan="1"><bold>Physical Characteristics</bold>
</th>
<th align="left" valign="top" rowspan="1" colspan="1"><bold>IMU Performance</bold>
</th>
</tr>
</thead>
<tbody><tr><td align="left" valign="top" rowspan="1" colspan="1">Output rate (Hz)</td>
<td align="left" valign="top" rowspan="1" colspan="1">50</td>
</tr>
<tr><td align="left" valign="top" rowspan="1" colspan="1">Gyro bias (degree/h)</td>
<td align="left" valign="top" rowspan="1" colspan="1">47</td>
</tr>
<tr><td align="left" valign="top" rowspan="1" colspan="1">Gyro scale factor (ppm)</td>
<td align="left" valign="top" rowspan="1" colspan="1">5,000</td>
</tr>
<tr><td align="left" valign="top" rowspan="1" colspan="1">Accelerometer bias (mg)</td>
<td align="left" valign="top" rowspan="1" colspan="1">6.0</td>
</tr>
<tr><td align="left" valign="top" rowspan="1" colspan="1">Accelerometer scale factor (ppm)</td>
<td align="left" valign="top" rowspan="1" colspan="1">19,700</td>
</tr>
</tbody>
</table>
</table-wrap>
</floats-group>
</pmc>
</record>
Pour manipuler ce document sous Unix (Dilib)
EXPLOR_STEP=$WICRI_ROOT/Ticri/CIDE/explor/TelematiV1/Data/Pmc/Corpus
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 000544 | SxmlIndent | more
Ou
HfdSelect -h $EXPLOR_AREA/Data/Pmc/Corpus/biblio.hfd -nk 000544 | SxmlIndent | more
Pour mettre un lien sur cette page dans le réseau Wicri
{{Explor lien |wiki= Ticri/CIDE |area= TelematiV1 |flux= Pmc |étape= Corpus |type= RBID |clé= |texte= }}
![]() | This area was generated with Dilib version V0.6.31. | ![]() |