|
3 / 3 / 2
Регистрация: 05.12.2011
Сообщений: 51
|
|
Сглаживание кривой25.11.2015, 17:58. Показов 7295. Ответов 27
Метки нет (Все метки)
Привет!
Совсем замучился с проблемой )) Помогите, пожалуйста! Есть двумерный очень большой массив точек - координаты (x,y) мест. В целом они идут по "красивой" кривой, но иногда возникают "клубки" (как на картинке - черным цветом). Я не понимаю, какой алгоритм применять для того, чтобы "клубки" убрать и просто продолжить мою кривую (на картинке - красная линия). Очень надеюсь на подсказку.
0
|
|
| 25.11.2015, 17:58 | |
|
Ответы с готовыми решениями:
27
Сглаживание функции Сглаживание при дисторсии изображения Сглаживание кривой |
|
3 / 3 / 2
Регистрация: 05.12.2011
Сообщений: 51
|
||||||||
| 02.12.2015, 11:01 [ТС] | ||||||||
|
Вот мой код:
0
|
||||||||
| 02.12.2015, 11:49 | |||||||||
В общем, отладку никто не отменял - на любом языке программирования
0
|
|||||||||
|
3 / 3 / 2
Регистрация: 05.12.2011
Сообщений: 51
|
|||||||||
| 02.12.2015, 12:27 [ТС] | |||||||||
|
И возвращает ровно косинус угла между векторами, пример вывода:
Я пытаюсь сделать следующее: загружаю исходные точки из файла (по сути - это координаты от gps-приемника), убираю клубки, записываю новый, сглаженный массив: gps-приемник дает координаты с большой ошибкой, когда скорость его = 0 (получаются такие клубки), при движении - все в пределах допустимого. Хочу рисовать красивый маршрут на карте.
0
|
|||||||||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 02.12.2015, 13:34 | |
|
Не знаю что у вас тут за формулы и зачем они.
Если сделать как я говорил выше то будет примерно следующее:
0
|
|
| 02.12.2015, 13:50 | ||||
На С/С++ все это делается за минуты (если графики под рукой), а тут как-то тяжеловато идет.- для каждой точки просматриваем массив вперед и назад на заданную длину. Попавшие в диапазон точки принимаются для осреднения с весом 1, крайние - с частичным, пропорционально захваченной длине. Имеем для точки среднее значение. - вычисляем сумму квадратов отклонений углов (а не позиций) и используем ее как вес для взвешивания между исходной и осредненной. Для крайних точек (не вошедших в диапазон) используем их частичные веса Добавлено через 2 минуты
0
|
||||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
||
| 02.12.2015, 14:16 | ||
|
К примеру так Даны 4 точки ABCD. Находим абсолютный угол AB,AC,AD.Если разность углов AB и AC<порог и разность углов AB и AD<порог то точка A принадлежит графику.
ТС может вы вообще не так подходите к вопросу? Сейчас вы показываете координаты GPS типа X Y координаты на местности, а если построить два графика типа 1) X ось это время Y ось это X координаты 2) X ось это время Y ось это Y координаты Тогда клубков не будет вообще никогда, появиться просто шум на графиках остановки GPS .В любом случае сильно упростит анализ, и тема эта должна быть очень известная. А значит велик не нужен. И может такой вопрос задать в теме GPS по типу Метод сглаживания GPS данных? К примеру: http://habrahabr.ru/post/140274/ И вообще поискать типа Убрать шум на графике, сглаживание GPS данных.
0
|
||
| 02.12.2015, 15:06 | ||
Ведь задача, вроде бы, не то чтобы "известная", а даже "известнейшая". Но вот, порыпавшись по ссылкам - что-то не выходит, по крайней мере "сходу". Взять хотя бы ту ссылку что Вы привели - ну не так уж просто. Надо осознать параметры (которых не так уж мало), поэкспериментировать (читай - неск дней), а потом.. да вот хз. Может да, действительно хорошее, грамотное решение. Но может и нет - придется убедиться что Кальман - нормальный мужик, но здесь не катит. Я не "придираюсь", просто везде так же - да, есть, но (боже мой) как "обильно" (громоздко)В общем, такие ссылки хорошо сливать другим, но не юзать самому Что впрочем совершенно нормально - автор не обязан следовать собственным рекомендациям - они ведь пишутся для других В конце-концов велик - двигатель прогресса, а если попробовать легко - так чего ж нет.
0
|
||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
||||||
| 02.12.2015, 17:05 | ||||||
|
А эта проблема была всегда… когда хочешь что-то повторить, вроде ну вот же 10 листов описание 30 промежуточных формул ( зачем? в итоге 3 для практики)а как понять что куда и как =). Такое чувство, что когда математический уровень программиста проходит какой-то порог, он перестает адекватно писать формулы простыми обозначениями и простым языком пояснять расчет.. И в других форумах бегло глянул вроде как упоминают Калмана для этой задачи наверно ж не зря, упоминают же там GPS. http://delirium-00.livejournal... tml?page=1 Или “Нашёл что это как правило МНК, Калмен, Сплайн, ну и нечто логическое, аля статик навигейшн с СИРФ3... Но это всё не подтвержденные/общие данные.” Похоже каждый делает как может(вариантов очень много) а коммерческие наверно секретны. На одном форуме говорят сплайн Акимы, создавал давно вопрос этот и глухо. А если не записывать координаты когда автомобиль остановлен? И все…И ничего не нужно сглаживать =).
0
|
||||||
| 02.12.2015, 17:05 | |
|
Помогаю со студенческими работами здесь
28
Найти уравнение кривой на плоскости, если угол касательной и длина кривой заданы параметрически Написать функцию, которая принимает на вход коэффициенты уравнения кривой 2-го порядка и возвращает тип кривой
Сглаживание Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений.
. . .
|
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения
Продолжаю серию постов о дискретно-событийной модели рабочего. . .
|
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы
Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
|
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция
Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
|
|
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
|
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
|
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
|
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика
Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
|