It will be help when you convert opencv 2.x code to 3.x opencv version.
Thank you.
This is mog2 example of 2.4.9 version.
http://study.marearts.com/2015/05/basic-mog2-example-souce-using-opencv.html
...
#include < iostream> #include < opencv2\opencv.hpp> #include < opencv2\videoio.hpp> #include < opencv2\highgui.hpp> //#include < opencv2\core\cuda.hpp> #include < opencv2\core.hpp> //#include < opencv2\bgsegm.hpp> #include < opencv2\cudabgsegm.hpp> #ifdef _DEBUG #pragma comment(lib, "opencv_core300d.lib") #pragma comment(lib, "opencv_highgui300d.lib") #pragma comment(lib, "opencv_videoio300d.lib") #pragma comment(lib, "opencv_cudabgsegm300d.lib") #else #pragma comment(lib, "opencv_core300.lib") #pragma comment(lib, "opencv_highgui300.lib") #pragma comment(lib, "opencv_videoio300.lib") #pragma comment(lib, "opencv_cudabgsegm300.lib") #endif using namespace std; using namespace cv; int main() { // VideoCapture cap("M:\\____videoSample____\\blog\\video20.wmv"); //VideoCapture cap("M:\\____videoSample____\\posco\\cartype1.avi"); // Ptr< cuda::BackgroundSubtractorMOG2 > MOG2_g = cuda::createBackgroundSubtractorMOG2(3000, 64); Mat Mog_Mask; cuda::GpuMat Mog_Mask_g; // Mat o_frame; cuda::GpuMat o_frame_gpu; cap >> o_frame; if (o_frame.empty()) return 0; ///////////////////////////////////////////////////////////////////////// unsigned long AAtime = 0, BBtime = 0; //Mat rFrame; Mat showMat_r_blur; Mat showMat_r; namedWindow("origin"); namedWindow("mog_mask"); while (1) { ///////////////////////////////////////////////////////////////////////// cap >> o_frame; if (o_frame.empty()) return 0; o_frame_gpu.upload(o_frame); AAtime = getTickCount(); // MOG2_g->apply(o_frame_gpu, Mog_Mask_g, -1); //pMOG2_g.operator()(o_frame_gpu, Mog_Mask_g, -1); // Mog_Mask_g.download(Mog_Mask); BBtime = getTickCount(); float pt = (BBtime - AAtime) / getTickFrequency(); float fpt = 1 / pt; printf("gpu %.4lf / %.4lf \n", pt, fpt); o_frame_gpu.download(showMat_r); imshow("origin", showMat_r); imshow("mog_mask", Mog_Mask); ///////////////////////////////////////////////////////////////////////// if (waitKey(10) > 0) break; } MOG2_g.release(); return 0; }...
No comments:
Post a Comment