基于k近鄰的LiDAR點云強度校正方法
【專利摘要】本發明公開了一種基于k近鄰的LiDAR點云強度校正方法,以k近鄰算法作為基礎,通過求取k近鄰點的強度均值方法進行點云強度值的校正,算法結構十分簡單,且能夠有效改正點云的強度信息,使得改正后的強度信息能夠更為真實的反映物體表面的屬性信息。
【專利說明】
基于k近鄰的L i DAR點云強度校正方法
技術領域
[0001] 本發明涉及一種LiDAR點云強度校正方法,特別涉及一種基于k近鄰的LiDAR點云 強度校正方法。
【背景技術】
[0002] 激光強度是物體對發射激光的后向散射回波的光功率,回波信號被接收后經內部 轉換和放大,最終轉換原始LiDAR數據中的強度值。由于受到激光測距值和激光入射角等系 統變量以及目標反射率、粗糙度和傾斜度等目標變量的影響,使得獲取的強度值存在一定 偏差。現有方法多是先通過建立強度值與系統變量之間的函數關系,進而分析系統變量影 響并進行改正的方法獲得目標表面的屬性信息。由于廠商對關鍵參數的保密,以及在建立 函數關系的過程中對某些變量的簡化,使得建立的函數關系并不能夠準確消除系統變量的 影響。
【發明內容】
[0003] 本發明所要解決的技術問題是提供一種基于k近鄰的LiDAR點云強度校正方法,使 得校正后的LiDAR點云強度信息能夠較為準確和真實的反映物體表面的屬性信息。
[0004] 本發明為解決上述技術問題采用以下技術方案:
[0005] 本發明提供一種基于k近鄰的LiDAR點云強度校正方法,包括以下具體步驟:
[0006] 步驟1,讀取包含強度信息的LiDAR點云數據,得到點云數據的個數η;
[0007] 步驟2,采用K-D樹組織所有的點云點,同時計算每個點云點的法向量;
[0008] 步驟3,遍歷所有的點云點,計算每一個點云點的入射角及其近鄰點,獲得每個點 云點校正后的強度值,具體步驟如下:
[0009] 301:令i = l;
[0010] 302:利用公式1計算第i個點云點Pi與掃描儀中心之間的距離:
[0011]爲=^χγ + ν'+ζ^ (1)
[0012]式中,Ri為第i個點云點仍與掃描儀中心之間的歐氏距離,ie(l,2, ···,!〇,(&&, Zi)為在以掃描儀中心為原點的坐標系中第i個點云點Pi的原始坐標;
[0013] 303:利用公式2計算第i個點云點Pi的激光入射角0i:
[0015] 式中,θ!為第i個點云點仍的激光入射角,(nXi,nyi,nZi)為第i個點云點仍的法向 量;
[0016] 304:搜索第i個點云點Pi的k個近鄰點,計算該k個近鄰點的原始強度值的均值,該 均值即為第i個點云點Pi校正后的強度值;
[0017] 305:令i = i+Ι,如果i <n,則返回步驟302,否則終止迭代,從而完成所有點云點的 強度校正。
[0018] 作為本發明的進一步優化方案,步驟304中k的值根據實際需要進行選取。
[0019] 作為本發明的進一步優化方案,k的值為10。
[0020] 作為本發明的進一步優化方案,k的值為15。
[0021]作為本發明的進一步優化方案,k的值為20。
[0022]本發明采用以上技術方案與現有技術相比,具有以下技術效果:本發明提供的 LiDAR點云強度信息校正方法,以k近鄰算法作為基礎,通過求取k近鄰點的強度均值方法進 行點云強度值的校正,算法結構十分簡單,且能夠有效改正點云的強度信息,使得改正后的 強度信息能夠更為真實的反映物體表面的屬性信息。
【附圖說明】
[0023]圖1是本發明的流程圖。
[0024] 圖2是以co叫/Af為橫軸,原始LiDAR點云強度值I為縱軸的散點圖。
[0025] 圖3是以為橫軸,校正后LiDAR點云強度值I為縱軸的散點圖。
【具體實施方式】
[0026] 下面結合附圖對本發明的技術方案做進一步的詳細說明:
[0027] 如圖1所示,一種基于k近鄰的LiDAR點云強度校正方法,包括以下步驟:
[0028]步驟1,讀取包含強度信息的LiDAR點云數據,得到點云數據的個數η = 5296。
[0029]步驟2,采用K-D樹組織所有的點云點,同時計算每個點云點的法向量。
[0030] 步驟3,遍歷所有的點云點,計算每一個點云點的入射角及其近鄰點,獲得每個點 云點校正后的強度值,具體步驟如下:
[0031] 401:令 i = l;
[0032] 402:利用公式1計算第i個點云點Pi與掃描儀中心之間的距離:
[0033] +y; +zr (1)
[0034] 式中,心為第i個點云點?1與掃描儀中心之間的歐氏距離,ie(l,2, ···,!〇,(Xl,yi, Zi)為在以掃描儀中心為原點的坐標系中第i個點云點Pi的坐標;
[0035] 403:利用公式2計算第i個點云點Pi的激光入射角0i:
[0037]式中,0i為第i個點云點Pi的激光入射角,(nxi,nyi, nzi)為第i個點云點Pi的法向 量;
[0038] 404:搜索第i個點云點?1的1^個近鄰點,計算該k個近鄰點的實測強度值的均值,該 均值即為第i個點云點Pi校正后的強度值;
[0039] 405:令i = i+Ι,如果i <n,則返回步驟402,否則終止迭代,從而完成所有點云點的 強度校正。
[0040]遵循本發明上述技術方案,得到原始激光點云強度值和改正后的激光點云的強度 值,如圖2和3所示,其中橫軸為cosq/f,縱軸為激光點云點的強度值。
[0041]如圖2所示,為原始激光點云點強度散點圖。如圖3所示,為本發明獲得的改正后的 激光點云強度散點圖。從圖2和圖3可以看出,本發明獲得的激光點強度散點圖與原始激光 點云強度散點圖總體趨勢較為相似,但本發明校正后的強度散點分布較原始強度散點分布 更為集中,說明本發明校正后的激光點云強度不僅能夠反映物體表面的屬性信息,且更接 近于物體表面的真實強度值。
[0042]以上所述,僅為本發明中的【具體實施方式】,但本發明的保護范圍并不局限于此,任 何熟悉該技術的人在本發明所揭露的技術范圍內,可理解想到的變換或替換,都應涵蓋在 本發明的包含范圍之內,因此,本發明的保護范圍應該以權利要求書的保護范圍為準。
【主權項】
1. 基于k近鄰的LiDAR點云強度校正方法,其特征在于,包括w下具體步驟: 步驟1,讀取包含強度信息的LiDAR點云數據,得到點云數據的個數η; 步驟2,采用Κ-的對組織所有的點云點,同時計算每個點云點的法向量; 步驟3,遍歷所有的點云點,計算每一個點云點的入射角及其近鄰點,獲得每個點云點 校正后的強度值,具體步驟如下: 301:令 i = l; 302:利用公式1計算第i個點云點Pi與掃描儀中屯、之間的距離:(1) 式中,R功第i個點云點Pi與掃描儀中屯、之間的歐氏距離,1£(1,2,。',11),把,71向)為 在W掃描儀中屯、為原點的坐標系中第i個點云點Pi的原始坐標; 303:利用公式2計算第i個點云點Pi的激光入射角θι:(2) 式中,目功第i個點云點Pi的激光入射角,(nxi,nyi,nzi)為第i個點云點Pi的法向量; 304:捜索第i個點云點Pi的k個近鄰點,計算該k個近鄰點的原始強度值的均值,該均值 即為第i個點云點Pi校正后的強度值; 305:令i = i+l,如果i<n,則返回步驟302,否則終止迭代,從而完成所有點云點的強度 校正。2. 根據權利要求1所述的基于k近鄰的LiDAR點云強度校正方法,其特征在于,步驟304 中k的值根據實際需要進行選取。3. 根據權利要求2所述的基于k近鄰的LiDAR點云強度校正方法,其特征在于,k的值為 10。4. 根據權利要求2所述的基于k近鄰的LiDAR點云強度校正方法,其特征在于,k的值為 15。5. 根據權利要求2所述的基于k近鄰的LiDAR點云強度校正方法,其特征在于,k的值為 20 〇
【文檔編號】G06T15/00GK106097423SQ201610404193
【公開日】2016年11月9日
【申請日】2016年6月8日
【發明人】賈東振, 何秀鳳
【申請人】河海大學