Daftar Isi:

Rekonstruksi 3D Dari Satu Foto: 8 Langkah
Rekonstruksi 3D Dari Satu Foto: 8 Langkah

Video: Rekonstruksi 3D Dari Satu Foto: 8 Langkah

Video: Rekonstruksi 3D Dari Satu Foto: 8 Langkah
Video: MERINDING😱 A.I INI MERAMALKAN EVOLUSI MANUSIA DI MASA DEPAN #shorts #fyp #evolusi #funfacts 2024, November
Anonim
Rekonstruksi 3D Dari Satu Foto
Rekonstruksi 3D Dari Satu Foto
Rekonstruksi 3D Dari Satu Foto
Rekonstruksi 3D Dari Satu Foto

Tugas rekonstruksi 3D biasanya dikaitkan dengan penglihatan binokular. Atau, Anda dapat memindahkan satu kamera di sekitar objek. Sedangkan jika bentuk objek diketahui, tugas dapat diselesaikan dari satu foto. Artinya Anda hanya memiliki satu kamera dan tidak bergerak. Mari kita lihat bagaimana melakukannya langkah demi langkah. Kami akan menggunakan Rubik's Cube karena terstandarisasi dengan baik dan memiliki serangkaian fitur yang kaya. Ini dapat dianggap sebagai objek yang sangat sederhana dan sekaligus konstruksi yang rumit. Jadi visi mesin harus melampaui rintangan substansial untuk menyelesaikan tugas.

Langkah 1: Evaluasi Kompleksitas Tugas

Evaluasi Kompleksitas Tugas
Evaluasi Kompleksitas Tugas
Evaluasi Kompleksitas Tugas
Evaluasi Kompleksitas Tugas
Evaluasi Kompleksitas Tugas
Evaluasi Kompleksitas Tugas
Evaluasi Kompleksitas Tugas
Evaluasi Kompleksitas Tugas

Sekilas, tugasnya sederhana. Temukan simpul pusat di mana 3 tepi kubus bersatu dan gambar tepi ini. Dari koordinatnya, dimungkinkan untuk menghitung jarak dari kamera dan sudut rotasi. Masalahnya adalah garis-garis ini tidak ada. Dari gambar kiri Anda melihat bahwa setiap tepi diwakili oleh 2 garis paralel. Selanjutnya, gambar kanan atas menunjukkan bahwa masing-masing dibagi menjadi 3 segmen. Selain itu, jika kita menerapkan varian dari transformasi Hough populer yang dapat mendeteksi segmen garis, ia melakukan tugas dengan beberapa kesalahan yang membuat deteksi simpul pusat menjadi tidak mungkin. Jika ujungnya tidak mencapai satu sama lain, tidak ada satu titik pun. Jika deteksi melampaui ujung, itu akan terlihat seperti simpul di tengah tepi seperti yang Anda lihat pada 2 gambar yang tersisa.

Langkah 2: Temukan Pendekatan yang Tepat

Temukan Pendekatan yang Tepat
Temukan Pendekatan yang Tepat

Ketika terlalu banyak detail membuat algoritme deterministik tidak dapat dijalankan, inilah saatnya untuk mempertimbangkan pendekatan probabilistik. Jika kita menghitung rata-rata parameter gambar, kesalahannya akan berkurang secara substansial dan secara paradoks metode ini akan menjadi lebih andal. Transformasi Hough standar tidak menghasilkan segmen garis. Hanya kemiringannya theta dan jarak rho dari koordinat asal. Mereka membentuk bagian ruang Hough yang ditunjukkan di atas. Di sini theta sesuai dengan sumbu horizontal. Bintik terang menandai kemungkinan garis pada gambar. Perhatikan bahwa beberapa tempat seperti itu terletak satu di atas yang lain. Tidak heran, pada gambar kita ada banyak garis sejajar. Mereka memiliki theta yang sama dan rho yang berbeda.

Langkah 3: Hitung Histogram Theta

Hitung Histogram Theta
Hitung Histogram Theta

Mari kita mendeteksi cluster tersebut. Untuk tujuan ini kami akan merangkum bacaan untuk semua titik di ruang Hough dengan theta yang sama. Anda melihat histogram yang sesuai pada ilustrasi. Beberapa catatan tentang pengukuran. Saat Anda bekerja dengan gambar dalam koordinat piksel, sumbu X berjalan seperti biasa, tetapi Y menunjuk ke bawah sehingga titik asal koordinat adalah sudut kiri atas dan theta harus diukur dari sumbu X searah jarum jam. Ingatlah bahwa seluruh sapuan theta pada gambar adalah 180 derajat, Anda dapat memeriksa kira-kira bahwa 3 puncak utama mewakili 3 kemiringan utama pada gambar.

Langkah 4: Hitung Rho Histogram

Hitung Rho Histogram
Hitung Rho Histogram

Sekarang setelah kita mengetahui 3 kelompok utama garis paralel, mari kita pisahkan garis di dalam masing-masing kelompok tersebut. Kita bisa mengulangi pendekatan yang sama. Mari kita ambil kolom dari ruang Hough yang sesuai dengan satu puncak pada histogram theta. Selanjutnya, kita akan menghitung histogram lain di mana sumbu X mewakili nilai rho dan pembacaan ringkasan Y untuk rho ini. Jelas, jumlahnya akan lebih sedikit sehingga grafik ini tidak begitu mulus. Namun demikian, puncak terlihat jelas dan jumlah mereka (7) persis sama dengan jumlah garis paralel pada gambar sumber. Sayangnya, tidak semua grafik begitu sempurna, tetapi prinsipnya jelas.

Langkah 5: Temukan Simpul Tengah

Temukan Simpul Tengah
Temukan Simpul Tengah

Jika kita mengambil puncak pusat pada rho histogram untuk setiap theta, kita akan mendapatkan 3 garis yang berwarna merah pada gambar. Persimpangan mereka menandai titik yang diperlukan.

Langkah 6: Pilih Dari 2 Alternatif

Pilih Dari 2 Altern-t.webp
Pilih Dari 2 Altern-t.webp
Pilih Dari 2 Altern-t.webp
Pilih Dari 2 Altern-t.webp

Anda melihat bahwa setiap garis bergerak dari titik pusat di kedua arah. Bagaimana cara menentukan setengah yang benar? Mari kita ambil theta3. Misalkan kita mengambil bagian bawah dari garis ini. Mari kita hitung lagi ruang Hough hanya untuk bagian gambar dari 2 garis hijau ke sudut kanan atas gambar. Kemudian buat theta histogram untuk itu. Anda melihat bahwa puncak ketiga benar-benar menghilang sehingga kami telah membuat pilihan yang tepat.

Langkah 7: Tentukan Sudut Eksternal

Tentukan Sudut Luar
Tentukan Sudut Luar

Sekarang kita dapat menggunakan puncak pertama dan terakhir pada rho histogram untuk menggambar garis biru yang memotong tepi merah dan menandai sudut lainnya. Tugas diselesaikan.

Langkah 8: Cobalah dalam Praktek

Ilustrasi untuk Instructable ini dibuat menggunakan Perception 1.0. Ini adalah perangkat lunak gratis yang menggunakan OpenCV - perpustakaan yang kuat untuk visi komputer. Juga dapat ditautkan ke WinNB yang digunakan di Instructable saya yang lain sehingga memberikan kemampuan penglihatan untuk robotika. Anda dapat mengunduh kedua program dari nbsite. Untuk instalasi, jalankan saja file exe yang diunduh. Kemudian, Anda dapat menghapusnya menggunakan alat standar Windows. Situs ini juga berisi sumber daya tentang visi komputer dan topik terkait. Dalam Persepsi Anda akan menemukan metode rekonstruksi 3D yang dijelaskan serta banyak lainnya. Keuntungan dari program ini adalah bahwa ia mengeluarkan hasil akhir bersama dengan data perantara. Anda dapat meneliti bagaimana visi komputer bekerja tanpa menjadi seorang programmer. Untuk input, setiap metode memiliki sampel tipikal yang dipilih secara khusus. Tentu saja, Anda juga dapat menggunakan milik Anda sendiri. Dimungkinkan untuk memasukkan gambar dari file atau dari kamera komputer. Jangan ragu untuk menghubungi saya dengan pertanyaan atau saran.

Direkomendasikan: