亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

使用通用3d圖形管道進(jìn)行成本低廉的數(shù)字圖像和視頻編輯的方法和裝置的制作方法

文檔序號(hào):7590015閱讀:217來源:國知局
專利名稱:使用通用3d圖形管道進(jìn)行成本低廉的數(shù)字圖像和視頻編輯的方法和裝置的制作方法
背景技術(shù)
本發(fā)明涉及數(shù)字圖像和視頻處理。
在視頻和圖像編輯過程中,我們通過如將圖像從屏幕的一部分移到另一部分,旋轉(zhuǎn)圖像,放大圖像或縮小圖像,改變一幅視頻圖像的部分或全部。其它常用圖像處理包括翹曲圖像(即,對(duì)圖像進(jìn)行三維變形),對(duì)圖像的部分進(jìn)行放大,對(duì)圖像執(zhí)行圓柱、球形、雙曲線或拋物線轉(zhuǎn)換(例如,讓一幅二維圖像呈環(huán)繞著圓柱、球形、雙曲線、或拋物線的表面彎曲或翹曲狀),使圖像產(chǎn)生融化效果,等等。
經(jīng)常,要處理的圖像采用像素陣列的形式。也就是,圖像存儲(chǔ)為一個(gè)多個(gè)數(shù)據(jù)值的陣列,每個(gè)值對(duì)應(yīng)于圖像的一小塊區(qū)域的色彩和亮度。當(dāng)執(zhí)行上述視頻圖像處理時(shí),我們典型性地執(zhí)行轉(zhuǎn)換圖像的每個(gè)像素的計(jì)算。例如,對(duì)于圖像的每個(gè)像素,我們執(zhí)行確定該像素在視頻屏幕上的新位置的計(jì)算。大圖像可以包含數(shù)百萬像素。而且,對(duì)于圖像流的情況(例如,在視頻圖像的情況下),每秒必須轉(zhuǎn)換許多幀。因此,在很短的時(shí)間內(nèi),對(duì)每個(gè)轉(zhuǎn)換,可能必須分析和修改數(shù)百萬像素。這種轉(zhuǎn)換需要巨大的CPU資源或特殊的硬件,以能夠在很短的時(shí)間內(nèi)轉(zhuǎn)換大量的像素。
提供一種用于編輯和/或處理二維圖像的方法是理想的。因此我們能夠每秒編輯和/或處理很多幀二維圖像,例如,象視頻圖像的圖像流,是特別理想的。能夠快速和有效地執(zhí)行這些處理,而不必設(shè)計(jì)專用于該目的的,昂貴,復(fù)雜的硬件是理想的。
概要本發(fā)明的方法包括將2D圖像轉(zhuǎn)換到3D空間,并且使用用于處理圖像的3D圖形管道的步驟。該方法釋放CPU資源,減少執(zhí)行圖像處理所需的時(shí)間,并且允許新的特殊效果。
在本發(fā)明的一個(gè)實(shí)施例中,我們獲得一幅采用像素陣列形式的圖像。這可以通過如對(duì)圖像進(jìn)行數(shù)字化來實(shí)現(xiàn)。然后,我們通過使用3D圖形管道,將這些圖像"轉(zhuǎn)換"到3D空間。該圖形管道可以完全或部分地通過軟件或硬件(例如,3D硬件加速器)進(jìn)行實(shí)現(xiàn)。
存在幾個(gè)將像素陣列轉(zhuǎn)換到3D空間的方法。典型地,3D管道定義一個(gè)圖像表面區(qū)域的集合,每個(gè)圖像表面區(qū)域被分配給三維坐標(biāo)系統(tǒng)的一個(gè)位置。然而,在本發(fā)明的實(shí)施例的情況下,所有的表面區(qū)域是共面的。在一個(gè)實(shí)施例中,表面區(qū)域均是多邊形,如三角形,每個(gè)三角形是通過用x、y和z坐標(biāo)指定位置的點(diǎn)的集合來定義的。(所有的坐標(biāo)是采用讓它們都位于同一平面中的方式進(jìn)行建立的)。然而,表面區(qū)域也可以使用其它圖形技術(shù)進(jìn)行定義。例如,表面區(qū)域或整個(gè)表面可以采用"隱式"技術(shù)進(jìn)行定義,其中,空間(表面區(qū)域)中的像素位置通過數(shù)學(xué)方程進(jìn)行定義。
創(chuàng)建表面區(qū)域的集合之后,我們將2D像素陣列圖像映射到表面區(qū)域的集合上。換句話說,我們將2D圖像的一幅圖片的一部分"綁定"到每個(gè)圖像區(qū)域。執(zhí)行該步驟之后,我們使用3D圖形管道來處理已創(chuàng)建的、要執(zhí)行所需圖像和/或視頻編輯的圖像。
我們已經(jīng)發(fā)現(xiàn)該技術(shù)對(duì)于快速處理很多2D圖像是極其有效的。例如,該技術(shù)可以用于處理視頻圖像流,該圖像流典型地包括每秒59.94幀,每幀對(duì)應(yīng)于一個(gè)大的像素陣列。該技術(shù)也可以用于處理來自其它來源的2D圖像,例如,數(shù)字掃描儀、照相機(jī)、從因特網(wǎng)下載的圖像文件,或其它來源。
在一個(gè)實(shí)施例中,目前現(xiàn)有的非定制的3D管道和/或3D加速處理器用于執(zhí)行該過程。因此,我們已經(jīng)發(fā)現(xiàn)一種用于處理2D圖像的新的廉價(jià)方法,而不必從零開始構(gòu)建特殊處理軟件和/或硬件。
我們采用新的方式使用3D圖形管道將是值得重視的。以前,圖形管道用于將紋理映射到一個(gè)幾何對(duì)象上,作為給該幾何對(duì)象一種特殊外觀的方法,并且,創(chuàng)建一個(gè)包含這種對(duì)象的集合的新虛擬環(huán)境。這是通過向圖形管道提供紋理和幾何圖形以創(chuàng)建一個(gè)新的虛擬圖像來實(shí)現(xiàn)的。這與使用幾何圖形轉(zhuǎn)換和編輯圖像不同。
在本發(fā)明的方法中,我們將一個(gè)圖像和一個(gè)幾何圖形應(yīng)用于3D圖形管道以生成一幅3D圖像。然后,我們采用新的方式使用3D圖形管道,以轉(zhuǎn)換或處理該圖像。
圖像不僅僅是在如某些紋理的圖案中的不斷重復(fù)的單元,也不僅僅是幾乎感覺不到的大小的圖像。在構(gòu)造一幅圖像的過程中,我們不是簡(jiǎn)單地將一種紋理應(yīng)用于一個(gè)表面,而是將一幅圖像應(yīng)用于一個(gè)幾何表面,以將該圖像置放于三維空間。該圖像可以是一個(gè)三維對(duì)象的二維圖像。
附圖簡(jiǎn)述

圖1A到1E示出3D圖形管道的操作;圖2A和2B示出使用本發(fā)明的方法的2D圖像的處理;圖3是一個(gè)用本發(fā)明的3D圖形管道與圖形控制器結(jié)合的個(gè)人計(jì)算機(jī)(personal computer,PC)的簡(jiǎn)化方框圖。
詳細(xì)描述如上所述,本發(fā)明的方法包括采用新方式使用3D圖形管道,以幫助數(shù)字圖像(包括視頻圖像流)的處理。我們將首先說明3D圖形管道通常是如何使用的。此后,我們將描述它在本發(fā)明的方法中的使用。
3D圖形管道本專利所提及的3D圖形管道可以通過組合硬件元件(稱作加速器)和軟件(某些軟件有時(shí)稱作驅(qū)動(dòng)程序)來實(shí)現(xiàn)。硬件和軟件之間的劃分可能根據(jù)系統(tǒng)中所使用的CPU和圖像卡發(fā)生變化,但是,整個(gè)系統(tǒng)執(zhí)行下面所述的方法步驟。管道任務(wù)部分能通過軟件進(jìn)行執(zhí)行,目前軟件比硬件便宜,但是通常比硬件解決方案慢。執(zhí)行下述步驟的硬件和軟件被簡(jiǎn)單地稱作管道,而不考慮特定的劃分。
下面是3D圖形管道的簡(jiǎn)化概括性描述。它不試圖描述任何特定產(chǎn)品(例如,本發(fā)明中后面將提及的產(chǎn)品)。相反,下面的描述僅是3D圖形管道的概括性說明,以幫助讀者的理解。
目前,使用3D圖形管道創(chuàng)建的圖形對(duì)象可以被描述為幾何表面的集合。在圖形管道中構(gòu)建幾何表面的一種方法是創(chuàng)建"圖元"的"網(wǎng)狀物"。一個(gè)"圖元"是一個(gè)可以由頂點(diǎn)集合定義的小幾何表面。例如,圖元可以是,在管道內(nèi)根據(jù)多邊形的角點(diǎn)或頂點(diǎn)的位置(在x、y和z坐標(biāo)空間中)定義的多邊形(例如,三角形或者四邊形)。幾個(gè)圖元的集合用于定義一個(gè)更大的3D表面。
不使用如多邊形的圖元,一些圖形管道可以處理以其它方式,如數(shù)學(xué)方程式定義的幾何表面區(qū)域。這種用于定義幾何表面區(qū)域的方法被稱為"隱式"。如下所述,兩種用于定義這種表面區(qū)域的方法都可以用于執(zhí)行本發(fā)明的方法。
為了說明清楚,我們將首先描述一種使用三角形圖元處理幾何表面區(qū)域的圖形管道。其它類型的圖形管道將在后面描述。
在這第一個(gè)例子中,3D圖形管道從2D像素陣列(典型地稱作"紋理圖")構(gòu)建對(duì)象的3D圖像。圖1A示出一幅"紋理"集合的2D圖像2。(如下所述,該紋理圖用于創(chuàng)建對(duì)象圖像-在本例中是一所房子。圖像2包括具有磚外觀的部分2a,具有屋頂瓦片外觀的部分2b,具有門外觀的部分2c,具有窗外觀的部分2d。)2D圖像2以像素陣列的形式存儲(chǔ)在數(shù)字存儲(chǔ)器中。存儲(chǔ)器中的每個(gè)位置存儲(chǔ)一個(gè)像素,每個(gè)像素是表示與該像素對(duì)應(yīng)的色彩,色彩飽和度和亮度的一個(gè)或者多個(gè)字的數(shù)據(jù)。陣列中像素的位置典型地稱作u、v坐標(biāo)(不要和用于描述特定視頻信號(hào)的Y、U和V信號(hào)名稱相混淆)。(該u、v坐標(biāo)和笛卡兒坐標(biāo)系統(tǒng)的x、y坐標(biāo)類似。在圖1A中,像素陣列是一個(gè)n×m的陣列,其中n和m是整數(shù)。)如上所述,圖1A表示一個(gè)像素陣列。物理上,該陣列包括載入到存儲(chǔ)器的數(shù)據(jù)。
該過程的下一步驟是提供或準(zhǔn)備一個(gè)幾何表面。在這個(gè)例子中,幾何表面采用三維空間中圖元5的網(wǎng)狀物4的形式(圖1B)。在圖1B的情況下,圖元是三角形,但是能使用其它類型的多邊形。該圖元的網(wǎng)狀物表示3D空間中對(duì)象O的三維形狀。(在圖1B的情況下,是一所房子的形狀)。相對(duì)于對(duì)象,網(wǎng)狀物4內(nèi)每個(gè)三角形的每個(gè)頂點(diǎn)的位置以x、y和z笛卡兒坐標(biāo)形式存儲(chǔ)在存儲(chǔ)器中。這些坐標(biāo)有時(shí)稱作模型坐標(biāo)("MC")。準(zhǔn)備這種網(wǎng)狀物的過程是眾所周知的,并且在多個(gè)標(biāo)準(zhǔn)圖形庫中被描述,例如,由Real 3D,lockheed Martin公司Real 3D 1996年出版的Real 3D,和由New Riders出版社1997年出版的Direct 3D。
圖1B的網(wǎng)狀物不是如此顯示的。相反,圖1B的網(wǎng)狀物是存儲(chǔ)在數(shù)字存儲(chǔ)器中的內(nèi)容的表示。具體地說,存儲(chǔ)器根據(jù)xy和z坐標(biāo),存儲(chǔ)網(wǎng)狀物4內(nèi)每個(gè)頂點(diǎn)的位置。
下一步是將圖1A的二維紋理圖映射或"綁定"到圖1B的網(wǎng)狀物4上。這是通過將每個(gè)三角形的頂點(diǎn)映射到紋理圖的一個(gè)位置來實(shí)現(xiàn)的。結(jié)果,關(guān)聯(lián)網(wǎng)狀物4的每個(gè)頂點(diǎn)和圖1A紋理圖中特定點(diǎn)(像素)的u、v坐標(biāo)的數(shù)據(jù)點(diǎn)列表被準(zhǔn)備。(頂點(diǎn)所綁定的紋理圖的位置有時(shí)稱作"控制點(diǎn)")。
該過程的這一部分大致類似于裝潢人員選擇一片織物,并且用一些釘子將它定位到正被裝潢的長(zhǎng)椅的角落上(這些釘子就像控制點(diǎn))。然后,裝潢人員要求他的學(xué)徒完成將該織物固定到長(zhǎng)椅上。在本例中,不是學(xué)徒而是3D圖形管道完成這一任務(wù)。
圖1A和圖1B描述將一幅紋理圖(圖1A)映射到表示一個(gè)對(duì)象O的一個(gè)網(wǎng)狀物4的過程。圖形管道可以,并且經(jīng)常性如此,將一個(gè)或多個(gè)紋理圖映射到同一個(gè)或幾個(gè)不同的對(duì)象上。
該過程的下一步是建立要顯示的各個(gè)對(duì)象的"真實(shí)坐標(biāo)模型",這要求建立要顯示的每個(gè)對(duì)象的位置和方位。例如,假定有兩個(gè)要觀察的對(duì)象四面體T和立方體C(圖1C)。在該過程的這個(gè)步驟中,管道被指示,立方體C面向一個(gè)特定的方向,并且相對(duì)于特定的參考框架,部分位于四面體T的前面。而且,圖1C的結(jié)構(gòu)本身不被顯示。相反,圖形管道建立與對(duì)象的位置和方位參數(shù)對(duì)應(yīng)的模型坐標(biāo)的處理。
下一步是選擇參考框架。例如,可能確定"觀察者"希望從真實(shí)坐標(biāo)模型的一個(gè)角部位置觀察該對(duì)象(例如,圖1D的位置P)。因此,將選擇虛擬視點(diǎn),觀察方向和孔徑。與該"觀察者"關(guān)聯(lián)的多個(gè)參數(shù)定義屏幕坐標(biāo)(screencoordinate,SC)系統(tǒng)。而且,可能確定觀察者使用一個(gè)位于位置L的光源觀察這些對(duì)象。圖形管道將建立另一個(gè)處理管道,以將真實(shí)坐標(biāo)數(shù)據(jù)處理成屏幕坐標(biāo)數(shù)據(jù),該數(shù)據(jù)讓計(jì)算機(jī)屏幕顯示的圖像如同觀察者在位置P所觀察到的圖像(例如,圖1D的圖像)。換句話說,計(jì)算機(jī)屏幕將提供一幅四面體T和立方體C的圖像,其中,四面體T和立方體C就如同觀察者站在位置P并且光源在位置L時(shí)所觀察的一樣。該圖像最初作為幀緩沖器的一個(gè)像素陣列進(jìn)行提供,然后通過計(jì)算機(jī)屏幕進(jìn)行顯示。幀緩沖器中的圖像典型地以大約每秒50到120次進(jìn)行刷新,即,根據(jù)編程到管道中的規(guī)格要求進(jìn)行重新生成。存在很多不同的方法,用于優(yōu)化管道并且最小化處理對(duì)象不可見部分(例如,遠(yuǎn)離觀察者的立方體C的背面)的時(shí)間。這些細(xì)節(jié)為本領(lǐng)域的技術(shù)人員所熟知,在此不作詳細(xì)討論。
在上述構(gòu)造像素陣列并且將它提供給幀緩沖器的過程中,管道a)提?。⑨敚⒌骄W(wǎng)狀物4的頂點(diǎn)的紋理圖2部分(并且因此沿每個(gè)三角形進(jìn)行延展);b)在給定相對(duì)于觀察者和光源位置的三角形方位時(shí),確定紋理圖的該部分應(yīng)該如何以及在哪里進(jìn)行顯示;并且c)構(gòu)造存儲(chǔ)在幀緩沖器中的適當(dāng)位圖像素陣列。然后,該幀緩沖器的內(nèi)容作為圖像在計(jì)算機(jī)屏幕上進(jìn)行顯示。
此后,3D圖形加速器允許我們以任何所需方式處理所顯示的對(duì)象。例如,如果我們想以45度旋轉(zhuǎn)四面體T(圖1E),3D圖形加速器將幫助這一處理。這是通過將一個(gè)表示四面體T的新位置和方位的真實(shí)坐標(biāo)模型參數(shù)的新集合,提供給圖形管道來實(shí)現(xiàn)的。此后,下次該圖形管道重新生成在幀緩沖器中存儲(chǔ)的圖像時(shí),所刷新的圖像將反映四面體T的這種旋轉(zhuǎn)。
同樣地,假設(shè)要求顯示如果觀察者從位置P前進(jìn)10步時(shí),出現(xiàn)在他面前的圖像。下次該圖形管道重新生成該圖像時(shí),它將生成并且在幀緩沖器中存儲(chǔ)與將出現(xiàn)在該觀察者面前的圖像對(duì)應(yīng)的另一像素陣列,并且該像素陣列作為另一圖像提供在計(jì)算機(jī)屏幕上。
因此可以看到,圖形管道在如視頻游戲的應(yīng)用中極其有用,在這些應(yīng)用中,如果游戲操作者走過一系列對(duì)象,就需要模擬出現(xiàn)在他面前的圖像。
如上所述,一些圖形管道使用隱式技術(shù)創(chuàng)建幾何表面模型。這些表面經(jīng)常描述為位置坐標(biāo)函數(shù),即f(x,y,z),或者,也可以包含一些頂點(diǎn)。與這些表面相關(guān)的控制點(diǎn)和附加公式用作將一個(gè)數(shù)字像素陣列(例如,圖1A所示的陣列)綁定到隱式定義的表面,并且該過程如上所述進(jìn)行。主要的差別是,表面區(qū)域是根據(jù)數(shù)學(xué)方程定義的,而不是根據(jù)帶頂點(diǎn)的圖元定義表面區(qū)域。
2D圖像的處理本發(fā)明過程的開始步驟是獲取二維數(shù)字圖像的步驟(例如,圖2A的圖10)。該步驟可以如通過使用傳統(tǒng)的數(shù)字掃描儀掃描如照片或其它圖像進(jìn)行完成。數(shù)字圖像也可以從傳統(tǒng)的數(shù)碼相機(jī)獲取。圖像還可以包括如來自直播或所存儲(chǔ)的視頻流(基本上是一系列快速、連續(xù)的2D圖像)的數(shù)字視頻圖像。然而,也可以使用任何其它來源的2D數(shù)字圖像。如上所述,數(shù)字圖像典型地作為數(shù)字值的陣列存儲(chǔ)在存儲(chǔ)器中。在一個(gè)實(shí)施例中,該數(shù)字值采用如使用MEPG1、MPEG2或其它格式的壓縮技術(shù)的壓縮格式。在數(shù)字值經(jīng)過壓縮的情況下,在處理前,它們必須首先進(jìn)行解壓縮。另外,還可以使用所掃描的圖像或來自任何如有線電視、天線、照相機(jī)等來源的數(shù)字化圖像。
如上所述,對(duì)于視頻圖像的情況,每秒必須處理由每秒數(shù)百萬像素組成的很多幀。我們發(fā)現(xiàn)標(biāo)準(zhǔn)圖形管道可以用于充分快速地處理多幀數(shù)據(jù),以處理視頻圖像。
任何類型的存儲(chǔ)器可以用于存儲(chǔ)數(shù)字2D圖像,例如,半導(dǎo)體存儲(chǔ)器(靜態(tài)存儲(chǔ)器SRAMs,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器DRAMs,或其它半導(dǎo)體存儲(chǔ)器),磁性存儲(chǔ)器(例如,硬盤,軟盤,磁帶,或磁光盤),或者其它類型的存儲(chǔ)器設(shè)備(例如,光盤)。與所存儲(chǔ)圖像對(duì)應(yīng)的像素可以根據(jù)RGB值(例如,像素色彩的紅、綠和藍(lán)分量的強(qiáng)度),YUV值或其它值進(jìn)行存儲(chǔ)(對(duì)于YUV值,Y對(duì)應(yīng)于像素值的幅度或亮度,U對(duì)應(yīng)于色彩,并且V對(duì)應(yīng)于飽和度。)。像素值也能以其它方式進(jìn)行編碼。在進(jìn)一步處理之前,根據(jù)情況,可能要求進(jìn)行轉(zhuǎn)換。
下一步,建立3D圖形管道,這是通過將對(duì)所要提供的數(shù)據(jù)做什么處理的指令提供給3D圖形管道來完成的。建立圖形管道本身為本領(lǐng)域所熟知,例如,如Microsoft Direct 3D SDK(software developer kit,軟件開發(fā)工具包)或direct 3D所述。
此后,一個(gè)平面幾何表面的計(jì)算機(jī)模型被生成。這個(gè)計(jì)算機(jī)模型可以包含圖元的集合,例如,如三角形的多邊形。在另一實(shí)施例中,計(jì)算機(jī)模型可以包括一個(gè)平面幾何表面的隱式描述。這種隱式描述典型地是一個(gè)如上所述的數(shù)學(xué)函數(shù)(例如,x,y和z的函數(shù))。
對(duì)于平面幾何表面包含一個(gè)多個(gè)圖元的網(wǎng)狀物的情況,圖元的數(shù)目和形狀,以及圖元的類型可以變化。圖2B示出一個(gè)可以用于實(shí)行本發(fā)明方法的網(wǎng)狀物12。網(wǎng)狀物12和上面所述的網(wǎng)狀物4相似。然而,和網(wǎng)狀物4不同,網(wǎng)狀物12的所有頂點(diǎn)是共面的(或大部分共面)。在一個(gè)實(shí)施例中,網(wǎng)狀物12包括大約5000個(gè)三角形,這對(duì)于處理視頻圖像是可以接受的。當(dāng)然,也可以使用其它圖元數(shù)目。
在構(gòu)建平面幾何表面(例如網(wǎng)狀物12)之后,圖像10被映射或者綁定到該平面幾何表面上。這是按照如下方式進(jìn)行實(shí)現(xiàn)的。對(duì)于平面幾何表面是一個(gè)如網(wǎng)狀物12的網(wǎng)狀物的情況,平面幾何表面的每個(gè)頂點(diǎn)(例如,三角形的頂點(diǎn))與一個(gè)圖像像素的位置相關(guān)聯(lián)(例如,控制點(diǎn))。因此,每個(gè)控制點(diǎn)與一個(gè)與像素對(duì)應(yīng)的紋理坐標(biāo)(u,v)目關(guān)聯(lián)。一個(gè)列出每個(gè)頂點(diǎn)及其關(guān)聯(lián)的u、v紋理空間坐標(biāo)的數(shù)據(jù)表被建立。這被稱作"綁定"(參見Kamen,IEEE計(jì)算機(jī)協(xié)會(huì),IEEE計(jì)算機(jī)圖形和應(yīng)用,1997年1-2月,第17卷,編號(hào)1)。對(duì)于隱式技術(shù)用于定義平面幾何表面的情況,該隱式定義表面內(nèi)的控制點(diǎn)采用與上面所討論的三角形類似的方法,綁定到像素陣列坐標(biāo)空間(u、v坐標(biāo))。
在圖10被映射到網(wǎng)狀物12之后,對(duì)象可以通過處理真實(shí)坐標(biāo)進(jìn)行處理。真實(shí)坐標(biāo)描述在x、y、z空間中該平面出現(xiàn)在什么位置以及它的方位是什么(例如,對(duì)于觀察者,它應(yīng)該持什么角度)。另外,對(duì)象的屏幕坐標(biāo)能進(jìn)行改變。從而,在2D圖像準(zhǔn)備完畢時(shí),它能夠以反映所需處理的方式進(jìn)行準(zhǔn)備。例如,它可以圍繞任何軸進(jìn)行旋轉(zhuǎn)、放大、縮小等等。
在建立真實(shí)坐標(biāo)模型和屏幕坐標(biāo)模型之后,管道在輸出幀緩沖器(outputframe buffer,OFB)中準(zhǔn)備一個(gè)包含顯示所處理的紋理網(wǎng)狀物12的像素的陣列。OFB中的像素陣列顯示在CRT或其它類型的屏幕上。
我們可以通過,例如,改變真實(shí)坐標(biāo)的參數(shù)來處理視頻圖像,例如通知管道圍繞任一軸線傾斜視頻圖像(包括垂直于屏幕或屏幕平面中的軸線)。因此,當(dāng)管道在OFB中重新生成像素陣列時(shí),所重新生成的視頻圖像將顯現(xiàn)為圍繞選定的軸線產(chǎn)生傾斜。由于管道將根據(jù)所使用的系統(tǒng)以預(yù)編程的速率重新生成圖像,因此直播視頻將以直播視頻的形式顯現(xiàn)。這是由于每次生成新像素陣列時(shí),包含輸入視頻幀緩沖器的紋理圖,被重讀并且發(fā)送到管道。由于紋理映射過程還包含用于像素插值的特性,因此發(fā)生自動(dòng)分辨率適應(yīng)。
我們可以通過移動(dòng)映射圖像的相關(guān)頂點(diǎn)來彎曲或翹曲圖像。因此,我們可以改變圖2B的平面幾何面,從而翹曲圖像。當(dāng)管道重新生成幀緩沖器中的像素陣列時(shí),圖像將呈翹曲狀。
我們可以移動(dòng)頂點(diǎn),從而網(wǎng)狀物10變?yōu)橐粋€(gè)圓柱體。當(dāng)管道重新生成幀緩沖器中的像素陣列時(shí),圖像將呈環(huán)繞圓柱體翹曲狀。(當(dāng)然,網(wǎng)狀物10能被改變?yōu)槠渌螤睿⑶以搱D像將環(huán)繞任何其它形狀發(fā)生翹曲。)這些修改能以一定的速度進(jìn)行,從而給觀察者產(chǎn)生圖像正在被翹曲或逐漸被翹曲的印象。
我們可以通過在真實(shí)坐標(biāo)系統(tǒng)中,將頂點(diǎn)彼此移遠(yuǎn)或移近,或者將圖像移近或遠(yuǎn)離觀察者,或者通過重新參數(shù)化模型坐標(biāo)到真實(shí)坐標(biāo)的變換來放大或縮小圖像。
我們能通過讓頂點(diǎn)以不同的速度下落產(chǎn)生圖像"融化"效果。
可能的3D處理的數(shù)目?jī)H僅受限于要對(duì)它們進(jìn)行全部試驗(yàn)的用戶的精力。
用于實(shí)行一個(gè)本發(fā)明方法的實(shí)施例的硬件和軟件本發(fā)明的一個(gè)實(shí)施例可以使用一臺(tái)PC進(jìn)行實(shí)行,該P(yáng)C包括1.例如Intel生產(chǎn)的如Celeron或Pentium的CPU,或者如Advanced MicroDevices生產(chǎn)的K6處理器。
2.32MB或更大的內(nèi)存。
3.3D HW適配器。這是目前可在市場(chǎng)上得到的一種圖形卡。該3D HW適配器需要具有4MB存儲(chǔ)器(最好是8MB)和一個(gè)高級(jí)圖形端口(AGP)接口(AGP接口是本領(lǐng)域所熟知的一種總線標(biāo)準(zhǔn))。作為替換,周邊連接接口(peripheral connection interface,"PCI")可以用來替代AGP。PCI是本領(lǐng)域所熟知的一種總線標(biāo)準(zhǔn)。合適3D HW適配器的例子包括可從Riva得到的TNT-2、ATI Rage 128,Matrox G400,Trident Blade 3D和S3 Savage。
4.操作系統(tǒng)可以是Windows 95、Windows 98、Win2000或者支持direct 3D的任何其它操作系統(tǒng)。Windows操作系統(tǒng)包括稱作Direct X Windows版的標(biāo)準(zhǔn)化平臺(tái)。
在一個(gè)實(shí)施例中,用戶在Direct 3D windows環(huán)境中建立平面幾何表面(例如,一個(gè)三角形網(wǎng)狀物)。然后,將指令集合提供給完成繪圖處理的圖形管道。然而,在另一實(shí)施例中,PC包括一個(gè)旁路機(jī)制,它允許我們直接使用由圖像卡制造商提供的軟件接口訪問硬件加速器。
圖3是一個(gè)執(zhí)行本發(fā)明的方法的計(jì)算機(jī)系統(tǒng)50的方框圖。結(jié)合圖3,系統(tǒng)50包括CPU52,例如PentiumII類型CPU,它包括高速緩沖存儲(chǔ)器52a、核心52b和用于實(shí)現(xiàn)核心52b和高速緩沖存儲(chǔ)器52a之間通信的內(nèi)部總線52c。核心52b通過CPU總線54和系統(tǒng)控制器56進(jìn)行通信。系統(tǒng)控制器56通過存儲(chǔ)器總線60和系統(tǒng)存儲(chǔ)器58進(jìn)行通信。系統(tǒng)存儲(chǔ)器58包括存儲(chǔ)系統(tǒng)存儲(chǔ)器程序的第一部分58a,和存儲(chǔ)如上所述的紋理圖的第二部分58b。
另外,系統(tǒng)50中還包括PCI總線62,用于實(shí)現(xiàn)系統(tǒng)控制器56和I/O設(shè)備64,66和硬盤驅(qū)動(dòng)器68之間的通信。I/O設(shè)備64可以是任何類型的I/O設(shè)備。在一個(gè)實(shí)施例中,I/O設(shè)備66是一個(gè)帶有驅(qū)動(dòng)程序的視頻捕獲卡。來自視頻捕獲卡的數(shù)據(jù)通過DMA(direct memory access,直接存儲(chǔ)器存取)或CPU52載入到幀緩沖器中,典型地,位于主存儲(chǔ)器58內(nèi)。然而,幀緩沖器可能在系統(tǒng)50內(nèi)的其它存儲(chǔ)器中。
系統(tǒng)50還包括包含3D加速器的AGP圖形控制器70。在一個(gè)實(shí)施例中,AGP圖形控制器70利用AGP總線72和系統(tǒng)控制器56進(jìn)行通信。在另一個(gè)作為替換的實(shí)施例中,AGP圖形控制器70可以利用PCI總線62和系統(tǒng)控制器56進(jìn)行通信(例如,如圖3的虛線部分所示)。
圖形控制器70使用自己本地存儲(chǔ)器74,以生成并且存儲(chǔ)要顯示在視頻顯示單元76的像素陣列。
需要強(qiáng)調(diào)的是,系統(tǒng)50僅僅是一個(gè)執(zhí)行本發(fā)明的方法的例子。其它硬件也可以進(jìn)行使用。
發(fā)明應(yīng)用存在很多適合于本發(fā)明的應(yīng)用。例如,本發(fā)明的方法可以用于處理如電視圖像的圖像流。由于在北美視頻圖像包括大約60幀/秒速率的連續(xù)幀,因此本發(fā)明的方法特別適合。例如,在NTSC情況下,要求大約每秒9.1MB的吞吐量。(NTSC是"North American Television Standard for Color(北美彩色電視標(biāo)準(zhǔn))"的縮寫。它是北美所使用的電視信號(hào)標(biāo)準(zhǔn)。)本發(fā)明的另一應(yīng)用是將不同視頻圖像或其它圖像的部分,移動(dòng)和傾斜到屏幕(如PC屏幕)的不同部分上。例如,該圖像可以進(jìn)行變換,以顯現(xiàn)在多面體(例如,立方體)的多個(gè)面上。通過在計(jì)算機(jī)顯示上單擊適當(dāng)圖標(biāo),我們可以旋轉(zhuǎn)多面體,以查看該多面體不同面上的不同圖像。該多面體可以用作一種新型的計(jì)算機(jī)菜單選項(xiàng)顯示。
根據(jù)本發(fā)明提供的經(jīng)過處理的圖像可以提供給任何合適輸出設(shè)備,例如,電視屏幕,視頻放映機(jī),HDTV監(jiān)視器或PC屏幕。根據(jù)本發(fā)明處理的圖像可以來自大量來源中的任何一種,例如,模擬或數(shù)字視頻輸入,有線電視輸入,衛(wèi)星輸入,因特網(wǎng),數(shù)字掃描儀,數(shù)碼相機(jī),或很多其它來源。(在模擬輸入的情況下,我們將首先對(duì)圖像進(jìn)行數(shù)字化。)雖然本發(fā)明是對(duì)一個(gè)特定實(shí)施例進(jìn)行描述的,但是本領(lǐng)域的技術(shù)人員應(yīng)該理解,在不脫離本發(fā)明的精神和范圍的情況下,可以對(duì)其進(jìn)行形式和細(xì)節(jié)上的修改。例如,本發(fā)明可以用于將2D圖像映射到大部分是平面的表面上,而不是完全平面的表面上。因此,所有這些修改將在本發(fā)明的范圍內(nèi)進(jìn)行。
權(quán)利要求
1.一種方法,包括提供二維圖像的數(shù)字表示;提供幾何表面的模型;將所述數(shù)字表示綁定到所述幾何表面的所述模型上;和生成與要顯示的圖像對(duì)應(yīng)的像素陣列,要顯示的所述圖像包括應(yīng)用于所述幾何表面的所述二維圖像。
2.如權(quán)利要求1所述的方法,還包括將要顯示的所述圖像顯示到顯示設(shè)備的操作。
3.如權(quán)利要求1所述的方法,其中,在所述綁定的操作中,所述幾何表面大體上是平的。
4.如權(quán)利要求3所述的方法,還包括修改所述幾何表面的操作,從而在生成所述像素陣列之前它不再為大體上的平面,因此,所述顯示圖像不顯現(xiàn)為大體上是平的。
5.如權(quán)利要求2所述的方法,還包括執(zhí)行數(shù)字處理過程的操作,所述數(shù)字處理過程包括對(duì)要顯示的所述圖像進(jìn)行翹曲、改變大小、融化,和旋轉(zhuǎn)中的一種。
6.如權(quán)利要求2所述的方法,還包括建立所述幾何表面在真實(shí)坐標(biāo)系統(tǒng)中的地點(diǎn)和位置的操作,其中,生成所述像素陣列的所述操作考慮所述幾何表面在所述真實(shí)坐標(biāo)系統(tǒng)中的地點(diǎn)和位置。
7.如權(quán)利要求1的所述方法,其中,所述幾何表面包括一個(gè)多邊形的集合。
8.如權(quán)利要求1的所述方法,其中,所述幾何表面使用隱式技術(shù)進(jìn)行定義。
9.如權(quán)利要求1的所述方法,其中,所述生成操作是使用3D圖形管道實(shí)現(xiàn)的。
10.如權(quán)利要求1的所述方法,其中,所述二維圖像的所述表示是從視頻圖像獲得的。
11.一種結(jié)構(gòu),包括第一存儲(chǔ)器,用于存儲(chǔ)二維圖像的數(shù)字表示;第二存儲(chǔ)器,用于存儲(chǔ)幾何表面的模型;第三存儲(chǔ)器,用于存儲(chǔ)真實(shí)坐標(biāo)系統(tǒng),所述真實(shí)坐標(biāo)系統(tǒng)表示要顯示對(duì)象的地點(diǎn)和方位;和圖像3D管道,用于將所述幾何表面的所述模型綁定到所述二維圖像上,并且生成與要顯示圖像對(duì)應(yīng)的像素陣列,所述圖像的所述生成,至少部分基于根據(jù)所述二維圖像加上紋理的所述幾何表面,所述圖像根據(jù)所述真實(shí)坐標(biāo)系統(tǒng)進(jìn)行定向和定位。
12.如權(quán)利要求11所述的結(jié)構(gòu),還包括用于顯示要顯示的所述圖像的顯示器。
13.如權(quán)利要求11所述的結(jié)構(gòu),其中,所述幾何表面大體上是平的。
14.如權(quán)利要求13所述的結(jié)構(gòu),其中,所述圖形管道允許對(duì)所述大體上是平的幾何表面進(jìn)行處理,從而要顯示的所述圖像不顯現(xiàn)為所述幾何表面大體上是平的。
15.如權(quán)利要求11所述的結(jié)構(gòu),其中,所述第一,第二,第三存儲(chǔ)器包括在同一存儲(chǔ)器設(shè)備內(nèi)的不同位置的集合。
16.一種方法,包括如下操作提供圖像給3D圖形管道;提供幾何表面給所述3D圖形管道;和基于至少部分所述圖像到所述幾何表面的綁定,生成像素陣列。
17.如權(quán)利要求16所述的方法,其中,所述圖像是視頻圖像。
18.如權(quán)利要求17所述的方法,其中,當(dāng)所述幾何表面被綁定到所述視頻圖像時(shí),所述幾何表面是平的幾何表面。
19.一種方法,包括如下操作提供二維圖像給3D圖形管道;提供大體上是平的幾何表面給所述3D圖形管道;基于至少部分所述二維圖像到所述平面幾何表面的綁定,生成像素陣列。
20.如權(quán)利要求19所述的方法,包括將所述二維圖像綁定到所述幾何表面,然后改變所述幾何表面的操作,從而所述幾何表面不再為大體上是平的。
21.如權(quán)利要求1或19所述的方法,其中,所述二維圖像是數(shù)字化照片。
22.如權(quán)利要求1或19所述的方法,其中,所述二維圖像是來自視頻片斷的幀。
23.如權(quán)利要求1或19所述的方法,其中,所述二維圖像是三維對(duì)象的二維圖像。
24.一種結(jié)構(gòu),包括視頻圖像源;和3D圖形管道,接收所述視頻圖像,并且通過將所述視頻圖像綁定到幾何表面和基于至少部分所述視頻圖像到所述幾何表面的綁定,生成像素陣列,來處理所述視頻圖像。
25.一種結(jié)構(gòu),包括包含二維圖像表示的存儲(chǔ)器;和包含幾何表面的存儲(chǔ)器;和3D圖形管道,用于將所述二維圖像綁定到所述幾何表面,并且生成與所述綁定的二維圖像對(duì)應(yīng)的像素陣列。
26.如權(quán)利要求25所述的結(jié)構(gòu),其中,所述幾何表面大體上是平的。
全文摘要
本發(fā)明的方法允許使用標(biāo)淮3D圖形管道(70)處理二維像素陣列。該方法包括形成二維圖像的線網(wǎng)。該線網(wǎng)包括三角形的集合,其中這些三角形的頂點(diǎn)和邊位于x,y,z坐標(biāo)空間中的同一平面中。然后,將2D圖像映射到網(wǎng)中。然后,用通過3D圖形管道處理的3D表示的相同方式處理產(chǎn)生的對(duì)象表示。
文檔編號(hào)H04N5/262GK1339142SQ00803291
公開日2002年3月6日 申請(qǐng)日期2000年2月3日 優(yōu)先權(quán)日1999年2月3日
發(fā)明者雅科夫·卡門, 利昂·舍曼 申請(qǐng)人:伊瑟夫電視公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1