我正在試驗RANSAC算法,即本文中的RANSAC實現:http://cg.cs.uni-bonn.de/en/publications/paper-details/schnabel-2007-efficient/爲什麼RANSAC每次在同一個點雲上運行時會給我不同的結果?
我使用的代碼基礎是作者提供的。我試圖將物體,比如用Kinect 1獲得的杯子分割成原始形狀。
我的問題是,每當我在相同的物體點雲上運行原始形狀檢測時,我會得到不同的結果,就像一次運行,我會檢測到3個圓柱體和一個圓錐體,並在下一次運行時檢測到2圓環和1個球體。
我知道候選對象基元的第一個點是隨機選取的。所以在代碼中,我將隨機種子參數設置爲一個靜態數字。在這種情況下,我的結果總是與它應該是一樣的。但是,即使使用像實際時間那樣的非靜態種子,RANSAC是否應該產生相同或幾乎相同的結果?