Сейчас в приоритете анализ ГПС, как наиболее полной карты. Однако там часто бывают помарки, да и "поверните направо", кода там глухая стена - не шибко-то и редкость: обновление карты запаздывает, ошибки картограов. Пример: "[url='g Москва наримановская 23']сравните фото и карту[/url].
Анализ соседних авто проводится по какой-то эпично черезпопной схеме, насколько я могу судить: учитываются габаритные огни, заливаются фотографии задов машин...
Надо быть проще: 1) Ключевой элемент системы - камера, 2-4 штуки. Без всего остального (GPS/Глонасс) можно обойтись. 2) Карта местности в виде jpg файла. 3) Логика ИИ, которая в автоматическом режиме картографирует местность, разделяя объекты на "подвижные", "неподвижные", "временные", "стабильные", "постоянные". Примечание: подвижные перемещаются при машине, неподвижные стоят при машне, "временные" - более месяца, "стабильные" - полгода, "постоянные" год и более. Например, машины на парковке "временные", сама парковка - "стабильная" или "постоянная". Зато бетонный блок - "стабильный", так как его иногда перетаскивают джипперы.
Машина сама анализирует карту, после чего пытается определить своё местонахождение в режиме "поиск совпадений". И ищет эти совпадения постоянно. Ве объекты запоминаются в виде тегированной ассоциативной БД, псевдо-трёхмерные (т.е. они не запоминаются как 3D, хотя и воспринимаются именно так). Тегирование позволяет сэкономить место при запоминании машин.
Поиск маршрута производится по принципу "не сейчас - так потом". После определения примерного местонахождения или хотябы направления до цели машина начинает движение в направлении цели. Если карта более-менее установлена (т.е. прогноз по совпадениям выполняется), то дальнейший маршрут простраивается по карте. Если прогноз не сбывается - текущая карта правится.
Выбор стратегии на дороге идёт по принципам: 1) Не столкнись (распознавание движения объектов) 2) Будь как все (анализ поведения на дороге, применение текущих условий дистанции, скорости, маневрирования за приемлемые) 3) Поиск движущихся и стоячих элементов по подобиям (выявление разметки, пешеходов, машин, птиц и прочей нечисти, мешающей проезду) 4) Создание приемлемых линий (создание собственной разметки, описывающей текущее положение вещей на дороге. Может и должен при необходимости полностью игнорировать обычную разметку и сам факт наличия дороги). 5) Распознование движущихся объектов как "ветчина" (малые вертикальные объекты, подобные им горизонтальные и искривлённые), "вёдра", "прочее" (дома и иже). 6) Анализ поведения ТС (цель: так спроектировать маршрут, чтобы наименьшим образом израсходовать ресурс машины).
Вроде этого должно хватить для: 1) Поиска места назначения по скану карты или рисунку от руки. 2) Определения пешеходных дорожек (в т.ч. изменение скоростного режима) 3) Хамского поведения на дороге при необходимости (линия маршрута + поведение соответствующее поведению окружающих). 4) Динамическое обновление карты, построение локального маршрута.
Анализ производится в двух режимах: грубом (320х200/240) и качественном (макс. сила матрицы) при обнаружении новых знаков. Минус: может не распознать замену знака (80) на (30)
Соответственно, машины организуют БД таким образом, чтобы активные, используемые ассоциации были наверху, а уже 3 года как не встречающийся объект был подальше, вплоть до удаления.
Можно ещё докинуть локальный форум для машинок (обмен уточнёнными, новыми картами и опытом), который при правильном оформлении формата постов смогут читать обычные люди (скажем, лужа перед магазином или выбоины перед мостом) и даже вставлять "свои 5 копеек": "уже починили", "Нифига там не яма, а лежачий полицейский. У тебя датчик перекошен" и т.д. |