Ładowanie klasyfikatora kaskadowego - Haar if( face_cascade.load( face_cascade_name ) == 0 )

cout << "Błąd wczytywania klasyfikatora twarzy! \n"; return -1;

if( eyes_cascade.load( eyes_cascade_name ) == 0 )

cout << "Błąd wczytywania klasyfikatora oczu! \n"; return -1;

int camera_device = parser.get<int>("camera"); VideoCapture capture;

//-- 2. Otwieranie strumienia wideo capture.open( camera_device ); if ( capture.isOpened() == 0 )

cout << "Nie udało się otworzyć strumienia wideo \n"; return -1;

Mat frame; while ( capture.read(frame) )

if( frame.empty() )

cout << "Brak ramki. -- Wyjście z pętli! \n"; break; //wyjście z pętli

//-- 3. Stosowanie klasyfikatorów do bieżącej ramki wideo wykryjIWyswietl( frame ); //Główna funkcja, zawiera główny algorytm if( waitKey(10) == 27 ) break; // wyjście z pętli

return 0; }

void wykryjIWyswietl( Mat frame ) { Mat frame_gray; cvtColor( frame, frame_gray, COLOR_BGR2GRAY ); equalizeHist( frame_gray, frame_gray );

//-- Wykrywaj twarze std::vector<Rect> faces; face_cascade.detectMultiScale( frame_gray, faces ); for ( size_t i = 0; i < faces.size();