1 | initial version |
cv::Mat is already a refcounted smart pointer, if you pass around pointers to that, you defeat its purpose.
please do NOT use any raw pointers or new
here, and pass objects by reference:
Mat get_capture_frame_cv(cv::VideoCapture &cpp_ca)
{
cv::Mat mat; // NO new !
if (cpp_cap.isOpened())
{
cpp_cap >> mat;
}
else cerr << " cv::VideoCapture isn't open \n";
if (mat.empty()) {
cerr << " Video-stream stopped! \n";
}
return mat;
}
VideoCapture cap(0); // 1st webcam
Mat img = get_capture_frame_cv(cap);