2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Аппроксимация контура сплайнами
Сообщение12.07.2011, 17:12 
Аватара пользователя
Подскажите, пожалуйста, какими сплайнами и каким образом лучше всего аппроксимировать такое множество точек, определяющее контур:

Изображение

Главное условие аппроксимации: сохранение непрерывности первой и второй производных в точках сшивания кусков по всей длине контура, кроме того важное значение имеет точность аппроксимации.

 
 
 
 Re: Аппроксимация контура сплайнами
Сообщение12.07.2011, 20:31 
Попробуйте кубический сплайн. Судя по картинке, в качестве дополнительных условий можно взять равенство первой производной нулю на границах.

 
 
 
 Re: Аппроксимация контура сплайнами
Сообщение13.07.2011, 11:49 
Аватара пользователя
mitia87 в сообщении #467749 писал(а):
Попробуйте кубический сплайн. Судя по картинке, в качестве дополнительных условий можно взять равенство первой производной нулю на границах.


Поправьте меня, если я ошибаюсь, но кубические сплайны подразумевают все-же интерполяцию каждой пары точек? Это значит, что при количестве точек равном $N$ у меня получится $N-1$ сплайнов. Меня же интересует аппроксимация с определенными граничными условиями. Например я аппроксимирую одним сплайном первые 30 точек, затем следующие 30, исходя из значений первой и второй производных в последней точке предыдущего сплайна.

 
 
 
 Re: Аппроксимация контура сплайнами
Сообщение13.07.2011, 13:02 
Тогда попробуйте так: вводите в рассмотрение некий параметр, определяющий, относить ли две последовательные точки к одному сплайну. Таким образом, делите все множество точек на группы.

Дальше три способа:
1. Совсем грубый. Строите кубический сплайн (как я писал раньше), учитывая только граничные точки в каждом множестве.
2. Грубый. Ясно, что если функция то возрастает, то убывает, то сплайн испортит это поведение. Надо разбивать точки на группы ещё с учетом сохранения монотонности. Т.е. в каждой группе только близкие точки, где функция либо возрастает, либо убывает. А дальше, как в первом варианте.
3. Нормальный. Оказывается, что и в этом случае могут появиться посторонние пики. Так что вместо обычного сплайна надо использовать монотонный. http://en.wikipedia.org/wiki/Monotone_cubic_interpolation

 
 
 [ Сообщений: 4 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group