在pcl中使用pcl::normalestimation來對法線進行估計。但在對數量較大的點雲進行法線計算時會耗時很長,實時性很差。pcl庫提供了利用openmp來進行多核/多執行緒開發,以加快計算速度。但在使用時有可能出現以下問題:num_threads 子句的引數必須是正值。
這種結果通常出現在32位程式中。雖然不會影響結果,卻看著讓人很不爽。解決的辦法如下:只需在此前加入compute的執行緒數即可。
#include
#include
#include
#include
#include
#include
#include
#include
intmain ()
clock_t t2 = clock();
std::cout<<"time: " } 找了個資料。記錄,後續可能用到 使用 openmp 加速法線估計 對於對運算速度有要求的使用者,pcl 點雲庫提供了乙個表面法線的附加實現程式,它使用多核 多執行緒開發規範利用 openmp 來提高計算速度。它的類命名為pcl normaleestimationomp,並且它的應用程式介面 capd... 二 程式實現 三 執行結果 四 法線估計存在的問題 表面法線是幾何體表面的重要屬性,在很多領域都有大量應用,例如 在進行光照渲染時產生符合可視習慣的效果時需要表面法線資訊才能正常進行,對於乙個已知的幾何體表面,根據垂直於點表面的向量,因此推斷表面某一點的法線方向通常比較簡單。然而,由於我們獲取的點雲... 參考 openmp是由openmp architecture review board牽頭提出的,並已被廣泛接受的,用於共享記憶體 並行系統的多執行緒程式設計 的一套指導性注釋 compiler directive openmp支援的程式語言 包括c語言 c 和fortran 而支援openmp的編...PCL法線估計加速方法
點雲法線估計 C 實現
OpenMp使用例子