一種渲染任意方位3d模型的方法及裝置制造方法
【專利摘要】本發(fā)明適用于圖像處理領(lǐng)域,提供了一種渲染任意方位3D模型的方法及裝置,所述方法包括:通過3D交互工具獲取3D模型上一時(shí)刻的初始位置、初始方向向量及所述3D模型的目標(biāo)位置、目標(biāo)方向向量;由所述初始方向向量及目標(biāo)方向向量計(jì)算所述3D模型的旋轉(zhuǎn)矩陣,所述初始位置及目標(biāo)位置計(jì)算所述3D模型的平移矩陣;通過所述旋轉(zhuǎn)矩陣及平移矩陣計(jì)算出所述3D模型的控制矩陣;將所述3D模型初始三維數(shù)據(jù)點(diǎn)信息代入所述控制矩陣,獲得目標(biāo)3D模型各個(gè)點(diǎn)的目標(biāo)坐標(biāo)及目標(biāo)方位,渲染所述目標(biāo)3D模型??梢凿秩境龇峡刂埔蟮娜我?D模型,適用于任何3D模型的實(shí)時(shí)渲染,提高了實(shí)時(shí)確定3D模型方位的速度,有效地改進(jìn)了控制3D模型的狀態(tài)。
【專利說明】一種渲染任意方位3D模型的方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于圖像處理領(lǐng)域,尤其涉及一種渲染任意方位3D模型的方法及裝置。
【背景技術(shù)】
[0002]隨著計(jì)算機(jī)圖形學(xué)、虛擬技術(shù)的不斷發(fā)展,3D技術(shù)在各領(lǐng)域得到廣泛的應(yīng)用,3D模型的應(yīng)用需求越來越大。隨著需求的擴(kuò)大,對3D模型的要求也越來越高,希望能夠按照控制條件自由控制渲染3D模型的要求也逐漸強(qiáng)烈,特別是交互式3D模型按照控制條件自由控制渲染更是急需應(yīng)用。3D模型一般由很多三維數(shù)據(jù)點(diǎn)組成,這些三維數(shù)據(jù)點(diǎn)一般都是提前制作好的,難以依據(jù)控制者的需求快速實(shí)時(shí)生成控制者需要的新的任意方位的3D模型。而目前計(jì)算運(yùn)動(dòng)后的3D模型各個(gè)點(diǎn)方位的方法較為復(fù)雜且實(shí)時(shí)性差,因此使得現(xiàn)在渲染任意方位3D模型的方法計(jì)算復(fù)雜、實(shí)時(shí)性查,且受硬件平臺(tái)及控制設(shè)備、工具的影響很大。
【發(fā)明內(nèi)容】
[0003]本發(fā)明實(shí)施例的目的在于提供一種渲染任意方位3D模型的方法及裝置,旨在解決現(xiàn)有的渲染任意方位3D模型的方法計(jì)算復(fù)雜,實(shí)時(shí)性差的問題。
[0004]本發(fā)明是這樣實(shí)現(xiàn)的,一種渲染任意方位3D模型的方法,所述方法包括:
[0005]通過3D交互工具獲取3D模型上一時(shí)刻的初始位置、初始方向向量及所述3D模型的目標(biāo)位置、目標(biāo)方向向量;
[0006]由所述初始方向向量及目標(biāo)方向向量計(jì)算所述3D模型的旋轉(zhuǎn)矩陣,所述初始位置及目標(biāo)位置計(jì)算所述3D模型的平移矩陣;
[0007]通過所述旋轉(zhuǎn)矩陣及平移矩陣計(jì)算出所述3D模型的控制矩陣;
[0008]將所述3D模型上一時(shí)刻的初始位置、初始方向向量代入所述控制矩陣,獲得目標(biāo)3D模型各個(gè)點(diǎn)的目標(biāo)坐標(biāo)及目標(biāo)方位,渲染所述目標(biāo)3D模型。
[0009]本發(fā)明還提供一種根據(jù)上述方法實(shí)現(xiàn)的渲染任意方位3D模型的裝置,所述裝置包括:
[0010]變量獲取單元,用于獲取3D模型上一時(shí)刻的初始位置、初始方向向量及所述3D模型的目標(biāo)位置、目標(biāo)方向向量;
[0011 ] 旋轉(zhuǎn)矩陣獲取單元,用于由所述初始方向向量及目標(biāo)方向向量計(jì)算所述3D模型的旋轉(zhuǎn)矩陣;
[0012]平移矩陣獲取單元,用于由所述初始位置及目標(biāo)位置計(jì)算所述3D模型的平移矩陣;
[0013]控制矩陣獲取單元,用于通過所述旋轉(zhuǎn)矩陣及平移矩陣計(jì)算出所述3D模型的控制矩陣;
[0014]渲染單元,用于將所述3D模型上一時(shí)刻的初始位置、初始方向向量代入所述控制矩陣,獲得目標(biāo)3D模型各個(gè)點(diǎn)的目標(biāo)坐標(biāo)及目標(biāo)方位,渲染所述目標(biāo)3D模型。[0015]在本發(fā)明實(shí)施例中,只要獲得了 3D模型上一時(shí)刻的初始位置、初始方向向量及3D模型的目標(biāo)位置、目標(biāo)方向向量,便可計(jì)算得到3D模型的控制矩陣,根據(jù)控制矩陣獲得目標(biāo)3D模型各個(gè)點(diǎn)的目標(biāo)坐標(biāo)及目標(biāo)方位。因此可以渲染出符合控制要求的任意3D模型,適用于任何3D模型的實(shí)時(shí)渲染,提高了實(shí)時(shí)確定3D模型方位的速度,有效地改進(jìn)了控制3D模型的狀態(tài)。此外,由于獲取3D模型上一時(shí)刻的初始位置、初始方向向量及3D模型的目標(biāo)位置、目標(biāo)方向向量的方法可為任意方法,不受限制,因此該渲染3D模型的方法針對性較廣,實(shí)用性也較強(qiáng)。
【專利附圖】
【附圖說明】
[0016]圖1是本發(fā)明提供的渲染任意方位3D模型方法實(shí)施例的流程圖;
[0017]圖2是本發(fā)明提供的渲染任意方位3D模型裝置實(shí)施例的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0018]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0019]為了說明本發(fā)明所述的技術(shù)方案,下面通過具體實(shí)施例來進(jìn)行說明。
[0020]實(shí)施例一:
[0021]如圖1所示為本發(fā)明提供的一種渲染任意方位3D模型實(shí)施例的方法的流程圖,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0022]在步驟SlOl中,通過3D交互工具獲取3D模型上一時(shí)刻的初始位置、初始方向向量及3D模型的目標(biāo)位置、目標(biāo)方向向量。
[0023]在本發(fā)明實(shí)施例中,通過3D交互控制工具獲得狀態(tài)變量,狀態(tài)變量包括:3D模型上一時(shí)刻的初始位置、初始方向向量及3D模型的目標(biāo)位置、目標(biāo)方向向量。其中,獲得3D模型上一時(shí)刻的初始位置、初始方向向量及3D模型的目標(biāo)位置、目標(biāo)方向向量的方式有多種,如通過人手交互、控制棒獲取、鼠標(biāo)獲取或鍵盤獲取均可,此處不做限制。
[0024]在步驟S102中,由初始方向向量及目標(biāo)方向向量計(jì)算3D模型的旋轉(zhuǎn)矩陣,初始位置及目標(biāo)位置計(jì)算3D模型的平移矩陣。
[0025]在本發(fā)明實(shí)施例中,獲得各種需要的狀態(tài)變量后,分為兩步。先由初始方向向量及目標(biāo)方向向量得到一個(gè)四元數(shù),將四元數(shù)轉(zhuǎn)換得到歐拉角,根據(jù)歐拉角計(jì)算3D模型的旋轉(zhuǎn)矩陣;再根據(jù)目標(biāo)位置減去初始位置獲得的平移量來構(gòu)建3D模型的平移矩陣。
[0026]由初始方向向量及目標(biāo)方向向量計(jì)算3D模型的旋轉(zhuǎn)矩陣的過程具體如下:
[0027]獲得的初始方向向量*v = (m;r,vJ目標(biāo)方向向量為? = (?次)在笛卡爾
右手坐標(biāo)系中,初始方向向量繞旋轉(zhuǎn)軸.及轉(zhuǎn)到目標(biāo)方向向量,設(shè)旋轉(zhuǎn)軸N = vx,將初始方向向量繞旋轉(zhuǎn)軸F轉(zhuǎn)到目標(biāo)方向向量的方向確定為正方向。對旋轉(zhuǎn)軸】進(jìn)行標(biāo)準(zhǔn)化處
理,得到η=確定旋轉(zhuǎn)軸后,再獲取初始方向向量繞旋轉(zhuǎn)軸轉(zhuǎn)到目標(biāo)方向向量的旋轉(zhuǎn)角度為€ =根據(jù)旋轉(zhuǎn)軸及旋轉(zhuǎn)角度Θ構(gòu)造一個(gè)四元數(shù)q=(X,y,Z,W)。其中:
【權(quán)利要求】
1.一種渲染任意方位3D模型的方法,其特征在于,所述方法包括: 通過3D交互工具獲取3D模型上一時(shí)刻的初始位置、初始方向向量及所述3D模型的目標(biāo)位置、目標(biāo)方向向量; 由所述初始方向向量及目標(biāo)方向向量計(jì)算所述3D模型的旋轉(zhuǎn)矩陣,所述初始位置及目標(biāo)位置計(jì)算所述3D模型的平移矩陣; 通過所述旋轉(zhuǎn)矩陣及平移矩陣計(jì)算出所述3D模型的控制矩陣; 將所述3D模型上一時(shí)刻的初始位置、初始方向向量代入所述控制矩陣,獲得目標(biāo)3D模型各個(gè)點(diǎn)的目標(biāo)坐標(biāo)及目標(biāo)方位,渲染所述目標(biāo)3D模型。
2.如權(quán)利要求1所述的方法,其特征在于,所述由所述初始方向向量及目標(biāo)方向向量計(jì)算所述3D模型的旋轉(zhuǎn)矩陣,包括: 由所述初始方向向量及目標(biāo)方向向量得出從初始方向向量旋轉(zhuǎn)到目標(biāo)方向向量的旋轉(zhuǎn)軸及旋轉(zhuǎn)角度; 根據(jù)所述旋轉(zhuǎn)軸及旋轉(zhuǎn)角度構(gòu)造一個(gè)四元數(shù); 將所述四元數(shù)轉(zhuǎn)換得到歐拉角,根據(jù)所述歐拉角計(jì)算所述3D模型的旋轉(zhuǎn)矩陣。
3.如權(quán)利要求2所述的方法,其特征在于,所述將所述四元數(shù)轉(zhuǎn)換得到歐拉角,根據(jù)所述歐拉角計(jì)算所述3D模型的旋轉(zhuǎn)矩陣包括: 將所述四元數(shù)轉(zhuǎn)換得到三個(gè)歐拉角; 分別建立三個(gè)歐拉角的獨(dú)立旋轉(zhuǎn)矩陣; 由所述三個(gè)獨(dú)立旋轉(zhuǎn)矩陣相乘構(gòu)成所述3D模型的旋轉(zhuǎn)矩陣。
4.如權(quán)利要求1所述的方法,其特征在于,所述初始位置及目標(biāo)位置計(jì)算所述3D模型的平移矩陣,包括: 將所述目標(biāo)位置減去所述初始位置,獲得平移量; 根據(jù)所述平移量構(gòu)建所述3D模型的平移矩陣。
5.如權(quán)利要求1所述的方法,其特征在于,所述通過所述旋轉(zhuǎn)矩陣及平移矩陣計(jì)算出所述3D模型的控制矩陣,包括: 將所述平移矩陣乘以所述旋轉(zhuǎn)矩陣,獲得所述3D模型的控制矩陣。
6.一種采用權(quán)1所述方法實(shí)現(xiàn)的渲染任意方位3D模型的裝置,其特征在于,所述裝置包括: 變量獲取單元,用于獲取3D模型上一時(shí)刻的初始位置、初始方向向量及所述3D模型的目標(biāo)位置、目標(biāo)方向向量; 旋轉(zhuǎn)矩陣獲取單元,用于由所述初始方向向量及目標(biāo)方向向量計(jì)算所述3D模型的旋轉(zhuǎn)矩陣; 平移矩陣獲取單元,用于由所述初始位置及目標(biāo)位置計(jì)算所述3D模型的平移矩陣; 控制矩陣獲取單元,用于通過所述旋轉(zhuǎn)矩陣及平移矩陣計(jì)算出所述3D模型的控制矩陣; 渲染單元,用于將所述3D模型上一時(shí)刻的初始位置、初始方向向量代入所述控制矩陣,獲得目標(biāo)3D模型各個(gè)點(diǎn)的目標(biāo)坐標(biāo)及目標(biāo)方位,渲染所述目標(biāo)3D模型。
7.如權(quán)利要求6所述的裝置,其特征在于,所述旋轉(zhuǎn)矩陣獲取單元包括: 四元數(shù)構(gòu)造單元,用于由所述初始方向向量及目標(biāo)方向向量得出從初始方向向量旋轉(zhuǎn)到目標(biāo)方向向量的旋轉(zhuǎn)軸及旋轉(zhuǎn)角度,根據(jù)所述旋轉(zhuǎn)軸及旋轉(zhuǎn)角度構(gòu)造一個(gè)四元數(shù); 歐拉角轉(zhuǎn)換單元,用于將所述四元數(shù)轉(zhuǎn)換得到歐拉角,根據(jù)所述歐拉角計(jì)算所述3D模型的旋轉(zhuǎn)矩陣。
8.如權(quán)利要求7所述的裝置,其特征在于,所述歐拉角轉(zhuǎn)換單元包括: 獨(dú)立旋轉(zhuǎn)矩陣獲取單元,用于將所述四元數(shù)轉(zhuǎn)換得到三個(gè)歐拉角,分別建立三個(gè)歐拉角的獨(dú)立旋轉(zhuǎn)矩陣; 旋轉(zhuǎn)矩陣計(jì)算單元,用于由所述三個(gè)獨(dú)立旋轉(zhuǎn)矩陣相乘構(gòu)成所述3D模型的旋轉(zhuǎn)矩陣。
9.如權(quán)利要求6所述的裝置,其特征在于,所述平移矩陣獲取單元包括: 平移量獲取單元,用于將所述目標(biāo)位置減去所述初始位置,獲得平移量; 平移矩陣計(jì)算單元,用于根據(jù)所述平移量構(gòu)建所述3D模型的平移矩陣。
10.如權(quán)利要求6所述的裝置,其特征在于,所述控制矩陣獲取單元包括: 控制矩陣計(jì)算單元,用于 將所述平移矩陣乘以所述旋轉(zhuǎn)矩陣,獲得所述3D模型的控制矩陣。
【文檔編號(hào)】G06T15/00GK103810746SQ201410004239
【公開日】2014年5月21日 申請日期:2014年1月3日 優(yōu)先權(quán)日:2014年1月3日
【發(fā)明者】鄒英強(qiáng), 張亞林, 邵詩強(qiáng) 申請人:Tcl集團(tuán)股份有限公司