OpenCV 4.5.3(日本語機械翻訳)
optflow.hpp
1 /*
2 By downloading, copying, installing or using the software you agree to this
3 license. If you do not agree to this license, do not download, install,
4 copy or use the software.
5
6
7 License Agreement
8 For Open Source Computer Vision Library
9 (3-clause BSD License)
10
11 Copyright (C) 2013, OpenCV Foundation, all rights reserved.
12 Third party copyrights are property of their respective owners.
13
14 Redistribution and use in source and binary forms, with or without modification,
15 are permitted provided that the following conditions are met:
16
17 * Redistributions of source code must retain the above copyright notice,
18 this list of conditions and the following disclaimer.
19
20 * Redistributions in binary form must reproduce the above copyright notice,
21 this list of conditions and the following disclaimer in the documentation
22 and/or other materials provided with the distribution.
23
24 * Neither the names of the copyright holders nor the names of the contributors
25 may be used to endorse or promote products derived from this software
26 without specific prior written permission.
27
28 This software is provided by the copyright holders and contributors "as is" and
29 any express or implied warranties, including, but not limited to, the implied
30 warranties of merchantability and fitness for a particular purpose are
31 disclaimed. In no event shall copyright holders or contributors be liable for
32 any direct, indirect, incidental, special, exemplary, or consequential damages
33 (including, but not limited to, procurement of substitute goods or services;
34 loss of use, data, or profits; or business interruption) however caused
35 and on any theory of liability, whether in contract, strict liability,
36 or tort (including negligence or otherwise) arising in any way out of
37 the use of this software, even if advised of the possibility of such damage.
38 */
39
40 #ifndef __OPENCV_OPTFLOW_HPP__
41 #define __OPENCV_OPTFLOW_HPP__
42
43 #include "opencv2/core.hpp"
44 #include "opencv2/video.hpp"
45
71 #include "opencv2/optflow/rlofflow.hpp"
72 namespace cv
73{
74 namespace optflow
75{
76
79
81 CV_EXPORTS_W void calcOpticalFlowSF( InputArray from, InputArray to, OutputArray flow,
82 int layers, int averaging_block_size, int max_flow);
83
110 CV_EXPORTS_W void calcOpticalFlowSF( InputArray from, InputArray to, OutputArray flow, int layers,
111 int averaging_block_size, int max_flow,
112 double sigma_dist, double sigma_color, int postprocess_window,
113 double sigma_dist_fix, double sigma_color_fix, double occ_thr,
114 int upscale_averaging_radius, double upscale_sigma_dist,
115 double upscale_sigma_color, double speed_up_thr );
116
135 CV_EXPORTS_W void calcOpticalFlowSparseToDense ( InputArray from, InputArray to, OutputArray flow,
136 int grid_step = 8, int k = 128, float sigma = 0.05f,
137 bool use_post_proc = true, float fgs_lambda = 500.0f,
138 float fgs_sigma = 1.5f );
139
166
169
172
175
218 class CV_EXPORTS_W DualTVL1OpticalFlow : public DenseOpticalFlow
219{
220 public:
222
223 CV_WRAP virtual double getTau() const = 0;
225 CV_WRAP virtual void setTau(double val) = 0;
227
228 CV_WRAP virtual double getLambda() const = 0;
230 CV_WRAP virtual void setLambda(double val) = 0;
232
233 CV_WRAP virtual double getTheta() const = 0;
235 CV_WRAP virtual void setTheta(double val) = 0;
237
238 CV_WRAP virtual double getGamma() const = 0;
240 CV_WRAP virtual void setGamma(double val) = 0;
242
243 CV_WRAP virtual int getScalesNumber() const = 0;
245 CV_WRAP virtual void setScalesNumber(int val) = 0;
247
248 CV_WRAP virtual int getWarpingsNumber() const = 0;
250 CV_WRAP virtual void setWarpingsNumber(int val) = 0;
252
253 CV_WRAP virtual double getEpsilon() const = 0;
255 CV_WRAP virtual void setEpsilon(double val) = 0;
257
258 CV_WRAP virtual int getInnerIterations() const = 0;
260 CV_WRAP virtual void setInnerIterations(int val) = 0;
262
263 CV_WRAP virtual int getOuterIterations() const = 0;
265 CV_WRAP virtual void setOuterIterations(int val) = 0;
267
268 CV_WRAP virtual bool getUseInitialFlow() const = 0;
270 CV_WRAP virtual void setUseInitialFlow(bool val) = 0;
272
273 CV_WRAP virtual double getScaleStep() const = 0;
275 CV_WRAP virtual void setScaleStep(double val) = 0;
277
278 CV_WRAP virtual int getMedianFiltering() const = 0;
280 CV_WRAP virtual void setMedianFiltering(int val) = 0;
281
283 CV_WRAP static Ptr<DualTVL1OpticalFlow> create(
284 double tau = 0.25,
285 double lambda = 0.15,
286 double theta = 0.3,
287 int nscales = 5,
288 int warps = 5,
289 double epsilon = 0.01,
290 int innnerIterations = 30,
291 int outerIterations = 10,
292 double scaleStep = 0.8,
293 double gamma = 0.0,
294 int medianFiltering = 5,
295 bool useInitialFlow = false);
296};
297
301
303
304} //optflow
305}
306
307 #include "opencv2/optflow/motempl.hpp"
308
309 #endif
This type is very similar to InputArray except that it is used for input/output and output function p...
Definition: mat.hpp:295
Definition: video/tracking.hpp:437
"Dual TV L1" Optical Flow Algorithm.
Definition: optflow.hpp:219
CV_EXPORTS_W Ptr< DenseOpticalFlow > createOptFlow_SparseToDense()
Additional interface to the SparseToDenseFlow algorithm - calcOpticalFlowSparseToDense()
CV_EXPORTS_W Ptr< DenseOpticalFlow > createOptFlow_SimpleFlow()
Additional interface to the SimpleFlow algorithm - calcOpticalFlowSF()
CV_EXPORTS_W Ptr< DualTVL1OpticalFlow > createOptFlow_DualTVL1()
Creates instance of cv::DenseOpticalFlow
CV_EXPORTS_W void calcOpticalFlowSF(InputArray from, InputArray to, OutputArray flow, int layers, int averaging_block_size, int max_flow, double sigma_dist, double sigma_color, int postprocess_window, double sigma_dist_fix, double sigma_color_fix, double occ_thr, int upscale_averaging_radius, double upscale_sigma_dist, double upscale_sigma_color, double speed_up_thr)
Calculate an optical flow using "SimpleFlow" algorithm.
CV_EXPORTS_W void calcOpticalFlowSparseToDense(InputArray from, InputArray to, OutputArray flow, int grid_step=8, int k=128, float sigma=0.05f, bool use_post_proc=true, float fgs_lambda=500.0f, float fgs_sigma=1.5f)
Fast dense optical flow based on PyrLK sparse matches interpolation.
CV_EXPORTS_W Ptr< DenseOpticalFlow > createOptFlow_Farneback()
Additional interface to the Farneback's algorithm - calcOpticalFlowFarneback()
CV_EXPORTS_W Ptr< DenseOpticalFlow > createOptFlow_DeepFlow()
DeepFlow optical flow algorithm implementation.
cv
"black box" representation of the file storage associated with a file on disk.
Definition: aruco.hpp:75
Implementation of the PCAFlow algorithm from the following paper: http://files.is....
Implementation of the Global Patch Collider.
Definition: cvstd_wrapper.hpp:74