#include <person_classifier.h>
Public Types | |
typedef pcl::PointCloud< PointT > | PointCloud |
typedef boost::shared_ptr < PointCloud > | PointCloudPtr |
Public Member Functions | |
void | copyMakeBorder (PointCloudPtr &input_image, PointCloudPtr &output_image, int xmin, int ymin, int width, int height) |
Copies an image and makes a black border around it, where the source image is not present. | |
double | evaluate (float height, float xc, float yc, PointCloudPtr &image) |
Classify the given portion of image. | |
double | evaluate (PointCloudPtr &image, Eigen::Vector3f &bottom, Eigen::Vector3f &top, Eigen::Vector3f ¢roid, bool vertical) |
Compute person confidence for a given PersonCluster. | |
void | getSVM (int &window_height, int &window_width, std::vector< float > &SVM_weights, float &SVM_offset) |
Get trained SVM for person confidence estimation. | |
bool | loadSVMFromFile (std::string svm_filename) |
Load SVM parameters from a text file. | |
PersonClassifier () | |
Constructor. | |
void | resize (PointCloudPtr &input_image, PointCloudPtr &output_image, int width, int height) |
Resize an image represented by a pointcloud containing RGB information. | |
void | setSVM (int window_height, int window_width, std::vector< float > SVM_weights, float SVM_offset) |
Set trained SVM for person confidence estimation. | |
virtual | ~PersonClassifier () |
Destructor. | |
Protected Attributes | |
float | SVM_offset_ |
SVM offset. | |
std::vector< float > | SVM_weights_ |
SVM weights vector. | |
int | window_height_ |
Height of the image patch to classify. | |
int | window_width_ |
Width of the image patch to classify. |
Definition at line 54 of file person_classifier.h.
typedef pcl::PointCloud<PointT> pcl::people::PersonClassifier< PointT >::PointCloud |
Definition at line 72 of file person_classifier.h.
typedef boost::shared_ptr<PointCloud> pcl::people::PersonClassifier< PointT >::PointCloudPtr |
Definition at line 73 of file person_classifier.h.
pcl::people::PersonClassifier< PointT >::PersonClassifier | ( | ) |
Constructor.
Definition at line 47 of file person_classifier.hpp.
pcl::people::PersonClassifier< PointT >::~PersonClassifier | ( | ) | [virtual] |
Destructor.
Definition at line 50 of file person_classifier.hpp.
void pcl::people::PersonClassifier< PointT >::copyMakeBorder | ( | PointCloudPtr & | input_image, |
PointCloudPtr & | output_image, | ||
int | xmin, | ||
int | ymin, | ||
int | width, | ||
int | height | ||
) |
Copies an image and makes a black border around it, where the source image is not present.
[in] | input_image | A pointer to a pointcloud containing RGB information. |
[out] | output_image | A pointer to the output pointcloud. |
[in] | xmin | x coordinate of the top-left point of the bbox to copy from the input image. |
[in] | ymin | y coordinate of the top-left point of the bbox to copy from the input image. |
[in] | width | Output width. |
[in] | height | Output height. |
Definition at line 181 of file person_classifier.hpp.
double pcl::people::PersonClassifier< PointT >::evaluate | ( | float | height, |
float | xc, | ||
float | yc, | ||
PointCloudPtr & | image | ||
) |
Classify the given portion of image.
[in] | height | The height of the image patch to classify, in pixels. |
[in] | xc | The x-coordinate of the center of the image patch to classify, in pixels. |
[in] | yc | The y-coordinate of the center of the image patch to classify, in pixels. |
[in] | image | The whole image (pointer to a point cloud containing RGB information) containing the object to classify. |
Definition at line 216 of file person_classifier.hpp.
double pcl::people::PersonClassifier< PointT >::evaluate | ( | PointCloudPtr & | image, |
Eigen::Vector3f & | bottom, | ||
Eigen::Vector3f & | top, | ||
Eigen::Vector3f & | centroid, | ||
bool | vertical | ||
) |
Compute person confidence for a given PersonCluster.
[in] | image | The input image (pointer to a point cloud containing RGB information). |
[in] | bottom | Theoretical bottom point of the cluster projected to the image. |
[in] | top | Theoretical top point of the cluster projected to the image. |
[in] | centroid | Theoretical centroid point of the cluster projected to the image. |
[in] | vertical | If true, the sensor is considered to be vertically placed (portrait mode). |
Definition at line 282 of file person_classifier.hpp.
void pcl::people::PersonClassifier< PointT >::getSVM | ( | int & | window_height, |
int & | window_width, | ||
std::vector< float > & | SVM_weights, | ||
float & | SVM_offset | ||
) |
Get trained SVM for person confidence estimation.
[out] | window_height | Detection window height. |
[out] | window_width | Detection window width. |
[out] | SVM_weights | SVM weights vector. |
[out] | SVM_offset | SVM offset. |
Definition at line 104 of file person_classifier.hpp.
bool pcl::people::PersonClassifier< PointT >::loadSVMFromFile | ( | std::string | svm_filename | ) |
Load SVM parameters from a text file.
[in] | svm_filename | Filename containing SVM parameters. |
Definition at line 53 of file person_classifier.hpp.
void pcl::people::PersonClassifier< PointT >::resize | ( | PointCloudPtr & | input_image, |
PointCloudPtr & | output_image, | ||
int | width, | ||
int | height | ||
) |
Resize an image represented by a pointcloud containing RGB information.
[in] | input_image | A pointer to a pointcloud containing RGB information. |
[out] | output_image | A pointer to the output pointcloud. |
[in] | width | Output width. |
[in] | height | Output height. |
Definition at line 113 of file person_classifier.hpp.
void pcl::people::PersonClassifier< PointT >::setSVM | ( | int | window_height, |
int | window_width, | ||
std::vector< float > | SVM_weights, | ||
float | SVM_offset | ||
) |
Set trained SVM for person confidence estimation.
[in] | window_height | Detection window height. |
[in] | window_width | Detection window width. |
[in] | SVM_weights | SVM weights vector. |
[in] | SVM_offset | SVM offset. |
Definition at line 95 of file person_classifier.hpp.
float pcl::people::PersonClassifier< PointT >::SVM_offset_ [protected] |
SVM offset.
Definition at line 65 of file person_classifier.h.
std::vector<float> pcl::people::PersonClassifier< PointT >::SVM_weights_ [protected] |
SVM weights vector.
Definition at line 68 of file person_classifier.h.
int pcl::people::PersonClassifier< PointT >::window_height_ [protected] |
Height of the image patch to classify.
Definition at line 59 of file person_classifier.h.
int pcl::people::PersonClassifier< PointT >::window_width_ [protected] |
Width of the image patch to classify.
Definition at line 62 of file person_classifier.h.