From a5383b8627e1c52bfc114283b0ddf7b990adb439 Mon Sep 17 00:00:00 2001 From: peng xiao Date: Fri, 28 Jun 2013 10:52:39 +0800 Subject: [PATCH] Move function definition from header to cpp. --- modules/ocl/include/opencv2/ocl/ocl.hpp | 28 ++-------------------- modules/ocl/src/optical_flow_farneback.cpp | 28 ++++++++++++++++++++++ 2 files changed, 30 insertions(+), 26 deletions(-) diff --git a/modules/ocl/include/opencv2/ocl/ocl.hpp b/modules/ocl/include/opencv2/ocl/ocl.hpp index aecf2be74..a41555c04 100644 --- a/modules/ocl/include/opencv2/ocl/ocl.hpp +++ b/modules/ocl/include/opencv2/ocl/ocl.hpp @@ -1414,17 +1414,7 @@ namespace cv class CV_EXPORTS FarnebackOpticalFlow { public: - FarnebackOpticalFlow() - { - numLevels = 5; - pyrScale = 0.5; - fastPyramids = false; - winSize = 13; - numIters = 10; - polyN = 5; - polySigma = 1.1; - flags = 0; - } + FarnebackOpticalFlow(); int numLevels; double pyrScale; @@ -1437,21 +1427,7 @@ namespace cv void operator ()(const oclMat &frame0, const oclMat &frame1, oclMat &flowx, oclMat &flowy); - void releaseMemory() - { - frames_[0].release(); - frames_[1].release(); - pyrLevel_[0].release(); - pyrLevel_[1].release(); - M_.release(); - bufM_.release(); - R_[0].release(); - R_[1].release(); - blurredFrame_[0].release(); - blurredFrame_[1].release(); - pyramid0_.clear(); - pyramid1_.clear(); - } + void releaseMemory(); private: void prepareGaussian( diff --git a/modules/ocl/src/optical_flow_farneback.cpp b/modules/ocl/src/optical_flow_farneback.cpp index e5a7abccf..e622446bb 100644 --- a/modules/ocl/src/optical_flow_farneback.cpp +++ b/modules/ocl/src/optical_flow_farneback.cpp @@ -241,6 +241,34 @@ static oclMat allocMatFromBuf(int rows, int cols, int type, oclMat &mat) return mat = oclMat(rows, cols, type); } +cv::ocl::FarnebackOpticalFlow::FarnebackOpticalFlow() +{ + numLevels = 5; + pyrScale = 0.5; + fastPyramids = false; + winSize = 13; + numIters = 10; + polyN = 5; + polySigma = 1.1; + flags = 0; +} + +void cv::ocl::FarnebackOpticalFlow::releaseMemory() +{ + frames_[0].release(); + frames_[1].release(); + pyrLevel_[0].release(); + pyrLevel_[1].release(); + M_.release(); + bufM_.release(); + R_[0].release(); + R_[1].release(); + blurredFrame_[0].release(); + blurredFrame_[1].release(); + pyramid0_.clear(); + pyramid1_.clear(); +} + void cv::ocl::FarnebackOpticalFlow::prepareGaussian( int n, double sigma, float *g, float *xg, float *xxg, double &ig11, double &ig03, double &ig33, double &ig55)