3D Görüntü İşleme Teknikleri – 2

Stereovision Prensibi

Bir önceki makalede, 3D görüntü işleme teknolojilerine ana başlık olarak değinmiştik. Bu makalede biraz daha teknik ayrıntıya girebiliriz.

Önce işin biraz matematiğine değinelim. Stereovision nasıl çalışır?

Nesne farklı açılardan gözlemlenir.

Eğer α ve β açıları ile b mesafesi biliniyorsa, basit bir geometrik hesaplama ile P nin pozisyonunu bulabiliriz.

Buna, triangulation (üçgenleme) prensibi denir.

P noktası her iki kamerada bir miktar kaymış olarak görünür (sırasıyla tek gözümüzü kapattığınızda gördüğümüz nesnelerin bir miktar kayması gibi)

Sonuç olarak, her iki kamera arasındaki mesafe, açı, focal mesafe biliniyorsa, kaymanın kaç pixel olduğu da hesaplanabilir. Buna Disparity denir. Uzaktaki nesneler için kayma az olacaktır, yakındaki nesneler için ise kayma daha fazla olacaktır. Bu durumda, stereovision da temel prensip, her bir pixel için Disparity değerini hesaplayabilmektir.

Nemrutun her iki (sol ve sağ kamera) tarafından alınmış görüntüsü soldaki gibidir. Şapkasının hemen üst noktası, sağ kameraya daha yakın olduğundan 156. pixelde iken, sol kamerada 160. pixeldedir. Kameralar kalibre edilmiş olduğundan aynı Y değerlerini vermektedirler. Yine kalibrasyon sonucu, bu 4 pixel kaymanın, ne kadar mesafeye dek düştüğü bulunabilir. Burada, sistemin hızlı çalışması için, sol resimdeki P(160,120) noktasının, sağ resimde nerelerde aranacağını sistem kestirebilmek zorundadır. Kalibrasyon sonucu, sol kameradaki her bir satır (row) sağ kamerada da aynı satıra denk düşecek şekilde resim dönüştürülür (rectification). Son olarak, stereo kamera, hangi mesafeden çalışıyor ise, (10 cm, 30 cm, 1 mt., 2 mt. vs.) yaklaşık olarak, kaç pixel kayma olabileceği bellidir. Böylelikle, sol kameradaki her bir tekil pixel, sağ kamerada tek bir satır üzerinde, dar bir alanda aranır ve hızlıca bulunur.

Şimdi işin matematiğine daha ayrıntılı girelim.

Stereo Teori – Perspective Projection

3 boyutlu olarak algılanmak istenen nesne üzerindeki her bir nokta (p), biri sol kamerada (p’), diğeri sağ kamerada (p”) olmak üzere bir geometrik yüzey oluşturur. Buna epilolar yüzey denir.

Her bir kameranın, x-y eksenlerinden oluşan yüzey ile epipolar yüzeyin kesişim noktalarının kenara olan uzaklıkları, l1 ve l2 olsun. Sistem, sol kameradaki her bir tekil p’ noktasının sağ kamerada nerede bulunduğunu (p” noktaları) bulmak zorundadır. Normalde bu, uzun bir işlemdir. Örneğin 1.3M Pixellik kameralar kullanılıyorsa, soldaki her 1.3 milyon pixel, sağ tarafta tek tek aranacak ve Disparity değerleri hesaplanacak. Bu işlemi hızlandırmak için, Camera Rectification dediğimiz tekniği kullanırız.

Stereo Rectification

Rektifikasyondaki amaç, p noktasının her iki kameradaki izdüşümleri olan p’ ve p” noktalarını, yatay eksende aynı paralel doğru üzerine düşürmektir. Bunun için, her iki kamera görüntüsü de, bir miktar döndürülür ve pixeller transform edilir. Sonuçta, p’ ve p” noktaları aynı y (row – satır) değerine denk getirilir. Rectified (düzeltilmiş) görüntüler, şimdi aynı eksendedir (z=1) Epipolar doğrular, (l1 ve l2) aynı paralel düzlemdedir. Artık, sol kameradaki p'(x,y) noktasındaki bir pixel, sağ kamerada herhangi bir yerde değil, aynı y değerine sahip olan satırda aranacaktır. Üstelik, bütün bir satır boyunca aramaya gerek yoktur. Nesnenin kameraya olan uzaklığı aşağı yukarı belli ise, satır boyunca ne kadar ileride ya da geride olabileceği de belli demektir. Bu yaklaşım, hem çok daha hızlı olacak, hem de çok daha etkin PC ve CPU kullanımı anlamına da gelecektir.

Pasif Stereo Vision

Pasif Stereovision tekniğinde, 2 adet kamera vardır fakat projektör yoktur. Nesnelerin üzerindeki şekillerden ve desenlerden faydalanılarak, her bir pixelin ne kadar kaydığı hesaplanmaya çalışılır.

Üzerinde resim olan kupanın sol ve sağ kameralar ile alınmış görüntüsü yukarıdaki gibi olsun. Bu durumda, mesela resimdeki hayvanın gözünün sol ve sağ kamerada kaç pixel kaydığı, kupanın kulpunun ne kadar kaydığı, ayakkabısının alt köşesinin ne kadar kaydığı gibi bilgilere ulaşabilirim. (Disparity değerleri bulunabilir) Özetle, desen ya da resim (texture) içeren yerler için disparity değerlerine erişilebilir. Fakat, hiç resim ya da desen içermeyen, mesela masanın üzeri, arka plandaki duvar gibi yerlerde, disparty değerlerini hesaplamak mümkün değildir. Bu durumda, derinlik bilgisine de erişilemeyecektir.

 

 

 

 

Aktif Stereo Vision

Pasif stereo vision, nesne üzerinde yeterli texture (desen, resim) yoksa derinlik bilgisine ulaşamıyordu. Bu durumda ana fikir; bir projektör kullanarak nesnenin üzerine bilinen patterne sahip infrared görüntü göndermek ve stereovision kameraları ile, bu infrared desenleri yakalamaktır. Yukarıdaki şekilde de görüldüğü gibi, kupanın silindir geometrisinden dolayı, iyi görülemeyen yerleri dışında (gölgeleme/shadowing) hemen her noktada derinlik bilgisine ulaşılabilmektedir. (Silindirik yüzeylerin aşağı yukarı 2/3 kadarı stereovision ile yakalanabilmektedir. Tamamını görmek için, 3 veya daha fazla stereovision kameraya ihtiyaç olabilir)

TOF (Time Of Flight) Kameralar ve yeni Kinect

TOF (Time of Flight) kameralar, normal kameralara ilaveten işin içine mesafe ölçüm sensörlerinin de sokulduğu, dolayısıyla 3 boyutlu görüntü alınabilen kameralardır. Mesafe ölçüm sensörleri, genellikle infrared bir kaynaktan, hedef üzerine foton gönderir. Fotonlar hedeften yansıyıp geri gelir. Çok hassas bir zaman ölçümü ile, gelen foton gecikmesinden hedefin bulunduğu konum hassas olarak belirlenir. (Radar olarak bildiğimiz yöntem) Genellikle matris şeklinde dizilmiş binlerce sensör kullanıldığından, görüş alanındaki hedef 3 boyutlu olarak hızlı bir şekilde çıkartılmış olur.

Soldaki resim Panasonic D-Imager TOF sensörünün çalışma mantığını sembolize etmektedir. Yansıyan fotonların, günışığı ya da başka ışık kaynakları ile karışmaması için, dalga boyu bilinen IR aralığında seçilmesine özen gösterilir. Yine de gün ışığı spektrumu çok geniş olduğu için, özellikle arka plandan yansımalar bazen sonucu olumsuz etkileyebilir.

TOF konusunda, kesinlikle incelenmesi gereken bir diğer endüstriyel ürün ise MESA Imaging firmasının SwissRanger 4000 isimli ürünüdür. 4.000 USD civarında bir satış fiyatı vardır.

Daha ucuz bir alternatif için Microsoft yeni Kinect göze çarpmaktadır. Yakında piyasalarda olacak olan yeni xBox oyun konsolu için geliştirilmekle birlikte çok farklı sektörlerde sıkça karşımıza çıkacağı kesin gibidir. Yeni Kinect, eskisinin aksine TOF teknolojisine dayanmaktadır. (Eski Kinect Stereovision teknolojisine göre çalışmaktaydı.)

Microsoft, yeni Kinect için, İsrail Elron firmasının ZCam isimli ürününü kullanmaya karar verdi. Bunun için, öncelikle Elron firmasını, ortalama olarak 5 milyon USD gibi bir rakama satın aldı. Bununla da yetinmeyip, 3D konusunda öncül bir diğer sensör firması Canesta yı da (rakam açıklanmadı) bünyesine kattı. Bu satın almalar, 3D konusunda Microsoftun gözü kara bir şekilde yatırım yapmaya devam edeceği anlamına da gelmektedir. Diğer yandan, özellikle Amerikada çok sıkı olan patent ihlal davaları/mahkemeleri ile (Kinectin patenti PrimeSense firmasına aittir) uğraşmak istemediği anlamına da gelir.

Bu video http://youtu.be/Hi5kMNfgDS4?t=5m27s yeni Kinectin 3 boyutlu algılama ve yeni teknolojiler konusunda ne kadar başarılı olduğunu göstermektedir.

Bu video ise, https://www.youtube.com/watch?v=5_PVx1NbUZQ Canesta’nın yeni sensörünün yeteneklerini göstermektedir. Sensör boyutuna bakılırsa, Canesta’nın bu yeni tip 3D sensörünü mobil uygulamalar (cep telefonları) üzerinde göreceğimiz günler yakın demektir. (Videonun 3 yıl önce çekildiği düşünülürse, şu an gelinen noktanın çok daha ileride olduğunu tahmin etmeye gerek yok)

Tüm bu teknolojiler gelişirken, biz neredeyiz?

MAVIS olarak, piyasada var olan bir çok farklı ürünü denedik, SDK larını inceledik, Avantaj ve dezavantajlarını değerlendirdik. (Microsoft Kinect for Windows, Asus xTion Pro, Leuze LPS36 gibi…) Halihazırda, klasik RGB kameralar ile alınan görüntülerve HALCON 3D/Stereo Vision yöntemleri ile çalışmak daha makul gibi görünmektedir. Distribütörü olduğumuz iDS imaging firması, 3D Imaging konusunda Ensenso isimli ürününü geliştirmiştir. HALCON uyumu, iDS güvencesi ve daha makul fiyatları nedeniyle tercih edilebilir.

Bu makaleleri takip edenler için, TOF v.b. yeni nesil sensörler ve uygulama alanları hakkında yeri geldikçe bilgiler vermeyi ve yeni başladığımız bir projeyi sunmayı düşünüyorum.

Projeleriniz ve ilave bilgi için, bizimle iletişime geçebilirsiniz.