目录
一、算法原理
(1)三维点云数据集能够找到一个最大外包围盒将其包裹,具体步骤如下,首先找到坐标的极大值和极小值点,然后得到最大包围盒,极大值和极小值点构成外包围盒的对角点,其他点可以推算得到;
(2)找到包围盒的一个面,将其包裹在一个圆内(即圆将是圆柱体面),元的拟合方法此处暂不展开讲解
(3)以最大对角线为直径,找到圆柱体的中心;
该方法较为暴力,直接输出点云的最大外界圆柱,暂时并未考虑拟合精度问题,但效率较高,适合粗略的体积估算。
二、实现代码
#include<stdio.h>
#include<limits.h>
#include<math.h>
#include<iostream>
#include<vector>
#include<sstream>
#include