Saya punya pertanyaan tentang quadric fit untuk satu set poin dan normals yang sesuai (atau setara, tangen). Pemasangan permukaan kuadrat ke titik data dieksplorasi dengan baik. Beberapa karya adalah sebagai berikut:
Pemasangan Langsung Berbatas Type-Quadric , James Andrews, Carlo H. Sequin Desain & Aplikasi Berbantuan Komputer, 10 (a), 2013, bbb-ccc
Pemasangan aljabar permukaan kuadrat ke data , I. Al-Subaihi dan GA Watson , University of Dundee
Menyesuaikan dengan kontur proyektif juga dicakup oleh beberapa karya, seperti yang ini .
Dari semua karya ini, saya pikir metode Taubin untuk pemasangan Quadric cukup populer:
- G. Taubin, "Estimasi Kurva Planar, Permukaan dan Kurva Luar Angkasa Nonplanar Didefinisikan oleh Persamaan Tersirat, dengan Aplikasi untuk Segmentasi Tepi dan Rentang Gambar ", IEEE Trans. PAMI, Vol. 13, 1991, pp1115-1138.
Biarkan saya meringkas secara singkat. Kuadrat dapat ditulis dalam bentuk aljabar:
Aljabar Fit Pada prinsipnya, kami ingin menyelesaikan parameter yang meminimalkan jumlah jarak geometrik kuadrat antara titik dan permukaan kuadratik. Sayangnya, ternyata ini adalah masalah optimisasi non-cembung tanpa solusi analitis yang diketahui. Sebaliknya, pendekatan standar adalah untuk menyelesaikan kecocokan aljabar, yaitu untuk memecahkan parameter yang meminimalkan:
Perhatikan bahwa minimalisasi langsung seperti itu akan menghasilkan solusi sepele dengan pada titik asal. Pertanyaan ini telah dipelajari secara luas dalam literatur. Salah satu resolusi yang telah terbukti bekerja dengan baik dalam praktik adalah metode Taubin (dikutip di atas), memperkenalkan batasan:
Ini dapat dipecahkan sebagai berikut: Misalkan:
mana subskrip menunjukkan turunan. Solusi diberikan oleh dekomposisi Eigen umum, . Vektor parameter yang paling cocok sama dengan vektor Eigen yang sesuai dengan nilai Eigen terkecil.
Pertanyaan Utama Dalam banyak aplikasi, normals dari point cloud tersedia (atau dihitung). Normal dari quadric juga dapat dihitung dengan membedakan dan menormalkan permukaan implisit:
Namun, metode Taubin hanya menggunakan titik geometri, dan bukan ruang singgung. Dan saya tidak mengetahui banyak metode, yang cocok untuk pas kuadrat sedemikian rupa sehingga garis singgung kuadrat juga cocok dengan garis singgung awan titik yang mendasarinya. Saya mencari ekstensi potensial dari metode di atas, atau yang lain untuk mencakup turunan orde pertama ini.
Apa yang ingin saya capai mungkin ditangani sebagian dalam ruang dimensi yang lebih rendah, dengan tipe permukaan (kurva) yang lebih primitif. Misalnya, menyesuaikan garis ke tepi gambar, dengan mempertimbangkan informasi gradien dibahas di sini . Pas pesawat (jenis sederhana kuadrat) ke awan 3D sangat umum ( tautan 1 ) atau pas bola atau silinder dapat disesuaikan dengan set titik berorientasi ( tautan 2 ). Jadi yang saya ingin tahu adalah sesuatu yang serupa, tetapi primitif yang dipasang adalah kuadrat.
Saya juga akan menyambut baik analisis metode yang diusulkan seperti:
- Berapa jumlah minimum titik orientasi yang diperlukan?
- Apa saja kasus yang merosot?
- Adakah yang bisa dikatakan tentang ketahanan?
Pembaruan : Saya ingin menyajikan arahan untuk diikuti. Secara formal, apa yang ingin saya capai:
sumber
Jawaban:
Saya terkejut karena tidak menerima jawaban yang memuaskan untuk pertanyaan di atas dan penyelidikan saya menunjukkan kepada saya bahwa ini memang area yang belum dijelajahi. Oleh karena itu, saya berupaya mengembangkan solusi untuk masalah ini, dan menerbitkan manuskrip berikut:
Secara singkat saya akan menyentuh ide utama di sini:
Pendekatan ini mirip dengan pas gradien-satu ( ). Kami menyelaraskan vektor gradien kuadrat dengan normal dari titik cloud . Namun, tidak seperti cocok, kami memilih untuk menggunakan batasan linier untuk meningkatkan peringkat daripada mengatur solusi. Ini tampaknya non-sepele karena penyelarasan vektor-vektor membawa kendala non-linear salah satu dari bentuk:∇1 ∇Q(xi) ni∈R3 ∇1 ∇Q(xi)∥∇Q(xi)∥−ni=0or∇Q(xi)∥∇Q(xi)∥⋅ni=1.
Non-linearitas disebabkan oleh normalisasi karena sulit untuk mengetahui besarnya dan dengan demikian skala homogen di muka. Kami memecahkan masalah ini dengan memperkenalkan skala homogen normal antara yang tidak diketahui dan menulis:
mana
Menyusun ini untuk semua poin dan normals mengarah ke sistem formulir :
αi ∇Q(xi)=∇vTiq=αini v=[x2y2z22xy2xz2yz2x2y2z1]T N xi ni A′q=0 ⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢vT1vT2⋮vTn∇vT1∇vT2⋮∇vTn00⋮0−n103⋮0300⋮003−n2⋮03⋯⋯⋱⋯⋯⋯⋱⋯00⋮00303⋮−nn⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢AB⋮IJα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 {persamaan} di
mana , adalah a∇vTi=∇v(xi)T∈R3×10 03 3×1 vektor vektor nol, adalah dan adalah skala homogen yang tidak diketahui.A′ 4N×(N+10) α={αi}
Sementara solusi dari formulasi ini terletak pada ruang nol dari menghasilkan hasil yang dapat diterima, sistem ini cukup tidak dibatasi dalam apa yang bisa dilakukannya (faktor skala terlalu bebas). Lebih baik untuk menemukan regulator yang tepat yang juga tidak terlalu rumit untuk diterapkan. Dalam praktiknya, sekali lagi analog dengan pas gradien-satu, kita bisa lebih suka gradien polinomial unit-norma, dan dengan demikian, dapat menulis atau ekivalen , satu faktor skala umum. Kendala lembut iniA′ αi=1 αi←α¯ akan mencoba untuk memaksa set nol polinomial menghormati kesinambungan data lokal. Regulatorisasi seperti itu juga menyelamatkan kita dari penyelesaian sistem homogen yang sensitif, dan memungkinkan kita menulis ulang sistem dalam bentuk yang lebih ringkas :Aq=n
Secara keseluruhan, menyelesaikan sistem persamaan ini secara simultan akan memandu kuadrat untuk menjadi insiden ke awan titik sambil menyelaraskan gradiennya terhadap normals. Dimungkinkan juga untuk menimbang kontribusi poin dan normal secara berbeda. Dalam kasus-kasus tertentu, untuk mendapatkan kecocokan jenis-spesifik, desain ulang minor disesuaikan dengan kecukupan primitif yang diinginkan. Untuk semua perincian ini serta beberapa analisis teoretis dan kode semu, saya merujuk Anda ke publikasi yang disebutkan di atas.A
sumber
Saya tahu satu contoh di mana normals telah dimasukkan dalam prosedur pemasangan. Ini bukan pas quadric langsung sekalipun. Patch yang diparameterisasi secara lokal dipasang ke titik dan normal. Menggunakan norma memberikan lebih banyak persamaan dalam masalah pemasangan, memungkinkan polinomial orde tinggi untuk digunakan.
sumber
Lihat juga makalah ini
dan ekstensi ist
sumber