[發(fā)明專(zhuān)利]一種動(dòng)態(tài)細(xì)節(jié)層次模型實(shí)現(xiàn)方法在審
| 申請(qǐng)?zhí)枺?/td> | 201810751900.8 | 申請(qǐng)日: | 2018-07-10 |
| 公開(kāi)(公告)號(hào): | CN109087392A | 公開(kāi)(公告)日: | 2018-12-25 |
| 發(fā)明(設(shè)計(jì))人: | 謝玨;吳含前;李露 | 申請(qǐng)(專(zhuān)利權(quán))人: | 凱爾博特信息科技(昆山)有限公司 |
| 主分類(lèi)號(hào): | G06T17/05 | 分類(lèi)號(hào): | G06T17/05;G06T17/20 |
| 代理公司: | 暫無(wú)信息 | 代理人: | 暫無(wú)信息 |
| 地址: | 215300 江蘇省蘇州市昆山市*** | 國(guó)省代碼: | 江蘇;32 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 自定義文件 層次模型 預(yù)處理 解析 快速生成 折疊 排序 保存 | ||
1.一種動(dòng)態(tài)細(xì)節(jié)層次模型實(shí)現(xiàn)方法,其特征在于:包括如下步驟:
S1)預(yù)處理:找出最小度量誤差的頂點(diǎn)序列,如u->v,稱(chēng)u為被刪除頂點(diǎn),v為代替頂點(diǎn);
S1-1)使用二次誤差進(jìn)行度量誤差的度量:
假設(shè)頂點(diǎn)u折疊到頂點(diǎn)v,則基于二次誤差的半邊折疊的度量誤差為u到所有包含頂點(diǎn)v的三角平面的距離之和;
一個(gè)三維空間中的三角平面可以用方程ax+by+zc+d=0(其中a2+b2+c2=1)來(lái)表示,令p=[a b c d]T代表包含頂點(diǎn)v的一個(gè)平面,點(diǎn)u的坐標(biāo)為[x y z 1]T,則點(diǎn)u到三角平面p距離的平方為:
其中:
令
為點(diǎn)v的二次誤差測(cè)度矩陣,其中planes(v)為所有包含頂點(diǎn)v的三角面的集合:
度量誤差為:
S2)保存被刪除點(diǎn)舊id和新id的對(duì)應(yīng)permutation[vertex[i]->id]=vertex.num-1;
S3)保存替代頂點(diǎn)的舊id到map[vertex.num-1];
S4)對(duì)折疊代價(jià)或度量誤差最小的頂點(diǎn)序列進(jìn)行半邊折疊,并更新被刪除點(diǎn)的鄰居點(diǎn)的度量誤差;
S4-1)對(duì)頂點(diǎn)對(duì)uv進(jìn)行半邊折疊,去除既包含頂點(diǎn)u又包含頂點(diǎn)v的三角形或以u(píng)v為邊的三角形;后更新所有剩下的三角形,把所有用到頂點(diǎn)u的地方都用頂點(diǎn)v代替,移除頂點(diǎn)u;更新頂點(diǎn)u鄰居點(diǎn)的度量誤差;
S5)循環(huán)步驟S1)-S4),循環(huán)次數(shù)為vertex.num次;
S6)利用permutation數(shù)組將map中的替代頂點(diǎn)的舊id替換為新id,map[i]=permutation[map[i]];
S7)利用permutation數(shù)組對(duì)頂點(diǎn)按重要度進(jìn)行排序,將三角形三元組的舊id替換為新id;
S8)定義文件寫(xiě)入:預(yù)處理后,頂點(diǎn)id和重要度是一致的,頂點(diǎn)是有序的;越重要的頂點(diǎn),頂點(diǎn)編號(hào)越小;越不重要的頂點(diǎn),頂點(diǎn)編號(hào)越大;而map中則記錄著折疊序列;對(duì)頂點(diǎn)數(shù)組按id寫(xiě)入自定義文件,并將三角形三元組和map數(shù)組寫(xiě)入自定義文件;
S9)解析自定義文件:
S9-1)用原模型頂點(diǎn)數(shù)vert.num乘以精簡(jiǎn)度percent得到新模型的頂點(diǎn)數(shù)vert.num*percent,取出前vert.num*percent個(gè)頂點(diǎn);
S9-2)對(duì)三角形序列的三個(gè)頂點(diǎn)序號(hào)tri.at(i).t[0],tri.at(i).t[1],tri.at(i).t[2],分別根據(jù)map折疊數(shù)組快速找到替代頂點(diǎn)序號(hào);
S9-3)如果三角形序列的三個(gè)頂點(diǎn)序號(hào)tri.at(i).t[0],tri.at(i).tri[1],tri.at(i).tri[2]有相同的,則表示這個(gè)三角形無(wú)效。
S9-4)根據(jù)前vert.num*percent個(gè)頂點(diǎn)和有效三角形得到任意比例的模型。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于凱爾博特信息科技(昆山)有限公司,未經(jīng)凱爾博特信息科技(昆山)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810751900.8/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 一種基于模型信息的智能提取方法
- 基于三維R樹(shù)索引擴(kuò)展結(jié)構(gòu)的三維城市模型自適應(yīng)方法
- 一種基于讀者層次的內(nèi)容推送方法
- 用于對(duì)生產(chǎn)工廠的實(shí)體工廠項(xiàng)進(jìn)行建模的通用工廠模型
- 一種石化企業(yè)多分辨率工廠安全模型的建模方法
- 一種用于聚變反應(yīng)堆核分析的自適應(yīng)子空間分割協(xié)同系統(tǒng)
- 一種用于三維城市模型的細(xì)節(jié)層次轉(zhuǎn)換方法和系統(tǒng)
- 翻轉(zhuǎn)計(jì)數(shù)模型構(gòu)建的方法和裝置
- 基于層次學(xué)習(xí)的跨架構(gòu)漏洞挖掘方法
- 通用產(chǎn)品體系模型構(gòu)建方法、裝置和計(jì)算機(jī)設(shè)備
- 電鍍預(yù)處理溶液和電鍍預(yù)處理方法
- 鐵水預(yù)處理方法及其預(yù)處理裝置
- 預(yù)處理裝置及其預(yù)處理方法
- 預(yù)處理組件、使用該預(yù)處理組件進(jìn)行試樣的預(yù)處理的預(yù)處理裝置及包括該預(yù)處理裝置的分析系統(tǒng)
- 待測(cè)樣品預(yù)處理裝置、預(yù)處理筒及預(yù)處理方法
- 醋酸纖維卷曲預(yù)處理裝置、預(yù)處理液及預(yù)處理方法
- 預(yù)處理裝置
- 預(yù)處理濾芯
- 甘薯儲(chǔ)藏預(yù)處理設(shè)備及預(yù)處理方法
- 水樣預(yù)處理裝置、水樣預(yù)處理系統(tǒng)及水樣預(yù)處理方法





