OpenCV ile Kamera Kalibrasyonu



Benzer belgeler
OpenCV ile Kamera Kalibrasyonu. Camera Calibration with OpenCV. Eser SERT 1, Deniz TAŞKIN 2, Cem TAŞKIN 3, Nurşen TOPÇUBAŞI 4, İrfan KÖPRÜCÜ 5

GörüntüĐşlemede Yeni Bir Soluk, OpenCV

AMAÇ Araçlardaki Kamera Sistemleri

Araç Destek Sistemleri İçin Kuş Bakışı Görüntü Dönüşümü. Bird s Eye View Transformation For Vehicle Assistance Systems

Araç Destek Sistemleri İçin Kuş Bakışı Görüntü Dönüşümü. Bird s Eye View Transformation For Vehicle Assistance Systems

Görüntü İşlemede Yeni Bir Soluk, OPENCV

Görüntüden OpenCV ile Duygu Analizi

Görüntü İşleme Teknikleri ile Elma Tanıma

Görüntüden OpenCV ile Duygu Analizi

FOTOGRAMETRİ KAMERA KALİBRASYONU ÖDEV YÖNERGESİ

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

Bilgisayarla Görüye Giriş

5 İki Boyutlu Algılayıcılar

Bilgisayarla Fotogrametrik Görme

Dijital (Sayısal) Fotogrametri

Öğr. Gör. Hakan YÜKSEL SÜLEYMAN DEMİREL ÜNİVERSİTESİ. Akademik Bilişim

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

Kan Damarı Genişliği Değişiminin Ölçülmesinde Medikal Görüntü İşlemenin Uygulanması

Dijital (Sayısal) Fotogrametri

Dijital Fotogrametri

Dijital (Sayısal) Fotogrametri

Bilgisayarla Görüye Giriş

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

İRİSTEN KİMLİK TANIMA SİSTEMİ

İçerik Fotogrametrik Üretim 2 Fotogrametri 2 Hava Fotogrametrisi...2 Fotogrametrik Nirengi 3 Ortofoto 4 Fotogrametrik İş Akışı 5 Sayısal Hava

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

POSITION DETERMINATION BY USING IMAGE PROCESSING METHOD IN INVERTED PENDULUM

İ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

Yüz Tanımaya Dayalı Uygulamalar. (Özet)

Görüntü Đşlemede Yeni Bir Soluk, OPENCV

HAVADAN LAZER TARAMA ve SAYISAL GÖRÜNTÜ VERİLERİNDEN BİNA TESPİTİ VE ÇATILARIN 3 BOYUTLU MODELLENMESİ

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

R ile Programlamaya Giriş ve Uygulamalar

Robot İzleme (Robot Tracing)

CCD KAMERA KULLANARAK SAYISAL GÖRÜNTÜ İŞLEME YOLUYLA GERÇEK ZAMANLI GÜVENLİK UYGULAMASI

Bilgisayarla Görme (EE 430) Ders Detayları

KAMERALI GÖRSEL BOYUT ÖLÇME OTOMASYONU 1

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Bölüm 7 Renkli Görüntü İşleme

Teknik Özellik Listesi

SU ÜRÜNLERİNİN KALİTE DEĞERLENDİRMESİNDE BİLGİSAYARLI RESİM ANALİZİNİN KULLANIMI YRD. DOÇ. DR. MUTLU ÇELİK KOCAELİ ÜNİVERSİTESİ

İÇİNDEKİLER. BÖLÜM 1 Değişkenler ve Grafikler 1. BÖLÜM 2 Frekans Dağılımları 37

Görüntü İşleme. K.Sinan YILDIRIM Cenk İNCE Tahir Emre KALAYCI. Ege Üniversitesi Bilgisayar Mühendisliği Bölümü 2003

Fotogrametrinin Optik ve Matematik Temelleri

Görüntü İşlemeye Giriş Introduction to Image Processing. Doç. Dr. Aybars UĞUR

Hafta 2 Görüntünün Alınması ve Sayısallaştırılması

Görüntü İşleme. Dijital Görüntü Tanımları. Dijital görüntü ise sayısal değerlerden oluşur.

Yrd. Doç. Dr. Aycan M. MARANGOZ. BEÜ MÜHENDİSLİK FAKÜLTESİ GEOMATİK MÜHENDİSLİĞİ BÖLÜMÜ JDF329 FOTOGRAMETRİ I DERSi NOTLARI

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

Eski Yunanca'dan batı dillerine giren Fotogrametri sözcüğü 3 kök sözcükten oluşur. Photos(ışık) + Grama(çizim) + Metron(ölçme)

Yrd. Doç. Dr. Aycan M. MARANGOZ. BEÜ MÜHENDİSLİK FAKÜLTESİ GEOMATİK MÜHENDİSLİĞİ BÖLÜMÜ JDF329 FOTOGRAMETRİ I DERSi NOTLARI

BİYOMETRİK İRİS SINIFLANDIRMA SİSTEMLERİ

Dijital Görüntü İşleme Teknikleri

Sistem Temel. Genel Fonksiyonlar. Sistemleri. Tam Adaptif Trafik Kontrol Sistemi ( j\iti'1)

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

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Uzaktan Algılama Uygulamaları

LED IŞIK KAYNAKLARININ RENK SICAKLIĞININ GÖRÜNTÜ İŞLEME TEKNİKLERİ KULLANILARAK BELİRLENMESİ. İsmail Serkan Üncü, İsmail Taşcı

Doç. Dr. Bahadır ERGÜN MİM 466

Yrd. Doç. Dr. Aycan M. MARANGOZ. BEÜ MÜHENDİSLİK FAKÜLTESİ GEOMATİK MÜHENDİSLİĞİ BÖLÜMÜ JDF336 FOTOGRAMETRİ II DERSi NOTLARI

Çok Noktadan Otomatik Odaklama Kontrollü Sayısal Mikroskop. Multipoint Auto Focus Controlled Digital Microscope

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

SBE16 / Akıllı Metropoller Ekim 2016 / İSTANBUL

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU

Webcam ile Kullanıcıların Sayfa Odaklanma Noktalarının Tespiti. The Determination of Users Focus Points of Through the Webcam

T.C. İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ BİLİMSEL ARAŞTIRMA PROJELERİ KOORDİNASYON BİRİMİ

Bazı Gömülü Sistemlerde OpenCV ile Performans Analizi

GÖRÜNTÜSÜ ALINAN BİR NESNENİN REFERANS BİR NESNE YARDIMIYLA BOYUTLARININ, ALANININ VE AÇISININ HESAPLANMASI ÖZET ABSTRACT

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

Öğrenme ve Öğretmenin Genişletilmiş Gerçeklik ile Zenginleştirilmesi: OptikAR. Yasin ÖZARSLAN Eskişehir Osmangazi Üniversitesi

Ormancılıkta Uzaktan Algılama. 4.Hafta (02-06 Mart 2015)

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İ

INTERNET ARACILIĞIYLA UZAK BİRİMDEKİ DSP KİTİNE VERİ İLETİMİ

Makine Elemanları I. Toleranslar. Prof. Dr. İrfan KAYMAZ. Erzurum Teknik Üniversitesi. Mühendislik Fakültesi Makine Mühendisliği Bölümü

Testo Teknik Bilgi Sayfaları: Araştırma ve Geliştirme uygulamalarında testo 885/testo 890 termal kameralar

1 PROGRAMLAMAYA GİRİŞ

Hareket Eden Renkli Nesnelerin Takibinin PID ile Gerçekleştirilmesi

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#3: ALGORİTMA ANALİZİ#2

CAEeda TM OM6 KANADI MODELLEME. EDA Tasarım Analiz Mühendislik

GÖRÜNTÜ İŞLEME HAFTA 1 1.GİRİŞ

4. Bölüm Programlamaya Giriş

TC KOCAELİ ÜNİVERSİTESİ AR-GE LABORATUVARI DESTEKLEME PROGRAMI PROJELERİ PROJE SONUÇ RAPORU,

MÜFREDAT DERS LİSTESİ

BİLGİSAYAR DESTEKLİ TASARIM (TEKNİK RESİM-II) Yrd.Doç.Dr. Muhammed Arslan OMAR

POPÜLER KAMERA KALİBRASYONU YAZILIMLARININ KARŞILAŞTIRILMASI

T.C NAMIK KEMAL ÜNİVERSİTESİ ÇORLU MÜHENDİSLİK FAKÜLTESİ YÜZ TANIMA SİSTEMİ BİLGİSAYAR MÜHENDİSLİĞİ DANIŞMAN: YRD.DOÇ.DR.

Hafta 1 Sayısal Görüntü İşlemeye Giriş ve Temel Adımlar

RENK BİLEŞENLERİ YARDIMIYLA HAREKETLİ HEDEFLERİN GERÇEK ZAMANLI TESPİTİ

Uzaktan Alg ılamaya Giriş Ünite 6 - Görüntü O t r orektifikasyonu

H a t ı r l a t m a : Şimdiye dek bilmeniz gerekenler: 1. Maxwell denklemleri, elektromanyetik dalgalar ve ışık

Bilgisayarın Kullanım Alanları Nelerdir?

CAEeda TM GENEL TANITIM. EDA Tasarım Analiz Mühendislik

KENDĐ KENDĐNE YOL BULAN ARAÇ

Bölüm-4. İki Boyutta Hareket

Sık Kullanılan Kamera Kalibrasyonu Yazılımlarının Karşılaştırılması. Comparison of Commonly Used Camera Calibration Software

Yrd. Doç. Dr. Caner ÖZCAN

TÜRK İŞARET DİLİ TANIMA SİSTEMİ ( TURKISH SIGN LANGUAGE RECOGNITION SYSTEM )

GEOMETRİK, MATEMATİK, OPTİK ve FOTOĞRAFİK TEMELLER (HATIRLATMA) Yrd. Doç. Dr. Aycan M. MARANGOZ

Transkript:

OpenCV ile Kamera Kalibrasyonu Eser Sert 1, Deniz Taşkın 2, Cem Taşkın 3, Nurşen Topçubaşı 4, İrfan Köprücü 2 1 Trakya Üniversitesi, Teknik Bilimler Meslek Yüksek Okulu, Edirne 2 Trakya Üniversitesi, Bilgisayar Mühendisliği Bölümü, Edirne 3 Trakya Üniversitesi, Tunca Meslek Yüksek Okulu, Edirne 4 Okan Üniversitesi, Uygulamalı Bil. Yüksekokulu, Bilişim Sist. ve Tek. Bölümü, İstanbul esersert@trakya.edu.tr, deniztaskin @trakya.edu.tr, cemtaskin@trakya.edu.tr, nursen.sucsuz@okan.edu.tr, irfankoprucu@gmail.com Özet: Sayısal görüntü işleme ve analizinde kullanılan temel elemanlardan birisi kameradır. Kamera kullanılarak elde edilen resim ya da videolar üzerinde sayısal görüntü işleme ve analiz teknikleri kullanılarak çıkarımlar yapılabilmektedir. Birçok araştırmacı kameradan alınan görüntülerin kesin doğrulukta olduğunu varsaymaktadır. Fakat hassas ölçümler gerektiren uygulamalar, kameradan elde edilen görüntülerin hataları olduğunu göstermektedir. Fotoğraf ya da videoların üzerinde doğru analizler yapabilmek için kamera mutlaka kalibre edilmelidir. Bu çalışmada, kamera kalibrasyonunu gerçekleştirmek için OpenCV kütüphanesinin kullanımı anlatılmaktadır. OpenCV, Intel tarafından geliştirilmiş, açık kaynak kodlu Bilgisayarla Görü kütüphanesidir. Bu kütüphane yardımı ile görüntünün üzerinde gerekli işlemler yapılarak kalibrasyon süreci tamamlanmakta ve düzeltilmiş görüntü elde edilmektedir. Keywords: Görüntü İşleme, Kalibrasyon, OpenCV Camera Calibration with OpenCV Abstract: One of the basic elements used in the analysis and for digital image processing is camera. The inference can be done by using analyzing technics and digital image processing on videos or pictures taken by camera. Many researchers assume that the images taken by cameras are in definite accuracy. However, applications which require accurate measurements show that the images obtained from the camera are mistaken. The camera must be calibrated to make the right analysis on photographs or videos. In this study, the usage of OpenCV library is described for performing the camera calibration. By the help of this library, the calibration process is completed by doing necessary processes over the image and the corrected image is obtained. Keywords: Image Processing, Calibration, OpenCV 1. Giriş 225 Görüntü analizi ise, yapılan işlemler sonucunda yeni bir görüntü elde edilmeden, görüntüye ait sınıflandırmalar veya ölçümler yapılıyor olması, görüntüyle ilgili istatistikler üretilmesidir. Görüntü analizinde nesnelere ait parametrelerin (şekil, uzunluk, alan, açı, gri-ton ve renk değerleri vb.) ölçülmesi söz konusudur [4]. İşlenmemiş görüntülerde, görüntü alma aşmasında genellikle değişik nedenlerden dolayı bazı bozulmalar, özelliklede geometrik bozulmalar oluşabilmektedir. Görüntü üzerinde ana-

OpenCV ile Kamera Kalibrasyonu Eser Sert, Deniz Taşkın, Cem Taşkın, Nurşen Topçubaşı, İrfan Köprücü lizler yapılmadan önce kamera kalibrasyonu gerekmektedir [4]. 2. OPENCV OpenCV, bir resim ya da video içindeki anlamlı bilgileri çıkarıp işleyebilmek için INTEL tarafından C ve C++ dilleri kullanılarak geliştirilmiş, açık kaynak kodlu bir Bilgisayarla Görü kütüphanesidir [2]. Intel tarafından geliştirilmiş olan OpenCV Kütüphanesi gerçek zamanlı uygulamalarda hızlı ve başarılı sonuçlar vermektedir. Farklı bilgisayarlarda ve gömülü sistemlerde çalıştırılabilmesinden dolayı endüstride de kullanımı yaygınlaşmaktadır. 3. Kalibrasyonun Temelleri Kamera kalibrasyonu, dış faktörler dolayısı ile bozulmuş olan görüntünün düzeltilerek görüntü işlemeye hazır hale getirilmesi işlemidir. Kalibre edilmemiş bir kamera ile gerçekleştirilen görüntü işleme ve görüntü analiz aşamalan hata içermektedir. Şekil 2 de kalibre edilmemiş ve kalibre edilmiş kameradan alınan görüntüler verilmiştir. Şekil 1. OpenCV Bileşenleri Bu çalışmada OpenCV Kütüphanesi kullanarak kameranın kalibrasyonu OpenCV kütüphanesinin temel bileşenleri Şekil 1 de görülmektedir [1]. Bu bileşenler: CV (Computer Vision): Resim işleme ve analizi için güçlü fonksiyonlar içeren bileşen olup, görsel işlemler için gelişmiş algoritmalar içermektedir. MLL (Machine Learning Library) Makine öğrenmesi için istatistiksel sınıflayıcı ve kümeleme araçlarım içeren bir bileşendir. HighGui: Form gibi bileşenleri oluşturmak için grafik arabirimidir. Aynı zamanda resim ve videolan görüntülemek için giriş/çıkış fonksiyonlarım içeren kütüphanedir. CxCore: OpenCV de bulunan cvpoint, cvsize, cvmat, cvhistogram gibi veri yapılarını içerisinde bulunduran kütüphanedir. Aym zamanda XML desteği de sağlanmaktadır. Bunlara ek olarak OpenCV de yüz tanıma, kalibrasyon, nesne tanıma gibi işlemler için birçok algoritma geliştirilmiştir [2][5][7]. 226 Işınları yansıtmanın basit geometrisini incelemek için iğne delikli kamera modelini ele alınacaktır. Kamerada tek bir noktadan ışınları toplamak için lens kullanılmaktadır. Lensin ışık toplamaktaki problemleri ve bozulmalarından dolayı kameralarda elde edilen görüntüler hatalara açıktır. Kameralarda kullanılan lensin dezavantajları ve iğne delikli kamera modelleri için sapma gibi faktörler de göz önünde bulundurularak kamera kalibrasyonu yapılmalıdır. Böylece kameradan elde edilen görüntü gerçek dünyadakine en yakın seviyede olacaktır. Kameranın davranışlarını anlayabilmek ve lens bozukluklarının analiz etmek için matematiksel araçlarla inceleme gerçekleştirilmektedir. Dolayısıyla, kameranın öğeleri (pikselleri) ve fiziksel dünyanın öğeleri (metre) modellemek için görüntü matris ve vektörlerinden yararlanılmaktadır. Böylece kameradan çekilen görüntüyle gerçek görüntü arasında daha tutarlı karşılaştırma gerçekleştirilir[1][5]. 4. Kamera Modeli Görme olayı ışıkla gerçekleşmektedir. Işık, güneş lamba, fener gibi bazı kaynaklardan elde edilir, sonra bir nesneye çarpana kadar yol alır.

Bir nesneye çarptığında emilir ve yansır. Işık dalga boylarına bağlı olarak renk olarak algılanmaktadır. Objelerden ışınların geçişi sayesinde oluşturduğu hayali görüntü, kamera, göz retinası ve pratik bilgisayar görüntüleyicileri tarafından algılanmaktadır. Basit bir kamera modeli incelendiğinde kameranın, uzak obje veya sahneleri görme özelliğine sahip olduğu görülmektedir. Odaklama ve uzak nesnelerin mesafesi, kameranın parametreleri ile ilgilidir. Şekil 3 de görüldüğü gibi f kameranın odak uzaklığı, Z nesneye kameradan uzaklık, X objenin uzunluğu ve x görüntü düzlemi üzerinde objenin görüntüsüdür. Resimde, üçgen x/f = X/Z, olarak ifade edilmektedir. Optik eksen mesafelerine göre X, x değişmektedir[1]. a) Lens bozukluğuna sahip görüntü b) Lens bozukluğu giderilmiş görüntü Şekil 2. Lens bozukluğunun giderilmesi Resim düzlemi ve optik eksenin kesişimi şekil 4 de görülmektedir. Uzak objelerin resim boyutları gerekli hesaplamalar yapıldıktan sonra bulunabilmektedir. Bu hesaplamalarda x/ f=x/z ilişkisi kullanılmaktadır. Şekil 3. İğne delikli kamera modeli 227 Gerçek dünyada Q=(X,Y,Z) noktası olarak ifade edilebilecek bir nokta, iz düşüm merkezinden geçen ışın aracılığıyla resim düzlemine yansıtılmaktadır. Bu nokta ise q=(x,y,f) olarak resim düzleminde ifade edilebilmektedir [1].

OpenCV ile Kamera Kalibrasyonu Eser Sert, Deniz Taşkın, Cem Taşkın, Nurşen Topçubaşı, İrfan Köprücü Şekil 4. Resim Düzlemi, eksen merkezi ilişkisi Şekil 5. Kalibrasyon parametrelerinin elde edilmesi ve düzeltilmiş resmin görüntülenmesi için akış şeması 228

5. Kalibrasyon Süreci Kalibrasyon işlemi için nitelendirilebilir bir nesne seçilmelidir. OpenCV bu işlem işçin düzlemsel zeminli nesneler kullanmaktadır. Satranç tahtası bu işlem için idealdir bir nesnedir. Literatürde bazı kalibrasyon metotları üç boyutlu nesneleri kullanmaktadır fakat iki boyutlu bir satranç tahtası bu işlemi yapmak için çok daha pratiktir. Kalibrasyon işleminin akış diyagramı şekil 5 de görülmektedir [1]. Kalibrasyon süreci aynntılı olarak incelendiğinde aşağıdaki 6 temel işlemin olduğu görülmektedir. 1. Satranç tahtası resmini al 2. Satranç tahtası kesişim noktalarını bul 3. Kesişim noktalarını say 4. Kesişim noktalarını göster 5. Kamerayı kalibre et 6. Düzeltilmiş görüntüyü göster Bu işlemlerin aşamaları ayrıntılı olarak incelenmiştir. A. Satranç Tahtası Resmini Al Aşağıdaki komut kullanılarak kameradan satranç tahtası resmi alınır. CvCapture* capture = cvcreatecameracapture(o); Şekil 6. Satranç tahtasının fotoğrafının çekilmesi B. Satranç Tahtası Kesişim Noktalarını Bul Verilen bir satranç tahtasının görüntüsünde, satranç tahtasının köşelerinin konumları için cvfindchessboardcorners() OpenCV fonksiyonu kullanılmaktadır. C. Kesişim Noktalarını Say İkinci argüman, pattern_size, tahtanın her bir satır ve her bir sütunda kaç köşe olduğunu göstermektedir. Fonksiyon dahili köşelerin sayısını göstermektedir; bu yüzden standart bir oyun tahtası için değerleri belirlemektedir. cvsize(7,7) Sonraki argüman, corners, köşe konumlarını kaydedebilen bir diziye bir işaretçidir. Bu dizi ön tahsisli olmalıdır ve elbette tahtanın üzerinde tüm köşeler için yeterince büyük olmak zorundadır. Bireysel değerler piksel koordinatları içinde köşelerin konumlarıdır. Corner_count argümanı seçime bağlıdır; non_ NULL ise, köşelerin sayısı kaydedilebildiyse bir integer bir işaretçidir. Fonksiyon hatalıysa, 0 geri dönecektir. Bitiş flags argümanı satranç tahtası üzerinde köşe bulmaya yardım için ek filtre işlemi yapmaktadır. Argümanların herhangi birini veya tümünü birleştirmek için OR işlemi kullanılmaktadır. D. Satranç Tahtası Köşelerinin Çizimi Satranç tahtası üzerindeki köşelerin çizdirilmesi çoğu zaman istenmektedir; bu yolla gözlenmiş olan köşelerle bilgisayar tarafından belirlenmiş olan köşelerin eşleşip eşlenmediği belirlenebilmektedir. OpenCV yazılımı ile uygun rutinlerle bu işlem gerçekleştirilebilmektedir. Kalibrasyon süreci devam ettiği şekil 6 da görüldüğü [1] gibi farklı açılardan yeni resimler alınır. Alınacak resimlerin sayısı lens bozukluğunu giderecek sayıda olmalıdır. 229 cvdrawchessboardcorners() fonksiyonu resim üzerinde cvfindchessboardcorners() aracılığıyla bulunan köşeleri çizer. Köşelerin tümü bulunamazsa mevcut köşeler küçük kırmızı hat-

OpenCV ile Kamera Kalibrasyonu Eser Sert, Deniz Taşkın, Cem Taşkın, Nurşen Topçubaşı, İrfan Köprücü larla temsil edilecektir. Tüm desen bulunduğunda köşeler farklı renklerle gösterilmektedir [1]. void cvdrawchessboardcorners( CvArr* image, CvSize pattern size, CvPoint2D32f* corners, int count, int pattern_wasfound ); cvdrawchessboardcorners() fonksiyonuna gönderilen ilk argüman çizimi yapılacak olan resimdir. Köşeler renkli halkalarla temsil edilecektir, bu 8- bit renkli resim olmalıdır; çoğu durumda cvfindchessboard- Corners() fonksiyonuna resimlerin bir kopyası gönderilmektedir[3]. Sonraki iki argüman patternsize ve corners, cvfindchessboardcorners() fonksiyonu için tanımlanan argümanlardır. Argüman count köşelerin sayısına eşit bir tamsayıdır. pattern_was_ found argüman ı tüm satranç tahtası deseninin başarıyla bulunup bulunmadığını göstermektedir. Şekil 7 de cvdrawchessboardcorners() fonksiyonunun bir satranç tahtasına uygulandıktan sonra elde edilen sonuç görülmektedir. çok köşeye sahip olduğu durumlarda cvcalibratecamera2() fonksiyonu kullanılmaktadır. Kalibrasyon fonksi yonlarının yürütülmesi aşamasında satranç tahtasının görüntüsü üzerinde gerekli parametrik hesaplamalar yürütülmektedir. OpenCV cvcalibratecamera2 fonksiyonu gerekli işlemleri gerçekleştirerek kalibrasyon için gerekli sayısal değerleri vermektedir. Kameranın gerçek matris değerlerini, bozulma katsayısını, dönüş ve çevrim vektörlerini üretmektedir. Bozulma katsayıları (ki, k2, p1, p2 ve k3) radyal ve teğetsel bozulma eşitliklerindeki katsayılardır. Kameranın gerçek parametreleri en sonunda elde edilmektedir[1]. void cvcalibratecamera2( CvMat* object_points, CvMat* image_points, int* pointcounts, CvSize imagesize, CvMat* intrinsicmatrix, CvMat* distortion coeffs, CvMat* rotationvectors = NULL, CvMat* translation_vectors = NULL, int flags = 0 ); F. Düzeltilmiş Görüntüyü Göster Programın ürettiği düzeltilmiş görüntünün gösterilmesi işlemi bu aşamada yürütmektedir. cvshowimage( Ham resim, image ) komut satırı ile işlenmemiş görüntü, Şekil 7. Satranç tahtası resmine cvdrawchessboardcorners() fonksiyonunun uygulanışı E. Kamerayı Kalibre Et Kalibrasyon işlemi yapılacak nesnenin birden 230 cvshowimage( Düzeltilmiş, image ) satırı ile de düzeltilmiş görüntü şekil 8 de görüldüğü gibi ekrana getirilmektedir. while( image ){ IplImage *t = cvcloneimage( image ); cvshowimage( Ham resim, image ); // Ham resmi göster cvremap( t, image, mapx, mapy); //Resmi düzelt cvreleaseimage( &t );

cvshowimage( Düzeltilmiş, image); //Düzeltilmiş resmi göster int c = cvwaitkey( 15 ); if( c == p ){ c = 0; while(c!= p && c!= 27){ c = cvwaitkey( 250 ); } a) Ham görüntü b) Düzeltilmiş görüntü Şekil 8. Program sonuç görüntüleri 6. Sonuçlar Bu çalışmada temel düzeyde OpenCV kütüphanesi, kamera modeli, kamera kalibrasyonu konuları açıklanmıştır. Kalibrasyon için 2D koordinatlara sahip ve özellikleri bilinen satranç tahtası tercih edilmiştir. OpenCV kütüphanesinin sağladığı yardımcı fonksiyonlar kullanılarak, kalibrasyon süreci konusunda bahsedilen işlemler gerçekleştirilmiştir. Bu işlemler sonucunda kalibrasyon parametreleri elde edilmiştir. Bu parametreler ile kamera kullanılarak kaydedilen görüntüler düzeltilmiştir. Düzeltilmiş görüntülerin gerçek dünyadaki nesnelere en yakın düzeye olduklan görülmektedir. 7. Kaynaklar [1] Bradski, G. and Kaehler, A., Learning OpenCV: Computer Vision with the OpenCV Library, O Reilly Media, USA, (2008). [2] Erişti, E, 2010, Görüntü İşlemede Yeni Bir Soluk, OPENCV, Akademik Bilişim, (2010). [3] OpenCV Reference Manuals - HighGUI Reference Manual [4] Taşdemira, Ş., Ürkmez, A., Yakar, M., İnal Ş., Sayısal Görüntü Analiz İşleminde Kamera Kalibrasyon Parametrelerinin Belirlenmesi, 5.Uluslararası İleri Teknolojiler Sempozyumu (IATS 09) [5] Wang, Y.M., Li Y., Zheng, J.B., A Camera Calibration Technique Based On OpenCV, Information Sciences and Interaction Sciences (ICIS), 2010 3rd International Conference, China, 403-406 [6] Yıldırım, K.S., İnce, C., Kalaycı, T. E., Görüntü İşleme, Ege Üniversitesi (2003). [7] Yu, Q., Cheng, H. H., Cheng, W. W., Zhou X., Ch OpenCV for interactive open architecture computer vision, Advances in Engineering Software, 35: 527-536 (2004). 231