本申請屬(shu)于骨骼模型(xing)孔(kong)洞(dong)修(xiu)復領域,尤其(qi)涉及一種基于體(ti)數據網格重(zhong)建與拓撲優化的(de)高精度三(san)維修(xiu)復方法、裝置、設備(bei)及計算機可讀存儲介質。
背景技術:
1、目(mu)前,骨骼模型孔洞修復是表面平滑(hua)法:通(tong)過使用平滑(hua)算法(如laplaciansmoothing),對(dui)孔洞周圍(wei)的頂點(dian)進(jin)行平滑(hua)處理(li),使其與周圍(wei)的表面一致(zhi)。
2、但是(shi),表面(mian)平滑可能(neng)會(hui)導致修復后的區域與原始(shi)骨(gu)骼模型的形狀不完全(quan)一致,特(te)別是(shi)在孔洞周(zhou)圍的細(xi)節部分可能(neng)會(hui)產生(sheng)失真。
3、因此(ci),如何更加(jia)準確地(di)進行骨骼模型孔洞修復(fu)是本(ben)領域技術人員亟需解(jie)決的(de)技術問題。
技術實現思路
1、本申請實(shi)施例(li)提供一(yi)種基于體數據網格重(zhong)建與拓(tuo)撲優(you)化(hua)的高精度三維修(xiu)(xiu)復方法、裝置、設備及計算機(ji)可讀存儲介質,能夠更加準確地進(jin)行骨骼(ge)模型孔洞修(xiu)(xiu)復。
2、第(di)一(yi)方面,本申請(qing)實施例提(ti)供一(yi)種基(ji)于體(ti)數據網格(ge)重建與拓撲優化(hua)的高精度(du)三維修復方法,包括:
3、獲取骨(gu)骼模(mo)型的體數據;其中(zhong),骨(gu)骼模(mo)型上存在孔洞;
4、基于體數據(ju)進行網(wang)(wang)格(ge)重(zhong)建,得到(dao)骨骼模(mo)型的(de)網(wang)(wang)格(ge)數據(ju);其(qi)中(zhong),網(wang)(wang)格(ge)數據(ju)為一(yi)個多(duo)邊(bian)形集合,其(qi)中(zhong)包含了(le)多(duo)個多(duo)邊(bian)形的(de)頂(ding)點信息(xi)和連(lian)接(jie)關系;
5、分析多邊(bian)(bian)形(xing)(xing)集合(he)的(de)連通(tong)性(xing),確定(ding)共享(xiang)邊(bian)(bian)界的(de)相鄰多邊(bian)(bian)形(xing)(xing);
6、將相(xiang)鄰(lin)的多(duo)邊(bian)形劃分為一組三角形,以(yi)填充它們之間的空間;
7、合并相鄰三角(jiao)形(xing)的(de)邊(bian)界,使(shi)得所有的(de)三角(jiao)形(xing)共(gong)享一(yi)組共(gong)同(tong)的(de)邊(bian)界,以完(wan)成(cheng)孔(kong)洞修復(fu)。
8、可選的(de),基于體數據進行網格(ge)重建(jian),得到骨骼模(mo)型(xing)的(de)網格(ge)數據,包括:
9、對體數據進行去(qu)噪、增強處(chu)理;
10、將處理后的體(ti)數據轉換為三維(wei)網格(ge)結構;
11、通過對(dui)三維網(wang)格(ge)結(jie)構(gou)進(jin)行網(wang)格(ge)平滑、網(wang)格(ge)剖分操作(zuo),得到骨骼模型的網(wang)格(ge)數據。
12、可(ke)選的(de),分析(xi)多邊(bian)形(xing)集合的(de)連通性,確定(ding)共享邊(bian)界(jie)的(de)相鄰多邊(bian)形(xing),包括:
13、對(dui)于每個多邊形,識別(bie)其邊界;
14、對(dui)于每個邊(bian)界,查找共(gong)享該邊(bian)界的其他多邊(bian)形(xing);
15、使(shi)用圖(tu)論(lun)算法(fa)(fa)或者深度(du)優(you)先搜索(suo)或廣度(du)優(you)先搜索(suo)方(fang)法(fa)(fa),分(fen)析多邊形(xing)之間的連(lian)通性(xing),確定(ding)它們之間的關聯和連(lian)接(jie)方(fang)式(shi);
16、根據(ju)上述分析結果,構建(jian)多邊(bian)形之間的連接關(guan)系,以確定共享邊(bian)界(jie)和相鄰多邊(bian)形的關(guan)系。
17、可(ke)選的(de),將相鄰的(de)多邊形劃(hua)分為一(yi)組三角形,以(yi)填充(chong)它們之間的(de)空間,包(bao)括:
18、確(que)定相鄰的多邊(bian)形(xing)對,這(zhe)些多邊(bian)形(xing)共享(xiang)一個或多個邊(bian)界;
19、查找相(xiang)鄰多邊形之間的共同點(dian)(dian),這(zhe)些點(dian)(dian)位于它們之間的公共邊界上;其(qi)中,這(zhe)些點(dian)(dian)將成為(wei)水平切割線(xian)的端點(dian)(dian);
20、沿著(zhu)共同(tong)點(dian)與其他點(dian)連(lian)接的水(shui)平(ping)線切割相鄰多邊(bian)形,產生一系列平(ping)行(xing)于共同(tong)邊(bian)的水(shui)平(ping)切割線;
21、沿著(zhu)每個(ge)水平切(qie)(qie)割線與(yu)相鄰(lin)多邊形(xing)的交點,將(jiang)多邊形(xing)切(qie)(qie)割成一組三角形(xing);其中,這(zhe)些切(qie)(qie)割線垂直于共同邊并將(jiang)多邊形(xing)劃(hua)分(fen)為三角形(xing);
22、根據水(shui)平和垂直(zhi)切(qie)割,生成一組三角(jiao)形來填充相(xiang)鄰(lin)多邊形之間的空(kong)間。
23、可選的,合并相鄰三角形的邊界(jie),使得所有的三角形共享一(yi)組共同(tong)的邊界(jie),包括:
24、確定(ding)具有共同邊界的相鄰三(san)角形對,這些(xie)三(san)角形需要進(jin)行(xing)邊界合并;
25、對于每(mei)個相鄰三角(jiao)形對,找(zhao)到(dao)它們(men)之間的共(gong)同(tong)邊界;
26、將(jiang)相鄰三角(jiao)形的共(gong)同邊界合并為一個邊界線段(duan);
27、根據新的邊界合并(bing)情況,更(geng)新三角形之(zhi)間的連接關系;
28、經過邊(bian)界合并后,所(suo)有的(de)三角形將(jiang)共(gong)享一組共(gong)同的(de)邊(bian)界,形成一個封閉的(de)邊(bian)界。
29、可選的,還包(bao)括:
30、幾何矯(jiao)正退化元素、自(zi)交多(duo)邊形、超(chao)過閾值(zhi)的三角邊長;
31、其中,退化(hua)元素包括(kuo)夾角為(wei)(wei)0或180度(du),長度(du)為(wei)(wei)0的線段(duan)。
32、可(ke)選的,還包括(kuo):
33、對骨骼模型進行(xing)拓(tuo)撲(pu)重建(jian),以(yi)刪(shan)除離群點(dian)、冗余小(xiao)連通塊(kuai)。
34、第二方(fang)面,本申請實施例提供了一(yi)種(zhong)基于體數(shu)據網格重建與拓撲優化的(de)高(gao)精度三維修復裝置,包(bao)括(kuo):
35、體數據(ju)獲(huo)取模(mo)塊,用于獲(huo)取骨骼模(mo)型的體數據(ju);其中,骨骼模(mo)型上存在孔洞;
36、網格(ge)(ge)(ge)(ge)重(zhong)建(jian)模(mo)塊(kuai),用于基于體數(shu)據進行(xing)網格(ge)(ge)(ge)(ge)重(zhong)建(jian),得到(dao)骨骼(ge)模(mo)型(xing)的網格(ge)(ge)(ge)(ge)數(shu)據;其(qi)中,網格(ge)(ge)(ge)(ge)數(shu)據為一個(ge)多邊形集(ji)合,其(qi)中包(bao)含了多個(ge)多邊形的頂點信息和(he)連接關系(xi);
37、連(lian)通(tong)性(xing)分析模塊,用(yong)于分析多(duo)邊(bian)形集(ji)合的(de)連(lian)通(tong)性(xing),確定共享邊(bian)界的(de)相鄰(lin)多(duo)邊(bian)形;
38、三角形(xing)組劃(hua)分模塊,用于(yu)將相鄰的(de)多邊(bian)形(xing)劃(hua)分為一(yi)組三角形(xing),以填(tian)充它們之(zhi)間的(de)空間;
39、邊(bian)界(jie)合(he)并模塊(kuai),用于合(he)并相鄰(lin)三(san)角(jiao)形的(de)邊(bian)界(jie),使得(de)所有的(de)三(san)角(jiao)形共(gong)(gong)享一組共(gong)(gong)同的(de)邊(bian)界(jie),以完成孔洞修復。
40、第三方面,本申請實(shi)施例提供了一(yi)種電子(zi)設備(bei),其特征在于,所述(shu)電子(zi)設備(bei)包括(kuo):處理(li)器(qi)以(yi)及存儲有(you)計算機程(cheng)序指令的存儲器(qi);
41、所(suo)述(shu)處理器執行(xing)所(suo)述(shu)計算(suan)機程序(xu)指令時實(shi)現基于(yu)體數據網格(ge)重建與拓撲優化的高精(jing)度三維修復方法。
42、第四方面(mian),本申請(qing)實施例提供了一(yi)種計(ji)算機可讀存儲(chu)(chu)介質,計(ji)算機可讀存儲(chu)(chu)介質上存儲(chu)(chu)有(you)計(ji)算機程序(xu)指令(ling),所述計(ji)算機程序(xu)指令(ling)被處理器執行時(shi)實現基于體數據網格重建與拓撲優化的高精(jing)度三(san)維修復方法。
43、本申請實施(shi)例的基于體(ti)數據網格重建與拓撲優化的高精度三維(wei)修復方法、裝置、設備(bei)及計算機可讀(du)存(cun)儲(chu)介(jie)質,能夠(gou)更加(jia)準(zhun)確地(di)進行骨(gu)骼模型(xing)孔洞修復。
44、該基(ji)于體數據網(wang)格重建與拓撲(pu)優化的高精度(du)三維修復方法(fa),包括:
45、獲取骨骼模型的體(ti)數據(ju);其中,骨骼模型上存在孔洞;
46、基于(yu)體數(shu)據進(jin)行網(wang)格重建,得到骨骼(ge)模型的(de)網(wang)格數(shu)據;其中,網(wang)格數(shu)據為一個多邊(bian)(bian)形(xing)集合(he),其中包(bao)含了多個多邊(bian)(bian)形(xing)的(de)頂點(dian)信息和連接關系;
47、分(fen)析多(duo)(duo)邊形(xing)(xing)集合的連通性(xing),確定共(gong)享邊界的相鄰多(duo)(duo)邊形(xing)(xing);
48、將相(xiang)鄰的多邊形劃分為一組(zu)三角形,以填充它們之間的空間;
49、合并相(xiang)鄰(lin)三(san)角(jiao)形的邊(bian)界,使得所有的三(san)角(jiao)形共享一組共同的邊(bian)界,以完(wan)成(cheng)孔(kong)洞修復。
1.一種基于體數據(ju)網格重建與拓撲優化(hua)的高精度三維(wei)修復方法,其特征在于,包括:
2.根(gen)據(ju)權利要求1所述的(de)(de)基(ji)于(yu)體數(shu)據(ju)網(wang)(wang)格重(zhong)建(jian)與拓撲優(you)化的(de)(de)高精度(du)三維修復方(fang)法,其特征在于(yu),基(ji)于(yu)體數(shu)據(ju)進行(xing)網(wang)(wang)格重(zhong)建(jian),得到骨骼模型的(de)(de)網(wang)(wang)格數(shu)據(ju),包括(kuo):
3.根據權(quan)利(li)要求1所(suo)述(shu)的基于體數據網格重(zhong)建與拓撲優化的高精度(du)三維修復方法,其特征在于,分析多邊(bian)(bian)形集合(he)的連通性,確定(ding)共享邊(bian)(bian)界的相鄰多邊(bian)(bian)形,包括:
4.根據權利要求1所述的(de)基于(yu)體數據網格(ge)重建與拓撲優(you)化的(de)高精(jing)度三維修復方法(fa),其特征在于(yu),將相鄰的(de)多邊(bian)形劃分為一組三角形,以填充它們(men)之間的(de)空(kong)間,包括:
5.根據權利要求1所(suo)述的(de)基于體數(shu)據網格重(zhong)建與拓撲優化的(de)高精度三維修復方(fang)法,其特(te)征(zheng)在于,合并(bing)相鄰三角形的(de)邊界,使得所(suo)有的(de)三角形共享一(yi)組共同的(de)邊界,包括:
6.根據權利要求1所述的基于體數據網格重建與拓撲優化的高精(jing)度三維(wei)修復方法(fa),其特征在(zai)于,還包(bao)括:
7.根據權利要(yao)求(qiu)1所(suo)述的基于體數據網格重建與拓撲優化(hua)的高(gao)精度(du)三維(wei)修(xiu)復方法,其(qi)特征(zheng)在于,還包括:
8.一種基于(yu)(yu)體數據網格重建與拓撲(pu)優化的高精度三(san)維修復裝置,其(qi)特征在于(yu)(yu),所述裝置包括(kuo):
9.一種(zhong)電子(zi)設(she)備,其特征在于(yu),所(suo)述電子(zi)設(she)備包括(kuo):處理器(qi)以及存儲(chu)有計(ji)算機程(cheng)序(xu)指(zhi)令的(de)存儲(chu)器(qi);
10.一(yi)種(zhong)計算機可(ke)讀(du)存(cun)儲(chu)介質,其特征在于(yu),所述(shu)計算機可(ke)讀(du)存(cun)儲(chu)介質上存(cun)儲(chu)有計算機程(cheng)序指令(ling)(ling),所述(shu)計算機程(cheng)序指令(ling)(ling)被處理器執行時實現(xian)如(ru)權利要求1-7任意一(yi)項所述(shu)的(de)(de)基于(yu)體數據(ju)網(wang)格(ge)重建與拓撲優化的(de)(de)高精度三維修復方法。