本發(fā)明涉及人體三圍測(cè)量技術(shù)領(lǐng)域,具體涉及一種基于深度圖像的人體三圍測(cè)量方法。
背景技術(shù):
一般的,隨著計(jì)算機(jī)技術(shù)和互聯(lián)網(wǎng)技術(shù)的發(fā)展,越來(lái)越多的計(jì)算機(jī)應(yīng)用使用3d圖形圖像技術(shù)。在一些應(yīng)用領(lǐng)域內(nèi),如網(wǎng)上試衣、體感游戲、三維人體重建、服裝設(shè)計(jì)、游戲人物動(dòng)畫(huà)等等,對(duì)在線獲取人體三圍數(shù)據(jù)的需求也越來(lái)越多。然而由于人體差異、應(yīng)用場(chǎng)景的復(fù)雜性等各種原因,使得能夠在線、準(zhǔn)確的計(jì)算出人體三圍數(shù)據(jù)變成了一項(xiàng)難度很大的課題。
中國(guó)專利申請(qǐng)cn105222738a公開(kāi)了“一種人體3d模型數(shù)據(jù)尺寸測(cè)量方法”,該方法是一種在3d掃描技術(shù)得到人體3d模型數(shù)據(jù)文件的基礎(chǔ)上而進(jìn)行的一種測(cè)量方法,先通過(guò)系統(tǒng)前臺(tái)對(duì)應(yīng)完整的人體3d模型設(shè)置了比例尺,操作員點(diǎn)擊比例尺上需要測(cè)量三圍的高度后,系統(tǒng)前臺(tái)將高度轉(zhuǎn)換為高度比例值,并將該比例值傳遞至服務(wù)器,服務(wù)器調(diào)取人體3d模型數(shù)據(jù),找出文件中表示待測(cè)高度的所有點(diǎn)的集合;得到點(diǎn)集中各點(diǎn)的坐標(biāo)后,并通過(guò)卷包裹算法得出點(diǎn)集中各點(diǎn)所繞幾何圖形的周長(zhǎng),該周長(zhǎng)即為待測(cè)高度處人體模型的三圍尺寸。該方法存在以下不足:一方面在測(cè)量三圍數(shù)據(jù)前需要用3d掃描儀掃描人體獲得人體的3d模型數(shù)據(jù)文件,同時(shí)也要把該數(shù)據(jù)文件放在服務(wù)器端,在常規(guī)應(yīng)用場(chǎng)景下無(wú)法使用,而且也無(wú)法在線實(shí)時(shí)測(cè)量;另一方面該方法需要操作員和系統(tǒng)前臺(tái)交互才能進(jìn)行測(cè)量,增加了操作的復(fù)雜性,同時(shí)也會(huì)給計(jì)算結(jié)果帶來(lái)潛在的誤差。
中國(guó)專利申請(qǐng)cn103767219a公開(kāi)了“非接觸式人體三維尺寸測(cè)量方法”,該方法首先獲取人體數(shù)碼圖片,然后對(duì)數(shù)碼圖片中人體的多個(gè)體型特征點(diǎn)的像素進(jìn)行測(cè)量,并通過(guò)計(jì)算獲得數(shù)碼圖片中人體的體型特征的第一尺寸組;根據(jù)第一尺寸組計(jì)算出對(duì)應(yīng)于數(shù)碼圖片中人體的實(shí)際體型特征的第二尺寸組。該方法存在以下不足:一方面方法在獲取人體數(shù)碼圖片后需要對(duì)數(shù)碼圖片的預(yù)處理,對(duì)多個(gè)圖片進(jìn)行比例縮放、角度調(diào)整與翻轉(zhuǎn),以使多個(gè)圖片的比例與角度保持一致,這無(wú)疑增加了方法的復(fù)雜性,同時(shí)也會(huì)造成計(jì)算的誤差,方法實(shí)現(xiàn)難度較大;另一方面該方法由于用到數(shù)碼圖片,必然會(huì)受到光照和環(huán)境的影響,所以會(huì)對(duì)應(yīng)用場(chǎng)景有一定要求,這也就限制了該方法無(wú)法廣泛應(yīng)用。
中國(guó)專利申請(qǐng)cn103535960a公開(kāi)了“基于數(shù)碼圖像的人體三維測(cè)量方法”,該方法基于人體三圍橫截面數(shù)據(jù)庫(kù)和二維數(shù)碼圖像實(shí)現(xiàn),首先通過(guò)數(shù)碼圖像制作高精度刻度數(shù)據(jù)表格,并通過(guò)人體正面和側(cè)面的數(shù)碼圖像和刻度表格測(cè)量出人體平面二維數(shù)據(jù);通過(guò)三維掃描儀獲得人體三圍橫截面,兩者進(jìn)行擬合,獲得人體常規(guī)測(cè)量的輪廓,進(jìn)而獲得了人體的三圍數(shù)據(jù)。該方法存在以下不足:一方面,該方法的步驟復(fù)雜,實(shí)現(xiàn)起來(lái)難度較大,也無(wú)法進(jìn)行在線實(shí)時(shí)測(cè)量;另一方面該方法需要使用數(shù)碼相機(jī)和三圍掃描儀硬件設(shè)備支持,同時(shí)也需要矢量軟件和三維軟件進(jìn)行數(shù)據(jù)處理,處理過(guò)程中出現(xiàn)偏差累積,最終會(huì)導(dǎo)致得出的人體三圍數(shù)據(jù)有較大偏差;還有該方法也使用數(shù)碼圖像,同樣受到環(huán)境和光照的影響,也無(wú)法廣泛應(yīng)用。
因此,如何克服現(xiàn)有技術(shù)中存在的上述不足成為本領(lǐng)域亟待解決的技術(shù)問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明旨在至少解決現(xiàn)有技術(shù)中存在的技術(shù)問(wèn)題之一,提出了一種基于深度圖像的人體三圍測(cè)量方法。
為了實(shí)現(xiàn)上述目的,本發(fā)明提供了一種基于深度圖像的人體三圍測(cè)量方法,所述方法包括:
獲取預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本,利用線性回歸方法對(duì)所述預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本擬合出胸圍與胸寬和胸厚的線性回歸方程、腰圍與腰寬和腰厚的線性回歸方程以及臀圍與臀寬和臀厚的線性回歸方程;
獲取待測(cè)量用戶的人體正面深度圖像、人體側(cè)面深度圖像以及人體骨架信息;
對(duì)所述人體正面深度圖像進(jìn)行處理,以得到人體正面前景圖;以及對(duì)所述人體側(cè)面深度圖像進(jìn)行處理,以得到人體側(cè)面前景圖;
基于所述人體側(cè)面前景圖和所述人體骨架信息,計(jì)算出人體胸的前后兩個(gè)邊緣點(diǎn)像素、腰的前后兩個(gè)邊緣點(diǎn)像素、以及臀的前后兩個(gè)邊緣點(diǎn)像素;根據(jù)所述胸的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體胸厚;根據(jù)所述腰的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體腰厚;根據(jù)所述臀的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體臀厚;
基于所述人體正面前景圖和所述人體骨架信息,計(jì)算出人體胸的左右兩個(gè)邊緣點(diǎn)像素、腰的左右兩個(gè)邊緣點(diǎn)像素以及臀的左右兩個(gè)邊緣點(diǎn)像素;根據(jù)所述胸的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體胸寬;根據(jù)所述腰的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體腰寬;根據(jù)所述臀的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體臀寬;
將計(jì)算得到的所述人體胸厚和所述人體胸寬,帶入到所述胸圍與胸寬和胸厚的線性回歸方程、將計(jì)算得到的所述人體腰厚和所述人體腰寬,帶入到所述腰圍與腰寬和腰厚的線性回歸方程以及將計(jì)算得到的所述人體臀厚和所述人體臀寬,帶入到所述臀圍與臀寬和臀厚的線性回歸方程,以獲得人體的三圍數(shù)據(jù)。
優(yōu)選地,所述預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本包括不同年齡、不同性別和/或不同體型的人體三圍數(shù)據(jù)樣本。
優(yōu)選地,所述胸圍與胸寬和胸厚的線性回歸方程:
bc=xb*bw+yb*bt+zb;以及,
所述腰圍與腰寬和腰厚的線性回歸方程:
wc=xw*ww+yw*wt+zw;以及,
所述臀圍與臀寬和臀厚的線性回歸方程:
hc=xh*hw+yh*ht+zh;
其中,所述bc為胸圍尺寸,所述bw為胸寬尺寸,所述bt為胸厚尺寸,所述xb為胸圍線性回歸方程中胸寬的權(quán)重系數(shù),所述yb為胸圍線性回歸方程中胸厚的權(quán)重系數(shù),所述zb為胸圍線性回歸方程中的誤差補(bǔ)償常數(shù);
所述wc為腰圍尺寸,所述ww為腰寬尺寸,所述wt為腰厚尺寸,所述xw為腰圍線性回歸方程中腰寬的權(quán)重系數(shù),所述yw為腰圍線性回歸方程中腰厚的權(quán)重系數(shù),所述zw為腰圍線性回歸方程中誤差補(bǔ)償常數(shù);
所述hc為臀圍尺寸,所述hw為臀寬尺寸,所述ht為臀厚尺寸,所述xh為臀圍線性回歸方程中臀寬的權(quán)重系數(shù),所述yh為臀圍線性回歸方程中臀厚的權(quán)重系數(shù),所述zh為臀圍線性回歸方程中誤差補(bǔ)償常數(shù)。
優(yōu)選地,所述人體正面深度圖像包括人體正面像素和人體正面背景像素;以及,
所述人體側(cè)面深度圖像包括人體側(cè)面像素和人體側(cè)面背景像素;
其中,所述人體正面像素和所述人體正面背景像素的像素值為深度值,所述人體側(cè)面像素和所述人體側(cè)面背景像素的像素值為深度值。
優(yōu)選地,所述對(duì)所述人體正面深度圖像進(jìn)行處理,以得到人體正面前景圖;以及對(duì)所述人體側(cè)面深度圖像進(jìn)行處理,以得到人體側(cè)面前景圖的步驟包括:
提取所述人體正面深度圖像中的人體正面像素;
所述人體正面前景圖滿足下述公式:
其中,所述ff(xf,yf)為所述人體正面前景圖,所述i(xf,yf)為所述人體正面深度圖像中坐標(biāo)為(xf,yf)的像素;所述hf為所述人體正面深度圖像的所述人體正面像素集合;所述bf為人體正面深度圖像中所述人體正面背景像素集合;以及,
提取所述人體側(cè)面深度圖像中的人體側(cè)面像素;
所述人體側(cè)面前景圖滿足下述公式:
其中,所述i(xs,ys)為所述人體側(cè)面深度圖像中坐標(biāo)為(xs,ys)的像素;所述hs為所述人體側(cè)面深度圖像的所述人體側(cè)面像素集合;所述bs為人體側(cè)面深度圖像中所述人體側(cè)面背景像素集合。
優(yōu)選地,所述基于所述人體側(cè)面前景圖和所述人體骨架信息,計(jì)算出人體胸的前后兩個(gè)邊緣點(diǎn)像素,根據(jù)所述胸的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體胸厚的步驟包括:
提取所述人體骨架信息的左右肩關(guān)節(jié)點(diǎn)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將左肩關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xls,yls),右肩關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xrs,yrs);
計(jì)算所述左右肩關(guān)節(jié)點(diǎn)的中心在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將所述左右肩關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)記為((xls+xrs)/2,(yls+yrs)/2);
提取所述人體骨架信息的脊柱中心關(guān)節(jié)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將所述脊柱中心關(guān)節(jié)的像素坐標(biāo)記為(xsp,ysp);
基于所述左肩關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xls,yls)、所述右關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrs,yrs)、所述左右肩關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xls+xrs)/2,(yls+yrs)/2)以及所述脊柱中心關(guān)節(jié)的像素坐標(biāo)(xsp,ysp)確定所述胸的前后兩個(gè)邊緣點(diǎn)像素,并將胸的前邊緣點(diǎn)像素記為i(xbf,yb),胸的后邊緣點(diǎn)像素記為i(xbb,yb);
根據(jù)所述胸的前邊緣點(diǎn)像素i(xbf,yb),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwbf,ywbf,zwbf);根據(jù)所述胸的后邊緣點(diǎn)像素i(xbb,yb),計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwbb,ywbb,zwbb);
根據(jù)所述胸的前邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwbf,ywbf,zwbf)以及胸的后邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwbb,ywbb,zwbb),得到所述人體胸厚;其中,所述人體胸厚bt滿足下述公式:
所述基于所述人體側(cè)面前景圖和所述人體骨架信息,計(jì)算出人體腰的前后兩個(gè)邊緣點(diǎn)像素,根據(jù)所述腰的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體腰厚的步驟包括:
提取所述人體骨架信息的脊柱中心關(guān)節(jié)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將所述脊柱中心關(guān)節(jié)的像素坐標(biāo)記為(xsp,ysp);
提取所述人體骨架信息的左右臀關(guān)節(jié)點(diǎn)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xlh,ylh),右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xrh,yrh);
計(jì)算所述左右臀關(guān)節(jié)點(diǎn)的中心在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)記為((xlh+xrh)/2,(ylh+yrh)/2);
基于所述脊柱中心關(guān)節(jié)的像素坐標(biāo)記為(xsp,ysp)、所述左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xlh,ylh)、所述右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrh,yrh)以及所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xlh+xrh)/2,(ylh+yrh)/2)確定所述腰的前后兩個(gè)邊緣點(diǎn)像素,并將腰的前邊緣點(diǎn)像素記為i(xwf,yw),腰的后邊緣點(diǎn)像素記為i(xwb,yw);
根據(jù)所述腰的前邊緣點(diǎn)像素i(xwf,yw),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwwf,ywwf,zwwf);根據(jù)所述腰的后邊緣點(diǎn)像素i(xwb,yw),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的世界坐標(biāo),并將其記為(xwwb,ywwb,zwwb);
根據(jù)所述腰的前邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwwf,ywwf,zwwf)以及腰的后邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwwb,ywwb,zwwb),得到所述人體腰厚;其中,所述人體腰厚wt滿足下述公式:
所述基于所述人體側(cè)面前景圖和所述人體骨架信息,計(jì)算出人體臀的前后兩個(gè)邊緣點(diǎn)像素,根據(jù)所述臀的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體臀厚的步驟包括:
提取所述人體骨架信息的左右臀關(guān)節(jié)點(diǎn)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xlh,ylh),右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xrh,yrh);
計(jì)算所述左右臀關(guān)節(jié)點(diǎn)的中心在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)記為((xlh+xrh)/2,(ylh+yrh)/2);
基于所述左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xlh,ylh)、所述右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrh,yrh)以及所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xlh+xrh)/2,(ylh+yrh)/2)確定所述臀的前后兩個(gè)邊緣點(diǎn)像素,并將臀的前邊緣點(diǎn)像素記為i(xhf,yh),臀的后邊緣點(diǎn)像素記為i(xhb,yh);
根據(jù)所述臀的前邊緣點(diǎn)像素i(xhf,yh),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwhf,ywhf,zwhf);根據(jù)所述臀的后邊緣點(diǎn)像素i(xhbyh),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的的世界坐標(biāo),并將其記為(xwhb,ywhb,zwhb);
根據(jù)所述臀的前邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwhf,ywhf,zwhf)以及臀的后邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwhb,ywhb,zwhb),得到所述人體臀厚;其中,所述人體臀厚ht滿足下述公式:
優(yōu)選地,所述基于所述左肩關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xls,yls)、所述右關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrs,yrs)、所述左右肩關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xls+xrs)/2,(yls+yrs)/2)以及所述脊柱中心關(guān)節(jié)的像素坐標(biāo)(xsp,ysp)確定所述胸的前后兩個(gè)邊緣點(diǎn)像素,并將胸的前邊緣點(diǎn)像素記為i(xbf,yb),胸的后邊緣點(diǎn)像素記為i(xbb,yb)的步驟包括:
從所述人體側(cè)面前景圖的第(yls+yrs)/2行逐行掃描到第ysp行,并計(jì)算每行所述人體側(cè)面像素的左右兩個(gè)邊緣像素點(diǎn),以確定左右兩個(gè)邊緣像素點(diǎn)距離最大的行,該行即為胸的前后兩個(gè)邊緣點(diǎn)像素所處的行,并將該行坐標(biāo)記為yb;以及,
所述基于所述脊柱中心關(guān)節(jié)的像素坐標(biāo)記為(xsp,ysp)、所述左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xlh,ylh)、所述右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrh,yrh)以及所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xlh+xrh)/2,(ylh+yrh)/2)確定所述腰的前后兩個(gè)邊緣點(diǎn)像素,并將腰的前邊緣點(diǎn)像素記為i(xwf,yw),腰的后邊緣點(diǎn)像素記為i(xwb,yw)的步驟包括:
在所述人體側(cè)面前景圖的第(ysp+(ylh+yrh)/2)/2-th行與第(ysp+(ylh+yrh)/2)/2+th行之間逐行掃描,并計(jì)算每行所述人體側(cè)面像素的左右兩個(gè)邊緣像素點(diǎn),以確定左右兩個(gè)邊緣像素點(diǎn)距離最大的行,該行即為腰的前后兩個(gè)邊緣點(diǎn)像素所處的行,并將該行坐標(biāo)記為yw,其中,所述th為搜索行的閾值;以及,
基于所述左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xlh,ylh)、所述右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrh,yrh)以及所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xlh+xrh)/2,(ylh+yrh)/2)確定所述臀的前后兩個(gè)邊緣點(diǎn)像素,并將臀的前邊緣點(diǎn)像素記為i(xhf,yh),臀的后邊緣點(diǎn)像素記為i(xhb,yh)的步驟包括:
在所述人體側(cè)面前景圖的第(ylh+yrh)/2-th行與第(ylh+yrh)/2+th行之間逐行掃描,并計(jì)算每行所述人體側(cè)面像素的左右兩個(gè)邊緣像素點(diǎn),以確定左右兩個(gè)邊緣像素點(diǎn)距離最大的行,該行即為臀的前后兩個(gè)邊緣點(diǎn)像素所處的行,并將該行坐標(biāo)記為yh,其中,所述th為搜索行的閾值。
優(yōu)選地,所述基于所述人體正面前景圖和所述人體骨架信息,計(jì)算出人體胸的左右兩個(gè)邊緣點(diǎn)像素,根據(jù)所述胸的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體胸寬的步驟包括:
獲取所述胸的前后兩個(gè)邊緣點(diǎn)像素所處的行坐標(biāo)yb;
基于所述行坐標(biāo)yb,計(jì)算所述胸的左右兩個(gè)邊緣點(diǎn)像素在所述人體正面前景圖對(duì)應(yīng)的像素坐標(biāo),并將胸的左邊緣點(diǎn)像素坐標(biāo)記為i(xbl,yb),胸的右邊緣點(diǎn)像素坐標(biāo)記為i(xbr,yb);
根據(jù)所述胸的左邊緣點(diǎn)像素坐標(biāo)i(xbl,yb),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwbl,ywbl,zwbl);根據(jù)所述胸的右邊緣點(diǎn)像素坐標(biāo)i(xbl,yb),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的世界坐標(biāo),并將其記為(xwbr,ywbr,zwbr);
根據(jù)所述胸的左邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwbl,ywbl,zwbl)以及胸的右邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwbr,ywbr,zwbr),得到所述人體胸寬;其中,所述人體胸寬bw滿足下述公式:
所述基于所述人體正面前景圖和所述人體骨架信息,計(jì)算出人體腰的左右兩個(gè)邊緣點(diǎn)像素,根據(jù)所述腰的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體腰寬的步驟包括:
獲取所述腰的前后兩個(gè)邊緣點(diǎn)像素所處的行坐標(biāo)yw;
基于所述行坐標(biāo)yw,計(jì)算所述腰的左右兩個(gè)邊緣點(diǎn)像素在所述人體正面前景圖對(duì)應(yīng)的像素坐標(biāo),并將腰的左邊緣點(diǎn)像素坐標(biāo)記為i(xwl,yw),腰的右邊緣點(diǎn)像素坐標(biāo)記為i(xwr,yw);
根據(jù)所述腰的左邊緣點(diǎn)像素坐標(biāo)i(xwl,yw),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwwl,ywwl,zwwl);根據(jù)所述腰的右邊緣點(diǎn)像素坐標(biāo)i(xwr,yw),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的世界坐標(biāo),并將其記為(xwwr,ywwr,zwwr);
根據(jù)所述腰的左邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwwl,ywwl,zwwl)以及腰的右邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwwr,ywwr,zwwr),得到所述人體腰寬;其中,所述人體腰寬ww滿足下述公式:
所述基于所述人體正面前景圖和所述人體骨架信息,計(jì)算出人體臀的左右兩個(gè)邊緣點(diǎn)像素,根據(jù)所述臀的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體臀寬的步驟包括:
獲取所述臀的前后兩個(gè)邊緣點(diǎn)像素所處的行坐標(biāo)yh;
基于所述行坐標(biāo)yh,計(jì)算所述臀的左右兩個(gè)邊緣點(diǎn)像素在所述人體正面前景圖對(duì)應(yīng)的像素坐標(biāo),并將臀的左邊緣點(diǎn)像素坐標(biāo)記為i(xhl,yh),臀的右邊緣點(diǎn)像素坐標(biāo)記為i(xhr,yh);
根據(jù)所述臀的左邊緣點(diǎn)像素坐標(biāo)i(xhl,yh),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwhl,ywhl,zwhl);根據(jù)所述臀的右邊緣點(diǎn)像素坐標(biāo)i(xhr,yh),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的世界坐標(biāo),并將其記為(xwhr,ywhr,zwhr);
根據(jù)所述臀的左邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwhl,ywhl,zwhl)以及臀的右邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwhr,ywhr,zwhr),得到所述人體臀寬;其中,所述人體臀寬hw滿足下述公式:
優(yōu)選地,所述獲取待測(cè)量用戶的人體正面深度圖像、人體側(cè)面深度圖像以及人體骨架信息的步驟包括:
利用體感設(shè)備分別獲取待測(cè)量用于的人體正面深度圖像、人體側(cè)面深度圖像以及人體骨架信息;其中,所述體感設(shè)備包括能夠獲取深度圖以及人體骨架信息的采集設(shè)備。
本發(fā)明的基于深度圖像的人體三圍測(cè)量方法,通過(guò)獲取預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本,利用線性回歸方法對(duì)所述預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本擬合出胸圍與胸寬和胸厚的線性回歸方程、腰圍與腰寬和腰厚的線性回歸方程以及臀圍與臀寬和臀厚的線性回歸方程。之后獲取待測(cè)量用戶的人體正面深度圖像、人體側(cè)面深度圖像以及人體骨架信息,并對(duì)所述人體正面深度圖像進(jìn)行處理,以得到人體正面前景圖;以及對(duì)所述人體側(cè)面深度圖像進(jìn)行處理,以得到人體側(cè)面前景圖,最終計(jì)算得到人體的胸寬和胸厚、腰寬和腰厚以及臀寬和臀厚,并將其分別帶到相應(yīng)的線性回歸方程,以獲得人體的三圍數(shù)據(jù)。因此,本發(fā)明的基于深度圖像的人體三圍測(cè)量方法能夠在線、準(zhǔn)確的計(jì)算出人體三圍數(shù)據(jù),結(jié)構(gòu)簡(jiǎn)單,且操作方便,該基于深度圖像的人體三圍測(cè)量方法并不受到光照和環(huán)境的影響,因此對(duì)應(yīng)用場(chǎng)景基本沒(méi)有限制,拓寬了該基于深度圖像的人體三圍測(cè)量方法的應(yīng)用范圍。
附圖說(shuō)明
附圖是用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說(shuō)明書(shū)的一部分,與下面的具體實(shí)施方式一起用于解釋本發(fā)明,但并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中:
圖1為本發(fā)明第一實(shí)施例中基于深度圖像的人體三圍測(cè)量方法的流程示意圖;
圖2為本發(fā)明第二實(shí)施例中利用體感設(shè)備獲取待測(cè)量用戶的人體側(cè)面深度圖像及人體骨架信息的結(jié)構(gòu)示意圖;
圖3為本發(fā)明第三實(shí)施例中利用體感設(shè)備獲取待測(cè)量用戶的人體正面深度圖像及人體骨架信息的結(jié)構(gòu)示意圖;
圖4為本發(fā)明第四實(shí)施例中人體側(cè)面前景圖示意圖;
圖5為本發(fā)明第五實(shí)施例中人體正面前景圖示意圖。
附圖標(biāo)記說(shuō)明
201:待測(cè)量用戶;
202:體感設(shè)備;
401:左右肩關(guān)節(jié)點(diǎn)中心在人體側(cè)面前景圖中對(duì)應(yīng)的像素;
402:脊柱中心關(guān)節(jié)在人體側(cè)面前景圖中對(duì)應(yīng)的像素;
403:左右臀關(guān)節(jié)點(diǎn)中心在人體側(cè)面前景圖中對(duì)應(yīng)的像素;
501:左肩關(guān)節(jié)點(diǎn)在人體正面前景圖中對(duì)應(yīng)的像素;
502:右肩關(guān)節(jié)點(diǎn)在人體正面前景圖中對(duì)應(yīng)的像素;
503:脊柱中心關(guān)節(jié)在人體正面前景圖中對(duì)應(yīng)的像素;
504:左臀關(guān)節(jié)點(diǎn)在人體正面前景圖中對(duì)應(yīng)的像素;
505:右臀關(guān)節(jié)點(diǎn)在人體正面前景圖中對(duì)應(yīng)的像素。
具體實(shí)施方式
以下結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行詳細(xì)說(shuō)明。應(yīng)當(dāng)理解的是,此處所描述的具體實(shí)施方式僅用于說(shuō)明和解釋本發(fā)明,并不用于限制本發(fā)明。
參考圖1至圖5,本發(fā)明涉及一種基于深度圖像的人體三圍測(cè)量方法s100,所述方法s100包括:
s110、獲取預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本,利用線性回歸方法對(duì)所述預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本擬合出胸圍與胸寬和胸厚的線性回歸方程、腰圍與腰寬和腰厚的線性回歸方程以及臀圍與臀寬和臀厚的線性回歸方程。
在本步驟中,對(duì)于所述預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本并沒(méi)有作出限定,為了使得利用本發(fā)明的基于深度圖像的人體三圍測(cè)量方法更加準(zhǔn)確,優(yōu)選地,所述人體三圍數(shù)據(jù)樣本應(yīng)當(dāng)包括不同年齡、不同性別和/或不同體型的人體三圍數(shù)據(jù)樣本。另外,對(duì)于樣本數(shù)量的多少并沒(méi)有限定,只要該樣本數(shù)量能夠滿足利用線性回歸方法擬合出胸圍與胸寬和胸厚的線性回歸方程、腰圍與腰寬和腰厚的線性回歸方程以及臀圍與臀寬和臀厚的線性回歸方程即可。
優(yōu)選地,在本步驟中,所述胸圍與胸寬和胸厚的線性回歸方程:
bc=xb*bw+yb*bt+zb;以及,
所述腰圍與腰寬和腰厚的線性回歸方程:
wc=xw*ww+yw*wt+zw;以及,
所述臀圍與臀寬和臀厚的線性回歸方程:
hc=xh*hw+yh*ht+zh;
其中,所述bc為胸圍尺寸,所述bw為胸寬尺寸,所述bt為胸厚尺寸,所述xb為胸圍線性回歸方程中胸寬的權(quán)重系數(shù),所述yb為胸圍線性回歸方程中胸厚的權(quán)重系數(shù),所述zb為胸圍線性回歸方程中的誤差補(bǔ)償常數(shù);
所述wc為腰圍尺寸,所述ww為腰寬尺寸,所述wt為腰厚尺寸,所述xw為腰圍線性回歸方程中腰寬的權(quán)重系數(shù),所述yw為腰圍線性回歸方程中腰厚的權(quán)重系數(shù),所述zw為腰圍線性回歸方程中誤差補(bǔ)償常數(shù);
所述hc為臀圍尺寸,所述hw為臀寬尺寸,所述ht為臀厚尺寸,所述xh為臀圍線性回歸方程中臀寬的權(quán)重系數(shù),所述yh為臀圍線性回歸方程中臀厚的權(quán)重系數(shù),所述zh為臀圍線性回歸方程中誤差補(bǔ)償常數(shù)。
s120、獲取待測(cè)量用戶201的人體正面深度圖像、人體側(cè)面深度圖像以及人體骨架信息。
在本步驟中,對(duì)于如何獲取待測(cè)量用戶201的人體正面深度圖像、人體側(cè)面深度圖像以及人體骨架信息并沒(méi)有作出限定。
優(yōu)選地,該步驟中,可以參考圖2和圖3,可以利用體感設(shè)備202分別獲取待測(cè)量用戶201的人體正面深度圖像、人體側(cè)面深度圖像以及人體骨架信息。其中,所述體感設(shè)備202包括能夠獲取深度圖以及人體骨架信息的采集設(shè)備及相應(yīng)的配套軟件。
s130、對(duì)所述人體正面深度圖像進(jìn)行處理,以得到人體正面前景圖;以及對(duì)所述人體側(cè)面深度圖像進(jìn)行處理,以得到人體側(cè)面前景圖。
在本步驟中,所述人體正面深度圖像可以包括人體正面像素和人體正面背景像素。相應(yīng)地,
所述人體側(cè)面深度圖像包括人體側(cè)面像素和人體側(cè)面背景像素。
其中,所述人體正面像素和所述人體正面背景像素的像素值為深度值,所述人體側(cè)面像素和所述人體側(cè)面背景像素的像素值為深度值。
優(yōu)選地,所述對(duì)所述人體正面深度圖像進(jìn)行處理,以得到人體正面前景圖;以及對(duì)所述人體側(cè)面深度圖像進(jìn)行處理,以得到人體側(cè)面前景圖的步驟包括:
提取所述人體正面深度圖像中的人體正面像素;
所述人體正面前景圖滿足下述公式:
其中,所述ff(xf,yf)為所述人體正面前景圖,所述i(xf,yf)為所述人體正面深度圖像中坐標(biāo)為(xf,yf)的像素;所述hf為所述人體正面深度圖像的所述人體正面像素集合;所述bf為人體正面深度圖像中所述人體正面背景像素集合;以及,
提取所述人體側(cè)面深度圖像中的人體側(cè)面像素;
所述人體側(cè)面前景圖滿足下述公式:
其中,所述i(xs,ys)為所述人體側(cè)面深度圖像中坐標(biāo)為(xs,ys)的像素;所述hs為所述人體側(cè)面深度圖像的所述人體側(cè)面像素集合;所述bs為人體側(cè)面深度圖像中所述人體側(cè)面背景像素集合。
s140、基于所述人體側(cè)面前景圖和所述人體骨架信息,計(jì)算出人體胸的前后兩個(gè)邊緣點(diǎn)像素、腰的前后兩個(gè)邊緣點(diǎn)像素、以及臀的前后兩個(gè)邊緣點(diǎn)像素;根據(jù)所述胸的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體胸厚;根據(jù)所述腰的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體腰厚;根據(jù)所述臀的前后兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體臀厚。
在本步驟中,該步驟具體包括:
人體胸厚計(jì)算方法如下:
提取所述人體骨架信息的左右肩關(guān)節(jié)點(diǎn)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將左肩關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xls,yls),右肩關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xrs,yrs);
如圖4所示,計(jì)算所述左右肩關(guān)節(jié)點(diǎn)的中心在所述人體側(cè)面前景圖對(duì)應(yīng)的像素401坐標(biāo),并將所述左右肩關(guān)節(jié)點(diǎn)的中心的像素401坐標(biāo)記為((xls+xrs)/2,(yls+yrs)/2);
提取所述人體骨架信息的脊柱中心關(guān)節(jié)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素402坐標(biāo),并將所述脊柱中心關(guān)節(jié)的像素坐標(biāo)記為(xsp,ysp);
基于所述左肩關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xls,yls)、所述右關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrs,yrs)、所述左右肩關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xls+xrs)/2,(yls+yrs)/2)以及所述脊柱中心關(guān)節(jié)的像素坐標(biāo)(xsp,ysp)確定所述胸的前后兩個(gè)邊緣點(diǎn)像素,并將胸的前邊緣點(diǎn)像素記為i(xbf,yb),胸的后邊緣點(diǎn)像素記為i(xbb,yb);
根據(jù)所述胸的前邊緣點(diǎn)像素i(xbf,yb),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwbf,ywbf,zwbf);根據(jù)所述胸的后邊緣點(diǎn)像素i(xbb,yb),計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwbb,ywbb,zwbb);
根據(jù)所述胸的前邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwbf,ywbf,2wbf)以及胸的后邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwbb,ywbb,2wbb),得到所述人體胸厚;其中,所述人體胸厚bt滿足下述公式:
優(yōu)選地,所述基于所述左肩關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xls,yls)、所述右關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrs,yrs)、所述左右肩關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xls+xrs)/2,(yls+yrs)/2)以及所述脊柱中心關(guān)節(jié)的像素坐標(biāo)(xsp,ysp)確定所述胸的前后兩個(gè)邊緣點(diǎn)像素,并將胸的前邊緣點(diǎn)像素記為i(xbf,yb),胸的后邊緣點(diǎn)像素記為i(xbb,yb)的步驟包括:
從所述人體側(cè)面前景圖的第(yls+yrs)/2行逐行掃描到第ysp行,并計(jì)算每行所述人體側(cè)面像素的左右兩個(gè)邊緣像素點(diǎn),以確定左右兩個(gè)邊緣像素點(diǎn)距離最大的行,該行即為胸的前后兩個(gè)邊緣點(diǎn)像素所處的行,并將該行坐標(biāo)記為yb。
人體腰厚計(jì)算方法如下:
提取所述人體骨架信息的脊柱中心關(guān)節(jié)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將所述脊柱中心關(guān)節(jié)的像素坐標(biāo)記為(xsp,ysp)。
提取所述人體骨架信息的左右臀關(guān)節(jié)點(diǎn)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素403坐標(biāo),并將左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xlh,ylh),右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xrh,yrh)。
計(jì)算所述左右臀關(guān)節(jié)點(diǎn)的中心在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)記為((xlh+xrh)/2,(ylh+yrh)/2)。
基于所述脊柱中心關(guān)節(jié)的像素坐標(biāo)記為(xsp,ysp)、所述左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xlh,ylh)、所述右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrh,yrh)以及所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xlh+xrh)/2,(ylh+yrh)/2)確定所述腰的前后兩個(gè)邊緣點(diǎn)像素,并將腰的前邊緣點(diǎn)像素記為i(xwf,yw),腰的后邊緣點(diǎn)像素記為i(xwb,yw)。
根據(jù)所述腰的前邊緣點(diǎn)像素i(xwf,yw),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwwf,ywwf,zwwf);根據(jù)所述腰的后邊緣點(diǎn)像素i(xwb,yw),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的的世界坐標(biāo),并將其記為(xwwb,ywwb,zwwb)。
根據(jù)所述腰的前邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwwf,ywwf,zwwf)以及腰的后邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwwb,ywwb,zwwb),得到所述人體腰厚;其中,所述人體腰厚wt滿足下述公式:
優(yōu)選地,所述基于所述脊柱中心關(guān)節(jié)的像素坐標(biāo)記為(xsp,ysp)、所述左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xlh,ylh)、所述右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrh,yrh)以及所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xlh+xrh)/2,(ylh+yrh)/2)確定所述腰的前后兩個(gè)邊緣點(diǎn)像素,并將腰的前邊緣點(diǎn)像素記為i(xwf,yw),腰的后邊緣點(diǎn)像素記為i(xwb,yw)的步驟包括:
在所述人體側(cè)面前景圖的第(ysp+(ylh+yrh)/2)/2-th行與第(ysp+(ylh+yrh)/2)/2+th行之間逐行掃描,并計(jì)算每行所述人體側(cè)面像素的左右兩個(gè)邊緣像素點(diǎn),以確定左右兩個(gè)邊緣像素點(diǎn)距離最大的行,該行即為腰的前后兩個(gè)邊緣點(diǎn)像素所處的行,并將該行坐標(biāo)記為yw,其中,所述th為搜索行的閾值。
人體臀厚計(jì)算方法如下:
提取所述人體骨架信息的左右臀關(guān)節(jié)點(diǎn)在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xlh,ylh),右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)記為(xrh,yrh);
計(jì)算所述左右臀關(guān)節(jié)點(diǎn)的中心在所述人體側(cè)面前景圖對(duì)應(yīng)的像素坐標(biāo),并將所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)記為((xlh+xrh)/2,(ylh+yrh)/2);
基于所述左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xlh,ylh)、所述右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrh,yrh)以及所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xlh+xrh)/2,(ylh+yrh)/2)確定所述臀的前后兩個(gè)邊緣點(diǎn)像素,并將臀的前邊緣點(diǎn)像素記為i(xhf,yh),臀的后邊緣點(diǎn)像素記為i(xhb,yh);
根據(jù)所述臀的前邊緣點(diǎn)像素i(xhf,yh),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwhf,ywhf,zwhf);根據(jù)所述臀的后邊緣點(diǎn)像素i(xhbyh),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的的世界坐標(biāo),并將其記為(xwhb,ywhb,zwhb);
根據(jù)所述臀的前邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwhf,ywhf,zwhf)以及臀的后邊緣點(diǎn)像素對(duì)應(yīng)的世界坐標(biāo)(xwhb,ywhb,zwhb),得到所述人體臀厚;其中,所述人體臀厚ht滿足下述公式:
優(yōu)選地,所述基于所述左臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xlh,ylh)、所述右臀關(guān)節(jié)點(diǎn)的像素坐標(biāo)(xrh,yrh)以及所述左右臀關(guān)節(jié)點(diǎn)的中心的像素坐標(biāo)((xlh+xrh)/2,(ylh+yrh)/2)確定所述臀的前后兩個(gè)邊緣點(diǎn)像素,并將臀的前邊緣點(diǎn)像素記為i(xhf,yh),臀的后邊緣點(diǎn)像素記為i(xhb,yh)的步驟包括:
在所述人體側(cè)面前景圖的第(ylh+yrh)/2-th行與第(ylh+yrh)/2+th行之間逐行掃描,并計(jì)算每行所述人體側(cè)面像素的左右兩個(gè)邊緣像素點(diǎn),以確定左右兩個(gè)邊緣像素點(diǎn)距離最大的行,該行即為臀的前后兩個(gè)邊緣點(diǎn)像素所處的行,并將該行坐標(biāo)記為yh,其中,所述th為搜索行的閾值。
s150、基于所述人體正面前景圖和所述人體骨架信息,計(jì)算出人體胸的左右兩個(gè)邊緣點(diǎn)像素、腰的左右兩個(gè)邊緣點(diǎn)像素以及臀的左右兩個(gè)邊緣點(diǎn)像素;根據(jù)所述胸的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體胸寬;根據(jù)所述腰的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體腰寬;根據(jù)所述臀的左右兩個(gè)邊緣點(diǎn)像素,計(jì)算得到對(duì)應(yīng)世界坐標(biāo)系下的坐標(biāo)的歐式距離,以得到人體臀寬。
在本步驟中,如圖5所示,具體地計(jì)算方法可以如下:
計(jì)算胸寬:
獲取所述胸的前后兩個(gè)邊緣點(diǎn)像素所處的行坐標(biāo)yb;
基于所述行坐標(biāo)yb,計(jì)算所述胸的左右兩個(gè)邊緣點(diǎn)像素在所述人體正面前景圖對(duì)應(yīng)的像素坐標(biāo),并將胸的左邊緣點(diǎn)像素坐標(biāo)記為i(xbl,yb),胸的右邊緣點(diǎn)像素坐標(biāo)記為i(xbr,yb);
根據(jù)所述胸的左邊緣點(diǎn)像素坐標(biāo)i(xbl,yb),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwbl,ywbl,zwbl);根據(jù)所述胸的右邊緣點(diǎn)像素坐標(biāo)i(xbl,yb),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的世界坐標(biāo),并將其記為(xwbr,ywbr,zwbr);
根據(jù)所述胸的左邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwbl,ywbl,zwbl)以及胸的右邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwbr,ywbr,zwbr),得到所述人體胸寬;其中,所述人體胸寬bw滿足下述公式:
需要說(shuō)明的是,對(duì)于如何確定胸的左右兩個(gè)邊緣點(diǎn)像素可以參考前文關(guān)于人體側(cè)面前景圖有關(guān)的計(jì)算方法以及圖5,圖5示出了人體正面前景圖示意圖,其中,分別有左肩關(guān)節(jié)點(diǎn)在人體正面前景圖中對(duì)應(yīng)的像素501、右肩關(guān)節(jié)點(diǎn)在人體正面前景圖中對(duì)應(yīng)的像素502、脊柱中心關(guān)節(jié)在人體正面前景圖中對(duì)應(yīng)的像素503、左臀關(guān)節(jié)點(diǎn)在人體正面前景圖中對(duì)應(yīng)的像素504以及右臀關(guān)節(jié)點(diǎn)在人體正面前景圖中對(duì)應(yīng)的像素505等。
計(jì)算腰寬:
獲取所述腰的前后兩個(gè)邊緣點(diǎn)像素所處的行坐標(biāo)yw;
基于所述行坐標(biāo)yw,計(jì)算所述腰的左右兩個(gè)邊緣點(diǎn)像素在所述人體正面前景圖對(duì)應(yīng)的像素坐標(biāo),并將腰的左邊緣點(diǎn)像素坐標(biāo)記為i(xwl,yw),腰的右邊緣點(diǎn)像素坐標(biāo)記為i(xwr,yw);
根據(jù)所述腰的左邊緣點(diǎn)像素坐標(biāo)i(xwl,yw),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwwl,ywwl,zwwl);根據(jù)所述腰的右邊緣點(diǎn)像素坐標(biāo)i(xwr,yw),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的世界坐標(biāo),并將其記為(xwwr,ywwr,zwwr);
根據(jù)所述腰的左邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwwl,ywwl,zwwl)以及腰的右邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwwr,ywwr,zwwr),得到所述人體腰寬;其中,所述人體腰寬ww滿足下述公式:
計(jì)算臀寬:
獲取所述臀的前后兩個(gè)邊緣點(diǎn)像素所處的行坐標(biāo)yh;
基于所述行坐標(biāo)yh,計(jì)算所述臀的左右兩個(gè)邊緣點(diǎn)像素在所述人體正面前景圖對(duì)應(yīng)的像素坐標(biāo),并將臀的左邊緣點(diǎn)像素坐標(biāo)記為i(xhl,yh),臀的右邊緣點(diǎn)像素坐標(biāo)記為i(xhr,yh);
根據(jù)所述臀的左邊緣點(diǎn)像素坐標(biāo)i(xhl,yh),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系下的世界坐標(biāo),并將其記為(xwhl,ywhl,zwhl);根據(jù)所述臀的右邊緣點(diǎn)像素坐標(biāo)i(xhr,yh),計(jì)算得到對(duì)應(yīng)的世界坐標(biāo)系的世界坐標(biāo),并將其記為(xwhr,ywhr,zwhr);
根據(jù)所述臀的左邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwhl,ywhl,zwhl)以及臀的右邊緣點(diǎn)像素坐標(biāo)對(duì)應(yīng)的世界坐標(biāo)(xwhr,ywhr,zwhr),得到所述人體臀寬;其中,所述人體臀寬hw滿足下述公式:
s160、將計(jì)算得到的所述人體胸厚和所述人體胸寬,帶入到所述胸圍與胸寬和胸厚的線性回歸方程、將計(jì)算得到的所述人體腰厚和所述人體腰寬,帶入到所述腰圍與腰寬和腰厚的線性回歸方程以及將計(jì)算得到的所述人體臀厚和所述人體臀寬,帶入到所述臀圍與臀寬和臀厚的線性回歸方程,以獲得人體的三圍數(shù)據(jù)。
在本步驟中,可以將步驟s140得到待測(cè)量用戶的胸厚bt、腰厚wt以及臀厚ht,以及步驟s150得到的待測(cè)量用戶的胸寬bw、腰寬ww、臀寬hw分別帶入到上述步驟s110中的線性回歸方程內(nèi),以得到當(dāng)前待測(cè)量用戶的三圍。
本發(fā)明的基于深度圖像的人體三圍測(cè)量方法,通過(guò)獲取預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本,利用線性回歸方法對(duì)所述預(yù)設(shè)數(shù)量的人體三圍數(shù)據(jù)樣本擬合出胸圍與胸寬和胸厚的線性回歸方程、腰圍與腰寬和腰厚的線性回歸方程以及臀圍與臀寬和臀厚的線性回歸方程。之后獲取待測(cè)量用戶的人體正面深度圖像、人體側(cè)面深度圖像以及人體骨架信息,并對(duì)所述人體正面深度圖像進(jìn)行處理,以得到人體正面前景圖;以及對(duì)所述人體側(cè)面深度圖像進(jìn)行處理,以得到人體側(cè)面前景圖,最終計(jì)算得到人體的胸寬和胸厚、腰寬和腰厚以及臀寬和臀厚,并將其分別帶到相應(yīng)的線性回歸方程,以獲得人體的三圍數(shù)據(jù)。因此,本發(fā)明的基于深度圖像的人體三圍測(cè)量方法能夠在線、準(zhǔn)確的計(jì)算出人體三圍數(shù)據(jù),結(jié)構(gòu)簡(jiǎn)單,且操作方便,該基于深度圖像的人體三圍測(cè)量方法并不受到光照和環(huán)境的影響,因此對(duì)應(yīng)用場(chǎng)景基本沒(méi)有限制,拓寬了該基于深度圖像的人體三圍測(cè)量方法的應(yīng)用范圍。
可以理解的是,以上實(shí)施方式僅僅是為了說(shuō)明本發(fā)明的原理而采用的示例性實(shí)施方式,然而本發(fā)明并不局限于此。對(duì)于本領(lǐng)域內(nèi)的普通技術(shù)人員而言,在不脫離本發(fā)明的精神和實(shí)質(zhì)的情況下,可以做出各種變型和改進(jìn),這些變型和改進(jìn)也視為本發(fā)明的保護(hù)范圍。