Fawkes API  Fawkes Development Version
segenerator.h
1 
2 /***************************************************************************
3  * segenerator.h - Class that helps to create some standard structuring
4  * elements
5  *
6  * Created: Wed Jun 07 10:36:55 2006
7  * Copyright 2005-2007 Tim Niemueller [www.niemueller.de]
8  *
9  ****************************************************************************/
10 
11 /* This program is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU General Public License as published by
13  * the Free Software Foundation; either version 2 of the License, or
14  * (at your option) any later version. A runtime exception applies to
15  * this software (see LICENSE.GPL_WRE file mentioned below for details).
16  *
17  * This program is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20  * GNU Library General Public License for more details.
21  *
22  * Read the full text in the LICENSE.GPL_WRE file in the doc directory.
23  */
24 
25 #ifndef _FIREVISION_FILTERS_MORPHOLOGY_SEGENERATOR_H_
26 #define _FIREVISION_FILTERS_MORPHOLOGY_SEGENERATOR_H_
27 
28 namespace firevision {
29 
30 class SEGenerator
31 {
32 private:
33  SEGenerator();
34 
35 public:
36  static unsigned char *linear(unsigned int width,
37  unsigned int height,
38  unsigned int *proposed_center_x,
39  unsigned int *proposed_center_y,
40  float slope_angle_rad);
41 
42  static unsigned char *square(unsigned int width, unsigned int height);
43 
44  static void drawSE(unsigned char *yuv422planar_buffer,
45  unsigned char *mask,
46  unsigned int width,
47  unsigned int height);
48  static void drawSEbw(unsigned char *yuv422planar_buffer,
49  unsigned char *mask,
50  unsigned int width,
51  unsigned int height);
52 };
53 
54 } // end namespace firevision
55 
56 #endif
firevision::SEGenerator::linear
static unsigned char * linear(unsigned int width, unsigned int height, unsigned int *proposed_center_x, unsigned int *proposed_center_y, float slope_angle_rad)
Generate linear structuring element.
Definition: segenerator.cpp:61
firevision::SEGenerator::drawSEbw
static void drawSEbw(unsigned char *yuv422planar_buffer, unsigned char *mask, unsigned int width, unsigned int height)
Draw structuring element.
Definition: segenerator.cpp:199
firevision::SEGenerator::drawSE
static void drawSE(unsigned char *yuv422planar_buffer, unsigned char *mask, unsigned int width, unsigned int height)
Draw structuring element.
Definition: segenerator.cpp:176
firevision::SEGenerator::square
static unsigned char * square(unsigned int width, unsigned int height)
Generate square structuring element.
Definition: segenerator.cpp:161