В моем приложении я хочу найти точные координаты объектов, обнаруженных в лазерном сканере, размещенном в движущемся транспортном средстве, в режиме реального времени.До сих пор я обнаружил локальные минимумы точек на графике и даю все локальные минимумы, включая нежелательные 2, показанные на рисунке. Но мне нужны только местоположения основных объектов, такие как обозначенные на рисунке цифрой 1.
Я попробовал эти методы в C # после поиска в Google и stackoverflow
Я сделал скользящее среднее для кривой и обнаружил локальные минимумы. Результат в порядке. Но так какв реальном времени, я беспокоюсь, что это может занять некоторое время обработки.
Я также попытался выяснить наклоны различных точек на кривой и попытался отметить позиции с максимальным иминимальные уклоны.Это работает, но не точно находит правильное положение.
Я попытался отметить точки, которые удовлетворяют обоим критериям, то есть локальным минимумам, имеющим высокие уклоны. Но он не работает, как предполагалось.
Последний вариант, который у меня есть, заключается в том, чтобы при первом сканировании иметь ссылку и вычитать другие графы объектов из ссылки. Затем я могу сравнить вычтенный диапазон и локальные минимумы, чтобы найти точное положение.то есть часть 1 и черная кривая внизу.
частота сканирования составляет 50 Гц, а если скользящее среднее не много времени.Я пойду с первым вариантом.Наконец, я собираюсь кодировать алгоритм в C ++.Я пробую разные вещи в C #, так как графы легче просматривать и анализировать.