// ----------------------------------------------
// C++ example program
// Adapted from: https://docs.opencv.org/3.1.0/d8/dfe/classcv_1_1VideoCapture.html
// Thomas Braunl, 2018
// ----------------------------------------------

#include "opencv2/opencv.hpp"
#include <opencv2/highgui.hpp>
using namespace cv;

int main(int, char**)
{
    VideoCapture cap(0); // open the default camera
    if(!cap.isOpened())  // check if we succeeded
        return -1;
    Mat edges;
    namedWindow("edges",1);
    
    for (int i=0; i<100; i++)
    { Mat frame;
      cap >> frame; // get a new frame from camera
      cvtColor(frame, edges, COLOR_BGR2GRAY);
      GaussianBlur(edges, edges, Size(7,7), 1.5, 1.5);
      Canny(edges, edges, 0, 30, 3);
      imshow("edges", edges);
      if(waitKey(30) >= 0) break;
    }
    // the camera will be deinitialized automatically in VideoCapture destructor
    return 0;
}

