Монтаж непрямих поверхонь до наборів орієнтованих точок


13

У мене виникає запитання щодо квадричної підгонки до набору точок та відповідних норм (або в еквіваленті дотичних). Встановлення квадричних поверхонь для точкових даних добре вивчено. Деякі роботи такі:

Пристосування до проективних контурів також висвітлено в деяких роботах, наприклад, у цьому .

З усіх цих робіт я вважаю, що метод Таубіна для квадричної підгонки досить популярний:

Дозвольте коротко підсумувати. Квадрик Q можна записати в алгебраїчній формі:

f(c,x)=Ax2+By2+Cz2+2Dxy+2Exz+2Fyz+2Gx+2Hy+2Iz+J
де c - вектор коефіцієнта іx - тривимірні координати. Будь-яка точкаx лежить на квадриціQ якщоxTQx=0 , де:
Q=[ADEGDBFHEFCIGHIJ]

Алгебраїчна придатність В принципі ми хотіли б вирішити для параметрів, що мінімізують суму геометричних відстаней у квадраті між точками та квадратичною поверхнею. На жаль, виявляється, що це проблема неопуклої оптимізації без відомих аналітичних рішень. Натомість стандартним підходом є рішення алгебраїчного прилягання, тобто рішення для параметрів c що мінімізують:

i=1nf(c,xi)2=cTMc
при
M=i=1nl(xi)l(xi)T
де{xi}- точки в точковому хмарі і
l=[x2,y2,z2,xy,xz,yz,x,y,z,1]T

Зауважте, що така пряма мінімізація дала б тривіальний розчин з початком c . Це питання широко вивчено в літературі. Однією з резолюцій, за якою було виявлено, що вона добре працює на практиці, є метод Таубіна (цитований вище), що вводить обмеження:

xf(c,xi)2=1

Це можна вирішити так: Нехай: де підписники позначають похідні. Рішення задається узагальненим розладом Ейгена, . Вектор найбільш відповідного параметра дорівнює власного вектора, що відповідає найменшому власного значення.

N=i=1nlx(xi)lx(xi)T+ly(xi)ly(xi)T+lz(xi)lz(xi)T
(MλN)c=0

Основне питання У багатьох програмах наявні (або обчислюються) норми хмарної точки. Нормалі квадрата можна також обчислити, диференціюючи та нормалізуючи неявну поверхню:N(x)

N(x)=f(c,x)f(c,x)
f(c,x)=2[ A x + D y + F z + G B y + D x + E z + H C z + E y + F x + I ] де
f(c,x)=2[Ax+Dy+Fz+GBy+Dx+Ez+HCz+Ey+Fx+I]

Однак метод Таубіна використовує лише геометрію точок, а не дотичний простір. І я не знаю багатьох методів, які підходять для пристосування квадриків, так що дотичні квадрика також відповідають дотичній нижній точці хмари. Я шукаю можливі розширення способу, описаного вище, або будь-якого іншого для покриття цих похідних першого порядку.

Чого я хотів би досягти, можливо, це стосується частково в просторах нижчих розмірів, з більш примітивними поверхневими (кривими) типами. Наприклад, розміщення ліній для ребер зображення, враховуючи інформацію про градієнт, охоплюється тут . Площини підгонки (простий тип квадрика) до 3D-хмари є дуже поширеною ( посилання 1 ), або облягаючі сфери або циліндри можуть бути пристосовані до орієнтованих точкових наборів ( посилання 2 ). Тож те, що мені цікаво, щось подібне, але притаманний примітив - це квадрик.

Я також вітаю аналіз запропонованого методу, такий як:

  • Яка мінімальна кількість орієнтованих балів потрібна?
  • Які випадки виродження?
  • Чи можна щось сказати про стійкість?

Оновлення : Я хотів би представити напрямок, який слід виконувати. Формально я хочу досягти:

fn=0
у точці . Може бути можливим сплавити його методом Таубіна, щоб створити додаткове обмеження та мінімізувати використання множників Лагранжа?x


Чи не багато елементів Q неправильно розміщені в Q?
Помітно

Ви маєте рацію, і я зараз це виправив.
Толга Бердал

Відповіді:


5

Я був здивований тим, що не отримав задовільної відповіді на вищезазначене запитання, і мої дослідження показали мені, що це дійсно невивчена область. Отже, я доклав певних зусиль у розробці рішень цієї проблеми і опублікував такі рукописи:

Т. Бірдал, Б. Бусам, Н. Наваб, С. Іліч та П. Штурм. "Мінімалістичний підхід до типово-агностичного виявлення квадриків у точкових хмарах." Матеріали конференції IEEE з питань комп'ютерного зору та розпізнавання образів. 2018. http://openaccess.thecvf.com/content_cvpr_2018/html/Birdal_A_Minimalist_Approach_CVPR_2018_paper.html

T. Birdal, B. Busam, N. Navab, S. Ilic та P. Sturm, "Загальне примітивне виявлення в точкових хмарах з використанням нове мінімальних квадричних пристосувань" в транзакціях IEEE з аналізу візерунка та машинного інтелекту. https://arxiv.org/abs/1901.01255

Я коротко торкнуся основної ідеї тут:

Цей підхід схожий на градієнт-один примірник ( ). Вирівнюємо вектор градієнта квадратика з нормаллю хмарної точки . Однак, на відміну від підходить, ми вирішили використовувати лінійне обмеження для збільшення ранжу, а не регуляризації рішення. Це, здавалося б, нетривіально, оскільки вирівнювання вектор-вектор приносить нелінійне обмеження будь-якої з форм: 1Q(xi)niR31

Q(xi)Q(xi)ni=0orQ(xi)Q(xi)ni=1.
Нелінійність обумовлена ​​нормалізацією, оскільки важко знати заздалегідь величину і, отже, однорідну шкалу. Ми вирішуємо це питання, вводячи серед невідомих нормальну однорідну шкалу і записуючи: where складання цього параметра для всіх точок та нормалів призводить до системи форми : αi
Q(xi)=viTq=αini
v=[x2y2z22xy2xz2yz2x2y2z1]T
NxiniAq=0
[v1T000v2T000vnT000v1Tn10303v2T03n203vnT0303nn][ABIJα1α2αn]=0
- \ mathbf {n} _n \ end {bmatrix} \ begin {bmatrix} A \\ B \\ \ vdots \\ I \\ J \\ \ alpha_1 \\ \ alpha_2 \\ \ vdots \\ \ alpha_n \ end { bmatrix} = \ mathbf {0} \ end {рівняння} де , - aviT=v(xi)TR3×10033×1 стовпець вектора нулів, дорівнює а - невідомі однорідні шкали.A4N×(N+10)α={αi}

Хоча рішення цієї рецептури, що лежить у просторі нулів дає прийнятні результати, система є досить нестримною у тому, що могла зробити (масштабні фактори занадто вільні). Краще знайти відповідний регуляризатор, який також не надто складний у виконанні. На практиці, повторившись аналогічно встановленню градієнта-один, ми могли б віддати перевагу поліноміальним градієнтам одиничної норми, і, таким чином, можна записати або еквівалентно , один загальний масштабний коефіцієнт. Це м'яке обмеженняAαi=1αiα¯спробує змусити нульовий набір полінома відносно локальної безперервності даних. Така регуляризація також рятує нас від вирішення чутливої ​​однорідної системи і дозволяє переписати систему у більш компактній формі :Aq=n

[x12y12z122x1y12x1z12y1z12x12y12z11x22y22z222x2y22x2z22y2z22x22y22z212x1002y12z10200002y102x102z10200002z102x12y100202x2002y22z20200002y202x202z20200002z202x22y20020][ABCDEFGHIJ]=[00nx1ny1nz1nx2ny2nz2]

Загалом, розв’язування цієї системи рівнянь буде одночасно направляти квадрик, який буде інцидентом, до точки хмари, вирівнюючи його градієнти до нормалей. Також можна по-різному зважувати внески балів і норм. У певних випадках для отримання типового пристосування достатньо незначного оновлення адаптованого до потрібного примітиву. З усіма цими деталями, а також деяким теоретичним аналізом та псевдокодом я посилаюсь на вищезгадані публікації.A


Це чудово! Як можна змінити А, щоб по-різному зважувати відносні внески балів і норм?
Помітний

Просто помножте перші рядки, які є точковими рівняннями, на потрібну вагу. За бажанням, щоб масштабувати рядки, що відповідають нормалам, також потрібно було б масштабувати праву частину рівняння: . n
Birdal Tolga

Дякую. Чи не слід переносити символ транспонування з q і n в останньому рівнянні?
Помітний

Знову дякую. Вилучили їх.
Толга Бердал

1

Я знаю один із прикладів, коли норми були включені в процедуру підгонки. Однак це не пряма квадратична підгонка. Локально параметризований патч підходить до точок та нормалей. Використання нормалів дає більше рівнянь у задачі про підгонку, що дозволяє використовувати поліноми вищого порядку.

  1. Новий алгоритм кубічного порядку для наближення основних векторів напрямку

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.