|
Point Cloud Library (PCL) 1.15.1
|
PersonCluster represents a class for representing information about a cluster containing a person. More...
#include <pcl/people/person_cluster.h>
Public Types | |
| using | PointCloud = pcl::PointCloud<PointT> |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
Public Member Functions | |
| PersonCluster (const PointCloudPtr &input_cloud, const pcl::PointIndices &indices, const Eigen::VectorXf &ground_coeffs, float sqrt_ground_coeffs, bool head_centroid, bool vertical=false) | |
| Constructor. | |
| virtual | ~PersonCluster () |
| Destructor. | |
| float | getHeight () const |
| Returns the height of the cluster. | |
| float | updateHeight (const Eigen::VectorXf &ground_coeffs) |
| Update the height of the cluster. | |
| float | updateHeight (const Eigen::VectorXf &ground_coeffs, float sqrt_ground_coeffs) |
| Update the height of the cluster. | |
| float | getDistance () const |
| Returns the distance of the cluster from the sensor. | |
| float | getAngle () const |
| Returns the angle formed by the cluster's centroid with respect to the sensor (in radians). | |
| float | getAngleMin () const |
| Returns the minimum angle formed by the cluster with respect to the sensor (in radians). | |
| float | getAngleMax () const |
| Returns the maximum angle formed by the cluster with respect to the sensor (in radians). | |
| pcl::PointIndices & | getIndices () |
| Returns the indices of the point cloud points corresponding to the cluster. | |
| Eigen::Vector3f & | getTTop () |
| Returns the theoretical top point. | |
| Eigen::Vector3f & | getTBottom () |
| Returns the theoretical bottom point. | |
| Eigen::Vector3f & | getTCenter () |
| Returns the theoretical centroid (at half height). | |
| Eigen::Vector3f & | getTop () |
| Returns the top point. | |
| Eigen::Vector3f & | getBottom () |
| Returns the bottom point. | |
| Eigen::Vector3f & | getCenter () |
| Returns the centroid. | |
| Eigen::Vector3f & | getMin () |
| Returns the point formed by min x, min y and min z. | |
| Eigen::Vector3f & | getMax () |
| Returns the point formed by max x, max y and max z. | |
| float | getPersonConfidence () const |
| Returns the HOG confidence. | |
| int | getNumberPoints () const |
| Returns the number of points of the cluster. | |
| void | setHeight (float height) |
| Sets the cluster height. | |
| void | setPersonConfidence (float confidence) |
| Sets the HOG confidence. | |
| void | drawTBoundingBox (pcl::visualization::PCLVisualizer &viewer, int person_number) |
| Draws the theoretical 3D bounding box of the cluster in the PCL visualizer. | |
Protected Member Functions | |
| void | init (const PointCloudPtr &input_cloud, const pcl::PointIndices &indices, const Eigen::VectorXf &ground_coeffs, float sqrt_ground_coeffs, bool head_centroid, bool vertical) |
| PersonCluster initialization. | |
Protected Attributes | |
| bool | head_centroid_ |
| float | min_x_ |
| Minimum x coordinate of the cluster points. | |
| float | min_y_ |
| Minimum y coordinate of the cluster points. | |
| float | min_z_ |
| Minimum z coordinate of the cluster points. | |
| float | max_x_ |
| Maximum x coordinate of the cluster points. | |
| float | max_y_ |
| Maximum y coordinate of the cluster points. | |
| float | max_z_ |
| Maximum z coordinate of the cluster points. | |
| float | sum_x_ |
| Sum of x coordinates of the cluster points. | |
| float | sum_y_ |
| Sum of y coordinates of the cluster points. | |
| float | sum_z_ |
| Sum of z coordinates of the cluster points. | |
| int | n_ |
| Number of cluster points. | |
| float | c_x_ |
| x coordinate of the cluster centroid. | |
| float | c_y_ |
| y coordinate of the cluster centroid. | |
| float | c_z_ |
| z coordinate of the cluster centroid. | |
| float | height_ |
| Cluster height from the ground plane. | |
| float | distance_ |
| Cluster distance from the sensor. | |
| float | angle_ |
| Cluster centroid horizontal angle with respect to z axis. | |
| float | angle_max_ |
| Maximum angle of the cluster points. | |
| float | angle_min_ |
| Minimum angle of the cluster points. | |
| Eigen::Vector3f | top_ |
| Cluster top point. | |
| Eigen::Vector3f | bottom_ |
| Cluster bottom point. | |
| Eigen::Vector3f | center_ |
| Cluster centroid. | |
| Eigen::Vector3f | ttop_ |
| Theoretical cluster top. | |
| Eigen::Vector3f | tbottom_ |
| Theoretical cluster bottom (lying on the ground plane). | |
| Eigen::Vector3f | tcenter_ |
| Theoretical cluster center (between ttop_ and tbottom_). | |
| Eigen::Vector3f | min_ |
| Vector containing the minimum coordinates of the cluster. | |
| Eigen::Vector3f | max_ |
| Vector containing the maximum coordinates of the cluster. | |
| pcl::PointIndices | points_indices_ |
| Point cloud indices of the cluster points. | |
| bool | vertical_ |
| If true, the sensor is considered to be vertically placed (portrait mode). | |
| float | person_confidence_ |
| PersonCluster HOG confidence. | |
Friends | |
| bool | operator< (const PersonCluster< PointT > &c1, const PersonCluster< PointT > &c2) |
| For sorting purpose: sort by distance. | |
PersonCluster represents a class for representing information about a cluster containing a person.
Definition at line 58 of file person_cluster.h.
| using pcl::people::PersonCluster< PointT >::PointCloud = pcl::PointCloud<PointT> |
Definition at line 137 of file person_cluster.h.
| using pcl::people::PersonCluster< PointT >::PointCloudConstPtr = typename PointCloud::ConstPtr |
Definition at line 139 of file person_cluster.h.
| using pcl::people::PersonCluster< PointT >::PointCloudPtr = typename PointCloud::Ptr |
Definition at line 138 of file person_cluster.h.
| pcl::people::PersonCluster< PointT >::PersonCluster | ( | const PointCloudPtr & | input_cloud, |
| const pcl::PointIndices & | indices, | ||
| const Eigen::VectorXf & | ground_coeffs, | ||
| float | sqrt_ground_coeffs, | ||
| bool | head_centroid, | ||
| bool | vertical = false ) |
Constructor.
Definition at line 47 of file person_cluster.hpp.
References init().
Referenced by operator<.
|
virtualdefault |
Destructor.
| void pcl::people::PersonCluster< PointT >::drawTBoundingBox | ( | pcl::visualization::PCLVisualizer & | viewer, |
| int | person_number ) |
Draws the theoretical 3D bounding box of the cluster in the PCL visualizer.
| [in] | viewer | PCL visualizer. |
| [in] | person_number | progressive number representing the person. |
Definition at line 385 of file person_cluster.hpp.
References pcl::visualization::PCLVisualizer::addCube(), height_, pcl::visualization::PCL_VISUALIZER_COLOR, pcl::visualization::PCL_VISUALIZER_LINE_WIDTH, pcl::visualization::PCLVisualizer::removeShape(), pcl::visualization::PCLVisualizer::setShapeRenderingProperties(), tcenter_, pcl::ModelCoefficients::values, and vertical_.
| float pcl::people::PersonCluster< PointT >::getAngle | ( | ) | const |
Returns the angle formed by the cluster's centroid with respect to the sensor (in radians).
Definition at line 343 of file person_cluster.hpp.
References angle_.
| float pcl::people::PersonCluster< PointT >::getAngleMax | ( | ) | const |
Returns the maximum angle formed by the cluster with respect to the sensor (in radians).
Definition at line 349 of file person_cluster.hpp.
References angle_max_.
| float pcl::people::PersonCluster< PointT >::getAngleMin | ( | ) | const |
Returns the minimum angle formed by the cluster with respect to the sensor (in radians).
Definition at line 355 of file person_cluster.hpp.
References angle_min_.
| Eigen::Vector3f & pcl::people::PersonCluster< PointT >::getBottom | ( | ) |
Returns the bottom point.
Definition at line 319 of file person_cluster.hpp.
References bottom_.
| Eigen::Vector3f & pcl::people::PersonCluster< PointT >::getCenter | ( | ) |
Returns the centroid.
Definition at line 325 of file person_cluster.hpp.
References center_.
| float pcl::people::PersonCluster< PointT >::getDistance | ( | ) | const |
Returns the distance of the cluster from the sensor.
Definition at line 289 of file person_cluster.hpp.
References distance_.
| float pcl::people::PersonCluster< PointT >::getHeight | ( | ) | const |
Returns the height of the cluster.
Definition at line 261 of file person_cluster.hpp.
References height_.
| pcl::PointIndices & pcl::people::PersonCluster< PointT >::getIndices | ( | ) |
Returns the indices of the point cloud points corresponding to the cluster.
Definition at line 255 of file person_cluster.hpp.
References points_indices_.
Referenced by pcl::people::HeightMap2D< PointT >::compute(), and pcl::people::HeadBasedSubclustering< PointT >::createSubClusters().
| Eigen::Vector3f & pcl::people::PersonCluster< PointT >::getMax | ( | ) |
Returns the point formed by max x, max y and max z.
Definition at line 337 of file person_cluster.hpp.
References max_.
Referenced by pcl::people::HeightMap2D< PointT >::compute().
| Eigen::Vector3f & pcl::people::PersonCluster< PointT >::getMin | ( | ) |
Returns the point formed by min x, min y and min z.
Definition at line 331 of file person_cluster.hpp.
References min_.
Referenced by pcl::people::HeightMap2D< PointT >::compute().
| int pcl::people::PersonCluster< PointT >::getNumberPoints | ( | ) | const |
Returns the number of points of the cluster.
Definition at line 361 of file person_cluster.hpp.
References n_.
| float pcl::people::PersonCluster< PointT >::getPersonConfidence | ( | ) | const |
Returns the HOG confidence.
Definition at line 367 of file person_cluster.hpp.
References person_confidence_.
| Eigen::Vector3f & pcl::people::PersonCluster< PointT >::getTBottom | ( | ) |
Returns the theoretical bottom point.
Definition at line 301 of file person_cluster.hpp.
References tbottom_.
| Eigen::Vector3f & pcl::people::PersonCluster< PointT >::getTCenter | ( | ) |
Returns the theoretical centroid (at half height).
Definition at line 307 of file person_cluster.hpp.
References tcenter_.
| Eigen::Vector3f & pcl::people::PersonCluster< PointT >::getTop | ( | ) |
Returns the top point.
Definition at line 313 of file person_cluster.hpp.
References top_.
| Eigen::Vector3f & pcl::people::PersonCluster< PointT >::getTTop | ( | ) |
Returns the theoretical top point.
Definition at line 295 of file person_cluster.hpp.
References ttop_.
|
protected |
PersonCluster initialization.
Definition at line 59 of file person_cluster.hpp.
References angle_, angle_max_, angle_min_, bottom_, c_x_, c_y_, c_z_, center_, distance_, head_centroid_, height_, pcl::PointIndices::indices, max_, max_x_, max_y_, max_z_, min_, min_x_, min_y_, min_z_, n_, person_confidence_, points_indices_, sum_x_, sum_y_, sum_z_, tbottom_, tcenter_, top_, ttop_, and vertical_.
Referenced by PersonCluster().
| void pcl::people::PersonCluster< PointT >::setHeight | ( | float | height | ) |
Sets the cluster height.
| [in] | height |
Definition at line 379 of file person_cluster.hpp.
References height_.
| void pcl::people::PersonCluster< PointT >::setPersonConfidence | ( | float | confidence | ) |
Sets the HOG confidence.
| [in] | confidence |
Definition at line 373 of file person_cluster.hpp.
References person_confidence_.
| float pcl::people::PersonCluster< PointT >::updateHeight | ( | const Eigen::VectorXf & | ground_coeffs | ) |
Update the height of the cluster.
| [in] | ground_coeffs | The coefficients of the ground plane. |
Definition at line 267 of file person_cluster.hpp.
References updateHeight().
Referenced by updateHeight().
| float pcl::people::PersonCluster< PointT >::updateHeight | ( | const Eigen::VectorXf & | ground_coeffs, |
| float | sqrt_ground_coeffs ) |
Update the height of the cluster.
| [in] | ground_coeffs | The coefficients of the ground plane. |
| [in] | sqrt_ground_coeffs | The norm of the vector [a, b, c] where a, b and c are the first three coefficients of the ground plane (ax + by + cz + d = 0). |
Definition at line 274 of file person_cluster.hpp.
References c_x_, c_y_, c_z_, height_, max_x_, min_y_, and vertical_.
|
friend |
For sorting purpose: sort by distance.
References PersonCluster().
|
protected |
Cluster centroid horizontal angle with respect to z axis.
Definition at line 101 of file person_cluster.h.
Referenced by getAngle(), and init().
|
protected |
Maximum angle of the cluster points.
Definition at line 104 of file person_cluster.h.
Referenced by getAngleMax(), and init().
|
protected |
Minimum angle of the cluster points.
Definition at line 106 of file person_cluster.h.
Referenced by getAngleMin(), and init().
|
protected |
Cluster bottom point.
Definition at line 111 of file person_cluster.h.
Referenced by getBottom(), and init().
|
protected |
x coordinate of the cluster centroid.
Definition at line 89 of file person_cluster.h.
Referenced by init(), and updateHeight().
|
protected |
y coordinate of the cluster centroid.
Definition at line 91 of file person_cluster.h.
Referenced by init(), and updateHeight().
|
protected |
z coordinate of the cluster centroid.
Definition at line 93 of file person_cluster.h.
Referenced by init(), and updateHeight().
|
protected |
Cluster centroid.
Definition at line 113 of file person_cluster.h.
Referenced by getCenter(), and init().
|
protected |
Cluster distance from the sensor.
Definition at line 99 of file person_cluster.h.
Referenced by getDistance(), and init().
|
protected |
Definition at line 62 of file person_cluster.h.
Referenced by init().
|
protected |
Cluster height from the ground plane.
Definition at line 96 of file person_cluster.h.
Referenced by drawTBoundingBox(), getHeight(), init(), setHeight(), and updateHeight().
|
protected |
Vector containing the maximum coordinates of the cluster.
Definition at line 125 of file person_cluster.h.
|
protected |
Maximum x coordinate of the cluster points.
Definition at line 72 of file person_cluster.h.
Referenced by init(), and updateHeight().
|
protected |
Maximum y coordinate of the cluster points.
Definition at line 74 of file person_cluster.h.
Referenced by init().
|
protected |
Maximum z coordinate of the cluster points.
Definition at line 76 of file person_cluster.h.
Referenced by init().
|
protected |
Vector containing the minimum coordinates of the cluster.
Definition at line 123 of file person_cluster.h.
|
protected |
Minimum x coordinate of the cluster points.
Definition at line 65 of file person_cluster.h.
Referenced by init().
|
protected |
Minimum y coordinate of the cluster points.
Definition at line 67 of file person_cluster.h.
Referenced by init(), and updateHeight().
|
protected |
Minimum z coordinate of the cluster points.
Definition at line 69 of file person_cluster.h.
Referenced by init().
|
protected |
Number of cluster points.
Definition at line 86 of file person_cluster.h.
Referenced by getNumberPoints(), and init().
|
protected |
PersonCluster HOG confidence.
Definition at line 133 of file person_cluster.h.
Referenced by getPersonConfidence(), init(), and setPersonConfidence().
|
protected |
Point cloud indices of the cluster points.
Definition at line 128 of file person_cluster.h.
Referenced by getIndices(), and init().
|
protected |
Sum of x coordinates of the cluster points.
Definition at line 79 of file person_cluster.h.
Referenced by init().
|
protected |
Sum of y coordinates of the cluster points.
Definition at line 81 of file person_cluster.h.
Referenced by init().
|
protected |
Sum of z coordinates of the cluster points.
Definition at line 83 of file person_cluster.h.
Referenced by init().
|
protected |
Theoretical cluster bottom (lying on the ground plane).
Definition at line 118 of file person_cluster.h.
Referenced by getTBottom(), and init().
|
protected |
Theoretical cluster center (between ttop_ and tbottom_).
Definition at line 120 of file person_cluster.h.
Referenced by drawTBoundingBox(), getTCenter(), and init().
|
protected |
Cluster top point.
Definition at line 109 of file person_cluster.h.
|
protected |
Theoretical cluster top.
Definition at line 116 of file person_cluster.h.
|
protected |
If true, the sensor is considered to be vertically placed (portrait mode).
Definition at line 131 of file person_cluster.h.
Referenced by drawTBoundingBox(), init(), and updateHeight().