const float m_texelSize
The size of a texture pixel.
std::vector< BaseVecT > keypoints23d(const std::vector< cv::KeyPoint > &keypoints, const BoundingRectangle< typename BaseVecT::CoordType > &boundingRect, const TextureHandle &h)
Compute 3D coordinates for texture-relative keypoints.
const int m_texMaxClusterSize
The maximum number of faces a cluster needs to be texturized.
StableVector< TextureHandle, Texture > getTextures()
Returns all textures.
TexCoords calculateTexCoords(TextureHandle texH, const BoundingRectangle< typename BaseVecT::CoordType > &boundingRect, BaseVecT v)
Calculate texture coordinates for a given 3D point in a texture.
Class that performs texture-related tasks.
virtual TextureHandle generateTexture(int index, const PointsetSurface< BaseVecT > &surface, const BoundingRectangle< typename BaseVecT::CoordType > &boundingRect)
Generates a texture for a given bounding rectangle.
BaseVecT calculateTexCoordsInv(TextureHandle texH, const BoundingRectangle< typename BaseVecT::CoordType > &boundingRect, const TexCoords &coords)
Calculate a global 3D position for given texture coordinates.
int getTextureIndex(TextureHandle h)
Get the texture index to a given texture handle.
void findKeyPointsInTexture(const TextureHandle texH, const BoundingRectangle< typename BaseVecT::CoordType > &boundingRect, const cv::Ptr< cv::Feature2D > &detector, std::vector< cv::KeyPoint > &keypoints, cv::Mat &descriptors)
Discover keypoints in a texture.
const int m_texMinClusterSize
The minimum number of faces a cluster needs to be texturized.
This class represents a texture.
void saveTextures()
Calls the save method for each texture.
Handle to access textures of the mesh.
StableVector< TextureHandle, Texture > m_textures
StableVector, that contains all generated textures with texture handles.
Texturizer(float texelSize, int texMinClusterSize, int texMaxClusterSize)
Constructor.
Texture getTexture(TextureHandle h)
Get the texture to a given texture handle.