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