У меня есть набор из 100 точек.
Я рассматриваю 4 ближайших соседа каждой точки.
Используя три (неколлинеарные) точки в качестве основы среди этих четырех, я получаю аффинную координатуЧетвертая точка.
Таким образом, я создаю базу данных на 100 пунктов.
Имеется 100 x 4 C 3 x 3 записи.Каждый из них имеет аффинную координату.
Теперь я сделал аффинное преобразование для всех 100 точек.
В частности,
Если точка имеет вид (x, y)
Она становится новой_x = x + 2y + 5
Становится new_y = 3x + 4y + 6
Я заметил, что самые близкие соседи всех точек изменились.На самом деле некоторые точки имели 1 или 2 соседей, как и раньше, но остальные изменились.
В результате сопоставление аффинных координат не сработало.
Обратите внимание, что я вычисляю ближайшего соседа, используя евклидово расстояние, т.е. sqrt ((x 2* +1019 * -x 1 ) 2 * + * тысячу двадцать-три (у 2 -y 1 ) * 2 * тысяча двадцать-восемь ).
Когда я думаю об аффинной трансформации - я чувствую, что ротация, масштабирование и перевод не изменят соседей, но сдвиг может быть возможен.
Мое преобразование не аффинно?
Можете ли вы предложить лучший способ получить соседей?
Спасибо.