Open cv kütüphanesi

4,323 views
4,172 views

Published on

OpenCV kütüphanesi ve kullanim alanlari.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
4,323
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
96
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Facebook örneği
  • Open cv kütüphanesi

    1. 1. OpenCVkütüphanesive kullanimalanlari<br />Volkan SALMA<br />volkansalma@yahoo.com<br />http://volkansalma.blogspot.com<br />
    2. 2. Sunum Plani<br />2<br />
    3. 3. Opencv ?<br />OpenCV = OpenSourceComputerVision<br />Gerçek zamanlı bilgisayarla görme kütüphanesi<br />1999 yılında Intel tarafından geliştirilmeye başlandı (2008 sonrasında WillowGarage)<br />C ve C++ ile yazılıyor. 500 den fazla iyi optimize edilmiş fonksiyon içermekte<br />Windows,Linux,MacOSX de çalışıyor<br />Android, Sony Play Station3, WindowsCE, Arm, GPU<br />BSD lisansına sahip, ticari ve akademik amaçla ücret ödemeden kullanılabiliyor<br />Üniversitelerde, araştırma merkezlerinde, ticari şirketlerde kullanılıyor (>40K insan mailinggroup, >6M download )<br />3<br />
    4. 4. Opencv ? <br />ImgProc<br />Filtreler,Erode,Dilate<br />Renk çevrimleri,<br />Histogram işlemleri<br />Core<br />Yapılar,Lineer Cebir,<br />Aritmetik, XML I/O<br />HighGui<br />Arayüz, Video&Resim I/O<br />4<br />
    5. 5. Opencv ?<br />[Video] <br /> -Arka plan çıkartımı<br /> -Optik flow<br />[Nesne Tespiti] <br /> -Haar Yüz tespiti<br /> -HOG yaya tespiti <br />[3d calibrasyon] <br /> -Kamera kalibrasyon, <br /> -Stereo eşleme<br />[gpu] => Cuda (NVIDIA)<br />2 Boyutlu Öznitelik bulucu ve eşleştiriciler<br />SURF, Fast, Harnis..<br />Makina Öğrenmesi<br />SVM,Karar Ağaçları.<br />5<br />
    6. 6. Opencv ?<br />!C/C++<br />.NET <br />Java<br />Delphi<br />Matlab<br />Python<br />PHP (ApacheExtension)<br />6<br />
    7. 7. Neler Yapiliyor ?<br />7<br />
    8. 8. Neler Yapiliyor ?<br />8<br />
    9. 9. Neler Yapiliyor ?<br />9<br />
    10. 10. Neler Yapiliyor ?<br />10<br />
    11. 11. Neler Yapiliyor ?<br />11<br />
    12. 12. Neler Yapiliyor ?<br />12<br />
    13. 13. NasilYapiliyor ?<br />intmain(intargc, _TCHAR* argv[]) <br />{<br />IplImage* img = cvLoadImage( "MGC.jpg" ); <br />cvShowImage("Example1", img);<br />cvWaitKey(0); <br />cvReleaseImage( &img ); <br />}<br />13<br />
    14. 14. NasilYapiliyor ?<br />// opencv/samples/c/lkdemo.c<br />int main(…){<br />…<br />CvCapture* capture = <…> ? cvCaptureFromCAM(camera_id) : cvCaptureFromFile(path);<br />if( !capture ) return -1;<br />for(;;) {<br />IplImage* frame=cvQueryFrame(capture);<br /> if(!frame) break;<br /> // … copy and process image<br />cvShowImage( “LkDemo”, result );<br /> c=cvWaitKey(30); // run at ~20-30fps speed<br /> if(c >= 0) {<br /> // process key<br /> }}<br />cvReleaseCapture(&capture);} <br />14<br />
    15. 15. NasilYapiliyor ?<br />// load an imageimg=cvLoadImage(argv[1]);if(!img){printf("Could not loadimage file: %sn",argv[1]);exit(0);}// gettheimage dataheight = img->height;width = img->width;step = img->widthStep;channels = img->nChannels;data = (uchar *)img->imageData;<br />// inverttheimagefor(i=0;i<height;i++) for(j=0;j<width;j++) for(k=0;k<channels;k++)data[i*step+j*channels+k]=255-data[i*step+j*channels+k];// showtheimagecvShowImage("mainWin", img );<br />15<br />
    16. 16. NasilYapiliyor ? <br />CvMemStorage* storage = cvCreateMemStorage(0); <br />CvHaarClassifierCascade* cascade = (CvHaarClassifierCascade*)cvLoad( "haarcascade_frontalface_alt2.xml" ); <br />doublescale = 1.3;<br />staticCvScalarcolors[] = { {{0,0,255}}, {{0,128,255}}, {{0,255,255}}, {{0,255,0}}, {{255,128,0}}, {{255,255,0}}, {{255,0,0}}, {{255,0,255}} }; <br />cvClearMemStorage( storage );<br />CvSeq* objects = cvHaarDetectObjects( img, cascade, storage, 1.1, 4, 0, cvSize( 40, 50 )); <br />CvRect* r;<br />for( int i = 0; i < (objects ? objects->total : 0 ); i++ )<br /> {<br /> r = ( CvRect* )cvGetSeqElem( objects, i ); <br />cvRectangle( img, cvPoint( r->x, r->y ), cvPoint( r->x + r->width, r- >y + r->height ), colors[i%8]); <br /> }<br />16<br />
    17. 17. Opencv öğrenmek <br />İmge işlemeye yeni başlıyorsanız:<br />Hızlı bir başlangıç için KULİS imge işleme ders notları [1]<br />OpenCVyi denemek istiyorsanız:<br />OpenCVyi indirin [2]. <br />Sisteminize kurun C/C++/C# [3][6]. Büyük eşik <br />Bu aşamada sıkıntı halinde benimle irtibat kurun  <br />IntroductiontoprogrammingwithOpenCV yazısını okuyun [4]<br />Derindelimavi’dekiOpenCVtagli bütün postları en eskisinden başlayarak okuyun (56 tane opencv & 8 tane opencvsharp) [5].<br />NoahKuntzunopencv derslerine bakın[7].<br />Bu işi sevdiyseniz :<br />OReilly-LearningOpenCV kitabını edinin.<br />Derindelimavi’deki devamlı güncellenen opencv linklerinden yararlanın[8].<br />17<br />
    18. 18. Teşekkür Ederim..<br />Sorularınız ?<br />volkansalma@yahoo.com<br />
    19. 19. Referanslar<br />1- http://rapidshare.com/#!download|725tl|237741516|imge_isleme.rar|21167<br />2- http://sourceforge.net/projects/opencvlibrary<br />3- http://opencv.willowgarage.com/wiki/VisualC%2B%2B<br />4- http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/index.html<br />5- http://derindelimavi.blogspot.com/search/label/OpenCv<br />6- http://opencv.willowgarage.com/wiki/InstallGuide_Linux<br />7- http://www.pages.drexel.edu/~nk752/tutorials.html<br />8- http://derindelimavi.blogspot.com/2009/01/opencv-linkleri.html<br />19<br />

    ×