Yüksek Çözünürlüklü Arazi Verilerinin Grafik İşlemcisi Kullanılarak Görselleştirilmesi

Benzer belgeler
YÜKSEK ÇÖZÜNÜRLÜKLÜ ARAZĠ VERĠLERĠNĠN GRAFĠK ĠġLEMCĠSĠ KULLANILARAK GÖRSELLEġTĠRĠLMESĠ

EROZYONUN KANTİTATİF OLARAK BELİRLENMESİ. Dr. Şenay ÖZDEN Prof.Dr. Nuri MUNSUZ

3.2. Raster Veriler. Satırlar. Sütunlar. Piksel/hücre büyüklüğü

BAĞLI POLİGON BAĞLI POLİGON

YOĞUN GÖRÜNTÜ EŞLEME ALGORİTMALARI İLE ÜRETİLEN YÜKSEK ÇÖZÜNÜRLÜKLÜ SAYISAL YÜZEY MODELİ ÜRETİMİNDE KALİTE DEĞERLENDİRME VE DOĞRULUK ANALİZİ

TASARI GEOMETRİ SINAV SORULARI

ARAZİ ÖLÇMELERİ. Koordinat sistemleri. Kartezyen koordinat sistemi

GridAE: Yapay Evrim Uygulamaları için Grid Tabanlı bir Altyapı

ARAZİ ÖLÇMELERİ. Coğrafik Objelerin Temsili. Nokta:

TMMOB Harita ve Kadastro Mühendisleri Odası Ulusal Coğrafi Bilgi Sistemleri Kongresi 30 Ekim 02 Kasım 2007, KTÜ, Trabzon

BÜYÜK ÖLÇEKLİ HARİTA YAPIMINDA STEREOGRAFİK ÇİFT PROJEKSİYONUN UYGULANIŞI

Bilgisayar Destekli Haritacılık 2017/ D ve Veri Değişimi. Netcad 7.6

ARAZİ ÖLÇMELERİ. Koordinat sistemleri. Kartezyen koordinat sistemi

Robot İzleme (Robot Tracing)

Karabük Üniversitesi, Mühendislik Fakültesi... MASAÜSTÜ YAYINCILIK

SAYISAL ÇÖZÜMLEME. Sayısal Çözümleme

5. SINIF MATEMATİK YILLIK PLANI

MAPINFO PROFESSIONAL TEMEL VE İLERİ SEVİYE KURS İÇERİĞİ

4. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

a) Çıkarma işleminin; eksilen ile çıkanın ters işaretlisinin toplamı anlamına geldiğini kavrar.

Fotogrametride işlem adımları

Koordinat Dönüşümleri (V )

Zaman Ortamı Yapay Uçlaşma (Time Domain Induced Polarization) Yöntemi

Dik İzdüşüm Teorisi. Prof. Dr. Muammer Nalbant. Muammer Nalbant

MOCKUS HİDROGRAFI İLE HAVZA & TAŞKIN MODELLENMESİNE BİR ÖRNEK: KIZILCAHAMAM(ANKARA)

JDF/GEO 120 ÖLÇME BİLGİSİ II POLİGONASYON

FOTOGRAMETRİ DAİRESİ BAŞKANLIĞI FAALIYETLERI

CEVAP ANAHTARI 1-B 2-C 3-C 4-C 5-B 6-E 7-D 8-E 9-C 10-E 11-E 12-A 13-A 1-A 2-D 3-C 4-D 5-D 6-B 7-D 8-B 9-D 10-E 11-D 12-C

DENEY 0. Bölüm 1 - Ölçme ve Hata Hesabı

Yıldız Teknik Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Bölümü. Bilgisayarla Görme. Final

ARAZİ ÖLÇMELERİ. Temel Ödev I: Koordinatları belirli iki nokta arasında ki yatay mesafenin

İNS1101 MÜHENDİSLİK ÇİZİMİ. Bingöl Üniversitesi İnşaat Mühendisliği Bölümü 2018

Teknik Resim TEKNİK BİLİMLER MESLEK YÜKSEKOKULU. 3. Geometrik Çizimler. Yrd. Doç. Dr. Garip GENÇ

4. Çok büyük ve çok küçük pozitif sayıları bilimsel gösterimle ifade eder.

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

Page 1. İz Düşüm Çeşitleri ve Metotları

Yüzey Doldurma Teknikleri

CBS Veri. CBS Veri Modelleri. Prof.Dr. Emin Zeki BAŞKENT. Karadeniz Teknik Üniversitesi Orman Fakültesi 2010, EZB

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

Trafik Yoğunluk Harita Görüntülerinin Görüntü İşleme Yöntemleriyle İşlenmesi

Bulanık Mantık Tabanlı Uçak Modeli Tespiti

Genel Bilgiler FLI MAP. Koridor Tipi Çalışmalar. Geniş Alan Çalışmaları

5. ÜNİTE İZDÜŞÜMÜ VE GÖRÜNÜŞ ÇIKARMA

Afet/Acil Durum İhbar Alma ve Yönetim Sistemi Modülü

20. Detay Çıkartma. ArchiCAD 9 Prof. Dr. Salih Ofluoğlu

Saat Yönünde 90 Derecelik Dönme Hareketi. Saatin Tersi Yönünde 90 Derecelik Dönme Hareketi

Gezgin Etmen Sistemlerinin Başarım Ölçümü: Benzetim Tekniği

İNŞAAT TEKNOLOJİSİ ÖNLİSANS EĞİTİMİNDE HARİTACILIĞIN YERİ. Orhan KURT 1

COĞRAFİ BİLGİ SİSTEMLERİ İLERİ SEVİYE EĞİTİMLERİ 3D-SPATİAL ANALİZ ve MODEL BUİLDER

EĞİTİM - ÖĞRETİM YILI 10. SINIF MATEMATİK DERSİ DESTEKLEME VE YETİŞTİRME KURSU KAZANIMLARI VE TESTLERİ

LIDAR VE YERSEL LAZER TARAYICI SİSTEMLERİ. Yersel Lazer Tarayıcı Hakkında Genel Bilgi

ÖLÇME BİLGİSİ ALANLARIN ÖLÇÜLMESİ

AKILLI KAVŞAK YÖNETİM SİSTEMİ

Aplikasyon Klavuzu (V )

EĞİTİM-ÖĞRETİM YILI 8. SINIF MATEMATİK DERSİ KAZANIMLARININ ÇALIŞMA TAKVİMİNE GÖRE DAĞILIM ÇİZELGESİ SÜRE

EĞİTİM ÖĞRETİM YILI 8. SINIF MATEMATİK DERSİ KONULARININ ÇALIŞMA TAKVİMİNE GÖRE DAĞILIM ÇİZELGESİ ALT ÖĞRENME. Örüntü ve Süslemeler

Koordinat Referans Sistemleri

Teknolojileri. Ortak Bina Kat: Ankara/TÜRK info@simsoft.com.tr Tel: + 90 (312) Faks: + 90 (312)

M. MARANGOZ GEOMATİK MÜHENDİSLİĞİ BÖLÜMÜ

GPS Nedir? Nasıl Çalışır?

MAK 210 SAYISAL ANALİZ

Şehir Plancıları için İleri Seviye ArcGIS Eğitimi

İZDÜŞÜM PRENSİPLERİ 8X M A 0.14 M A C M 0.06 A X 45. M42 X 1.5-6g 0.1 M B M

Dijital Kameralar (Airborne Digital Cameras)

COĞRAFİ BİLGİ SİSTEMLERİ 3D&Spatial Analyst ve ModelBuilder Eğitimi

SİDRE 2000 ORTAOKULU EĞİTİM-ÖĞRETİM YILI 7. SINIFLAR MATEMATİK DERSİ ÜNİTELENDİRİLMİŞ YILLIK PLAN

Power BI. Neler Öğreneceksiniz?

COĞRAFİ BİLGİ SİSTEMLERİ

Mekanları mahal olarak tanımlayabilmek için aracın Bilgi Kutusu nda üç yapılanma metodu bulunur:

Kolonlar, taşıyıcı, düşey yapı elemanlarıdır. Kolon Aracı na Araç Kutusu üzerinde simgesine tıklanarak erişilir.

TOPOĞRAFYA Temel Ödevler / Poligonasyon

TÜRKİYE CUMHURİYETİ DEVLETİNİN temellerinin atıldığı Çanakkale zaferinin 100. yılı kutlu olsun.

8. SINIF MATEMATİK TESTİ B

Bilgisayar Grafiği. Volkan KAVADARLI

Ölçme Bilgisi DERS 7-8. Yatay Kontrol Noktaları Ve Yükseklik ölçmeleri. Kaynak: İ.ASRİ (Gümüşhane Ü) T. FİKRET HORZUM( AÜ )

OPTİK. Işık Nedir? Işık Kaynakları

KESİTLERİN ÇIKARILMASI

MATEMATİK TESTİ LYS YE DOĞRU. 1. Bu testte Matematik ile ilgili 50 soru vardır.

UYDU GÖRÜNTÜLERİ VE SAYISAL UZAKTAN ALGILAMA

MOD419 Görüntü İşleme

MAK 210 SAYISAL ANALİZ

TÜRKİYE NİN BİTKİ ÖRTÜSÜ DEĞİŞİMİNİN NOAA UYDU VERİLERİ İLE BELİRLENMESİ*

Digital Görüntü Temelleri Görüntü Oluşumu

8. SINIF MATEMATİK TESTİ A

KENDĐ KENDĐNE YOL BULAN ARAÇ

Tanımlar, Geometrik ve Matemetiksel Temeller. Yrd. Doç. Dr. Saygın ABDİKAN Yrd. Doç. Dr. Aycan M. MARANGOZ. JDF329 Fotogrametri I Ders Notu

TEKNİK RESİM. Ders Notları: Mehmet Çevik Dokuz Eylül Üniversitesi. Görünüşler - 2

YILDIZ TEKNİK ÜNİVERSİTESİ İNŞAAT FAKÜLTESİ HARİTA MÜHENDİSLİĞİ BÖLÜMÜ

KALINLIK VE DERİNLİK HESAPLAMALARI

Fonksiyon Optimizasyonunda Genetik Algoritmalar

Harita Nedir? Haritaların Sınıflandırılması. Haritayı Oluşturan Unsurlar

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

BİLGİSAYAR DESTEKLİ TASARIM AUTOCAD DERSİ. 1. HAFTA Öğr. Gör. Serkan ÖREN

FAN SELECTOR FAN SELECTOR FAN SEÇİM YAZILIMI.

Olimpiyat Eğitimi TUĞBA DENEME SINAVI

MAM ENERJİ ENSTİTÜSÜ ANKARA

AKIŞKANLAR MEKANİĞİ-II

Teknoloji Kullanımı. Oyun Motorları

Kablosuz Sensör Ağlar ve Eniyileme. Tahir Emre KALAYCI. 21 Mart 2008

Transkript:

Yüksek Çözünürlüklü Arazi Verilerinin Grafik İşlemcisi Kullanılarak Görselleştirilmesi H. Billur Engin (a), Emre Koç (b), Selçuk Sümengen (c), Selim Balcısoy (d) Sabancı Üniversitesi, Mühendislik ve Doğa Bilimleri Fakültesi Bilgisayar Grafikleri Laboratuvarı, (a) billurengin@su.sabanciuniv.edu, (b) emrekoc@su.sabanciuniv.edu, (c) selcuk@su.sabanciuniv.edu, (d) balcisoy@sabanciuniv.edu ÖZ Grafik işlemcilerinde (GPU) görülen hızlı ilerleme geniş ve detaylı arazi verilerinin gerçek zamanlı benzetim sistemlerine etkin olarak entegre olmasını sağlamaktadır. Bu makalede geliştirdiğimiz 3 boyutlu arazi görselleştirme motoru ve İstanbul ili yükseklik verileri üzerindeki denemelerimizin sonuçlarını sunuyoruz. Araştırmalarımız sırasında gerçek zamanlı arazi görselleştirilmesi probleminde karşılaşılan sorunlara mevcut metodların geliştirilmesiyle çözümler bulunmuştur. İşlem yükünün GPU ya kaydırılması sonucunda ana işlemci (CPU) yükü düşürülmüş ve simülasyona eklenebilecek farklı işlevlere imkan yaratılmıştır. Anahtar Kelimeler: Arazi Görselleştirme, Detay Seviyesi, Grafik İşleme Ünitesi, Kesik Geometrik Haritalar, Üçgenleme Metodu. USMOS PAPER FORMAT TEMPLATE ABSTRACT Rapid progress in graphics hardware enables integraton of large scale and detailed terrain data into real-time simulation systems. In this paper we are presenting the 3D terrain engine and our tests with Istanbul data set. We propose several solutions to rendering of large terrain data by improving existing approaches. Our technique involves swifting computationaly complex operations to GPU and saving CPU resources for computationaly heavy simulation tasks other than terrain rendering. Keywords: Clipmaps, GPU, Level Of Detail, Terrain Rendering, Triangulation. 1

1. GİRİŞ Geniş coğrafi alanların büyük ölçekte görselleştirilmesi söz konusu olduğunda kalabalık bilgi kümelerinin ele alınması gerekmektedir. Mesela sadece İstanbul şehrinin 25 metre aralıklarla alınmış yükseklik bilgisi 6,153,992 noktadan oluşur (Şekil1). Bu sayı bütün Marmara bölgesi veya Türkiye nin görselleştirilmesi söz konusu olduğunda çok daha büyük değerlere ulaşır. Mevcut donanımlar yüksek çözünürlükteki geometrik yapıları görselleştirebilme kapasitesine sahiptirler ancak milyonlarca veriden oluşan bu bilgi kümlerinden alınan yükseklik ölçümlerinin işlenmesiyle oluşturulacak simülasyonda, gerçek zamanı yakalayabilmek için görselleştirilen araziye ait geometrinin farklı detay seviyelerinde çizilebilmesi gerekmektedir. Bizim de bu çalışma sırasında uyguladığımız bu yaygın strateji için farklı teknikler mevcut ise de ortak amaç gerçek zamanlı görselleştirme sırasında mümkün olduğu kadar geometrik detayı korumak ve sayısal olarak örneklenmiş arazi yapısını en doğru şekli ile üç boyutlu ortama taşıyabilmektir. Bu çalışmanın sonucu olarak sunduğumuz metod, son zamanlarda büyük aşama kaydetmiş grafik işleme ünitelerinin arazi görselleştirme sırasında en etkin şekilde kullanımına yöneliktir. Şekil1. İstanbul un 25 metrelik arazi verisinin gerçek zamanlı 3 boyutlu görselleştirilmesi. Not: İstanbul Boğazının kuzey doğusunda veri setinden kaynaklanan bir eksiklik vardır. 2

2. ARAZİ GÖRSELLEŞTİRME 2.1. İlgili Çalışmalar Arazi görselleştirme teknikleri genel olarak ele alındığında, araziyi ekranda çizebilmek için öncelikle, sabit aralıklarla alınmış yükseklik bilgilerinden yüzeyler elde edilmesi gerekir. Yüzey oluşturmak için genellikle üçgenleme metodu kullanılır. Ekranda görünen bütün bölgeleri aynı detay seviyesinde üçgenlemek simülasyonu yavaşlatır, bu yüzden araziyi farklı çözünürlükteki bölgelere ayırarak poligon sayısını azaltmak gerekir. Ayrıca arazinin tamamını aynı anda çizmek yerine, sadece kameranın görüş alanı içerisindeki arazi parçalarını çizim hattına göndermek sisteme hız kazadıracaktır. Bu işlemin kritik olan kısmı hiç tartışmasız parçaların en hızlı şekilde seçilerek sınırları belli olmayacak bir şekilde birbirlerine harmanlamasıdır. Arazi görselleştirme konusunda şu zamana kadar geliştirilmiş pek çok algoritma vardır. Bunları şu başlıklar altında toparlayabiliriz: Düzensiz Ağlar: Üçgenlere ayrılmış düzensiz ağlar olarak da bilinirler (TIN)[1]. Üçgen oluşturmak üzere Dealunay üçgenleri yaygın olarak kullanılmaktadır[2]. İkili Ağaç Hiyerarşileri: İkiz kenar dik üçgenlerin kenar ortaylarından ikiye ayrılarak bölünmesi esasına dayanır[3]. İkili Ağaç Alanları: Ağaç yapısı üzerinde geniş alanların geometrik olarak saklanmasına üzerine kuruludur[4]. Parça alanlar önceden üçgenlere ayrılarak tampon bölgede tutulur. Parça aralarında yumuşak geçişi sağlamak için yakınsama teknikleri kullanılır. İkili ağaç hiyerarşilerinden daha az detaylıdır. Kesik Geometrik Alanlar: Bu teknik blok döşeme metotlarıyla benzerlik göstermektedir[5]. Bloklar halinde saklanan yükseklik verisi görüntüleyici odaklı bir ağaç üzerine yerleştirilmiştir. Kaplamaların farklı odak noktalarıyla ve çoklu detay bilgisiyle çizilebilmesinde kullanılan kesik harita yönteminin[6], yükseklik bilgileri kullanılarak arazi görselleştitrilme konusuna adapte edilmiş halidir. Üçgen başına düşen hata oranı her kategoride biraz daha artmaktadır[7]. Düzensiz ağlar gerçeğe en yakın sonucu verir ancak işlemsel yükü çok fazladır. Kesik geometrik harita metodunda hesaplama yükünün GPU ya (grafik işleme ünitesi) taşınmasıyla hızlı ve CPU nun hesap yükünü ciddi ölçüde azaltan metodlar geliştirilmiştir. [8,9,10,11] 2.2 Kesik Geometrik Haritalar: Kesik geometrik haritalar, yükseklik bilgilerinin hangi detay seviyesinde üçgenleneceğini, üçgenlerin kameraya olan mesafesine bağlı bir fonksiyon haline getiren yöntemdir. Kameraya yakın olan bölgeler çok detayla, uzak olan bölgelerse daha az detayla çizilir. Bu yöntem araziyi 2 boyutlu yükseklik verisi olarak ele alır. Ekrandaki görüntünün L tane çözünürlük seviyesinde çizileceği düşünülürse, kamerayı merkeze oturttuktan sonra, 3

en yüksek çözünürlüklü bölge kare şeklinde, daha sonra gelen (düşük çözünürlüklü) bölgeler ise bu karenin etrafını saran halkalar şeklinde çizililer (Şekil2). 2.3. GPU ve CPU Karşılaştırması : Şekil 2. Kesik Geometrik Harita Son yıllarda ivme kazanan grafik işleme üniteleri teknolojisindeki gelişmeler, görselleştirme ve simulasyon alanında çalışan araştırmacıları geleneksel yöntemler ve algoritmaları gözden geçirmelerine neden olmuş, çok yüksek veri işleme kapasitesine sahip grafik işleme ünitelerinin mimarisine üzerinde çalışabilecek yeni metodlar geliştirmelerini sağlamıştır. Grafik işleme üniteleri, aynı anda çok sayıda veriyi işleyebilecek paralel bir mimariye sahiptir. Bu tasarım bir birinden bağımsız olarak çoklu veriyi işlemek için oldukça elverişli iken, rekursif (özyinelemeli) algoritmalarda verimli değildir. Bu nedenle grafik işleme ünitesi kullanılarak yapılan arazi görselleştirmelerde, dörtlü ağaç yapıları gibi birbirine bağımlı ve rekursif algoritmalar gerektiren veri yapıları tercih edilmez. Bu yapılar kullanılarak oluşturulan düzensiz üçgenlemeler ile detay seviyesini düşürmek yerine doğrudan kamera uzaklığına bağlı olarak detaylandırılmış düzenli grid (mazgal) geometrisi kullanılır. Burada amaç üçgen sayısını olabildiğince azaltmaktan çok, belirli bir seviyenin altında muhafaza etmek ve grafik işleme ünitesine doğru gerçekleşen veri transferini optimum düzeyde tutmaktır[8]. 3. ARAZİ GÖRSELLEŞTİRME YAZILIMI : Laboratuvarımızda geniş coğrafi bölgeleri görüntüleyebilmek için, yapılan çalışmalar sonucunda bir arazi görselleştirme yazılımı geliştirilmiştir. Sistemin çalışma mekanizması ve bazı kritik sorunlara bulduğumuz çözümler şöyledir: 3.1 Yükseklik Bilgisinin Grafik Kartına Gönderilmesi: Sabit aralıklarla alınmış yükseklik örnekleri CPU da tek boyutlu dizilerde saklanmak yerine iki boyutlu kaplama dizilerinde saklanarak grafik işleme ünitesine gönderilir[8]. Böylelikle x ve y koordinatları bilinen noktaların yüksekliklerine rahatça ulaşılabilir. Kaplama olarak tanımlanan bilgi üzerinde GPU nun direk erişimi olduğu için, hesaplamalar daha kolay ve hızlı yapılır. GL_TEXTURE_RECTANGLE_NV komutu 4

istenilen en ve boyda kaplamalar oluşturulabilir. yani dikdörtgen şeklindeki araziler kare seklindeki dizinlere sığdırılmak zorunda kalmadan işleme sokulabilir. Başlangıçta grafik ünitesine ekrana çizilen maskenin 2 boyutlu indeks kordinatları CPU dan gönderilir. Kameranın üzerinde bulunduğu kordinat bilgisi sürekli yenilenir. Gönderilen kamera kordinatları ve indeks kordinatları kullanarak 2 boyutlu kaplama bilgisinden herbir noktaya denk gelen yükseklik bilgisine GPU dan rahatlıkla ulaşılabilir. Bu sebeple CPU dan GPU ya kaplama bilgisi dışında yükseklik bilgisi gönderilmesine gerek yoktur. Çizilen maskeye ait 2 boyutlu kordinat bilgisinin yanısıra GPU ya gönderilen z değeri yükseklik yerine, o noktanın hangi detay seviyesinde çizileceğini ve aşağıda anlatılan detay seviyeleri arasindaki yumuşak geçiş in kaçıncı adımında olunduğunun belirlenmesini sağlar. Bu sayinin tam kısmi detay seviyesi için, küsüratlı kısmıysa yapılacak olan interpolasyon için bilgi vermektedir. 3.2 Kesik Geometrik Haritaların Yerleştirilmesi: 45 derecelik bir kesik geometrik harita şablonu CPU da hazirlanir (Şekil3). Daha sonra kameranın bakış yönü sağa ve sola doğru değiştikçe önceden hazırlanmış şablon kameranın etrafında döndürülerek görüntünün bütünlüğü sağlanır. Harita parçaları arasindaki değişimin ekranda görünmemesi icin kameranın 50 derecelik görüş alanı içerisindeki bölüm 45 derecelik harita parçalarıyla doldurulur. Bu doldurma işlemi maksimum 135 derece (3 harita parçası), minimum 90 derecedir (2 harita parçası) (Şekil4). Şekil3. 45 Derecelik Kesik Geometrik Harita Şablonu Şekil4. 135 Derecelik Kesik Geometrik Harita Şablonu 3.3 Normal hesaplama: GPU da normal hesabı herbir piksel için tekrarlanır, bu sebeple elde edilen görüntüler CPU da yapılan normal hesaplarından daha sağlıklı sonuçlar verir. Ekrana çizdirilen bölgenin detay seviyesi ne olursa olsun normal hesabi hep en yuksek çözünürlükten bulunmuş olur. İlk önce pikselin hangi noktaya (dörtgenleri oluşturan noktalardan) en yakın olduğunu tespit edilir (Şekil5). Ardından Newell metoduyla [12] pikselin etrafinda 5

yer alan dört dörtgen yüzeyden herbirinin normalleri bulunduktan sonra, piksele uzaklıklarına gore ağırlıklı ortalamaları alınır (Şekil6). Ağırlıklı ortalama yönteminde x-y düzlemi üzerinde bulunan bir noktanın değerini bulmak için etrafında bulunan en yakın dört noktadan yararlanılır. Değerini bulmaya çalıştığımız noktaya A noktası diyelim. Bu dört nokta ikişerli gruplara ayrılarak, iki doğru parçası oluştururlar. Doğru parçalarının denklemlerine, A noktasının y sini (ya da x ini) yerleştirdiğimizde iki tane x (ya da y) değeri buluruz. Böylelikle ayni y (ya da x) değerine sahip üç nokta (A noktası ve iki yeni nokta) elde etmiş oluruz. Bu iki noktanın normalleri interpolasyon metoduyla ait olduklari doğru parçalarını oluşturan noktalardan bulunabilir. Son olarak elimizde aynı doğrultuda normallerini bildiğimiz iki nokta ve A noktası kalır. Bu iki noktanın normallerinden A noktasının normalini interpolasyon kullanarak buluruz. Şekil5. Normal Hesaplanması Üstten Görünüm Şekil6. Normal Hesaplanması Yandan Görünüm 3.4 Yükseklik Değerlerine Göre Renk Atama: Program yükseklik verilerini okuma aşamasındayken değerlerin ortalamasini ve standart sapmasını da hesaplar. Bu degerler GPU ya gönderilerek minimum ve maksimum yükseklik değerleri arasında değişen bir harita lejantı oluşturulur. GPU nun piksel işlemcisi her bir piksele bu lejanta uygun rengi atar. 3.5 Arazi Üzerinde Hareket Etme: Arazi üzerinde harekete başlandığında kameranın yerini değiştirmek yerine, kesik haritalari oluşturan noktalarin yükseklikleri değiştirilir ancak bu değişim tek bir adımda yapıldığında istenilmeyen bir görüntü meydana gelir (pop up). Bu sebeple yükseklik değişimleri gözlemcinin her adiminda piksel başına interpolasyon yöntemiyle hesaplanir. Böylelikle yavaş ve yumuşak bir geçiş elde edilmiş olur. Gözlemci iki üçgen arası mesafeyi kat edene kadar attığı adımlar boyunca kesik haritalar geriye doğru çekilir, gözlemci diğer üçgene ulaştığı zaman kesik harita eski yerine geri döndürülür ve kaplamadan yeni yükseklik bilgileri alınarak kesik haritanin x ve y değerleriyle eşleştirilir. 6

3.6 Seviye Geçiş Bölgelerinde Arazinin Bütünlüğünün Korunması: Şekil7. Seviye geçişleri T birleşim noktaları (T-junction)lar, detay seviyeleri farklı kesit haritaları arasında geçiş sırasında oluşur. Detay seviyesi yüksek kesit haritası her x birimde örnekleniyorsa, detay seviyesi düşük kesit haritası her 2x birimde örneklenmiştir. Daha önce anlatılan arazi üzerinde hareket etme mekanizması dolayısıyla, kamera hareketi detaylı kesit haritası x birim ilerleme sonrasında kaydırılırken, daha az detaylı kesit haritası ise 2x birimde bir defa kaydırılacaktır. Bu durumda iki ayrı koşul ortaya çıkar. Detaylı kesit haritası sınırında bulunan her iki örnekten birine daha az detaylı kesit haritasında karşılık gelen bir yükseklik verisi yoktur (Şekil7a). Bu durumda eğer karşılık bulamayan noktaların yüksekliği komşu noktaların ortalamasından farklı ise üçgenleme sırasında o bölgede bir açıklık ortaya çıkar (Şekil7c). Bu açıklığın giderilmesi için daha az detaylı kesik haritasında karşılık bulamayan noktanın yüksekliği, komşu noktaların ortalaması alınarak tekrar belirlenir. İkinci koşulda ise detaylı kesit haritasının x birim kenar uzunluğundaki alanı daha az detaylı kesit haritasının içinde kalır (Şekil7d). Bu durumda yükseklikleri tekrar hesaplanması gereken noktalar daha fazladır (Şekil7e). Bu nokların yükseklikleri karşılık 7

gelen daha az detaylı kesit haritasının komşu noktaları alınarak tekrar hesaplanır (Şekil7f). Bütün bu hesaplamalar grafik kartı üzerinde yapılmaktadır. 4. SONUÇLAR ve DEĞERLENDİRME: Çizim işlemleri GPU da yapıldığı için, yazılım CPU yu tam güç yerine %20 performansla çalıştırmaktadır. CPU nun hesaplama yükü ciddi ölçüde azaltıldığı için simülasyonda yapılabilecek olası diğer işlemlerin de (yapak zeka, fizik motoru) verimli yapılmasına olanak sağlanmaktadır. Hesaplamaların GPU da yapılmasının sağladığı diğer bir avantaj ise gerçek zamanlı bir simülasyon elde edilmiş olmasıdır. Arazi görselleştirme yazılımımız 15 kare/saniye (fps) hızla çalışmaktadır. Kaplamaları oluştururken GL_TEXTURE_RECTANGLE_NV özelliğini kullandigimiz için yazılımın çalıştırılacağı bilgisayarın NVIDIA GeForce 6, 7 veya 8 kartlarından biri tarafından destekleniyor olması gerekir. GPU ya göndereceğimiz bilginin üst sınırı kaplama başına 4096 x 4096 noktadır. Bu değerden daha geniş yükseklik kümelerini ancak parçalarak bölerek görselleştirebiliriz. Şu an için geliştirmiş olduğumuz sistem, bizi gerçek zamanlı görselleştirme konusunda hedefimize ulaştırmış bulunmaktadır. Gelecekte birden fazla parçayla çok daha geniş coğrafi alanların büyük ölçekle görselleştirilmesi ana hedefimizdir. Bunun yanında arazinin üzerine yüksek çözünürlüklü uydu resimleri ile kaplanması, binaların ve yolların coğrafi bilgi sistemlerinden edilinecek veriler ile çizilmesi konularında çalışmalarımız sürmektedir. 5. KAYNAKÇA [1] Evans, W., D. Kirkpatrick, and G. Townsend., Right Triangular Irregular Networks, Algorithmica, Springer- Verlag New York, LLC, Special Issue on Algorithms for Geographical Information,2001. [2] Daniel Cohen-Or and Yishay Levanoni, Temporal continuity of levels of detail in delaunay triangulated terrain, in IEEE Visualization 96, Roni Yagel and Gregory M. Nielson, Eds., San Francisco, California, Oct. 1996,pp. 37 42, IEEE. [3] Renato, P., M. Antonijuan and R. Lario., QuadTIN: Quadtree based Triangulated Irregular Networks. [4] Levenberg, J. Fast view-dependent level-of-detail rendering using cached geometry., In Proceedings of the 13th IEEE Visualization 2002 Conference, Boston, 2002. [5] Losasso, F. and Hoppe, H. Geometry Clipmaps: terrain rendering using nested regular grids, ACM Transactions on Graphics, ACM Press, Volume 23, 2004-10-13. 8

[6] C. C. Tanner, C. J. Migdal, and M. T. Jones, "The clipmap: a virtual mipmap," Proceedings of the 25th annual conference on Computer graphics and interactive techniques, pp. 151-158, 1998. [7] M. Clasen and H. C. Hege, Terrain Rendering using Spherical Clipmaps, EuroVis 2006 Proc. Eurographics / IEEE VGTC Symposium on Visualization, pp. 91-98, 2006. [8] A. Asirvatham and H. Hoppe, "Terrain rendering using GPU-based geometry clipmaps," GPU Gems, vol. 2, pp. 109 122, 2005. [9] A. Brodersen, "Real-time visualization of large textured terrains," in Proceedings of the 3rd international conference on Computer graphics and interactive techniques in Australasia and South East Asia Dunedin, New Zealand: ACM Press, 2005. [10] J. Schneider and R. Westermann, "GPU-Friendly High-Quality Terrain Rendering," Journal of WSCG, vol. 14, pp. 49-56, 2006. [11] Y. Livny, N. Sokolovsky, T. Grinshpoun, J. El-Sana, and I. Beer-Sheva, "Persistent Grid Mapping: A GPU-based Framework for Interactive Terrain Rendering." [12] F.S. Hill, Computer Graphics using OpenGL, pp. 347-350, 2001. 9

EK BİLGİ Ayrı bir sayfada bildiri ile ilgili iletişim bilgilerinin (ad, soyad, adres, eposta, telefon, fax) sunulması gerekmektedir Selim Balcısoy Sabancı Üniversitesi Orhanlı Tuzla 34956 İstanbul balcisoy@sabanciuniv.edu 0216 4839569 0216 4839550 10