Fawkes API Fawkes Development Version
fit_accum.h
1/***************************************************************************
2 * fit_accum.h - Header for 'fitted circle' accumulator
3 * used by Fix-Point RCD Algorithm
4 *
5 * Created: Sat Sep 10 17:25:55 2005
6 * Copyright 2005 Hu Yuxiao <Yuxiao.Hu@rwth-aachen.de>
7 *
8 ****************************************************************************/
9
10/* This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version. A runtime exception applies to
14 * this software (see LICENSE.GPL_WRE file mentioned below for details).
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Library General Public License for more details.
20 *
21 * Read the full text in the LICENSE.GPL_WRE file in the doc directory.
22 */
23
24#ifndef _FIREVISION_MODELS_SHAPE_ACCUMULATORS_FIT_ACCUM_H_
25#define _FIREVISION_MODELS_SHAPE_ACCUMULATORS_FIT_ACCUM_H_
26
27#include <fvutils/base/types.h>
28#include <utils/math/types.h>
29
30namespace firevision {
31
32class Circle;
33
35{
36private:
37 static const float TOO_SMALL_DELTA;
38
39private:
40 int count;
41 float A00, A01, A02;
42 float A10, A11, A12;
43 float A20, A21, A22;
44
45 float b0, b1, b2;
46
47public:
48 FitAccum(void);
49 ~FitAccum(void);
50
51 void reset(void);
52 void addPoint(const fawkes::upoint_t &); // add a point
53 void removePoint(const fawkes::upoint_t &); // remove a point
54
55 int getCount(void) const;
56 Circle *getCircle(void) const;
57};
58
59} // end namespace firevision
60
61#endif
Circle shape.
Definition: circle.h:43
FIT Accumulator.
Definition: fit_accum.h:35
FitAccum(void)
Constructor.
Definition: fit_accum.cpp:40
void reset(void)
Reset.
Definition: fit_accum.cpp:52
~FitAccum(void)
Destructor.
Definition: fit_accum.cpp:46
void addPoint(const fawkes::upoint_t &)
Add point.
Definition: fit_accum.cpp:65
Circle * getCircle(void) const
Get circle.
Definition: fit_accum.cpp:125
void removePoint(const fawkes::upoint_t &)
Remove point.
Definition: fit_accum.cpp:91
int getCount(void) const
Get count.
Definition: fit_accum.cpp:116
Point with cartesian coordinates as unsigned integers.
Definition: types.h:35