OpenCV  4.10.0
开源计算机视觉
正在加载...
正在搜索...
无匹配项
| 类型定义 | 函数
cv::ppf_match_3d 命名空间参考

类  ICP
 此类实现了一种非常高效且鲁棒的迭代最近点 (ICP) 算法。任务是将 3D 模型(或点云)与一组噪声目标数据进行配准。我在进行了一些测试后将这些变体组合在一起。任务是能够快速匹配杂乱场景中的部分噪声点云。你会发现我的重点是性能,同时保持精度。此实现基于 Tolga Birdal 在此处的 MATLAB 实现:http://www.mathworks.com/matlabcentral/fileexchange/47152-icp-registration-using-efficient-variants-and-multi-resolution-scheme 主要贡献来自:更多...
 
类  Pose3D
 类,允许存储姿态。数据结构同时存储四元数和矩阵形式。它支持 IO 功能,以及用于处理姿态的各种辅助方法。更多...
 
类  PoseCluster3D
 当多个姿态(参见 Pose3D)分组在一起(贡献于相同的变换)时,就会出现姿态簇。此类是此类姿态组的通用容器。可以存储、加载和对这些姿态执行 IO 操作。更多...
 
类  PPF3DDetector
 类,允许加载和匹配 3D 模型。典型用法:更多...
 

类型定义

typedef uint KeyType
 
typedef Ptr< Pose3DPose3DPtr
 
typedef Ptr< PoseCluster3DPoseCluster3DPtr
 

函数

Mat addNoisePC (Mat pc, double scale)
 
void computeBboxStd (Mat pc, Vec2f &xRange, Vec2f &yRange, Vec2f &zRange)
 
int computeNormalsPC3d (const Mat &PC, Mat &PCNormals, const int NumNeighbors, const bool FlipViewpoint, const Vec3f &viewpoint)
 计算任意点云的法线 computeNormalsPC3d 使用平面拟合方法平滑地计算局部法线。法线是通过协方差矩阵的特征向量获得的,对应于最小特征值。如果 PCNormals 提供为 Nx6 矩阵,则不会进行新的分配,而是覆盖现有内存。
 
void destroyFlann (void *flannIndex)
 
void getRandomPose (Matx44d &Pose)
 
hashtable_inthashtable_int_clone (hashtable_int *hashtbl)
 
hashtable_inthashtableCreate (size_t size, size_t(*hashfunc)(uint))
 
void hashtableDestroy (hashtable_int *hashtbl)
 
void * hashtableGet (hashtable_int *hashtbl, KeyType key)
 
hashnode_ihashtableGetBucketHashed (hashtable_int *hashtbl, KeyType key)
 
int hashtableInsert (hashtable_int *hashtbl, KeyType key, void *data)
 
int hashtableInsertHashed (hashtable_int *hashtbl, KeyType key, void *data)
 
void hashtablePrint (hashtable_int *hashtbl)
 
hashtable_inthashtableRead (FILE *f)
 
int hashtableRemove (hashtable_int *hashtbl, KeyType key)
 
int hashtableResize (hashtable_int *hashtbl, size_t size)
 
int hashtableWrite (const hashtable_int *hashtbl, const size_t dataSize, FILE *f)
 
void * indexPCFlann (Mat pc)
 
Mat loadPLYSimple (const char *fileName, int withNormals=0)
 加载 PLY 文件。
 
static uint next_power_of_two (uint value)
 向上舍入到下一个最高 2 的幂。
 
Mat normalizePCCoeff (Mat pc, float scale, float *Cx, float *Cy, float *Cz, float *MinVal, float *MaxVal)
 
void queryPCFlann (void *flannIndex, Mat &pc, Mat &indices, Mat &distances)
 
void queryPCFlann (void *flannIndex, Mat &pc, Mat &indices, Mat &distances, const int numNeighbors)
 
Mat samplePCByQuantization (Mat pc, Vec2f &xrange, Vec2f &yrange, Vec2f &zrange, float sample_step_relative, int weightByCenter=0)
 
Mat samplePCUniform (Mat PC, int sampleStep)
 
Mat samplePCUniformInd (Mat PC, int sampleStep, std::vector< int > &indices)
 
Mat transformPCPose (Mat pc, const Matx44d &Pose)
 
Mat transPCCoeff (Mat pc, float scale, float Cx, float Cy, float Cz, float MinVal, float MaxVal)
 
void writePLY (Mat PC, const char *fileName)
 将点云写入 PLY 文件。
 
void writePLYVisibleNormals (Mat PC, const char *fileName)
 用于调试目的,将点云写入 PLY 文件,其中法向量的尖端显示为可见的红色点。