пересчет ряда точек - PullRequest
       17

пересчет ряда точек

4 голосов
/ 04 мая 2010

у меня есть массив точек в 3d (представьте себе траекторию шара) с образцами X.

Теперь я хочу повторно сэмплировать эти точки, чтобы у меня был новый массив с позициями с y выборками.

y может быть больше или меньше x, но не меньше 1. всегда будет хотя бы 1 образец.

как бы выглядел алгоритм для повторной выборки исходного массива в новый? спасибо!

Ответы [ 2 ]

4 голосов
/ 04 мая 2010

Основная идея состоит в том, чтобы взять свои точки Х и построить их на графике. Затем интерполируйте их, используя некоторую разумную функцию интерполяции. Вы можете использовать линейную интерполяцию, квадратичные B-сплайны и т. Д. Как правило, если у вас нет особых причин полагать, что точки представляют собой функцию более высокого порядка (например, N 4 ), которую вы хотите придерживаться относительно низкого уровня порядок интерполяции.

Как только вы это сделаете, у вас есть (по существу) непрерывная линия на вашем графике. Чтобы получить свои точки Y, вы просто выбираете точки Y, равномерно распределенные по оси X графика.

3 голосов
/ 04 мая 2010

Вы должны выбрать какую-либо функцию интерполяции / аппроксимации на основе исходных x выборок (например, некоторый вид сплайна). Затем вы можете оценить эту функцию на y (с равными интервалами, если хотите), чтобы получить новые образцы.

Для математики вы можете использовать статью Википедии о сплайн-интерполяции в качестве отправной точки.

...