我正在试验RANSAC算法,即本文中的RANSAC实现:http://cg.cs.uni-bonn.de/en/publications/paper-details/schnabel-2007-efficient/为什么RANSAC每次在同一个点云上运行时会给我不同的结果?
我使用的代码基础是作者提供的。我试图将物体,比如用Kinect 1获得的杯子分割成原始形状。
我的问题是,每当我在相同的物体点云上运行原始形状检测时,我会得到不同的结果,就像一次运行,我会检测到3个圆柱体和一个圆锥体,并在下一次运行时检测到2圆环和1个球体。
我知道候选对象基元的第一个点是随机选取的。所以在代码中,我将随机种子参数设置为一个静态数字。在这种情况下,我的结果总是与它应该是一样的。但是,即使使用像实际时间那样的非静态种子,RANSAC是否应该产生相同或几乎相同的结果?