專利名稱:一種基于三維點云的人體圍度參數測量方法
技術領域:
本發明涉及人體工程學技術領域,具體來說是一種基于三維點云的人體圍度參數測量方法。
背景技術:
三維人體尺寸測量根據測量方式的不同,可分為接觸式測量和非接觸式測量兩種。而利用光學與視覺技術的非接觸式三維測量方式因高響應和高分辨率而備受青睞。其中基于結構光的非接觸式人體三維測量以其大量程、大視場、高精度、實時性強及主動受控等優勢,日益受到重視并在人體尺寸測量中得到廣泛應用。然而在有限結構光采集設備掃描并重建人體三維點云時,往往由于人體自身遮擋、采集信息不完備及掃描死角等原因使得一些位于人體兩側的點云數據缺失,直接導致人體剖面尺寸測量環節剖面點云數據擬合的失敗。
發明內容
本發明針對現有技術的不足,提供了一種基于三維點云的人體圍度參數測量方法。本發明方法具體是步驟(I)將所有人體三維點云數據拼合至同一個三維坐標系下,結合指定的縱向高度,通過在二維平面上的投影,將指定高度的三維人體剖面點云數據轉化為二維平面點集,即獲得剖面點云數據。步驟(2)結合三維人體點云數據獲取的幾何約束條件,通過對二維平面點集上的剖面點云數據進行水平投影分析,自動完成剖面點云數據的分類。步驟(3)對分類后的數據,分析各類數據缺失部分點所在位置,利用缺失部分周圍的點,獲取待擬合點云數據。步驟(4)對各個類的數據,經過步驟(3)后,選擇二次曲線參數方程,并采用最小二乘法擬合點云數據,利用獲得的擬合曲線完成缺口補點的工作。步驟(5)在步驟(4)的基礎上,采用凸包算法計算各個分類數據所對應身體部位的圍度。本發明提供了一種基于三維點云的人體圍度參數測量方法,能夠使人體身體圍度的測量結果更加接近真實值,有著廣泛的應用前景。
圖I為本發明的方法流程圖;圖2三維人體剖面點云自動聚類及比較,其中(a)分類方法示意,(b)k均值聚類方法結果,(C)本發明投影方法;圖3最小二乘擬合前的預處理過程示意圖;其中(a)順時針采樣,(b)點云局部放大圖,(C)缺口示意圖,(d)全局采樣;
圖4為本發明對人體剖面點云的擬合結果圖,其中(a)原始剖面點云,(b)本發明擬合結果。
具體實施例方式以下結合附圖對本發明作進一步說明。如圖I所示,一種基于三維點云的人體圍度參數測量方法,包括(I)將所有人體三維點云數據拼合至同一個三維坐標系下,結合指定的縱向高度,通過在二維平面上的投影,將指定高度的三維人體剖面點云數據轉化為二維平面點集。(2)結合三維人體點云數據獲取的幾何約束條件,通過對二維平面點集上的點云數據進行水平投影分析,自動完成剖面點云數據的分類。 (3)對分類后的數據,分析各類數據缺失部分點所在位置,利用缺失部分周圍的點,獲取待擬合點云數據。(4)對各個類的數據,經過步驟(3)后,選擇二次曲線參數方程,并采用最小二乘法擬合點云數據。利用獲得的擬合曲線完成缺口補點的工作。(5)在步驟(4)的基礎上,采用凸包算法計算各個分類數據所對應身體部位的圍度。將所有人體三維點云數據拼合至同一個三維坐標系下,結合指定的縱向高度,通過在二維平面上的投影,將指定高度的三維人體剖面點云數據轉化為二維平面點集的具體過程包括以下步驟I.將不同采集設備獲取的點云數據拼合至同一個三維坐標系x-y-z,其中y軸為人體的縱向,x-z為人體水平面;2.根據指定的z值,將三維人體剖面點云數據轉化為二維平面點集。結合三維人體點云數據獲取的幾何約束條件,通過對二維平面點集上的點云數據進行水平投影分析,自動完成剖面點云數據的分類的具體過程包括以下步驟I.首先把剖面點云數據沿橫軸方向由小到大進行排序;如圖2(a)為分類方法示意,圖2(b)為k均值聚類方法結果。圖2 (C)所示,由于對三維人體進行切面前,須旋轉人體點云方向,使人體朝向與z軸平行。因此可以把剖面點云沿X軸進行水平投影,即由二維圖形變成一維圖形進行分類。首先把各個點沿X軸由小到大進行排序。2.以一個閾值T作為標準值,對相鄰兩點的橫軸坐標分量的差值超過閾值T的數量進行統計,如果數量個數記為C,即認為可以將樣本分為C+1類。計算相鄰兩點的X的差值。從第一個點開始計算相鄰兩點的距離,凡是遇到距離大于閾值的兩個點時,把從樣本的第一個點到這兩個點中前一點劃為一類。若該類點的數目小于閾值T=IO,則視為噪點去除,余下的點作為一個新的樣本重復當前操作,直到最后一個點為止。3.最后通過統計的類個數確定樣本剖面來源,如為三類,必來自于兩個手臂和身體,兩類則來自于雙腿等。對分類后的數據,分析各類數據缺失部分點所在位置,利用缺失部分周圍的點,獲取待擬合點云數據的具體過程包括以下步驟
I.首先,沿順時針方向對剖面點云數據進行排序;在分類結束后,求出各個類的中心點,利用中心點對該類通過角度以順時針方向進行排序。中心點即為該類的重心,設中心點O的坐標為(X(),y。),求解公式如式(I)所示,其中MxiJi) =1。排序是根據OA沿順時針到OB的夾角Θ由小到大進行,如圖3(a)所示,Θ角的求解如式(2)所示。
fdU —⑴
OJ O
ηη
Z 一 Z· (arcsin(—7a ° =) + 2π)ιηο(12 ,xa -X0 <0
λ/(χ — X )2 + (ζ_ — Zri)一,.Θ = 1 χ a(2)
(-arcsin( , ' ζ<> ,) + π) ,xa — Xti > O _V(xa-x。)-+(Za-Z0)2.其次,確定缺失部分所在位置;求取相鄰兩點之間的距離。如圖3(b)所示,L即為相鄰兩點的距離,然后設置閾值,如果相鄰的兩點的距離大于閾值,則說明該兩點的位置即為缺失部分所在位置。如圖3 (c)所示,比如CD之間的距離大于閾值,則說明C點和D點之間那段為缺失部分所在位置。3.最后,在缺口位置沿順時針及逆時針方向各采樣30個樣本點。如圖3 (d),從D點開始沿順時針方向取30個點,假設至E點為止,再從C點沿逆時針方向取30個點,假設到F點為止,最后利用該部位兩邊這些點進行擬合。對各個類的數據,經過步驟(3)后,選擇二次曲線參數方程,并采用最小二乘法擬合點云數據。利用獲得的擬合曲線完成缺口補點的工作的具體過程包括以下步驟I.選擇擬合函數f (X,A), A= (a0, a1;…,an)是一系列待定參數;f (χ, A)稱為擬合模型,A= (aQ,B1,…,an)是一系列待定參數。做法是選擇參數A使得擬合模型與實際觀測值在各點的差值61 = ^^(^,幻的加權平方和最小。即求 "(χ),使得Σ r(-T )(/* ixi) - zi )2}—min Σ ψ(^)(/ (λ;)-Z1)2)⑶
i=0 i=0其中W(Xi)彡0,稱為權,它反映數據(Xi,Zi)在實驗中所占數據的比重。應用此法擬合的曲線稱為最小二乘擬合曲線。用最小二乘法求擬合曲線首先要確定二次曲線的擬合模型 f (X,z) =a0x2+a1z2+a2xz+a3x+a4z+a5,^1=Izl a0=0,a^l, w(xi Zi) =1。2.結合步驟(3)獲取的樣本,利用最小二乘法計算待定參數;
m根據極值定理,令GK’A為,04,4) = Σ(,(υ) —對則由色=0,曼=0,逆=0,菩=0,
7=095a0^a3 oa4
f=。。得到
權利要求
1.一種基于三維點云的人體圍度參數測量方法,其特征在于該方法包括如下步驟 步驟(I)將所有人體三維點云數據拼合至同一個三維坐標系下,結合指定的縱向高度,通過在二維平面上的投影,將指定高度的三維人體剖面點云數據轉化為二維平面點集, 即獲得剖面點云數據;步驟(2)結合三維人體點云數據獲取的幾何約束條件,通過對二維平面點集上的剖面點云數據進行水平投影分析,自動完成剖面點云數據的分類;步驟(3)對分類后的數據,分析各類數據缺失部分點所在位置,利用缺失部分周圍的點,獲取待擬合點云數據;步驟(4)對各個類的數據,經過步驟(3)后,選擇二次曲線參數方程,并采用最小二乘法擬合點云數據,利用獲得的擬合曲線完成缺口補點的工作;步驟(5)在步驟(4)的基礎上,采用凸包算法計算各個分類數據所對應身體部位的圍度。
2.根據權利要求I所述的一種基于三維點云的人體圍度參數測量方法,其特征在于, 步驟(I)的具體過程如下1)將不同采集設備獲取的點云數據拼合至同一個三維坐標系x-y-z,其中y軸為人體的縱向,x-z為人體水平面;2)根據指定的z值,將三維人體剖面點云數據轉化為二維平面點集。
3.根據權利要求I所述的一種基于三維點云的人體圍度參數測量方法,其特征在于, 步驟(2)的具體過程如下1)首先把剖面點云數據沿橫軸方向由小到大進行排序;2)以一個閾值T作為標準值,對相鄰兩點的橫軸坐標分量的差值超過閾值T的數量進行統計,設數量個數記為C,即可以將樣本分為C+1類。
4.根據權利要求I所述的一種基于三維點云的人體圍度參數測量方法,其特征在于, 步驟(3)的具體過程如下1)沿順時針方向對剖面點云數據進行排序;2)確定缺失部分所在位置;3)在缺口位置沿順時針及逆時針方向各采樣30個樣本點。
5.根據權利要求I所述的一種基于三維點云的人體圍度參數測量方法,其特征在于, 步驟(4)的具體過程如下1)選擇擬合函數/0^.4,A= ,…,a是一系列待定參數;2)結合步驟(3)獲取的點云數據,利用最小二乘法計算待定參數;3)利用所獲得的擬合曲線與垂直于X軸直線的交點完成對剖面點云數據缺口補點的工作。
6.根據權利要求I所述的一種基于三維點云的人體圍度參數測量方法,其特征在于, 步驟(5)的具體過程如下1)在步驟(4)的基礎上,獲得經過補點后的人體各個部位剖面的點云數據;2)采用葛立恒凸包算法計算各類點云數據所對應身體部位的圍度。
全文摘要
本發明公開了一種基于三維點云的人體圍度參數測量方法,現有的方法由于人體自身遮擋、采集信息不完備及掃描死角等原因使得一些位于人體兩側的點云數據缺失。本發明首先將所有人體三維點云數據拼合至同一個三維坐標系下,將指定高度的三維人體剖面點云數據轉化為二維平面點集,通過對二維平面點集上的剖面點云數據進行水平投影分析,自動完成剖面點云數據的分類。其次分析各類數據缺失部分點所在位置,獲取待擬合點云數據。然后選擇二次曲線參數方程,并采用最小二乘法擬合點云數據,利用獲得的擬合曲線完成缺口補點的工作。最后計算各個分類數據所對應身體部位的圍度。本發明能夠使人體身體圍度的測量結果更加接近真實值。
文檔編號A61B5/107GK102920459SQ20121036386
公開日2013年2月13日 申請日期2012年9月26日 優先權日2012年9月26日
發明者孫志海, 周亮, 吳以凡, 周文暉, 戴國駿 申請人:杭州電子科技大學