杜麗美,李艷玲,侯慧玲(長(zhǎng)治學(xué)院計(jì)算機(jī)系,山西長(zhǎng)治,046011)
?
矩陣?yán)碚撛趫D形變換中的應(yīng)用
杜麗美,李艷玲,侯慧玲
(長(zhǎng)治學(xué)院計(jì)算機(jī)系,山西長(zhǎng)治,046011)
摘要:基于給定的各種三維物體模型,研究這些模型進(jìn)行平移、旋轉(zhuǎn)、縮放等變換的理論依據(jù)是什么,其中要借助線性代數(shù)中的矩陣?yán)碚搧?lái)進(jìn)行分析,為此矩陣?yán)碚撌茄芯看藛?wèn)題的數(shù)學(xué)基礎(chǔ)。
關(guān)鍵詞:平移;旋轉(zhuǎn);縮放;矩陣
線性代數(shù)是計(jì)算機(jī)專業(yè)的一門(mén)重要基礎(chǔ)課,它在計(jì)算機(jī)各學(xué)科中有著廣泛的應(yīng)用,比如在數(shù)據(jù)結(jié)構(gòu)、信息編碼、圖形變換、圖像讀取中。這里主要研究線性代數(shù)在圖形變換中的應(yīng)用。
在進(jìn)行三維重建后,會(huì)在計(jì)算機(jī)屏幕上展示出重建后的三維圖形,在此過(guò)程中要想將重建后的圖形放到屏幕的指定位置上并且將圖形有效的一面展現(xiàn)出來(lái),就需要對(duì)此圖形進(jìn)行各種變換,包括位置的變換和自身的旋轉(zhuǎn)變換,因此對(duì)圖形進(jìn)行變換是三維重建中非常重要的一個(gè)過(guò)程,主要包括圖形的平移、旋轉(zhuǎn)、縮放等變換。
在各種編程語(yǔ)言中會(huì)有直接的函數(shù)對(duì)圖形進(jìn)行各種變換,比如在Matlab、VC++、OpenGL等中都有相應(yīng)的變換函數(shù),本文主要研究這些變換函數(shù)是如何實(shí)現(xiàn)圖形的各種變換的,其中主要的理論依據(jù)就是線性代數(shù)中的矩陣?yán)碚摚灰业礁鞣N變換對(duì)應(yīng)的變換矩陣,然后將圖形的每個(gè)點(diǎn)坐標(biāo)都乘以相應(yīng)的變換矩陣,最終便得到了變換后的圖形。因此,圖形變換可以通過(guò)對(duì)表示圖形坐標(biāo)的矩陣進(jìn)行運(yùn)算來(lái)實(shí)現(xiàn),稱為矩陣變換法,式(1.1)為矩陣變換法的一般形式。
為了研究圖形的各種變換,必須掌握矩陣的基本運(yùn)算規(guī)則,下面將本文中主要用到的矩陣運(yùn)算介紹如下:
1.1 矩陣的定義
矩陣是由m×n個(gè)數(shù)按一定位置排列的一個(gè)整體,簡(jiǎn)稱m×n矩陣。如圖2-1所示,其中aij稱為矩陣A的第i行第j列元素。
圖2-1 矩陣的表示
1.2 矩陣的加法
設(shè)A=(aij)m×n,B=(bij)m×n為兩個(gè)具有相同行和列元素的矩陣,則A+B的結(jié)果如下:
1.3 矩陣的數(shù)乘
數(shù)λ與矩陣A的乘積,記為λA或Aλ,運(yùn)算結(jié)果如下:
1.4 矩陣的乘法
設(shè)A=(aij)是一個(gè)m×s矩陣,B=(bij)是一個(gè)s×n矩陣,要保證A矩陣的列數(shù)要等于B矩陣的行數(shù),則A與B的乘積是一個(gè)m×n矩陣C=(cij),其中矩陣C中的每一個(gè)元素cij的表達(dá)式為:
這里主要研究圖形的平移變換、旋轉(zhuǎn)變換和縮放變換,這些變換在各種編程軟件中都對(duì)應(yīng)著一條函數(shù),這里重點(diǎn)研究的是為什么調(diào)用相應(yīng)的函數(shù)就能夠?qū)崿F(xiàn)圖形的各種變換呢?(注:這里主要研究三維變換)
2.1 三維平移變換
三維平移變換:將空間點(diǎn)P(x,y,z)平移到新空間點(diǎn)P′(x',y',z'),如圖3-1所示,根據(jù)向量理論可以求出平移后點(diǎn)P′的坐標(biāo)計(jì)算公式為式(3.1),其中向量T()為點(diǎn)P在X、 Y和Z方向上平移的具體數(shù)值。公式(3.1)寫(xiě)成分量的形式為式(3.2),式(3.2)采用矩陣相乘的方式可以表達(dá)成式(3.3)的形式。
根據(jù)上述變換過(guò)程,由公式(3.3)可以得到一個(gè)4×4階的平移變換矩陣,此過(guò)程實(shí)現(xiàn)了一個(gè)三維點(diǎn)的平移過(guò)程,對(duì)于一個(gè)圖形的平移問(wèn)題和點(diǎn)的平移是一樣的,因?yàn)閳D形是由點(diǎn)組成的,將一個(gè)圖形在X、Y和Z軸上平移個(gè)分量,其實(shí)就是將這個(gè)圖形上的每一個(gè)點(diǎn)在X、Y和Z軸上平移個(gè)分量,因此對(duì)于給定圖形,只要將圖形上的每一個(gè)點(diǎn)都使用公式(3.3)變換后得到的點(diǎn)組成的圖形就是原圖形平移后的圖形。
圖3-1 平移變換
圖3-2 旋轉(zhuǎn)變換
圖3-3 縮放變換
2.2 三維旋轉(zhuǎn)變換
假如有點(diǎn)P(x,y,z)繞X軸逆時(shí)針旋轉(zhuǎn)θ角度后到達(dá)P’(x’,y’,z’),設(shè)點(diǎn)P與XOY平面的夾角為φ,P到原點(diǎn)的距離為r,則可得方程組(3.4),寫(xiě)成矩陣的形式為(3.5),(3.5)中的4×4階矩陣即為繞X軸的旋轉(zhuǎn)矩陣,其中θ為逆時(shí)針旋轉(zhuǎn)角度。
2.3 三維縮放變換
以上就是三種變換函數(shù)的本質(zhì),對(duì)于物體的復(fù)雜變換有時(shí)還需要將以上三種變換結(jié)合起來(lái)使用以達(dá)到最終目的。
本文主要介紹了在三維物體重建過(guò)程中常見(jiàn)到的圖形的平移、旋轉(zhuǎn)和縮放變換對(duì)應(yīng)函數(shù)的本質(zhì)意義是什么,這些變換在物體重建中的作用非常大,而且利用這些變換可以表現(xiàn)出真實(shí)的三維效果來(lái),比如說(shuō)可以使用鍵盤(pán)的上下左右箭頭或者是鼠標(biāo)來(lái)對(duì)屏幕上的物體進(jìn)行各種各樣的變換,這樣就可以看到物體背面、側(cè)面或者是頂部、底部等位置,真實(shí)的再現(xiàn)了物體的全貌,實(shí)現(xiàn)了3D效果。
可見(jiàn)數(shù)學(xué)理論在計(jì)算機(jī)領(lǐng)域中的作用是非常強(qiáng)大,在絕大多數(shù)的編程語(yǔ)言中都要借助數(shù)學(xué)的知識(shí)來(lái)解決問(wèn)題,為此數(shù)學(xué)是計(jì)算機(jī)學(xué)科的基礎(chǔ)學(xué)科,學(xué)會(huì)數(shù)學(xué)課程中的思想和方法可以提高學(xué)生的邏輯思維能力,也可為今后進(jìn)行計(jì)算機(jī)各專業(yè)課程的學(xué)習(xí)做鋪墊。
參考文獻(xiàn)
[1]李秀蘭,張紅玉.線性代數(shù)在數(shù)學(xué)建模中的應(yīng)用[J].大同大學(xué)學(xué)報(bào),2010,26(02)︰3-4.
[2]黃玉梅,彭濤.線性代數(shù)中矩陣的應(yīng)用典型案例[J].蘭州大學(xué)學(xué)報(bào),2009,45(F06)︰123-125
[3]李勝彪,黃世華.數(shù)學(xué)建模中矩陣的應(yīng)用[J].甘肅聯(lián)合大學(xué)學(xué)報(bào),2012,26(01)︰22-26
[4]李明.線性代數(shù)中矩陣的應(yīng)用研究[J].常州工學(xué)院學(xué)報(bào),2011,24(03)︰59-62
[5]周?chē)?guó)清.矩陣運(yùn)算及應(yīng)用[J].重慶職業(yè)技術(shù)學(xué)院學(xué)報(bào).重慶職業(yè)技術(shù)學(xué)院學(xué)報(bào),2005, 14(02)︰158-160.
[6]廖朵朵.OpenGL變換、光照、紋理、動(dòng)畫(huà)及特殊效果[J].微電腦世界,1996(11)︰151-153.
[7]高美真,黃嬌青.OpenGL中的圖形變換[J].焦作師范高等??茖W(xué)校學(xué)報(bào),2006,22(02)︰51-53
The application of matrix theory in graph transformation
Du Limei,Li Yanling,Hou Huiling
(Department of Computer Science Changzhi University,Changzhi Shanxi,046011)
Abstract:Based on a given 3D object model,to study the theoretical basis of translation,rotation, scaling and other transformations of the model,the matrix theory is used to analyze this problem,so in order to study this problem the matrix theory is the foundation.
Keywords:Translation;Rotation,Scale;Matrix
中圖分類號(hào):TP391.41
文獻(xiàn)標(biāo)志碼:A
基金項(xiàng)目:長(zhǎng)治學(xué)院校級(jí)科研課題(201419)
作者簡(jiǎn)介
杜麗美(1983-),女,山西大同人,碩士,講師,主要研究計(jì)算機(jī)圖形學(xué)、圖像處理等。