專利名稱:圖像處理裝置和圖像處理方法
技術領域:
本發(fā)明涉及圖像處理裝置和圖像處理方法。
背景技術:
在相關技術中,在虛擬三維空間中進行圖像轉(zhuǎn)換的圖像轉(zhuǎn)換裝置產(chǎn)生由諸如三角形的多邊形的組合所構(gòu)成的主體形狀模型,并進行將圖像附著到該模型的紋理貼圖以進行圖像轉(zhuǎn)換。圖像轉(zhuǎn)換裝置在例如日本專利公開No.2002-83316中被公開。
如上所述的這種圖像轉(zhuǎn)換裝置產(chǎn)生紋理地址用于紋理貼圖,其中紋理地址代表將被最終輸出到將在紋理貼圖中被附著的圖像上的轉(zhuǎn)換后圖像的每個像素在對應于該像素的多邊形單元中的位置。然后,為每個像素將紋理地址存儲到存儲器中。這時,圖像轉(zhuǎn)換裝置將紋理地址存儲到與對應于屏幕上紋理地址的像素位置相對應的存儲器的地址中。
參照圖1A、1B、2A和2B描述作為一組多邊形集的網(wǎng)格的實例。
圖1示出了方格形式的網(wǎng)格1。具體地,網(wǎng)格1由多個方形1C形成,其中每個方形由多邊形1A和另一多邊形1B形成,并且被設置在水平方向和垂直于水平方向的豎直方向上的格子中。網(wǎng)格1被用于在涉及固定方向上的轉(zhuǎn)換、諸如翻頁或搖動(page turn or wave)時的建模。例如,如果對圖1A中所示的網(wǎng)格1進行頁面翻轉(zhuǎn),則網(wǎng)格1顯示如圖1B中看到的這種形狀。
圖2A示出了同心網(wǎng)格2。具體地,網(wǎng)格2由多個四邊形2C形成,其中每個四邊形由多邊形2A和另一多邊形2B形成,并且被設置在徑向和基本垂直于徑向的圓周方向上。網(wǎng)格2被用于在涉及諸如波紋的同心轉(zhuǎn)換時的建模。例如,如果對圖2A所示的網(wǎng)格2執(zhí)行波紋,則網(wǎng)格2顯示如圖2B中看到的這種形狀。
圖像轉(zhuǎn)換裝置首先利用上述的網(wǎng)格1或網(wǎng)格2生成轉(zhuǎn)換后的模型,然后基于與形成模型的多邊形的頂點相關的數(shù)據(jù)(這種數(shù)據(jù)以下被稱作頂點數(shù)據(jù))執(zhí)行多邊形單元的頂點操作,諸如建模轉(zhuǎn)換,例如平行移動、放大或縮小或旋轉(zhuǎn)、剪貼、用于投影到屏幕上的透視投影轉(zhuǎn)換等。然后,圖像轉(zhuǎn)換裝置進行光柵化、深度測試、紋理貼圖等,以將作為頂點操作結(jié)果所得到的多邊形單元的頂點數(shù)據(jù)轉(zhuǎn)換成與像素相關的數(shù)據(jù)(這種數(shù)據(jù)以下被稱作像素數(shù)據(jù)),并輸出所得到的圖像作為轉(zhuǎn)換之后的圖像。
應該注意,每個頂點數(shù)據(jù)包括例如頂點單元數(shù)據(jù),諸如例如頂點在建模坐標系上的坐標值、紋理地址和寫系數(shù)(writing coeffcient)。同時,每個像素數(shù)據(jù)包括代表將屏幕上的像素與虛視點(virtual eyepoint)相互連接的直線穿過平面的點的z坐標的z數(shù)據(jù)、紋理地址、寫系數(shù)以及代表像素在輸出圖像上的位置的數(shù)據(jù)(該數(shù)據(jù)以下被稱作位置數(shù)據(jù))。
為了使圖像轉(zhuǎn)換裝置進行高精確度的轉(zhuǎn)換,必需使用小尺寸的多邊形。但是,這導致如下問題,即例如當緩存被用于將在深度測試時包括在像素數(shù)據(jù)中的z數(shù)據(jù)存儲到存儲器中時,緩存的命中率被劣化,從而導致對存儲器的存取的增加。
這一問題參照圖3到5描述。
應該注意,參照圖3到5給出的下列描述是在假設不執(zhí)行圖像轉(zhuǎn)換的情況下進行的。同時還假設,在圖3到5中,所使用的緩存被配置成使得包括在水平方向和豎直方向上并置的四個像素的4×4像素的z數(shù)據(jù)形成作為緩存的存儲單元的緩存塊。
圖3示出模型10,其使用由多邊形111、112、113、114、115、......、11n1、11n1+1、......、112n1、112n1+1、......、113n1......形成的方格。要注意,在沒有必要區(qū)分各個多邊形時,多邊形被總稱為多邊形11。
要注意,在圖3中,包括白色或空心圓標記和黑色或?qū)嵭膱A標記的圓形標記中的每一個代表一個像素,并且圓形標記的顏色的白色和黑色代表緩存塊之間的邊界。具體地,由白色圓形標記所代表的像素和由黑色圓形標記所代表的像素的z數(shù)據(jù)屬于彼此不同的緩存塊。此外,彼此不相鄰的白色圓形標記的像素的z數(shù)據(jù)或彼此不相鄰的黑色圓形標記的像素的z數(shù)據(jù)屬于互不相同的緩存塊。
例如,參照圖3,由方形12圍住的由黑色圓形標記所代表的151到154、15m1+1到15m1+4、152m1+1到152m1+4和153m1+1到153m1+4這16個像素;由方形13圍住的由白色圓形標記所代表的155到158、15m1+5到15m1+8、152m1+5到152m1+8和153m1+5到153m1+8這16個像素的z數(shù)據(jù)、以及由方形14圍住的由黑色圓形標記所代表的159到1512、15m1+9到15m1+12、152m1+9到152m1+12和153m1+9到153m1+12這16個像素的z數(shù)據(jù)屬于互不相同的緩存塊。要注意,在沒有必要區(qū)分像素時,像素在下文中被總稱為像素15。
圖像轉(zhuǎn)換裝置為構(gòu)成圖3的模型10的多邊形11以多邊形11被設置在其中的水平方向上的順序、即以由圖3中箭頭標記A所指示的方向的順序產(chǎn)生頂點數(shù)據(jù)。
具體地,圖像轉(zhuǎn)換裝置首先為沿著豎直方向上最上面一行并置的n1個多邊形111到11n1以多邊形111、112、113、114、115、......、11n1的順序、即以多邊形在水平方向上并置的順序產(chǎn)生多邊形11單元的頂點數(shù)據(jù)。然后,圖像轉(zhuǎn)換裝置為沿著豎直方向上上面第二行并置的n1個多邊形11n1+1到112n1以多邊形11n1+1、......、112n1的順序、即以多邊形在水平方向上并置的順序產(chǎn)生多邊形11單元的頂點數(shù)據(jù)。之后,圖像轉(zhuǎn)換裝置為沿著豎直方向上上面第三行并置的n1個多邊形112n1+1到113n1以多邊形112n1+1、......、113n1的順序、即以多邊形在水平方向上并置的順序產(chǎn)生多邊形11單元的頂點數(shù)據(jù)。之后,上面第四行以及隨后行中的多邊形11的頂點數(shù)據(jù)被類似地相繼產(chǎn)生。
此外,圖像轉(zhuǎn)換裝置為以上述方式所產(chǎn)生的頂點數(shù)據(jù)執(zhí)行頂點操作,并且以頂點數(shù)據(jù)被獲得的順序?qū)旤c數(shù)據(jù)進行光柵化以得到像素數(shù)據(jù)。
換句話說,圖像轉(zhuǎn)換裝置以多邊形111、112、113、114、115、......、11n1、11n1+1、......、112n1、112n1+1、......、113n1......的順序得到多邊形11的頂點數(shù)據(jù)的頂點操作結(jié)果,并以這一順序進行光柵化。因此,以分別對應于多邊形111、112、113、114、115、......、11n1、11n1+1、......、112n1、112n1+1、......、113n1......的像素151、152、153、154、155、......、15m1、15m1+1、......、152m1、152m1+1、......、153m1......的順序得到像素15的像素數(shù)據(jù)。
此外,圖像轉(zhuǎn)換裝置利用存儲在存儲器中的z數(shù)據(jù)以獲得圖像數(shù)據(jù)的順序?qū)ψ鳛楣鈻呕Y(jié)果而得到的圖像數(shù)據(jù)進行深度測試。
具體地,圖像轉(zhuǎn)換裝置首先從存儲器中讀出由作為緩存塊的方形12所包圍的像素151到154、15m1+1到15m1+4、152m1+1到152m1+4、153m1+1到153m1+4的z數(shù)據(jù)。然后,圖像轉(zhuǎn)換裝置連續(xù)地對像素151到154的z數(shù)據(jù)與作為光柵化結(jié)果而得到的像素151到154的像素數(shù)據(jù)中所包括的z數(shù)據(jù)按順序分別進行相互比較,從而進行深度測試。
然后,圖像轉(zhuǎn)換裝置首先從存儲器中讀出由作為緩存塊的方形13所包圍的像素155到158、15m1+5到15m1+8、152m1+5到152m1+8和153m1+5到153m1+8的z數(shù)據(jù)。然后,圖像轉(zhuǎn)換裝置相繼地對像素155到158的z數(shù)據(jù)與作為光柵化結(jié)果而得到的像素155到158的像素數(shù)據(jù)中所包括的z數(shù)據(jù)按順序分別進行相互比較,從而進行深度測試。之后,像素159到15m1的z數(shù)據(jù)被以類似的方式進行比較以進行深度測試。
這時,因為可以被存儲到緩存中的緩存塊的數(shù)量被限制,所以當要讀出新的緩存塊時,圖像轉(zhuǎn)換裝置從作為偶爾需要的最舊的緩存塊開始按順序清除緩存塊。
相應地,當圖像轉(zhuǎn)換裝置在像素159到15m1的像素數(shù)據(jù)的深度測試之后將要對像素15m1+1進行深度測試時,包括在當執(zhí)行像素151到154的深度測試時從存儲器中讀出作為緩存塊的方形12中的16個像素15的z數(shù)據(jù)通常被從緩存中清除。
因此,當要執(zhí)行像素15m1+1的深度測試時,圖像轉(zhuǎn)換裝置必需再次讀出包括在方形12中的16個像素15的緩存塊。換句話說,圖像轉(zhuǎn)換裝置必需將每個緩存塊讀出三次。
圖4示出了使用由多邊形21構(gòu)成的同心網(wǎng)格的模型20,圖5示出了使用由多邊形31構(gòu)成的同心網(wǎng)格的另一模型30。
在圖4中,圖像轉(zhuǎn)換裝置以多邊形21被安排的徑向上的順序產(chǎn)生頂點數(shù)據(jù)并進行構(gòu)成模型20的多邊形21的頂點操作和光柵化,從而得到像素數(shù)據(jù)。
具體地,圖像轉(zhuǎn)換裝置從位于模型20中心O附近的多邊形21開始按順序產(chǎn)生頂點數(shù)據(jù)并執(zhí)行在徑向B1上并置的多邊形21的頂點操作和光柵化。然后,圖像轉(zhuǎn)換裝置從位于中心O的多邊形21開始按順序產(chǎn)生頂點數(shù)據(jù)并執(zhí)行位于前面提到的多邊形21右側(cè)的那些多邊形21的頂點操作和光柵化。之后,多邊形21的頂點數(shù)據(jù)被產(chǎn)生,并且頂點操作和光柵化被類似地執(zhí)行。
因此,圖像轉(zhuǎn)換裝置必需在每次對與并置在投影方向B1和B2上的多邊形21相對應并且與像素相對應的像素數(shù)據(jù)進行深度測試時從存儲器中讀出例如被包括在作為緩存塊的方形22中的那些像素的z數(shù)據(jù)。
另一方面,在圖5中,圖像轉(zhuǎn)換裝置在設置在多邊形31上的同心圓上按順序產(chǎn)生頂點數(shù)據(jù)并執(zhí)行構(gòu)成圖5的模型30的多邊形31的頂點操作和光柵化,從而得到像素數(shù)據(jù)。
具體地,圖像轉(zhuǎn)換裝置以多邊形31被設置在其上的同心圓的順序產(chǎn)生頂點數(shù)據(jù)并執(zhí)行在圓周方向C1上同心并置的多邊形31的頂點操作和光柵化。然后,圖像轉(zhuǎn)換裝置以多邊形31在箭頭標記C2方向上并置的順序產(chǎn)生頂點數(shù)據(jù)并進行在多邊形31的外側(cè)相鄰并且以箭頭標記C2同心并置的多邊形31的頂點操作和光柵化。之后,多邊形31的頂點數(shù)據(jù)被產(chǎn)生,并且頂點操作和光柵化被類似地執(zhí)行。
因此,圖像轉(zhuǎn)換裝置在每次對與在對應于像素的圓周方向C1到C4上并置的多邊形31相對應的圖像數(shù)據(jù)進行深度測試時必需從存儲器中讀出例如包括在方形32中的像素的z數(shù)據(jù)。換句話說,圖像轉(zhuǎn)換裝置必需將每個緩存塊讀出四次。
發(fā)明內(nèi)容
如果在不同于與上述頂點數(shù)據(jù)的產(chǎn)生順序的方向相對應的方向上并置小的且與緩存塊的z數(shù)據(jù)相對應的多個多邊形,則通常由于清除的發(fā)生而必需將每個緩存塊讀出多次。換句話說,緩存的命中效率低。
因此,在多邊形尺寸被減小以實現(xiàn)高精確度的轉(zhuǎn)換的情況下,存儲器的帶寬必須被增加,從而導致功耗的增加或生產(chǎn)成本的增加。
因此,期望提供一種對存儲器的存取效率增加并且能夠高精確度且低功耗地轉(zhuǎn)換圖像的圖像處理裝置和圖像處理方法。
根據(jù)本發(fā)明的一個實施例,提供了一種圖像處理裝置,其包括產(chǎn)生部分,被配置用于將分別包括預定數(shù)量的在第一方向上并置的多邊形所構(gòu)成的多邊形組以這些多邊形組在基本上垂直于第一方向的第二方向上被并置的順序相繼確定為作為產(chǎn)生過程的對象的對象塊、并且生成多邊形單元的構(gòu)成對象塊的多邊形的頂點數(shù)據(jù);以及確定部分,被配置用于將與構(gòu)成相對于該對象塊的作為該對象塊前一對象塊的緊鄰的前一對象塊的那些多邊形中位于該緊鄰的前一對象塊的邊界部分中的那些多邊形相對應的圖像數(shù)據(jù)存儲到用于存儲數(shù)據(jù)塊單元的像素數(shù)據(jù)的存儲部分中,以確定構(gòu)成多邊形組并且在第一方向上并置的多邊形的數(shù)量。
確定部分可以基于構(gòu)成數(shù)據(jù)塊的像素數(shù)據(jù)的數(shù)量確定構(gòu)成多邊形組并且在第一方向上并置的多邊形的數(shù)量。在這種情況下,確定部分可以基于要被存儲到存儲部分中的數(shù)據(jù)塊的數(shù)量確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。此外,確定部分基于多邊形的長度確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。
圖像處理裝置還可以包括頂點數(shù)據(jù)變換部分,被配置用于對由產(chǎn)生部分所產(chǎn)生的頂點數(shù)據(jù)進行變換過程,使得由與頂點數(shù)據(jù)相對應的頂點所限定的多邊形可以被放大或縮小;以及像素數(shù)據(jù)變換部分,被配置用于進行將由頂點數(shù)據(jù)變換部分所變換的頂點數(shù)據(jù)變換成像素數(shù)據(jù)的變換過程。
在這種情況下,確定部分可以基于構(gòu)成數(shù)據(jù)塊的像素數(shù)據(jù)的數(shù)量確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。此外,確定部分可以基于要被存儲到存儲部分中的數(shù)據(jù)塊的數(shù)量確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。而且,確定部分可以基于多邊形的長度確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。
圖像處理裝置可以被配置成使得像素數(shù)據(jù)包括像素的z數(shù)據(jù),并且圖像處理裝置還包括轉(zhuǎn)換處理部分,被配置用于比較包括在由像素數(shù)據(jù)變換部分所變換的像素數(shù)據(jù)中的z數(shù)據(jù)與包括在與該像素數(shù)據(jù)相對應的像素的被存儲在存儲部分中的像素數(shù)據(jù)中的z數(shù)據(jù),以進行對由像素構(gòu)成的圖像進行轉(zhuǎn)換的轉(zhuǎn)換過程。
根據(jù)本發(fā)明的另一實施例,提供了一種圖像處理方法,包括產(chǎn)生步驟,將分別由預定數(shù)量的在第一方向上并置的多邊形構(gòu)成的多邊形組以這些多邊形組在基本上垂直于第一方向的第二方向上被并置的順序相繼確定為作為產(chǎn)生過程的對象的對象塊、并且生成多邊形單元的構(gòu)成對象塊的多邊形的頂點數(shù)據(jù);以及確定步驟,將與構(gòu)成相對于該對象塊的作為該對象塊前一對象塊的緊鄰的前一對象塊的那些多邊形中位于該緊鄰的前一對象塊的邊界部分中的那些多邊形相對應的圖像數(shù)據(jù)存儲到用于存儲數(shù)據(jù)塊單元的像素數(shù)據(jù)的存儲部分中,以確定構(gòu)成多邊形組并且在第一方向上并置的多邊形的數(shù)量。
在圖像處理裝置和圖像處理方法中,分別由預定數(shù)量的在第一方向上并置的多邊形所構(gòu)成的多邊形組被以這些多邊形組在基本上垂直于第一方向的第二方向上被并置的順序相繼確定為作為產(chǎn)生過程對象的對象塊。然后,生成多邊形單元的構(gòu)成對象塊的多邊形的頂點數(shù)據(jù)。然后,將與構(gòu)成相對于該對象塊的作為該對象塊前一對象塊的緊鄰的前一對象塊的那些多邊形中位于該緊鄰的前一對象塊的邊界部分中的那些多邊形相對應的圖像數(shù)據(jù)存儲到存儲部分中,以確定構(gòu)成多邊形組并且在第一方向上并置的多邊形的數(shù)量。
通過圖像處理裝置和圖像處理方法,圖像可以被轉(zhuǎn)換。
此外,通過圖像處理裝置和圖像處理方法,提高了對存儲部分的存取效率,并且因此,可以低功耗地實現(xiàn)具有高精確度的圖像轉(zhuǎn)換。
結(jié)合附圖,根據(jù)下面的描述和所附權利要求,本發(fā)明的上述和其它特征以及優(yōu)點將變得很清楚,在附圖中,相同的部分或單元由相同的標號指代。
圖1A和1B是示出方格形式的網(wǎng)格實例的示意圖;圖2A和2B是示出同心圓形式的網(wǎng)格實例的示意圖;圖3、4和5是圖示頂點數(shù)據(jù)的傳統(tǒng)產(chǎn)生順序的不同實例的示意圖;圖6是示出本發(fā)明被應用到其中的圖像處理系統(tǒng)的配置實例的框圖;圖7是圖示圖像轉(zhuǎn)換過程的流程圖;圖8是示出在圖6中示出的外部存儲器的具體配置和地址產(chǎn)生過程實例的框圖;圖9是圖示地址產(chǎn)生過程的流程圖;圖10、11和12是圖示圖像處理系統(tǒng)產(chǎn)生頂點數(shù)據(jù)的不同順序的示意圖;圖13是圖示圖像處理系統(tǒng)的輸出過程的流程圖;圖14是示出圖像處理裝置的配置實例的框圖;以及圖15是示出記錄和再現(xiàn)裝置的配置實例的框圖。
具體實施例方式
圖6示出了本發(fā)明被應用到其中的圖像處理系統(tǒng)的配置實例。
現(xiàn)在參照圖6,所示的圖像處理系統(tǒng)51包括數(shù)據(jù)圖像特殊效果裝置(數(shù)字多效裝置Digital Multi Effects apparatus)(以下簡稱為DME)61、外部存儲器62和另一外部存儲器63。圖像處理系統(tǒng)51進行作為被輸入到其中的場單元圖像的輸入圖像的縮小、放大、類型改變、旋轉(zhuǎn)、向左或向右翻轉(zhuǎn)、反轉(zhuǎn)或移動,或者對輸入圖像應用特殊效果以轉(zhuǎn)換輸入圖像,并輸出所得到的幀單元圖像。特殊效果可以是例如在水平方向或豎直方向上的鑲嵌效果(mosaic effect)、均一效果(postalization)、負/正翻轉(zhuǎn)效果或散焦效果。
應該注意,輸入圖像由像素的代表亮度信號、色差信號和用于鍵控的鍵(key)信號的像素值形成。此外,圖像處理系統(tǒng)51的部件根據(jù)存儲在外部存儲器63中的程序執(zhí)行各種過程。
DME 61由例如IC(集成電路)、LST等形成。DME 61包括預處理部分71、水平濾波器72、豎直濾波器73、IP(隔行逐行InterlaceProgressive)變換部分74、RAM(隨機存取存儲器)模塊75、插補(interpolation)操作部分76、添加部分77、存儲控制部分78和地址產(chǎn)生部分79。
DME 61接收作為在紋理貼圖時要被應用的圖像的輸入圖像以及被提供給其的定時信號。輸入圖像被提供給預處理部分71。定時信號被提供給DME 61的部件,使得這些部件可以響應于定時信號而執(zhí)行相應過程。
預處理部分71響應于從地址產(chǎn)生部分79提供給其的指令信號對輸入圖像應用諸如鑲嵌、均一和正/負翻轉(zhuǎn)效果的特殊效果。具體地,預處理部分71對像素單元中形成輸入圖像的像素中預定的一些像素進行濾波過程,以對輸入圖像應用鑲嵌效果。此外,預處理部分71改變形成輸入圖像的像素的像素值的等級數(shù),以對輸入圖像應用均一化。而且,預處理部分71使形成輸入圖像的像素的像素值的等級反轉(zhuǎn),從而對輸入圖像應用正/負翻轉(zhuǎn)。預處理部分71將通過應用特殊效果而得到的場單元圖像提供給水平濾波器72。
水平濾波器72接收從地址產(chǎn)生部分79提供給其的水平方向上的縮小比例。然后,為了消除在圖像被縮小時所出現(xiàn)的水平方向上的重疊部分,水平濾波器72在水平方向上對從預處理部分71所接收的場單元圖像執(zhí)行與所接收的縮小比例相對應的濾波過程。此外,水平濾波器72響應于從地址產(chǎn)生部分79提供給其的指令信號對來自預處理部分71的場單元圖像在水平方向上應用散焦作為特殊效果。水平濾波器72將通過在水平方向上應用濾波過程或散焦過程而得到的場單元圖像通過存儲控制部分78提供給外部存儲器62,使得圖像被存儲到外部存儲器62中。
豎直濾波器73接收從地址產(chǎn)生部分79提供給其的豎直方向上的縮小比例。此外,為了消除在圖像被縮小時所出現(xiàn)的豎直方向上的重疊部分,豎直濾波器73在豎直方向上對從存儲控制部分78提供給其的并在豎直方向上從外部存儲器62中讀出的場單元圖像進行與所接收的縮小比例相對應的濾波過程。此外,豎直濾波器73響應于從地址產(chǎn)生部分79提供給其的指令信號對來自存儲控制部分71的場單元圖像在豎直方向上應用散焦作為特殊效果。豎直濾波器73將通過在豎直方向上應用濾波過程或散焦過程而得到的場單元圖像提供給IP變換部分74。豎直濾波器73還通過存儲控制部分78將圖像提供給外部存儲器62,使得圖像被存儲到外部存儲器62中。
IP變換部分74通過參照另一位于該圖像緊鄰前面的場單元圖像以及該緊鄰的前一圖像前面的另一場單元圖像來對從豎直濾波器73提供給其的場單元圖像(隔行圖像interlaced image)進行IP變換。這兩個前面的圖像被從存儲控制部分78提供到IP變換部分74。IP變換部分74將通過IP變換而得到的幀單元圖像(逐行圖像progressiveimage)提供給RAM模塊75。
RAM模塊75存儲來自IP變換部分74的幀單元圖像。此外,RAM模塊75基于從地址產(chǎn)生部分79所提供的紋理地址的整數(shù)部分、即輸入圖像上作為插補操作部分76的插補操作的對象的那些像素(以下稱作插補像素)的坐標的水平方向上坐標值的整數(shù)部分和豎直方向上坐標值的整數(shù)部分來進行讀出操作。RAM模塊75從構(gòu)成已被存儲在RAM模塊75中的幀單元圖像的像素的像素值中讀出將被用于插補像素的插補的不同像素的多個像素值作為像素值組。例如,RAM模塊75讀出插補像素周圍的不同像素的64個像素值作為像素值組。RAM模塊75將所讀出的像素值組提供給插補操作部分76。
應該注意,對于輸入圖像上的坐標系,構(gòu)成輸入圖像的像素在水平方向和豎直方向上的坐標值都是整數(shù)值。
插補操作部分76基于紋理地址的小數(shù)部分-即從地址產(chǎn)生部分79所提供的輸入圖像上插補像素的坐標的水平和豎直方向上的坐標值的小數(shù)部分-以及從RAM模塊75所提供的像素值組執(zhí)行插補操作,以對插補像素的像素值進行插補來執(zhí)行紋理貼圖。插補操作部分76通過存儲控制部分78將插補后的幀單元圖像提供給外部存儲器62,以被存儲到外部存儲器62中。
添加部分77利用寫系數(shù)為從地址產(chǎn)生部分79提供給其的每個插補像素應用濃淡處理(shading)。添加部分77輸出添加后的圖像作為轉(zhuǎn)換后的圖像。
存儲控制部分78控制到和從外部存儲器62的寫入和讀出。具體地,存儲控制部分78將用于控制寫入到外部存儲器62的控制信號提供給外部存儲器62,并且將從水平濾波器72、豎直濾波器73或插補操作部分76所提供的圖像提供給外部存儲器62,使得圖像被寫入外部存儲器62中。
此外,存儲控制部分78將用于控制從外部存儲器62讀出圖像的控制信號提供給外部存儲器62以控制從外部存儲器62的讀出。而且,存儲控制部分78提供從外部存儲器62所讀出的圖像作為對豎直濾波器73、IP變換部分74和添加部分77的控制的結(jié)果。
地址產(chǎn)生部分79響應于來自用戶的轉(zhuǎn)換輸入圖像的指令而控制圖像處理系統(tǒng)51的部件。此外,地址產(chǎn)生部分79控制到和從外部存儲器63的寫入以及讀出。
具體地,地址產(chǎn)生部分79將處理的中間結(jié)果或最終結(jié)果與用于控制寫入到外部存儲器63以被存儲到外部存儲器63中的控制信號一起提供給外部存儲器63,并且使得處理的中間或最終結(jié)果被寫入到外部存儲器63中。此外,地址產(chǎn)生部分79將用于控制從外部存儲器63讀出處理的中間結(jié)果或最終結(jié)果的控制信號提供給外部存儲器63,以控制從外部存儲器63的讀出,從而從外部存儲器63讀出處理的中間或最終結(jié)果。地址產(chǎn)生部分79的細節(jié)在下面參照圖8描述。
現(xiàn)在,參照圖7描述由圖6的圖像處理系統(tǒng)51所執(zhí)行的用以轉(zhuǎn)換輸入圖像的圖像轉(zhuǎn)換過程。例如在將輸入圖像輸入到圖像處理系統(tǒng)51中時開始圖像轉(zhuǎn)換過程。
在步驟S1,預處理部分71響應于從地址產(chǎn)生部分79提供給其的指令信號而對輸入圖像執(zhí)行諸如鑲嵌、均一化或正/負翻轉(zhuǎn)的過程。然后,預處理部分71將通過該過程所得到的場單元圖像提供給水平濾波器72,之后,過程前進到步驟S2。要注意,如果沒有從地址產(chǎn)生部分79提供指令信號,則處理跳過步驟S1并前進到步驟S2。
在步驟S2,水平濾波器72響應于從地址產(chǎn)生部分79提供給其的水平方向上的縮小比例而對來自預處理部分71的場單元圖像執(zhí)行對應于水平方向上縮小比例的濾波過程。此外,水平濾波器72響應于從地址產(chǎn)生部分79所提供的指令信號而對圖像執(zhí)行水平方向上的散焦過程作為用于特殊效果。然后,水平濾波器72將通過對圖像執(zhí)行水平方向上的濾波過程和/或散焦過程而得到的場單元圖像提供給存儲控制部分78。
在步驟S2的過程之后,處理前進到步驟S3,在該步驟,存儲控制部分78將從水平濾波器72提供給其的場單元圖像連同用于控制寫入到外部存儲器62的控制信號一起提供給外部存儲器62,使得圖像可以被存儲到外部存儲器62中。在步驟S3的過程之后,處理前進到步驟S4,在該步驟,存儲控制部分78將用于控制從外部存儲器62讀出圖像的控制信號提供給外部存儲器62。因此,在步驟S3被存儲的場單元圖像在豎直方向上被從外部存儲器62中讀出,并被提供到豎直濾波器73。
在步驟S4的過程之后,處理前進到步驟S5,在該步驟,豎直濾波器73響應于從地址產(chǎn)生部分79所提供的豎直方向上的縮小比例而對從存儲控制部分78所提供的場單元圖像執(zhí)行對應于豎直方向上縮小比例的濾波過程。此外,豎直濾波器73響應于從地址產(chǎn)生部分79所提供的指令信號而對場單元圖像執(zhí)行豎直方向上的散焦過程作為特殊效果。然后,豎直濾波器73將通過濾波過程和/或散焦過程所得到的場單元圖像提供給IP變換部分74,并且還提供給存儲控制部分78。
在步驟S5的過程之后,處理前進到步驟S6,在該步驟,存儲控制部分78將從存儲控制部分78所提供的場單元圖像連同用于控制寫入到外部存儲器62的控制信號一起提供給外部存儲器62,使得圖像被存儲到外部存儲器62中。在步驟S6的過程之后,處理前進到步驟S7。在步驟S7,存儲控制部分78將用于控制從外部存儲器62讀出圖像的控制信號提供給外部存儲器62,以從外部存儲器62讀出位于該場單元圖像緊鄰前面的且在緊鄰的前一操作循環(huán)中被步驟S6的過程存儲的場單元圖像以及緊鄰的前一場單元圖像,并將讀出的圖像提供給IP變換部分74。
在步驟S7的過程之后,處理前進到步驟S8,在該步驟,IP轉(zhuǎn)換部分74參照在步驟S7從存儲控制部分78提供給它的兩個圖像,以對在步驟S5從豎直濾波器73所提供的場單元圖像進行IP變換。然后,IP變換部分74將通過IP變換所得到的幀單元圖像提供給RAM模塊75。
在步驟S9,RAM模塊75存儲來自IP變換部分74的幀單元圖像,之后,處理前進到步驟S10。
在步驟S10,RAM模塊75基于從地址產(chǎn)生部分79所提供的紋理地址的整數(shù)部分,從構(gòu)成已被存儲的幀單元圖像的像素的像素值中讀出將被用于插補像素的插補的不同像素的多個像素值作為像素值組。像素值組被提供給插補操作部分76。
在步驟S10的過程之后,處理前進到步驟S11,在該步驟,插補操作部分76基于從地址產(chǎn)生部分79所提供的紋理地址的小數(shù)部分以及從RAM模塊75所提供的像素值組進行插補操作,以對插補像素的像素值進行插補。然后,插補操作部分76將插補后的圖像提供給存儲控制部分78。
在步驟S11的過程之后,處理前進到步驟S12,在該步驟,存儲控制部分78將來自插補操作部分76的圖像連同用于控制到外部存儲器62的寫入的控制信號一起提供給外部存儲器62,使得圖像被存儲到外部存儲器62中。在步驟S12的過程之后,處理前進到步驟S13,在該步驟,存儲控制部分78將用于控制從外部存儲器62讀出圖像的控制信號提供給外部存儲器62,以讀出在步驟S12所存儲的圖像。之后,處理前進到步驟S14。
在步驟S14,添加部分77利用從地址產(chǎn)生部分79提供給它的寫系數(shù)給圖像添加濃淡處理。然后,添加部分77輸出添加后的圖像作為變換后的圖像,從而結(jié)束處理。
要注意,前面描述的圖7的圖像轉(zhuǎn)換過程的步驟S1到S9的過程在插補前的像素單元中執(zhí)行,而步驟S10到S14的過程在插補像素單元中執(zhí)行。
圖8示出了圖6所示外部存儲器63和地址產(chǎn)生部分79的詳細配置實例。
現(xiàn)在參照圖8,所示的外部存儲器63包括存儲器101、z數(shù)據(jù)存儲器102、另一z數(shù)據(jù)存儲器103和地址存儲器104。
同時,地址產(chǎn)生部分79包括CPU(中央處理單元)121、頂點操作部分122、DDA(數(shù)字微分分析器)設置部分123、DDA 124和深度測試部分125、z數(shù)據(jù)緩存126、切換部分127、地址緩存128、存儲控制部分129和輸出部分130。
CPU 121根據(jù)存儲在外部存儲器63的存儲器101中的程序控制圖像處理系統(tǒng)51的部件。
例如,CPU 121響應于用戶的指令而將指示鑲嵌效果、均一效果或負/正翻轉(zhuǎn)效果的指令信號提供給預處理部分71。此外,CPU 121響應于用戶的指令將指示水平方向散焦的指令信號提供給水平濾波器72,或者將指示豎直方向散焦的指令信號提供給豎直濾波器73。
而且,CPU 121響應于用戶的指令將水平方向上的縮小比例提供給水平濾波器72,并將豎直方向上的縮小比例提供給豎直濾波器73。此外,CPU 121響應于用戶的建模操作而在多邊形單元中以預定順序產(chǎn)生關于構(gòu)成與轉(zhuǎn)換后的幀單元圖像相對應的模型的多邊形的頂點的數(shù)據(jù)(以下稱作頂點數(shù)據(jù))。然后,CPU 121將所產(chǎn)生的頂點數(shù)據(jù)提供給頂點操作部分122。下面參照圖10到13描述頂點數(shù)據(jù)的產(chǎn)生順序。
此外,CPU 121控制到和從存儲器101的寫入以及讀出。例如,CPU 121將處理的中間結(jié)果或最終結(jié)果連同用于控制到存儲器101的寫入的控制信號一起提供給存儲器101,使得處理的中間結(jié)果或最終結(jié)果被存儲到存儲器101中。此外,CPU 121將用于控制從存儲器101讀出的控制信號提供給存儲器101,以從存儲器101中讀出處理的中間結(jié)果或最終結(jié)果,并執(zhí)行如上所述的各種過程。
頂點操作部分122基于從CPU 121所提供的頂點數(shù)據(jù)而在多邊形單元中執(zhí)行頂點操作,并將頂點操作在多邊形單元中所獲得的頂點數(shù)據(jù)提供給DDA設置部分123。DDA設置部分123基于來自頂點操作部分122的多邊形單元的頂點數(shù)據(jù)計算DDA 124所必需的參數(shù),諸如由屏幕上位置的改變而引起的紋理地址的變化。DDA設置部分123將多邊形單元的頂點數(shù)據(jù)和參數(shù)提供給DDA 124。
DDA 124基于從DDA設置部分123所提供的參數(shù)將多邊形單元的頂點數(shù)據(jù)變換成像素數(shù)據(jù)。DDA 124將變換所得到的像素數(shù)據(jù)提供給深度測試部分125。深度測試部分125使用來自DDA 124的像素數(shù)據(jù)和存儲在z數(shù)據(jù)緩存126中的對應于該像素數(shù)據(jù)的像素的像素數(shù)據(jù),以執(zhí)行陰影面擦除過程。
具體地,深度測試部分125向z數(shù)據(jù)緩存126發(fā)出讀出與包括在來自DDA 124的像素數(shù)據(jù)中的位置數(shù)據(jù)相關聯(lián)的像素單元的地址(以下稱作z數(shù)據(jù)像素單元地址)相關聯(lián)存儲的z數(shù)據(jù)的請求。然后,深度測試部分125從z數(shù)據(jù)緩存126獲得響應于該請求所讀出的z數(shù)據(jù)。
然后,深度測試部分125比較該z數(shù)據(jù)與包括在來自DDA 124的像素數(shù)據(jù)中的z數(shù)據(jù),以執(zhí)行判斷與來自DDA 124的像素數(shù)據(jù)相對應的多邊形(以下被適當?shù)胤Q作新多邊形)相對于與已被存儲在z數(shù)據(jù)緩存126中的z數(shù)據(jù)相對應的多邊形(以下被適當?shù)胤Q作舊多邊形)是否位于虛視點側(cè)的深度測試。
深度測試部分125響應于深度測試的結(jié)果,將包括在相對于舊多邊形位于虛視點側(cè)的新多邊形的像素數(shù)據(jù)中的寫系數(shù)和z數(shù)據(jù)連同與該像素元素相對應的z數(shù)據(jù)像素單元地址一起提供給z數(shù)據(jù)緩存126。因此,z數(shù)據(jù)緩存126用新多邊形的z數(shù)據(jù)和寫系數(shù)來更新與來自深度測試部分125的z數(shù)據(jù)像素單元地址相關聯(lián)存儲的舊多邊形的z數(shù)據(jù)和寫系數(shù)。
此外,深度測試部分125將包括在相對于舊多邊形位于虛視點側(cè)的新多邊形的像素數(shù)據(jù)中的紋理地址連同與包括在像素數(shù)據(jù)中的位置數(shù)據(jù)相對應的像素單元地址(該地址以下稱作紋理像素單元地址)一起輸出到地址緩存128。
z數(shù)據(jù)緩存126將緩存塊單元的z數(shù)據(jù)和寫數(shù)據(jù)作為與存儲z數(shù)據(jù)和寫系數(shù)的z數(shù)據(jù)存儲器102或103中緩存塊單元的地址(以下被稱為z數(shù)據(jù)緩存塊單元地址)相關聯(lián)的緩存塊臨時存儲到緩存塊區(qū)域中。
而且,z數(shù)據(jù)緩存126基于從深度測試部分125所提供的z數(shù)據(jù)像素單元地址在已被存儲在其中的z數(shù)據(jù)中搜索與深度測試部分125要求讀出的z數(shù)據(jù)像素單元地址相對應的z數(shù)據(jù)。具體地,z數(shù)據(jù)緩存126搜索包括與來自深度測試部分125的z數(shù)據(jù)像素單元地址相對應的z數(shù)據(jù)緩存塊單元地址相關聯(lián)存儲的請求的目標的z數(shù)據(jù)的緩存塊,并將緩存塊中的請求的目標的z數(shù)據(jù)確定為搜索結(jié)果。
如果搜索到請求目標的z數(shù)據(jù),則z數(shù)據(jù)緩存126將搜索結(jié)果的z數(shù)據(jù)和相應的寫系數(shù)提供給深度測試部分125。如果沒有搜索到請求目標的z數(shù)據(jù),即如果沒有存儲包括請求目標的z數(shù)據(jù)的緩存塊,則z數(shù)據(jù)緩存126如下發(fā)送。z數(shù)據(jù)緩存126將與從深度測試部分125所提供的z數(shù)據(jù)像素單元地址相對應的z數(shù)據(jù)緩存塊單元地址連同z數(shù)據(jù)一起發(fā)送到切換部分127,以請求切換部分127讀出請求對象的z數(shù)據(jù)和相應的寫系數(shù)。因此,z數(shù)據(jù)和寫系數(shù)在來自z數(shù)據(jù)存儲器102或103的塊單元中被讀出。
z數(shù)據(jù)緩存126還將響應于請求而從切換部分127所提供的緩存塊單元的z數(shù)據(jù)和寫系數(shù)暫時作為緩存塊而與在請求時被發(fā)送到切換部分127的z數(shù)據(jù)緩存塊單元地址相關聯(lián)地存儲到緩存塊區(qū)域中。然后,z數(shù)據(jù)緩存126將z數(shù)據(jù)提供到深度測試部分125。
此外,z數(shù)據(jù)緩存126在其沒有緩存塊區(qū)域可以存儲時執(zhí)行緩存塊的清除。具體地,z數(shù)據(jù)緩存126決定作為清除對象的緩存塊,讀出該緩存塊和與該緩存塊相關聯(lián)的z數(shù)據(jù)緩存塊單元地址,并將緩存塊和z數(shù)據(jù)緩存塊單元地址連同清除請求一起提供給切換部分127。
切換部分127控制到和從z數(shù)據(jù)存儲器102和103的寫入和讀出。具體地,切換部分127響應于輸出部分130或z數(shù)據(jù)緩存126的請求而將待控制的z數(shù)據(jù)存儲器從外部存儲器63的z數(shù)據(jù)存儲器102和103中的一個切換到另一個。例如,切換部分127響應于來自z數(shù)據(jù)緩存126的讀出請求而從z數(shù)據(jù)存儲器102和103的一個中讀出存儲在來自z數(shù)據(jù)緩存126的z數(shù)據(jù)緩存塊單元地址中的緩存塊單元的z數(shù)據(jù)和寫系數(shù)。切換部分127將所讀出的z數(shù)據(jù)和寫系數(shù)提供給z數(shù)據(jù)緩存126。
此外,切換部分127響應于來自z數(shù)據(jù)緩存126的清除請求而將被提供給它的z數(shù)據(jù)和寫系數(shù)作為緩存塊存儲到從z數(shù)據(jù)存儲器102和103之一中z數(shù)據(jù)緩存126所提供的z數(shù)據(jù)緩存塊單元地址中。
此外,切換部分127響應于來自輸出部分130的請求而從z數(shù)據(jù)存儲器102和103中另一個中讀出z數(shù)據(jù)和寫系數(shù),并將z數(shù)據(jù)和寫系數(shù)提供給輸出部分130。之后,切換部分127清除存儲在z數(shù)據(jù)存儲器102和103中另一個的z數(shù)據(jù)和寫系數(shù)。
如上所述,z數(shù)據(jù)存儲器102和z數(shù)據(jù)存儲器103之一存儲用于深度測試部分125比較的z數(shù)據(jù)和相應的寫系數(shù),而z數(shù)據(jù)存儲器102和103中的另一個存儲通過輸出部分130所輸出的深度測試結(jié)束后的z數(shù)據(jù)和寫系數(shù)。
換句話說,切換部分127在每次與一個幀的模型相對應的像素數(shù)據(jù)被提供給深度測試部分125時都進行切換。
地址緩存128將緩存塊單元的紋理地址作為緩存塊而與存儲緩存塊的地址存儲器104中的緩存塊單元的地址(以下稱作紋理緩存塊單元地址)相關聯(lián)地暫時存儲在緩存塊區(qū)域中。地址緩存128基于來自深度測試部分125的紋理像素單元地址,將包括與紋理像素單元地址一起所輸出的紋理地址的緩存塊單元的紋理地址作為緩存塊而與存儲緩存塊的地址存儲器104中緩存塊單元的地址(以下稱作紋理緩存塊單元地址)相關聯(lián)地暫時存儲在緩存塊區(qū)域中。
此外,地址緩存128基于從深度測試部分125所提供的紋理像素單元地址而從已被存儲在其中的紋理地址中搜索與紋理像素單元地址相對應的紋理。具體地,地址緩存128搜索包括與對應于紋理像素單元地址的紋理緩存塊單元地址相關聯(lián)地存儲的對應于來自深度測試部分125的紋理像素單元地址的紋理地址的緩存塊。然后,地址緩存128將這樣搜索到的緩存塊確定為搜索結(jié)果。
如果搜索到紋理地址,則地址緩存128將搜索結(jié)果的紋理地址更新為來自深度測試部分125的紋理地址。如果沒有搜索到紋理地址,則地址緩存128將與從深度測試部分125所提供的紋理像素單元地址相對應的紋理緩存塊單元地址連同紋理一起發(fā)送到存儲控制部分129,從而請求存儲控制部分129讀出與紋理像素單元地址相對應的紋理地址。因此,紋理緩存地址在緩存塊單元中被從地址存儲器104中讀出。
此外,地址緩存128將響應于請求而從存儲控制部分129提供給它的緩存塊單元中的紋理地址作為緩存塊而與在請求時被發(fā)送到存儲控制部分129的紋理緩存塊單元地址相關聯(lián)地暫時存儲到緩存塊區(qū)域中。
此外,當?shù)刂肪彺?28沒有緩存塊區(qū)域能夠存儲時,地址緩存128執(zhí)行緩存塊的清除。具體地,地址緩存128確定清除對象的緩存塊,讀出該緩存塊和與該緩存塊相關聯(lián)的紋理緩存塊單元地址等,并將這樣讀出的紋理緩存塊單元地址等連同清除請求一起提供給存儲控制部分129。
存儲控制部分129控制可以由SDRAM等構(gòu)成的地址存儲器104的寫入和讀出。具體地,存儲控制部分129響應于來自地址緩存128的讀出請求而從地址存儲器中讀出被存儲在來自地址緩存128的紋理緩存塊單元地址的緩存塊單元的紋理地址。然后,存儲控制部分129將這樣讀出的紋理地址提供給地址緩存128。
此外,存儲控制部分129響應于來自地址緩存128的請求,將從緩存塊單元中地址緩存128作為緩存塊而提供的緩存塊單元的紋理地址存儲到連同緩存塊一起提供的地址存儲器104的紋理緩存塊單元地址中,以校正被存儲在地址存儲器104中的紋理地址。
此外,存儲控制部分129響應于來自輸出部分130的請求而從地址存儲器104讀出紋理地址,并將所讀出的紋理地址提供給輸出部分130。之后,存儲控制部分129清除存儲在地址存儲器104中的被讀出紋理地址。
輸出部分130向存儲控制部分129發(fā)出以像素順序讀出從添加部分77所輸出的轉(zhuǎn)換后像素的z數(shù)據(jù)和寫系數(shù)的請求,并發(fā)出讀出紋理地址的請求。輸出部分130對于從響應于請求而從切換部分127提供給它的z數(shù)據(jù)和寫系數(shù),將z數(shù)據(jù)輸出到另一DME等,并將寫系數(shù)輸出到添加部分77。此外,輸出部分130將響應于請求而從存儲控制部分129提供給它的紋理地址的整數(shù)部分提供給RAM模塊75,并將紋理地址的小數(shù)部分提供給插補操作部分76。
現(xiàn)在,參照圖9描述通過地址產(chǎn)生部分79的產(chǎn)生紋理地址的地址產(chǎn)生過程。該地址產(chǎn)生過程例如在用戶執(zhí)行建模操作時開始。要注意,為與轉(zhuǎn)換后的幀單元圖像相對應的每一個模型執(zhí)行圖9的地址產(chǎn)生過程。
在步驟S31,CPU 121響應于用戶的建模操作而以預定順序產(chǎn)生構(gòu)成與轉(zhuǎn)換后圖像相對應的模型的多邊形的頂點數(shù)據(jù),并將所產(chǎn)生的頂點數(shù)據(jù)提供給頂點操作部分122。
在步驟S31的過程之后,處理前進到步驟S32,在該步驟,頂點操作部分122基于從CPU 121所提供的頂點數(shù)據(jù)對每個多邊形進行頂點操作。頂點操作部分122將通過頂點操作所得到的多邊形單元的頂點數(shù)據(jù)提供給DDA設置部分123。
在步驟S32的過程之后,處理前進到步驟S33,在該步驟S33,DDA設置部分123基于來自頂點操作部分122的多邊形單元的頂點數(shù)據(jù)計算DDA 124所必需的參數(shù)。DDA設置部分123將多邊形單元的頂點數(shù)據(jù)和參數(shù)提供給DDA 124。
在步驟S33的過程之后,處理前進到步驟S34,在該步驟,DDA124基于從DDA設置部分123所提供的參數(shù)將多邊形單元的頂點數(shù)據(jù)變換成像素數(shù)據(jù),并將像素數(shù)據(jù)提供給深度測試部分125。
在步驟S34的過程之后,過程前進到步驟S35,在該步驟,深度測試部分125向z數(shù)據(jù)緩存126發(fā)出讀出與來自DDA 124的像素數(shù)據(jù)相對應的像素的z數(shù)據(jù)的請求。然后,深度測試部分125獲得響應于請求所讀出的z數(shù)據(jù)。
在步驟S35的過程之后,過程前進到步驟S36,在該步驟,深度測試部分125比較在步驟S35所獲得的z數(shù)據(jù)與包括在來自DDA 124的像素數(shù)據(jù)中的z數(shù)據(jù),以執(zhí)行判斷新多邊形相對于舊多邊形是否位于虛視點側(cè)的深度測試。
在步驟S36的過程之后,過程前進到步驟S37,在該步驟,深度測試部分125判斷新多邊形相對于舊多邊形是否位于虛視點側(cè)。
如果在步驟S37判斷新多邊形相對于舊多邊形位于虛視點側(cè),則深度測試部分125將包括在與新多邊形相對應的像素數(shù)據(jù)中的z數(shù)據(jù)和寫系數(shù)以及z數(shù)據(jù)像素單元地址提供給z數(shù)據(jù)緩存126。此外,深度測試部分125將紋理地址和紋理像素單元地址提供給地址緩存128。
之后,在步驟S38,z數(shù)據(jù)緩存126與z數(shù)據(jù)像素單元地址相關聯(lián)地存儲來自深度測試部分125的z數(shù)據(jù)和寫系數(shù),以用新多邊形的z數(shù)據(jù)和寫系數(shù)更新舊多邊形的z數(shù)據(jù)和寫系數(shù)。
在步驟S38的過程之后,過程前進到步驟S39,在該步驟,地址緩存128與紋理像素單元地址相關聯(lián)地存儲紋理地址。
當在步驟S37判斷新多邊形相對于舊多邊形不位于虛視點側(cè)時,即,當舊多邊形相對于新多邊形位于虛視點側(cè)時,或者在步驟S39的過程之后,過程前進到步驟S40。在步驟S40,深度測試部分125判斷是否已經(jīng)為所有與一幀的模型相對應且從DDA 124所提供的z數(shù)據(jù)執(zhí)行了深度測試。如果判斷還沒有為所有z數(shù)據(jù)執(zhí)行深度測試,則過程返回到步驟S35,使得類似地執(zhí)行從步驟S35開始的步驟的過程。
另一方面,如果在步驟S40判斷已經(jīng)為所有z數(shù)據(jù)執(zhí)行了深度測試,則過程前進到步驟S41,在該步驟,z數(shù)據(jù)緩存126和地址緩存128執(zhí)行緩存塊的清除。
具體地,z數(shù)據(jù)緩存126通過切換部分127將存儲在緩存塊區(qū)域中的緩存塊和與緩存塊相關聯(lián)地存儲的z數(shù)據(jù)緩存塊單元地址提供給z數(shù)據(jù)存儲器102或103。
此外,地址緩存128將存儲在緩存塊區(qū)域中的緩存塊和與緩存塊相關聯(lián)地存儲的z數(shù)據(jù)緩存塊單元地址通過存儲控制部分129提供給地址存儲器104。
要注意,這時,z數(shù)據(jù)緩存126和地址緩存128可以執(zhí)行所有緩存塊的清除或者可以執(zhí)行已經(jīng)對其進行了更新的緩存塊的清除。
在圖9的地址產(chǎn)生過程之后,輸出部分130以從添加部分77輸出像素的順序從切換部分127獲得像素的z數(shù)據(jù)和寫系數(shù)。然后,輸出部分130將z數(shù)據(jù)輸出到另一DME等,并將寫系數(shù)提供給添加部分77。此外,輸出部分130從存儲控制部分129獲得像素的紋理地址,并將紋理地址的整數(shù)部分提供給RAM模塊75,同時它將紋理地址的小數(shù)部分提供給插補操作部分76。
現(xiàn)在,參照圖10到12描述圖8所示的CPU 121產(chǎn)生多邊形頂點數(shù)據(jù)的順序。
圖10示出使用與圖3所示的相同的方格形式的網(wǎng)格的模型10。
現(xiàn)在參照圖10,緩存塊由4×4像素的z數(shù)據(jù)和寫系數(shù)構(gòu)成。這類似地也適用于以下參照圖11描述的另一模型。此外,在圖10中,所示的模型10不處于圖像的轉(zhuǎn)換后狀態(tài)。
在圖10中,CPU 121將分別包括12個在豎直方向上并置的多邊形的多邊形組以這些多邊形組在水平方向上并置的順序相繼地確定為用于產(chǎn)生頂點數(shù)據(jù)的產(chǎn)生過程的對象塊(這種塊以下稱作處理對象塊)。然后,CPU 121以多邊形在豎直方向上并置的順序產(chǎn)生多邊形單元的構(gòu)成處理對象塊的多邊形的頂點數(shù)據(jù)。
要注意,在下面的描述中,與將被確定為處理對象塊的多邊形組的順序相對應的方向線(在圖10的實例中,水平方向)被適當?shù)姆Q作基本移動線。此外,與處理對象塊中被相繼確定為產(chǎn)生過程對象的多邊形順序相對應的方向(在圖10的實例中,豎直方向)以下稱作移動方向。
這里,形成處理對象塊的多邊形的數(shù)量(該數(shù)量以下稱作移動量)被確定為使得,當為處理對象塊執(zhí)行產(chǎn)生過程時,位于當前對象處理塊與緊鄰的前一處理對象塊之間的邊界上并且對應于該緊鄰的前面對象塊中多邊形的像素數(shù)據(jù)可以保留在z數(shù)據(jù)緩存126中,即可以不被從z數(shù)據(jù)緩存126中清除。
具體地,例如,如果緩存塊包括總共x×x個像素的z數(shù)據(jù)和寫系數(shù),其中,x個像素在水平方向和豎直方向上并置,并且N個緩存塊可以被存儲到z數(shù)據(jù)緩存126中,則在建模坐標系上像素的水平方向和豎直方向上的長度是1的情況下,移動量的最大值由下式(1)表示M=floor((x×N-Margin)/Mesh_Size) (1)其中,函數(shù)floor()代表不超過括號中的值的最大整數(shù),并且Mesh_Size是模型10在豎直方向上的距離,即多邊形11在豎直方向上的長度。此外,Margin是預先確定的值,使得即使在執(zhí)行圖像的轉(zhuǎn)換的情況下,與位于當前對象處理塊與緊鄰的前一處理對象塊之間邊界的那些多邊形相對應的像素數(shù)據(jù)可以不被從z數(shù)據(jù)緩存126中清除。
具體地,在上述式子(1)中,基于其中不執(zhí)行圖像轉(zhuǎn)換的情況確定最大值M,并且在考慮其他其中執(zhí)行圖像轉(zhuǎn)換的情況下,減去由Margin所給出的量。
等于或低于以上述方式所確定的最大值M的數(shù)被確定為移動量。要注意,隨著移動量增加,緩存的命中效率增加。
在圖10中,如上所述,最大值M是12,移動量是12。
在這種情況下,CPU 121首先將總共包括12個在豎直方向上并置的多邊形111、112、11n1+1、11n1+2、112n1+1、112n1+2、113n1+1、113n1+2、114n1+1、114n1+2、115n1+1、115n1+2的多邊形組確定為處理對象塊150。然后,CPU 121以所提到的多邊形順序在多邊形11的單元中進行產(chǎn)生過程。
這里,頂點操作部分122、DDA設置部分123和DDA 124以流水線方式處理通過從CPU 121所輸出的過程產(chǎn)生的頂點數(shù)據(jù)。因此,與多邊形11相對應的圖像數(shù)據(jù)被以多邊形111、112、11n1+1、11n1+2、112n1+1、112n1+2、113n1+1、113n1+2、114n1+1、114n1+2、115n1+1、115n1+2的順序提供給深度測試部分125。
換句話說,像素151、152、15m1+1、15m1+2、152m1+1、152m1+2、153m1+1、153m1+2、154m1+1、154m1+2、155m1+1、155m1+2、156m1+1、156m1+2、157m1+1、157m1+2的圖像數(shù)據(jù)以該順序被提供給深度測試部分125。因此,深度測試部分125以這個順序從z數(shù)據(jù)緩存126中讀出像素15的z數(shù)據(jù),并對z數(shù)據(jù)進行深度測試。
在這種情況下,z數(shù)據(jù)緩存126首先通過切換部分127從z數(shù)據(jù)存儲器102或103中讀出由作為緩存塊的方形12包圍的像素151到154、15m1+1和15m1+4、152m1+1到152m1+4和153m1+1到153m1+4的z數(shù)據(jù),并存儲所讀出的z數(shù)據(jù)。然后,深度測試部分125相繼地分別比較像素151、152、15m1+1、15m1+2、152m1+1、152m1+2、153m1+1、153m1+2的z數(shù)據(jù)與包括在從DDA 124所提供的像素151、152、15m1+1、15m1+2、152m1+1、152m1+2、153m1+1、153m1+2中的z數(shù)據(jù),以進行深度測試。
然后,z數(shù)據(jù)緩存126從z數(shù)據(jù)存儲器102或103中讀出由作為緩存塊的方形161包圍的像素154m1+1到154m1+4、155m1+1到155m1+4、156m1+1到156m1+4、157m1+1到157m1+4的z數(shù)據(jù),并存儲所讀出的z數(shù)據(jù)。然后,深度測試部分125相繼地將像素154m1+1、154m1+2、155m1+1、155m1+2、156m1+1、156m1+2、157m1+1、157m1+2的z數(shù)據(jù)與包括在從DDA124所提供的像素154m1+1、154m1+2、155m1+1、155m1+2、156m1+1、156m1+2、157m1+1、157m1+2的像素數(shù)據(jù)中的z數(shù)據(jù)分別進行比較,以進行深度測試。
之后,深度測試部分125利用與通過產(chǎn)生過程所產(chǎn)生的像素數(shù)據(jù)相對應的像素數(shù)據(jù)執(zhí)行深度測試,其中將在水平方向上與處理對象塊150相鄰的處理對象塊確定為處理對象。但是,移動量被確定為使得與位于當前處理對象塊151與緊鄰的前一處理對象塊150之間邊界上的多邊形112、11n1+2、112n1+2、113n1+2、114n1+2、115n1+2相對應的像素數(shù)據(jù)可以不被從z數(shù)據(jù)緩存126中清除,即與方形12和161相對應的緩存塊可以如上所述地不被從z數(shù)據(jù)緩存126中清除。因此,z數(shù)據(jù)緩存126只需利用兩個緩存塊執(zhí)行深度測試,而不必讀出新的緩存塊。
此外,深度測試部分125隨后利用與由產(chǎn)生過程所產(chǎn)生的頂點數(shù)據(jù)相對應的像素數(shù)據(jù)進行深度測試,其中在水平方向上與處理對象塊151相鄰的處理對象塊152被確定為處理對象。但是,因為移動量被確定為使得與位于當前處理對象塊152和緊鄰的前一處理對象塊151之間邊界上的多邊形11相對應的像素數(shù)據(jù)可以不如上所述地被從z數(shù)據(jù)緩存126中清除,z數(shù)據(jù)緩存126只需重新讀出由作為緩存塊的方形13和162包圍的像素15的z數(shù)據(jù)和寫系數(shù),而不必讀出由作為緩存塊的方形12和161包圍的像素15的z數(shù)據(jù)和寫系數(shù)。
如上所述,CPU 121將分別包括12個在豎直方向上并置的多邊形的多邊形組按照這些多邊形組在水平方向上并置的順序相繼確定為處理對象塊,然后按照這些多邊形在豎直方向上并置的順序產(chǎn)生多邊形單元的構(gòu)成處理對象塊的多邊形的頂點數(shù)據(jù)。因此,z數(shù)據(jù)緩存126不需要將每個緩存塊讀出多次。換句話說,z數(shù)據(jù)緩存126的命中效率被增強。
因此,同樣在多邊形的大小被減小以進行高精確度的轉(zhuǎn)換時,圖像處理系統(tǒng)51不需要增加z數(shù)據(jù)存儲器102和103的帶寬,并且可以實現(xiàn)高精確度的帶寬,同時功耗或生成成本的增加被抑制。
圖11示出了表示在執(zhí)行以順時針方向旋轉(zhuǎn)由圖10的模型10所表示的圖像的轉(zhuǎn)換時的轉(zhuǎn)換后圖像的模型170。
在圖11中,CPU 121將分別包括12個在由圖11中的箭頭標記b所指示的方向上并置的多邊形的多邊形組以這些多邊形組在垂直于箭頭標記b的方向的、由另一箭頭標記a指示的方向上并置的順序相繼確定為處理對象塊。然后,CPU 121以多邊形在箭頭標記b的方向上并置的順序產(chǎn)生多邊形單元的構(gòu)成處理對象塊的多邊形的頂點數(shù)據(jù)。換句話說,在圖11中,基本移動線是箭頭標記a的方向上的線,而移動方向是箭頭標記b的方向。
這里假設,圖11中的移動量是根據(jù)上面給出的式子(1)所確定的最大值M。要注意,在這種情況下,式子(1)的Mesh_Size是在箭頭標記b的方向上模型170的間距,即多邊形171在箭頭標記b的方向上的長度。
在這種情況下,CPU 121首先將在豎直方向上并置的總共12個多邊形1711、1712、171n6+1、171n6+2、1712n6+1、1712n6+2、1713n6+1、1713n6+2、1714n6+1、1714n6+2、1715n6+1、1715n6+2確定為處理對象塊180,并以這個順序執(zhí)行多邊形171的單元中的產(chǎn)生過程。但是,因為頂點操作部分122執(zhí)行剪貼,所以與多邊形171相對應的頂點數(shù)據(jù)被以多邊形171n6+2、1712n6+1、1712n6+2、1713n6+1、1713n6+2、1714n6+1、1714n6+2、1715n6+1、1715n6+2的順序提供給DDA 124。
相應地,DDA 124將多邊形171以多邊形171n6+2、1712n6+1、1712n6+2、1713n6+1、1713n6+2、1714n6+1、1714n6+2、1715n6+1、1715n6+2的順序分別變換為相應像素1723、1724、172m2+3、1722m2+2、1722m2+3、1723m2+2、1723m2+3、1724m2+2、1725m2+1、1725m2+2的像素數(shù)據(jù)。然后,DDA 124將所得到的像素數(shù)據(jù)提供給深度測試部分125。
深度測試部分125從z數(shù)據(jù)緩存126中以從DDA 124將z數(shù)據(jù)提供給它的順序讀出像素172的z數(shù)據(jù),并執(zhí)行深度測試。
這時,z數(shù)據(jù)緩存126首先通過切換部分127從z數(shù)據(jù)存儲器102或103中讀出由作為緩存塊的方形173所包圍的像素1721到1724、172m2+1到172m2+4、1722m2+1到1722m2+4和1723m2+1到1723m2+4的z數(shù)據(jù),并存儲所讀出的z數(shù)據(jù)。然后,深度測試部分125相繼地將像素1723、1724、172m2+3、1722m2+2、1722m2+3、1723m2+2、1723m2+3與包括在從DDA 124所提供的像素1723、1724、172m2+3、1722m2+2、1722m2+3、1723m2+2、1723m2+3的像素的像素數(shù)據(jù)中的z數(shù)據(jù)分別進行比較,以進行深度測試。
然后,z數(shù)據(jù)緩存126從z數(shù)據(jù)存儲器102或103中讀出由作為緩存塊的方形174所包圍的像素1724m2+1到1724m2+4、1725m2+1到1725m2+4、1726m2+1到1726m2+4和1727m2+1到1727m2+4的z數(shù)據(jù),并存儲所讀出的z數(shù)據(jù)。然后,深度測試部分125相繼地將像素1724m2+4、1725m2+1、1725m2+2的z數(shù)據(jù)與包括在從DDA 124所提供的像素1724m2+2、1725m2+1、1725m2+2的像素數(shù)據(jù)中的z數(shù)據(jù)分別進行比較,以進行深度測試。
之后,深度測試部分125利用與通過產(chǎn)生過程所產(chǎn)生的頂點數(shù)據(jù)相對應的像素數(shù)據(jù)進行深度測試,其中,在由箭頭標記a所指示的方向上與處理對象塊180相鄰的處理對象塊181被確定為處理對象。但是,因為移動量被確定為使得與位于當前處理對象塊181與緊鄰的前一處理對象塊182之間邊界上的多邊形171相對應的像素數(shù)據(jù)可以不被從z數(shù)據(jù)緩存126中清除,所以z數(shù)據(jù)緩存126只需讀出重新被作為緩存塊的方形175和176所包圍的像素172的z數(shù)據(jù)和寫系數(shù),而不必讀出由作為緩存塊的方形173和174所包圍的像素172的z數(shù)據(jù)和寫系數(shù)。
如上所述,同樣在圖像處理系統(tǒng)51執(zhí)行圖像轉(zhuǎn)換的情況下,CPU121將分別包括12個在箭頭標記b所指示的方向上并置的多邊形的多邊形組以這些多邊形組在由箭頭標記a所指示的方向上被并置的順序相繼確定為處理對象塊。然后,CPU 121以多邊形在箭頭標記b的方向上并置的順序產(chǎn)生多邊形單元的構(gòu)成處理對象塊的多邊形的頂點數(shù)據(jù)。從而,z數(shù)據(jù)緩存126的命中效率被增強。
圖12示出使用由多邊形201所構(gòu)成的同心網(wǎng)格的模型200。
現(xiàn)在參照圖12,CPU 121將分別包括5個在徑向上并置的多邊形201的多邊形組以這些多邊形組在圓周方向上并置的順序相繼確定為處理對象塊。然后,CPU 121以多邊形在徑向上并置的順序產(chǎn)生多邊形單元的構(gòu)成處理對象塊的多邊形的頂點數(shù)據(jù)。換句話說,在圖12中,基本移動線是在圓周方向上延伸的線,移動方向是徑向。
這里假設,圖12中的移動量是根據(jù)上面給出的式子(1)所確定的最大值M。要注意,在這種情況下,式子(1)的Mesh_Size是投影方向上模型200的間距,即多邊形201在多邊形的投影方向上的長度。
CPU 121首先將分別包括5個在投影方向上并置的多邊形201的多邊形組確定為處理對象塊202,并以多邊形201在投影方向上并置的順序在多邊形201的單元中進行產(chǎn)生過程。
因此,與構(gòu)成處理對象塊202的多邊形201相對應的像素數(shù)據(jù)被以這些多邊形201在投影方向被并置的順序提供給深度測試部分125。深度測試部分125以從DDA 124提供z數(shù)據(jù)的順序從z數(shù)據(jù)緩存126中讀出包括在像素數(shù)據(jù)中的z數(shù)據(jù),以進行深度測試。
這時,z數(shù)據(jù)緩存126首先通過切換部分127從z數(shù)據(jù)存儲器102或103中讀出由作為緩存塊的方形210所包圍的像素的z數(shù)據(jù),并存儲所讀出的z數(shù)據(jù)。然后,深度測試部分125相繼地將與從DDA 124所提供的像素數(shù)據(jù)相對應的像素的z數(shù)據(jù)與包括在從DDA 124所提供的像素數(shù)據(jù)中的z數(shù)據(jù)分別進行比較,以進行深度測試。
然后,z數(shù)據(jù)緩存126從z數(shù)據(jù)存儲器102或103中讀出由作為緩存塊的方形211所包圍的像素的z數(shù)據(jù),并存儲所讀出的z數(shù)據(jù)。然后,深度測試部分125相繼地將與從DDA 124所提供的像素數(shù)據(jù)相對應的像素的z數(shù)據(jù)與包括在從DDA 124所提供的像素數(shù)據(jù)中的z數(shù)據(jù)分別進行比較,以進行深度測試。
之后,深度測試部分125利用與通過產(chǎn)生過程所產(chǎn)生的頂點數(shù)據(jù)相對應的像素數(shù)據(jù)執(zhí)行深度測試,其中,在圓周方向上與處理對象塊202相鄰的處理對象塊203被確定為處理對象。但是,因為移動量被確定為使得與位于當前處理對象塊203和緊鄰的前一處理對象塊202之間邊界上的多邊形201相對應的像素數(shù)據(jù)可以不被從z數(shù)據(jù)緩存126中清除,所以z數(shù)據(jù)緩存126不必讀出重新由作為緩存塊的方形210和211所包圍的像素的z數(shù)據(jù)和寫系數(shù)。
如上所述,同樣在模型由同心網(wǎng)格模型200構(gòu)成的情況下,CPU121將分別包括5個在投影方向上并置的多邊形的多邊形組以這些多邊形組在圓周方向上并置的順序相繼確定為處理對象塊。然后,CPU121以這些多邊形在投影方向上并置的順序產(chǎn)生多邊形單元的構(gòu)成處理對象塊的多邊形的像素數(shù)據(jù)。因此,z數(shù)據(jù)緩存126的命中效率被增強。
要注意,雖然以上參照圖10到12描述了在深度測試中用于z數(shù)據(jù)的z數(shù)據(jù)緩存126的命中效率,但是類似地增強了存儲紋理地址中地址緩存128的命中效率。
此外,通過上面給出的式子(1),基于其中上述沒有執(zhí)行圖像轉(zhuǎn)換的情況確定最大值M。因此,當通過頂點操作部分122在建模變換中執(zhí)行放大或縮小時,必需進行修正。具體地,在執(zhí)行放大的情況下,必需減少移動量,但是在執(zhí)行縮小的情況下,必需增加移動量。
相應地,如果放大/縮小比例由S表示,則移動量的最大值M可以通過將其乘以放大/縮小比例S的倒數(shù)而通過下式(2)來表示M=floor((x×N-Margin)/Mesh_Size/S)(2)要注意,如果在式子(2)中不涉及放大或縮小,則因為放大/縮小比例S為1,所以式子(2)等同于式子(1)。因此,同樣在不涉及放大或縮小時,最大值M滿足式子(2)。換句話說,不管是否執(zhí)行放大或縮小,最大值M都可以由式子(2)表示。
現(xiàn)在,參照圖13描述CPU 121所執(zhí)行的將頂點數(shù)據(jù)輸出到頂點操作部分122的輸出過程。該輸出過程對應于圖9的步驟S31。
在步驟S51,CPU 121將第一基本移動線上的第一多邊形組確定為處理對象塊。然后,過程前進到步驟S52。
在步驟S52,CPU 121從處理對象塊中的多邊形中將移動方向上的第一多邊形確定為處理對象。然后,過程前進到步驟S53。
在步驟S53,CPU 121執(zhí)行產(chǎn)生多邊形單元中處理對象的多邊形的頂點數(shù)據(jù)的產(chǎn)生過程,并將所得到的頂點數(shù)據(jù)提供給頂點操作部分122。頂點數(shù)據(jù)被用于圖9的步驟S32的頂點操作。
在步驟S53的過程之后,過程前進到步驟S54,在該步驟,CPU121判斷當前處理對象塊的產(chǎn)生過程是否完成,即是否產(chǎn)生當前處理對象塊的所有多邊形的頂點數(shù)據(jù)。然后,如果判斷當前處理對象塊的產(chǎn)生過程還沒有完成,則過程前進到步驟S55。
在步驟S55,CPU 121從當前處理對象塊中的多邊形中將當前處理對象多邊形在移動方向上的下一個多邊形確定為新的處理對象。然后,過程返回步驟S53,使得如上描述的過程被重復。
另一方面,如果在步驟S54判斷當前處理對象塊的產(chǎn)生過程完成,即如果當前處理對象是處理對象塊中移動方向上的最后一個多邊形,則過程前進到步驟S56。在步驟S56,CPU 121判斷當前處理對象塊是否是當前基本移動線上的最后一個處理對象塊。
如果在步驟S56判斷當前處理對象塊不是當前基本移動線上的最后一個處理對象塊,則過程前進到步驟S57。在步驟S57,CPU 121將當前基本移動線上的下一個多邊形組判斷為處理對象塊。之后,過程返回到步驟S53。
另一方面,如果在步驟S56判斷當前處理對象塊是當前基本移動線上的最后一個處理對象塊,則過程前進到步驟S58。在步驟S58,CPU 121判斷當前基本移動線是否是最后一個基本移動線。
如果在步驟S58判斷當前基本移動線不是最后一個基本移動線,則過程前進到步驟S59,在該步驟,CPU 121將下一基本移動線的第一多邊形組確定為處理對象塊。
另一方面,如果在步驟S58判斷當前基本移動線是最后一個基本移動線,則過程結(jié)束。
現(xiàn)在,參照圖14描述包括DME 11的圖像處理裝置250。
圖像處理裝置250包括根據(jù)存儲在ROM(只讀存儲器)252中或者記錄在記錄部分258中的程序執(zhí)行各種過程的CPU(中央處理單元)251和DME 11。將由CPU 121執(zhí)行的程序、將由CPU 251使用的數(shù)據(jù)等被適當?shù)卮鎯Φ絉AM(隨機存取存儲器)253中。DME 11、CPU 251、ROM 252和RAM 253通過總線254相互連接。
此外,輸入/輸出接口255通過總線254被連接到CPU 251。包括鍵盤、鼠標、麥克風、用于接收從未示出的遠程控制器所發(fā)送的指令的接收部分等的輸入部分256以及包括顯示單元、揚聲器等的輸出部分257被連接到輸入/輸出接口255。CPU 251響應于從輸入部分256所輸入的指令執(zhí)行各種過程。然后,CPU 251將過程的結(jié)果輸出到輸出部分257。
例如,CPU 251響應于從輸入部分256所輸入的指令控制DME11執(zhí)行輸入圖像的縮小、放大、類型改變、旋轉(zhuǎn)、向左和向右翻轉(zhuǎn)、倒轉(zhuǎn)或移動或者對輸入圖像應用特殊效果。然后,CPU 251控制輸出部分257以基于從DME 11所輸出的圖像顯示圖像。
連接到輸入/輸出接口255的記錄部分258包括例如硬盤,并存儲將由CPU 251執(zhí)行的程序和各種數(shù)據(jù)。通信部分259通過諸如互聯(lián)網(wǎng)或局域網(wǎng)的網(wǎng)絡與外部裝置通信。要注意,可以通過通信部分259獲得記錄在記錄部分258中的程序。
連接到輸入/輸出接口255的驅(qū)動260在諸如磁盤、光盤、磁光盤或半導體存儲器的可移動介質(zhì)261被加載到其中時驅(qū)動可移動介質(zhì)261,以獲得記錄在可移動介質(zhì)261上的程序或數(shù)據(jù)。所獲得的程序或數(shù)據(jù)被傳遞給記錄部分258并在必要時被其記錄。
現(xiàn)在,參照圖15描述包括DME 11的記錄和再現(xiàn)裝置300的實例。
記錄和再現(xiàn)裝置300包括根據(jù)存儲在ROM 306中或記錄在記錄部分305上的程序執(zhí)行各種過程的CPU 301和DME 11。將由CPU 301執(zhí)行的程序、數(shù)據(jù)等被適當?shù)卮鎯Φ絉AM 307中。DME 11、CPU 301、ROM 306和RAM 307通過總線相互連接。
此外,輸入I/F(接口)309和輸出控制部分310通過總線被連接到CPU 301。輸入部分308被連接到輸入I/F 309,并且包括鍵盤、鼠標、麥克風、用于接收從未示出的遠程控制器等所發(fā)送的指令的接收部分、用于拾取圖像拾取對象的圖像的圖像拾取部分等。同時,輸出部分311被連接到輸出控制部分310,并且包括顯示單元、揚聲器等。CPU 301響應于從輸入部分308通過輸入I/F 309輸入給它的指令而執(zhí)行各種過程。CPU 301通過輸出控制部分310將過程的結(jié)果輸出到輸出部分311。
例如,CPU 301響應于被從輸入部分308輸入給它的指令控制DME 11以執(zhí)行輸入圖像的縮小、放大、類型改變、旋轉(zhuǎn)、向左和向右翻轉(zhuǎn)、倒轉(zhuǎn)或移動,或者對輸入圖像應用特殊效果。而且,CPU 301通過輸出控制部分310控制輸出部分311以基于從DME 11所輸出的圖像顯示圖像。
此外,編碼/解碼電路302以及記錄和再現(xiàn)控制部分304通過總線被連接到CPU 301。編碼/解碼電路302在必要時將例如通過輸入部分308的圖像拾取而得到的圖像保留到緩沖存儲器303中,并在CPU 301的控制下根據(jù)諸如JPEG(聯(lián)合圖像專家組)或MPEG(運動圖像專家組)系統(tǒng)的預定編碼系統(tǒng)對圖像進行編碼。然后,編碼/解碼電路302通過記錄和再現(xiàn)控制部分304將由編碼所得到的圖像記錄到記錄部分305中。
記錄和再現(xiàn)控制部分304在CPU 301的控制下控制記錄部分305的記錄和再現(xiàn)。具體地,記錄和再現(xiàn)控制部分304控制記錄部分305以記錄從編碼/解碼電路302所提供的圖像或者將從記錄部分305所讀出的圖像提供給編碼/解碼電路302。編碼/解碼電路302在CPU 301的控制下對來自記錄和再現(xiàn)控制部分304的圖像進行解碼,并將通過解碼所得到的圖像例如作為輸入圖像而提供給DME 11。
本發(fā)明可以被應用于例如GPU(圖形處理單元)。
要注意,在本說明書中,描述被記錄在程序記錄介質(zhì)中的程序的步驟在順序上可以、但不是必須以所述的順序在時間上串行地被處理,并且包括被并行或單獨執(zhí)行而不是在時間上串行執(zhí)行的過程。
此外,在本說明書中,術語“系統(tǒng)”被用于代表包括多個設備或裝置的整個裝置。
雖然已經(jīng)使用具體術語描述了本發(fā)明的優(yōu)選實施例,但是這種描述只是為了說明的目的,并且應該理解,可以進行改變和變化而不脫離下面權利要求的精神或范圍。
權利要求
1.一種圖像處理裝置,包括產(chǎn)生部分,被配置用于將分別包括預定數(shù)量的在第一方向上并置的多邊形的多邊形組以所述多邊形組在基本垂直于所述第一方向的第二方向上被并置的順序相繼確定為作為產(chǎn)生過程的對象的對象塊,并且生成多邊形單元的構(gòu)成對象塊的多邊形的頂點數(shù)據(jù);以及確定部分,被配置用于將與構(gòu)成相對于所述對象塊作為所述對象塊的前一對象塊的前一緊鄰對象塊的那些多邊形中位于所述前一緊鄰對象塊的邊界部分中的那些多邊形相對應的圖像數(shù)據(jù)存儲到用于存儲數(shù)據(jù)塊單元的像素數(shù)據(jù)的存儲部分中,以確定構(gòu)成多邊形組并且在第一方向上并置的多邊形的數(shù)量。
2.根據(jù)權利要求1的圖像處理裝置,其中,所述確定部分基于構(gòu)成數(shù)據(jù)塊的像素數(shù)據(jù)的數(shù)量確定構(gòu)成多邊形組并且在第一方向上并置的多邊形的數(shù)量。
3.根據(jù)權利要求2的圖像處理裝置,其中,所述確定部分基于被存儲到所述存儲部分中的數(shù)據(jù)塊的數(shù)量確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。
4.根據(jù)權利要求3的圖像處理裝置,其中,所述確定部分基于多邊形的長度確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。
5.根據(jù)權利要求1的圖像處理裝置,還包括頂點數(shù)據(jù)變換部分,被配置用于對由所述產(chǎn)生部分所產(chǎn)生的頂點數(shù)據(jù)進行變換過程,使得由與頂點數(shù)據(jù)相對應的頂點所界定的多邊形可以被放大或縮??;以及像素數(shù)據(jù)變換部分,被配置用于進行將由所述頂點數(shù)據(jù)變換部分所變換的頂點數(shù)據(jù)變換成像素數(shù)據(jù)的變換過程。
6.根據(jù)權利要求5的圖像處理裝置,其中,所述確定部分基于構(gòu)成數(shù)據(jù)塊的像素數(shù)據(jù)的數(shù)量確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。
7.根據(jù)權利要求6的圖像處理裝置,其中,所述確定部分基于將被存儲到所述存儲部分中的數(shù)據(jù)塊的數(shù)量確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。
8.根據(jù)權利要求7的圖像處理裝置,其中,所述確定部分基于多邊形的長度確定構(gòu)成多邊形組且在第一方向上并置的多邊形的數(shù)量。
9.根據(jù)權利要求1的圖像處理裝置,其中,像素數(shù)據(jù)包括像素的z數(shù)據(jù),并且所述圖像處理裝置還包括轉(zhuǎn)換處理部分,被配置用于比較被包括在由所述像素數(shù)據(jù)變換部分所變換的像素數(shù)據(jù)中的z數(shù)據(jù)與被包括在與所述像素數(shù)據(jù)相對應的像素的被存儲在所述存儲部分中的像素數(shù)據(jù)中的z數(shù)據(jù),以執(zhí)行對由像素構(gòu)成的圖像進行轉(zhuǎn)換的轉(zhuǎn)換過程。
10.一種圖像處理方法,包括如下步驟將分別包括預定數(shù)量的在第一方向上并置的多邊形的多邊形組以所述多邊形組在基本垂直于第一方向的第二方向上被并置的順序相繼確定為作為產(chǎn)生過程的對象的對象塊,并且生成多邊形單元的構(gòu)成對象塊的多邊形的頂點數(shù)據(jù);以及將與構(gòu)成相對于所述對象塊作為所述對象塊的前一對象塊的前一緊鄰對象塊的那些多邊形中位于所述前一緊鄰對象塊的邊界部分中的那些多邊形相對應的圖像數(shù)據(jù)存儲到用于存儲數(shù)據(jù)塊單元的像素數(shù)據(jù)的存儲部分中,以確定構(gòu)成多邊形組并且在第一方向上并置的多邊形的數(shù)量。
全文摘要
本發(fā)明提供了一種圖像處理裝置,包括產(chǎn)生部分,被配置用于將分別包括預定數(shù)量的在第一方向上并置的多邊形的多邊形組以這些多邊形組在基本上垂直于第一方向的第二方向上被并置的順序相繼確定為作為產(chǎn)生過程的對象的對象塊、并且產(chǎn)生構(gòu)成多邊形單元中對象塊的多邊形的頂點數(shù)據(jù);以及確定部分,被配置用于將與構(gòu)成相對于所述對象塊作為所述對象塊的前一對象塊的前一緊鄰對象塊的那些多邊形中位于所述前一緊鄰對象塊的邊界部分中的那些多邊形相對應的圖像數(shù)據(jù)存儲到用于存儲數(shù)據(jù)塊單元中的像素數(shù)據(jù)的存儲部分中,以確定構(gòu)成多邊形組并且在第一方向上并置的多邊形的數(shù)量。
文檔編號G06T15/00GK101038676SQ200710088590
公開日2007年9月19日 申請日期2007年3月16日 優(yōu)先權日2006年3月17日
發(fā)明者渕江孝明 申請人:索尼株式會社