source: flair-src/tags/latest/lib/FlairVisionFilter/src/OpticalFlow.h

Last change on this file was 338, checked in by Sanahuja Guillaume, 2 years ago

remove opencv dep

File size: 1.6 KB
Line 
1/*!
2 * \file OpticalFlow.h
3 * \brief Lucas and Kanade optical flow algorithm
4 * \author Guillaume Sanahuja, Copyright Heudiasyc UMR UTC/CNRS 7253
5 * \date 2012/04/12
6 * \version 4.0
7 */
8
9
10#ifndef OPTICALFLOW_H
11#define OPTICALFLOW_H
12
13#include <IODevice.h>
14
15namespace flair {
16    namespace gui {
17        class LayoutPosition;
18    }
19    namespace filter {
20        class OpticalFlowData;
21    }
22}
23
24class OpticalFlow_impl;
25
26namespace flair {
27namespace filter {
28    /*! \class OpticalFlow
29    *
30    * \brief Lucas and Kanade optical flow algorithm
31    *
32    * Optical flow is done using the DSP of the DM3730.
33    */
34    class OpticalFlow : public core::IODevice
35    {
36
37        public:
38            /*!
39            * \brief Constructor
40            *
41            * Construct an OpticalFlow filter at given position. \n
42            * After calling this function, position will be deleted as it is no longer usefull. \n
43            *
44            * \param parent parent
45            * \param position position
46            * \param name name
47            */
48            OpticalFlow(const core::IODevice* parent,const gui::LayoutPosition* position,std::string name);
49
50            /*!
51            * \brief Destructor
52            *
53            */
54            ~OpticalFlow();
55           
56            filter::OpticalFlowData* Output(void);
57
58            core::DataType const &GetOutputDataType() const;
59
60        private:
61            void UpdateFrom(const core::io_data *data);
62           
63            class OpticalFlow_impl *pimpl_;
64           
65    };
66} // end namespace filter
67} // end namespace flair
68#endif // OPTICALFLOW_H
Note: See TracBrowser for help on using the repository browser.