Main Page
Namespaces
Classes
Files
File List
File Members
include
humanoid_localization
EndpointModel.h
Go to the documentation of this file.
1
// SVN $HeadURL$
2
// SVN $Id$
3
4
/*
5
* 6D localization for humanoid robots
6
*
7
* Copyright 2009-2012 Armin Hornung, University of Freiburg
8
* http://www.ros.org/wiki/humanoid_localization
9
*
10
*
11
* This program is free software: you can redistribute it and/or modify
12
* it under the terms of the GNU General Public License as published by
13
* the Free Software Foundation, version 3.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the GNU General Public License
21
* along with this program. If not, see <http://www.gnu.org/licenses/>.
22
*/
23
24
#ifndef HUMANOID_LOCALIZATION_ENDPOINTMODEL_H_
25
#define HUMANOID_LOCALIZATION_ENDPOINTMODEL_H_
26
27
#include <limits>
28
#include <cmath>
29
30
#include <omp.h>
31
32
#include <
ros/ros.h
>
33
#include <
tf/transform_datatypes.h
>
34
35
#include <
humanoid_localization/ObservationModel.h
>
36
#include <
octomap/octomap.h
>
37
#include <
dynamicEDT3D/dynamicEDTOctomap.h
>
38
#include <visualization_msgs/Marker.h>
39
40
41
namespace
humanoid_localization
{
42
class
EndpointModel
:
public
ObservationModel
{
43
public
:
44
EndpointModel
(
ros::NodeHandle
* nh,
boost::shared_ptr<MapModel>
mapModel,
EngineT
* rngEngine);
45
virtual
~EndpointModel
();
46
virtual
void
integrateMeasurement
(
Particles
& particles,
const
PointCloud
& pc,
const
std::vector<float>& ranges,
float
max_range,
const
tf::Transform
& baseToSensor);
47
48
virtual
void
setMap
(
boost::shared_ptr<octomap::OcTree>
map);
49
50
protected
:
51
bool
getHeightError
(
const
Particle
& p,
const
tf::StampedTransform
& footprintToBase,
double
& heightError)
const
;
52
void
initDistanceMap
();
53
double
m_sigma
;
54
double
m_maxObstacleDistance
;
55
boost::shared_ptr<DynamicEDTOctomap>
m_distanceMap
;
56
};
57
58
}
59
60
#endif
ObservationModel.h
humanoid_localization
Definition:
EndpointModel.h:41
ros::NodeHandle
humanoid_localization::EndpointModel::getHeightError
bool getHeightError(const Particle &p, const tf::StampedTransform &footprintToBase, double &heightError) const
Definition:
EndpointModel.cpp:80
humanoid_localization::EngineT
boost::mt19937 EngineT
Boost RNG engine:
Definition:
humanoid_localization_defs.h:54
dynamicEDTOctomap.h
humanoid_localization::Particle
Particle consists of a pose and a weight.
Definition:
humanoid_localization_defs.h:43
humanoid_localization::EndpointModel::~EndpointModel
virtual ~EndpointModel()
Definition:
EndpointModel.cpp:45
transform_datatypes.h
boost::shared_ptr
humanoid_localization::EndpointModel::initDistanceMap
void initDistanceMap()
Definition:
EndpointModel.cpp:107
tf::Transform
humanoid_localization::EndpointModel
Definition:
EndpointModel.h:42
ros.h
humanoid_localization::ObservationModel
Definition:
ObservationModel.h:51
octomap.h
humanoid_localization::EndpointModel::setMap
virtual void setMap(boost::shared_ptr< octomap::OcTree > map)
Definition:
EndpointModel.cpp:102
humanoid_localization::EndpointModel::EndpointModel
EndpointModel(ros::NodeHandle *nh, boost::shared_ptr< MapModel > mapModel, EngineT *rngEngine)
Definition:
EndpointModel.cpp:28
humanoid_localization::Particles
std::vector< Particle > Particles
Definition:
humanoid_localization_defs.h:48
humanoid_localization::EndpointModel::m_maxObstacleDistance
double m_maxObstacleDistance
Definition:
EndpointModel.h:54
humanoid_localization::EndpointModel::m_distanceMap
boost::shared_ptr< DynamicEDTOctomap > m_distanceMap
Definition:
EndpointModel.h:55
humanoid_localization::PointCloud
pcl::PointCloud< pcl::PointXYZ > PointCloud
Definition:
humanoid_localization_defs.h:50
humanoid_localization::EndpointModel::integrateMeasurement
virtual void integrateMeasurement(Particles &particles, const PointCloud &pc, const std::vector< float > &ranges, float max_range, const tf::Transform &baseToSensor)
Definition:
EndpointModel.cpp:49
humanoid_localization::EndpointModel::m_sigma
double m_sigma
Definition:
EndpointModel.h:53
tf::StampedTransform
humanoid_localization
Author(s): Armin Hornung, Stefan Osswald, Daniel Maier
autogenerated on Mon Jun 10 2019 13:38:31