Realtime photo-realistic rendering using modern GPU systems
Modern GPU sistemlerini kullanarak gerçek zamanlı gerçekçi görüntü oluşturma
- Tez No: 363646
- Danışmanlar: PROF. DR. ULUĞ BAYAZIT
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2014
- Dil: İngilizce
- Üniversite: İstanbul Teknik Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 99
Özet
Bilgisayar grafiği dünyası gün geçtikte gelişen popüler bir bilim dalıdır. İlk zamanlarda, insanların beklentileri temel ihtiyaçlarını karşılmak üzerine inşa edilmişti. Daha sonraları bu temel ihtiyaçlar karşılandıkça daha teferruatlı ve lüks istekler birer ihtiyaç haline gelmiştir. Bilgisayar grafiğinin gelişiminde de aynı seyri görmek mümkündür. Günümüzde neredeyse tüm endüstriyel, finansal, tıbbi, bilimsel, eğitim ve eğlence alanlarında yoğun bir şekilde kullanılmaktadır. Genel olarak iki farklı yaklaşım mevcuttur. Bunların ilki gerçek zamanlı görüntü oluşturma üzerine kuruludur. Oyun endüstrisi ve sanal gerçeklik uygulamaları bu akımın başını çekmektedir. Burada en önemli faktör etkileşimli uygulamaları mümkün kılabilmek için belirli bir tepki süresini asla geçmemeye çalışmaktır. Sadece gerçek zamanlı bir uygulama aynı zamanda gerçeklik hissini verebilir. Oyun endüstrisi, grafik kartlarının gelişimiyle baş gösteren programlanabilir grafik kartı mantığıyla görüntü kalitesinde ciddi ilerlemeler kaydetmiştir. Diğer bir yaklaşım ise gerçekçi görüntü oluşturma üzerine kuruludur. Film endüstrisi ve bilgisayar destekli tasarım uygulamaları bu yaklaşımın gelişmesine vesile olmuşlardır. Buradaki mantık ise, görüntünün olabildiğince gerçek dünyadakine benzemesidir. Bunu sağlamak için ışığın tabiattaki davranışlarının bilgisayar ortamında benzetiminden faydalanılmaktadır. Genelde bu tarz uygulamalarda temel gaye gerçekçi görüntü elde etmekdir. Dolayısıyla bu tarz bir benzetim günümüz donanım imkanlarıyla saatler sürmektedir. Bu çalışmada, bu iki büyük problemi tek çatı altında çözen bir tasarım ve gerçekleme ortaya koyduk. Gerçekçi görüntü elde etmek için yol izleme algoritmasını tercih ettik. Bu algoritmanın grafik kartı üzerinde gerçeklemesinin diğerlerine göre daha kolay olması başlıca tercih sebebimizdir. Bu algoritma yoğun bir şekilde ışın izleme yöntemini kullanmaktadır. Sahnemizdeki nesneler üçgenlerden oluştuğu için çok yoğun bir ışın-üçgen kesişim testi yapmak bir mecburiyet olarak karşımıza çıkmaktadır. Bu problemi aşmak için bir takım veri yapıları geliştirilmiştir. Biz bunlardan Kapsayan Hacimler Sıradüzeni veri yapısını Yüzey Alan Sezgisi yaklaşımıyla üretmeyi tercih ettik. Ayrıca bu veri yapısını grafik kartı üzerinde önbellek ıskalamayı bertaraf etmek için sıkılaştırılmış bir şeklinde kullandık. Donanım tabanlı hızlandırma yöntemleri olarak grafik kartı üzerinde paralel programlama tekniklerini kullandık. Grafik programlama bünyesinde alışılagelmiş merkezi işlemci tabanlı ardışıl programlamadan çok daha fazla sorunla karşılaştık. Gerçekleme yaparken koşullu dallanma, hafızaya erişim deseni, matematiksel yoğunluk gibi bir çok hususa çok dikkat etmek gerekmektedir. Biz bu sorunları adım adım tasarım-gerçekleme-test döngüsü içerisinde bir geri besleme modeli ile aşmaya çalıştık. Test sonuçları bize şunu gösteriyor ki verimliği etkileyen en önemli etken hafızaya erişim sorunudur. Grafik kartı dahili hafızası, daha hızlı erişim için parça parça önbellekleme yapmaktadır. Bu önbellekler, her bir işparçacığı kümesine ait olmaktadır. İster paylaşılan bellek olsun ister genel bellek olsun, ardışıl olmayan bir erişim deseni daha önce alınan önbelleklerin kaçırılmasına sebebiyet vermektedir. Özellikle gerçekçi görüntü oluşturma algoritmasında kullanılan mat yüzeylerin yansımasındaki ikincil ışınlar bu tarz erişimlere neden olmaktadırlar. Bu tezde en çok ışın-üçgen kesişim testlerinin hızlandırılmasında kullanılan veri yapısı ağacının tarama algoritması önemsenmiştir. Her ne kadar bu ağacın inşasında kullanılan yöntemler verimi doğrudan etkilesede, durağan sahneler üzerinde çalıştığımız için bu inşa vetiresinin ne kadar zaman alacağı önemli değildir. Bu bekleme süresini ilk ağaç oluştuğunda bir dosyaya kaydederek, daha sonra görüntü oluşturma aşamasında bu dosyadan doğrudan belleğe yükleyerek oldukça kısalttık. Veri yapısı ağacının dolaşımı grafik kartı üzerinde yapılmaktadır. Grafik kartları büyük yığınlara sahip olmadığından yığın kullanmadan tarama yapan, özyinelemeli fonksiyonlar kullanmayan bir algoritma oluşturmayı tercih ettik. Dolaşım algoritmasına katkımız, maksat en yakın ışın-üçgen kesişimini bulmak olduğu için, elimizdeki son kesişim noktasından daha yakın olmadığı sürece gereksiz ağaç düğümü taramalarını önlemek olmuştur. Bu algoritma bazı araştırmacıların kullandığı paket tabanlı dolaşım gibi yöntemlerle beraber kullanılamaz. Fakat bizim gerçeklememizde belirgin bir fark meydana getirdiği yapılan testlerle gösterilmiştir. Ayrıca benzer bir başka araştırmanın konusu olan sürekli iş parçacıkları yöntemi kendi gerçeklememize uyarlanmış ve daha önce yapılmış mevcut çalışmalarla mukayese edilmiştir. Temel olarak bu çalışma ile katkımız, gerçek zamanlı gerçekçi gorüntü elde edilebilmenin sıradan bir ev kullanıcısının sahip olabileceği bir grafik kartlarıyla mümkün olup olmayacağının tespiti ve bu noktada yapılabilecek iyileştirmelerin bulunmasıdır. Biz yaptığımız testlerde bu işlemin basit sahneler için mümkün olabileceğini gördük. Ayrıca gelecekte yapılabilecek iyileştirme çalışmaları da çalışmada sunulmaktadır.
Özet (Çeviri)
We design and implement a real-time renderer using physically based global illumination techniques on GPU (Graphics Processing Unit) based CUDA (Compute Unified Device Architecture) platform. There are two big challenges in this work,the first is the complexity of the physically based rendering and the second is parallelization and implementation of these algorithms on CUDA platform as far as pratically possible. We use path tracing algorithm for photo-realistic results with global illumination.Because of the nature of the algorithm, there are huge number of ray-triangle intersection tests, so we need to use acceleration techniques. Software based acceleration is achieved with cache friendly compact SAH (Surface Area Heuristic) based BVH (Bounding Volume Hierarchy). Construction of BVH is designed to run on CPU (Central Processing Unit), and BVH traversal algorithm is designed to run on GPU. The big challenge is designing and implementing an efficient traverse algorithm on GPU side. There are a lot of issues to solve, like coalesced memory access patterns, thread divergence and occupancy. In order to have a good implementation we prefer a design-deploy-test model. It is based on feedback mechanism which gives us practical results. Our contribution is in the traversal of the BVH tree. We ignore redundant node traversals with an intersection distance check. This check gives us better performance values according to our tests. We also implement persistent threads algorithm which uses software based scheduler using ray pooling instead of GPU's hardware based scheduler. We get better performance with persistent threads method, because in the ray tracing process, some rays are terminated in a short period of time and software based scheduler gets a new ray for the current thread from the ray pool without waiting the termination of the other threads. We also implement and compare our renderer with a well know real-time path tracer. We attempt to get better performance than the current path tracers.
Benzer Tezler
- Real-time arbitrary view rendering from stereo video and time-of-flight camera
İki görüntülü video ve uçuş süresi kamerası ile gerçek zamanlı gelişigüzel görü imgesi oluşturulması
TUĞRUL KAĞAN ATEŞ
Yüksek Lisans
İngilizce
2010
Elektrik ve Elektronik MühendisliğiOrta Doğu Teknik ÜniversitesiElektrik ve Elektronik Mühendisliği Bölümü
PROF. DR. A. AYDIN ALATAN
- Accelerated ray tracing using programmable graphics pipelines
Programlanabilir grafik işlemcileri ile hızlandırılmış ışın izleme
Ş. ALPHAN ES
Doktora
İngilizce
2008
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOrta Doğu Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. VEYSİ İŞLER
- Image-based extraction of material reflectance properties of a 3D object
Üç boyutlu nesnelerin madde yansıtırlık özelliklerinin imgeye dayalı çıkarılması
MEHMET ERKUT ERDEM
Yüksek Lisans
İngilizce
2003
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOrta Doğu Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ.DR. VOLKAN ATALAY
- Visual attention models and applications to 3-D computer graphics
3-B bilgisayar grafiklerinde görsel dikkat modellemeleri ve uygulamaları
MUHAMMED ABDULLAH BÜLBÜL
Doktora
İngilizce
2012
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİhsan Doğramacı Bilkent ÜniversitesiBilgisayar Mühendisliği Bölümü
YRD. DOÇ. DR. TOLGA ÇAPIN
- Kentsel değişimin konum tabanlı sosyal medya ağları ile incelenmesi: Taksim Meydanı örneği
Evaluating urban change with location based social networks: The case of Taksim Square
ONUR ERKAN
Yüksek Lisans
Türkçe
2019
Mimarlıkİstanbul Teknik ÜniversitesiKentsel Tasarım Ana Bilim Dalı
DOÇ. DR. DİLEK YILDIZ