諸如移動(dòng)通信裝置的電子裝置可以包括不同類型的相機(jī),以使得用戶能夠捕獲圖像或視頻??梢园ㄔ谝苿?dòng)通信裝置上的一種類型的相機(jī)是深度相機(jī)。深度相機(jī)可以捕獲包括深度信息的圖像。深度信息可以被用于例如改變圖像的焦點(diǎn)。
技術(shù)實(shí)現(xiàn)要素:
根據(jù)一個(gè)方面,一種由計(jì)算裝置執(zhí)行的方法可以包括以下步驟:通過所述計(jì)算裝置從深度相機(jī)捕獲一個(gè)或更多個(gè)圖像,其中,所述一個(gè)或更多個(gè)圖像包括深度信息;通過所述計(jì)算機(jī)裝置生成針對(duì)所捕獲的一個(gè)或更多個(gè)圖像中的實(shí)體的初始雕塑;通過所述計(jì)算機(jī)裝置使用所述深度信息對(duì)所生成的初始雕塑執(zhí)行光線投射處理;以及通過所述計(jì)算機(jī)裝置基于所述光線投射處理來使所述初始雕塑變形,以生成針對(duì)所述實(shí)體的雕塑。
另外,執(zhí)行所述光線投射處理的步驟和使所述初始雕塑變形的步驟可以使用所述一個(gè)或更多個(gè)圖像中的特定圖像來執(zhí)行。
另外,所述初始雕塑可以包括具有頂點(diǎn)和三角面的網(wǎng)格多邊形,并且使用所述深度信息對(duì)所生成的初始雕塑執(zhí)行所述光線投射處理可以包括以下步驟:將光線從原點(diǎn)投射到包括在所述深度信息中的特定數(shù)據(jù)點(diǎn);確定投射的所述光線與所述網(wǎng)格多邊形的特定三角面的交叉點(diǎn);計(jì)算使所述交叉點(diǎn)移動(dòng)到所述特定數(shù)據(jù)點(diǎn)的力矢量;以及基于所計(jì)算的力矢量來確定針對(duì)所述特定三角面的頂點(diǎn)的頂點(diǎn)力矢量。
另外,基于所述光線投射處理使所述初始雕塑變形以生成針對(duì)所述實(shí)體的雕塑可以包括以下步驟:將針對(duì)所述網(wǎng)格多邊形的特定頂點(diǎn)的頂點(diǎn)力矢量相加;以及基于相加的力矢量通過使所述特定頂點(diǎn)移動(dòng)來使所述初始雕塑變形。
另外,所捕獲的一個(gè)或更多個(gè)圖像可以包括顏色信息,并且所述方法還可以包括:基于所述顏色信息來確定針對(duì)所述特定三角面的顏色信息。
另外,基于所述顏色信息確定針對(duì)所述特定三角面的所述顏色信息可以包括以下步驟:基于所述顏色信息生成三維UV圖;以及將所生成的三維UV圖映射到針對(duì)所述實(shí)體的所述雕塑上。
另外,所述方法還可以包括以下步驟:確定所計(jì)算的力矢量是否具有小于力量值閾值的量值;以及當(dāng)所計(jì)算的力矢量具有小于力量值閾值的量值時(shí),在確定所述頂點(diǎn)力矢量時(shí)忽略所計(jì)算的力矢量。
另外,所述方法還可以包括以下步驟:確定所計(jì)算的力矢量與所述特定三角面之間的角度;確定所述角度是否小于角度閾值;以及當(dāng)所述角度小于所述角度閾值時(shí),在確定所述頂點(diǎn)力矢量時(shí)忽略所計(jì)算的力矢量。
另外,所述方法還可以包括以下步驟:將穩(wěn)定性值分配給所述頂點(diǎn),其中,所述穩(wěn)定性值基于所述頂點(diǎn)已經(jīng)變形的程度的度量;以及基于所分配的穩(wěn)定性值按比例縮放所述頂點(diǎn)力矢量。
另外,所述方法還可以包括以下步驟:確定與所述頂點(diǎn)相關(guān)聯(lián)的邊比邊長(zhǎng)度閾值更短;以及響應(yīng)于確定與所述頂點(diǎn)相關(guān)聯(lián)的所述邊比所述邊長(zhǎng)度閾值更短,將與所述邊平行的邊緣力相加到所述頂點(diǎn)力矢量。
另外,所述方法還可以包括以下步驟:消除所述頂點(diǎn)力矢量的與投射的所述光線不平行的分量。
另外,所述方法還可以包括以下步驟:確定所述頂點(diǎn)與形成比角度閾值更小的角度的至少兩個(gè)邊相關(guān)聯(lián);以及通過關(guān)于所述頂點(diǎn)朝向所述至少兩個(gè)邊的遠(yuǎn)端之間的中點(diǎn)施加力來使所述頂點(diǎn)平滑。
另外,基于所述光線投射處理使所述初始雕塑變形以生成針對(duì)所述實(shí)體的雕塑的步驟可以包括:計(jì)算針對(duì)所述頂點(diǎn)的張力值,其中,所述張力值基于在所述頂點(diǎn)處施加的力的總和的量值與在所述頂點(diǎn)處施加的力的量值的總和的比率;確定所述張力值是否高于張力閾值;以及當(dāng)所述張力值高于所述張力閾值時(shí),將所述特定三角面細(xì)化成兩個(gè)更小的三角面。
另外,基于所述光線投射處理使所述初始雕塑變形以生成針對(duì)所述實(shí)體的雕塑可以包括:確定所述特定三角面與比邊長(zhǎng)度閾值更長(zhǎng)的邊相關(guān)聯(lián);以及當(dāng)所述邊比所述邊長(zhǎng)度閾值更長(zhǎng)時(shí),將所述特定三角面細(xì)化成兩個(gè)更小的三角面。
另外,基于所述光線投射處理使所述初始雕塑變形以生成針對(duì)所述實(shí)體的雕塑可以包括:確定與所述特定三角面相關(guān)聯(lián)的邊比邊長(zhǎng)度閾值更短;以及響應(yīng)于確定所述邊比所述邊長(zhǎng)度閾值更短,從所述網(wǎng)格多邊形去除所述邊。
另外,使用所述深度信息對(duì)所生成的初始雕塑執(zhí)行所述光線投射處理可以包括:使用圖形處理單元來執(zhí)行所述光線投射處理。
根據(jù)另一方面,一種移動(dòng)通信裝置可以包括邏輯部,該邏輯部被配置為:從深度相機(jī)捕獲一個(gè)或更多個(gè)圖像,其中,所述一個(gè)或更多個(gè)圖像包括深度信息;生成針對(duì)所捕獲的一個(gè)或更多個(gè)圖像中的實(shí)體的初始雕塑;使用所述深度信息對(duì)所生成的初始雕塑執(zhí)行光線投射處理;以及基于所述光線投射處理使所述初始雕塑變形以生成針對(duì)所述實(shí)體的雕塑。
另外,所述初始雕塑可以包括具有頂點(diǎn)和三角面的網(wǎng)格多邊形,并且當(dāng)使用所述深度信息對(duì)所生成的初始雕塑執(zhí)行所述光線投射處理時(shí),所述邏輯部還可以被配置為:將光線從原點(diǎn)投射到包括在所述深度信息中的特定數(shù)據(jù)點(diǎn);確定所投射的光線與所述網(wǎng)格多邊形的特定三角面的交叉點(diǎn);計(jì)算使所述交叉點(diǎn)移動(dòng)到所述特定數(shù)據(jù)點(diǎn)的力矢量;以及基于所計(jì)算的力矢量來確定針對(duì)所述特定三角面的頂點(diǎn)的頂點(diǎn)力矢量。
另外,當(dāng)基于所述光線投射處理使所述初始雕塑變形以生成針對(duì)所述實(shí)體的雕塑時(shí),所述邏輯部還可以被配置為:將針對(duì)所述網(wǎng)格多邊形的特定頂點(diǎn)的頂點(diǎn)力矢量相加;以及基于相加的力矢量通過使所述特定頂點(diǎn)移動(dòng)使所述初始雕塑變形。
根據(jù)又一方面,一種非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)裝置,其存儲(chǔ)能夠通過處理器執(zhí)行的指令,所述指令可以包括:從深度相機(jī)捕獲一個(gè)或更多個(gè)圖像的一個(gè)或更多個(gè)指令,其中,所述一個(gè)或更多個(gè)圖像包括深度信息;生成針對(duì)所捕獲的一個(gè)或更多個(gè)圖像中的實(shí)體的初始雕塑的一個(gè)或更多個(gè)指令,其中,所述初始雕塑包括具有頂點(diǎn)和三角面的網(wǎng)格多邊形;將光線從原點(diǎn)投射到包括在所述深度信息中的特定數(shù)據(jù)點(diǎn)的一個(gè)或更多個(gè)指令;確定所投射的光線與所述網(wǎng)格多邊形的特定三角面的交叉點(diǎn)的一個(gè)或更多個(gè)指令;計(jì)算使所述交叉點(diǎn)移動(dòng)到所述特定數(shù)據(jù)點(diǎn)的力矢量的一個(gè)或更多個(gè)指令;基于所計(jì)算的力矢量來確定針對(duì)所述特定三角面的頂點(diǎn)的頂點(diǎn)力矢量的一個(gè)或更多個(gè)指令;以及基于相加的力矢量通過使所述頂點(diǎn)移動(dòng)來使所述初始雕塑變形的一個(gè)或更多個(gè)指令。
附圖說明
[圖1A]圖1A是示出根據(jù)本文中所描述的實(shí)現(xiàn)的光線投射處理和變形的概述的視圖;
[圖1B]圖1B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的光線投射處理和變形的概述的視圖;
[圖2A]圖2A是示出根據(jù)本文中所描述的實(shí)現(xiàn)的示例性移動(dòng)通信裝置的視圖;
[圖2B]圖2B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的示例性移動(dòng)通信裝置的視圖;
[圖3]圖3是示出圖2中的移動(dòng)通信裝置的示例性組件的視圖;
[圖4]圖4是示出圖2中的移動(dòng)通信裝置的示例性功能組件的視圖;
[圖5]圖5是根據(jù)本文中所描述的實(shí)現(xiàn)的用于指導(dǎo)用戶進(jìn)行生成雕塑的處理的示例性處理的流程圖。
[圖6]圖6是根據(jù)本文中所描述的實(shí)現(xiàn)的用于基于所捕獲的圖像生成雕塑的示例性處理的流程圖。
[圖7]圖7是根據(jù)本文中所描述的實(shí)現(xiàn)的用于使雕塑變形的示例性處理的流程圖;
[圖8A]圖8A是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的示例性技術(shù)的視圖;
[圖8B]圖8B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的示例性技術(shù)的視圖;
[圖9A]圖9A是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖9B]圖9B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖10A]圖10A是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖10B]圖10B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖10C]圖10C是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖11A]圖11A是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖11B]圖11B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖11C]圖11C是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖12A]圖12A是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖12B]圖12B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖12C]圖12C是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖13A]圖13A是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖13B]圖13B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖13C]圖13C是示出根據(jù)本文中所描述的實(shí)現(xiàn)的使雕塑變形的另一示例性技術(shù)的視圖;
[圖14A]圖14A是根據(jù)本文中所描述的實(shí)現(xiàn)的示例性物體和相應(yīng)3D雕塑的視圖;以及
[圖14B]圖14B是根據(jù)本文中所描述的實(shí)現(xiàn)的示例性物體和相應(yīng)3D雕塑的視圖。
具體實(shí)施方式
以下詳細(xì)描述涉及附圖。不同附圖中的相同附圖標(biāo)記識(shí)別相同或類似元件。
深度相機(jī)可以捕獲具有深度信息的圖像。例如,所捕獲的圖像的像素可以包括顏色信息(例如,RGB信息)和深度信息(例如,離相機(jī)傳感器的距離)。深度信息可以被用來生成所捕獲的圖像中的實(shí)體(例如物體、人的頭、結(jié)構(gòu)和/或其它類型的實(shí)體)的三維(3D)模型??梢詮亩鄠€(gè)角度捕獲實(shí)體的多個(gè)圖像,以便獲得必要信息來生成3D模型。
用于生成3D模型的一種方法是使用點(diǎn)云。點(diǎn)云是具有額外屬性(諸如顏色信息)的3D點(diǎn)的集合。點(diǎn)云可以通過遍歷圖像來生成。對(duì)于每個(gè)像素,從像素的二維XY坐標(biāo)和針對(duì)像素的深度信息估計(jì)針對(duì)點(diǎn)的3D坐標(biāo)。然后可以使用諸如迭代最近點(diǎn)(ICP)方法的方法來對(duì)準(zhǔn)從每個(gè)圖像、從針對(duì)實(shí)體獲得的圖像的集合生成的點(diǎn)云。ICP方法可以用于估計(jì)對(duì)準(zhǔn)來自第一圖像的點(diǎn)云與第二圖像的點(diǎn)云所需的旋轉(zhuǎn)和平移。然而,使用ICP方法來生成3D模型可能不是令人滿意的。例如,深度信息可以與高等級(jí)噪聲相關(guān)聯(lián)并且點(diǎn)云的對(duì)準(zhǔn)可以導(dǎo)致很多誤差。
本文中描述的實(shí)現(xiàn)涉及使用網(wǎng)格雕塑利用深度相機(jī)的3D掃描。具有深度相機(jī)的計(jì)算機(jī)裝置(諸如移動(dòng)通信裝置)可以用來捕獲要針對(duì)其生成3D模型的實(shí)體(諸如物體或人的頭)的一個(gè)或更多個(gè)圖像。例如,用戶可以選擇顯示在裝置上的圖像中的實(shí)體,并且可以請(qǐng)求該裝置生成實(shí)體的3D模型。該裝置然后可以生成針對(duì)實(shí)體的初始雕塑。初始雕塑可以是由三角形構(gòu)建的網(wǎng)格多邊形。例如,初始雕塑可以是二十面體或者類似球體的另一種類型的多邊形。初始雕塑可以對(duì)應(yīng)于針對(duì)所選擇實(shí)體的所估計(jì)尺寸和位置。可以對(duì)初始雕塑執(zhí)行光線投射處理,并且可以使初始雕塑變形成為與所選實(shí)體的3D模型相對(duì)應(yīng)的雕塑。
圖1A和圖1B是示出根據(jù)本文中所描述的實(shí)現(xiàn)的光線投射處理和變形處理的概述的視圖。如圖1中所示,光線投射場(chǎng)景101可以包括數(shù)據(jù)點(diǎn)110和初始雕塑120。數(shù)據(jù)點(diǎn)110可以對(duì)應(yīng)于包括深度信息的所捕獲的圖像的數(shù)據(jù)點(diǎn)。例如,數(shù)據(jù)點(diǎn)110的XY坐標(biāo)可以基于所捕獲的圖像中的像素的XY坐標(biāo),并且Z坐標(biāo)可以基于針對(duì)像素的深度距離。雕塑120可以對(duì)應(yīng)于具有由頂點(diǎn)125限定的三角面的網(wǎng)格多邊形。每個(gè)三角面可以由三個(gè)頂點(diǎn)125限定并且每個(gè)頂點(diǎn)125可以由XYZ坐標(biāo)集限定。雕塑120可以最初被生成為類似于球體的網(wǎng)格多邊形,諸如具有20個(gè)三角面的二十面體。最初,雕塑120可以基于所捕獲的圖像中的要針對(duì)其生成3D模型的實(shí)體的所估計(jì)尺寸和位置被定位和調(diào)整大小。
可以如下執(zhí)行光線投射處理。對(duì)于特定數(shù)據(jù)點(diǎn)110,可以將光線130從原點(diǎn)投射到數(shù)據(jù)點(diǎn)110,并且可以計(jì)算光線與雕塑120的交叉點(diǎn)(即,光線與雕塑12的一個(gè)表面相遇的點(diǎn))。原點(diǎn)可以例如被限定為捕獲圖像的相機(jī)傳感器的位置。可以基于從交叉點(diǎn)135到數(shù)據(jù)點(diǎn)110的距離來計(jì)算力矢量140??梢葬槍?duì)圖像中的每個(gè)數(shù)據(jù)點(diǎn)110來執(zhí)行光線投射處理。
繼續(xù)圖1B,變形場(chǎng)景102可以包括針對(duì)雕塑120的每個(gè)頂點(diǎn)來計(jì)算頂點(diǎn)力145。針對(duì)特定頂點(diǎn)125的頂點(diǎn)力145可以基于針對(duì)與特定頂點(diǎn)125相關(guān)聯(lián)的三角面確定的力矢量140。例如,圖1A中的力140可以確定組成包括交叉點(diǎn)135的面的頂點(diǎn)125的頂點(diǎn)力145。如圖1B中所示,頂點(diǎn)力145可以用來通過使頂點(diǎn)125移動(dòng)到變形頂點(diǎn)155使雕塑120變形。
為了說明的目的,在圖1A中示出僅一個(gè)投射光線130和一個(gè)力矢量140,并且在圖1B中示出從力矢量140得到的僅一個(gè)頂點(diǎn)力145。實(shí)際上,頂點(diǎn)125可以經(jīng)受多個(gè)頂點(diǎn)力。頂點(diǎn)125可以與多個(gè)面相關(guān)聯(lián)。例如,在二十面體中,每個(gè)頂點(diǎn)與五個(gè)面相關(guān)聯(lián)。由于通過將光線130投射到每個(gè)數(shù)據(jù)點(diǎn)110來處理針對(duì)圖像的數(shù)據(jù)點(diǎn)110,每個(gè)面可以包括多個(gè)交叉點(diǎn)135。針對(duì)雕塑120的特定面的力矢量140可以相加并且可以被用于確定針對(duì)特定面的頂點(diǎn)125的頂點(diǎn)力145。針對(duì)特定頂點(diǎn)125的面的力可以相加以確定針對(duì)特定頂點(diǎn)125的頂點(diǎn)力1445。
盡管圖1A中的力140被示出為推力并且頂點(diǎn)力145被示出為正在沿朝向數(shù)據(jù)點(diǎn)110的方向推動(dòng)頂點(diǎn)125,如果數(shù)據(jù)點(diǎn)出現(xiàn)在面前面,則所得到的力可以是拉力。因此,可以基于每個(gè)頂點(diǎn)125經(jīng)受的力的總和來推動(dòng)或拉動(dòng)頂點(diǎn)125。在通過投射光線,確定交叉點(diǎn),確定力矢量,確定頂點(diǎn)力并且基于所確定的頂點(diǎn)力使頂點(diǎn)變形之后,可以針對(duì)下一個(gè)圖像重復(fù)該處理。為了生成針對(duì)實(shí)體的3D模型,可能需要從多個(gè)角度捕獲圖像。每個(gè)圖像可以包括導(dǎo)致雕塑120的特定截面(section)的變形的數(shù)據(jù)點(diǎn)。因此,從不同角度得到的一系列圖像可以按順序被使用,以使雕塑120的截面變形來生成所選擇實(shí)體的3D模型。
可以使用附加技術(shù)來改善雕塑的變形。附加技術(shù)可以包括以下中的一個(gè)或多個(gè):忽略具有比力量值閾值更小的量值的力;忽略與雕塑的面形成小于角度閾值的角度的力;將穩(wěn)定性值分配給頂點(diǎn)以基于所分配的穩(wěn)定性值來測(cè)量頂點(diǎn)已經(jīng)變形的程度并且按比例縮放頂點(diǎn)力;當(dāng)與頂點(diǎn)相關(guān)聯(lián)的邊比邊長(zhǎng)度閾值更短時(shí),將邊緣力相加到頂點(diǎn)的頂點(diǎn)力矢量;消除頂點(diǎn)力矢量的與所投射的光線不平行的分量;當(dāng)邊形成小于角度閾值的角度時(shí),通過朝向與頂點(diǎn)相關(guān)聯(lián)的邊的遠(yuǎn)端之間的中點(diǎn)施加力來使頂點(diǎn)平滑;當(dāng)針對(duì)頂點(diǎn)的張力值高于張力閾值時(shí),將雕塑的三角形細(xì)化成兩個(gè)更小的三角形;當(dāng)三角形的邊比邊長(zhǎng)度閾值更長(zhǎng)時(shí),將雕塑的三角形細(xì)化成兩個(gè)更小的三角形;當(dāng)邊比邊長(zhǎng)度閾值更短時(shí),從網(wǎng)格多邊形去除邊;和/或另一種技術(shù)。此外,來自圖像的顏色信息可以被應(yīng)用至雕塑。例如,顏色信息可以用來生成UV圖并且UV圖可以被映射到變形的雕塑上。
本文中描述的實(shí)現(xiàn)可以在移動(dòng)裝置中實(shí)現(xiàn)。圖2A和圖2B是示出根據(jù)實(shí)現(xiàn)的示例性移動(dòng)通信裝置200的視圖。圖2A示出移動(dòng)裝置200的正視圖,并且圖2B示出移動(dòng)裝置200的后視圖。盡管圖2A和圖2B將移動(dòng)裝置200示出為智能電話,但是在其它實(shí)現(xiàn)中,移動(dòng)裝置200可以包括不同類型的便攜式通信裝置(例如,移動(dòng)電話、平板手機(jī)裝置、可佩帶計(jì)算機(jī)裝置(例如,眼鏡智能電話裝置、腕表智能電話裝置等)、全球定位系統(tǒng)(GPS)裝置、和/或另一種類型的無線裝置);膝上型計(jì)算機(jī)、平板計(jì)算機(jī)或者另一種類型的便攜式計(jì)算機(jī);媒體播放裝置;便攜式游戲系統(tǒng);和/或具有深度相機(jī)的任何其它類型的計(jì)算機(jī)裝置。此外,本文中描述的實(shí)現(xiàn)可以在不包括移動(dòng)裝置的計(jì)算機(jī)裝置(例如臺(tái)式計(jì)算機(jī))、服務(wù)器裝置和/或另一種類型的計(jì)算機(jī)裝置中實(shí)現(xiàn)。如圖2A和圖2B中所示,移動(dòng)裝置200可以包括外殼210、觸摸屏220、麥克風(fēng)230、揚(yáng)聲器240和深度相機(jī)250。
外殼210可以包圍移動(dòng)裝置200并且可以使移動(dòng)裝置200的組件免受外部元素(例如,濕氣、灰塵等)的影響。觸摸屏220可以包括顯示裝置和被配置為檢測(cè)用戶的觸摸的輸入裝置。盡管圖2A示出移動(dòng)裝置200具有觸摸屏,但是在其它實(shí)現(xiàn)中,移動(dòng)裝置200可以不必須包括觸摸屏。例如,移動(dòng)裝置200可以包括顯示器和鍵盤和/或鍵區(qū)。觸摸屏220可以包括液晶顯示器(LCD)、電子墨水顯示器(例如,電泳顯示器)、電致發(fā)光顯示器和/或另一種類型的顯示器。此外,觸摸屏220可以包括觸摸傳感器,諸如電容傳感器(例如,表面電容傳感器、投影式電容觸摸傳感器等)、電阻傳感器(例如,模擬電阻傳感器、數(shù)字電阻傳感器等)、光學(xué)傳感器(例如,光學(xué)成像傳感器、背面散射光照明傳感器、紅外線格柵傳感器、散射式表面照明傳感器等)、聲波傳感器(例如,表面聲波傳感器、彎曲波傳感器等)和/或另一種類型的觸摸傳感器。此外,觸摸屏220可以包括感測(cè)被施加到觸摸屏220的力的量的傳感器,諸如壓阻傳感器。
麥克風(fēng)230可以接收音頻信號(hào)并且將所接收的音頻信號(hào)轉(zhuǎn)換成電信號(hào)以用于移動(dòng)裝置200。揚(yáng)聲器240可以從移動(dòng)裝置200內(nèi)接收電信號(hào)并且基于所接收的電信號(hào)來生成音頻信號(hào)。
移動(dòng)裝置200可以包括附加傳感器(在圖2A和圖2B中未示出)。例如,移動(dòng)裝置200可以包括:一個(gè)或更多個(gè)傾斜傳感器(諸如加速度計(jì)和/或陀螺儀),其被配置為感測(cè)移動(dòng)裝置200在空間中的傾斜、位置和/或取向;一個(gè)或更多個(gè)全球定位系統(tǒng)(GPS)接收器;一個(gè)或更多個(gè)磁場(chǎng)傳感器(例如,以感測(cè)磁北);運(yùn)動(dòng)檢測(cè)傳感器,以感測(cè)移動(dòng)裝置200附近的運(yùn)動(dòng);和/或其它類型的傳感器。
深度相機(jī)250可以包括可見光相機(jī)、紅外光相機(jī)、紫外光相機(jī)和/或另一種類型的相機(jī)的陣列。例如,深度相機(jī)250可以包括16個(gè)相機(jī)的4x4陣列。相機(jī)陣列可以用來通過例如視差檢測(cè)和/或超限分辨技術(shù)來獲得針對(duì)圖像的深度信息。
雖然圖2A和圖2B示出了移動(dòng)裝置200的示例性部件,但是在其它實(shí)現(xiàn)中,移動(dòng)裝置200可以包括更少部件、不同部件、不同布置的部件或者除了圖2A和圖2B中描述的那些部件以外的其它部件。另外地或另選地,移動(dòng)裝置200的一個(gè)或更多個(gè)部件可以執(zhí)行被描述為通過移動(dòng)裝置200的一個(gè)或更多個(gè)其它部件執(zhí)行的功能。
圖3是示出根據(jù)本文中描述的實(shí)現(xiàn)的移動(dòng)裝置200的示例性部件。如圖3中所示,移動(dòng)裝置200可以包括處理單元310、存儲(chǔ)器320、用戶接口330、通信接口340、天線組件350和圖形處理單元(GPU)360。
處理單元310可以包括一個(gè)或更多個(gè)處理器、微處理器、專用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門陣列(FPGA)和/或其它處理邏輯。處理單元310可以控制移動(dòng)裝置200及其部件的操作。
存儲(chǔ)器320可以包括隨機(jī)存取存儲(chǔ)器(RAM)或另一種類型的動(dòng)態(tài)存儲(chǔ)裝置、只讀存儲(chǔ)器(ROM)或另一種類型的靜態(tài)存儲(chǔ)裝置、可移除存儲(chǔ)卡和/或另一種類型的存儲(chǔ)器,以存儲(chǔ)可以由處理單元310使用的數(shù)據(jù)和指令。
用戶接口330可以允許用戶將信息輸入到移動(dòng)裝置200和/或從移動(dòng)裝置200輸出信息。用戶接口330的示例可以包括:揚(yáng)聲器,用于接收電信號(hào)并輸出音頻信號(hào);相機(jī),用于接收?qǐng)D像和/或視頻信號(hào)并輸出電信號(hào);麥克風(fēng),用于接收聲音并輸出電信號(hào);按鈕(例如,操縱桿、控制按鈕、鍵盤、或鍵區(qū)的按鍵);和/或觸摸屏,用于接收控制命令;顯示器,諸如LCD,用于輸出視覺信息;致動(dòng)器,用于使得裝置300振動(dòng);傳感器;和/或任何其它類型的輸入或輸出裝置。
通信接口340可以包括收發(fā)器,該收發(fā)器使得移動(dòng)裝置200能夠經(jīng)由無線通信(例如,射頻、紅外線和/或視覺光學(xué)等)、有線通信(例如,導(dǎo)線、雙絞線電纜、同軸電纜、傳輸線、光纖電纜和/或波導(dǎo)等)或者無線通信和有線通信的組合與其它裝置和/或系統(tǒng)進(jìn)行通信。通信接口340可以包括將基帶信號(hào)轉(zhuǎn)換成射頻(RF)信號(hào)的發(fā)送器和/或?qū)F信號(hào)轉(zhuǎn)換成基帶信號(hào)的接收器。通信接口340可以耦接到天線組件350以用于發(fā)送并接收RF信號(hào)。
通信接口340可以包括邏輯部件,該邏輯部件包括輸入端口和/或輸出端口、輸入系統(tǒng)和/或輸出系統(tǒng),和/或便于向其它裝置傳輸數(shù)據(jù)的其它輸入和輸出部件。例如,通信接口340可以包括用于有線通信的網(wǎng)絡(luò)接口卡(例如,以太網(wǎng)卡)和/或用于無線通信的無線網(wǎng)絡(luò)接口(例如,WiFi)卡。通信接口340還可以包括用于通過電纜通信的通用串行總線(USB)端口、藍(lán)牙(TM)無線接口、射頻識(shí)別(RFID)接口、近場(chǎng)通信(NFC)無線接口、和/或?qū)?shù)據(jù)從一種形式轉(zhuǎn)換成其它形式的任何其它類型的接口。
天線組件350可以包括一個(gè)或更多個(gè)天線以發(fā)送和/或接收RF信號(hào)。天線組件350可以例如從通信接口340接收RF信號(hào),并且經(jīng)由天線發(fā)送信號(hào)并從天線接收RF信號(hào)并將它們提供到通信接口340。
GPU 360可以包括一個(gè)或更多個(gè)裝置,該一個(gè)或更多個(gè)裝置包括用于執(zhí)行涉及圖形處理的操作(例如,塊圖像傳送操作、同時(shí)逐像素操作等)和/或用于并行地執(zhí)行大量操作的專用電路。根據(jù)本文中描述的一個(gè)或更多個(gè)實(shí)現(xiàn),GPU 360可以由處理單元310使用以加快光線投射處理和/或雕塑變形處理。
如本文中所描述的,移動(dòng)裝置200可以響應(yīng)于處理單元310執(zhí)行包含在計(jì)算機(jī)可讀介質(zhì)(例如存儲(chǔ)器320)中的軟件指令來執(zhí)行特定操作。計(jì)算機(jī)可讀介質(zhì)可以被限定為非暫時(shí)性存儲(chǔ)裝置。非暫時(shí)性存儲(chǔ)裝置可以包括單個(gè)物理存儲(chǔ)裝置內(nèi)的或者遍及多個(gè)物理存儲(chǔ)裝置的存儲(chǔ)空間。軟件指令可以經(jīng)由通信接口340從另一個(gè)計(jì)算機(jī)可讀介質(zhì)或從另一個(gè)裝置被讀入到存儲(chǔ)器320中。包含在存儲(chǔ)器320中的軟件指令可以使得處理單元310執(zhí)行稍后將要描述的處理。另選地,硬接線電路可以被使用以代替軟件指令或者與軟件指令相結(jié)合來實(shí)現(xiàn)本文中描述的處理。因此,本文中描述的實(shí)現(xiàn)不限于硬件電路和軟件的任何特定組合。
雖然圖3示出了移動(dòng)裝置200的示例性部件,但是在其它實(shí)現(xiàn)中,移動(dòng)裝置200可以包括更少部件、不同部件、不同布置的部件或者除了圖3中描述的那些部件以外的附加部件。另外地或另選地,移動(dòng)裝置200的一個(gè)或更多個(gè)部件可以執(zhí)行被描述為通過移動(dòng)裝置200的一個(gè)或更多個(gè)其它部件執(zhí)行的任務(wù)。
圖4是示出根據(jù)本文中描述的實(shí)現(xiàn)的移動(dòng)裝置200的示例性功能部件的視圖。可以例如經(jīng)由處理單元310執(zhí)行來自存儲(chǔ)器320的指令來實(shí)現(xiàn)移動(dòng)裝置200的功能部件。另選地,移動(dòng)裝置200的部分或全部功能部件可以經(jīng)由硬接線電路來實(shí)現(xiàn)。
如圖4中所示,移動(dòng)裝置200可以包括雕塑生成器410、用戶接口420、深度相機(jī)接口430、GPU接口440和雕塑存儲(chǔ)器450。雕塑生成器410可以對(duì)應(yīng)于安裝在移動(dòng)裝置200上的應(yīng)用程序并且被配置為基于從深度相機(jī)250獲得的圖像來生成3D雕塑。雕塑生成器410可以包括深度圖清理部件412、光線投射部件414、變形部件416和顏色部件418。
深度圖清理部件412可以通過使用一個(gè)或更多個(gè)濾波器處理深度圖來清理針對(duì)通過深度相機(jī)250捕獲的圖像的深度圖。例如,深度圖清理部件412可以應(yīng)用高斯平滑濾波器、雙邊濾波器、去塊濾波器和/或另一種類型的濾波器來清理深度圖。
光線投射部件414可以使用所生成的雕塑對(duì)具有深度信息的圖像中的數(shù)據(jù)點(diǎn)執(zhí)行光線投射處理。例如,光線投射部件414可以生成初始雕塑,可以向深度信息對(duì)于其可用的圖像中的每個(gè)數(shù)據(jù)點(diǎn)投射光線,并且可以確定所投射的光線與初始雕塑的面之間的交叉點(diǎn)。光線投射部件414然后可以確定使交叉點(diǎn)移動(dòng)到數(shù)據(jù)點(diǎn)的力。光線投射部件414可以在光線投射處理期間執(zhí)行附加操作,諸如基于附加處理標(biāo)準(zhǔn)來確定是應(yīng)當(dāng)忽略、按比例縮放還是另外修改特定力矢量。光線投射部件414可以針對(duì)在與實(shí)體相關(guān)聯(lián)的所捕獲的圖像的集合中的每個(gè)幀(例如,圖像)來重復(fù)光線投射處理。
變形部件416可以基于在光線投射處理期間確定的力矢量來確定針對(duì)雕塑的頂點(diǎn)的頂點(diǎn)力。變形部件416可以將針對(duì)每個(gè)頂點(diǎn)的力相加在一起并且基于所計(jì)算的頂點(diǎn)力的總和來使頂點(diǎn)移動(dòng)。變形部件416可以基于與變形處理相關(guān)聯(lián)的一個(gè)或更多個(gè)標(biāo)準(zhǔn)來執(zhí)行附加操作,諸如如果三角形的頂點(diǎn)經(jīng)受比張力閾值更高的張力和/或如果三角形的邊比邊長(zhǎng)度閾值更長(zhǎng),則細(xì)化(tessellate)三角形。變形部件414可以針對(duì)在與實(shí)體相關(guān)聯(lián)的所捕獲的圖像的集合中的每個(gè)幀重復(fù)變形處理。
顏色部件418可以基于包括在由深度相機(jī)250捕獲的圖像中的顏色信息來確定針對(duì)所生成的雕塑的顏色信息。例如,顏色部件418可以使用顏色信息生成UV圖并且可以將UV圖映射到所生成的雕塑上。
用戶接口420可以提供使得用戶能夠與雕塑生成器410交互的用戶接口。例如,用戶接口420可以被配置為借助通過提供有關(guān)關(guān)于要針對(duì)其生成3D模型的實(shí)體以不同角度定位深度相機(jī)250的指令引導(dǎo)用戶進(jìn)行捕獲一系列圖像的處理。作為另一個(gè)示例,用戶接口420可以被配置為使得用戶能夠從要針對(duì)其生成3D雕塑的圖像中選擇實(shí)體。例如,經(jīng)由用戶接口420,用戶可以提供圖像中的物體附近的蹤跡(trace)。作為另一個(gè)示例,可以執(zhí)行物體檢測(cè)處理來識(shí)別所捕獲的圖像中的物體并且可以提示用戶選擇所捕獲的圖像中的一個(gè)所識(shí)別的物體。作為還有的另一個(gè)示例,可以提示用戶選擇針對(duì)所生成的雕塑的目標(biāo)使用。例如,可以提示用戶選擇針對(duì)雕塑的特定文件格式,選擇針對(duì)雕塑的特定使用(例如,3D打印機(jī)文件、人物頭像等),選擇應(yīng)當(dāng)發(fā)送所生成的雕塑的目的地(例如,特定網(wǎng)站、用戶賬戶等),和/或可以提示用戶選擇針對(duì)所生成雕塑的另一種類型的目標(biāo)使用。
深度相機(jī)接口430可以與深度相機(jī)250進(jìn)行通信以獲得與雕塑生成處理相關(guān)聯(lián)的一個(gè)或更多個(gè)圖像。GPU接口440可以命令GPU 360代表雕塑生成器410執(zhí)行計(jì)算和/或其它類型的處理。例如,雕塑生成器410可以經(jīng)由GPU接口440命令GPU 360執(zhí)行與光線投射處理相關(guān)聯(lián)的計(jì)算。
雕塑存儲(chǔ)器450可以存儲(chǔ)與3D雕塑的生成相關(guān)聯(lián)的數(shù)據(jù)。例如,雕塑存儲(chǔ)器450可以存儲(chǔ)所捕獲的圖像,可以存儲(chǔ)與光線投射處理和/或變形處理相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu),可以存儲(chǔ)針對(duì)實(shí)體的所生成的3D雕塑,和/或可以存儲(chǔ)與雕塑生成器410相關(guān)聯(lián)的其它信息。
雖然圖4示出了移動(dòng)裝置200的示例性功能部件,但是在其它實(shí)現(xiàn)中,移動(dòng)裝置200可以包括更少功能部件、不同功能部件、不同布置的功能部件或者除了圖4中描述的那些功能部件以外的其它功能部件。另外地或另選地,移動(dòng)裝置200的一個(gè)或更多個(gè)功能部件可以執(zhí)行被描述為通過移動(dòng)裝置200的一個(gè)或更多個(gè)其它功能部件執(zhí)行的功能。
圖5是根據(jù)本文中所描述的實(shí)現(xiàn)的用于指導(dǎo)用戶進(jìn)行生成雕塑的處理的示例性處理的流程圖。在一些實(shí)現(xiàn)中,可以通過移動(dòng)裝置200執(zhí)行圖5中的處理。在其它實(shí)現(xiàn)中,可以通過與移動(dòng)裝置200分開的或者包括移動(dòng)裝置200的其它裝置或一組裝置來執(zhí)行圖5中的一些或全部處理。
圖5中的處理可以包括:使用深度相機(jī)來捕獲一個(gè)或更多個(gè)圖像(框510),以及接收生成3D雕塑的請(qǐng)求(框520)。例如,用戶可以使用深度相機(jī)250拍攝物體、人的頭或用戶想要生成3D雕塑的另一種類型的實(shí)體的一系列圖片。在拍攝圖片之后,用戶可以激活雕塑生成器410并且可以請(qǐng)求基于圖片來生成3D雕塑。另選地,用戶可以激活雕塑生成器410,可以請(qǐng)求生成經(jīng)由深度相機(jī)250顯示在觸摸屏220上的實(shí)體的3D雕塑,并且可以由用戶接口420引導(dǎo),使得以捕獲關(guān)于實(shí)體的深度信息的多種角度拍攝一系列圖片。
可以接收所捕獲的一個(gè)或更多個(gè)圖像中的實(shí)體的選擇(框530)。例如,用戶可以通過經(jīng)由觸摸屏220限定圖像的區(qū)域(例如,通過跟蹤圖像中的物體周圍的手指,等)經(jīng)由用戶接口420來選擇圖像中的實(shí)體。作為另一個(gè)示例,雕塑生成器410可以對(duì)圖像(例如,使用邊檢測(cè)算法)執(zhí)行對(duì)象識(shí)別處理并且可以識(shí)別圖像中的一個(gè)或更多個(gè)對(duì)象。用戶然后可以經(jīng)由觸摸屏220選擇對(duì)象中的一個(gè)。
可以針對(duì)所選擇實(shí)體生成雕塑(框540)。例如,如下面參照?qǐng)D6描述的,雕塑生成器410可以生成針對(duì)所選擇實(shí)體的初始雕塑,執(zhí)行光線投射處理,并且使初始雕塑變形以生成針對(duì)所選實(shí)體的3D雕塑。
可以接收針對(duì)所生成的雕塑的目標(biāo)使用的選擇(框550)并且可以基于所選擇的目標(biāo)使用來處理所生成的雕塑(框560)。例如,可以通過用戶接口420給用戶提供針對(duì)所生成的3D雕塑的目標(biāo)使用的一個(gè)或更多個(gè)選項(xiàng),并且用戶可以選擇選項(xiàng)中的一個(gè)。作為響應(yīng),雕塑生成器410可以將所生成的雕塑轉(zhuǎn)換成與所選擇的目標(biāo)使用相關(guān)聯(lián)的格式。例如,用戶可以選擇將所生成的雕塑轉(zhuǎn)換成計(jì)算機(jī)輔助設(shè)計(jì)(CAD)文件格式,轉(zhuǎn)換成3D打印機(jī)文件格式,轉(zhuǎn)換成用于計(jì)算機(jī)游戲的人物頭像文件,和/或轉(zhuǎn)換成另一種類型的3D模型文件格式。
圖6是根據(jù)本文中所描述的實(shí)現(xiàn)的用于基于所捕獲的圖像來生成雕塑的示例性處理的流程圖。在一些實(shí)現(xiàn)中,可以通過移動(dòng)裝置200執(zhí)行圖6中的處理。在其它實(shí)現(xiàn)中,可以通過與移動(dòng)裝置200分開的或者包括移動(dòng)裝置200的另一個(gè)裝置或一組裝置來執(zhí)行圖6中的一些或全部處理。
圖6中的處理可以包括生成初始雕塑(框610)。例如,雕塑生成器410可以從所捕獲的圖像的第一幀生成點(diǎn)云。雕塑生成器410然后可以基于要針對(duì)其生成雕塑的所選實(shí)體的尺寸和位置來選擇尺寸和位置。在一些實(shí)現(xiàn)中,雕塑生成器410可以生成球形的初始雕塑,諸如具有二十個(gè)三角面的二十面體。在其它實(shí)現(xiàn)中,雕塑生成器410可以基于所選實(shí)體的估計(jì)形狀來選擇針對(duì)初始雕塑的特定形狀(例如,球形、卵形、扁平、矩形等)。形狀可以由用戶例如通過跟蹤觸摸屏220上的形狀來估計(jì),可以使用物體識(shí)別處理來估計(jì),和/或可以使用其它技術(shù)來估計(jì)。
可以從所捕獲的圖像讀取下一幀(框620)并且可以清理深度圖(框630)。例如,雕塑生成器410可以訪問經(jīng)由深度相機(jī)接口430接收的并且被存儲(chǔ)在雕塑存儲(chǔ)器450中的所捕獲的圖像,并且可以將圖像提供到深度圖清理部件412。深度圖清理部件412可以將高斯平滑濾波器、雙邊濾波器、去塊濾波器和/或另一種類型的濾波器應(yīng)用至該圖像來清理深度圖??梢酝渡涔饩€(框640)并且可以使雕塑變形(框650)。下面將參照?qǐng)D7更詳細(xì)地描述光線投射和雕塑變形的處理。
可以確定顏色信息(框660)??梢曰诎ㄔ谒@得的圖像中的顏色信息來確定針對(duì)雕塑的顏色信息。例如,包括深度信息的每個(gè)像素還可以包括顏色信息,諸如針對(duì)像素的RGB值(或者針對(duì)另一種類型的顏色方案的值)。雕塑中的每個(gè)三角形可以與將紋理坐標(biāo)被分配給每個(gè)頂點(diǎn)的UV圖相關(guān)聯(lián)。當(dāng)針對(duì)三角形計(jì)算交叉點(diǎn)時(shí),可以計(jì)算與該交叉點(diǎn)匹配的紋理坐標(biāo)。用來計(jì)算交叉點(diǎn)的權(quán)重(如下面參照?qǐng)D7的框715解釋的)可以被用來確定與數(shù)據(jù)點(diǎn)110相關(guān)聯(lián)的與光線和顏色信息匹配的紋理坐標(biāo),可以針對(duì)所確定的紋理坐標(biāo)被存儲(chǔ)。
通過針對(duì)雕塑生成這種UV圖需要克服的一個(gè)問題在于,初始雕塑類似于不具有邊界的球體。由于通過深度相機(jī)250捕獲的圖像具有邊界,在不添加接縫(seam)的情況下可能無法將雕塑映射到圖像上。然而,添加接縫可能產(chǎn)生與特定頂點(diǎn)相關(guān)聯(lián)的至少兩個(gè)不同UV坐標(biāo),這使得計(jì)算復(fù)雜,并且如果選擇了錯(cuò)誤的接縫,則可能導(dǎo)致不正確映射。
為了確保正確映射,一種方法可以是始終選擇針對(duì)特定UV點(diǎn)的最接近頂點(diǎn)。然而,這種方法可能不提供令人滿意的結(jié)果。更好的解決方案可以是使用3D UV坐標(biāo)。因此,代替使針對(duì)每個(gè)頂點(diǎn)的2D UV坐標(biāo)u和v關(guān)聯(lián),顏色部件418可以使單位球體的表面上的3D x’、y’和z’坐標(biāo)關(guān)聯(lián)。從初始雕塑的默認(rèn)3D坐標(biāo)計(jì)算x’、y’和z’坐標(biāo)的默認(rèn)值。通過使用以下等式計(jì)算3D UV坐標(biāo)并執(zhí)行球形un映射來確定交叉點(diǎn)的2D UV坐標(biāo):
Math.1
為了存儲(chǔ)顏色信息,執(zhí)行3D UV坐標(biāo)的插值,而不使用2D坐標(biāo),這避免了纏繞(wrapping)情況,這是因?yàn)?D UV坐標(biāo)在球體的表面上。在對(duì)3D UV坐標(biāo)進(jìn)行插值之后,使用上面所示的球形un映射公式來執(zhí)行2D映射。
可以進(jìn)行關(guān)于是否存在附加幀的確定(框670)。例如,雕塑生成器410可以訪問雕塑存儲(chǔ)器450,以確定是否已經(jīng)經(jīng)由深度相機(jī)接口430從深度相機(jī)250獲得附加圖像。如果確定存在要處理的附加幀(框670-是),則處理可以返回到框620以從所捕獲的圖像讀取下一幀。在一些實(shí)現(xiàn)中,可以使用與移動(dòng)裝置200相關(guān)聯(lián)的附加傳感器幫助圖像幀與雕塑的對(duì)準(zhǔn)。例如,可以使用移動(dòng)裝置200的陀螺儀傳感器、加速度計(jì)傳感器和/或數(shù)字羅盤傳感器來生成旋轉(zhuǎn)矢量,該旋轉(zhuǎn)矢量可以用來在捕獲特定圖像期間確定深度相機(jī)250的位置和/或旋轉(zhuǎn)。
如果確定不存在要處理的附加圖像(框670-否),則可以輸出最終雕塑(框680)。例如,雕塑生成器410可以將最終雕塑保存在雕塑存儲(chǔ)器450中,并且可以使得用戶能夠在觸摸屏220上對(duì)雕塑進(jìn)行操作和/或?qū)⒌袼苻D(zhuǎn)換成針對(duì)特定應(yīng)用程序的特定格式。
圖7是根據(jù)本文中所描述的實(shí)現(xiàn)的用于使雕塑變形的示例性處理的流程圖。在一些實(shí)現(xiàn)中,可以通過移動(dòng)裝置200執(zhí)行圖5的處理。在其它實(shí)現(xiàn)中,可以通過與移動(dòng)裝置200分開的或者包括移動(dòng)裝置200的另一個(gè)裝置或一組裝置來執(zhí)行圖77的一些或全部處理。
圖7的處理可以包括重置力(框710)。在先前光線投射處理期間,基于所捕獲的圖像,雕塑120的每個(gè)頂點(diǎn)可能已經(jīng)積累了被用于使雕塑變形的頂點(diǎn)力。在執(zhí)行下一次光線投射處理之前重置力。
計(jì)算交叉處的力(框715)。如上面參照?qǐng)D1A解釋的,光線130從原點(diǎn)(諸如深度相機(jī)250的位置)關(guān)于包括在所捕獲的圖像中的深度信息朝向數(shù)據(jù)點(diǎn)110被投射。計(jì)算交叉點(diǎn)135,以確定所投射的光線與雕塑120相交的點(diǎn)?;谛纬墒构饩€130與雕塑120相交以到達(dá)數(shù)據(jù)點(diǎn)110的三角形的頂點(diǎn)125的坐標(biāo)來計(jì)算交叉點(diǎn)135。如果數(shù)據(jù)點(diǎn)110在雕塑120后面,則交叉點(diǎn)135處的力140將是推力。如果數(shù)據(jù)點(diǎn)110在雕塑120前面,則交叉點(diǎn)135處的力140將是拉力。
可以在交叉處對(duì)所計(jì)算的力執(zhí)行附加處理??梢赃x擇并應(yīng)用附加處理步驟,以改進(jìn)生成3D雕塑的精確度和/或改進(jìn)處理效率。例如,在一些情況下,可以給用戶提供用戶接口,用戶接口使得用戶能夠通過選擇是否施加特定類型的附加處理來微調(diào)雕塑處理。此外,用戶能夠選擇針對(duì)附加處理步驟的特定參數(shù)。
附加處理可以包括將力與噪聲級(jí)進(jìn)行比較(框720)。可以將所計(jì)算的交叉力與力量值閾值進(jìn)行比較,并且可以做出關(guān)于所計(jì)算的交叉處的力是否具有比力量值閾值更小的量值的確定。當(dāng)所計(jì)算的力矢量具有比力量值閾值更小的量值時(shí),所計(jì)算的力可以被忽略(即,不被施加以確定頂點(diǎn)力)。
圖8A示出表明較小的力對(duì)雕塑生成的影響的場(chǎng)景801。如圖8A中所示,實(shí)體810可以通過雕塑120近似。通過深度相機(jī)250獲取的深度數(shù)據(jù)可以包括噪聲數(shù)據(jù)。例如,深度相機(jī)250能夠確定具有±4噪聲級(jí)的不同深度值。深度數(shù)據(jù)可能導(dǎo)致較小力140,如果較小力140被施加至雕塑120,則該較小力140可能導(dǎo)致頂點(diǎn)之間的高張力,這將導(dǎo)致雕塑被不必要地細(xì)化(如下文進(jìn)一步解釋的)和/或失真。為了避免這種問題,可以忽略具有小量值的力。圖8B示出較小力被忽略的場(chǎng)景802。力140-A、140-B、140-C、140-D、140-E和140-G具有小于力量值閾值的量值,因此可以被忽略??梢詢H施加力140-F以使雕塑120變形。
返回圖7,力可以被按比例縮放(框725)。可以應(yīng)用全局系數(shù),以按比例縮小所計(jì)算的力??梢赃x擇全局系數(shù)來避免力在一次震蕩(例如,在第一圖像幀正在被處理時(shí))中使頂點(diǎn)移動(dòng)經(jīng)過目標(biāo)并且然后在下一次振蕩(例如,在第二圖像幀正在被處理時(shí))中使頂點(diǎn)往回移動(dòng)的振蕩。
可以調(diào)整角度(框730)。例如,雕塑生成器410可以確定所計(jì)算的力矢量與特定三角面之間的角度,可以確定角度是否小于角度閾值,并且當(dāng)角度小于所述角度閾值時(shí),可以在確定頂點(diǎn)力矢量時(shí)忽略所計(jì)算的力矢量。圖9A示出表明小角度對(duì)雕塑生成的影響的場(chǎng)景901。如圖9A中所示,實(shí)體910可以通過雕塑120被近似。在雕塑120的變形期間,可能出現(xiàn)不能準(zhǔn)確反映實(shí)體910的形狀的偽影尖峰(artifact spike)920。如圖9B中的場(chǎng)景902中所示,如果數(shù)據(jù)點(diǎn)110靠近該尖峰存在,并且如果來自通過交叉點(diǎn)135的光線的力朝向數(shù)據(jù)點(diǎn)110被施加而不是被平滑,則能夠使尖峰920更高。基于力140,將頂點(diǎn)力145-A和145-B施加到發(fā)現(xiàn)交叉點(diǎn)135的面的頂點(diǎn)。然而,頂點(diǎn)力145-A和145-B將導(dǎo)致更高的尖峰925,而不是使尖峰920平滑。這是關(guān)于雕塑120處于小角度的力140的結(jié)果。因此,為了避免偽影尖峰的加重,當(dāng)確定頂點(diǎn)力時(shí),可以忽略關(guān)于雕塑處于小角度的力。
返回圖7,可以計(jì)算頂點(diǎn)處的力(框735)。三角面的頂點(diǎn)處的力基于在指向數(shù)據(jù)點(diǎn)的光線與三角面相交的交叉點(diǎn)處確定的力。由于頂點(diǎn)處的力方向?qū)⑴c交叉點(diǎn)處的力的方向相同,僅需要確定在頂點(diǎn)處施加的標(biāo)量權(quán)重。給定頂點(diǎn)PA,并且給定力可以基于來計(jì)算頂點(diǎn)PA處的力,其中,wA對(duì)應(yīng)于標(biāo)量權(quán)重。確定wA的公式可以對(duì)應(yīng)于:
Math.2
其中,SABC對(duì)應(yīng)于具有頂點(diǎn)ABC的三角形的表面面積,其中,PA、PB和PC是三角形的頂點(diǎn),并且其中,PS是生成力的光線與三角形ABC的交叉點(diǎn)。針對(duì)其它頂點(diǎn)PB和PC的權(quán)重wB和wC可以類似地分別被計(jì)算。表面面積SABC可以使用如下公式來計(jì)算:
Math.3
其中,AB和AC分別是與頂點(diǎn)PA與PB、以及PA與PC之間的邊對(duì)應(yīng)的矢量。在針對(duì)每個(gè)力140計(jì)算各個(gè)頂點(diǎn)力之后,使用矢量加法將針對(duì)每個(gè)頂點(diǎn)的頂點(diǎn)力相加。
可以調(diào)整穩(wěn)定性(框740)。在頂點(diǎn)力的計(jì)算期間,可以計(jì)算針對(duì)每個(gè)頂點(diǎn)的穩(wěn)定性值。穩(wěn)定性值可以對(duì)應(yīng)于頂點(diǎn)在處理圖像的先前幀期間已經(jīng)發(fā)生變形的程度的度量,并且可以使用下面的公式來計(jì)算:
Math.4
其中,t對(duì)應(yīng)于張力值,其在一定程度上在0和1之間。如果頂點(diǎn)上的全部力都指向相同方向,則該值將是0并且對(duì)應(yīng)于低張力,并且如果全部力通過指向不同方向彼此抵消,則該值將是1并且對(duì)應(yīng)于高張力。
可以使用穩(wěn)定性值以跟蹤哪些頂點(diǎn)已經(jīng)發(fā)生了變形(以及實(shí)體的位置)。在雕塑變形期間,將關(guān)于特定圖像編輯雕塑的特定邊。由于實(shí)體被旋轉(zhuǎn)(或者由于深度相機(jī)250圍繞實(shí)體旋轉(zhuǎn))以從不同角度來捕獲實(shí)體的圖像,實(shí)體的其它部分將被隱藏。雕塑的與隱藏部分對(duì)應(yīng)的部分已經(jīng)使用先前圖像被成形。因此,與這些區(qū)域?qū)?yīng)的頂點(diǎn)可能已經(jīng)變形并且可能或可能不需要關(guān)于與另一個(gè)圖像相關(guān)的數(shù)據(jù)點(diǎn)變形。穩(wěn)定性值可以用于該確定。穩(wěn)定性值是當(dāng)加載下一個(gè)圖像幀時(shí)可能不被重置的累積值(與頂點(diǎn)力不同)。針對(duì)頂點(diǎn)的更高穩(wěn)定性值可以指示該頂點(diǎn)應(yīng)當(dāng)更少地移動(dòng)。因此,當(dāng)向頂點(diǎn)施加頂點(diǎn)力時(shí),可以基于穩(wěn)定性值使頂點(diǎn)力按比例縮小。由于圖像的每個(gè)幀都被處理,針對(duì)頂點(diǎn)的穩(wěn)定性值可以被計(jì)算并且被相加到先前穩(wěn)定性值,以生成累積值。
可以強(qiáng)制實(shí)現(xiàn)針對(duì)邊的最小長(zhǎng)度(框745)。例如,雕塑生成器410可以確定與頂點(diǎn)相關(guān)聯(lián)的邊比邊長(zhǎng)度閾值更短,并且可以響應(yīng)于確定與頂點(diǎn)相關(guān)聯(lián)的邊比邊長(zhǎng)度閾值更短,將與邊平行的邊緣力相加到頂點(diǎn)力矢量。如果雕塑包括太多三角形,則力的計(jì)算可能特別慢。因此,可以基于最小邊長(zhǎng)度來設(shè)置針對(duì)三角形的最小尺寸??梢酝ㄟ^將額外力相加在短邊的頂點(diǎn)上來強(qiáng)制實(shí)現(xiàn)最小邊長(zhǎng)度,其中,額外力與邊方向平行。在圖10A的場(chǎng)景1001中示出了這種情況。如圖10A中所示,場(chǎng)景1001包括具有由頂點(diǎn)125-A和125-B限定的短邊的三角形1010。頂點(diǎn)力145-A和145-B朝向彼此進(jìn)行被引導(dǎo),并且可以使得頂點(diǎn)125-A和125-B向彼此更近地移動(dòng),從而使邊縮短為小于邊長(zhǎng)度閾值。因此,額外力1012-A和1012-B可以被相加到頂點(diǎn)125-A和125-B以防止邊變得太短。
返回圖7,可以強(qiáng)制實(shí)現(xiàn)光線方向(框750)。例如,雕塑生成器410可以消除頂點(diǎn)力矢量145的與所投射的光線130不平行的分量。由于雕塑120的頂點(diǎn)125變形,并且將多個(gè)頂點(diǎn)力145相加到頂點(diǎn)125,頂點(diǎn)可以結(jié)束在多個(gè)方向上的移動(dòng)。例如,頂點(diǎn)力可以沿著一個(gè)軸彼此抵消,這導(dǎo)致頂點(diǎn)沿著另一軸移動(dòng)。因此,盡管一般來說推力和拉力可以朝向或遠(yuǎn)離深度相機(jī)250,但是力還可以停止與圖像幀平行地移動(dòng)頂點(diǎn),該移動(dòng)由于使3D模型失真而可能是不期望的。因此,可以消除頂點(diǎn)力145的與投射光線不平行的分量。在圖10B的場(chǎng)景1002中示出了這種情況。如圖10B中所示,場(chǎng)景1002包括與頂點(diǎn)力145相關(guān)聯(lián)的頂點(diǎn)125。頂點(diǎn)力145可以被分解成分力1022和1024,分力1022與產(chǎn)生頂點(diǎn)力145的投射光線130平行。分量1024可以被消除,并且僅將分力1022被施加到頂點(diǎn)125。
返回圖7,可以使角度平滑(框755)。例如,雕塑生成器410可以確定頂點(diǎn)與形成比角度閾值更小的角度的至少兩個(gè)邊相關(guān)聯(lián)并且可以通過朝向關(guān)于頂點(diǎn)的至少兩個(gè)邊的遠(yuǎn)端之間的中點(diǎn)施加力來使頂點(diǎn)平滑??梢允沟袼?20的角度平滑,以便去除不期望的峰值。在圖10C的場(chǎng)景1003中從二維示出了這種情況。如圖10C中所示,場(chǎng)景1003可以包括具有峰值1030的雕塑120,該雕塑120具有頂點(diǎn)PA。為了減小峰值1030,可以使用如下公式來計(jì)算角度α=P0PAP1:
Math.5
然后,可以確定P0P1的中點(diǎn)PM,并且可以基于矢量PAPM來計(jì)算力1032,并且該力1032可以利用角度α和全局系數(shù)按比例縮放。可以基于期望平滑的程度來選擇全局系數(shù),并且全局系數(shù)可以例如由用戶來選擇??梢允褂糜?jì)算出的角度α按比例縮放所施加的力(例如,更平的峰值可能要求更小的力),并且可以將計(jì)算出的角度α與角度閾值進(jìn)行比較。在沒有閾值角度的情況下,不被直接施加頂點(diǎn)力的頂點(diǎn)可以開始朝向雕塑的中心移動(dòng),從而使雕塑的隱藏部分收縮。
在3D中,峰值可以更復(fù)雜,這是因?yàn)轫旤c(diǎn)可以具有很多鄰居。如圖11A中所示,場(chǎng)景1101包括具有峰值1110的雕塑120,其中,頂點(diǎn)PA具有四個(gè)鄰居。平滑力1120可以被引導(dǎo)通過的針對(duì)鄰居的中心點(diǎn)可以被計(jì)算為圖11B的場(chǎng)景1102中所示的歸一化邊矢量1130-A、1130-B、1130-C和1130-D的總和。然后可以如下使用歸一化矢量的總和來計(jì)算角度α:
Math.6
可以采用兩個(gè)不同閾值:針對(duì)關(guān)于當(dāng)前幀被操作的頂點(diǎn)的第一閾值和針對(duì)關(guān)于當(dāng)前幀不被操作的不活動(dòng)頂點(diǎn)的第二閾值。在一些實(shí)現(xiàn)中,不活動(dòng)頂點(diǎn)可以不被平滑。在其它實(shí)現(xiàn)中,先前已經(jīng)變形的不活動(dòng)頂點(diǎn)被微平滑(mote smoothed)。
返回圖7,可以施加頂點(diǎn)力(框760)。例如,雕塑生成器410可以將針對(duì)特定頂點(diǎn)的全部頂點(diǎn)力相加,并且可以相加已經(jīng)針對(duì)特定頂點(diǎn)生成的任何附加力,以便確定要施加到特定頂點(diǎn)的頂點(diǎn)力??梢詫⑷宽旤c(diǎn)力的總和除以力的數(shù)量,以確定針對(duì)特定頂點(diǎn)的平均頂點(diǎn)力,并且可以將結(jié)果除以針對(duì)特定頂點(diǎn)的所確定的穩(wěn)定性系數(shù)。然后可以基于施加的總頂點(diǎn)力在空間上使特定頂點(diǎn)平移,以便使雕塑變形。該處理可以針對(duì)每個(gè)頂點(diǎn)被執(zhí)行,可以針對(duì)關(guān)于來自所捕獲圖像的特定幀來確定針對(duì)每個(gè)頂點(diǎn)的頂點(diǎn)力。
然后可以對(duì)雕塑執(zhí)行附加處理。可以細(xì)化雕塑的三角形(框765)。例如,雕塑生成器410可以確定針對(duì)頂點(diǎn)的張力值是否高于張力閾值,并且當(dāng)張力值高于張力閾值時(shí),可以將與頂點(diǎn)相關(guān)聯(lián)的特定三角面細(xì)化成兩個(gè)更小的三角面。初始雕塑可以以相對(duì)小數(shù)量的三角面(例如,作為具有20個(gè)三角形的二十面體)開始。針對(duì)其生成雕塑的實(shí)體的一些區(qū)域可能要求更高的細(xì)節(jié),其可以由更大數(shù)量的三角形表示。檢測(cè)是否需要更高細(xì)節(jié)的一種方式是通過使用針對(duì)頂點(diǎn)計(jì)算的張力值。如果張力值高于張力閾值,則與頂點(diǎn)相關(guān)聯(lián)的三角形可能需要被細(xì)化成更小的三角形,以便獲取更高級(jí)別的細(xì)節(jié)。
圖11C中的場(chǎng)景1103示出細(xì)化過程。假設(shè)雕塑120包括具有頂點(diǎn)P0、P1和P2的三角形??梢宰R(shí)別出最長(zhǎng)邊,該最長(zhǎng)邊可以對(duì)應(yīng)于邊P0P1,并且可以識(shí)別出最長(zhǎng)邊的中點(diǎn)PM。三角形P0P1P2可以被替換成兩個(gè)更小的三角形P0PMP2和PMP1P2。與三角形P0P1P2共享邊P1P0的三角形可以被識(shí)別為三角形P0PXP1并且可以被替換成兩個(gè)更小的三角形P0PXPM和P1PXPM。
此外,如果三角形的最長(zhǎng)邊比特定邊長(zhǎng)度閾值更長(zhǎng),則三角形可以被細(xì)化。例如,雕塑生成器410可以確定特定三角面與比特定邊長(zhǎng)度閾值更長(zhǎng)的邊相關(guān)聯(lián),并且可以將特定三角面細(xì)化成兩個(gè)更小的三角面。
返回圖7,可以簡(jiǎn)化網(wǎng)格(框770)。例如,雕塑生成器410可以確定與特定三角面相關(guān)聯(lián)的邊比特定邊長(zhǎng)度閾值更短,并且可以響應(yīng)于確定該邊比特定邊長(zhǎng)度閾值更短,從網(wǎng)格多邊形去除該邊。雕塑120的網(wǎng)格多邊形的三角形的細(xì)化可能產(chǎn)生被任意擺布的很多小三角形,這可以導(dǎo)致諸如失真三角形的偽影、網(wǎng)格多邊形的折疊截面、或者甚至網(wǎng)格多邊形被翻轉(zhuǎn)的部分。為了避免這些問題,可以應(yīng)用多種技術(shù)來簡(jiǎn)化雕塑120的網(wǎng)格。可以通過去除短邊來消除小三角形。在圖12A的場(chǎng)景1201中示出從雕塑120去除邊1210的這種情況??梢酝ㄟ^將組成邊1210的端點(diǎn)的頂點(diǎn)合并成一個(gè)頂點(diǎn)去除邊1210。
在一些情況下,邊去除可能產(chǎn)生復(fù)雜化。例如,如圖12B的場(chǎng)景1202中所示,邊1220的去除可以導(dǎo)致三角形1230和1240的不期望去除。因此,在將去除邊并使兩個(gè)頂點(diǎn)合并之前,需要執(zhí)行檢查以確保兩個(gè)頂點(diǎn)具有正好兩個(gè)共同鄰居頂點(diǎn)而不是更多。在一些情況下,需要重新配置三角形,而不是去除邊。例如,如圖12C的場(chǎng)景1203中所示,比特定邊長(zhǎng)度閾值更長(zhǎng)的長(zhǎng)邊1250可以用較短邊1260來代替。
簡(jiǎn)化網(wǎng)格的另一種技術(shù)是去除邊之間的小角度。在圖13A的場(chǎng)景1301中示出雕塑120包括三角形1310的這種情況。三角形1310可以具有不比邊長(zhǎng)度閾值更短的邊,因此基于短邊標(biāo)準(zhǔn)不能被去除。然而,三角形1310可以具有小角度。因此,對(duì)于每個(gè)三角形,可以做出關(guān)于三角形的最小角度是否小于三角形角度閾值的確定。如果三角形的最小角度低于三角形角度閾值,則可以從網(wǎng)格多邊形去除與最小角度相對(duì)的邊。另選地,三角形可以如圖12C中所示那樣重新成形。
此外,小3D角度可能出現(xiàn)在不必須形成三角形的角度的網(wǎng)格中。在圖13B和圖13C中示出了這種情況,其示出包括小3D角度1320的雕塑120的視圖1302和1303。如果兩條邊之間的角度小于3D角度閾值,則檢測(cè)到小3D角度。形成小3D角度的頂點(diǎn)可以與其鄰居頂點(diǎn)中的一個(gè)合并,以去除小3D角度。
在一些實(shí)現(xiàn)中,雕塑生成器410可以采用GPU 360來執(zhí)行光線投射處理和/或變形處理。由于光線不依賴于彼此,光線能夠平行地被投射,因此雕塑生成器410可以利用經(jīng)由GPU 360可獲得的并行處理。GPU 360可以執(zhí)行以下中的一個(gè)或更多個(gè):確定針對(duì)顏色圖的UV坐標(biāo)、光線的投射、和/或執(zhí)行頂點(diǎn)后處理(例如,穩(wěn)定性值計(jì)算、角度平滑等)。由于細(xì)化一個(gè)三角形可能影響另一個(gè)三角形,因此可能需要按順序執(zhí)行細(xì)化處理,并且可以或可以不通過GPU 360執(zhí)行。
如下可以采用GPU 360。可以通過向每個(gè)三角形分配唯一顏色并且使陰影、圖形保真、照明和霧無效來將雕塑120的三角形渲染成第一幀緩沖區(qū),以確保每個(gè)三角形都被渲染成具有特定唯一顏色。三角形的頂點(diǎn)可以利用紅色、綠色和藍(lán)色被著色成第二幀緩沖區(qū)。對(duì)于來自相機(jī)圖像的每個(gè)點(diǎn)PXY,可以從兩個(gè)幀緩沖區(qū)在相同坐標(biāo)處讀取顏色值DXY和TXY。值DXY可以識(shí)別通過光線相交的三角形,這是由于每個(gè)三角形被指定有唯一顏色。例如,如果GPU 360支持每像素16位顏色深度,則GPU 360可以被用來處理多達(dá)65535個(gè)三角形。使用RGB顏色通道中的值作為針對(duì)三角形的頂點(diǎn)坐標(biāo)的權(quán)重,值TXY可以被用來計(jì)算光線與三角形相交的位置。此外,值TXY還可以被用來作為用于計(jì)算三角形的頂點(diǎn)處的力的權(quán)重。使用利用GPU 360的這種技術(shù)可以降低尋找針對(duì)從O(N)到O(1)的光線的相交三角形的復(fù)雜性,其中,N對(duì)應(yīng)于三角形的數(shù)量。
在一些實(shí)現(xiàn)中,雕塑生成器410可以被配置為在雕塑生成處理期間與用戶交互。例如,可以在雕塑生成處理期間將雕塑顯示在觸摸屏220上,并且用戶可以看到如何從初始雕塑生成該雕塑。使用針對(duì)每個(gè)頂點(diǎn)計(jì)算的穩(wěn)定性值,不穩(wěn)定的頂點(diǎn)可以用不同顏色著色,這向用戶表明雕塑的哪些部分需要更多關(guān)注。用戶可以被引導(dǎo)或者在不被引導(dǎo)的情況下從與尚未實(shí)現(xiàn)足夠穩(wěn)定性的頂點(diǎn)相關(guān)聯(lián)的角度捕獲實(shí)體的附加圖像。
在一些實(shí)現(xiàn)中,用戶能夠動(dòng)態(tài)地調(diào)整雕塑的分辨率。例如,用戶可以以低分辨率開始,并且如果用戶期望更高細(xì)節(jié),則可以選擇增加針對(duì)雕塑的特定區(qū)域的分辨率。例如,用戶可以利用深度相機(jī)250更近地聚焦,并且可以捕獲包括針對(duì)實(shí)體的特定區(qū)域的更多詳細(xì)深度信息的圖像。作為一個(gè)示例,如果用戶正在掃描人的頭,則該用戶可以針對(duì)頭的后部選擇較低分辨率并且針對(duì)臉可以選擇較高分辨率。此外,在一些實(shí)現(xiàn)中,雕塑生成器410可以被配置為使得用戶能夠選擇花費(fèi)多少時(shí)間處理特定幀。因此,用戶可以選擇執(zhí)行針對(duì)特定幀的光線投射處理的多次迭代。
在一些實(shí)現(xiàn)中,雕塑生成器410可以被配置為生成針對(duì)具有孔的實(shí)體(例如,咖啡杯等)的3D雕塑。為了生成針對(duì)具有孔的實(shí)體的3D雕塑,可以使用兩個(gè)不同張力閾值:tt和tc。然后針對(duì)三角形的頂點(diǎn)的平均張力t,可以應(yīng)用以下規(guī)則:
1)如果t<tt,則施加所計(jì)算的力,但是不細(xì)化三角形;
2)如果tt小于或等于t且t<tc,則細(xì)化三角形;并且
3)如果tc小于或等于t,則切掉三角形以將三角形轉(zhuǎn)換成孔。
另外地或另選地,在光線投射處理期間可以檢測(cè)并且不同地處理與實(shí)體中的孔相關(guān)聯(lián)的背景像素。另外地或另選地,可以分析雕塑以檢測(cè)雕塑與其自身相交的區(qū)域,并且可以在相交區(qū)域處創(chuàng)建孔。
圖14A和圖14B是根據(jù)本文中所描述的實(shí)現(xiàn)的示例性物體和相應(yīng)3D雕塑的視圖。如圖14A中所示,實(shí)體1401可以使用深度相機(jī)250被拍攝以從各種角度捕獲一系列圖像。根據(jù)本文中公開的實(shí)現(xiàn),可以使用所捕獲的圖像來生成實(shí)體的3D雕塑1402。所生成的3D雕塑可以對(duì)應(yīng)于基于使用深度相機(jī)250獲得的關(guān)于實(shí)體1401的深度信息使用光線投射處理已經(jīng)變形的網(wǎng)格多邊形。
在前述說明書中,已經(jīng)參照附圖描述了各種優(yōu)選實(shí)施方式。然而,明顯的是,可以對(duì)其進(jìn)行各種修改和改變,并且可以實(shí)現(xiàn)附加實(shí)施方式,而不脫離所附權(quán)利要求中闡述的本發(fā)明的更寬的范圍。因此說明書和附圖被認(rèn)為是例示性的而非限制性的。
例如,盡管已經(jīng)關(guān)于圖5至圖7描述了一系列框圖,但是在其它實(shí)現(xiàn)中可以修改這些框圖的順序。而且,獨(dú)立框可以并行地被執(zhí)行。
作為另一個(gè)示例,盡管已經(jīng)關(guān)于使用深度相機(jī)獲取的圖像描述了在本文中描述的實(shí)現(xiàn),但是可以使用其它類型的相機(jī)來捕獲具有深度信息的圖像,以用于生成3D網(wǎng)格雕塑。例如,在其它實(shí)現(xiàn)中,可以使用立體相機(jī)、范圍相機(jī)(例如,Kinect相機(jī))和/或獲得深度信息的另一種類型的相機(jī)。
明顯的是,如上所述的系統(tǒng)和/或方法在附圖中示出的實(shí)現(xiàn)中可以以很多不同形式的軟件、固件和硬件來實(shí)現(xiàn)。用來實(shí)現(xiàn)這些系統(tǒng)和方法的實(shí)際軟件代碼或?qū)iT控制硬件不限制實(shí)施方式。因此,系統(tǒng)和方法的操作和行為在不參照特定軟件代碼的情況下被描述,要理解的是,軟件和控制硬件可以被設(shè)計(jì)成實(shí)現(xiàn)基于本文中的描述的系統(tǒng)和方法。
此外,上面描述的特定部分可以被實(shí)現(xiàn)為執(zhí)行一個(gè)或更多個(gè)功能的部件。如本文中使用的部件可以包括諸如處理器、ASIC或FPGA的硬件、或者硬件和軟件的組合(例如,執(zhí)行軟件的處理器)。
應(yīng)強(qiáng)調(diào)的是,術(shù)語“包括”在本說明書中被使用時(shí)用于指定所述特征、整數(shù)、步驟或組件的存在,但是不排除一個(gè)或更多個(gè)其它特征、整數(shù)、步驟、組件或其組的存在或添加。
如本文中使用的術(shù)語“邏輯”可以指被配置為執(zhí)行存儲(chǔ)在一個(gè)或更多個(gè)存儲(chǔ)裝置中的指令的一個(gè)或更多個(gè)處理器的組合,可以指硬接線電路,和/或可以指其組合。此外,邏輯可以被包括在單件裝置中或者可以遍及多個(gè)(可能是遠(yuǎn)程的)裝置分布。
為了描述和限定本發(fā)明的目的,要額外注意的是,術(shù)語“大致地”在本文中被用來表示可以歸因于任何定量比較、值、測(cè)量或其它表示的固有不確定性程度。術(shù)語“大致地”在本文中還被用來表示在不導(dǎo)致所論述的主題的基本功能的改變的情況下,量化表達(dá)從所述參考改變的程度。
本申請(qǐng)中使用的元件、動(dòng)作或指令不應(yīng)被解釋為對(duì)于實(shí)施方式是關(guān)鍵的或必要的,除非另外明確地描述。而且,如在此使用的,冠詞“一個(gè)”旨在包括一項(xiàng)或更多項(xiàng)。而且,措詞“基于”旨在指“至少部分地基于”,除非另外明確闡述。