Visual Servoing Platform
version 3.6.0
Loading...
Searching...
No Matches
vpTemplateTrackerMIESM.h
1
/****************************************************************************
2
*
3
* ViSP, open source Visual Servoing Platform software.
4
* Copyright (C) 2005 - 2023 by Inria. All rights reserved.
5
*
6
* This software is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2 of the License, or
9
* (at your option) any later version.
10
* See the file LICENSE.txt at the root directory of this source
11
* distribution for additional information about the GNU GPL.
12
*
13
* For using ViSP with software that can not be combined with the GNU
14
* GPL, please contact Inria about acquiring a ViSP Professional
15
* Edition License.
16
*
17
* See https://visp.inria.fr for more information.
18
*
19
* This software was developed at:
20
* Inria Rennes - Bretagne Atlantique
21
* Campus Universitaire de Beaulieu
22
* 35042 Rennes Cedex
23
* France
24
*
25
* If you have questions regarding the use of this file, please contact
26
* Inria at visp@inria.fr
27
*
28
* This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
29
* WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
30
*
31
* Description:
32
* Example of template tracking.
33
*
34
* Authors:
35
* Amaury Dame
36
* Aurelien Yol
37
*
38
*****************************************************************************/
39
#ifndef vpTemplateTrackerMIESM_hh
40
#define vpTemplateTrackerMIESM_hh
41
42
#include <visp3/core/vpImageFilter.h>
43
#include <visp3/tt/vpTemplateTracker.h>
44
#include <visp3/tt/vpTemplateTrackerHeader.h>
45
46
#include <visp3/tt_mi/vpTemplateTrackerMI.h>
47
#include <visp3/tt_mi/vpTemplateTrackerMIBSpline.h>
48
53
class
VISP_EXPORT
vpTemplateTrackerMIESM
:
public
vpTemplateTrackerMI
54
{
56
typedef
enum
{
57
USE_NEWTON,
// not used
58
USE_LMA,
// not used
59
USE_GRADIENT,
60
USE_QUASINEWTON
// not used => see default equivalence
61
} vpMinimizationTypeMIESM;
62
63
protected
:
64
vpMinimizationTypeMIESM
minimizationMethod
;
65
bool
CompoInitialised
;
66
vpMatrix
HDirect
;
67
vpMatrix
HInverse
;
68
vpMatrix
HdesireDirect
;
69
vpMatrix
HdesireInverse
;
70
vpColVector
GDirect
;
71
vpColVector
GInverse
;
72
73
protected
:
74
void
initCompInverse();
75
void
initHessienDesired
(
const
vpImage<unsigned char>
&I);
76
void
trackNoPyr
(
const
vpImage<unsigned char>
&I);
77
78
// private:
79
//#ifndef DOXYGEN_SHOULD_SKIP_THIS
80
// vpTemplateTrackerMIESM(const vpTemplateTrackerMIESM &)
81
// : vpTemplateTrackerMI(), minimizationMethod(USE_NEWTON),
82
// CompoInitialised(false),
83
// HDirect(), HInverse(), HdesireDirect(), HdesireInverse(), GDirect(),
84
// GInverse()
85
// {
86
// throw vpException(vpException::functionNotImplementedError, "Not
87
// implemented!");
88
// }
89
// vpTemplateTrackerMIESM &operator=(const vpTemplateTrackerMIESM &){
90
// throw vpException(vpException::functionNotImplementedError, "Not
91
// implemented!"); return *this;
92
// }
93
//#endif
94
95
public
:
97
vpTemplateTrackerMIESM
()
98
:
vpTemplateTrackerMI
(), minimizationMethod(USE_NEWTON), CompoInitialised(false), HDirect(), HInverse(),
99
HdesireDirect(), HdesireInverse(), GDirect(), GInverse()
100
{
101
}
102
explicit
vpTemplateTrackerMIESM
(
vpTemplateTrackerWarp
*_warp);
103
104
void
setMinimizationMethod
(vpMinimizationTypeMIESM method) { minimizationMethod = method; }
105
};
106
107
#endif
vpColVector
Implementation of column vector and the associated operations.
Definition
vpColVector.h:167
vpImage
Definition of the vpImage class member functions.
Definition
vpImage.h:135
vpMatrix
Implementation of a matrix and operations on matrices.
Definition
vpMatrix.h:152
vpTemplateTrackerMIESM
Definition
vpTemplateTrackerMIESM.h:54
vpTemplateTrackerMIESM::HdesireDirect
vpMatrix HdesireDirect
Definition
vpTemplateTrackerMIESM.h:68
vpTemplateTrackerMIESM::HInverse
vpMatrix HInverse
Definition
vpTemplateTrackerMIESM.h:67
vpTemplateTrackerMIESM::GDirect
vpColVector GDirect
Definition
vpTemplateTrackerMIESM.h:70
vpTemplateTrackerMIESM::HdesireInverse
vpMatrix HdesireInverse
Definition
vpTemplateTrackerMIESM.h:69
vpTemplateTrackerMIESM::CompoInitialised
bool CompoInitialised
Definition
vpTemplateTrackerMIESM.h:65
vpTemplateTrackerMIESM::minimizationMethod
vpMinimizationTypeMIESM minimizationMethod
Definition
vpTemplateTrackerMIESM.h:64
vpTemplateTrackerMIESM::vpTemplateTrackerMIESM
vpTemplateTrackerMIESM()
Default constructor.
Definition
vpTemplateTrackerMIESM.h:97
vpTemplateTrackerMIESM::setMinimizationMethod
void setMinimizationMethod(vpMinimizationTypeMIESM method)
Definition
vpTemplateTrackerMIESM.h:104
vpTemplateTrackerMIESM::HDirect
vpMatrix HDirect
Definition
vpTemplateTrackerMIESM.h:66
vpTemplateTrackerMIESM::GInverse
vpColVector GInverse
Definition
vpTemplateTrackerMIESM.h:71
vpTemplateTrackerMI
Definition
vpTemplateTrackerMI.h:53
vpTemplateTrackerMI::initHessienDesired
virtual void initHessienDesired(const vpImage< unsigned char > &I)=0
vpTemplateTrackerMI::trackNoPyr
virtual void trackNoPyr(const vpImage< unsigned char > &I)=0
vpTemplateTrackerWarp
Definition
vpTemplateTrackerWarp.h:58
modules
tracker
tt_mi
include
visp3
tt_mi
vpTemplateTrackerMIESM.h
Generated by
1.12.0