From d3d0434f07143b6c823d93d54ca2d0b15bb36507 Mon Sep 17 00:00:00 2001 From: "Fco. Javier Delgado del Hoyo" Date: Wed, 30 Jul 2014 09:00:23 +0200 Subject: [PATCH 1/4] Removed opencv_legacy dependency from cudaoptflow --- modules/cudaoptflow/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/cudaoptflow/CMakeLists.txt b/modules/cudaoptflow/CMakeLists.txt index b7a2109fbb..f2d3e3da0b 100644 --- a/modules/cudaoptflow/CMakeLists.txt +++ b/modules/cudaoptflow/CMakeLists.txt @@ -6,4 +6,4 @@ set(the_description "CUDA-accelerated Optical Flow") ocv_warnings_disable(CMAKE_CXX_FLAGS /wd4127 /wd4324 /wd4512 -Wundef -Wmissing-declarations) -ocv_define_module(cudaoptflow opencv_video opencv_legacy opencv_cudaarithm opencv_cudawarping opencv_cudaimgproc OPTIONAL opencv_cudalegacy) +ocv_define_module(cudaoptflow opencv_video opencv_cudaarithm opencv_cudawarping opencv_cudaimgproc OPTIONAL opencv_cudalegacy) From 8def44047a76fd63659dc5b2b9a3329941572aa3 Mon Sep 17 00:00:00 2001 From: "Fco. Javier Delgado del Hoyo" Date: Thu, 31 Jul 2014 09:08:29 +0200 Subject: [PATCH 2/4] Removed cvCalcOpticalFlowBM from performance test --- modules/cudaoptflow/perf/perf_optflow.cpp | 26 +---------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/modules/cudaoptflow/perf/perf_optflow.cpp b/modules/cudaoptflow/perf/perf_optflow.cpp index 6c312ad0be..71ab895082 100644 --- a/modules/cudaoptflow/perf/perf_optflow.cpp +++ b/modules/cudaoptflow/perf/perf_optflow.cpp @@ -41,7 +41,6 @@ //M*/ #include "perf_precomp.hpp" -#include "opencv2/legacy.hpp" using namespace std; using namespace testing; @@ -389,24 +388,6 @@ PERF_TEST_P(ImagePair, OpticalFlowDual_TVL1, ////////////////////////////////////////////////////// // OpticalFlowBM -void calcOpticalFlowBM(const cv::Mat& prev, const cv::Mat& curr, - cv::Size bSize, cv::Size shiftSize, cv::Size maxRange, int usePrevious, - cv::Mat& velx, cv::Mat& vely) -{ - cv::Size sz((curr.cols - bSize.width + shiftSize.width)/shiftSize.width, (curr.rows - bSize.height + shiftSize.height)/shiftSize.height); - - velx.create(sz, CV_32FC1); - vely.create(sz, CV_32FC1); - - CvMat cvprev = prev; - CvMat cvcurr = curr; - - CvMat cvvelx = velx; - CvMat cvvely = vely; - - cvCalcOpticalFlowBM(&cvprev, &cvcurr, bSize, shiftSize, maxRange, usePrevious, &cvvelx, &cvvely); -} - PERF_TEST_P(ImagePair, OpticalFlowBM, Values(make_pair("gpu/opticalflow/frame0.png", "gpu/opticalflow/frame1.png"))) { @@ -435,12 +416,7 @@ PERF_TEST_P(ImagePair, OpticalFlowBM, } else { - cv::Mat u, v; - - TEST_CYCLE() calcOpticalFlowBM(frame0, frame1, block_size, shift_size, max_range, false, u, v); - - CPU_SANITY_CHECK(u); - CPU_SANITY_CHECK(v); + FAIL_NO_CPU(); } } From fd10557e78731885370c2df78af7152fe8ee82c2 Mon Sep 17 00:00:00 2001 From: "Fco. Javier Delgado del Hoyo" Date: Thu, 31 Jul 2014 09:21:44 +0200 Subject: [PATCH 3/4] Removed cvCalcOpticalFlowBM from cudaoptflow test --- modules/cudaoptflow/test/test_optflow.cpp | 30 +---------------------- 1 file changed, 1 insertion(+), 29 deletions(-) diff --git a/modules/cudaoptflow/test/test_optflow.cpp b/modules/cudaoptflow/test/test_optflow.cpp index 110fed0339..d537f5b4c2 100644 --- a/modules/cudaoptflow/test/test_optflow.cpp +++ b/modules/cudaoptflow/test/test_optflow.cpp @@ -41,7 +41,6 @@ //M*/ #include "test_precomp.hpp" -#include "opencv2/legacy.hpp" #ifdef HAVE_CUDA @@ -373,32 +372,11 @@ INSTANTIATE_TEST_CASE_P(CUDA_OptFlow, OpticalFlowDual_TVL1, testing::Combine( ////////////////////////////////////////////////////// // OpticalFlowBM -namespace -{ - void calcOpticalFlowBM(const cv::Mat& prev, const cv::Mat& curr, - cv::Size bSize, cv::Size shiftSize, cv::Size maxRange, int usePrevious, - cv::Mat& velx, cv::Mat& vely) - { - cv::Size sz((curr.cols - bSize.width + shiftSize.width)/shiftSize.width, (curr.rows - bSize.height + shiftSize.height)/shiftSize.height); - - velx.create(sz, CV_32FC1); - vely.create(sz, CV_32FC1); - - CvMat cvprev = prev; - CvMat cvcurr = curr; - - CvMat cvvelx = velx; - CvMat cvvely = vely; - - cvCalcOpticalFlowBM(&cvprev, &cvcurr, bSize, shiftSize, maxRange, usePrevious, &cvvelx, &cvvely); - } -} - struct OpticalFlowBM : testing::TestWithParam { }; -CUDA_TEST_P(OpticalFlowBM, Accuracy) +CUDA_TEST_P(OpticalFlowBM, BlockMatching) { cv::cuda::DeviceInfo devInfo = GetParam(); cv::cuda::setDevice(devInfo.deviceID()); @@ -419,12 +397,6 @@ CUDA_TEST_P(OpticalFlowBM, Accuracy) cv::cuda::calcOpticalFlowBM(loadMat(frame0), loadMat(frame1), block_size, shift_size, max_range, false, d_velx, d_vely, buf); - - cv::Mat velx, vely; - calcOpticalFlowBM(frame0, frame1, block_size, shift_size, max_range, false, velx, vely); - - EXPECT_MAT_NEAR(velx, d_velx, 0); - EXPECT_MAT_NEAR(vely, d_vely, 0); } INSTANTIATE_TEST_CASE_P(CUDA_OptFlow, OpticalFlowBM, ALL_DEVICES); From 625fd613130dcd0d49ea6dafd81b741b6c2b6165 Mon Sep 17 00:00:00 2001 From: "Fco. Javier Delgado del Hoyo" Date: Fri, 1 Aug 2014 09:28:19 +0200 Subject: [PATCH 4/4] Removed OpticalFlowBM test from cudaoptflow module --- modules/cudaoptflow/test/test_optflow.cpp | 32 ----------------------- 1 file changed, 32 deletions(-) diff --git a/modules/cudaoptflow/test/test_optflow.cpp b/modules/cudaoptflow/test/test_optflow.cpp index d537f5b4c2..1de40510dd 100644 --- a/modules/cudaoptflow/test/test_optflow.cpp +++ b/modules/cudaoptflow/test/test_optflow.cpp @@ -369,38 +369,6 @@ INSTANTIATE_TEST_CASE_P(CUDA_OptFlow, OpticalFlowDual_TVL1, testing::Combine( ALL_DEVICES, WHOLE_SUBMAT)); -////////////////////////////////////////////////////// -// OpticalFlowBM - -struct OpticalFlowBM : testing::TestWithParam -{ -}; - -CUDA_TEST_P(OpticalFlowBM, BlockMatching) -{ - cv::cuda::DeviceInfo devInfo = GetParam(); - cv::cuda::setDevice(devInfo.deviceID()); - - cv::Mat frame0 = readImage("opticalflow/rubberwhale1.png", cv::IMREAD_GRAYSCALE); - ASSERT_FALSE(frame0.empty()); - cv::resize(frame0, frame0, cv::Size(), 0.5, 0.5); - - cv::Mat frame1 = readImage("opticalflow/rubberwhale2.png", cv::IMREAD_GRAYSCALE); - ASSERT_FALSE(frame1.empty()); - cv::resize(frame1, frame1, cv::Size(), 0.5, 0.5); - - cv::Size block_size(8, 8); - cv::Size shift_size(1, 1); - cv::Size max_range(8, 8); - - cv::cuda::GpuMat d_velx, d_vely, buf; - cv::cuda::calcOpticalFlowBM(loadMat(frame0), loadMat(frame1), - block_size, shift_size, max_range, false, - d_velx, d_vely, buf); -} - -INSTANTIATE_TEST_CASE_P(CUDA_OptFlow, OpticalFlowBM, ALL_DEVICES); - ////////////////////////////////////////////////////// // FastOpticalFlowBM