2012-02-09 23 views
5

OpenCV, stereo kameralardan 3D yeniden yapılandırma için çok fazla destek içerir. Benim durumumda, altı kalibre kamera (içsel ve dışsal) var ve ortak 2D noktaları (bir test küresi) almak ve karşılık gelen 3D pozisyonu almak istiyorum. Bunu nasıl yapacağınız hakkında bir fikrin var mı?Birden çok 2D noktadan 3B nokta yeniden inşa etmek?

Ben Ne:
1) Her resim düzleminde birden fazla kamera
2) testi kürenin 2B konumuna() için Kalibrasyon parametreleri Almak istediğim ne

: 3D noktasını Sorumlu
1) test küre

+4

Yanıtlar Epipolar geometri alanındadır ve Hepsi bir arada kitapta bulunabilir: Bilgisayar Görüsümünde Çoklu Görünüm Geometrisi http://www.robots.ox.ac.uk/~vgg/hzbook/ - CV dünyasına girmeden dışarı çıkmayı düşünmüyorsunuz bile en az bir kez kitap. –

+0

İpucu Xander için teşekkürler. Bu kitabı uzun zaman önce okudum ama unuttuğumdan beri. Harika bir kaynak. – user1200565

+0

Görüntü çiftleri arasında 2B nokta yazışmaları varsa, Paket Ayarlama yöntemlerine bakın. – nbsrujan

cevap

1

Kameralar arasındaki pozisyon ilişkilerini biliyor musunuz?

Daha sonra her bir fotoğraf size yatay ve dikey açı verir - kamera matrisinden ve epipolar modelden. Bu size her kamera için uzaya düz bir çizgi verir - tüm bunların kesiştiği noktayı çözmeniz yeterlidir.

3

Kalibrasyon parametreleriniz, her kamera için her bir 2D noktası için size bir ışın verecektir. Hangi ışınların test kürenize uygun olduğunu tespit ettiyseniz, hedef noktanıza uygun bir least squares yapmak istersiniz. (Bağlantı doğrusal regresyon için en küçük kareleri kullanmakla birlikte, tüm 2D noktalarının kare hatalarının toplamını minimize eden 3B noktasını bulmak için aynı yöntemleri kullanabilirsiniz.)

İlgili konular