libcrn  3.9.5
A document image processing library
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CRNFeatureExtractor.h
Go to the documentation of this file.
1 /* Copyright 2007-2015 Yann LEYDIER, INSA-Lyon
2  *
3  * This file is part of libcrn.
4  *
5  * libcrn is free software: you can redistribute it and/or modify
6  * it under the terms of the GNU Lesser General Public License as published by
7  * the Free Software Foundation, either version 3 of the License, or
8  * (at your option) any later version.
9  *
10  * libcrn is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with libcrn. If not, see <http://www.gnu.org/licenses/>.
17  *
18  * file: CRNFeatureExtractor.h
19  * \author Yann LEYDIER
20  */
21 
22 #ifndef CRNFEATUREEXTRACTOR_HEADER
23 #define CRNFEATUREEXTRACTOR_HEADER
24 
25 #include <CRNObject.h>
28 
29 namespace crn
30 {
31  class Block;
32 
36  /****************************************************************************/
48  class FeatureExtractor: public Action
49  {
50  public:
51  virtual ~FeatureExtractor() override {}
56  virtual SObject Extract(Block &b) = 0;
62  virtual SObject ExtractWithMask(Block &b, ImageIntGray &mask) { return Extract(b); }
63  };
64 
65  CRN_ALIAS_SMART_PTR(FeatureExtractor)
66 }
67 
68 #endif
69 
Abstract class for images.
Definition: CRNImage.h:141
Base functor class.
Feature extractor base class.
virtual SObject Extract(Block &b)=0
Returns a crn::protocol::Feature object computed from a block.
A block.
Definition: CRNBlock.h:52
virtual SObject ExtractWithMask(Block &b, ImageIntGray &mask)
Returns a crn::protocol::Feature object computed from a block and its CC mask.
virtual ~FeatureExtractor() override
CRN_ALIAS_SMART_PTR(ImageBW)