OpenCV'de fare tıklama olaylarını kontrol etmek
OpenCV’de highgui ile gösterilen resmin herhangi bir noktasına fare ile basıldığında bunu kontrol etmek ve hatta bölgenin koordinatını yazdırmak için:
[c]
void on_mouse( int event, int x, int y, int flags, void* param ) { if ( event == CV_EVENT_LBUTTONDOWN ) printf("%i %i\n", x, y); }
void OpencvProcess::resimGoster(IplImage* par_img) { cvNamedWindow("Monas", CV_WINDOW_AUTOSIZE ); cvSetMouseCallback( "Monas", on_mouse, NULL ); cvShowImage("Monas", par_img ); printf("resim gosteriliyor\n"); cvWaitKey(0); cvDestroyWindow("Monas"); }
[/c]</pre> Burda dikkat edilmesi gereken nokta on_mouse fonksiyonunun class a dahil edilmemiş olduğudur. cvSetMouseCallBack’te NULL olan parametre yerine de bir parametre geçilebilir. Hatta resim parametre verilerek on_mouse’ta onun üzerinde işlemler yapılabilir.