W3cubDocs

/PointCloudLibrary

The texture mapping algorithm. More...

#include <pcl/surface/texture_mapping.h>

Public Types

using Ptr = shared_ptr< TextureMapping< PointInT > >
using ConstPtr = shared_ptr< const TextureMapping< PointInT > >
using PointCloud = pcl::PointCloud< PointInT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using Octree = pcl::octree::OctreePointCloudSearch< PointInT >
using OctreePtr = typename Octree::Ptr
using OctreeConstPtr = typename Octree::ConstPtr
using Camera = pcl::texture_mapping::Camera
using UvIndex = pcl::texture_mapping::UvIndex

Public Member Functions

TextureMapping ()
Constructor. More...
~TextureMapping ()
Destructor. More...
void setF (float f)
Set mesh scale control. More...
void setVectorField (float x, float y, float z)
Set vector field. More...
void setTextureFiles (std::vector< std::string > tex_files)
Set texture files. More...
void setTextureMaterials (TexMaterial tex_material)
Set texture materials. More...
void mapTexture2Mesh (pcl::TextureMesh &tex_mesh)
Map texture to a mesh synthesis algorithm. More...
void mapTexture2MeshUV (pcl::TextureMesh &tex_mesh)
Map texture to a mesh UV mapping. More...
void mapMultipleTexturesToMeshUV (pcl::TextureMesh &tex_mesh, pcl::texture_mapping::CameraVector &cams)
Map textures acquired from a set of cameras onto a mesh. More...
bool getPointUVCoordinates (const PointInT &pt, const Camera &cam, Eigen::Vector2f &UV_coordinates)
computes UV coordinates of point, observed by one particular camera More...
bool isPointOccluded (const PointInT &pt, const OctreePtr octree)
Check if a point is occluded using raycasting on octree. More...
void removeOccludedPoints (const PointCloudPtr &input_cloud, PointCloudPtr &filtered_cloud, const double octree_voxel_size, pcl::Indices &visible_indices, pcl::Indices &occluded_indices)
Remove occluded points from a point cloud. More...
void removeOccludedPoints (const pcl::TextureMesh &tex_mesh, pcl::TextureMesh &cleaned_mesh, const double octree_voxel_size)
Remove occluded points from a textureMesh. More...
void removeOccludedPoints (const pcl::TextureMesh &tex_mesh, PointCloudPtr &filtered_cloud, const double octree_voxel_size)
Remove occluded points from a textureMesh. More...
int sortFacesByCamera (pcl::TextureMesh &tex_mesh, pcl::TextureMesh &sorted_mesh, const pcl::texture_mapping::CameraVector &cameras, const double octree_voxel_size, PointCloud &visible_pts)
Segment faces by camera visibility. More...
void showOcclusions (const PointCloudPtr &input_cloud, pcl::PointCloud< pcl::PointXYZI >::Ptr &colored_cloud, const double octree_voxel_size, const bool show_nb_occlusions=true, const int max_occlusions=4)
Colors a point cloud, depending on its occlusions. More...
void showOcclusions (pcl::TextureMesh &tex_mesh, pcl::PointCloud< pcl::PointXYZI >::Ptr &colored_cloud, double octree_voxel_size, bool show_nb_occlusions=true, int max_occlusions=4)
Colors the point cloud of a Mesh, depending on its occlusions. More...
void textureMeshwithMultipleCameras (pcl::TextureMesh &mesh, const pcl::texture_mapping::CameraVector &cameras)
Segment and texture faces by camera visibility. More...

Protected Member Functions

std::vector< Eigen::Vector2f, Eigen::aligned_allocator< Eigen::Vector2f > > mapTexture2Face (const Eigen::Vector3f &p1, const Eigen::Vector3f &p2, const Eigen::Vector3f &p3)
Map texture to a face. More...
void getTriangleCircumcenterAndSize (const pcl::PointXY &p1, const pcl::PointXY &p2, const pcl::PointXY &p3, pcl::PointXY &circumcenter, double &radius)
Returns the circumcenter of a triangle and the circle's radius. More...
void getTriangleCircumcscribedCircleCentroid (const pcl::PointXY &p1, const pcl::PointXY &p2, const pcl::PointXY &p3, pcl::PointXY &circumcenter, double &radius)
Returns the centroid of a triangle and the corresponding circumscribed circle's radius. More...
bool getPointUVCoordinates (const PointInT &pt, const Camera &cam, pcl::PointXY &UV_coordinates)
computes UV coordinates of point, observed by one particular camera More...
bool isFaceProjected (const Camera &camera, const PointInT &p1, const PointInT &p2, const PointInT &p3, pcl::PointXY &proj1, pcl::PointXY &proj2, pcl::PointXY &proj3)
Returns true if all the vertices of one face are projected on the camera's image plane. More...
bool checkPointInsideTriangle (const pcl::PointXY &p1, const pcl::PointXY &p2, const pcl::PointXY &p3, const pcl::PointXY &pt)
Returns True if a point lays within a triangle. More...
std::string getClassName () const
Class get name method. More...

Protected Attributes

float f_
mesh scale control. More...
Eigen::Vector3f vector_field_
vector field More...
std::vector< std::string > tex_files_
list of texture files More...
TexMaterial tex_material_
list of texture materials More...

Detailed Description

template<typename PointInT>
class pcl::TextureMapping< PointInT >

The texture mapping algorithm.

Author
Khai Tran, Raphael Favier

Definition at line 100 of file texture_mapping.h.

Member Typedef Documentation

Camera

template<typename PointInT >
using pcl::TextureMapping< PointInT >::Camera = pcl::texture_mapping::Camera

Definition at line 115 of file texture_mapping.h.

ConstPtr

template<typename PointInT >
using pcl::TextureMapping< PointInT >::ConstPtr = shared_ptr<const TextureMapping<PointInT> >

Definition at line 105 of file texture_mapping.h.

Octree

template<typename PointInT >
using pcl::TextureMapping< PointInT >::Octree = pcl::octree::OctreePointCloudSearch<PointInT>

Definition at line 111 of file texture_mapping.h.

OctreeConstPtr

template<typename PointInT >
using pcl::TextureMapping< PointInT >::OctreeConstPtr = typename Octree::ConstPtr

Definition at line 113 of file texture_mapping.h.

OctreePtr

template<typename PointInT >
using pcl::TextureMapping< PointInT >::OctreePtr = typename Octree::Ptr

Definition at line 112 of file texture_mapping.h.

PointCloud

template<typename PointInT >
using pcl::TextureMapping< PointInT >::PointCloud = pcl::PointCloud<PointInT>

Definition at line 107 of file texture_mapping.h.

PointCloudConstPtr

template<typename PointInT >
using pcl::TextureMapping< PointInT >::PointCloudConstPtr = typename PointCloud::ConstPtr

Definition at line 109 of file texture_mapping.h.

PointCloudPtr

template<typename PointInT >
using pcl::TextureMapping< PointInT >::PointCloudPtr = typename PointCloud::Ptr

Definition at line 108 of file texture_mapping.h.

Ptr

template<typename PointInT >
using pcl::TextureMapping< PointInT >::Ptr = shared_ptr<TextureMapping<PointInT> >

Definition at line 104 of file texture_mapping.h.

UvIndex

template<typename PointInT >
using pcl::TextureMapping< PointInT >::UvIndex = pcl::texture_mapping::UvIndex

Definition at line 116 of file texture_mapping.h.

Constructor & Destructor Documentation

TextureMapping()

template<typename PointInT >
pcl::TextureMapping< PointInT >::TextureMapping ( )
inline

Constructor.

Definition at line 119 of file texture_mapping.h.

~TextureMapping()

template<typename PointInT >
pcl::TextureMapping< PointInT >::~TextureMapping ( )
inline

Destructor.

Definition at line 125 of file texture_mapping.h.

Member Function Documentation

checkPointInsideTriangle()

template<typename PointInT >
bool pcl::TextureMapping< PointInT >::checkPointInsideTriangle ( const pcl::PointXY & p1,
const pcl::PointXY & p2,
const pcl::PointXY & p3,
const pcl::PointXY & pt
)
inlineprotected

Returns True if a point lays within a triangle.

see http://www.blackpawn.com/texts/pointinpoly/default.html

Parameters
[in] p1 first point of the triangle.
[in] p2 second point of the triangle.
[in] p3 third point of the triangle.
[in] pt the querry point.

Definition at line 1036 of file texture_mapping.hpp.

References pcl::PointXY::x, and pcl::PointXY::y.

getClassName()

template<typename PointInT >
std::string pcl::TextureMapping< PointInT >::getClassName ( ) const
inlineprotected

Class get name method.

Definition at line 418 of file texture_mapping.h.

getPointUVCoordinates() [1/2]

template<typename PointInT >
bool pcl::TextureMapping< PointInT >::getPointUVCoordinates ( const PointInT & pt,
const Camera & cam,
Eigen::Vector2f & UV_coordinates
)
inline

computes UV coordinates of point, observed by one particular camera

Parameters
[in] pt XYZ point to project on camera plane
[in] cam the camera used for projection
[out] UV_coordinates the resulting uv coordinates. Set to (-1.0,-1.0) if the point is not visible by the camera
Returns
false if the point is not visible by the camera

Definition at line 198 of file texture_mapping.h.

References pcl::texture_mapping::Camera::center_h, pcl::texture_mapping::Camera::center_w, pcl::texture_mapping::Camera::focal_length, pcl::texture_mapping::Camera::focal_length_h, pcl::texture_mapping::Camera::focal_length_w, pcl::texture_mapping::Camera::height, and pcl::texture_mapping::Camera::width.

getPointUVCoordinates() [2/2]

template<typename PointInT >
bool pcl::TextureMapping< PointInT >::getPointUVCoordinates ( const PointInT & pt,
const Camera & cam,
pcl::PointXY & UV_coordinates
)
inlineprotected

computes UV coordinates of point, observed by one particular camera

Parameters
[in] pt XYZ point to project on camera plane
[in] cam the camera used for projection
[out] UV_coordinates the resulting UV coordinates. Set to (-1.0,-1.0) if the point is not visible by the camera
Returns
false if the point is not visible by the camera

Definition at line 992 of file texture_mapping.hpp.

References pcl::texture_mapping::Camera::center_h, pcl::texture_mapping::Camera::center_w, pcl::texture_mapping::Camera::focal_length, pcl::texture_mapping::Camera::focal_length_h, pcl::texture_mapping::Camera::focal_length_w, pcl::texture_mapping::Camera::height, pcl::texture_mapping::Camera::width, pcl::PointXY::x, and pcl::PointXY::y.

getTriangleCircumcenterAndSize()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::getTriangleCircumcenterAndSize ( const pcl::PointXY & p1,
const pcl::PointXY & p2,
const pcl::PointXY & p3,
pcl::PointXY & circumcenter,
double & radius
)
inlineprotected

Returns the circumcenter of a triangle and the circle's radius.

see http://en.wikipedia.org/wiki/Circumcenter for formulas.

Parameters
[in] p1 first point of the triangle.
[in] p2 second point of the triangle.
[in] p3 third point of the triangle.
[out] circumcenter resulting circumcenter
[out] radius the radius of the circumscribed circle.

Definition at line 943 of file texture_mapping.hpp.

References pcl::PointXY::x, and pcl::PointXY::y.

getTriangleCircumcscribedCircleCentroid()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::getTriangleCircumcscribedCircleCentroid ( const pcl::PointXY & p1,
const pcl::PointXY & p2,
const pcl::PointXY & p3,
pcl::PointXY & circumcenter,
double & radius
)
inlineprotected

Returns the centroid of a triangle and the corresponding circumscribed circle's radius.

yield a tighter circle than getTriangleCircumcenterAndSize.

Parameters
[in] p1 first point of the triangle.
[in] p2 second point of the triangle.
[in] p3 third point of the triangle.
[out] circumcenter resulting circumcenter
[out] radius the radius of the circumscribed circle.

Definition at line 976 of file texture_mapping.hpp.

References pcl::PointXY::x, and pcl::PointXY::y.

isFaceProjected()

template<typename PointInT >
bool pcl::TextureMapping< PointInT >::isFaceProjected ( const Camera & camera,
const PointInT & p1,
const PointInT & p2,
const PointInT & p3,
pcl::PointXY & proj1,
pcl::PointXY & proj2,
pcl::PointXY & proj3
)
inlineprotected

Returns true if all the vertices of one face are projected on the camera's image plane.

Parameters
[in] camera camera on which to project the face.
[in] p1 first point of the face.
[in] p2 second point of the face.
[in] p3 third point of the face.
[out] proj1 UV coordinates corresponding to p1.
[out] proj2 UV coordinates corresponding to p2.
[out] proj3 UV coordinates corresponding to p3.

Definition at line 1062 of file texture_mapping.hpp.

isPointOccluded()

template<typename PointInT >
bool pcl::TextureMapping< PointInT >::isPointOccluded ( const PointInT & pt,
const OctreePtr octree
)
inline

Check if a point is occluded using raycasting on octree.

Parameters
[in] pt XYZ from which the ray will start (toward the camera)
[in] octree the octree used for raycasting. It must be initialized with a cloud transformed into the camera's frame
Returns
true if the point is occluded.

Definition at line 359 of file texture_mapping.hpp.

mapMultipleTexturesToMeshUV()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::mapMultipleTexturesToMeshUV ( pcl::TextureMesh & tex_mesh,
pcl::texture_mapping::CameraVector & cams
)

Map textures acquired from a set of cameras onto a mesh.

With UV mapping, the mesh must be divided into NbCamera + 1 sub-meshes. Each sub-mesh corresponding to the faces visible by one camera. The last submesh containing all non-visible faces

Parameters
[in] tex_mesh texture mesh
[in] cams cameras used for UV mapping

Definition at line 281 of file texture_mapping.hpp.

References pcl::TextureMesh::cloud, pcl::fromPCLPointCloud2(), pcl::texture_mapping::Camera::pose, pcl::TextureMesh::tex_coordinates, pcl::TextureMesh::tex_materials, pcl::TextureMesh::tex_polygons, pcl::texture_mapping::Camera::texture_file, and pcl::transformPointCloud().

mapTexture2Face()

template<typename PointInT >
std::vector< Eigen::Vector2f, Eigen::aligned_allocator< Eigen::Vector2f > > pcl::TextureMapping< PointInT >::mapTexture2Face ( const Eigen::Vector3f & p1,
const Eigen::Vector3f & p2,
const Eigen::Vector3f & p3
)
protected

Map texture to a face.

Parameters
[in] p1 the first point
[in] p2 the second point
[in] p3 the third point

Definition at line 47 of file texture_mapping.hpp.

mapTexture2Mesh()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::mapTexture2Mesh ( pcl::TextureMesh & tex_mesh )

mapTexture2MeshUV()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::mapTexture2MeshUV ( pcl::TextureMesh & tex_mesh )

removeOccludedPoints() [1/3]

template<typename PointInT >
void pcl::TextureMapping< PointInT >::removeOccludedPoints ( const pcl::TextureMesh & tex_mesh,
pcl::TextureMesh & cleaned_mesh,
const double octree_voxel_size
)

Remove occluded points from a textureMesh.

Parameters
[in] tex_mesh input mesh, on witch to perform occlusion detection
[out] cleaned_mesh resulting mesh, containing only visible points
[in] octree_voxel_size octree resolution (in meters)

Definition at line 462 of file texture_mapping.hpp.

References pcl::TextureMesh::cloud, pcl::fromPCLPointCloud2(), and pcl::TextureMesh::tex_polygons.

removeOccludedPoints() [2/3]

template<typename PointInT >
void pcl::TextureMapping< PointInT >::removeOccludedPoints ( const pcl::TextureMesh & tex_mesh,
PointCloudPtr & filtered_cloud,
const double octree_voxel_size
)

Remove occluded points from a textureMesh.

Parameters
[in] tex_mesh input mesh, on witch to perform occlusion detection
[out] filtered_cloud resulting cloud, containing only visible points
[in] octree_voxel_size octree resolution (in meters)

Definition at line 515 of file texture_mapping.hpp.

References pcl::TextureMesh::cloud, and pcl::fromPCLPointCloud2().

removeOccludedPoints() [3/3]

template<typename PointInT >
void pcl::TextureMapping< PointInT >::removeOccludedPoints ( const PointCloudPtr & input_cloud,
PointCloudPtr & filtered_cloud,
const double octree_voxel_size,
pcl::Indices & visible_indices,
pcl::Indices & occluded_indices
)

Remove occluded points from a point cloud.

Parameters
[in] input_cloud the cloud on which to perform occlusion detection
[out] filtered_cloud resulting cloud, containing only visible points
[in] octree_voxel_size octree resolution (in meters)
[out] visible_indices will contain indices of visible points
[out] occluded_indices will contain indices of occluded points

Definition at line 398 of file texture_mapping.hpp.

References pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >::addPointsFromInputCloud(), pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >::defineBoundingBox(), pcl::octree::OctreePointCloudSearch< PointT, LeafContainerT, BranchContainerT >::getIntersectedVoxelIndices(), and pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >::setInputCloud().

setF()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::setF ( float f )
inline

Set mesh scale control.

Parameters
[in] f

Definition at line 133 of file texture_mapping.h.

References pcl::TextureMapping< PointInT >::f_.

setTextureFiles()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::setTextureFiles ( std::vector< std::string > tex_files )
inline

Set texture files.

Parameters
[in] tex_files list of texture files

Definition at line 155 of file texture_mapping.h.

References pcl::TextureMapping< PointInT >::tex_files_.

setTextureMaterials()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::setTextureMaterials ( TexMaterial tex_material )
inline

Set texture materials.

Parameters
[in] tex_material texture material

Definition at line 164 of file texture_mapping.h.

References pcl::TextureMapping< PointInT >::tex_material_.

setVectorField()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::setVectorField ( float x,
float y,
float z
)
inline

Set vector field.

Parameters
[in] x data point x
[in] y data point y
[in] z data point z

Definition at line 144 of file texture_mapping.h.

References pcl::TextureMapping< PointInT >::vector_field_.

showOcclusions() [1/2]

template<typename PointInT >
void pcl::TextureMapping< PointInT >::showOcclusions ( const PointCloudPtr & input_cloud,
pcl::PointCloud< pcl::PointXYZI >::Ptr & colored_cloud,
const double octree_voxel_size,
const bool show_nb_occlusions = true,
const int max_occlusions = 4
)

Colors a point cloud, depending on its occlusions.

If showNbOcclusions is set to True, each point is colored depending on the number of points occluding it. Else, each point is given a different a 0 value is not occluded, 1 if occluded. By default, the number of occlusions is bounded to 4.

Parameters
[in] input_cloud input cloud on which occlusions will be computed.
[out] colored_cloud resulting colored cloud showing the number of occlusions per point.
[in] octree_voxel_size octree resolution (in meters).
[in] show_nb_occlusions If false, color information will only represent.
[in] max_occlusions Limit the number of occlusions per point.

Definition at line 616 of file texture_mapping.hpp.

References pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >::addPointsFromInputCloud(), pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >::defineBoundingBox(), pcl::euclideanDistance(), pcl::octree::OctreePointCloudSearch< PointT, LeafContainerT, BranchContainerT >::getIntersectedVoxelIndices(), pcl::_PointXYZI::intensity, pcl::PointCloud< PointT >::points, and pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeT >::setInputCloud().

showOcclusions() [2/2]

template<typename PointInT >
void pcl::TextureMapping< PointInT >::showOcclusions ( pcl::TextureMesh & tex_mesh,
pcl::PointCloud< pcl::PointXYZI >::Ptr & colored_cloud,
double octree_voxel_size,
bool show_nb_occlusions = true,
int max_occlusions = 4
)

Colors the point cloud of a Mesh, depending on its occlusions.

If showNbOcclusions is set to True, each point is colored depending on the number of points occluding it. Else, each point is given a different a 0 value is not occluded, 1 if occluded. By default, the number of occlusions is bounded to 4.

Parameters
[in] tex_mesh input mesh on which occlusions will be computed.
[out] colored_cloud resulting colored cloud showing the number of occlusions per point.
[in] octree_voxel_size octree resolution (in meters).
[in] show_nb_occlusions If false, color information will only represent.
[in] max_occlusions Limit the number of occlusions per point.

Definition at line 690 of file texture_mapping.hpp.

References pcl::TextureMesh::cloud, and pcl::fromPCLPointCloud2().

sortFacesByCamera()

template<typename PointInT >
int pcl::TextureMapping< PointInT >::sortFacesByCamera ( pcl::TextureMesh & tex_mesh,
pcl::TextureMesh & sorted_mesh,
const pcl::texture_mapping::CameraVector & cameras,
const double octree_voxel_size,
PointCloud & visible_pts
)

Segment faces by camera visibility.

Point-based segmentation.

With N camera, faces will be arranged into N+1 groups: 1 for each camera, plus 1 for faces not visible from any camera.

Parameters
[in] tex_mesh input mesh that needs sorting. Must contain only 1 sub-mesh.
[in] sorted_mesh resulting mesh, will contain nbCamera + 1 sub-mesh.
[in] cameras vector containing the cameras used for texture mapping.
[in] octree_voxel_size octree resolution (in meters)
[out] visible_pts cloud containing only visible points

Definition at line 530 of file texture_mapping.hpp.

References pcl::TextureMesh::cloud, pcl::fromPCLPointCloud2(), pcl::TextureMesh::tex_polygons, and pcl::transformPointCloud().

textureMeshwithMultipleCameras()

template<typename PointInT >
void pcl::TextureMapping< PointInT >::textureMeshwithMultipleCameras ( pcl::TextureMesh & mesh,
const pcl::texture_mapping::CameraVector & cameras
)

Segment and texture faces by camera visibility.

Face-based segmentation.

With N camera, faces will be arranged into N+1 groups: 1 for each camera, plus 1 for faces not visible from any camera. The mesh will also contain uv coordinates for each face

Parameters
mesh input mesh that needs sorting. Should contain only 1 sub-mesh.
[in] cameras vector containing the cameras used for texture mapping.

Definition at line 702 of file texture_mapping.hpp.

References pcl::TextureMesh::cloud, pcl::fromPCLPointCloud2(), pcl::texture_mapping::UvIndex::idx_cloud, pcl::texture_mapping::UvIndex::idx_face, pcl::PointCloud< PointT >::points, pcl::KdTreeFLANN< PointT, Dist >::radiusSearch(), pcl::KdTreeFLANN< PointT, Dist >::setInputCloud(), pcl::TextureMesh::tex_coordinates, pcl::TextureMesh::tex_polygons, pcl::transformPointCloud(), pcl::PointXY::x, and pcl::PointXY::y.

Member Data Documentation

f_

template<typename PointInT >
float pcl::TextureMapping< PointInT >::f_
protected

mesh scale control.

Definition at line 340 of file texture_mapping.h.

Referenced by pcl::TextureMapping< PointInT >::setF().

tex_files_

template<typename PointInT >
std::vector<std::string> pcl::TextureMapping< PointInT >::tex_files_
protected

list of texture files

Definition at line 346 of file texture_mapping.h.

Referenced by pcl::TextureMapping< PointInT >::setTextureFiles().

tex_material_

template<typename PointInT >
TexMaterial pcl::TextureMapping< PointInT >::tex_material_
protected

list of texture materials

Definition at line 349 of file texture_mapping.h.

Referenced by pcl::TextureMapping< PointInT >::setTextureMaterials().

vector_field_

template<typename PointInT >
Eigen::Vector3f pcl::TextureMapping< PointInT >::vector_field_
protected

vector field

Definition at line 343 of file texture_mapping.h.

Referenced by pcl::TextureMapping< PointInT >::setVectorField().


The documentation for this class was generated from the following files:

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_texture_mapping.html