Visual Servoing Platform
version 3.7.0
Toggle main menu visibility
Loading...
Searching...
No Matches
vpRBFeatureTrackerInput.h
1
/*
2
* ViSP, open source Visual Servoing Platform software.
3
* Copyright (C) 2005 - 2024 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
35
#ifndef VP_RB_FEATURE_TRACKER_INPUT_H
36
#define VP_RB_FEATURE_TRACKER_INPUT_H
37
38
#include <visp3/core/vpConfig.h>
39
#include <visp3/core/vpImage.h>
40
#include <visp3/core/vpCameraParameters.h>
41
#include <visp3/core/vpRect.h>
42
43
#include <visp3/rbt/vpRBSilhouettePoint.h>
44
45
BEGIN_VISP_NAMESPACE
46
47
60
struct
VISP_EXPORT
vpRBRenderData
61
{
62
vpImage<vpRGBf>
normals
;
63
vpImage<float>
depth
;
64
vpImage<vpRGBa>
color
;
65
vpImage<float>
silhouetteCanny
;
66
vpImage<unsigned char>
isSilhouette
;
67
double
zNear
,
zFar
;
// clipping values
68
double
objectDiameter
;
// Object diameter
70
vpTranslationVector
objectCenter
;
71
vpRect
boundingBox
;
72
vpHomogeneousMatrix
cMo
;
73
74
vpRBRenderData
() :
zNear
(0.0),
zFar
(0.0),
boundingBox
() { }
75
76
vpRBRenderData
(
const
vpRBRenderData
&other)
77
{
78
*
this
= other;
79
}
80
81
vpRBRenderData
(
vpRBRenderData
&&other)
82
{
83
*
this
= std::move(other);
84
}
85
86
vpRBRenderData
&
operator=
(
const
vpRBRenderData
&o)
87
{
88
normals
= o.
normals
;
89
depth
= o.
depth
;
90
color
= o.
color
;
91
silhouetteCanny
= o.
silhouetteCanny
;
92
isSilhouette
= o.
isSilhouette
;
93
objectDiameter
= o.
objectDiameter
;
94
objectCenter
= o.
objectCenter
;
95
zNear
= o.
zNear
;
96
zFar
= o.
zFar
;
97
boundingBox
= o.
boundingBox
;
98
cMo
= o.
cMo
;
99
return
*
this
;
100
}
101
102
vpRBRenderData
&
operator=
(
vpRBRenderData
&&o)
103
{
104
normals
= std::move(o.normals);
105
depth
= std::move(o.depth);
106
color
= std::move(o.color);
107
silhouetteCanny
= std::move(o.silhouetteCanny);
108
isSilhouette
= std::move(o.isSilhouette);
109
objectDiameter
= std::move(o.objectDiameter);
110
objectCenter
= std::move(o.objectCenter);
111
zNear
= std::move(o.zNear);
112
zFar
= std::move(o.zFar);
113
boundingBox
= std::move(o.boundingBox);
114
cMo
= std::move(o.cMo);
115
return
*
this
;
116
}
117
};
118
125
class
VISP_EXPORT
vpRBFeatureTrackerInput
126
{
127
public
:
128
vpImage<unsigned char>
I
;
129
vpImage<vpRGBa>
IRGB
;
130
vpImage<float>
depth
;
131
vpImage<float>
mask
;
132
std::vector<vpRBSilhouettePoint>
silhouettePoints
;
133
vpCameraParameters
cam
;
134
vpRBRenderData
renders
;
135
136
bool
hasDepth
()
const
{
return
depth
.getSize() > 0; }
137
bool
hasMask
()
const
{
return
mask
.getSize() > 0; }
138
bool
hasColorImage
()
const
{
return
IRGB
.getSize() > 0; }
139
140
vpRBFeatureTrackerInput
() =
default
;
141
142
vpRBFeatureTrackerInput
&
operator=
(
const
vpRBFeatureTrackerInput
&o)
143
{
144
I
= o.
I
;
145
IRGB
= o.
IRGB
;
146
depth
= o.
depth
;
147
mask
= o.
mask
;
148
silhouettePoints
= o.
silhouettePoints
;
149
cam
= o.
cam
;
150
renders
= o.
renders
;
151
return
*
this
;
152
}
153
154
vpRBFeatureTrackerInput
(
const
vpRBFeatureTrackerInput
&other)
155
{
156
*
this
= other;
157
}
158
159
vpRBFeatureTrackerInput
&
operator=
(
vpRBFeatureTrackerInput
&&o)
160
{
161
I
= std::move(o.I);
162
IRGB
= std::move(o.IRGB);
163
depth
= std::move(o.depth);
164
mask
= std::move(o.mask);
165
silhouettePoints
= std::move(o.silhouettePoints);
166
cam
= std::move(o.cam);
167
renders
= std::move(o.renders);
168
return
*
this
;
169
}
170
171
vpRBFeatureTrackerInput
(
vpRBFeatureTrackerInput
&&other)
172
{
173
*
this
= std::move(other);
174
}
175
};
176
177
END_VISP_NAMESPACE
178
179
#endif
vpCameraParameters
Generic class defining intrinsic camera parameters.
Definition
vpCameraParameters.h:311
vpHomogeneousMatrix
Implementation of an homogeneous matrix and operations on such kind of matrices.
Definition
vpHomogeneousMatrix.h:221
vpImage
Definition of the vpImage class member functions.
Definition
vpImage.h:131
vpRBFeatureTrackerInput::vpRBFeatureTrackerInput
vpRBFeatureTrackerInput(vpRBFeatureTrackerInput &&other)
Definition
vpRBFeatureTrackerInput.h:171
vpRBFeatureTrackerInput::IRGB
vpImage< vpRGBa > IRGB
Image luminance.
Definition
vpRBFeatureTrackerInput.h:129
vpRBFeatureTrackerInput::I
vpImage< unsigned char > I
Definition
vpRBFeatureTrackerInput.h:128
vpRBFeatureTrackerInput::hasDepth
bool hasDepth() const
Definition
vpRBFeatureTrackerInput.h:136
vpRBFeatureTrackerInput::operator=
vpRBFeatureTrackerInput & operator=(const vpRBFeatureTrackerInput &o)
Definition
vpRBFeatureTrackerInput.h:142
vpRBFeatureTrackerInput::silhouettePoints
std::vector< vpRBSilhouettePoint > silhouettePoints
Definition
vpRBFeatureTrackerInput.h:132
vpRBFeatureTrackerInput::operator=
vpRBFeatureTrackerInput & operator=(vpRBFeatureTrackerInput &&o)
Definition
vpRBFeatureTrackerInput.h:159
vpRBFeatureTrackerInput::mask
vpImage< float > mask
depth image, 0 sized if depth is not available
Definition
vpRBFeatureTrackerInput.h:131
vpRBFeatureTrackerInput::vpRBFeatureTrackerInput
vpRBFeatureTrackerInput(const vpRBFeatureTrackerInput &other)
Definition
vpRBFeatureTrackerInput.h:154
vpRBFeatureTrackerInput::vpRBFeatureTrackerInput
vpRBFeatureTrackerInput()=default
vpRBFeatureTrackerInput::cam
vpCameraParameters cam
Definition
vpRBFeatureTrackerInput.h:133
vpRBFeatureTrackerInput::depth
vpImage< float > depth
RGB image, 0 sized if RGB is not available.
Definition
vpRBFeatureTrackerInput.h:130
vpRBFeatureTrackerInput::renders
vpRBRenderData renders
camera parameters
Definition
vpRBFeatureTrackerInput.h:134
vpRBFeatureTrackerInput::hasMask
bool hasMask() const
Definition
vpRBFeatureTrackerInput.h:137
vpRBFeatureTrackerInput::hasColorImage
bool hasColorImage() const
Definition
vpRBFeatureTrackerInput.h:138
vpRect
Defines a rectangle in the plane.
Definition
vpRect.h:79
vpTranslationVector
Class that consider the case of a translation vector.
Definition
vpTranslationVector.h:119
BEGIN_VISP_NAMESPACE
Definition
vpMbtDistanceCircle.cpp:55
vpRBRenderData
Render data storage.
Definition
vpRBFeatureTrackerInput.h:61
vpRBRenderData::vpRBRenderData
vpRBRenderData()
Pose of the object in the camera frame for which the renders were generated.
Definition
vpRBFeatureTrackerInput.h:74
vpRBRenderData::zNear
double zNear
Binary image indicating whether a given pixel is part of the silhouette.
Definition
vpRBFeatureTrackerInput.h:67
vpRBRenderData::vpRBRenderData
vpRBRenderData(vpRBRenderData &&other)
Definition
vpRBFeatureTrackerInput.h:81
vpRBRenderData::objectDiameter
double objectDiameter
Definition
vpRBFeatureTrackerInput.h:68
vpRBRenderData::vpRBRenderData
vpRBRenderData(const vpRBRenderData &other)
Definition
vpRBFeatureTrackerInput.h:76
vpRBRenderData::depth
vpImage< float > depth
Image containing the per-pixel normal vector (RGB, in object space).
Definition
vpRBFeatureTrackerInput.h:63
vpRBRenderData::operator=
vpRBRenderData & operator=(const vpRBRenderData &o)
Definition
vpRBFeatureTrackerInput.h:86
vpRBRenderData::cMo
vpHomogeneousMatrix cMo
Definition
vpRBFeatureTrackerInput.h:72
vpRBRenderData::color
vpImage< vpRGBa > color
Definition
vpRBFeatureTrackerInput.h:64
vpRBRenderData::normals
vpImage< vpRGBf > normals
Definition
vpRBFeatureTrackerInput.h:62
vpRBRenderData::isSilhouette
vpImage< unsigned char > isSilhouette
Image containing the orientation of the gradients.
Definition
vpRBFeatureTrackerInput.h:66
vpRBRenderData::zFar
double zFar
Definition
vpRBFeatureTrackerInput.h:67
vpRBRenderData::silhouetteCanny
vpImage< float > silhouetteCanny
Definition
vpRBFeatureTrackerInput.h:65
vpRBRenderData::boundingBox
vpRect boundingBox
Definition
vpRBFeatureTrackerInput.h:71
vpRBRenderData::operator=
vpRBRenderData & operator=(vpRBRenderData &&o)
Definition
vpRBFeatureTrackerInput.h:102
vpRBRenderData::objectCenter
vpTranslationVector objectCenter
Center of the 3D bounding box of the object. Expressed in the object frame.
Definition
vpRBFeatureTrackerInput.h:70
modules
tracker
rbt
include
visp3
rbt
vpRBFeatureTrackerInput.h
Generated by
1.17.0