source: flair-src/trunk/lib/FlairVisionFilter/src/OpticalFlowSpeed.h@ 157

Last change on this file since 157 was 143, checked in by Bayard Gildas, 7 years ago

Plop

File size: 1.9 KB
Line 
1/*!
2 * \file OpticalFlowSpeed.h
3 * \brief Optical flow speed calculation
4 * \author Guillaume Sanahuja, Copyright Heudiasyc UMR UTC/CNRS 7253
5 * \date 2012/04/12
6 * \version 4.0
7 */
8
9
10#ifndef OPTICALFLOWSPEED_H
11#define OPTICALFLOWSPEED_H
12
13#include <IODevice.h>
14
15namespace flair
16{
17 namespace core
18 {
19 class cvmatrix;
20 }
21}
22
23namespace flair
24{
25namespace filter
26{
27 class OpticalFlow;
28
29 /*! \class OpticalFlowSpeed
30 *
31 * \brief Optical flow speed calculation
32 *
33 * Speed is the mean of all optical flow values divided by the delta time between images.
34 */
35 class OpticalFlowSpeed : public core::IODevice
36 {
37 public:
38 /*!
39 * \brief Constructor
40 *
41 * Construct OpticalFlowSpeed.
42 *
43 * \param parent parent
44 * \param name name
45 */
46 OpticalFlowSpeed(const core::IODevice* parent,std::string name);
47
48 /*!
49 * \brief Destructor
50 *
51 */
52 ~OpticalFlowSpeed();
53
54 /*!
55 * \brief Speed along x axis
56 *
57 */
58 float Vx(void) const;
59
60 /*!
61 * \brief Speed along y axis
62 *
63 */
64 float Vy(void) const;
65
66 /*!
67 * \brief Output matrix
68 *
69 * Matrix is of size (2,1). \n
70 * First line is speed along x axis. \n
71 * Second line is speed along y axis. \n
72 */
73 core::cvmatrix *Output() const;
74
75 private:
76 /*!
77 * \brief Update using provided datas
78 *
79 * Reimplemented from IODevice.
80 *
81 * \param data data from the parent to process
82 */
83 void UpdateFrom(const core::io_data *data);
84
85 core::cvmatrix *output;
86 };
87} // end namespace filter
88} // end namespace flair
89#endif // OPTICALFLOWSPEED_H
Note: See TracBrowser for help on using the repository browser.