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

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

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

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üden OpenCV ile Duygu Analizi

Görüntüden OpenCV ile Duygu Analizi

OpenCV ile Kamera Kalibrasyonu

4. Bölüm Programlamaya Giriş

Android Platformunda OpenCV İle Görüntü İşleme

İMGE İŞLEME Ders-2. İmge Dosya Tipleri ve Temel İşlemler. (Yrd. Doç. Dr. M. Kemal GÜLLÜ)

Eln 1002 Bilgisayar Programlama II


Archive Player Divar Series. Kullanım kılavuzu

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

PROGRAMLAMAYA GİRİŞ DERS 2

C# nedir,.net Framework nedir?

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

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

İMGE İŞLEME Ders-2. İmgeler, Dosya Tipleri ve Temel İşlemler. (Prof. Dr. Sarp ERTÜRK)

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

DOSYA İŞLEMLERİ Programlama dilleri hafta -

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Bilgisayar Grafiğine Giriş Ders Notları


Android Ders Notları

Bilgisayar Sistemlerine Genel Bakış

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

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

R ile Programlamaya Giriş ve Uygulamalar

BİL 542 Paralel Hesaplama. Dersi Projesi. MPJ Express Java Paralel Programlama

Data Structures Lab Güz

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

İŞLETİM SİSTEMLERİ. İŞLETİM SİSTEMİ Kavramı. Klasör ve Dosya Mantığı. Klasör ve Dosya Mantığı

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

E-fatura Yenilikler. E-fatura uygulaması ile ilgili çeşitli yenilikler seti ile birlikte yayınlandı:

Türkçe. Giriş. Özelliklere Genel Bakış

Visual Basic. Dosya İşlemleri

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

BLM 111 Algoritma ve Programlama I Güz 2018

MENÜ AYARLAMA 1. MENÜ AYARLAMA. [X] [X] Standard. [X] [X] Yeni Fonksiyon

HSancak Nesne Tabanlı Programlama I Ders Notları

Kets DocPlace LOGO Entegrasyonu

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı

ALP OĞUZ ANADOLU LİSESİ EĞİTİM ÖĞRETİM YILI BİLGİSAYAR BİLİMİ DERSİ 2.DÖNEM 2.SINAV ÖNCESİ ÇALIŞMA SORULARI VE YANITLARI

2- Kontrol Sil En Öne Getir En Arkaya Gönder Resim Özellikler: Genel Özellikler...

Strings(Karakter Dizisi)

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

C Konsol ve Komut Satırı

Temel Bilgisayar Bilimleri Ders Notu #4-1. kısım

Ethercat 1S Servo Kütüphanesi

BİL-142 Bilgisayar Programlama II

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

Metin Dosyaları. Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü

Linux ve Windows Üzerinde C ve C++ Kullanımı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

Bilgisayarla Görme (EE 430) Ders Detayları

AKINSOFT CMS (İçerik Yönetim Sistemi)

SiberLojikCV Sayısal Görüntü İşleme Platformu

Kaynak Kodlardan Derleme. Turquaz Muhasebe. Versiyon 0.2. Hüseyin Ergün. 26 Mart 2005

Hazırlayan: Cihan Aygül BT Rehber ÖĞRETMENİ

NB Macro Kullanımı Hakkında Genel Bilgiler

C PROGRAMLAMA DİLİNE GİRİŞ

Yrd. Doç. Dr. Caner ÖZCAN

791. Linux Kullanıcıları Derneği Üyesi

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ

Spss 14 İçin İhtiyaç Duyulan Minimum Donanım Ve Yazılım Gereçleri; SPSS 14.0 programını License sunucusu üzerinden kurulumu:

Bilgisayar Yazılımları

1. Kurulum. Tam ekranda iken MENU tuşuna. Başlat sekmesine gelin ve sonra [ / ] basın ve menüye girin. [ / ]

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

ALGORİTMA VE PROGRAMLAMA II

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

DENEME SINAVI CEVAP ANAHTARI

. ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

ETA:MOBİL KURULUM TALİMATI

Tomcat Uygulama Sunucusunun Kurulumu. İlk olarak adresine gidiyoruz.

Java Temel Özellikleri

C# ile NJ Simulatöre Bağlanmak

İŞLEM COĞRAFİ BİLGİ SİSTEMLERİ MÜHENDİSLİK VE EĞİTİM LTD. ŞTİ. ArcGIS 10.1 Desktop Ücretsiz Deneme Lisanslaması

EASYTEST NETWORK YAZILIMI

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

1- adresine girilir. Buradan Adobe Photoshope 5.0 programı bilgisayara indirilip, kurulur.

Qt ile Bir Ağ Uygulaması

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR

AMAÇLAR: Boot CD/USB Bellek Oluşturmak, İmaj Almak, Driver Yüklemek, ÖDEV-1

Yrd. Doç. Dr. Caner ÖZCAN

OpenGL Uygulamaları. 1. Giriş. 2. OpenGL. Deney 2

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

ROKAY. Robot Operatör Kayıt Cihazı KULLANMA KILAVUZU V:1.0

Transkript:

Görüntü Đşlemede Yeni Bir Soluk, OPENCV Ezgi Erişti 1 1 Đstanbul Ticaret Üniversitesi, Bilgisayar Mühendisliği Bölümü, Đstanbul eeristi@iticu.edu.tr Özet: OpenCV, Intel tarafından geliştirilerek BSD lisansı ile lisanslanmış, Bilgisayarla Görü/Görme kütüphanesidir. Özellikle gerçek zamanlı uygulamalar hedef alınarak geliştirilmiş olması, ticari kullanımı dahil ücretsiz olması ve Windows, Linux, MacOS X gibi farklı platformlarda kullanılabilmesi bu kütüphaneyi diğer görüntü işleme araçlarından bir adım öne çıkarmaktadır. Anahtar Sözcükler: OpenCV, Görüntü Đşleme, Bilgisayarla Görü/Görme. A Novel Refreshment for Image Processing, OPENCV Abstract: OpenCV is a computer vision library which was developed by INTEL and released under a BSD license. Furthermore it was developed for real time computer vision applications and its free of charge usage is aimed for both academic and commercial clients. Featuring portability for different operating systems like Windows, Linux, MacOS X, OpenCV brings forward this library from other image processing tools. Keywords: OpenCV, Image Processing, Computer Vision. 1. Giriş 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örme kütüphanesidir. Şekil 1. OpenCV Bileşenleri[1] OpenCV kütüphanesi, beş temel bileşenden oluşmaktadır. Bu bileşenlerin dört tanesi Şekil 1 de görülmektedir [1]. Computer Vision (Bilgisayarla Görü/Görme) kelimesinin baş harfleri kullanılarak isimlendirilen CV bileşeni, temel resim işleme fonksiyonları ve Bilgisayarla Görü/Görme için kullanılan yüksek seviyeli algoritmaları bünyesinde barındıran beş temel kütüphaneden biridir. Machine Learning Library kelimesinin baş harfleri kullanılarak isimlendirilen MLL bileşeni, adından da anlaşılacağı üzere Makina Öğrenmesi dalı için gerekli istatistiksel verilere ulaşmak, mevcut verileri sınıflandırmak için kullanılan fonksiyonları/araçları içeren diğer bir kütüphanedir. HighGUI bileşeni, slider, form gibi OpenCV kütüphanesi içerisinde tanımlanmış pek çok nesneyi yaratabilmemizi sağlayan bir grafik arabirimi olmakla beraber, resim ve videoları kaydetmek, yüklemek, hafızadan silmek için gerekli giriş/çıkış (I/O) fonksiyonlarını da içerir [1].

CXCore bileşeni, OpenCV ye ait IplImage, cvpoint, cvsize, cvmat, cvhistogram...vs gibi veri yapılarını bünyesinde barındıran, XML desteği de sağlayan bir kütüphanedir. Son olarak CvAux bileşeni, şablon eşleştirme (template-matching), şekil eşleştirme (shape matching), bir objenin ana hatlarını bulma (finding skeletons), yüz tanıma (facerecognition), ağız hareketleri izleme (mouthtracking), vücut hareketlerini tanıma (gesture recognition) ve kamera kalibrasyonu gibi daha pek çok deneysel algoritmaları bünyesinde barındıran kütüphanedir [1]. OpenCV kütüphanesi, BSD lisansı ile lisanslanmıştır. Özgür lisanslar içinde en özgürü olarak bilinen bu lisansta kodu alan kişi, istediği gibi kullanma özgürlüğüne sahiptir [2]. Akademik ve ticari kullanımı ücretsiz olan bu kütüphane Windows, Linux, MacOS X gibi farklı platformlarda kullanılabilir [3]. Intel in görüntü işleme laboratuarlarında geliştirilen ve hız açısından optimize edilen OpenCV kütüphanesi, gerçek zamanlı uygulamalar hedef alınarak geliştirilmiştir. USB 2.0 teknolojisi ile birlikte artık standart bir bilgisayarda bile gerçek zamanlı uygulamalar çalıştırılabilmektedir. Tüm bu gelişmeler oyuncak yapımından endüstriyel üretime kadar pek çok alanda bu kütüphanenin kullanılmasına yol açmıştır [4]. 2.1 Bir Resmin Görüntülenmesi Aşağıdaki program dosya yolu verilen bir resmin OpenCV kütüphanesi ile nasıl açılacağını göstermektedir [1]. //PROGRAM 1 #include <highgui.h> int main() IplImage* img; img = cvloadimage("c:\\lenna.jpg"); cvnamedwindow("lenna", 1); cvshowimage("lenna", img ); cvreleaseimage(&img); cvdestroywindow("lenna"); IplImage veri yapısı, çeşitli resim dosyalarını hafızaya alabilmek için oluşturulmuş özel bir veri yapısıdır. Program 1 de istenen resim IplImage tipinde bir değişkene cvloadimage fonksiyonu yardımıyla atanır. Bu fonksiyon, BMP, DIB, JPEG, JPG, JPE, PNG, PBM, PGM, PPM, SR, RAS, TIFF ve TIF uzantılı resim dosyalarını okuyabilir [5]. Okunabilen resim dosyaları cvshowimage Fonksiyonu ile form üzerinde gösterilir. Đşlem bittikten sonra yaratılan bütün nesneler hafızadan silinir. 2. OpenCV ile Temel Uygulamalar Bu bölümde OpenCV kütüphanesini etkin bir şekilde kullanabilmek için basit örneklere yer verilmiştir. Tüm örnekler Windows XP işletim sistemi üzerinde OpenCV_1.1pre1a sürümü ve Visual Studio 2005 Yazılım Geliştirme Ortamı (IDE) kullanılarak çalıştırılmıştır. Özellikle Windows işletim sistemi ile OpenCV kütüphanesini kullanırken pek çok sorunla karşılaşılmıştır. Bu yazıda karşılaşılan problemlerin neler olduğuna ve çözümlerine de yer verilmiştir. Şekil 2. Lenna Standart Test Đmajı Şekil 2 de Program 1 çalıştırıldığında elde edilen sonuç görülmektedir.

Belirtilen resim dosyası okunamadığı durumlarda aşağıdaki kontroller ve işlemler yapılmalıdır. Programda resim dosyasına ait dosya yolunun (path) doğru şekilde belirtildiğinden emin olunuz. Visual Studio 2005 yazılım geliştirme ortamı ile çalışıyorsanız Visual Studio 2005 Sevice Pack 1 yükleyiniz. Seçtiğiniz yazılım geliştirme ortamı ile OpenCV kütüphanesini çalıştırabilmek için gerekli ayarları kontrol ediniz. 2.2 Resimlere Filtre Uygulama Aşağıdaki programda, seçilen bir resme Gaussian Filtresi uygulanmıştır. //PROGRAM 2 #include "cv.h" #include "highgui.h" int main() IplImage* img; img = cvloadimage("c:\\lenna.jpg"); cvnamedwindow("filtre_oncesi",1); cvshowimage( "Filtre_Oncesi",img); cvnamedwindow("filtre_sonrasi",1); IplImage* img2; CvSize boyut; boyut=cvgetsize(img); img2 = cvcreateimage(boyut,8,3); cvsmooth(img,img2,cv_gaussian,5,5); cvsmooth(img2,img2,cv_gaussian,5,5); //Filtre Seçenekleri //0 CV_BLUR_NO_SCALE //1 CV_BLUR //2 CV_GAUSSIAN //3 CV_MEDIAN //4 CV_BILATERAL cvshowimage("filtre_sonrasi",img2); cvreleaseimage(&img); cvreleaseimage(&img2); cvdestroywindow("filtre_oncesi"); cvdestroywindow("filtre_sonrasi"); Şekil 3. Gaussian Filtresi Uygulanmış Resim Yukarıdaki programda Şekil 2 deki resme ard arda 2 defa Gaussian Filtresi uygulanarak Şekil 3 deki resim elde edilmiştir. Programda cvsmooth fonksiyonunun parametreleri değiştirilerek resme farklı filtreler de uygulanabilir. 2.3 Kenar Bulma Uygulamaları Bütün kenar bulma işlemlerinde verilen resim önce Gri-Tonlu (Gray-Scale) resme çevirilir daha sonra istenen alt ve üst eşik değerlerine göre resim üzerindeki kenar noktaları tespit edilir. Kenar bulma yöntemlerinden bazıları Canny, Sobel ve Laplace Kenar Bulma (Edge Detector) yöntemleridir. OpenCV kütüphanesi, Canny kenar bulma yöntemi için, cvcanny, Sobel kenar bulma yöntemi için cvsobel ve Laplace kenar bulma yöntemi için, cvlaplace isimli fonksiyonları içermektedir. Bu fonksiyonlara gerekli parametreler verilerek, resimdeki kenarlar tespit edilebilir. Program 3 te bu fonksiyonların kullanımı gösterilmiştir.

//PROGRAM 3 #include <cv.h> #include <highgui.h> #include <stdio.h> int main( ) int sec; IplImage *rgb, *gry; rgb=cvloadimage( "C:\\Lenna.jpg"); cvnamedwindow("kaynak Resim",1); cvshowimage("kaynak Resim",rgb); CvSize boyut=cvgetsize(rgb); gry = cvcreateimage(boyut,8,1); cvcvtcolor(rgb,gry,cv_rgb2gray); cvnamedwindow("gri-tonlu Resim",1); cvshowimage("gri-tonlu Resim",gry); printf("1-canny,2-sobel,3-laplace"); printf("\nyontem Seciniz...\n"); scanf("%d",&sec); if (sec==1) //Canny IplImage* cny; cny = cvcreateimage(boyut,8,1); cvnamedwindow("canny Uygula",1); cvcanny(gry,cny,45,120,3); cvshowimage("canny Uygula",cny ); cvreleaseimage(&cny); cvdestroywindow("canny Uygula"); else if (sec==2) //Sobel IplImage* sbl; rgb=cvcloneimage(gry); sbl = cvcreateimage(boyut,ipl_depth_16s,1); cvsobel (rgb, sbl, 1, 0, -1); cvconvertscaleabs (sbl, gry); cvnamedwindow("sobel Uygula",1); cvshowimage("sobel Uygula",gry); cvreleaseimage(&sbl); cvdestroywindow("sobel Uygula"); else if (sec==3) //Laplace IplImage* lplc; lplc = cvcreateimage(boyut,ipl_depth_16s,1); cvlaplace (gry, lplc, 3); cvconvertscaleabs (lplc, gry); cvnamedwindow("laplace Uygula",1); cvshowimage("laplace Uygula",gry); cvreleaseimage(&lplc); cvdestroywindow("laplace Uygula"); else printf("yanlis Girdiniz."); cvreleaseimage(&rgb); cvreleaseimage(&gry); cvdestroywindow("kaynak Resim"); cvdestroywindow("gri-tonlu Resim"); Şekil 4. Gri Tonlu Resim Şekil 5. cvcanny Fonksiyonu Çıktısı Program 3, Şekil 2 deki standart test imajı (Lenna.jpg) ile çalıştırıldığında, Şekil 4 teki Gri tonlu resim ile program akışındaki seçime bağlı olarak bu üç kenar bulma yöntemlerinden biri uygulanmış resim elde edilir. Şekil 5 te Canny kenar bulma yöntemi ile kenarları tespit edilen resim, Şekil 6 da Sobel kenar bulma yöntemi ile kenarları tespit edilen resim, Şekil 7 de ise Laplace kenar bulma yöntemi ile kenarları tespit edilen resim görülmektedir.

cvcapturefromcam metodu kullanılan kameranın ID sini parametre olarak alır. Sistemde tek bir USB kamera kullanılıyorsa parametre olarak 0 (CV_CAP_ANY), birden fazla kamera kullanılıyorsa 100 (CV_CAP_MIL), 200 (CV_CAP_VFW) ya da 300 (CV_CAP_FIREWIRE, CV_CAP_IEEE1394,..vs) değerlerinden biri parametre olarak kullanılır. Sistemde kullanılan kameranın çeşidine ve sayısına göre, deneme yanılma yöntemiyle gereken parametre seçilir. Şekil 6. cvsobel Fonksiyonu Çıktısı Şekil 7. cvlaplace Fonksiyonu Çıktısı 2.4 Kamera ile Gerçek Zamanlı Görüntü Yakalama OpenCV kütüphanesi ile USB ya da dahili web kamerasından görüntü yakalayarak gerçek-zamanlı uygulamalar geliştirilebilir. Sistemde birden fazla kamera kullanılması durumunda gerekli kamera ID si belirlenip ilgili metoda parametre olarak girilmelidir. Program 4 te herhangi bir kameradan görüntü yakalayabilmek için gereken temel kodlara yer verilmiştir. Program 4 te cvcapturefromcam metodu ile CvCapture tipinden bir değişkene görüntü gelmesi sağlandıktan sonra sonsuz bir döngü yardımıyla yakalanan görüntünün içerisindeki çerçeveler/resimler (frame) cvqueryframe metodu ile tek tek sorgulanıp okutularak ekranda gösterilir. ESC a basıldığında görüntü yakalama işlemi sona erer. //PROGRAM 4 #include "highgui.h" #include "stdio.h" int main( ) cvnamedwindow( "GORUNTU",1); CvCapture* video=cvcapturefromcam(0); if (video==null) printf("dosya okunamadi..\n"); IplImage* frame; while(1) frame=cvqueryframe(video); if (!(frame) ) break; cvshowimage( "GORUNTU", frame); char c = cvwaitkey(30); if ( c == 27 ) break; printf("okuma islemi bitmistir.\n"); cvreleasecapture( &video ); cvdestroywindow( "GORUNTU" ); Bu kodlar ile bir TV kartı aracılığıyla elde edilen görüntü de yakalanabilir.

2.5 Bir Video Dosyasının Oynatılması OpenCV kütüphanesi ile bir video dosyasını okumak, bir resim dosyasını okumak kadar kolaydır. Aşağıdaki program ile avi uzantılı dosyaları açabilirsiniz. //PROGRAM 5 #include "highgui.h" #include "stdio.h" int main( ) cvnamedwindow("avi Dosyası",1); CvCapture* video; video=cvcapturefromfile("a.avi" ); //video=cvcapturefromavi("a.avi" ); int zaman, fps; fps=cvgetcaptureproperty(video,5); zaman=1000/fps; if (video==null) printf("dosya okunamadı..\n"); IplImage* frame; while(1) frame=cvqueryframe(video); if (!(frame)) break; cvshowimage("avi Dosyası",frame); char c = cvwaitkey(zaman); if ( c == 27 ) break; cvreleasecapture(&video); cvdestroywindow("avi Dosyası"); Belirtilen video dosyası okunamadığı durumlarda video değişkeninin içeriği null gelmekte ve Şekil 8. deki program çıktısı elde edilmektedir. Bu gibi durumlarda aşağıdaki kontroller ve işlemler yapılmalıdır. Programda video dosyasına ait dosya yolu (path) belirtilmemişse okunmak istenen video dosyası, proje dosyasının içerisindeki ilgili klasöre taşınmalı ya da dosya yolunun doğru şekilde programda belirtildiğinden emin olunmalıdır. Cinepak Codec gibi bazı codec ler ile hazırlanmış video dosyaları Opencv ile okunabilir ancak değişik codec ler ile kodlanmış avi dosyaları çoğu zaman (Windows üzerine kurulmuş) OpenCV kütüphanesi ile açılamamaktadır. Bu gibi durumlarda dosya özelliklerinden codec kontrolü yapılmalıdır(şekil 9). Şekil 9. Video dosyası özellik penceresi Şekil 8. Video dosyası okunamadığı durumda açılan pencere Eğer video herhangi bir codec ile sıkıştırılmış ise VirtualDub [6] gibi bir aracı program ile dosyanın codec ini değiştirilmeli ya da video dosyası sıkıştırılmamış avi dosyası haline getirilmelidir.

3. Sonuçlar OpenCV kütüphanesi, ücretsiz olması, işletim sistemi bağımsız olması, gerçek zamanlı uygulamalarda kullanılabilir olması ve 500 ün üzerinde fonksiyon desteği sayesinde görüntü işleme ile ilgilenen kişiler için hızlı ve rahat bir geliştirme süreci sağlar. Ayrıca eğitim kurumlarında açık kaynak kodlu ders aracı olarak kullanılabilir. 4. Kaynaklar [1] Bradski, G. and Kaehler, A., Learning OpenCV: Computer Vision with the OpenCV Library, O Reilly Media, Amerika Birleşik Devletleri, 16-17 (2008). [2] http://www.bilisim-kulubu.com/sozluk/ [3] http://opencv.willowgarage.com/wiki/ [4] INTEL CORPORATION: Intel researchers teach computers to read lips to improve accuracy of speech recognition software. M2 Presswire, Coventry, Apr 28,2003, pg1. [5] OpenCV Reference Manuals - HighGUI Reference Manual [6] http://www.virtualdub.org/ [7] OpenCV Reference Manuals - CV Reference Manual [8] OpenCV Reference Manuals - CXCORE Reference Manual