Menemukan Garis Tengah dari serangkaian Poin 3D


21

Saya memiliki satu set poin 3D. Mereka mengikuti pola melengkung dengan diameter yang agak konstan seperti yang ditunjukkan di bawah ini. Apa yang akan menjadi algoritma untuk melacak garis tengah perkiraan titik-titik ini?

Poin 3d


Gelar 3 polinomial, Excel?
FelixIP

Apa jenis alat yang Anda gunakan atau yang Anda miliki? Matlab? Unggul? R? Python?
Scott Newson

@ScottNewson - jelas bukan Matlab. Saya terbuka untuk bahasa pemrograman apa pun.
vinayan

Pertanyaan / jawaban ini dapat membantu Anda, /programming/29208554/calculate-centerline-in-3d-structure
Matt

Jawaban:


7

Ada sebuah makalah yang disebut "Rekonstruksi Melengkung dari Poin Tidak Terorganisir" oleh In-Kwon Lee yang melihat ke dalam membangun garis / kurva dari satu set poin tanpa memesan dengan mengeksploitasi metode kuadrat-bergerak . Meskipun fokus pada aplikasi 2D, ia menyebutkan kemungkinan memperluas ini ke dimensi yang lebih tinggi. Gambar berikut diambil dari kertas:

Gambar diambil dari kertas yang disebutkan

Dalam ' Bab 4 - Ekstensi 3D ', dijelaskan bagaimana metode ini tidak dapat diterapkan secara langsung ke 3 dimensi tetapi dimungkinkan untuk menghitung kurva regresi kuadratik 3D dengan:

  • Pengelompokan poin tetangga menggunakan metode kuadrat-terkecil yang bergerak
  • Komputasi bidang regresi K : z = A x + B y + C dengan meminimalkan kuadratik
  • Memproyeksikan titik-titik tetangga ke pesawat K dan memecahkan masalah 2D-kuadrat bergerak terkecil.

Semoga ini membantu! (Makalah yang cukup menarik!)


1
@whuber - Terima kasih telah memeriksa. Saya mengedit posting saya karena kebetulan menemukan sebuah makalah yang mungkin menjelaskan metode yang mungkin.
Joseph

2
Temuan yang bagus! EMST adalah pilihan yang baik untuk dijadikan dasar solusi. (+1) Prosedur dalam makalah itu dapat ditingkatkan melalui metode penghalusan yang kuat seperti Loess atau berbagai bentuk pas spline yang dihukum.
whuber

3

Pertanyaan ini sudah dijawab. Ini pertanyaan yang sama:

kurva-pas-3d-data-set

Jika Anda mencari alat dan kode yang siap digunakan, ada banyak metode numerik untuk menyelesaikan masalah ini, seperti pendekatan serakah yang diterapkan dalam paket R, dapat diunduh dari GAM .

Jika Anda mencari algoritma murni untuk mengimplementasikannya sendiri, saya sarankan Anda untuk bertanya di komunitas matematika ( http://math.stackexchange.com )

Selanjutnya halaman wiki ini terkait dengan pertanyaan Anda ( http://en.wikipedia.org/wiki/Curve_fitting )


-1

dapatkah Anda memberikan contoh?
Nickves

Apa artinya URL ada di jawabannya.
Tn. Che

2
Saya benci untuk merendahkan jawaban, karena saya selalu menghargai upaya dan niat baik yang mereka cerminkan, tetapi saya merasa jengkel untuk menemukan - setelah melihat ketiga referensi - bahwa tidak satu pun dari mereka yang benar-benar menjawab pertanyaan. Mereka menari di sekitar variasi sederhana itu, seperti memasang garis lurus atau ellipsoid ke titik.
whuber

2
Saya sudah menghabiskan satu hari di tautan pertama berharap itu mungkin berguna :)
vinayan
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.