Я использую OpenStreetMap и его векторную дорожную сеть, и я хотел бы реализовать алгоритм сопоставления карт.
В настоящее время я могу для каждой позиции GPS извлечь ближайший участок дороги и рассчитать проекцию этой позиции на этот сегмент, как на этом изображении (красный штифт - это чистая позиция GPS, синим цветом - сопоставленный сегмент, а зеленым - сопоставленная позиция):
Однако из-за недостаточной точности GPS иногда отображаемое положение перепрыгивает с сегмента на другой и может время от времени предоставлять некоторое несовместимое отображаемое положение.
Мой текущий алгоритм очень прост: из чистой позиции GPS я получаю ближайший сегмент и решаю, что сопоставленная сопоставленная позиция находится на этом. Я знаю, что это может быть действительно улучшено.
Я могу себе представить, что учет направления движения автомобиля улучшит соответствие карты, но знаете ли вы какой-либо другой подход, который позволил бы мне улучшить сопоставление карт?
Я ищу любую ссылку и / или программное обеспечение с открытым исходным кодом?