GÖRÜNTÜ İŞLEME ALGORİTMALARININ FPGA DONANIMI ÜZERİNDE GERÇEKLENMESİ

Slides:



Advertisements
Benzer bir sunumlar
Hâsılat kavramları Firmaların kârı maksimize ettikleri varsayılır. Kâr toplam hâsılat ile toplam maliyet arasındaki farktır. Kârı analiz etmek için hâsılat.
Advertisements

Mastarlar.
ODTÜ Bilgisayar Mühendisliği Tanıtım Günleri Temmuz 2005.
İŞLETİM SİSTEMİ İşletim Sistemi Nedir İşletim Sisteminin Görevleri Kullanıldığı Yerler Örnekler Düzenleyen: Mehhmet Akif BARIŞ.
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
Donanım Birimleri.
SUNU HAZIRLAMA PROGRAMI: powerpoint
BULUT BİLİŞİM M. KÜRŞAT YILDIRIM İÇERİK  BULUT BİLİŞİM NEDİR?  BULUT BİLİŞİM ÖZELLİKLERİ  BULUT BİLİŞİM MİMARİ YAPISI  BULUT BİLİŞİM.
İşaret, fiziksel bir olayda mevcut olan bağımsız değişkenlerle, bu değişkenler arası ilişkinin matematiksel anlamda karşılığı olarak tanımlanabilir. İşaretler.
SEVDA GÜL Y MEME MR’ INDA KANSER TESPITI.
Uzaktan Eğitim Sürecinde Materyal Ortam ve Teknoloji Tasarımı Yusuf DOĞANAY.
Etkileşimli Tahta Sorumlu Firma Vestel Sorumlu Firma Yöneticisi Yereldeki Vestel Yetkili Servisleri Arıza Kaydı Vestel Çağrı Merkezi: Fatih.
PAS PAYI ELEMANLARI Son yıllarda, “paspayı” olarak adlandırılan, donatı örtü tabakasının kalınlığının bazı ülkelerde (örneğin Almanya’da) 4-5 cm’ye kadar.
İSTANBUL ESENYURT ÜNİVERSİTESİ SOSYAL BİLİMLER ENSTİTÜSÜ İŞLETME ANABİLİMDALI YÖNETİM ve ORGANİZASYON CENK SOYER SÜREÇ YENİLEME DEĞİŞİM MÜHENDİSLİĞİ REENGINEERINGG.
Lojik Kapılar ve Lojik Devreler (Logic Gates And Logic Circuits)
Tane Kavramının Öğretimi (Basamaklandırılmış Yönteme Göre)
BİLGİSAYAR PROGRAMLAMA Ders 11: İşaretçi (Pointer) Kullanımı Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
Biçimbilimsel Özniteliklerin Eş-Oluşumlarına Dayalı Doku Betimleme Okan Üniversitesi Bilgisayar Mühendisliği Bölümü / İstanbul İzzet Özen Erchan Aptoula.
Raporlama Yapmanın Amaçları 2 -Yapılan çalışmaların sonuçlarını daha net görebilmek -Yapılan çalışmaları geçmiş zaman verileriyle kıyaslayabilmek -Rapor.
DONANIM VE YAZILIM.
Jominy (Uçtan Su Verme) Deneyi
İSTATİSTİK II BAĞIMSIZLIK TESTLERİ VE İYİ UYUM TESTLERİ “ c2 Kİ- KARE TESTLERİ “
Yazılım Mühendisliği1[ 3.hft ]. Yazılım Mühendisliği2 Yazılım İ sterlerinin Çözümlemesi Yazılım Yaşam Çevrimi “ Yazılım Yaşam çevrimin herhangi bir yazılım.
ÇOK BOYUTLU SİNYAL İŞLEME
BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DONANIM VE YAZILIM.
Bilişim Teknolojileri ve Yazılım Dersi
Sanayi ve ticaret limiteD şirketi
İnternet'e Bağlanmak İçin Neler Gereklidir?
Altera ile proje hazırlama
DENEYSEL TERTİPLER VE PAZAR DENEMESİ
BARALAR.
Yapay Sinir Ağı Modeli (öğretmenli öğrenme) Çok Katmanlı Algılayıcı
PROGRAMLAMA TEMELLERİ
1)RESİM DÜZENLEMEK TEMEL KAVRAMLAR: Piksel, Nokta ve Nokta Aralığı, Çözünürlük, Rezolasyon, LPI, DPI HAZIRLAYAN: Ayşe Cansel KARAMAN.
Ünite 8: Olasılığa Giriş ve Temel Olasılık Hesaplamaları
ÇOCUKLUK DÖNEMİNDE YARATICILIK VE SANAT EĞİTİMİ
Doğu Akdeniz Üniversitesi Bilgisayar Ve Teknoloji Yüksek Okulu
EKRAN KARTLARI.
BİLGİSAYAR ÇEŞİTLERİ.
Bilgi ve İletişim Teknolojileri
BİLİŞİM TEKNOLOJİLERİ ALANI
RESİM VE RESİM DÜZENLEME İŞLEMLERİ
DOSYA BÜYÜKLÜKLERİ İkili Sistem Dosya Büyüklükleri ve Hesaplamalar
TEKNİK RESİM GÖRÜNÜŞ (12. HAFTA).
AĞ DONANIMLARI BARIŞ BAYRAM :
Sunucu Çeşitleri Mehmet Ali Uluekmekçi.
GÖRSEL KÜLTÜR 9. Görüntü Teknolojileri II İmgenin Yeniden Üretimi. Yrd
Temel Bilgisayar Bilgileri
Düz hatlar, makaslar & kruvazmanlar için ivmelenme izleme sistemi
Arduino ile Köprülü Vinç Kablosuz Kontrolü
BENZETİM Prof.Dr.Berna Dengiz 13. Ders Çıktı Analizi
Benzetim 11. Ders İmalat Yönetimde Benzetim.
TEKNOLOJİ VE TASARIM DERSİ 7.D.1. Özgün Ürünümü Tasarlıyorum.
Kemal AKYOL, Şafak BAYIR, Baha ŞEN
NİŞANTAŞI ÜNİVERSİTESİ
Bilgisayar Bilimi Koşullu Durumlar.
LOJİK KAPILAR (GATES) ‘Değil’ veya ‘Tümleme’ Kapısı (NOT Gate)
PERFORMANS KAVRAMI PERFORMANSIN BOYUTLARI
SABİT DİSKLER.
NİŞANTAŞI ÜNİVERSİTESİ
İşlemciler.
Ders 2: Yazılım Geliştirme
NİŞANTAŞI ÜNİVERSİTESİ
KAMERA.
Sanal ve Şebeke Örgütleri
Kesikli Olay benzetimi Bileşenleri
Bilgehan Arslan, Süreyya Gülnar
SES KOMUT TANIMA İLE GEZGİN ARAÇ KONTROLÜ
OLASILIK Uygulamada karşılaşılan olayların birçoğu kesin olmayan diğer bir ifadeyle belirsizlik içeren bir yapıya sahiptir. Olasılık kavramı kesin olmayan.
Medİkal görüntülerde doktor – hasta bİlgİ gİzlİlİğİnİn sağlanmasI
Sunum transkripti:

GÖRÜNTÜ İŞLEME ALGORİTMALARININ FPGA DONANIMI ÜZERİNDE GERÇEKLENMESİ Ali Recai ÇELİK

GİRİŞ: 1-GÖRÜNTÜ İŞLEME 2-KULLANILAN DONANIM 3-YAZILIM 4-UYGULAMA 5-SONUÇ

GÖRÜNTÜ İŞLEME Görüntü işleme; görüntüleri değiştirmek, yabancılaştırmak veya iyileştirmek için kullanılır. Üzerinde çeşitli işlemler gerçekleştirilecek olan görüntü, kamera aracılığı ile alınan bir video veya fotoğraf görüntüsü olabileceği gibi; kullanıcılar tarafından kırmızı, yeşil, mavi ve bu renklerin birleşimleriyle elde edilen bir görüntü de olabilir.

Akıllı Robot Sistemleri Bilgisayar Grafikleri ve Oyunları KULLANIM ALANLARI; Tıp ve Biyoloji Uzay Bilimleri Savunma Sanayi Fraktal Şekiller Coğrafi Bilimler Animasyon Filmleri Güvenlik Sistemleri Akıllı Robot Sistemleri Bilgisayar Grafikleri ve Oyunları

TEKNİKLERİ; Kenar Bulma Filtreleme Yapısal Düzenleme Bölümlendirme Eşikleme Görüntü Değiştirme

FPGA DONANIMI Programlanabilir Mantık Devreleri, mantık kapılarının ve flip- flopların birbirlerine bağlanmasıyla oluşturulan devreler şeklinde tanımlanabilir. Sahada Programlanabilir Kapı Dizileri (FPGA – field programmable gate arrays) de bu alanda üretilmiş olan donanımlardan biridir. FPGA, üretimden sonra istenilen fonksiyona göre, donanım yapısı kullanıcı tarafından değiştirilebilen entegre devre olarak tanımlanır.

FPGA ÖZELLİKLERİ FPGA devrelerinin hızlı işlem yapabilme, içine çoğullayıcı gömülebilme, aritmetik işlemleri başarıyla gerçekleştirebilme gibi özellikleri ve paralel işlem yapabilme yeteneği vardır. Donanım üzerinde çok sayıda giriş-çıkış birimi mevcuttur. USB bağlantısı, RS232 girişi, VGA çıkışı, Switch ve Key anahtarları, kırmızı ve yeşil LED’ler, SRAM ve SDRAM hafıza kartları, saat üretici vb. bu birimlerden bazılarıdır.

NEDEN FPGA? Gömülü sistemlerde sistem mimarisi bakımından çeşitli alternatifler mevcuttur. Bunlar standart ASIC’ler, DSP’ler veya FPGA’ler gibi programlanabilir çözümlerdir. Yüksek performans, hızlı işlem yapabilme, esnek programlanabilme, zahmetsiz güncelleme, düşük bakım maliyeti, güvenirlilik, düşük geliştirme maliyeti, zamanında pazara çıkabilme ve üretim adedi arttıkça düşük maliyete geçebilme yeteneği gibi özellikler ideal mimaride olması beklenen özelliklerdir.

NEDEN FPGA? Yüksek hız için gerekli olan yüksek veri boyutu, yüksek performans ve esnek programlanabilme özellikleri FPGA’lerde mevcuttur. Yüksek hızlı sinyal işleme uygulamaları genellikle sayısal sinyal işleyici (DSP) kullanılarak gerçeklenmektedir. Fakat FPGA devrelerinin aynı işlemi daha hızlı yapabilme yeteneği nedeniyle günümüzde FPGA kullanımı artmaya başlamıştır.

NEDEN FPGA?

YAZILIM FPGA’lerde algoritmaları oluşturmak için kullanılan programlama dillerine genel olarak “donanım tanımlama dili” denir. Donanım tanımlama dilleri FPGA’de bulunan mantıksal blokların ve ara bağlantı anahtarlarının uygun şekilde programlanmasında kullanılır. En sık kullanılan diller VHDL ve VERILOG programlama dilleridir.

VERILOG Verilog tasarımında modüller vardır ve bu modüller arasında bir hiyerarşi bulunur. Modüller bir takım giriş, çıkış ve çift yönlü portlar şeklinde tanımlanır. Bir modül içinde yazmaç (register) ve kablo (wire) listesi bulunur. Ardışık ifadeler bir begin/end bloğuna konur ve blokla beraber ardışık olarak yürütülür. Tüm eş zamanlı ifadeler ve begin/end blokları koşut olarak yürütülür.

QUARTUS II Altera firmasının üretmiş olduğu Fpga platformu ile uygulama gerçekleştirmek için, Quartus II yazılımı kullanılır. Quartus II yazılımı tamamen entegre bir yazılım geliştirme ortamıdır. Mantık kapıları tasarımı, devre dizaynı ve simulasyonu, HDL kodunun derlenmesi gibi işlemlerin gerçekleştirilmesini sağlar.

QUARTUS II

QUARTUS II

ALTERA DE2 FPGA FPGA üretiminde söz sahibi olan firmalar Xilinx ve Altera firmalarıdır. Bu iki firmanın ürettiği çok çeşitli FPGA platformları vardır. Platformların farklılığını belirleyen temel etmenler; hız, mantıksal blok sayısı, giriş-çıkış pinlerinin sayısı gibi donanımın sahip olduğu özelliklerdir.

ALTERA DE2 FPGA

ALTERA DE2 FPGA FPGA donanımında bulunan giriş ve çıkış birimleri şunlardır; -Dahili Fpga için USB Blaster yapılanması -Mikrofon girişi -Ses çıkışı -Video girişi -Video çıkışı -RS-232 birimi

ALTERA DE2 FPGA -Ethernet bağlantısı -PS/2 Mouse ve klavye bağlantı noktaları -SDRAM -SRAM -Anahtarlar -Saatler -18 adet kırmızı, 9 adet yeşil LED’ler -27 MHz ve 50 MHz osilatörler

CYCLONE II KART

VGA KONTROLÜ Video Grafik Dizisi bilgisayarlardaki analog görüntü standartı ile 15 pin D-sub konektörü veya 640x480 çözünürlüğün kendisini ifade eder. İlk defa 1988 yılında IBM tarafından piyasaya sürülmüştür. VGA iletiminde 5 farklı sinyal kullanılır. Bunlar; horizontal sync: Satır eşlemesini sağlayan dijital sinyal vertical sync: Kare eşlemesini sağlayan dijital sinyal red(R): Kırmızı renk bilgisini taşıyan analog sinyal green(G): Yeşil renk bilgisini taşıyan analog sinyal blue(B): Mavi renk bilgisini taşıyan analog sinyaldir

VGA KONTROLÜ // Yatay Senkronizasyon Parametreleri parameter H_SYNC_CYC = 95; parameter H_SYNC_BACK = 65; parameter H_SYNC_ACT = 640; // Yatay olarak 640 piksel parameter H_SYNC_FRONT = 0; parameter H_SYNC_MAX = 799;   // Düşey Senkronizasyon Parametreleri parameter V_SYNC_CYC = 2; parameter V_SYNC_BACK = 33; parameter V_SYNC_ACT = 480; // Düşey olarak 480 piksel parameter V_SYNC_FRONT = 10; parameter V_SYNC_MAX = 524; //

ALGORİTMA: ELMAS-KARE ALGORİTMASI Uçuş simülasyonlarında, bilgisayar grafik ve oyunlarının oluşturulmasında, animasyon filmlerinde ve daha birçok alanda, doğada var olan şekillerin gerçektekine benzer görüntülerinin oluşturulmasına ihtiyaç duyulur. Bu görüntülerin elde edilmesi için, yükseklik ve doku eşlemelerinin gerçekleştirilmesi gereklidir. Yükseklik eşlemeleri, yükseklik ile ilgili verileri içerir. Doku eşlemeleri ise; bir, iki veya üç boyutlu matris olarak düzenlenen renk değerlerini içerir.

ELMAS-KARE ALGORİTMASI .

ELMAS-KARE ALGORİTMASI

ELMAS-KARE ALGORİTMASI Örneğin; başlangıçta 4 köşesine yerleştirilen yükseklik değerleri aşağıdaki gibi olan bir karenin, önce elmas şekline dönüşmesi ve daha sonra dört adet küçük kareye dönüşmesi neticesinde meydana gelen yeni değerler şekilde verilmiştir. Bu işlemin bir sonraki tekrarı için, merkezde oluşan 3.5 birim miktarındaki yüksekliğe rastgele bir değer eklenir.

ELMAS-KARE ALGORİTMASI Birinci elmas-kare dönüşümünden sonra elde edilen 9 noktanın birbirlerine bağlanması ile Şekildeki gibi bir yüzey şekli elde edilebilir.

ELMAS-KARE ALGORİTMASI İkinci tekrarlamadan sonra gerçekleşen elmas-kare dönüşümü ile 16 küçük kare ve 25 nokta oluşur. Bu noktaların birleştirilmesiyle elde edilebilecek yüzey şekli ise Şekilde görülmektedir

ELMAS-KARE ALGORİTMASI Bu işlemler tekrar edilmeye devam edilirse elde edilen şeklin yoğunluğu artmış olur. Örneğin, 5. tekrarlamadan sonra Şekil’deki gibi bir yüzey elde edilebilir. Sonuç olarak yükseklik değerlerinin ataması yapılmış bir şekil elde edilmiştir.

ELMAS-KARE ALGORİTMASI Yüzey şekli oluşturulduktan sonra doku eşlemi gerçekleştirilir. Oluşturulan şeklin yeşil renk ile renklendirilmesi yapıldıktan sonra aşağıdaki şekillerde verilen görüntüler meydana gelir.

UYGULAMA: Dağ, ova, göl ve vadi gibi farklı coğrafik şekiller, aynı resim içinde gerçek zamanlı olarak üretilmiştir. Elmas-kare algoritmasının kullanıldığı bu uygulamada, 4 farklı yükseklik ve renk değeri kullanılarak şekillerin gerçektekine benzer görüntülerinin oluşturulması sağlanmıştır. Uygulama Verilog programlama dili kullanılmış ve FPGA platformunda bulunan VGA çıkış birimi aracılığı ile görüntüler ekrana aktarılmıştır.

UYGULAMA: .

GÖRÜNTÜ NETLEŞTİRME Görüntüdeki gürültünün yani bozucu etkinin yok edilmesi veya indirgenmesinde görüntü yumuşatma ve iyileştirme operatörleri kullanılır. Bir resim üzerinde düzleştirme ve iyileştirme işleminin yapılmasında kullanılan en önemli teknik filtreleme tekniğidir.

GÖRÜNTÜ NETLEŞTİRME Highpass filtresi, Gauss filtresi, Sinc filtresi, Sobel operatörü filtresi, Laplace filtresi gibi filtre çeşitleri vardır. Bu filtrelerden Gauss filtresi blur efektini artırır ve görüntüyü yumuşatır.

GAUSS FİLTRESİ Resimler Gauss filtre aracılığıyla yumuşutalarak pürüzsüz hale getirilebilir. 3 satır ve 3 sütundan oluşan Gauss Kernel filtresi Şekil’deki matris gibidir.

GÖRÜNTÜ NETLEŞTİRME Gauss filtre matrisi kulanarak, uygulama 2’de elde edilen görüntü üzerinde ‘görüntü netleştirme’ işlemi gerçekleştirme uygulaması...

UYGULAMA: GÖRÜNTÜ NETLEŞTİRME .

2 BOYUTLU RESMİN 3 BOYUTLU ŞEKİLDE GÖRÜNTÜLENMESİ Uygulama 1’de oluşturulup, uygulama 2’de netleştirilen resim 2 boyutlu olarak görülmektedir. Bu görüntünün 3 boyutlu olarak görülmesi için X ekseni etrafında döndürülmesi gerekir. Başka bir ifadeyle; görüntü, manzara resminin üstten görüntüsüdür. Resim sadece x-y ekseni olarak yani en ve boy olarak görülmektedir. Yükseklik miktarı yani z ekseni görülmemektedir.

2 BOYUTLU RESMİN 3 BOYUTLU ŞEKİLDE GÖRÜNTÜLENMESİ Resmin x ekseni etrafında belli açı değerleri ile döndürülmesi neticesinde, görüntünün en-boy-yükseklik özellikleri net bir şekilde görülür.

2 BOYUTLU RESMİN 3 BOYUTLU ŞEKİLDE GÖRÜNTÜLENMESİ Bir görüntünün X ekseni, Y ekseni ve Z ekseni etrafında döndürülmesi için gerekli döndürme matrisleri sırasıyla aşağıdaki gibidir:

2 BOYUTLU RESMİN 3 BOYUTLU ŞEKİLDE GÖRÜNTÜLENMESİ Uygulama 1’de elde edilen manzara resminde ‘x’ ve ‘y’ piksel değerini, ‘z’ ise yükseklik değerini gösteriyor olsun. Bu değerleri ifade eden matris A matrisi olarak isimlendirilir ise; matrisin değeri aşağıdaki gibi ifade edilebilir.

2 BOYUTLU RESMİN 3 BOYUTLU ŞEKİLDE GÖRÜNTÜLENMESİ Resmi X ekseni etrafında döndürmek istediğimiz için Rx(θ) matrisi ile A matrisi çarpılır. Bu işlem neticesinde x sabit kalırken, y ve z değişime uğrar. Fakat z değerinin yani yükseklik değerinin değişmesine gerek duyulmadığından, işlemlere z değeri değiştirilmeden devam edilir.

2 BOYUTLU RESMİN 3 BOYUTLU ŞEKİLDE GÖRÜNTÜLENMESİ Değişim neticesinde oluşması gereken yeni y değeri; yyeni = y*cos(θ) - z*sin(θ) olur. Açı değerlerine göre sinüs ve kosinüs fonksiyonlarının değerinin ne olacağı, yazılan programda alt modüller içerisinde belirtilmiştir.

UYGULAMA: İKİ BOYUTLU RESMİN ÜÇ BOYUTLU OLARAK GÖRÜNTÜLENMESİ Elde edilen ve Gauss filtresi ile pürüzsüz hale getirilen resmi 3 boyutlu olarak görüntüleme uygulaması. Uygulamada ‘Rotation Matrix’ kullanılmıştır.

UYGULAMA: İKİ BOYUTLU RESMİN ÜÇ BOYUTLU OLARAK GÖRÜNTÜLENMESİ

. .