source: flair-src/trunk/lib/FlairVisionFilter/src/CvtColor.h

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

remove opencv dep

File size: 2.0 KB
Line 
1/*!
2 * \file CvtColor.h
3 * \brief Image color conversion
4 * \author Guillaume Sanahuja, Copyright Heudiasyc UMR UTC/CNRS 7253
5 * \date 2014/07/17
6 * \version 4.0
7 */
8
9
10#ifndef CVTCOLOR_H
11#define CVTCOLOR_H
12
13#include <IODevice.h>
14
15namespace flair {
16    namespace core {
17        class Image;
18    }
19}
20
21class CvtColor_impl;
22
23namespace flair {
24namespace filter
25{
26    /*! \class CvtColor
27    *
28    * \brief Image color conversion
29    *
30    * The conversion is done using the DSP of the DM3730.
31    */
32    class CvtColor : public core::IODevice
33    {
34        public:
35            /*!
36            \enum Conversion_t
37            \brief Conversion formats
38            */
39            enum class Conversion_t {
40                ToBGR,/*!< BGR 24 bits */
41                ToGray,/*!< gray 8 bits */
42                } ;
43
44            /*!
45            * \brief Constructor
46            *
47            * Construct an Ahrs.
48            *
49            * \param parent parent
50            * \param name name
51            * \param conversion conversion format
52            */
53            CvtColor(const core::IODevice* parent,std::string name,Conversion_t conversion);
54
55            /*!
56            * \brief Destructor
57            *
58            */
59            ~CvtColor();
60
61            /*!
62            * \brief Output image
63            *
64            * Output matrix is of the same size as declared in constructor. \n
65            * Its type depends of the conversion type.
66            *
67            * \return the output image
68            */
69            core::Image* Output(void);
70
71            core::DataType const &GetOutputDataType() const;
72
73        private:
74            /*!
75            * \brief Update using provided datas
76            *
77            * Reimplemented from IODevice.
78            *
79            * \param data data from the parent to process
80            */
81            void UpdateFrom(const core::io_data *data);
82
83            class CvtColor_impl *pimpl_;
84    };
85} // end namespace filter
86} // end namespace flair
87#endif // CVTCOLOR_H
Note: See TracBrowser for help on using the repository browser.