#include #include #include int main() { cv::VideoCapture camera(0); if (!camera.isOpened()) { std::cerr << "[ERROR] Could not open the camera!" << std::endl; return 1; } cv::namedWindow("Webcam", cv::WINDOW_AUTOSIZE); while(true) { cv::Mat frame; camera >> frame; cv::imshow("Webcam", frame);//normal //---------- grey cv::Mat frame_gray; cv::cvtColor(frame,frame_gray,cv::COLOR_BGR2GRAY); //cv::imshow("gray",frame_gray);//grey //----------- treshold cv::Mat frame_thresh; threshold(frame_gray, frame_thresh, 150, 255, cv::THRESH_BINARY); //cv::imshow("thresh", frame_thresh); //----------- contour std::vector> contours; std::vector hierarchy; findContours(frame_thresh, contours, hierarchy, cv::RETR_TREE, cv::CHAIN_APPROX_NONE); cv::Mat frame_contours = frame.clone(); drawContours(frame_contours, contours, -1, cv::Scalar(0, 255, 0), 2); cv::imshow("contours", frame_contours); if (cv::waitKey(30) >= 0) break; } return 0; }