Created
May 17, 2013 05:07
-
-
Save aligoren/5597046 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ObjectDetecion.cpp File | |
// Nesne algılama dosyası | |
// Başlıyoruz hadi | |
/********/ | |
//OpenCV KÜTÜPHANELERİNİ BAŞLANGIÇ | |
#include <opencv/cvaux.h> | |
#include <opencv/highgui.h> | |
#include <opencv/cxcore.h> | |
//OpenCV KÜTÜPHANELERİ BİTİŞ | |
#include <stdio.h> | |
#include <stdlib.h> | |
/////////////////////////////////////////////////////////////////////////// | |
int main(int argc, char* argv[]) { | |
/* kullanılacak olan boyut 640*480. İdeal olanın bu olduğu söyleniyo | |
Bu bütün platformlar için aynı boyut demektir. | |
Webcam 640*480 ebatlarına ayarlanmıştır umarım :) | |
Laptop dahili kameralarında belki görüntü almada problem yaşabilir. | |
Bu sorunun yaşanmaması için görüntü alma işleminin yüksek çözünürlüklü kameralarca yapılmasını öneririm | |
*/ | |
CvSize boyut = cvSize(640,480); | |
/* | |
CvCapture ile video görüntüsünden yani stream dediğimiz akıştan bilgi almak için burayı çağırdık | |
Burayı daha sonra kullanacağız | |
*/ | |
CvCapture* p_camResimAl; | |
/* | |
Bu pointer'ı ilk giriş için aldık yani kameraya gelen görüntüyü burada işliyoruz | |
*/ | |
IplImage* p_orjinalResim; | |
/* | |
Bu kisimda artik resim islenmis durumda | |
Yani webcam'den bi yukaridaki olayda goruntuyu saf haliyle almistik. | |
Burada goruntu islenmis oldu ve saf hali artik yok | |
*/ | |
IplImage* p_islenmisResim; | |
// IPL dedigimiz sey Intel Image Processing Library'nin kisaltilmis halidir. | |
// OpenCV 1.x'de kullanilmistir.. | |
/////////////////////////// | |
/* | |
Burada cvHoughCircles() icin gerekli olan depolama degiskenini tanittik | |
*/ | |
CvMemStorage* p_strDepolama; | |
/* | |
OpenCV dizisi icin olusturulan bi isaretci burasi | |
Geri donusu cvHoughCircles() icin olacaktir | |
Ayrica butun cevreleri kapsar, icerir.. | |
Çağırım şöyle yapılır; | |
cvGetSeqElem(p_dairelerDizisi, i) gibi 3 elemanli bi dizi de dondurur. | |
Bi sonraki degiskende de anlasilacaktir oraya bakalim | |
*/ | |
CvSeq* p_dairelerDizisi; | |
/* | |
3 elemanlı dizi float bi işaretçi olacak bu yani pointer. Olayı açıklayacak olursak | |
[0] => burada ilk indexte yapilacak olan olay objenin X pozisyonunu algılayacak | |
[1] => burada yani ikinci indexte yapılacak olan olay da objenin y pozisyonunu algılamak | |
[2] => son yani 3. olayda ise belirtilen nesnenin ya da objenin yarı çapını algılama işlemi yer alacak | |
*/ | |
float* p_XYyaricap; | |
int i; // döngü sayacı :) | |
/* | |
ESC icin klavyeden deger gelip gelmedigini kontrol edecegiz | |
*/ | |
char escKarakterKontrolu; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment