УДК 519.65
КОМБИНИРОВАННЫЙ ПОДХОД К ВЫЧИСЛЕНИЮ ДИСКРЕТНОЙ ИНТЕРПОЛЯЦИИ СИБСОНА
В работе рассмотрен комбинированный подход к построению дискретной интерполяции естественных соседей на основе объединения двух методов с «разбросом» значений. Основная идея подхода заключается в ведении критерия для выбора оптимального метода вычислений, исходя из количества исходных точек данных, а также размерности регулярной решетки. Данный подход к построению дискретной интерполяции естественных соседей, достаточно прост в реализации и обеспечивает оптимальное время вычислений.
Ключевые слова: дискретная интерполяция естественных соседей, интерполяция Сибсона, метод на основе «разброса» значений.
Интерполяция по методу естественных соседей была введена Сибсономв 1981 году как средство для приближения и сглаживания рассеянных данных. В общем случае интерполянт Сибсона функции оценивается в узле р следующим образом [1]:
1 и/(»,■) I- , . _ у
Лр)Г—1 и/(Д),где И, С—г-------------------------, (1)
□, ,и1 □,
где ш - является пересечением площадей (объемов) ячейки Воронного для точки pi и временной ячейки Вороного для точки р.
При этом диаграмма Вороного представляет собой разбиение некоторой области на ячейки или регионы на основе заданного конечного множества рассеянных точек данных, названных сайтами. Диаграмма Вороного и(1<Г) множества N в области является разбиением области на регионы и(р1) таким образом, что любая точка в и(р1) находится ближе к пробе р1, чем к любой другой пробе pj N0 Ц. Регион и(р!) ассоциированный с пробой р1 называется ячейкой Вороного и определяется как[2]:
С/(р;) □ Гр С □ :</(/?,р;) □ </(/?,□ /□, (2)
где ^ метрика расстояния.
На сегодняшний день существует два основных подхода к построению дискретной интерполяции Сибсона:
Подход на основе «собирания значений»
Подход с «разбросом значений»
Подход на основе «собирания значений» основан на вычислении весовых вкладов интерполянта путём определения площадей (в двумерном случае) или объемов (в трехмерном случае) ш, связанных с пробами pi после вставки в диаграмму Вороного временного узла р[з]. Поскольку расчет интерполянтаСибсона в узле р эквивалентен определению средних значений соседних проб, то дискретная интерполяция Сибсона может быть вычислена путём усреднения дискретных элементов. Накапливая все значения данных опробования для исходной диаграммы Вороного внутри временно вставляемого региона Вороного и(р) и разделив накопленное значение на число
М.А.МАЙДАКОВ
Белгородский
государственный
национальный
исследовательский
университет
e-mail:
просуммированных элементов, мы определим среднее значение для региона. Это значение и есть дискретный эквивалент значения интерполяции Сибсона.
Подход с «разбросом значений», предложенный в работе[з],состоит в рассмотрении проблемы с «обратной» стороны, когда значения «разбрасываются», а не собираются. Тогда вместо итеративного прохода по всем позициям р и накопления всех значений позиций растра 1 У(р) в с(р), можно выполнить итерации по растровым позициям 1 и определять, какие (р) находятся под влиянием значения растра 1. Смешав ^мерные сферы для каждого растра i в результате мы получим дискретныйин-терполянт Сибсона. Нахождение ближайшего соседа происходит без прямого построения диаграммы Воронго, а при помощи построения к^дерева.
Подход с «разбросом значений» намного быстрее и проще в реализации по сравнению с традиционными подходами, поскольку не требует перестроения диаграммы Вороного для каждого растра (вокселя) регулярной решетки.Основным недостатком данных методов является высокое время вычислений для больших наборов исходных данных, что обуславливается необходимостью построение бинарных деревьев для поиска ближайшего соседа. Дляпостроениек^дерева для п точек на предварительном этапе требуется 0(п*^п) времени. Запрос ближайшего соседа для каждого растра i потребует еще О(^п) времени. При довольно больших наборах исходных данных, время поиска ближайшего соседа каждого растра (вокселя) будет слишком велико.
В работе[4] предлагается подход для вычисления дискретной интерполяции Сибсона без предварительного построения к^дерева. Данный метод основан на подходе с «разбросом» значения, однако не требует предварительного поиска расстояния и значения ближайшего соседа.
Основная идея предлагаемого метода заключается в исключении этапа построения дерева поиска, а также навигации в нем для поиска ближайшего соседа. Вместо этого предлагается объединить задачи поиска значения ближайшего соседа для растра (вокселя) и разброса значения данного растра (вокселя). Однако пока не найден ближайший сосед для растра (вокселя) регулярной решетки, то не известно значение и радиус разброса. Данную проблему можно решить разбросом указателя на ячейку данного растра с последовательным увеличением радиуса разброса пока не встретиться ближайший сосед данного растра (вокселя). В данном подходе нам не нужно знать ни значение ближайшего соседа, ни расстояния до него.
Разброс указателя на значение для каждого растра осуществляется по поверхности п-мерной сферы с последовательным увеличением радиуса разброса, и на каждой итерации необходимо вычисление позиции разбрасываемого значения на п-мерной сфере. Тогда для каждого растра (вокселя) регулярной решетки будет вычислено ^2 позиций для двумерного случая и 4Л^2 для трехмерного, где R - конечный радиус для каждого растра (вокселя).
Поскольку для каждого узла регулярной решетки разброс значений осуществляется одинаковы образом, то вычисление позиций для разброса можно вычислить на начальном этапе и представить в виде последовательности смещений от узла регулярной решетки. При этом можно сократить количество вычислений для поиска позиций разброса в №М раз для двумерного случая и №М*Ь для трехмерного, где ^М^ -размеры регулярной решетки.
Однако данный метод показывает невысокую производительность при небольших наборах исходных данных, поскольку при небольших наборах исходных данных и высоком разрешении регулярной решетки среднее расстояние между исходными точками будет достаточно велико, тогда радиус «разброса» п-мерной сферы также будет велик.
1800
1600
1400
1200
ж 1000 8
800
600
400
200
1000 2000 5000 1000С 15000 20000 25СОО 30000 1С00 2000 5000 10000 15000 20000 250С0 30000
а)С построением кс!-дерева б] Без построения кс1-дерева
Рис. 1. Время вычисления дискретной интерполяции Сибсона для регулярной решетки 256x256 пикселей на основе метода: а) с использованием к^дерева, б) без построения к^дерева
В данной работе предлагается комбинированный метод для построения дискретной интерполяции естественных соседей. Основная идея данного метода заключается в объединении описанных выше подходов исходя из количества исходных данных и размера регулярной решетки. Поскольку при использовании метода с построением kd-дерева время вычислений возрастает с увеличением количества исходных данных (рис. 1 а), а при использовании метода без построения kd-дерева уменьшается с увеличением количества исходных данных (рис. 1 б), то можно определить критерий выбора метода вычислений.
В первом случае каждая точка в исходном множестве данных занимаетO*(2logn + nR2) вычислительного времени, где n - количество исходных данных, R - среднее расстояние между узлами регулярной решетки и их ближайшим соседом из набора исходных данных. Во втором случае каждая новая точка данных увеличивает плотность распределения исходных данных, при этом уменьшается среднее расстояние между точками и занимает 2O*(nR2) вычислительного времени. Тогда условие для выбора метода будет выглядеть следующим образом:
2D (log АТ) □ CR2, (3)
где N - количество исходных точек данных, а R - среднее расстояние между узлами регулярной решетки и их ближайшим соседом из набора исходных данных.
При выполнении условия (3) для построения дискретной интерполяции Сибсона следует использовать метод с использованием kd-дерева, в противном случае метод на основе прямого «разброса», тогда время вычислений будет оптимальным (рис. 2).
1000 800
х 600
8
г
400 200 О
1000 2000 5000 10000 15000 20000 25000 30000
Рис. 2. Время вычисления дискретной интерполяции Сибсона для регулярной решетки 256x256 на основе комбинированного подхода
.400
Предложенный подход, в отличие от стандартных методов построения дискретной интерполяции естественных соседей, достаточно прост в реализации и сочетает в себе все положительный свойства приведенных выше методов, что обеспечивает оптимальное время вычислений. При этом данный метод достаточно хорошо подходит для распараллеливания вычислений на системах с общей памятью, так как для каждого узла регулярной решетки можно искать значение интерполянта независимо от других, поэтому скорость вычислений будет в большей степени зависеть от количе- ства одновременно выполняющихся процессов.
Литература
1. Васильев, П.В. Использование графического ускорения интерполяции Сибсона для моделирования геотекстур [Текст] / П.В. Васильев, Майдаков М.А. // I-я международная научнотехническая конференция «Компьютерные науки и технологии». Издательство Белгородского государственного университета. -2009. -C.67-69.
2. Sibson, R. A brief description of natural neighbor interpolation in Multivariate Data / R. Sib-son // Jhon Wiley & Sons, 1981. - P. 21-36.
3. Sung W. Park. Discrete Sibson Interpolation./ Sung W. Park, Lars Linsen, Oliver Kreylos, John D. Owens, Bernd Hamann.//IEEE TransactionsOnVisualizationAndComputerGraphics, Vol. 12, No. 2, 2006.
4. Майдаков М.А. Использование графических процессоров для параллельного вычисления дискретной интерполяции Сибсона без промежуточного построения диаграммы Вороного.// Научно-технический журнал «Информационные системы и технологии». Полиграфическая база ОрелГТУ, 2010 № 4 (60) июль-август 2010 c.27-33.
COMBINED APPROACH TO THE CALCULATION OF DISCRETE SIBSON INTERPOLATION
M. A. AIDAKOV
BelgorodNational
Research University
e-mail:
This paper describes a combined approach to discrete natural neigh- bors interpolation interpolation based on the "scatter" approach. The main idea of the approach is to add a criterion for selecting the optimal method of computation based on the number of initial data points and the size of a regular greed. This approach to discrete interpolation of natu- ral neighbors is simple to implement and provides an optim- al computation time.
Key words: discrete natural neighbors interpolation, Sibson interpo- lation, "scatter" approach.