2012-05-24 26 views
6

OpenCV, stereo kameralardan 3D rekonstrüksiyon için çok fazla destek içerir. Benim durumumda iki kameram var ve bir noktanın 3D koordinatlarını bilmek istiyorum.İki 2B noktadan 3B bir nokta mı?

i ne var: 3D

bu noktayı Koordinatlar:

  1. piksel Ne almak istiyorum
  2. Bilinen içsel ve dışsal kamera

parametrelerinin hem görüntülerde noktanın koordinatları

cevap

1

Opencv'in bunun için bir yapısı olup olmadığını bilmiyorum. Bununla birlikte, referans noktalarınız olarak nokta-> kamera-> diğer kameranın iç açılarını kullanarak kameralara yatay olarak paralel doğrusal mesafeyi oluşturmak için Açı-Açı Açısı için sinüs yasasını kullanabileceğinizi biliyorum.

Ardından mesafeyi bir kez alınca, dikey yapıyı aynı yapıyı kullanarak hesaplayabilirsiniz: burada açı ölü merkezden sayılan noktaya ne kadar yukarıda ya da aşağıda, kameranın her ikisine birden atıfta bulunur. Nesne, ilk adımda bulundu ve bu hayali nokta (kameranın yatay nesnesi üzerinde) ve nesne arasındaki açınızı 90 derece kullanabilirsiniz.

3

Bu soruyu diğer post numaralı telefondan cevapladım.

Dışsal parametrelere sahipseniz, kameranın pozu var demektir. Fotoğraf makinesi pozu ve 2B noktası ile, 3B noktaları proyect edebilirsiniz (2B noktalarınız ve extrinsikleriniz doğruysa, her kamera aynı sonuca sahip olmalıdır). Sadece pozu homografiye çevirmeniz gerekiyor. Bağlantımdaki yazıyı açıklarım.

İyi şanslar!

+0

Cevabınız, anladığımdan farklı bir durumla ilgilidir. – Mehdi

1

iki görünümden nirengi noktalarında herhangi bir deneyime sahip zaman Hartley and Zisserman's book kitabı olmalıdır. Bu kitapta, 2D nokta yazışmalarına, kamera pozuna ve kamera kalibrasyonuna sahip olmak çok kolay bir doğrusal üçgenleme yöntemi tarif edilmiştir.

Bu yöntemin örnek kodu here verilir. Yukarıda belirtilen kitaba dayanmaktadır.

Bununla birlikte, karşılanması gereken çok önemli şartlar vardır. İlk olarak, ölçülen nokta yazışmalarının epipolar kısıtlama x*E*x' = 0'a göre doğru olması gerekir. İkincisi, ışınlar arasındaki açı birkaç dereceden daha büyük olmalıdır, örneğin, 2 derece.

İlgili konular