ViSP
Main Page
Related Pages
Modules
Classes
Examples
All
Classes
Functions
Variables
Enumerations
Enumerator
Friends
Groups
Pages
vpKalmanFilter.h
1
/****************************************************************************
2
*
3
* $Id: vpKalmanFilter.h 4056 2013-01-05 13:04:42Z fspindle $
4
*
5
* This file is part of the ViSP software.
6
* Copyright (C) 2005 - 2013 by INRIA. All rights reserved.
7
*
8
* This software is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License
10
* ("GPL") version 2 as published by the Free Software Foundation.
11
* See the file LICENSE.txt at the root directory of this source
12
* distribution for additional information about the GNU GPL.
13
*
14
* For using ViSP with software that can not be combined with the GNU
15
* GPL, please contact INRIA about acquiring a ViSP Professional
16
* Edition License.
17
*
18
* See http://www.irisa.fr/lagadic/visp/visp.html for more information.
19
*
20
* This software was developed at:
21
* INRIA Rennes - Bretagne Atlantique
22
* Campus Universitaire de Beaulieu
23
* 35042 Rennes Cedex
24
* France
25
* http://www.irisa.fr/lagadic
26
*
27
* If you have questions regarding the use of this file, please contact
28
* INRIA at visp@inria.fr
29
*
30
* This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
31
* WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
32
*
33
*
34
* Description:
35
* Kalman filtering.
36
*
37
* Authors:
38
* Eric Marchand
39
* Fabien Spindler
40
*
41
*****************************************************************************/
42
43
#ifndef vpKalmanFilter_h
44
#define vpKalmanFilter_h
45
46
#include <visp/vpMatrix.h>
47
#include <visp/vpColVector.h>
48
49
#include <math.h>
50
111
class
VISP_EXPORT
vpKalmanFilter
112
{
113
protected
:
114
//bool init_done ;
115
117
long
iter
;
118
120
unsigned
int
size_state
;
122
unsigned
int
size_measure
;
124
unsigned
int
nsignal
;
125
127
bool
verbose_mode
;
128
129
public
:
130
vpKalmanFilter
() ;
131
vpKalmanFilter
(
unsigned
int
nsignal) ;
132
vpKalmanFilter
(
unsigned
int
size_state,
unsigned
int
size_measure,
unsigned
int
nsignal) ;
136
void
setNumberOfSignal
(
unsigned
int
nsignal)
137
{
138
this->nsignal = nsignal;
139
}
140
141
// int init() { return init_done ; }
142
void
init(
unsigned
int
size_state,
unsigned
int
size_measure,
unsigned
int
nsignal) ;
143
void
prediction() ;
144
void
filtering(
vpColVector
&z) ;
148
unsigned
int
getStateSize
() {
return
size_state; };
152
unsigned
int
getMeasureSize
() {
return
size_measure; };
156
unsigned
int
getNumberOfSignal
() {
return
nsignal; };
160
int
getIteration
() {
return
iter ; }
166
void
verbose(
bool
on) { verbose_mode = on;};
167
168
public
:
174
vpColVector
Xest ;
179
vpColVector
Xpre
;
181
vpMatrix
F
;
182
184
vpMatrix
H
;
185
187
vpMatrix
R
;
189
vpMatrix
Q
;
193
double
dt
;
194
195
protected
:
201
vpMatrix
Ppre
;
202
208
vpMatrix
Pest
;
209
215
vpMatrix
W
;
216
218
vpMatrix
I
;
219
} ;
220
221
222
223
#endif
src
math
kalman
vpKalmanFilter.h
Generated on Fri Sep 27 2013 21:09:15 for ViSP by
1.8.4