基於RANSAC的點雲面分割算法


該算法在RANSAC和空間檢索樹的基礎上實現的。

算法思路:

1、點雲抽希、法線估計

2、出局點索引存儲聲明

3、平面檢測

    for (size_t i = 0; i < cloudTemp->points.size(); i++)

    {

判斷為出局點;

         if (檢索一定量的臨近點)

         {

              判斷搜索點集是否符合要求;

              存儲搜索的點集 ;

         }

         RANSAC平面擬合(ransac計算平面模型參數);

        判斷平面擬合的正確性;

         /*

         * 利用擬合平面 計算點雲到該面距離, 設置容差  判斷點雲是否在平面內

         */

         for (size_t j = 0; j < tr_cloud->points.size(); j++)

         {

             判斷出局點;

判斷 平面法向與點法向的一致性 (求解兩個空間向量的夾角);

                 

             存儲平面內的點集;

             更新出局點;

         }

 

         //平面的噪點 離群點剔除

         //...

        存儲平面數據;

       

    }

效果如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM