Matlab 在点云上拟合人体躯干(3个圆柱体)的简单模型

Matlab 在点云上拟合人体躯干(3个圆柱体)的简单模型,matlab,computer-vision,point-cloud-library,point-clouds,pose-estimation,Matlab,Computer Vision,Point Cloud Library,Point Clouds,Pose Estimation,对于简单的手姿势估计,我想首先在点云数据上拟合3个圆柱体。主要目标是提取手的姿势 我有(~1300点/帧,其中一些是人类旁边的一个橱柜和桌子),我读入Matlab,然后只在“手臂”圆柱体内的点上工作。我该怎么办?我想我会使用ICP并从形状中采样一些点,但我不知道如何实现这一点,也不知道如何将变换与圆柱体的参数精确关联(我想这将是圆柱体的高度、半径、中心底点和方向) 我能得到的任何帮助或资源都会很有帮助。库也一样。使用异常值将点拟合到模型:迭代地对非常小的一组点进行采样,从中估计模型参数,检查并查

对于简单的手姿势估计,我想首先在点云数据上拟合3个圆柱体。主要目标是提取手的姿势

我有(~1300点/帧,其中一些是人类旁边的一个橱柜和桌子),我读入Matlab,然后只在“手臂”圆柱体内的点上工作。我该怎么办?我想我会使用ICP并从形状中采样一些点,但我不知道如何实现这一点,也不知道如何将变换与圆柱体的参数精确关联(我想这将是圆柱体的高度、半径、中心底点和方向)


我能得到的任何帮助或资源都会很有帮助。库也一样。

使用异常值将点拟合到模型:迭代地对非常小的一组点进行采样,从中估计模型参数,检查并查看此模型“解释”的所有输入点的数量,最后选择解释最多点的模型


但是,您试图同时拟合三个模型(每个圆柱体都是一个“模型”)。在这种情况下,一个很好的方法是使用。

我也发现了该算法,但是我仍然不知道如何将其适应于3D圆柱体,我假设我必须更改参数的数量,并将距离计算适应于椭球?或者我应该把它当作一个船体,只是最大限度地增加“内部点”的数量?德国极是你的点,表面点还是内部点?我认为你的第一步是将一个圆柱体与部分数据相匹配:假设你只得到与躯干相关的点(+相当数量的异常值),你能找到躯干圆柱体的参数吗?这些点是曲面点,我必须考虑如何做到这一点。如果我理解正确,我会尝试从我的点中抽取一个小样本,生成一个与样本相关的圆柱体(比如高度=最大高差,半径=样本半径,中心基准最低点,从基准到最高测试点的方向向量?),然后测试出射线和入射线?编辑::刚刚知道如何投影到2D,所以我可以尝试省略号。在计算上应该便宜一点