一種數(shù)據(jù)處理方法和設(shè)備的制造方法
【專利摘要】本發(fā)明公開了一種數(shù)據(jù)處理方法和設(shè)備,通過對(duì)三維模型數(shù)據(jù)庫中的模型按照類別進(jìn)行劃分,并將每一類別下的模型按照預(yù)設(shè)規(guī)則拆分為多個(gè)組件,同時(shí)對(duì)組件進(jìn)行命名;對(duì)名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi)的組件劃分為對(duì)應(yīng)名稱的近似組件集;通過分析近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同部分的相同數(shù)據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù);具體的,將的提取差異的數(shù)據(jù)變換參數(shù)進(jìn)行存儲(chǔ),另外剔除相同的數(shù)據(jù)部分,這樣就減少存儲(chǔ)大量模型的存儲(chǔ)空間。此外,由于網(wǎng)絡(luò)加載差異化變換參數(shù)遠(yuǎn)小于本身的模型數(shù)據(jù)信息所占用的帶寬,因此提升了新三維家具模型加載速度。
【專利說明】
-種數(shù)據(jù)處理方法和設(shè)備
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及到一種數(shù)據(jù)處理方法,特別還設(shè)及到一種數(shù)據(jù)處理設(shè)備。
【背景技術(shù)】
[0002] 現(xiàn)有家具S維模型,均是通過通過3DMAX、MYA等S維建模軟件構(gòu)造的S維模型數(shù) 據(jù),運(yùn)些=維模型數(shù)據(jù)具有唯一性的特點(diǎn),即每一個(gè)家具=維模型與現(xiàn)實(shí)當(dāng)中的實(shí)體模型 是一一對(duì)應(yīng)的。
[0003] 而從數(shù)據(jù)角度分析,每一款家具對(duì)應(yīng)的=維模型都具有本身的網(wǎng)格信息、紋理信 息、材質(zhì)信息,那么儲(chǔ)存每一個(gè)家具的=維模型數(shù)據(jù)都需要為運(yùn)些=維模型數(shù)據(jù)獨(dú)立地在 磁盤上分配相應(yīng)的存儲(chǔ)空間,且,每一款家具對(duì)應(yīng)的=維模型數(shù)據(jù)量都是很大的,運(yùn)樣造成 一些系統(tǒng)在存儲(chǔ)大量模型上存在極大的局限性。
[0004] 此外,在=維展示角度來看,=維模型的加載同樣需要獨(dú)立的為每個(gè)=維模型分 配內(nèi)存,運(yùn)造成了家具的=維模型進(jìn)行大量實(shí)時(shí)=維擅染的主要性能瓶頸。
[0005] 由W上可知,對(duì)于W服務(wù)器和客戶端為基礎(chǔ)的系統(tǒng)來說,從服務(wù)器獲得每個(gè)家具 的=維模型時(shí),都需要下載一個(gè)獨(dú)立的=維模型數(shù)據(jù),而該=維模型數(shù)據(jù)的數(shù)據(jù)量是很大 的,運(yùn)無疑對(duì)于帶寬有限的移動(dòng)設(shè)備來說是一項(xiàng)巨大的負(fù)擔(dān)。
[0006] 由此可知,在現(xiàn)有技術(shù)中,由于家具的=維模型數(shù)據(jù)具有唯一性的特點(diǎn),且由于= 維模型包含的信息多,導(dǎo)致數(shù)據(jù)量大的特點(diǎn),從而使得大量的模型在進(jìn)行存儲(chǔ)時(shí),需要大量 的磁盤空間,增加了用戶移動(dòng)設(shè)備的開支,同時(shí)使得在對(duì)=維模型進(jìn)行加載時(shí),需要下載獨(dú) 立的=維數(shù)據(jù)模型,導(dǎo)致加載速度很慢,對(duì)于帶寬有限的移動(dòng)設(shè)備是很大負(fù)擔(dān)的缺陷,最終 導(dǎo)致在應(yīng)用時(shí)具有很大的局限性。
【發(fā)明內(nèi)容】
[0007] 針對(duì)現(xiàn)有技術(shù)中的缺陷,本申請(qǐng)?zhí)岢隽艘环N數(shù)據(jù)處理方法和設(shè)備,用W解決現(xiàn)有 技術(shù)中需要大量存儲(chǔ)空間,加載速度很慢,給移動(dòng)設(shè)備很大負(fù)擔(dān)的缺陷。
[000引為此,本發(fā)明實(shí)施例提出了一種數(shù)據(jù)處理方法,包括:對(duì)=維模型數(shù)據(jù)庫中的模型 按照類別進(jìn)行劃分,并將每一類別下的模型按照預(yù)設(shè)規(guī)則拆分為多個(gè)組件,同時(shí)對(duì)所述組 件進(jìn)行命名;
[0009] 對(duì)名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi)的組件劃分為對(duì)應(yīng) 名稱的近似組件集;
[0010] 通過分析所述近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同部分的相同 數(shù)據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù)。
[0011] 優(yōu)選的,所述對(duì)名稱相同的組件進(jìn)行相似度分析,具體包括:
[0012] 獲取名稱相同的組件的模型數(shù)據(jù);
[0013] 基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同的各 組件之間的相似度。
[0014] 優(yōu)選的,所述形狀特征包括:面積分布特征和締度方向平均半徑;
[0015] 所述基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同 的各組件之間的相似度,具體包括:
[0016] 基于所述模型數(shù)據(jù)采用同屯、球切分模型的方式,獲取名稱相同的組件的面積分布 特征;
[0017] 基于所述模型數(shù)據(jù)采用極坐標(biāo)的方式,獲取名稱相同的組件的締度方向平均半 徑;
[0018] 通過分步歸類的方式綜合面積分布特征與締度方向平均半徑確定名稱相同的各 組件之間的相似度。
[0019] 優(yōu)選的,通過分析近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同部分的 相同數(shù)據(jù),保存差異數(shù)據(jù)并刪除相同數(shù)據(jù),具體包括:
[0020] 從所述近似組件集中任選一個(gè)組件作為標(biāo)準(zhǔn)組件;
[0021] 利用所述標(biāo)準(zhǔn)組件與所述近似組件集中其他組件進(jìn)行比較,確定其他組件與標(biāo)準(zhǔn) 組件存在差異的差異數(shù)據(jù)W及相同部分的相同數(shù)據(jù);
[0022] 保存差異數(shù)據(jù),同時(shí)刪除相同數(shù)據(jù)。
[0023] 優(yōu)選的,該方法還包括:
[0024] 當(dāng)需要對(duì)=維模型進(jìn)行加載時(shí),確定待加載的=維模型的類型W及待加載的=維 模型在所述類型下對(duì)應(yīng)的組件名稱;
[0025] 提取相同名稱的標(biāo)準(zhǔn)組件W及差異數(shù)據(jù);
[0026] 基于所述標(biāo)準(zhǔn)組件W及差異數(shù)據(jù)轉(zhuǎn)換為待加載的=維模型的組件;
[0027] 通過融合算法將轉(zhuǎn)換后的組件進(jìn)行融合,W完成對(duì)=維模型的加載。
[0028] 本發(fā)明實(shí)施例還提出了一種數(shù)據(jù)處理設(shè)備,包括:
[0029] 劃分模塊,用于對(duì)=維模型數(shù)據(jù)庫中的模型按照類別進(jìn)行劃分,并將每一類別下 的模型按照預(yù)設(shè)規(guī)則拆分為多個(gè)組件,同時(shí)對(duì)所述組件進(jìn)行命名;
[0030] 分析模塊,用于對(duì)名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi)的 組件劃分為對(duì)應(yīng)名稱的近似組件集;
[0031] 處理模塊,用于通過分析所述近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與 相同部分的相同數(shù)據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù)。
[0032] 優(yōu)選的,所述分析模塊對(duì)名稱相同的組件進(jìn)行相似度分析,具體包括:
[0033] 獲取名稱相同的組件的模型數(shù)據(jù);
[0034] 基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同的各 組件之間的相似度。
[0035] 優(yōu)選的,所述形狀特征包括:面積分布特征和締度方向平均半徑;
[0036] 所述分析模炔基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定 名稱相同的各組件之間的相似度,具體包括:
[0037] 基于所述模型數(shù)據(jù)采用同屯、球切分模型的方式,獲取名稱相同的組件的面積分布 特征;
[0038] 基于所述模型數(shù)據(jù)采用極坐標(biāo)的方式,獲取名稱相同的組件的締度方向平均半 徑;
[0039] 通過分步歸類的方式綜合面積分布特征與締度方向平均半徑確定名稱相同的各 組件之間的相似度。
[0040] 優(yōu)選的,所述處理模塊,具體用于:
[0041 ] 從所述近似組件集中任選一個(gè)組件作為標(biāo)準(zhǔn)組件;
[0042] 利用所述標(biāo)準(zhǔn)組件與所述近似組件集中其他組件進(jìn)行比較,確定其他組件與標(biāo)準(zhǔn) 組件存在差異的差異數(shù)據(jù)W及相同部分的相同數(shù)據(jù);
[0043] 保存差異數(shù)據(jù),同時(shí)刪除相同數(shù)據(jù)。
[0044] 優(yōu)選的,該數(shù)據(jù)處理設(shè)備還包括:
[0045] 加載模塊,用于:當(dāng)需要對(duì)=維模型進(jìn)行加載時(shí),確定待加載的=維模型的類型W 及待加載的=維模型在所述類型下對(duì)應(yīng)的組件名稱;
[0046] 提取相同名稱的標(biāo)準(zhǔn)組件W及差異數(shù)據(jù);
[0047] 基于所述標(biāo)準(zhǔn)組件W及差異數(shù)據(jù)轉(zhuǎn)換為待加載的=維模型的組件;
[0048] 通過融合算法將轉(zhuǎn)換后的組件進(jìn)行融合,W完成對(duì)=維模型的加載。
[0049] 與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例,通過對(duì)=維模型數(shù)據(jù)庫中的模型按照類別進(jìn)行 劃分,并將每一類別下的模型按照預(yù)設(shè)規(guī)則拆分為多個(gè)組件,同時(shí)對(duì)所述組件進(jìn)行命名;對(duì) 名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi)的組件劃分為對(duì)應(yīng)名稱的近似 組件集;通過分析所述近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同部分的相同 數(shù)據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù);具體的,將的提取差異的數(shù)據(jù)變換參數(shù)進(jìn)行存儲(chǔ),另 外剔除相同的數(shù)據(jù)部分,運(yùn)樣就減少存儲(chǔ)大量模型的存儲(chǔ)空間。此外,由于網(wǎng)絡(luò)加載差異化 變換參數(shù)遠(yuǎn)小于本身的模型數(shù)據(jù)信息所占用的帶寬,因此提升了新=維家具模型加載速 度。
【附圖說明】
[0050] 圖1為本發(fā)明實(shí)施例還提出了一種數(shù)據(jù)處理方法的流程示意圖;
[0051] 圖2為本發(fā)明實(shí)施例提出的一種確定面積分布特征示意圖;
[0052] 圖3為本發(fā)明實(shí)施例提出的一種確定締度方向平均半徑的示意圖;
[0053] 圖4為本發(fā)明實(shí)施例提出的一種比較組件之間差異的示意圖;
[0054] 圖5為本發(fā)明實(shí)施例提出的一種數(shù)據(jù)處理設(shè)備的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0055] 針對(duì)現(xiàn)有技術(shù)中存在的需要大量存儲(chǔ)空間,加載速度很慢,給移動(dòng)設(shè)備很大負(fù)擔(dān) 的缺陷,本發(fā)明提出了一種數(shù)據(jù)處理方法和設(shè)備,用W解決現(xiàn)有技術(shù)中的問題,減少了數(shù)據(jù) 量,進(jìn)而減少了數(shù)據(jù)所需的存儲(chǔ)空間,W及提高了加載速度。
[0056] 為此,本發(fā)明提出了 W下幾個(gè)實(shí)施例:
[0化7]實(shí)施例1
[005引實(shí)施例1提出了一種數(shù)據(jù)處理方法,如圖1所示,包括W下步驟:
[0059] 步驟101、對(duì)S維模型數(shù)據(jù)庫中的模型按照類別進(jìn)行劃分,并將每一類別下的模型 按照預(yù)設(shè)規(guī)則拆分為多個(gè)組件,同時(shí)對(duì)組件進(jìn)行命名。
[0060] 具體的,=維模型數(shù)據(jù)庫中存儲(chǔ)的都是同一種類實(shí)體的=維模型,其中的種類,可 W分為家具,電器等等,在此W家具的=維模型為例來進(jìn)行說明,對(duì)=維模型數(shù)據(jù)庫中的模 型按照類別進(jìn)行劃分,例如可W分為床、餐桌,凳子等等。W此可W建立索引,從而實(shí)現(xiàn)快速 查找。
[0061] 在基于類別進(jìn)行劃分后,還要進(jìn)行拆分,在此W-個(gè)具體的實(shí)施例來進(jìn)行說明:例 如床可W拆分成的組件包括:床頭、床頭裝飾、床墊、床尾、床尾裝飾、四角裝飾柱、護(hù)欄、側(cè) 面板、床板等。具體的命名可W基于生活中的習(xí)慣叫法來進(jìn)行命名,或者科學(xué)上采用的專業(yè) 名稱等等。
[0062] 步驟102、對(duì)名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi)的組件劃 分為對(duì)應(yīng)名稱的近似組件集。
[0063] 對(duì)名稱相同的組件進(jìn)行相似度分析,具體包括:
[0064] 獲取名稱相同的組件的模型數(shù)據(jù);
[0065] 基于模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同的各組件 之間的相似度。
[0066] 而其中,形狀特征包括:面積分布特征和締度方向平均半徑;
[0067] 具體的,基于模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同 的各組件之間的相似度,包括:
[0068] 基于模型數(shù)據(jù)采用同屯、球切分模型的方式,獲取名稱相同的組件的面積分布特 征;
[0069] 基于模型數(shù)據(jù)采用極坐標(biāo)的方式,獲取名稱相同的組件的締度方向平均半徑;
[0070] 通過分步歸類的方式綜合面積分布特征與締度方向平均半徑確定名稱相同的各 組件之間的相似度。
[0071] 在此W-個(gè)具體的實(shí)施例來進(jìn)行說明,例如=維模型為家具,分類后實(shí)體為床,分 別命名為床1,床2,床3,- ??,而在進(jìn)行了組件拆分后,對(duì)應(yīng)的相同名稱的組件為床板,其 命名可W對(duì)應(yīng)床,分別命名為床板1,床板2,床板3 - ? ?,然后對(duì)各床板組件進(jìn)行相似度分 析,具體的,W同屯、球切分模型的方式,獲取各床板的面積分布特征,還要將對(duì)應(yīng)的床板的 3D模型放入放到極坐標(biāo)系中,然后按締度方向進(jìn)行切分,計(jì)算每個(gè)切分部分所含點(diǎn)到坐標(biāo) 原點(diǎn)的平均半徑距離作為3D模型特征向量,并基于3D模型特征向量來進(jìn)行處理,得到締度 方向平均半徑,當(dāng)然,運(yùn)兩個(gè)步驟是不分先后的,可W同時(shí)進(jìn)行,也可W先后進(jìn)行。在獲取了 面積分布特征W及締度方向平均半徑之后,利用分步歸類的方式綜合運(yùn)兩個(gè)特征最終得到 名稱相同的各組件之間的相似度。
[0072] 而在獲取了名稱相同的各組件之間的相似度之后,將相似度在預(yù)設(shè)范圍內(nèi)的組件 劃分為對(duì)應(yīng)名稱的近似組件集,仍W上述為例來進(jìn)行說明,例如預(yù)設(shè)范圍為從0.8到1(在 此,數(shù)值越大,表示相似程度越高,按照不同的運(yùn)算實(shí)際情況,也可W使得數(shù)值越大,表示相 似程度越低),按照運(yùn)預(yù)設(shè)范圍進(jìn)行劃分,使得床板1,床板2,床板4,床板7,床板8作為一個(gè) 近視組件集。
[0073] 步驟103、通過分析近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同部分的 相同數(shù)據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù)。
[0074] 具體的,通過分析近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同部分的 相同數(shù)據(jù),保存差異數(shù)據(jù)并刪除相同數(shù)據(jù),包括:
[0075] 從近似組件集中任選一個(gè)組件作為標(biāo)準(zhǔn)組件;
[0076] 利用標(biāo)準(zhǔn)組件與近似組件集中其他組件進(jìn)行比較,確定其他組件與標(biāo)準(zhǔn)組件存在 差異的差異數(shù)據(jù)W及相同部分的相同數(shù)據(jù);
[0077] 保存差異數(shù)據(jù),同時(shí)刪除相同數(shù)據(jù)。
[0078] 具體的,仍W上述例子來進(jìn)行說明,床板1,床板2,床板4,床板7,床板8作為一個(gè)近 視組件集,其中可W任選一個(gè)組件作為標(biāo)準(zhǔn)組件,例如可W選擇床板7作為標(biāo)準(zhǔn)組件,并通 過其他的4個(gè)組件(即床板1,床板2,床板4,床板8)與床板7,分別進(jìn)行比較,在此W床板2與 床板7的比較為例來進(jìn)行說明,床板2與床板7存在共同的部分,例如為數(shù)據(jù)1,而床板2與床 板7的差異部分為數(shù)據(jù)2,在此就可W保留數(shù)據(jù)2,刪除數(shù)據(jù)1。后續(xù)可W利用數(shù)據(jù)2與床板7將 床板2恢復(fù)。
[00巧]具體的,該方法還包括:
[0080] 當(dāng)需要對(duì)=維模型進(jìn)行加載時(shí),確定待加載的=維模型的類型W及待加載的=維 模型在類型下對(duì)應(yīng)的組件名稱;
[0081] 提取相同名稱的標(biāo)準(zhǔn)組件W及差異數(shù)據(jù);
[0082] 基于標(biāo)準(zhǔn)組件W及差異數(shù)據(jù)轉(zhuǎn)換為待加載的=維模型的組件;
[0083] 通過融合算法將轉(zhuǎn)換后的組件進(jìn)行融合,W完成對(duì)=維模型的加載。
[0084] 實(shí)施例2
[0085] 為了對(duì)本申請(qǐng)進(jìn)行進(jìn)一步地說明,本發(fā)明還提出了一種具體應(yīng)用場(chǎng)景下的實(shí)施例 2。
[0086] 步驟1、首先建立個(gè)家具=維模型的大數(shù)據(jù)庫。
[0087] 步驟2、將家具模型按照家具類別進(jìn)行分類,如:床、餐桌等等,形成按照家具類別 分類,可W進(jìn)行快速索引的家具=維模型的數(shù)據(jù)庫。
[0088] 步驟3、將每一類別的家具按照相應(yīng)的規(guī)則進(jìn)行組件化拆分,如:床拆分為床頭、床 頭裝飾、床墊、床尾、床尾裝飾、四角裝飾柱、護(hù)欄、側(cè)面板、床板等,并分析同一類別不同家 具的相同組件的網(wǎng)格信息。
[0089] 其中,具體的=維模型網(wǎng)格信息是通過提取模型網(wǎng)格的不同的形狀特征來進(jìn)行分 析的,而具體的形狀特征包括:面積分布特征和締度方向平均半徑,因此是通過結(jié)合使用運(yùn) 2個(gè)特征進(jìn)行歸類分析的。
[0090] 具體的,針對(duì)面積分布特征,是采用同屯、球切分模型的方式,計(jì)算每個(gè)切分部分的 表面面積所占比例作為面積分布特征,具體的過程如圖2所示,過程如下:
[0091] (1)、使用表面積加權(quán)平均法計(jì)算3D模型的中屯、,然后將模型的坐標(biāo)原點(diǎn)平移到中 心點(diǎn)。
[0092] (2)、W模型的中屯、點(diǎn)為球屯、,使用10個(gè)不同半徑的同屯、球等距離切分模型。一個(gè) 具體的實(shí)施例。
[0093] (3)、計(jì)算每個(gè)切分部分所包含S角面片的面積之和,然后除W3D模型的總表面 積,構(gòu)成具有10個(gè)分量的特征向量[Ai,A2,A3,? ',Aio]作為面積分布特征。
[0094] 另一個(gè)特征為締度方向平均半徑,具體的,締度方向平均半徑特征提取是將3D模 型放到極坐標(biāo)系中,然后按締度方向進(jìn)行切分,計(jì)算每個(gè)切分部分所含點(diǎn)到坐標(biāo)原點(diǎn)的平 均半徑距離作為3D模型特征向量。其具體的過程如圖3所示,具體有如下過程:
[OOM] (I)、首先使用PCA方法對(duì)3D模型進(jìn)行規(guī)范化預(yù)處理,使其滿足平移不變,縮放不 變,旋轉(zhuǎn)不變,對(duì)稱不變。
[0096] (2)、對(duì)3D模型的表面進(jìn)行均勻采樣,將S角面片模型轉(zhuǎn)換為點(diǎn)云模型。
[0097] (3)、把點(diǎn)云模型變換到極坐標(biāo)系中,使用極坐標(biāo)表示每個(gè)點(diǎn)。按締度方向(角方 向)等角度把點(diǎn)云模型切分成M等份,一般M=16,每部分的角度大小為0=VM。
[0098] (4)計(jì)算每部分的點(diǎn)到極點(diǎn)的平均半徑,然后將每部分的平均半徑除W點(diǎn)云模型 所有點(diǎn)的平均半徑,構(gòu)成3D模型的締度方向平均半徑特征向量[r0,ri,,? .,Rm-IL
[0099] 在獲取了 W上兩個(gè)特征之后,可W綜合利用運(yùn)兩個(gè)特征進(jìn)行形狀特征的分析,具 體的,為了利用2個(gè)特征間的互補(bǔ)性使得模型分類更準(zhǔn)確,采用分步歸類的方法歸類3D模 型,具體算法如下:
[0100] 首先根據(jù)示例3D模型的面積分布特征,應(yīng)用二次型形式的距離公式計(jì)算相似度, 公式如下:
[0101]
[0102] 其中:P和q是2個(gè)模型的特征向量;
[0103] N是特征向量的分量個(gè)數(shù);
[0104] A是N X N的相似矩陣,
[0105] 曰1康示特征向量的分量巧日j的相近度。運(yùn)里將A設(shè)置為單位矩陣,那么公式將變?yōu)?歐幾里德距離公式,那么歐幾里德距離公式是二次型形式距離公式的一個(gè)特例。au定義為 SiJ = G-WiiJjid(Lj)是特征向量的分量之間的距離。
[0106] 其中,如果用不同半徑同屯、球切分3D模型,分量之間的距離是半徑的差值;如果用 不同的角度來切分,那么分量之間的距離是角度的差值。
[0107] 5是用來控制相似矩陣整體變化的參數(shù),S越大,得到的矩陣就越接近單位矩陣,運(yùn) 里取8 = 5。根據(jù)二次型形式的距離公式計(jì)算距離d<0.3的模型歸類,數(shù)量為K。
[0108] 然后根據(jù)示例模型的締度方向平均半徑特征從K個(gè)3D模型中,依然利用二次型形 式的距離公式計(jì)算距離d<0.2的L個(gè)最相似模型歸為一類。
[0109] 步驟4、在已經(jīng)歸類的近似組件集合中任意選出一個(gè)組件作為標(biāo)準(zhǔn)組件,將標(biāo)準(zhǔn)組 件與其他組件分別比較,提取差異的數(shù)據(jù)變換參數(shù)進(jìn)行存儲(chǔ),剔除相同的數(shù)據(jù)部分。步驟計(jì) 算法如下:
[0110] (1)、在標(biāo)準(zhǔn)組件的網(wǎng)格上和其他組件的網(wǎng)格表面上采用相同的均勻采樣點(diǎn)來作 為標(biāo)記點(diǎn),一個(gè)具體的實(shí)施例如圖4所示。
[0111] (2)、根據(jù)標(biāo)準(zhǔn)組件的網(wǎng)格上標(biāo)記點(diǎn)的移動(dòng)來變換標(biāo)準(zhǔn)組件的網(wǎng)格上的頂點(diǎn)。P是 一個(gè)距離闊值,運(yùn)里取它為外包圍盒大小的四分之一。對(duì)標(biāo)準(zhǔn)組件的網(wǎng)格上的一個(gè)頂點(diǎn)V找 出離此頂點(diǎn)最近的3個(gè)標(biāo)記點(diǎn),分別記為化,化和跑。如果線段VQi,VQ2和VQ3中至少有一個(gè)的 長(zhǎng)度大于P,就忽略V,繼續(xù)測(cè)試下一個(gè)頂點(diǎn);根據(jù)化,Q2和化找到對(duì)應(yīng)的其他組件網(wǎng)格表面的 標(biāo)記點(diǎn)化,化和化。根據(jù)化,Q2,化和化,化和化求得變換后的頂點(diǎn)Vnew。
[0112]
[0113]其中:S{DiD2D3}為 A {D1D2D3}的面積;
[0114] S{QiQ2Q3}為 A {Q1Q2Q3}的面積;
[0115] V投影到由化,化和化確定的平面上,投影點(diǎn)為Vp;
[0116] Vnew到0的距離為0;
[0117] 其中,n是平面{D1D2D3}的單位法線矢量,如果V-Vp與n有相同的方向,則C = I.0;否 則c = -1.0。
[011引根據(jù)運(yùn)個(gè)原理只需要本地只需要存儲(chǔ)化,Q2至化3點(diǎn)的數(shù)據(jù),服務(wù)端只需要存儲(chǔ)化,02 到化點(diǎn)的數(shù)據(jù)。
[0119] 步驟5、對(duì)于新的家具=維模型,首先放入數(shù)據(jù)庫中拆分為對(duì)應(yīng)類別的組件,然后, 將標(biāo)準(zhǔn)組件與其組件分別比較,提取差異的數(shù)據(jù)變換標(biāo)記點(diǎn)進(jìn)行存儲(chǔ),剔除相同的數(shù)據(jù)部 分。在本地的磁盤中只需要存儲(chǔ)該家具=維模型類型各個(gè)組件的標(biāo)準(zhǔn)數(shù)據(jù),那么在加載該 模型=維數(shù)據(jù)時(shí)只需要調(diào)取各個(gè)組件的標(biāo)準(zhǔn)數(shù)據(jù),然后根據(jù)對(duì)應(yīng)組件的索引快速加載差異 數(shù)據(jù)的變換信息即標(biāo)記點(diǎn)數(shù)據(jù),將標(biāo)準(zhǔn)數(shù)據(jù)快速的轉(zhuǎn)換為需要的數(shù)據(jù)信息。
[0120] 當(dāng)獲得一個(gè)新=維家具模型的各個(gè)組件之后,通過對(duì)各個(gè)組件的仿射變換,將各 個(gè)組件按照拆分時(shí)的拆分規(guī)則拼接成為一個(gè)新=維家具模型的外形,然后通過網(wǎng)格融合算 法來進(jìn)行網(wǎng)格的融合。
[0121] 具體的,W-個(gè)具體的例子來進(jìn)行說明,例如為網(wǎng)格Ml和M2進(jìn)行融合,由Ml邊界向 M2邊界擴(kuò)展生成過渡網(wǎng)格的關(guān)鍵是如何生成新的網(wǎng)格點(diǎn)。其具體的過程包括:
[0122] 首先,捜索假設(shè)Ml的邊界點(diǎn)C,捜索出C點(diǎn)鄰近的所有其它邊界點(diǎn),包括Ml和M2上的 點(diǎn),作為候選=角化的采樣點(diǎn),候選采樣點(diǎn)列表用L表示。
[0123] 其次,利用C點(diǎn)處兩邊界cel和ce2,將候選采樣點(diǎn)向cel和ce2所組成的平面投影, 并將位于此區(qū)域W外的候選采樣點(diǎn)從L中刪除;對(duì)于此區(qū)域內(nèi)候選采樣點(diǎn)如果與C點(diǎn)距離大 于I cei I + I cei I *3/4,也從L中刪除。
[0124] 然后,將保留下來的候選采樣點(diǎn)分為兩種情況:
[01巧]情況1、L中除el,e2外沒有其它點(diǎn)的情況,如果Zelce2<90°,直接連接ele2;如果 Zelce2>90°,將Zelce2均分且滿足均分后各角接近60°,在每條角分線上距C點(diǎn)距離為 cei I +I cei I/2處增加新的采樣點(diǎn);
[0126] 情況2、對(duì)除el,e2外還有候選采樣點(diǎn)保留下來的情況,首先將運(yùn)些保留下來的采 樣點(diǎn)與C相連,將此邊界角分割為幾個(gè)邊界角,然后對(duì)每一個(gè)邊界角用情況1的方法處理。更 新網(wǎng)格邊界,完成一個(gè)封閉的新=維家具模型數(shù)據(jù)。
[0127] 實(shí)施例3
[0128] 本發(fā)明實(shí)施例提出了一種數(shù)據(jù)處理設(shè)備,具體的,該數(shù)據(jù)處理設(shè)備可W是移動(dòng)端 設(shè)備,例如平板,在一個(gè)具體的應(yīng)用場(chǎng)景中,可W如圖5所示,包括:
[0129] 劃分模塊501,用于對(duì)=維模型數(shù)據(jù)庫中的模型按照類別進(jìn)行劃分,并將每一類別 下的模型按照預(yù)設(shè)規(guī)則拆分為多個(gè)組件,同時(shí)對(duì)所述組件進(jìn)行命名;
[0130] 分析模塊502,用于對(duì)名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi) 的組件劃分為對(duì)應(yīng)名稱的近似組件集;
[0131] 處理模塊503,用于通過分析所述近似組件集中的組件,確定存在差異的差異數(shù)據(jù) 與相同部分的相同數(shù)據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù)。
[0132] 具體的,所述分析模塊502對(duì)名稱相同的組件進(jìn)行相似度分析,具體包括:
[0133] 獲取名稱相同的組件的模型數(shù)據(jù);
[0134] 基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同的各 組件之間的相似度。
[0135] 具體的,所述形狀特征包括:面積分布特征和締度方向平均半徑;
[0136] 所述分析模塊502基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來 確定名稱相同的各組件之間的相似度,具體包括:
[0137] 基于所述模型數(shù)據(jù)采用同屯、球切分模型的方式,獲取名稱相同的組件的面積分布 特征;
[0138] 基于所述模型數(shù)據(jù)采用極坐標(biāo)的方式,獲取名稱相同的組件的締度方向平均半 徑;
[0139] 通過分步歸類的方式綜合面積分布特征與締度方向平均半徑確定名稱相同的各 組件之間的相似度。
[0140] 具體的,所述處理模塊503,具體用于:
[0141 ] 從所述近似組件集中任選一個(gè)組件作為標(biāo)準(zhǔn)組件;
[0142] 利用所述標(biāo)準(zhǔn)組件與所述近似組件集中其他組件進(jìn)行比較,確定其他組件與標(biāo)準(zhǔn) 組件存在差異的差異數(shù)據(jù)W及相同部分的相同數(shù)據(jù);
[0143] 保存差異數(shù)據(jù),同時(shí)刪除相同數(shù)據(jù)。
[0144] 具體的,該數(shù)據(jù)處理設(shè)備還包括:
[0145] 加載模塊,用于:當(dāng)需要對(duì)=維模型進(jìn)行加載時(shí),確定待加載的=維模型的類型W 及待加載的=維模型在所述類型下對(duì)應(yīng)的組件名稱;
[0146] 提取相同名稱的標(biāo)準(zhǔn)組件W及差異數(shù)據(jù);
[0147] 基于所述標(biāo)準(zhǔn)組件W及差異數(shù)據(jù)轉(zhuǎn)換為待加載的=維模型的組件;
[0148] 通過融合算法將轉(zhuǎn)換后的組件進(jìn)行融合,W完成對(duì)=維模型的加載。
[0149] 與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例,通過對(duì)=維模型數(shù)據(jù)庫中的模型按照類別進(jìn)行 劃分,并將每一類別下的模型按照預(yù)設(shè)規(guī)則拆分為多個(gè)組件,同時(shí)對(duì)所述組件進(jìn)行命名;對(duì) 名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi)的組件劃分為對(duì)應(yīng)名稱的近似 組件集;通過分析所述近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同部分的相同 數(shù)據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù);具體的,將的提取差異的數(shù)據(jù)變換參數(shù)進(jìn)行存儲(chǔ),另 外剔除相同的數(shù)據(jù)部分,運(yùn)樣就減少存儲(chǔ)大量模型的存儲(chǔ)空間。此外,由于網(wǎng)絡(luò)加載差異化 變換參數(shù)遠(yuǎn)小于本身的模型數(shù)據(jù)信息所占用的帶寬,因此提升了新=維家具模型加載速 度。
【主權(quán)項(xiàng)】
1. 一種數(shù)據(jù)處理方法,其特征在于,包括: 對(duì)三維模型數(shù)據(jù)庫中的模型按照類別進(jìn)行劃分,并將每一類別下的模型按照預(yù)設(shè)規(guī)則 拆分為多個(gè)組件,同時(shí)對(duì)所述組件進(jìn)行命名; 對(duì)名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi)的組件劃分為對(duì)應(yīng)名稱 的近似組件集; 通過分析所述近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同部分的相同數(shù) 據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù)。2. 如權(quán)利要求1所述的方法,其特征在于,所述對(duì)名稱相同的組件進(jìn)行相似度分析,具 體包括: 獲取名稱相同的組件的模型數(shù)據(jù); 基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同的各組件 之間的相似度。3. 如權(quán)利要求2所述的方法,其特征在于,所述形狀特征包括:面積分布特征和煒度方 向平均半徑; 所述基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同的各 組件之間的相似度,具體包括: 基于所述模型數(shù)據(jù)采用同心球切分模型的方式,獲取名稱相同的組件的面積分布特 征; 基于所述模型數(shù)據(jù)采用極坐標(biāo)的方式,獲取名稱相同的組件的煒度方向平均半徑; 通過分步歸類的方式綜合面積分布特征與煒度方向平均半徑確定名稱相同的各組件 之間的相似度。4. 如權(quán)利要求1所述的方法,其特征在于,通過分析近似組件集中的組件,確定存在差 異的差異數(shù)據(jù)與相同部分的相同數(shù)據(jù),保存差異數(shù)據(jù)并刪除相同數(shù)據(jù),具體包括: 從所述近似組件集中任選一個(gè)組件作為標(biāo)準(zhǔn)組件; 利用所述標(biāo)準(zhǔn)組件與所述近似組件集中其他組件進(jìn)行比較,確定其他組件與標(biāo)準(zhǔn)組件 存在差異的差異數(shù)據(jù)以及相同部分的相同數(shù)據(jù); 保存差異數(shù)據(jù),同時(shí)刪除相同數(shù)據(jù)。5. 如權(quán)利要求1所述的方法,其特征在于,還包括: 當(dāng)需要對(duì)三維模型進(jìn)行加載時(shí),確定待加載的三維模型的類型以及待加載的三維模型 在所述類型下對(duì)應(yīng)的組件名稱; 提取相同名稱的標(biāo)準(zhǔn)組件以及差異數(shù)據(jù); 基于所述標(biāo)準(zhǔn)組件以及差異數(shù)據(jù)轉(zhuǎn)換為待加載的三維模型的組件; 通過融合算法將轉(zhuǎn)換后的組件進(jìn)行融合,以完成對(duì)三維模型的加載。6. -種數(shù)據(jù)處理設(shè)備,其特征在于,包括: 劃分模塊,用于對(duì)三維模型數(shù)據(jù)庫中的模型按照類別進(jìn)行劃分,并將每一類別下的模 型按照預(yù)設(shè)規(guī)則拆分為多個(gè)組件,同時(shí)對(duì)所述組件進(jìn)行命名; 分析模塊,用于對(duì)名稱相同的組件進(jìn)行相似度分析,并將相似度在預(yù)設(shè)范圍內(nèi)的組件 劃分為對(duì)應(yīng)名稱的近似組件集; 處理模塊,用于通過分析所述近似組件集中的組件,確定存在差異的差異數(shù)據(jù)與相同 部分的相同數(shù)據(jù),保存差異數(shù)據(jù)并剔除相同數(shù)據(jù)。7. 如權(quán)利要求6所述的設(shè)備,其特征在于,所述分析模塊對(duì)名稱相同的組件進(jìn)行相似度 分析,具體包括: 獲取名稱相同的組件的模型數(shù)據(jù); 基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱相同的各組件 之間的相似度。8. 如權(quán)利要求7所述的設(shè)備,其特征在于,所述形狀特征包括:面積分布特征和煒度方 向平均半徑; 所述分析模炔基于所述模型數(shù)據(jù)對(duì)名稱相同的組件的形狀特征進(jìn)行分析,來確定名稱 相同的各組件之間的相似度,具體包括: 基于所述模型數(shù)據(jù)采用同心球切分模型的方式,獲取名稱相同的組件的面積分布特 征; 基于所述模型數(shù)據(jù)采用極坐標(biāo)的方式,獲取名稱相同的組件的煒度方向平均半徑; 通過分步歸類的方式綜合面積分布特征與煒度方向平均半徑確定名稱相同的各組件 之間的相似度。9. 如權(quán)利要求6所述的設(shè)備,其特征在于,所述處理模塊,具體用于: 從所述近似組件集中任選一個(gè)組件作為標(biāo)準(zhǔn)組件; 利用所述標(biāo)準(zhǔn)組件與所述近似組件集中其他組件進(jìn)行比較,確定其他組件與標(biāo)準(zhǔn)組件 存在差異的差異數(shù)據(jù)以及相同部分的相同數(shù)據(jù); 保存差異數(shù)據(jù),同時(shí)刪除相同數(shù)據(jù)。10. 如權(quán)利要求6所述的設(shè)備,其特征在于,還包括: 加載模塊,用于:當(dāng)需要對(duì)三維模型進(jìn)行加載時(shí),確定待加載的三維模型的類型以及待 加載的三維模型在所述類型下對(duì)應(yīng)的組件名稱; 提取相同名稱的標(biāo)準(zhǔn)組件以及差異數(shù)據(jù); 基于所述標(biāo)準(zhǔn)組件以及差異數(shù)據(jù)轉(zhuǎn)換為待加載的三維模型的組件;通過融合算法將轉(zhuǎn) 換后的組件進(jìn)行融合,以完成對(duì)三維模型的加載。
【文檔編號(hào)】G06F17/30GK105956005SQ201610249262
【公開日】2016年9月21日
【申請(qǐng)日】2016年4月20日
【發(fā)明人】曹屹
【申請(qǐng)人】曹屹, 蘇芮