diff --git a/apps/createsamples/utility.cpp b/apps/createsamples/utility.cpp index cf2bdebbf9..2226cd8c92 100644 --- a/apps/createsamples/utility.cpp +++ b/apps/createsamples/utility.cpp @@ -1270,7 +1270,7 @@ void cvCreateTrainingSamples( const char* filename, if( showsamples ) { cvShowImage( "Sample", &sample ); - if( cvWaitKey( 0 ) == 27 ) + if( (cvWaitKey( 0 ) & 0xFF) == 27 ) { showsamples = 0; } @@ -1402,7 +1402,7 @@ void cvCreateTestSamples( const char* infoname, if( showsamples ) { cvShowImage( "Image", &cvbgreader->src ); - if( cvWaitKey( 0 ) == 27 ) + if( (cvWaitKey( 0 ) & 0xFF) == 27 ) { showsamples = 0; } @@ -1525,7 +1525,7 @@ int cvCreateTrainingSamplesFromInfo( const char* infoname, const char* vecfilena if( showsamples ) { cvShowImage( "Sample", sample ); - if( cvWaitKey( 0 ) == 27 ) + if( (cvWaitKey( 0 ) & 0xFF) == 27 ) { showsamples = 0; } @@ -1672,7 +1672,7 @@ void cvShowVecSamples( const char* filename, int winwidth, int winheight, icvGetTraininDataFromVec( sample, &file ); if( scale != 1.0 ) cvResize( sample, scaled_sample, CV_INTER_LINEAR); cvShowImage( "Sample", scaled_sample ); - if( cvWaitKey( 0 ) == 27 ) break; + if( (cvWaitKey( 0 ) & 0xFF) == 27 ) break; } if( scaled_sample && scaled_sample != sample ) cvReleaseMat( &scaled_sample ); cvReleaseMat( &sample ); @@ -1680,4 +1680,4 @@ void cvShowVecSamples( const char* filename, int winwidth, int winheight, } fclose( file.input ); } -} \ No newline at end of file +} diff --git a/apps/interactive-calibration/calibPipeline.cpp b/apps/interactive-calibration/calibPipeline.cpp index 1047bfce5f..a92dbffc2f 100644 --- a/apps/interactive-calibration/calibPipeline.cpp +++ b/apps/interactive-calibration/calibPipeline.cpp @@ -68,7 +68,7 @@ PipelineExitStatus CalibPipeline::start(std::vector > pr for (std::vector >::iterator it = processors.begin(); it != processors.end(); ++it) processedFrame = (*it)->processFrame(processedFrame); cv::imshow(mainWindowName, processedFrame); - int key = cv::waitKey(CAP_DELAY); + char key = (char)cv::waitKey(CAP_DELAY); if(key == 27) // esc return Finished; diff --git a/doc/tutorials/imgproc/imgtrans/remap/remap.markdown b/doc/tutorials/imgproc/imgtrans/remap/remap.markdown index 849157f077..34a0b90201 100644 --- a/doc/tutorials/imgproc/imgtrans/remap/remap.markdown +++ b/doc/tutorials/imgproc/imgtrans/remap/remap.markdown @@ -85,9 +85,9 @@ Explanation while( true ) { /// Each 1 sec. Press ESC to exit the program - int c = waitKey( 1000 ); + char c = (char)waitKey( 1000 ); - if( (char)c == 27 ) + if( c == 27 ) { break; } /// Update map_x & map_y. Then apply remap diff --git a/doc/tutorials/imgproc/pyramids/pyramids.markdown b/doc/tutorials/imgproc/pyramids/pyramids.markdown index 69df1cda63..5210ec007d 100644 --- a/doc/tutorials/imgproc/pyramids/pyramids.markdown +++ b/doc/tutorials/imgproc/pyramids/pyramids.markdown @@ -93,6 +93,7 @@ Let's check the general structure of the program: - Perform an infinite loop waiting for user input. @snippet cpp/tutorial_code/ImgProc/Pyramids.cpp infinite_loop + Our program exits if the user presses *ESC*. Besides, it has two options: - **Perform upsampling (after pressing 'u')** diff --git a/modules/python/test/tst_scene_render.py b/modules/python/test/tst_scene_render.py index 49cde80d25..25d5a4058e 100644 --- a/modules/python/test/tst_scene_render.py +++ b/modules/python/test/tst_scene_render.py @@ -113,7 +113,7 @@ if __name__ == '__main__': img = render.getNextFrame() cv2.imshow('img', img) - ch = 0xFF & cv2.waitKey(3) - if ch == 27: + ch = cv2.waitKey(3) + if ch == 27: break - cv2.destroyAllWindows() \ No newline at end of file + cv2.destroyAllWindows() diff --git a/samples/cpp/3calibration.cpp b/samples/cpp/3calibration.cpp index 7079b6d062..8affef17ff 100644 --- a/samples/cpp/3calibration.cpp +++ b/samples/cpp/3calibration.cpp @@ -351,7 +351,7 @@ int main( int argc, char** argv ) for( k = 0; k < small_canvas.rows; k += 16 ) line(small_canvas, Point(0, k), Point(small_canvas.cols, k), Scalar(0,255,0), 1); imshow("rectified", small_canvas); - int c = waitKey(0); + char c = (char)waitKey(0); if( c == 27 || c == 'q' || c == 'Q' ) break; } diff --git a/samples/cpp/calibration.cpp b/samples/cpp/calibration.cpp index 415d8bb837..251ab83e72 100644 --- a/samples/cpp/calibration.cpp +++ b/samples/cpp/calibration.cpp @@ -493,9 +493,9 @@ int main( int argc, char** argv ) } imshow("Image View", view); - int key = 0xff & waitKey(capture.isOpened() ? 50 : 500); + char key = (char)waitKey(capture.isOpened() ? 50 : 500); - if( (key & 255) == 27 ) + if( key == 27 ) break; if( key == 'u' && mode == CALIBRATED ) @@ -536,8 +536,8 @@ int main( int argc, char** argv ) //undistort( view, rview, cameraMatrix, distCoeffs, cameraMatrix ); remap(view, rview, map1, map2, INTER_LINEAR); imshow("Image View", rview); - int c = 0xff & waitKey(); - if( (c & 255) == 27 || c == 'q' || c == 'Q' ) + char c = (char)waitKey(); + if( c == 27 || c == 'q' || c == 'Q' ) break; } } diff --git a/samples/cpp/cloning_gui.cpp b/samples/cpp/cloning_gui.cpp index 289eae8de0..4358abc33f 100644 --- a/samples/cpp/cloning_gui.cpp +++ b/samples/cpp/cloning_gui.cpp @@ -453,7 +453,7 @@ int main() for(;;) { - char key = (char) waitKey(0); + char key = (char)waitKey(0); if(key == 'd' && flag3 == 0) { diff --git a/samples/cpp/convexhull.cpp b/samples/cpp/convexhull.cpp index fd2275645d..f89e5b27bb 100644 --- a/samples/cpp/convexhull.cpp +++ b/samples/cpp/convexhull.cpp @@ -25,7 +25,6 @@ int main( int argc, char** argv ) for(;;) { - char key; int i, count = (unsigned)rng%100 + 1; vector points; @@ -58,7 +57,7 @@ int main( int argc, char** argv ) imshow("hull", img); - key = (char)waitKey(); + char key = (char)waitKey(); if( key == 27 || key == 'q' || key == 'Q' ) // 'ESC' break; } diff --git a/samples/cpp/detect_mser.cpp b/samples/cpp/detect_mser.cpp index ce29db3d3b..04429ccc56 100644 --- a/samples/cpp/detect_mser.cpp +++ b/samples/cpp/detect_mser.cpp @@ -279,8 +279,8 @@ static void DrawOpenGLMSER(Mat img, Mat result) for (;;) { updateWindow("OpenGL"); - int key = waitKey(40); - if ((key & 0xff) == 27) + char key = (char)waitKey(40); + if (key == 27) break; if (key == 0x20) rotateEnable = !rotateEnable; diff --git a/samples/cpp/distrans.cpp b/samples/cpp/distrans.cpp index 4bf4707ba6..21432642ec 100644 --- a/samples/cpp/distrans.cpp +++ b/samples/cpp/distrans.cpp @@ -133,7 +133,7 @@ int main( int argc, const char** argv ) // Call to update the view onTrackbar(0, 0); - int c = waitKey(0) & 255; + char c = (char)waitKey(0); if( c == 27 ) break; diff --git a/samples/cpp/facedetect.cpp b/samples/cpp/facedetect.cpp index 8f6a45666f..86d3284fc2 100644 --- a/samples/cpp/facedetect.cpp +++ b/samples/cpp/facedetect.cpp @@ -72,9 +72,9 @@ int main( int argc, const char** argv ) } if( inputName.empty() || (isdigit(inputName[0]) && inputName.size() == 1) ) { - int c = inputName.empty() ? 0 : inputName[0] - '0'; - if(!capture.open(c)) - cout << "Capture from camera #" << c << " didn't work" << endl; + int camera = inputName.empty() ? 0 : inputName[0] - '0'; + if(!capture.open(camera)) + cout << "Capture from camera #" << camera << " didn't work" << endl; } else if( inputName.size() ) { @@ -104,7 +104,7 @@ int main( int argc, const char** argv ) Mat frame1 = frame.clone(); detectAndDraw( frame1, cascade, nestedCascade, scale, tryflip ); - int c = waitKey(10); + char c = (char)waitKey(10); if( c == 27 || c == 'q' || c == 'Q' ) break; } @@ -127,7 +127,7 @@ int main( int argc, const char** argv ) char buf[1000+1]; while( fgets( buf, 1000, f ) ) { - int len = (int)strlen(buf), c; + int len = (int)strlen(buf); while( len > 0 && isspace(buf[len-1]) ) len--; buf[len] = '\0'; @@ -136,7 +136,7 @@ int main( int argc, const char** argv ) if( !image.empty() ) { detectAndDraw( image, cascade, nestedCascade, scale, tryflip ); - c = waitKey(0); + char c = (char)waitKey(0); if( c == 27 || c == 'q' || c == 'Q' ) break; } diff --git a/samples/cpp/ffilldemo.cpp b/samples/cpp/ffilldemo.cpp index d10d72e0eb..0cf315568d 100644 --- a/samples/cpp/ffilldemo.cpp +++ b/samples/cpp/ffilldemo.cpp @@ -105,13 +105,13 @@ int main( int argc, char** argv ) { imshow("image", isColor ? image : gray); - int c = waitKey(0); - if( (c & 255) == 27 ) + char c = (char)waitKey(0); + if( c == 27 ) { cout << "Exiting ...\n"; break; } - switch( (char)c ) + switch( c ) { case 'c': if( isColor ) diff --git a/samples/cpp/grabcut.cpp b/samples/cpp/grabcut.cpp index 726906c6ff..54edbf61ec 100644 --- a/samples/cpp/grabcut.cpp +++ b/samples/cpp/grabcut.cpp @@ -306,8 +306,8 @@ int main( int argc, char** argv ) for(;;) { - int c = waitKey(0); - switch( (char) c ) + char c = (char)waitKey(0); + switch( c ) { case '\x1b': cout << "Exiting ..." << endl; diff --git a/samples/cpp/laplace.cpp b/samples/cpp/laplace.cpp index 462f62804e..958fccb608 100644 --- a/samples/cpp/laplace.cpp +++ b/samples/cpp/laplace.cpp @@ -83,10 +83,10 @@ int main( int argc, char** argv ) convertScaleAbs(laplace, result, (sigma+1)*0.25); imshow("Laplacian", result); - int c = waitKey(30); + char c = (char)waitKey(30); if( c == ' ' ) smoothType = smoothType == GAUSSIAN ? BLUR : smoothType == BLUR ? MEDIAN : GAUSSIAN; - if( c == 'q' || c == 'Q' || (c & 255) == 27 ) + if( c == 'q' || c == 'Q' || c == 27 ) break; } diff --git a/samples/cpp/morphology2.cpp b/samples/cpp/morphology2.cpp index 8439080b2b..b7dc68f6c0 100644 --- a/samples/cpp/morphology2.cpp +++ b/samples/cpp/morphology2.cpp @@ -82,21 +82,19 @@ int main( int argc, char** argv ) for(;;) { - int c; - OpenClose(open_close_pos, 0); ErodeDilate(erode_dilate_pos, 0); - c = waitKey(0); + char c = (char)waitKey(0); - if( (char)c == 27 ) + if( c == 27 ) break; - if( (char)c == 'e' ) + if( c == 'e' ) element_shape = MORPH_ELLIPSE; - else if( (char)c == 'r' ) + else if( c == 'r' ) element_shape = MORPH_RECT; - else if( (char)c == 'c' ) + else if( c == 'c' ) element_shape = MORPH_CROSS; - else if( (char)c == ' ' ) + else if( c == ' ' ) element_shape = (element_shape + 1) % 3; } diff --git a/samples/cpp/pca.cpp b/samples/cpp/pca.cpp index b33a463211..fb2f585af8 100644 --- a/samples/cpp/pca.cpp +++ b/samples/cpp/pca.cpp @@ -183,9 +183,9 @@ int main(int argc, char** argv) // display until user presses q imshow(winName, reconstruction); - int key = 0; + char key = 0; while(key != 'q') - key = waitKey(); + key = (char)waitKey(); return 0; } diff --git a/samples/cpp/phase_corr.cpp b/samples/cpp/phase_corr.cpp index c3120fe084..f7356666c4 100644 --- a/samples/cpp/phase_corr.cpp +++ b/samples/cpp/phase_corr.cpp @@ -9,7 +9,7 @@ int main(int, char* []) { VideoCapture video(0); Mat frame, curr, prev, curr64f, prev64f, hann; - int key = 0; + char key; do { @@ -37,10 +37,10 @@ int main(int, char* []) } imshow("phase shift", frame); - key = waitKey(2); + key = (char)waitKey(2); prev = curr.clone(); - } while((char)key != 27); // Esc to exit... + } while(key != 27); // Esc to exit... return 0; } diff --git a/samples/cpp/points_classifier.cpp b/samples/cpp/points_classifier.cpp index c0270d084c..9945ba24f6 100644 --- a/samples/cpp/points_classifier.cpp +++ b/samples/cpp/points_classifier.cpp @@ -312,7 +312,7 @@ int main() for(;;) { - uchar key = (uchar)waitKey(); + char key = (char)waitKey(); if( key == 27 ) break; diff --git a/samples/cpp/segment_objects.cpp b/samples/cpp/segment_objects.cpp index 916283124f..32b2598740 100644 --- a/samples/cpp/segment_objects.cpp +++ b/samples/cpp/segment_objects.cpp @@ -105,7 +105,7 @@ int main(int argc, char** argv) refineSegments(tmp_frame, bgmask, out_frame); imshow("video", tmp_frame); imshow("segmented", out_frame); - int keycode = waitKey(30); + char keycode = (char)waitKey(30); if( keycode == 27 ) break; if( keycode == ' ' ) diff --git a/samples/cpp/select3dobj.cpp b/samples/cpp/select3dobj.cpp index b13697fec2..7df366b756 100644 --- a/samples/cpp/select3dobj.cpp +++ b/samples/cpp/select3dobj.cpp @@ -285,8 +285,8 @@ static int select3DBox(const string& windowname, const string& selWinName, const imshow(windowname, shownFrame); imshow(selWinName, selectedObjFrame); - int c = waitKey(30); - if( (c & 255) == 27 ) + char c = (char)waitKey(30); + if( c == 27 ) { nobjpt = 0; } @@ -593,7 +593,7 @@ int main(int argc, char** argv) imshow("View", shownFrame); imshow("Selected Object", selectedObjFrame); - int c = waitKey(imageList.empty() && !box.empty() ? 30 : 300); + char c = (char)waitKey(imageList.empty() && !box.empty() ? 30 : 300); if( c == 'q' || c == 'Q' ) break; if( c == '\r' || c == '\n' ) diff --git a/samples/cpp/smiledetect.cpp b/samples/cpp/smiledetect.cpp index f2f0bbf076..9e0c3c8d92 100644 --- a/samples/cpp/smiledetect.cpp +++ b/samples/cpp/smiledetect.cpp @@ -99,7 +99,7 @@ int main( int argc, const char** argv ) Mat frame1 = frame.clone(); detectAndDraw( frame1, cascade, nestedCascade, scale, tryflip ); - int c = waitKey(10); + char c = (char)waitKey(10); if( c == 27 || c == 'q' || c == 'Q' ) break; } diff --git a/samples/cpp/squares.cpp b/samples/cpp/squares.cpp index df8459caa4..dfa3c61e85 100644 --- a/samples/cpp/squares.cpp +++ b/samples/cpp/squares.cpp @@ -167,8 +167,8 @@ int main(int argc, char** argv) findSquares(image, squares); drawSquares(image, squares); - int c = waitKey(); - if( (char)c == 27 ) + char c = (char)waitKey(); + if( c == 27 ) break; } diff --git a/samples/cpp/tutorial_code/ImgProc/Pyramids.cpp b/samples/cpp/tutorial_code/ImgProc/Pyramids.cpp index d8067f9869..62c2fe5c01 100644 --- a/samples/cpp/tutorial_code/ImgProc/Pyramids.cpp +++ b/samples/cpp/tutorial_code/ImgProc/Pyramids.cpp @@ -45,26 +45,22 @@ int main( void ) //![infinite_loop] for(;;) { - int c; - c = waitKey(0); + char c = (char)waitKey(0); - if( (char)c == 27 ) + if( c == 27 ) { break; } - if( (char)c == 'u' ) - { - //![pyrup] - pyrUp( tmp, dst, Size( tmp.cols*2, tmp.rows*2 ) ); - //![pyrup] + //![pyrup] + if( c == 'u' ) + { pyrUp( tmp, dst, Size( tmp.cols*2, tmp.rows*2 ) ); printf( "** Zoom In: Image x 2 \n" ); } - else if( (char)c == 'd' ) - { - //![pyrdown] - pyrDown( tmp, dst, Size( tmp.cols/2, tmp.rows/2 ) ); - //![pyrdown] + //![pyrup] + //![pyrdown] + else if( c == 'd' ) + { pyrDown( tmp, dst, Size( tmp.cols/2, tmp.rows/2 ) ); printf( "** Zoom Out: Image / 2 \n" ); } - + //![pyrdown] imshow( window_name, dst ); //![update_tmp] diff --git a/samples/cpp/tutorial_code/ImgProc/Threshold.cpp b/samples/cpp/tutorial_code/ImgProc/Threshold.cpp index cee1a51c9c..d057ebcdcf 100644 --- a/samples/cpp/tutorial_code/ImgProc/Threshold.cpp +++ b/samples/cpp/tutorial_code/ImgProc/Threshold.cpp @@ -60,9 +60,8 @@ int main( int, char** argv ) /// Wait until user finishes program for(;;) { - int c; - c = waitKey( 20 ); - if( (char)c == 27 ) + char c = (char)waitKey( 20 ); + if( c == 27 ) { break; } } diff --git a/samples/cpp/tutorial_code/ImgProc/Threshold_inRange.cpp b/samples/cpp/tutorial_code/ImgProc/Threshold_inRange.cpp index 3801b30e7b..8935a04c6d 100644 --- a/samples/cpp/tutorial_code/ImgProc/Threshold_inRange.cpp +++ b/samples/cpp/tutorial_code/ImgProc/Threshold_inRange.cpp @@ -41,7 +41,7 @@ int main() createTrackbar("Low B","Object Detection", &low_b, 255, on_low_b_thresh_trackbar); createTrackbar("High B","Object Detection", &high_b, 255, on_high_b_thresh_trackbar); //! [trackbar] - while(char(waitKey(1))!='q'){ + while((char)waitKey(1)!='q'){ //! [while] cap>>frame; if(frame.empty()) diff --git a/samples/cpp/tutorial_code/ImgTrans/HoughCircle_Demo.cpp b/samples/cpp/tutorial_code/ImgTrans/HoughCircle_Demo.cpp index 81bb3f8895..2911b9d1c0 100644 --- a/samples/cpp/tutorial_code/ImgTrans/HoughCircle_Demo.cpp +++ b/samples/cpp/tutorial_code/ImgTrans/HoughCircle_Demo.cpp @@ -90,7 +90,7 @@ int main(int argc, char** argv) // infinite loop to display // and refresh the content of the output image // until the user presses q or Q - int key = 0; + char key = 0; while(key != 'q' && key != 'Q') { // those paramaters cannot be =0 @@ -102,7 +102,7 @@ int main(int argc, char** argv) HoughDetection(src_gray, src, cannyThreshold, accumulatorThreshold); // get user key - key = waitKey(10); + key = (char)waitKey(10); } return 0; diff --git a/samples/cpp/tutorial_code/ImgTrans/Remap_Demo.cpp b/samples/cpp/tutorial_code/ImgTrans/Remap_Demo.cpp index b5a76faa47..afe7024e75 100644 --- a/samples/cpp/tutorial_code/ImgTrans/Remap_Demo.cpp +++ b/samples/cpp/tutorial_code/ImgTrans/Remap_Demo.cpp @@ -40,9 +40,9 @@ int main( int, char** argv ) for(;;) { /// Each 1 sec. Press ESC to exit the program - int c = waitKey( 1000 ); + char c = (char)waitKey( 1000 ); - if( (char)c == 27 ) + if( c == 27 ) { break; } /// Update map_x & map_y. Then apply remap diff --git a/samples/cpp/tutorial_code/ImgTrans/copyMakeBorder_demo.cpp b/samples/cpp/tutorial_code/ImgTrans/copyMakeBorder_demo.cpp index 60a6d9fcb5..3b9ad0d5ce 100644 --- a/samples/cpp/tutorial_code/ImgTrans/copyMakeBorder_demo.cpp +++ b/samples/cpp/tutorial_code/ImgTrans/copyMakeBorder_demo.cpp @@ -23,9 +23,6 @@ RNG rng(12345); */ int main( int, char** argv ) { - - int c; - //![load] src = imread( argv[1], IMREAD_COLOR ); // Load an image @@ -59,13 +56,12 @@ int main( int, char** argv ) for(;;) { //![check_keypress] - c = waitKey(500); - - if( (char)c == 27 ) + char c = (char)waitKey(500); + if( c == 27 ) { break; } - else if( (char)c == 'c' ) + else if( c == 'c' ) { borderType = BORDER_CONSTANT; } - else if( (char)c == 'r' ) + else if( c == 'r' ) { borderType = BORDER_REPLICATE; } //![check_keypress] diff --git a/samples/cpp/tutorial_code/ImgTrans/filter2D_demo.cpp b/samples/cpp/tutorial_code/ImgTrans/filter2D_demo.cpp index e1ceb0bf6d..81a6fc002f 100644 --- a/samples/cpp/tutorial_code/ImgTrans/filter2D_demo.cpp +++ b/samples/cpp/tutorial_code/ImgTrans/filter2D_demo.cpp @@ -25,8 +25,6 @@ int main ( int, char** argv ) int kernel_size; const char* window_name = "filter2D Demo"; - int c; - //![load] src = imread( argv[1], IMREAD_COLOR ); // Load an image @@ -45,9 +43,9 @@ int main ( int, char** argv ) int ind = 0; for(;;) { - c = waitKey(500); + char c = (char)waitKey(500); /// Press 'ESC' to exit the program - if( (char)c == 27 ) + if( c == 27 ) { break; } //![update_kernel] diff --git a/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/src/main_detection.cpp b/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/src/main_detection.cpp index 4808e64135..de6f72bdbc 100644 --- a/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/src/main_detection.cpp +++ b/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/src/main_detection.cpp @@ -180,7 +180,7 @@ int main(int argc, char *argv[]) Mat frame, frame_vis; - while(cap.read(frame) && waitKey(30) != 27) // capture frame until ESC is pressed + while(cap.read(frame) && (char)waitKey(30) != 27) // capture frame until ESC is pressed { frame_vis = frame.clone(); // refresh visualisation frame diff --git a/samples/cpp/tutorial_code/features2D/AKAZE_tracking/planar_tracking.cpp b/samples/cpp/tutorial_code/features2D/AKAZE_tracking/planar_tracking.cpp index 4920e428cf..77bd9a6894 100755 --- a/samples/cpp/tutorial_code/features2D/AKAZE_tracking/planar_tracking.cpp +++ b/samples/cpp/tutorial_code/features2D/AKAZE_tracking/planar_tracking.cpp @@ -195,7 +195,7 @@ int main(int argc, char **argv) drawStatistics(orb_res, orb_draw_stats); vconcat(akaze_res, orb_res, res_frame); cv::imshow(video_name, res_frame); - if(cv::waitKey(1)==27) break; //quit on ESC button + if(waitKey(1)==27) break; //quit on ESC button } akaze_stats /= i - 1; orb_stats /= i - 1; diff --git a/samples/cpp/tutorial_code/objectDetection/objectDetection.cpp b/samples/cpp/tutorial_code/objectDetection/objectDetection.cpp index fbd76e4f08..fe321ec21d 100644 --- a/samples/cpp/tutorial_code/objectDetection/objectDetection.cpp +++ b/samples/cpp/tutorial_code/objectDetection/objectDetection.cpp @@ -44,8 +44,8 @@ int main( void ) //-- 3. Apply the classifier to the frame detectAndDisplay( frame ); - int c = waitKey(10); - if( (char)c == 27 ) { break; } // escape + char c = (char)waitKey(10); + if( c == 27 ) { break; } // escape } return 0; } diff --git a/samples/cpp/tutorial_code/objectDetection/objectDetection2.cpp b/samples/cpp/tutorial_code/objectDetection/objectDetection2.cpp index d28fa2bba6..e57139b18a 100644 --- a/samples/cpp/tutorial_code/objectDetection/objectDetection2.cpp +++ b/samples/cpp/tutorial_code/objectDetection/objectDetection2.cpp @@ -51,8 +51,8 @@ int main( void ) detectAndDisplay( frame ); //-- bail out if escape was pressed - int c = waitKey(10); - if( (char)c == 27 ) { break; } + char c = (char)waitKey(10); + if( c == 27 ) { break; } } return 0; } diff --git a/samples/cpp/tutorial_code/photo/seamless_cloning/cloning_gui.cpp b/samples/cpp/tutorial_code/photo/seamless_cloning/cloning_gui.cpp index 180cd69ce2..38ce2959a2 100644 --- a/samples/cpp/tutorial_code/photo/seamless_cloning/cloning_gui.cpp +++ b/samples/cpp/tutorial_code/photo/seamless_cloning/cloning_gui.cpp @@ -452,7 +452,7 @@ int main() for(;;) { - char key = (char) waitKey(0); + char key = (char)waitKey(0); if(key == 'd' && flag3 == 0) { diff --git a/samples/cpp/tutorial_code/video/bg_sub.cpp b/samples/cpp/tutorial_code/video/bg_sub.cpp index 94799f388b..bd511eb702 100644 --- a/samples/cpp/tutorial_code/video/bg_sub.cpp +++ b/samples/cpp/tutorial_code/video/bg_sub.cpp @@ -23,7 +23,7 @@ using namespace std; Mat frame; //current frame Mat fgMaskMOG2; //fg mask fg mask generated by MOG2 method Ptr pMOG2; //MOG2 Background subtractor -int keyboard; //input from keyboard +char keyboard; //input from keyboard /** Function Headers */ void help(); @@ -98,7 +98,8 @@ void processVideo(char* videoFilename) { exit(EXIT_FAILURE); } //read input data. ESC or 'q' for quitting - while( (char)keyboard != 'q' && (char)keyboard != 27 ){ + keyboard = 0; + while( keyboard != 'q' && keyboard != 27 ){ //read the current frame if(!capture.read(frame)) { cerr << "Unable to read next frame." << endl; @@ -119,7 +120,7 @@ void processVideo(char* videoFilename) { imshow("Frame", frame); imshow("FG Mask MOG 2", fgMaskMOG2); //get the input from the keyboard - keyboard = waitKey( 30 ); + keyboard = (char)waitKey( 30 ); } //delete capture object capture.release(); @@ -139,7 +140,8 @@ void processImages(char* fistFrameFilename) { //current image filename string fn(fistFrameFilename); //read input data. ESC or 'q' for quitting - while( (char)keyboard != 'q' && (char)keyboard != 27 ){ + keyboard = 0; + while( keyboard != 'q' && keyboard != 27 ){ //update the background model pMOG2->apply(frame, fgMaskMOG2); //get the frame number and write it on the current frame @@ -162,7 +164,7 @@ void processImages(char* fistFrameFilename) { imshow("Frame", frame); imshow("FG Mask MOG 2", fgMaskMOG2); //get the input from the keyboard - keyboard = waitKey( 30 ); + keyboard = (char)waitKey( 30 ); //search for the next image in the sequence ostringstream oss; oss << (frameNumber + 1); diff --git a/samples/cpp/tutorial_code/videoio/video-input-psnr-ssim/video-input-psnr-ssim.cpp b/samples/cpp/tutorial_code/videoio/video-input-psnr-ssim/video-input-psnr-ssim.cpp index d3f3c21c09..be0b1a8a21 100644 --- a/samples/cpp/tutorial_code/videoio/video-input-psnr-ssim/video-input-psnr-ssim.cpp +++ b/samples/cpp/tutorial_code/videoio/video-input-psnr-ssim/video-input-psnr-ssim.cpp @@ -44,7 +44,6 @@ int main(int argc, char *argv[]) conv << argv[3] << endl << argv[4]; // put in the strings conv >> psnrTriggerValue >> delay; // take out the numbers - char c; int frameNum = -1; // Frame counter VideoCapture captRefrnc(sourceReference), captUndTst(sourceCompareWith); @@ -126,7 +125,7 @@ int main(int argc, char *argv[]) imshow(WIN_RF, frameReference); imshow(WIN_UT, frameUnderTest); - c = (char)waitKey(delay); + char c = (char)waitKey(delay); if (c == 27) break; } diff --git a/samples/cpp/watershed.cpp b/samples/cpp/watershed.cpp index 9f2e69ec6b..0991bb0424 100644 --- a/samples/cpp/watershed.cpp +++ b/samples/cpp/watershed.cpp @@ -74,19 +74,19 @@ int main( int argc, char** argv ) for(;;) { - int c = waitKey(0); + char c = (char)waitKey(0); - if( (char)c == 27 ) + if( c == 27 ) break; - if( (char)c == 'r' ) + if( c == 'r' ) { markerMask = Scalar::all(0); img0.copyTo(img); imshow( "image", img ); } - if( (char)c == 'w' || (char)c == ' ' ) + if( c == 'w' || c == ' ' ) { int i, j, compCount = 0; vector > contours; diff --git a/samples/gpu/bgfg_segm.cpp b/samples/gpu/bgfg_segm.cpp index 5383db7f0f..b7d9d7e9ae 100644 --- a/samples/gpu/bgfg_segm.cpp +++ b/samples/gpu/bgfg_segm.cpp @@ -161,7 +161,7 @@ int main(int argc, const char** argv) if (!bgimg.empty()) imshow("mean background image", bgimg); - int key = waitKey(30); + char key = (char)waitKey(30); if (key == 27) break; } diff --git a/samples/gpu/opengl.cpp b/samples/gpu/opengl.cpp index 9e2c68c432..6bed4e367d 100644 --- a/samples/gpu/opengl.cpp +++ b/samples/gpu/opengl.cpp @@ -105,8 +105,8 @@ int main(int argc, char* argv[]) for (;;) { updateWindow("OpenGL"); - int key = waitKey(40); - if ((key & 0xff) == 27) + char key = (char)waitKey(40); + if (key == 27) break; } diff --git a/samples/python/camshift.py b/samples/python/camshift.py index d1298b9c27..d55c1ac76c 100755 --- a/samples/python/camshift.py +++ b/samples/python/camshift.py @@ -110,7 +110,7 @@ class App(object): cv2.imshow('camshift', vis) - ch = 0xFF & cv2.waitKey(5) + ch = cv2.waitKey(5) if ch == 27: break if ch == ord('b'): diff --git a/samples/python/coherence.py b/samples/python/coherence.py index 8ca61fcb21..a1e34b86f4 100755 --- a/samples/python/coherence.py +++ b/samples/python/coherence.py @@ -77,7 +77,7 @@ if __name__ == '__main__': cv2.imshow('src', src) update() while True: - ch = 0xFF & cv2.waitKey() + ch = cv2.waitKey() if ch == ord(' '): update() if ch == 27: diff --git a/samples/python/color_histogram.py b/samples/python/color_histogram.py index 9e691b7efe..c1e5d56e4c 100755 --- a/samples/python/color_histogram.py +++ b/samples/python/color_histogram.py @@ -56,7 +56,7 @@ if __name__ == '__main__': vis = hsv_map*h[:,:,np.newaxis] / 255.0 cv2.imshow('hist', vis) - ch = 0xFF & cv2.waitKey(1) + ch = cv2.waitKey(1) if ch == 27: break cv2.destroyAllWindows() diff --git a/samples/python/contours.py b/samples/python/contours.py index 619108b245..73b9f2f821 100755 --- a/samples/python/contours.py +++ b/samples/python/contours.py @@ -66,5 +66,5 @@ if __name__ == '__main__': update(3) cv2.createTrackbar( "levels+3", "contours", 3, 7, update ) cv2.imshow('image', img) - 0xFF & cv2.waitKey() + cv2.waitKey() cv2.destroyAllWindows() diff --git a/samples/python/deconvolution.py b/samples/python/deconvolution.py index ce798538b8..74f51a714b 100755 --- a/samples/python/deconvolution.py +++ b/samples/python/deconvolution.py @@ -122,7 +122,7 @@ if __name__ == '__main__': update(None) while True: - ch = cv2.waitKey() & 0xFF + ch = cv2.waitKey() if ch == 27: break if ch == ord(' '): diff --git a/samples/python/digits_video.py b/samples/python/digits_video.py index 74b9d6993b..2f79cb5cc0 100755 --- a/samples/python/digits_video.py +++ b/samples/python/digits_video.py @@ -92,7 +92,7 @@ def main(): cv2.imshow('frame', frame) cv2.imshow('bin', bin) - ch = cv2.waitKey(1) & 0xFF + ch = cv2.waitKey(1) if ch == 27: break diff --git a/samples/python/distrans.py b/samples/python/distrans.py index 00e173d523..8abe460eda 100755 --- a/samples/python/distrans.py +++ b/samples/python/distrans.py @@ -59,7 +59,7 @@ if __name__ == '__main__': while True: - ch = 0xFF & cv2.waitKey(50) + ch = cv2.waitKey(50) if ch == 27: break if ch == ord('v'): diff --git a/samples/python/edge.py b/samples/python/edge.py index c096fb46a7..b597729ee9 100755 --- a/samples/python/edge.py +++ b/samples/python/edge.py @@ -49,7 +49,7 @@ if __name__ == '__main__': vis = np.uint8(vis/2.) vis[edge != 0] = (0, 255, 0) cv2.imshow('edge', vis) - ch = cv2.waitKey(5) & 0xFF + ch = cv2.waitKey(5) if ch == 27: break cv2.destroyAllWindows() diff --git a/samples/python/facedetect.py b/samples/python/facedetect.py index 15187c62f4..0f79663d7b 100755 --- a/samples/python/facedetect.py +++ b/samples/python/facedetect.py @@ -68,6 +68,6 @@ if __name__ == '__main__': draw_str(vis, (20, 20), 'time: %.1f ms' % (dt*1000)) cv2.imshow('facedetect', vis) - if 0xFF & cv2.waitKey(5) == 27: + if cv2.waitKey(5) == 27: break cv2.destroyAllWindows() diff --git a/samples/python/fitline.py b/samples/python/fitline.py index 95fb2b8d10..c91144c2a0 100755 --- a/samples/python/fitline.py +++ b/samples/python/fitline.py @@ -88,7 +88,7 @@ if __name__ == '__main__': cv2.createTrackbar('outlier %', 'fit line', 30, 100, update) while True: update() - ch = cv2.waitKey(0) & 0xFF + ch = cv2.waitKey(0) if ch == ord('f'): if PY3: cur_func_name = next(dist_func_names) diff --git a/samples/python/floodfill.py b/samples/python/floodfill.py index 161c6323f4..1b988d3763 100755 --- a/samples/python/floodfill.py +++ b/samples/python/floodfill.py @@ -66,7 +66,7 @@ if __name__ == '__main__': cv2.createTrackbar('hi', 'floodfill', 20, 255, update) while True: - ch = 0xFF & cv2.waitKey() + ch = cv2.waitKey() if ch == 27: break if ch == ord('f'): diff --git a/samples/python/gaussian_mix.py b/samples/python/gaussian_mix.py index 64fbe23462..79c69fcdc1 100755 --- a/samples/python/gaussian_mix.py +++ b/samples/python/gaussian_mix.py @@ -63,7 +63,7 @@ if __name__ == '__main__': draw_gaussain(img, m, cov, (0, 0, 255)) cv2.imshow('gaussian mixture', img) - ch = 0xFF & cv2.waitKey(0) + ch = cv2.waitKey(0) if ch == 27: break cv2.destroyAllWindows() diff --git a/samples/python/grabcut.py b/samples/python/grabcut.py index 19378e6cce..1a5c2d0b3a 100644 --- a/samples/python/grabcut.py +++ b/samples/python/grabcut.py @@ -129,7 +129,7 @@ if __name__ == '__main__': cv2.imshow('output',output) cv2.imshow('input',img) - k = 0xFF & cv2.waitKey(1) + k = cv2.waitKey(1) # key bindings if k == 27: # esc to exit diff --git a/samples/python/hist.py b/samples/python/hist.py index 80cc6b4802..d1801c7e1b 100755 --- a/samples/python/hist.py +++ b/samples/python/hist.py @@ -84,7 +84,7 @@ if __name__ == '__main__': cv2.imshow('image',im) while True: - k = cv2.waitKey(0)&0xFF + k = cv2.waitKey(0) if k == ord('a'): curve = hist_curve(im) cv2.imshow('histogram',curve) diff --git a/samples/python/inpaint.py b/samples/python/inpaint.py index 0ca72f1a25..3b738bb141 100755 --- a/samples/python/inpaint.py +++ b/samples/python/inpaint.py @@ -41,7 +41,7 @@ if __name__ == '__main__': sketch = Sketcher('img', [img_mark, mark], lambda : ((255, 255, 255), 255)) while True: - ch = 0xFF & cv2.waitKey() + ch = cv2.waitKey() if ch == 27: break if ch == ord(' '): diff --git a/samples/python/kalman.py b/samples/python/kalman.py index be361ff068..96a6fa6fe4 100755 --- a/samples/python/kalman.py +++ b/samples/python/kalman.py @@ -90,7 +90,7 @@ if __name__ == "__main__": if code != -1: break - if (code % 0x100) in [27, ord('q'), ord('Q')]: + if code in [27, ord('q'), ord('Q')]: break cv2.destroyWindow("Kalman") diff --git a/samples/python/kmeans.py b/samples/python/kmeans.py index b2e6b6618d..0fdc759b4e 100755 --- a/samples/python/kmeans.py +++ b/samples/python/kmeans.py @@ -44,7 +44,7 @@ if __name__ == '__main__': cv2.circle(img, (x, y), 1, c, -1) cv2.imshow('gaussian mixture', img) - ch = 0xFF & cv2.waitKey(0) + ch = cv2.waitKey(0) if ch == 27: break cv2.destroyAllWindows() diff --git a/samples/python/lappyr.py b/samples/python/lappyr.py index d8fde0f004..c68e5e8126 100755 --- a/samples/python/lappyr.py +++ b/samples/python/lappyr.py @@ -70,5 +70,5 @@ if __name__ == '__main__': cv2.imshow('laplacian pyramid filter', res) - if cv2.waitKey(1) & 0xFF == 27: + if cv2.waitKey(1) == 27: break diff --git a/samples/python/lk_homography.py b/samples/python/lk_homography.py index 3b940e415f..8cc3b695a7 100755 --- a/samples/python/lk_homography.py +++ b/samples/python/lk_homography.py @@ -90,7 +90,7 @@ class App: cv2.imshow('lk_homography', vis) - ch = 0xFF & cv2.waitKey(1) + ch = cv2.waitKey(1) if ch == 27: break if ch == ord(' '): diff --git a/samples/python/lk_track.py b/samples/python/lk_track.py index 8aa94fe642..ffa7dfa248 100755 --- a/samples/python/lk_track.py +++ b/samples/python/lk_track.py @@ -85,7 +85,7 @@ class App: self.prev_gray = frame_gray cv2.imshow('lk_track', vis) - ch = 0xFF & cv2.waitKey(1) + ch = cv2.waitKey(1) if ch == 27: break diff --git a/samples/python/morphology.py b/samples/python/morphology.py index be287d33d4..0b62784d2f 100755 --- a/samples/python/morphology.py +++ b/samples/python/morphology.py @@ -79,7 +79,7 @@ if __name__ == '__main__': cv2.createTrackbar('iters', 'morphology', 1, 10, update) update() while True: - ch = 0xFF & cv2.waitKey() + ch = cv2.waitKey() if ch == 27: break if ch == ord('1'): diff --git a/samples/python/mosse.py b/samples/python/mosse.py index 29a3a697f1..46e22d3c06 100755 --- a/samples/python/mosse.py +++ b/samples/python/mosse.py @@ -176,7 +176,7 @@ class App: self.rect_sel.draw(vis) cv2.imshow('frame', vis) - ch = cv2.waitKey(10) & 0xFF + ch = cv2.waitKey(10) if ch == 27: break if ch == ord(' '): diff --git a/samples/python/mouse_and_match.py b/samples/python/mouse_and_match.py index adbd8babee..f75b64cabf 100755 --- a/samples/python/mouse_and_match.py +++ b/samples/python/mouse_and_match.py @@ -78,6 +78,6 @@ if __name__ == '__main__': drag_start = None gray=cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.imshow("gray",gray) - if (cv2.waitKey() & 255) == 27: + if cv2.waitKey() == 27: break cv2.destroyAllWindows() diff --git a/samples/python/mser.py b/samples/python/mser.py index 1f0cb046a7..1c5c69bd9a 100755 --- a/samples/python/mser.py +++ b/samples/python/mser.py @@ -40,6 +40,6 @@ if __name__ == '__main__': cv2.polylines(vis, hulls, 1, (0, 255, 0)) cv2.imshow('img', vis) - if 0xFF & cv2.waitKey(5) == 27: + if cv2.waitKey(5) == 27: break cv2.destroyAllWindows() diff --git a/samples/python/opt_flow.py b/samples/python/opt_flow.py index be85262c91..3d4ef34dc2 100755 --- a/samples/python/opt_flow.py +++ b/samples/python/opt_flow.py @@ -83,7 +83,7 @@ if __name__ == '__main__': cur_glitch = warp_flow(cur_glitch, flow) cv2.imshow('glitch', cur_glitch) - ch = 0xFF & cv2.waitKey(5) + ch = cv2.waitKey(5) if ch == 27: break if ch == ord('1'): diff --git a/samples/python/peopledetect.py b/samples/python/peopledetect.py index 1cad95288b..84db09639e 100755 --- a/samples/python/peopledetect.py +++ b/samples/python/peopledetect.py @@ -65,7 +65,7 @@ if __name__ == '__main__': draw_detections(img, found_filtered, 3) print('%d (%d) found' % (len(found_filtered), len(found))) cv2.imshow('img', img) - ch = 0xFF & cv2.waitKey() + ch = cv2.waitKey() if ch == 27: break cv2.destroyAllWindows() diff --git a/samples/python/plane_ar.py b/samples/python/plane_ar.py index 7f2969cdd8..8994833c09 100755 --- a/samples/python/plane_ar.py +++ b/samples/python/plane_ar.py @@ -75,7 +75,7 @@ class App: self.rect_sel.draw(vis) cv2.imshow('plane', vis) - ch = cv2.waitKey(1) & 0xFF + ch = cv2.waitKey(1) if ch == ord(' '): self.paused = not self.paused if ch == ord('c'): diff --git a/samples/python/plane_tracker.py b/samples/python/plane_tracker.py index f66f3829c8..e285c085d7 100755 --- a/samples/python/plane_tracker.py +++ b/samples/python/plane_tracker.py @@ -170,7 +170,7 @@ class App: self.rect_sel.draw(vis) cv2.imshow('plane', vis) - ch = cv2.waitKey(1) & 0xFF + ch = cv2.waitKey(1) if ch == ord(' '): self.paused = not self.paused if ch == ord('c'): diff --git a/samples/python/squares.py b/samples/python/squares.py index cc33144deb..be28f1a3e7 100755 --- a/samples/python/squares.py +++ b/samples/python/squares.py @@ -49,7 +49,7 @@ if __name__ == '__main__': squares = find_squares(img) cv2.drawContours( img, squares, -1, (0, 255, 0), 3 ) cv2.imshow('squares', img) - ch = 0xFF & cv2.waitKey() + ch = cv2.waitKey() if ch == 27: break cv2.destroyAllWindows() diff --git a/samples/python/tst_scene_render.py b/samples/python/tst_scene_render.py index 78ce478a12..ce956f59d2 100644 --- a/samples/python/tst_scene_render.py +++ b/samples/python/tst_scene_render.py @@ -108,9 +108,9 @@ if __name__ == '__main__': img = render.getNextFrame() cv2.imshow('img', img) - ch = 0xFF & cv2.waitKey(3) + ch = cv2.waitKey(3) if ch == 27: break #import os #print (os.environ['PYTHONPATH']) - cv2.destroyAllWindows() \ No newline at end of file + cv2.destroyAllWindows() diff --git a/samples/python/turing.py b/samples/python/turing.py index f9926ba909..5733d056bd 100755 --- a/samples/python/turing.py +++ b/samples/python/turing.py @@ -69,6 +69,6 @@ if __name__ == '__main__': vis = a.copy() draw_str(vis, (20, 20), 'frame %d' % frame_i) cv2.imshow('a', vis) - if 0xFF & cv2.waitKey(5) == 27: + if cv2.waitKey(5) == 27: break cv2.destroyAllWindows() diff --git a/samples/python/video.py b/samples/python/video.py index bc0348fd93..be15641b11 100755 --- a/samples/python/video.py +++ b/samples/python/video.py @@ -217,7 +217,7 @@ if __name__ == '__main__': ret, img = cap.read() imgs.append(img) cv2.imshow('capture %d' % i, img) - ch = 0xFF & cv2.waitKey(1) + ch = cv2.waitKey(1) if ch == 27: break if ch == ord(' '): diff --git a/samples/python/video_threaded.py b/samples/python/video_threaded.py index 76d764b62d..896a5c3e99 100755 --- a/samples/python/video_threaded.py +++ b/samples/python/video_threaded.py @@ -81,7 +81,7 @@ if __name__ == '__main__': else: task = DummyTask(process_frame(frame, t)) pending.append(task) - ch = 0xFF & cv2.waitKey(1) + ch = cv2.waitKey(1) if ch == ord(' '): threaded_mode = not threaded_mode if ch == 27: diff --git a/samples/python/video_v4l2.py b/samples/python/video_v4l2.py index eed22d11b8..0af68e5d9d 100644 --- a/samples/python/video_v4l2.py +++ b/samples/python/video_v4l2.py @@ -58,10 +58,10 @@ while True: cv2.putText(img, "FPS: {}".format(fps), (15, 80), font, 1.0, color) cv2.imshow("Video", img) - k = 0xFF & cv2.waitKey(1) + k = cv2.waitKey(1) if k == 27: break - elif k == ord("g"): + elif k == ord('g'): convert_rgb = not convert_rgb cap.set(cv2.CAP_PROP_CONVERT_RGB, convert_rgb) diff --git a/samples/python/watershed.py b/samples/python/watershed.py index 134e499301..30be82cf0c 100755 --- a/samples/python/watershed.py +++ b/samples/python/watershed.py @@ -56,7 +56,7 @@ class App: def run(self): while cv2.getWindowProperty('img', 0) != -1 or cv2.getWindowProperty('watershed', 0) != -1: - ch = 0xFF & cv2.waitKey(50) + ch = cv2.waitKey(50) if ch == 27: break if ch >= ord('1') and ch <= ord('7'): diff --git a/samples/tapi/ufacedetect.cpp b/samples/tapi/ufacedetect.cpp index 760ee7090d..874300ab77 100644 --- a/samples/tapi/ufacedetect.cpp +++ b/samples/tapi/ufacedetect.cpp @@ -78,9 +78,9 @@ int main( int argc, const char** argv ) if( inputName.empty() || (isdigit(inputName[0]) && inputName.size() == 1) ) { - int c = inputName.empty() ? 0 : inputName[0] - '0'; - if(!capture.open(c)) - cout << "Capture from camera #" << c << " didn't work" << endl; + int camera = inputName.empty() ? 0 : inputName[0] - '0'; + if(!capture.open(camera)) + cout << "Capture from camera #" << camera << " didn't work" << endl; } else { @@ -105,7 +105,7 @@ int main( int argc, const char** argv ) detectAndDraw( frame, canvas, cascade, nestedCascade, scale, tryflip ); - int c = waitKey(10); + char c = (char)waitKey(10); if( c == 27 || c == 'q' || c == 'Q' ) break; } @@ -128,7 +128,7 @@ int main( int argc, const char** argv ) char buf[1000+1]; while( fgets( buf, 1000, f ) ) { - int len = (int)strlen(buf), c; + int len = (int)strlen(buf); while( len > 0 && isspace(buf[len-1]) ) len--; buf[len] = '\0'; @@ -137,7 +137,7 @@ int main( int argc, const char** argv ) if( !image.empty() ) { detectAndDraw( image, canvas, cascade, nestedCascade, scale, tryflip ); - c = waitKey(0); + char c = (char)waitKey(0); if( c == 27 || c == 'q' || c == 'Q' ) break; }