Photogrammetry (3D Reconstruction)
-
Merhaba arkadaslar, sizlere Photogrammetry tekniginden biraz bahsetmek istiyorum.
Photogrammetry Nedir?
Eski Yunanca'dan batı dillerine giren Fotogrametri sözcüğü 3 kök söcükten oluşur. Photos(ışık) + Grama(çizim) + Metron(ölçme). Buna göre ışık yardımı ile çizerek ölçme anlamına gelmektedir. Fotogrametri tekniği ile ölçülmek istenen nesnenin ve yakın çevresinin yada arazinin fotoğrafları çekilir. Bunların fotoğraf üzerindeki görüntüleri ölçülerek istenen bilgiler sağlanabilir, yada özel aletlerde bu görüntüler harita yada plan biçimine dönüştürülebilir.
Fotogrametri fotoğraflar yardımı ile güvenilir bilgiler alma bilimidir. Fotogrametrik yoldan görüntü kaydının dışında başka kayıt ve algılama sistemleri de söz konusudur. Fotogrametri öncelikle bir harita yapım yöntemidir. Dünyanın çeşitli ülkelerinde ve Türkiye'de büyük ve küçük ölçekli haritaların üretiminde en az 60 yıldır başarı ile uygulanmaktır.
* Bildiginiz gibi xbox Kinect cihazini 3D tarama, face ve skeleton mocap icin kullaniyordum. kinect uzerindeki lazer tabancasi ve depth kamera ile lazerin carptigi yuzeyleri 3D Point Cloud'a doken programlar sayesinde 3D Mesh cikartilabiliyordu. Boylelikle 40.000 - 50.000 dolar olan pahali lazer tarama cihazlari olmadan da obejleri 3D yakalayip 3D Pritnt edilebiliyor. tabiki de mesh kalitesi cok iyi degil fakat kabul edilebilir.
* Simdi gelelim yeni bir Point Clout cikartma teknigine. Bu teknige "Photogrammetry" deniyor. bu teknik farkli acialrdan cekilmis fotograflarin veya image sequence'lerin islenerek 3D mesh haritasi cikartabiliyor. ve okadar etkili bir yontem ki pahali 3d tarama lazerleri ve depth camera olmadan cok yuksek kalitede mesh olusturabiliyor. Bu teknoloji suanda gelistirme asamasindadir. buyuzden ortada stabil bir prgram yoktur. Sadece Autodesk in 123D Catch programi blulut (cloud) uzerinden bunu yapmaktadir. programi indiriyorsunuz autodesk e uye oluyorsunuz, free uyelikte resim sayisi ve model kalitesi kisitlidir. dilerseniz ucretli uyelik acabiliyorsunuz ve bu islem icin online olmaiz sart. cektiginiz fotografleri autodeskin serverlerine yolluyorsunuz o isleyip 3d model dosyasini size yolluyor.
Bagimsiz bilgisayar muhendislerinin uzerinde celistigi yeni ve cok basarili algoritmalar da mevcut. iste bunalrdan birini test etme sansim oldu ve sonuclari sizinle paylasmak istedim :)
PPT (GIU): bu programi calistirabilmeniz icin bilgisayariniza Phyton ve gerekli bazi kutuphaneleri yuklemeniz gerek. Bu programa fotograflari sirasiyla atiyorsunuz, daha sonra program size fotograflari hangi makineyle cektiginizi gosteriyor ve CCD Sensor genisligini soruyor, ben Nikon D5100 icin 23,6 mm ccd sensor genisligi degerini girdim. wikipedyada genislikler yaziyor. Mobil cihaz kameraleri da genelde 1,4 mm dir. Program bu bilgilerle resimleri isleyerek .ply formatinda point cloud olusturuyor, daha sonra bu olusturulan point cloud dosyasini "MeshLab" isimli programla acarak mesh olusturuyoruz, daha sonra texturelari uzerine ekliyoruz, ve son olarak da 3d program icin export aliyoruz (obj, 3ds, max, c4d, fbx, vb...).
Simdi de Sonuclari gorelim;
ilk testi ev icinde fazla alan olmadigi icin 360 derecelik bir aciyla yapamadim. koltukta duran pelus fil oyuncagini 6 farkli acidan cekerek deneyime basladim :)
Resim input:
cmd uzerinden Point Cloud Olusturma:
olusan point cloudlar:
ve cloudlari meshlabda meshe cevirme:
Fotografin gectigi asamalar (Video):
https://www.youtube.com/watch?v=FZ-h9S9MVE8
https://www.youtube.com/watch?v=yTh7M4zzDEs
Gelelim 2. teste; Bu testte parktaki bir agacin govdesi, 360 derece olacak sekilde resimler cektim. toplam 29 resim.
Image Inputs:
Point Cloud:
Dense Point Olusumu:
Final mesh:
Video Steps:
https://www.youtube.com/watch?v=4-01PqqZnN4
Referenslar:
* Michal Jancosek & Tomas Pajdla
* Alessandro and Luca Bezzi
+ Structure from Motion
[1] Changchang Wu, "Towards Linear-time Incremental Structure From
Motion", 3DV 2013
[2] Changchang Wu, "VisualSFM: A Visual Structure from Motion System",
+ Bundle Adjustment
[3] Changchang Wu, Sameer Agarwal, Brian Curless, and Steven M. Seitz,
"Multicore Bundle Adjustment", CVPR 2011
+ Feature Detection
[4] Changchang Wu, "SiftGPU: A GPU implementation of Scale Invaraint
Feature Transform (SIFT)" -
Çok iyi...
Geliştirilebilirse çok iyi iş yapar.
-
JOE bunu yazdı
Çok iyi...
Geliştirilebilirse çok iyi iş yapar.
kesinlikle. mahlle projem vardi, tum mahalleyi resim ceke ceke boydan boya dolastim :) 3 gun once islemeye baslamistim fakat umursamazlgimdan dolayi laptop dun gece kapandi. 3 gun bosu bosuan gitti. yaklasik 6 gun urecek bir islemden sonra mahallenin 3D meshini ciakrtip klavye mousela icinde doalsacaktim :)
Laptopun kapanma nedeni: Sogutucu fanin usb kablosu kpmustu tekrardan bagladim fakat bantlamadim, gecerken kaboalra caarptim ve iki kablo birbirine deger degmez kapandi makine :( tum islem bosa gitti. tekrar isleme sokacagim sonuclari ekleyecem bittigine. ayrica tam oalrak sistemi cozdugumde video ders te ekleycegim.
-
İnşallah geliştirilir harikaymış kardeşim
-
Lakin şöyle de bir proje var;
http://www.youtube.com/watch?v=Qe10ExwzCqk
JOE tarafından 10/Nis/14 17:15 tarihinde düzenlenmiştir -
seni korumaya alalım.bir an önce evlen soyun tükenmesin
tahribat içinde işine bu kadar düşkün bir seni görüyorum. ve çoğunu anlamasamda tebrik ediyorum
-
JOE bunu yazdı
cok mukemmel projeler var. suanda kinectle sorunsuz oda veya sokak taramasi yapabiliyorum. fakat programlar cok sınırlı. Skanect vre reconstruct me ile full odanin mesni ciakrtabiliyorum kinect kullanarak, fakat buyuk projelerde baya kasiyor. ama kinectin kamerasi berbat. depth kamerasi da oyle .cozunurlugu normal vga kamera cozunurlugunde. bunu 1080p yaparlarsa feci seyler cikacak gibi. kinect 2.0 daha kaliteli ama 1080p depth yakalayamiyor. ayni sekilde asus xtion da kalitesiz.
-
bu da romanin 3D Pointcloud hali :) adamlar binlerce fotograf cekmisler olusturabilmek icin :)
https://www.youtube.com/watch?v=vpTEobpYoTg
-
gerçekten güzel proje özellikle 3d çizim ve tasarım işi yapanlar için çok büyür bir kolaylık sağlıcak. Bende meraklandım araştırmalara girdim. bu programlarda kullanacağımız kamera sensörünü temin edebileceğimiz yer varmıdır peki yazılımları buldum ama kamerasız işe yaramıyorlar heralde :)
-
peki hocam görüntü sayısını arttırırsak yani böyle bi 200 e yakın çeksek 360 derece için mesh miktarını arttırırmı yani detay artarmı yoksa algoritma kinect kadar güçlü değilmi? eğer mümkünse ben bu işin piyasasına bile girerim, bide program açık kaynakmı yoksa admlar öyle gösteri amacıylamı yayınlıyor, gerçi ücretli sürüm var demisşin ama alternatif açık kaynak olanı varmı diye sorayım..
-
EdepsizPenguen bunu yazdı
peki hocam görüntü sayısını arttırırsak yani böyle bi 200 e yakın çeksek 360 derece için mesh miktarını arttırırmı yani detay artarmı yoksa algoritma kinect kadar güçlü değilmi? eğer mümkünse ben bu işin piyasasına bile girerim, bide program açık kaynakmı yoksa admlar öyle gösteri amacıylamı yayınlıyor, gerçi ücretli sürüm var demisşin ama alternatif açık kaynak olanı varmı diye sorayım..
Hocam nekadar cok resim oakdar cok detayli mesh. yukarda gonderdigim roma meshinde 6 binden fazla resim kullanildi. PPT GUI acik kaynak kodlu bir program. amakaynak kodlarini alman icin programciyla gorusmen gerek, onu ucretle veriyor sanirim. adam suanda google icin calisiyor ve buyuk ihtimalle google lisans haklarina sahip.
Autodesk 123D Catch cok feci sacmaliyor sonuclarda. oyuzden pek tavsiye etmem. Para kaanma amacli olarak kullanacaksan lisans sozlesmesi geregi kodlari satin alman gerek.
Not: Algoritma kinecte bin basar :) kinecti neredeyse tum programalrda denedim. tamam guzel sonuc veriyor ama uzerindeki lanet kamera cozunurlugu igrenct texture olusturuyor. bu algoritmayla 4000x4000 pixel boyutunda resimleri isleyip cok kaliteli mesh cikartabiliyor. ben suanda bu projeyle mahallenin meshini cikartacagim. Resimler hazir, sonuclar bittiginde ekleyecegim.
Dj_DooM3 tarafından 10/Nis/14 22:56 tarihinde düzenlenmiştir