Stereo Goruntuleme

advertisement
Bilgisayarla Görüye Giriş
Ders 9 – Stereo Görüntüleme
Alp Ertürk
alp.erturk@kocaeli.edu.tr
Tek Kamera Geometrisi
X?
X?
X?
x
Tek Kamera Geometrisi
Tek Kamera Geometrisi
İğne Deliği Kamera Modeli
( X ,Y , Z )  ( f X / Z , f Y / Z )
X
   f X f
 
Y  
Z  fY 
   Z  
1
 
f
X
0  
Y 

0  
Z
1 0 
1
x  PX
İğne Deliği Kamera Modeli
• Principal point (P) (temel nokta): Principal axis (temel eksen) ile
görüntü düzleminin kesiştiği noktadır
• Normalize koordinat sisteminde orijin temel noktadır. Görüntü
koordinat sisteminde ise orijin köşededir.
• Aradaki dönüşüm?
İğne Deliği Kamera Modeli
principal point:
( px , p y )
( X , Y , Z )  ( f X / Z  px , f Y / Z  p y )
X
   f X  Z px   f
 
Y  
 Z    f Y  Z py   
 
  
Z
 
1
 
f
px
py
1
X
0  
Y 

0  
Z
0 
1
İğne Deliği Kamera Modeli
X
   f X  Z px   f
 
Y  
 Z    f Y  Z py   
 
  
Z
 
1
 
f
K  

f
f
px
py
1
X
0  
Y 

0  
Z
0 
1
px 
p y  Kalibrasyon matrisi
1 
Piksel Koordinatları
1
1

Piksel boyutu:
mx m y
• Yatay yönde metre başına piksel sayısı: mx ,
dikey yönde metre başına piksel sayısı: my
mx
K  

my
 f


1 
Piksel / metre
f
p x   x
p y   
y
1  
metre
x 
 y 
1 
Pikseller
Kamera dönmesi ve ötelemesi

~
~ ~
X cam  R X - C

Kamera çerçevesinde
nokta koordinatları
Bir noktanın dünya
çerçevesinde koordinatları
Kamera merkezinin dünya
çerçevesinde koordinatları
Kamera dönmesi ve ötelemesi
~ ~
~
R  RC X  R  RC
X cam  
   
X
1  1   0
1 
0
~
P  KR | t ,
x  KI | 0X cam  K R | RC X


~
t   RC
Not: C kamera izdüşüm matrisinin boş uzayıdır (null space) (PC=0)
Kamera kalibrasyonu
• 3B koordinatları Xi koordinatları and görüntü izdüşümleri xi
bilinen n adet noktadan kamera parametrelerinin kestirilmesi
Xi
xi
P?
Kamera kalibrasyonu
• 3B koordinatları Xi koordinatları and görüntü izdüşümleri xi
bilinen n adet noktadan kamera parametrelerinin kestirilmesi
 x i  PX i
x i  PX i  0
 0

T
X
i

 yi XTi

 XTi
0
T
xi X i
T
 xi  P1 X i 
 y   PT X   0
 i  2 i
 1  P3T X i 
yi XTi  P1 
 
T
 xi X i  P2   0
0  P3 
Kamera kalibrasyonu
 0T
 T
X1

 T
0
X T
 n
T
1
T
X
0

XTn
0T
 y1X 

 x1X  P1 
 
  P2   0
T 
 yn X n  P3 
 xn XTn 
T
1
T
1
Ap  0
• P, 11 derece serbestliğe sahiptir
• Bir 2B/3B bağlantısı bize 2 doğrusal olarak bağımsız denklem
verir
• Minimal çözüm için 6 ilişkili nokta gereklidir
Kamera kalibrasyonu
• P, 11 derece serbestliğe sahiptir
• Bir 2B/3B bağlantısı bize 2 doğrusal olarak bağımsız denklem
verir
• Minimal çözüm için 6 ilişkili nokta gereklidir
• Kamera matrisinin numerik formu tespit edildikten sonra içkin
ve dışkın parametreleri tespit edilmelidir.
• Bu parametrelerin tespiti bir kestirim değil, matris ayrıştırması
problemidir.
Stereo Görüntüleme
Stereo Görüntüleme
• İki kameradan oluşan sistemle aynı anda elde edilebilir
• Tek kameranın hareket ettirilmesi ile sıralı olarak elde edilebilir
Stereo Görüntüleme
• Bir sahnenin iki görüntüsü kullanılarak sahnenin 3B konumlarını
hesaplamak
• Temel prensip, bağlantılı görüntü noktalarından üçgenleme
(triangulation) yapmaktır
• İki sahneden aynı (ilişkili) nokta seçilir, üçgenleme ve geri
izdüşüm ile 3B sahne konumu bulunur
Stereo Görüntüleme
C
C/
Stereo Görüntüleme
• 1) İlk görüntüdeki her nokta (veya öznitelik) için, ikinci
görüntüdeki ilgili noktayı tespit et
=> Arama problemi
• 2) Eşleşen her nokta çifti için, üçgenleme ile 3B konumu tespit
et
=> Kestirim problemi
• İlgili noktaları tespit etme problemi, epipolar geometri
sayesinde 2B aramadan 1B aramaya sadeleşir
Epipolar Geometri
• Bir görüntüdeki bir nokta için diğer görüntüdeki ilgili noktayı
bulmak
• Nokta, diğer görüntüde bir epipolar çizgi yaratır.
• Diğer görüntüdeki ilgili nokta bu çizgi üzerinde yer almaktadır
?
epipolar çizgi
C
/
C
epipol
Temel
çizgi
Epipolar Geometri
• Nokta, diğer görüntüde bir epipolar çizgi yaratır.
• Diğer görüntüdeki ilgili nokta bu çizgi üzerinde yer almaktadır
Epipolar Geometri
• Kamera merkezleri, görüntülerdeki eşleşen noktalar ve sahne
noktası aynı düzlem (epipolar düzlem) üzerindedir
X
x
C
x/
C/
Epipolar Geometri
X
Sağ epipolar
çizgi
Sol epipolar
çizgi
e
baseline
e
/
Epipolar Geometri
X
e
baseline
e
/
Epipolar Geometri: Paralel Kameralar
• Epipolar geometri kameraların duruşuna (pozisyonuna ve
yönelimine) ve iç parametrelerine (merkez konumları ve
düzlemleri) bağlıdır, sahneye bağlı değildir
Epipolar Geometri: Yakınsayan Kameralar
e
e
/
Epipolar Geometri
• Epipolar geometri bir eşleme tanımlamaktadır
• Sahneden bağımsız olan bu eşleme, doğrusaldır ve I’ = Fx
şeklinde ifade edilebilir.
• F , 3 x 3 boyutunda, fundamental matrix adı verilen bir
matristir.
Epipolar Geometri
• Epipolar geometri bir eşleme tanımlamaktadır
• Sahneden bağımsız olan bu eşleme, doğrusaldır ve I’ = Fx
şeklinde ifade edilebilir.
• F , 3 x 3 boyutunda, fundamental matrix adı verilen bir
matristir.
Epipolar Geometri
P
• Akış şeması:
– İlk görüntüdeki bir x noktası için P
kamera denklemi ile bir ışını geriye
izdüşür
/
P
– Işından iki nokta seç ve P’ kamerası
denklemi ile ikinci görüntüye izdüşür
– İki görüntü noktası arasındaki
doğruyu çapraz çarpım ile tespit et
l/ = p x q
Epipolar Geometri
• Kamera matrislerinin formu:
kalibrasyon
• Birinci kamera:
• İkinci kamera:
dönme
öteleme
Epipolar Geometri
• Adım 1: İlk görüntüdeki bir x noktası için P kamerası ile bir ışını
geriye izdüşür
P
• Z, x noktasının derinliği olmak üzere:
Epipolar Geometri
• Adım 2: Işından iki nokta seç ve P’ kamerası ile ikinci görüntüye
izdüşür,
/
P
•
üzerinde iki nokta:
• Z = 0 (kamera merkezinde) :
• Z=
(sonsuzda) :
• İkinci kamera düzlemine izdüşümleri:
Epipolar Geometri
• Adım 3: İki görüntü noktası arasındaki doğruyu tespit et
• x ve x’ ilişkili olduğundan dolayı:
Epipolar Geometri: Paralel Kameralar
X
Y
Z
f
f
• y = y’ ifadesine sadeleşir (yatay tarama çizgileri)
Epipolar Geometri: Ötelenen Kamera
f
X
Y
Z
f
Epipolar Geometri: Ötelenen Kamera
0 −1 0
𝐹= 1 0 0
0 0 0
𝒙′ 𝐹𝒙 = 𝒙′
𝒚′
−𝒙′ 𝒚 + 𝒚′ 𝒙 = 0
f
0
1 1
0
−1 0 𝒙 X
0 0 𝒚
0 0 1
Y
Z
f
Paralel Kameralar
Paralel Kameralar
Paralel Kameralar
Paralel Kameralar
epipolar
doğru
Paralel Kameralar
epipolar
doğru
• Çapraz korelasyon benzeri benzerlik veya uzaklık
yöntemleri ile en iyi eşleşen konum bulunur
Eşleme Algoritması
•
•
Sol görüntüdeki her piksel (veya öznitelik) için,
•
Sağ görüntüde epipolar doğru üzerinde komşuluk tabanlı
çapraz korelasyon hesapla
•
En yüksek korelasyon değerini doğru eş olarak ata
Parameterler
•
Komşuluk pencere boyutu
•
Arama ayrılığı (uzaklığı)
Sol görüntüden
Sağ görüntüden
1
Çapraz
korelasyon
değerleri
0.5
0
x
Sol görüntüden
Sağ görüntüden
1
0.5
0
Çapraz
korelasyon
değerleri
Eşleme Algoritması
•
Yeterince betimleyici bir alan / nokta değilse çapraz
korelasyon benzeri benzerlik veya uzaklık metriklerinin
başarımı azalır
•
Kameradan uzaklaşan zeminlerde ayrıca perspektif etki
sonucu tespit zorlaşır
Olması gerekenler derinlikler
Görüntü
Pencere tabanlı eşleme
ile bulunan derinlikler
Enerji En Küçükleme ile Stereo Eşleme
I2
I1
W1(i)
D
W2(i+D(i))
D(i)
P ( D | I1 , I 2 )  P ( I1 , I 2 | D ) P ( D )
Ayrıklık görüntüsü D için MAD:
 log P( D | I1 , I 2 )   log P( I1 , I 2 | D)  log P( D)
E   Edata ( I1 , I 2 , D)   Esmooth ( D)
Edata   W1 (i)  W2 (i  D(i))
2
i
Esmooth 
  D(i)  D( j )
neighbors i , j
Olması gerekenler derinlikler
Görüntü
Enerji fonksiyonları graph cut ile en
küçüklenince elde edilen derinlikler
Yakınsayan Kameralar
e
e
/
Yakınsayan Kameralar: Doğrultma
•
Yakınsayan kameralar görüntü eşleme ile paralel kameralara
dönüştürülebilir
Yakınsayan Kameralar: Doğrultma
•
Yakınsayan kameralar görüntü eşleme ile paralel kameralara
dönüştürülebilir
Yakınsayan Kameralar: Doğrultma
Yakınsayan Kameralar: Doğrultma
Stereo Görüntüleme: Örnek
Sol görüntü
Sağ görüntü
Derinlik haritası
Stereo Görüntüleme: Örnek
Üç Boyutlu Yapıyı Elde Etmek
için Farklı Yaklaşımlar
Yapısal Işık ile Derinlik Çıkarımı
Kamera
Projektör
Kinect
Lazer Tarama
Lazer Tarama
Download