TW202111663A - 用於高效的運動估計的方法和裝置 - Google Patents
用於高效的運動估計的方法和裝置 Download PDFInfo
- Publication number
- TW202111663A TW202111663A TW109127337A TW109127337A TW202111663A TW 202111663 A TW202111663 A TW 202111663A TW 109127337 A TW109127337 A TW 109127337A TW 109127337 A TW109127337 A TW 109127337A TW 202111663 A TW202111663 A TW 202111663A
- Authority
- TW
- Taiwan
- Prior art keywords
- motion estimation
- pixel group
- frame
- motion
- quality
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/53—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
- A63F2300/538—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本案內容涉及用於圖形處理的方法和裝置。裝置可以決定針對在圖框中的一或多個區域的運動估計優先順序。在一些態樣中,一或多個區域之每一者區域可以包括像素組。另外,裝置可以基於包括像素組的區域的運動估計優先順序,來調整針對每個像素組的運動估計程序的品質。裝置還可以基於所調整的運動估計程序的品質,來執行針對至少一個像素組之每一者像素組的運動估計程序,以產生針對至少一個像素組的運動向量。
Description
交叉引用
本專利申請案請求享有於2019年8月19日提出申請的標題為「METHODS AND APPARATUS FOR EFFICIENT MOTION ESTIMATION」的編號為62/888,974的美國臨時申請,以及於2020年8月7日提出申請的標題為「METHODS AND APPARATUS FOR EFFICIENT MOTION ESTIMATION」的編號為16/987,983的美國非臨時專利申請的優先權,上述申請已經轉讓給本案的受讓人,以及上述申請的全部內容經由引用的方式併入本文中。
本案內容大體係關於處理系統,以及更具體地係關於用於圖形處理的一或多個技術。
計算設備經常利用圖形處理單元(GPU)以對用於顯示的圖形資料的渲染進行加速。此類計算設備可以包括例如電腦工作站、比如所謂的智慧型電話的行動電話、嵌入式系統、個人電腦、平板電腦以及視訊遊戲控制台。GPU執行包括一或多個處理階段的圖形處理流水線,該一或多個處理階段一起運行以執行圖形處理命令以及輸出圖框。中央處理單元(CPU)可以經由向GPU發佈一或多個圖形處理命令來控制GPU的操作。現代的CPU典型地能夠同時地執行多個應用,該多個應用之每一者應用可能需要在執行期間利用GPU。提供內容用於在顯示器上的視覺顯示的設備通常包括GPU。
典型地,設備的GPU被配置為執行在圖形處理流水線中的程序。然而,隨著無線通訊和較小的、手持設備的出現,已經發展了針對改善的圖形處理的增加的需要。
下文展示一或多個態樣的簡化的總結,以便提供對此類態樣的基本理解。本總結不是所有預期的態樣的廣泛的概述,以及不旨在標識所有態樣的關鍵元素,也不旨在描述任何或所有態樣的範圍。本發明摘要以簡化的形式展示一或多個態樣的一些概念,作為隨後展示的更加詳細的描述的序言。
在本案內容的一態樣中,提供了方法、電腦可讀取媒體和裝置。裝置可以是圖形處理單元(GPU)。在一些態樣中,裝置可以被配置為決定針對在圖框中的一或多個區域的運動估計優先順序,其中一或多個區域之每一者區域包括至少一個像素組。裝置可以被配置為:基於包括像素組的區域的運動估計優先順序,來調整針對每個像素組的運動估計程序的品質。裝置可以被配置為:基於所調整的運動估計程序的品質,來執行針對至少一個像素組之每一者像素組的運動估計程序,以產生針對至少一個像素組的運動向量。
在一些實現方式中,一或多個區域包括中心區域和邊緣區域。
在一些實現方式中,一或多個區域包括在中心區域與邊緣區域之間的至少一個中間區域。
在一些實現方式中,裝置被配置為追蹤眼睛的位置。在圖框中的一或多個區域是相對於眼睛的位置來定義的。
在一些實現方式中,裝置被配置為:決定針對在具有最低運動估計優先順序的區域中的至少一個像素組設置常數值。
在一些實現方式中,裝置被配置為:基於運動估計優先順序,來設置至少一個像素組的大小。
在一些實現方式中,裝置被配置為:基於運動估計優先順序,來調整要在運動估計程序期間覆蓋的搜尋窗的大小。
在一些實現方式中,裝置被配置為:基於運動估計優先順序,來決定在運動估計程序中具有運動向量細化的多路徑演算法的包含或省略。
在一些實現方式中,裝置被配置為:基於運動估計優先順序,來決定用於絕對差和(SAD)運算或平方差和(SSD)運算的區塊的大小。
在一些實現方式中,裝置被配置為:基於運動估計優先順序,來調整在運動搜尋過濾期間執行的或對最終的運動向量執行的過濾的數量。
在一些實現方式中,裝置被配置為:基於針對每個像素組的運動向量,來從圖框外推新的圖框。
本案內容的一或多個示例的細節在下文附圖和說明書中陳述。根據說明書和附圖,以及根據申請專利範圍,本案內容的其它特徵、物件以及優勢將是顯而易見的。
當在虛擬實境(VR)、增強現實(AR)、擴展現實(XR)或遊戲應用中部署圖框外推解決方案時,執行高品質運動估計可以是重大的成本。在這些應用中,與距離圖像的焦點較近的圖像區域相比,距離圖像的焦點較遠的區域可以認為是較不重要的。在一些態樣中,運動估計品質可以是基於與圖像的焦點的距離來縮放的。為了降低運動估計的潛在成本,本案內容的各態樣可以基於與圖像的焦點的距離來執行運動估計。例如,本案內容的各態樣可以決定針對在圖框中的一或多個區域的運動估計優先順序,其中一或多個區域之每一者區域可以包括相應的運動向量。本案內容的各態樣還可以基於運動估計優先順序來調整每個相應的運動向量的品質。本案內容的各態樣還可以基於相應的運動向量的品質來執行針對一或多個區域之每一者區域的運動估計。
系統、裝置、電腦程式產品和方法的各個態樣是在下文中參考附圖更加全面地描述的。然而,本案內容可以以許多不同的形式來體現以及不應當解釋為限制於遍及本案內容展示的任何特定的結構和功能。更準確地說,提供這些態樣以便本案內容將是詳盡的和完整的,以及將向本領域技藝人士全面地傳達本案內容的範圍。基於本文中的教導,本領域技藝人士應當理解的是,本案內容的範圍旨在覆蓋本文中揭露的系統、裝置、電腦程式產品和方法的任何態樣,不管是獨立於本案內容的其它態樣來實現的還是與本案內容的其它態樣組合的。例如,可以使用本文中陳述的任何數量的態樣來實現裝置或實踐方法。另外,本案內容的範圍旨在覆蓋此類裝置或方法,該裝置或者方法是使用除了本文中陳述的本案內容的各個態樣之外的或不同於本文中陳述的本案內容的各個態樣的其它結構、功能、或者結構和功能來實踐的。本文中揭露的任何態樣可以經由申請專利範圍中的一或多個元素來體現。
雖然本文中描述各個態樣,但是這些態樣的許多變形和置換也落入本案內容的範圍內。雖然提及了本案內容的各態樣的一些潛在益處和優勢,但是本案內容的範圍不旨在限制於特定的益處、用途或目標。更準確地說,本案內容的各態樣旨在廣泛地適用於不同的無線技術、系統配置、網路和傳輸協定,其中的一些經由舉例的方式在附圖中以及在以下說明書中進行了說明。具體實施方式和附圖僅僅是對本案內容的說明而不是限制,本案內容的範圍是經由所附的申請專利範圍及其均等物來限定的。
參考各種裝置和方法來展示數個態樣。這些裝置和方法是經由各種方塊、元件、電路、程序、演算法等(共同地作為「元素」),在以下具體實施方式中進行描述的,以及在附圖中進行示出的。這些元素可以使用電子硬體、電腦軟體或其任意組合來實現。此類元素是實現為硬體還是軟體,取決於特定的應用以及施加在整個系統上的設計約束。
經由示例的方式,元素或元素的任何部分或元素的任意組合可以實現為包括一或多個處理器(該處理器還可以稱為處理單元)的「處理系統」。處理器的示例包括被配置為執行遍及本案內容來描述的各種功能的微處理器、微控制器、圖形處理單元(GPU)、通用GPU(GPGPU)、中央處理單元(CPU)、應用處理器、數位訊號處理器(DSP)、精簡指令集計算(RISC)處理器、片上系統(SOC)、基頻處理器、專用積體電路(ASIC)、現場可程式化閘陣列(FPGA)、可程式化邏輯裝置(PLD)、狀態機、閘控邏輯、個別硬體電路以及其它適當的硬體。處理系統中的一或多個處理器可以執行軟體。無論是被稱作為軟體、韌體、仲介軟體、微代碼、硬體描述語言或其它術語,軟體可以廣義地解釋為意指指令、指令集、代碼、程式碼片段、程式碼、程式、副程式、軟體元件、應用、軟體應用、套裝軟體、常式、子常式、物件、可執行檔、執行執行緒、程序、功能等。術語應用可以指的是軟體。如本文中所描述的,一或多個技術可以指的是被配置為執行一或多個功能的應用,即軟體。在此類示例中,應用可以儲存在記憶體上,例如處理器的片上記憶體、系統記憶體或任何其它記憶體。本文中描述的比如處理器的硬體可以被配置為執行應用。例如,應用可以描述為包括代碼,該代碼在由硬體執行時使得硬體執行本文中描述的一或多個技術。作為示例,硬體可以從記憶體存取代碼以及執行從記憶體存取的代碼,以執行本文中描述的一或多個技術。在一些示例中,在本案內容中對元件進行標識。在此類示例中,元件可以是硬體、軟體或其組合。元件可以是單獨的元件或單個元件的子元件。
相應地,在本文中描述的一或多個示例中,描述的功能可以在硬體、軟體、或其組合中來實現。如果是在軟體中實現的,則功能可以儲存在電腦可讀取媒體上或編碼為在電腦可讀取媒體上的一或多個指令或代碼。電腦可讀取媒體包括電腦儲存媒體。儲存媒體可以是可以由電腦存取的任何可用媒體。經由示例而非限制的方式,此類電腦可讀取媒體可以包括隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電子可抹除可程式化ROM(EEPROM)、光碟儲存、磁碟儲存、其它磁性儲存裝置、上述類型的電腦可讀取媒體的組合、或可以用於以能夠由電腦存取的指令或資料結構的形式儲存電腦可執行代碼的任何其它媒體。
大體上,本案內容描述用於具有在單個設備或多個設備中的圖形處理流水線、改善對圖形內容的渲染、及/或降低處理單元的負載的技術,該處理單元即被配置為執行本文描述的一或多個技術的任何處理單元,比如GPU。例如,本案內容描述了用於在利用圖形處理的任何設備中的圖形處理的技術。遍及本案內容描述其它示例益處。
如本文中所使用的,術語「內容」的實例可以指的是「圖形內容」、「圖像」,反之亦然。不管這些術語是用作形容詞、名詞還是其它詞類,都是如此。在一些示例中,如本文中所使用的,術語「圖形內容」可以指的是由圖形處理流水線的一或多個程序產生的內容。在一些示例中,如本文中所使用的,術語「圖形內容」可以指的是由被配置為執行圖形處理的處理單元產生的內容。在一些示例中,如本文中所使用的,術語「圖形內容」可以指的是由圖形處理單元產生的內容。
如本文中所使用的,術語「內容」的實例可以指的是圖形內容或顯示內容。在一些示例中,如本文中所使用的,術語「圖形內容」可以指的是由被配置為執行圖形處理的處理單元產生的內容。例如,術語「圖形內容」可以指的是經由圖形處理流水線的一或多個程序產生的內容。在一些示例中,如本文中所使用的,術語「圖形內容」可以指的是由圖形處理單元產生的內容。在一些示例中,如本文中所使用的,術語「顯示內容」可以指的是由被配置為執行顯示處理的處理單元產生的內容。在一些示例中,如本文中所使用的,術語「顯示內容」可以指的是由顯示處理單元產生的內容。圖形內容可以被處理以變成顯示內容。例如,圖形處理單元可以向緩衝器(該緩衝器可以稱為圖框緩衝器)輸出圖形內容,比如圖框。顯示處理單元可以從緩衝器讀取比如一或多個圖框的圖形內容,以及對其執行一或多個顯示處理技術以產生顯示內容。例如,顯示處理單元可以被配置為對一或多個渲染的層執行合成以產生圖框。作為另一示例,顯示處理單元可以被配置為將兩個或更多個層進行合成、混合或以其它方式組合在一起成單個圖框。顯示處理單元可以被配置為對圖框執行縮放,例如,向上縮放或向下縮放。在一些示例中,圖框可以指的是層。在其它示例中,圖框可以指的是已經混合在一起以形圖框的兩個或更多個層,即圖框包括兩個或更多個層,以及可以隨後混合包括兩個或更多個層的圖框。
圖1是示出被配置為實現本案內容的一或多個技術的示例內容產生系統100的方塊圖。內容產生系統100包括設備104。設備104可以包括用於執行本文中描述的各種功能的一或多個元件或電路。在一些示例中,設備104的一或多個元件可以是SOC的元件。設備104可以包括被配置為執行本案內容的一或多個技術的一或多個元件。在示出的示例中,設備104可以包括處理單元120和系統記憶體124。在一些態樣中,設備104可以包括若干可選擇的元件,例如通訊介面126、收發機132、接收器128、發射器130、顯示處理器127和一或多個顯示器131。對顯示器131的引用可以指的是一或多個顯示器131。例如,顯示器131可以包括單個顯示器或多個顯示器。顯示器131可以包括第一顯示器和第二顯示器。第一顯示器可以是左眼顯示器,以及第二顯示器可以是右眼顯示器。在一些示例中,第一顯示器和第二顯示器可以接收用於在其上的演示的不同的圖框。在其它示例中,第一顯示器和第二顯示器可以接收用於在其上的演示的相同的圖框。在進一步的示例中,圖形處理的結果可以不在設備上顯示,例如第一顯示器和第二顯示器可以不接收用於在其上的演示的任何圖框。反而,圖框或圖形處理結果可以轉移到另一設備。在一些態樣中,這可以稱為分離渲染(split-rendering)。
處理單元120可以包括內部記憶體121。處理單元120可以被配置為執行圖形處理,比如在圖形處理流水線107中。在一些示例中,設備104可以包括比如顯示處理器127的顯示處理器,以在由一或多個顯示器131進行的演示之前對由處理單元120產生的一或多個圖框執行一或多個顯示處理技術。顯示處理器127可以被配置為執行顯示處理。例如,顯示處理器127可以被配置為對由處理單元120產生的一或多個圖框執行一或多個顯示處理技術。一或多個顯示器131可以被配置為顯示或以其它方式展示由顯示處理器127處理的圖框。在一些示例中,一或多個顯示器131可以包括以下各項中的一項或多項:液晶顯示器(LCD)、等離子顯示器、有機發光二極體(OLDE)顯示器、投影顯示裝置、增強現實顯示裝置、虛擬實境顯示裝置、頭戴式顯示器或任何其它類型的顯示裝置。
在處理單元120之外的比如系統記憶體124的記憶體可以是對於處理單元120而言可存取的。例如,處理單元120可以被配置為從外部記憶體讀取及/或向外部記憶體寫入,該外部記憶體比如系統記憶體124。處理單元120可以經由匯流排通訊地耦合到系統記憶體124。在一些示例中,處理單元120可以經由匯流排或不同的連接來通訊地互相耦合。
內部記憶體121或系統記憶體124可以包括一或多個揮發性的或非揮發性的記憶體或儲存裝置。在一些示例中,內部記憶體121或系統記憶體124可以包括RAM、SRAM、DRAM、可抹除可程式化ROM (EPROM)、電子可抹除可程式化ROM(EEPROM)、快閃記憶體、磁性資料媒體或光學儲存媒體、或任何其它類型的記憶體。
根據一些示例,內部記憶體121或系統記憶體124可以是非暫時性儲存媒體。術語「非暫時性」可以指示儲存媒體不是以載波或傳播的信號來體現的。然而,術語「非暫時性」不應當解釋為意指內部記憶體121或系統記憶體124是不可移動的或其內容是靜態的。作為一個示例,系統記憶體124可以從設備104中移除或移動到另一設備。作為另一示例,系統記憶體124不可以是從設備104中可移除的。
處理單元120可以是中央處理器(CPU)、圖形處理單元(GPU)、通用GPU(GPGPU)或可以被配置為執行圖形處理的任何其它處理單元。在一些示例中,處理單元120可以整合到設備104的主機板中。在一些示例中,處理單元120可以存在於安裝在設備104的主機板中的埠中的圖形卡上,或可以以其它方式合併在被配置為與設備104交交互動操作的周邊設備內。處理單元120可以包括一或多個處理器,比如一或多個微處理器、GPU、專用積體電路(ASIC)、現場可程式化閘陣列(FPGA)、算數邏輯單位(ALU)、數位訊號處理器(DSP)、個別邏輯、軟體、硬體、韌體、其它等效的整合或個別邏輯電路、或其任何組合。如果技術是部分地在軟體中實現的,那麼處理單元120可以在例如內部記憶體121的適當的、非暫時性電腦可讀取媒體中儲存用於軟體的指令,以及可以使用一或多個處理器來在硬體中執行指令以執行本案內容的技術。包括硬體、軟體、硬體和軟體的組合等的前述項中的任何項可以被認為是一或多個處理器。
在一些態樣中,內容產生系統100可以包括可選擇的通訊介面126。通訊介面126可以包括接收器128和發射器130。接收器128可以被配置為執行本文中關於設備104描述的任何接收功能。另外,接收器128可以被配置為從另一設備接收資訊,例如眼睛或頭部位置資訊、渲染命令或位置資訊。發射器130可以被配置為執行本文中關於設備104描述的任何發送功能。例如,發射器130可以被配置為向另一設備發送資訊,該另一設備可以包括針對內容的請求。接收器128和發射器130可以組合成收發機132。在此類示例中,收發機132可以被配置為執行本文中關於設備104描述的任何接收功能及/或發送功能。
再次參考圖1,在某些態樣中,圖形處理流水線107可以包括決定元件198,該決定元件198被配置為決定針對在圖框中的一或多個區域的運動估計優先順序。在一些態樣中,一或多個區域之每一者區域可以包括至少一個像素組。另外,決定元件198可以被配置為:基於包括像素組的區域的運動估計優先順序,來調整針對每個像素組的運動估計程序的品質。決定元件198還可以被配置為:基於調整的運動估計程序的品質,來執行針對至少一個像素組之每一者像素組的運動估計程序,以產生針對至少一個像素組的運動向量。在一些實現方式中,決定元件198還可以被配置為:基於針對每個像素組的運動向量,來從圖框外推新的圖框。
如本文中所描述的,比如設備104的設備可以指的是被配置為執行本文中描述的一或多個技術的任何設備、裝置或系統。例如,設備可以是伺服器、基地台、使用者裝備、客戶端設備、站、存取點、電腦(例如,個人電腦、桌上型電腦、膝上型電腦、平板電腦、電腦工作站、大型電腦)、最終產品、裝置、電話、智慧型電話、伺服器、視訊遊戲平臺或控制台、手持設備(例如,便攜視訊遊戲裝置或個人數位助理(PDA))、可穿戴計算設備(例如,智慧手錶、增強現實設備或虛擬實境設備)、非可穿戴設備、顯示器或顯示裝置、電視機、電視機上盒、中間網路設備、數位媒體播放機、視訊串流設備、內容串流設備、車內電腦、任何行動設備、被配置為產生圖形內容的任何設備,或被配置為執行本文中描述的一或多個技術的任何設備。
圖2示出根據本案內容的一或多個技術的示例GPU 200。如在圖2中所示出的,GPU 200包括命令處理器(CP)210、繪製調用封包212、頂點獲取器(fetcher)(VFD)220、頂點著色器(VS)222、頂點快取記憶體(VPC)224、三角設置引擎(TSE)226、光柵器(RAS)228、Z程序引擎(VPC)230、像素內插器(PI)232、片段著色器(FS)234、渲染後端(RB)236、L2快取記憶體(UCHE)238和系統記憶體240。雖然圖2顯示GPU 200包括處理單元220-238,但是GPU 200可以包括若干額外的處理單元。另外,處理單元220-238僅僅是示例,以及處理單元的任何組合或次序可以由GPU根據本案內容來使用。GPU 200還包括命令緩衝器250、上下文緩衝器封包260以及上下文狀態261。
GPU可以處理在GPU流水線上的多種類型的資料。例如,在一些態樣中,GPU可以處理兩種類型的資料或資料封包,例如上下文緩衝器封包和繪製調用資料。如在圖2中所示出的,GPU可以利用例如CP 210的CP或硬體加速器,以將命令緩衝器解析成上下文暫存器封包(例如,上下文暫存器封包260)及/或繪製調用資料封包(例如,繪製調用封包212)。CP 210可以然後經由分開的通道向在GPU中的處理單元或區塊發送上下文暫存器封包260或繪製調用封包212。進一步地,命令緩衝器250可以交替上下文緩衝器和繪製調用的不同狀態。例如,命令緩衝器可以構建為以下各項:上下文N的上下文暫存器、上下文N的繪製調用、上下文N+1的上下文暫存器和上下文N+1的繪製調用。
運動估計是分析多個二維(2D)圖像以及產生運動向量的程序,該運動向量描述區域從一個圖像到另一圖像的移動。例如,運動估計是對在連續的圖框期間經歷的運動進行估計的方法,例如在虛擬實境(VR)、增強現實(AR)、擴展顯示(XR)及/或遊戲應用期間。運動估計可以產生運動向量,該運動向量可以描述物件或像素組如何在圖像的某些部分內移動。
運動向量可以具有多種用途,該用途包括視訊壓縮、比如運動模糊的後處理效果和圖框外推或內插。為了減輕在GPU上的渲染工作負荷,VR或AR系統可以利用運動估計,以便從先前渲染的內容外推圖框。經由此操作,這可以允許GPU以降低的速率來渲染圖框,其中外推的圖框是代替渲染的內容來顯示給使用者的。運動估計可以是有用的,因為在VR或AR系統中存在降低例如在GPU處的渲染工作負荷的強大驅力。
圖框外推是增加VR、AR、XR及/或遊戲應用的畫面播放速率的方法。例如,圖框外推可以估計在兩個前先渲染的圖框之間的運動,以及基於檢測的運動來外推新的圖框。在一些態樣中,在外推圖框時,不以特定的畫面播放速率進行渲染,本案內容的各態樣可以以較低的畫面播放速率進行渲染,對渲染的圖框執行運動估計,以及然後使用運動估計以外推內容。該內容可以然後與其它內容穿插以產生更高的畫面播放速率。
VR、AR、XR及/或遊戲應用的一些態樣可能具有針對功率和運行效率兩者的苛刻的約束。相應地,這些應用可以具有對增加效能和降低利用的功耗兩者的約束。為了緩和這些約束,可以對先前渲染的用於外推圖框的內容執行運動估計。繼而,這可以允許圖框渲染以降低的畫面播放速率進行處理。例如,為了幫助降低效能和功率,可以渲染每隔一個的圖框,而不是渲染每一圖框。運動估計可以然後是在圖框之間執行的。在一些態樣中,運動估計可以是在渲染的圖框之間執行的,以及這可以產生關於圖像的物件和像素組已經如何移動的資訊。使用運動估計和先前渲染的圖框,圖框是可以被外推的而不是被渲染。
儘管以降低的畫面播放速率運行可以產生功耗和效能增益,但是執行高品質運動估計的成本也能夠是重大的管理負擔,例如當部署圖框外推解決方案時。所以運動估計也可以利用資源及/或要求高成本。繼而,在執行圖框外推時,運動估計的成本可以使降低的畫面播放速率的功率和效能增益降低。相應地,雖然可以改善畫面播放速率,但是還可能存在執行運動估計的資源的數量的增加。
執行運動估計的一些態樣可以不要求遍及圖像的統一的運動估計品質。可能存在用於激勵針對不統一的運動估計品質的需要的數個貢獻因素。例如,在AR或VR設備上的鏡頭可以在邊沿周圍具有降低的光學清晰度。所以,在鏡頭的中心,圖片能夠是清晰的,但是接近鏡頭的邊緣的圖像可能是模糊的。
進一步地,區段形失真可能導致在圖像的邊緣中的過度渲染,使得接近顯示器的邊緣的圖像可能以過度表現結束。例如,地圖的標準投影可以具有過於大地表現的極點區域。另外,人眼感知在接近眼睛的中心的非常狹窄的區域中的高解析度,該非常狹窄的區域是小凹區域。所以接近凹區域可能包括最高敏銳度,以及在凹外面可能是更加自然(course)。
在一些態樣中,運動估計工作負荷可以連同上述的參數一起縮放,其中最高品質運動估計可以發生在圖形的中心附近,中間品質運動估計可以發生在圖像的中間,以及在一些態樣中,在圖像的邊緣附近可以不執行運動估計。所以,本案內容的各態樣可以在執行運動估計時使用上述的參數,比如經由調整運動估計以將計算資源集中在接近焦點的區域上,及/或降低針對在焦點外面的區域的計算。
在一些情況中,在存在眼睛追蹤時,運動估計品質還可以基於與焦點的距離來縮放,例如因為運動估計的較低品質或不足可能在邊緣區域附近是不可感知的。所以本案內容的各態樣可以引入基於眼睛的焦點跨越圖像的不同區域來應用的變化的計算位准。
本案內容的一些態樣可以包括若干參數,該若干參數可以是包括在調整運動估計品質中的。例如,本案內容的各態樣可以決定執行針對某個區域的運動估計還是不執行運動估計。所以本案內容的各態樣可以在邊緣區域中不執行運動估計,以及在中心區域中執行運動估計。在不執行運動估計的區域中,針對在該區域中的像素組的運動向量可以設置為常數,比如零。在一些實現方式中,針對該區域的常數可以基於執行運動估計的區域的平均運動向量。
另外,產生的運動向量的密度可以是在調整運動估計品質時的因素。例如,一個向量可以對應於一定數量的像素,例如8乘8方塊的像素,或一個向量可以對應於單個像素。在一些態樣中,被產生以描述在圖像中的像素的運動的運動向量可以取決於運動估計是如何執行的。照此,在運動估計中可以存在不同級別的粒度。所以運動估計的粒度可以跨越圖像的不同區域而變化。例如,較高優先順序區域可以使用較小組的像素(例如,4乘4方塊的像素),然而較低優先順序區域可以使用較大組的像素(例如,16乘16方塊的像素)。
在一些態樣中,可以在運動估計期間利用搜尋窗。例如,在從其來執行運動估計的每個點周圍存在特定大小的搜尋窗。所以如果點在圖像的一部分中,例如圖像的左上角,那麼在該點周圍可以利用搜尋窗,使得用於運動估計的候選位置在圖像的該特定區域內。例如,本案內容的各態樣在圖像的邊緣或圖像的中心處可以具有變化的大小的搜尋窗。例如,與圖像的邊緣相比,圖像的中心可以具有較大的搜尋窗。所以針對每個潛在的向量的搜尋窗大小可以是跨越圖像的不同區域來調整的。
在一些情況中,搜尋窗可以控制可以產生的運動向量的最大量級。例如,演算法可以執行區塊匹配,使得來自第一個圖像的區塊是與在隨後的圖像中的相應的區塊比較的。經由各種計算,區塊可以被匹配,這可以提供關於區域如何已經從圖框到圖框或從圖像到圖像進行移動的資訊。搜尋窗可以決定在隨後的圖像中距在第一個圖像中的位置多遠來搜尋相匹配的區塊。因此,在一些情況中,為了降低工作負荷,針對較低優先順序區域可以利用較小的搜尋窗,因為較大的搜尋窗可能是更加資源密集的。
在一些態樣中,可以在運動估計期間利用具有運動向量細化的多路徑演算法的包含或省略。一些運動估計方式可以在演算法中具有多個路徑或多個階段。可以存在層級結構,其中運動估計是在低解析度處開始的,以及然後是在隨後的步驟期間在高分辨處執行的。相應地,可以改進運動估計,以及可以增加解析度。所以可以存在執行路線搜尋(course search)的多個階段,以及然後存在細化階段及/或向量過濾。在一些實現方式中,粗略搜尋可以是針對較低優先順序區域來執行的,以及細化階段及/或向量過濾階段可以是僅針對較高優先順序區域來執行的。
在一些情況中,與可能不那麼精確的簡單演算法相比,具有多個路徑的更複雜的演算法可能是更詳盡的和更昂貴的。本案內容的各態樣還可以取決於區域來改變用於運動估計的演算法,例如接近焦點的較詳盡的演算法,以及接近邊緣的較簡單的演算法。
另外,運動估計的區塊大小可以利用絕對差和(SAD)運算或平方差和(SSD)運算作為區塊匹配運算。用於運動估計的演算法可以執行區塊匹配運算。SAD及/或SSD運算可以決定這些區塊如何很好地互相匹配。本案內容的各態樣還可以改變基於圖像的區域來使用的區塊的大小。因此,較大的區塊可以用於具有較高優先順序的中心區域,以及較小的區塊可以用於具有較低優先順序的邊緣區域。
此外,過濾可以是在運動搜尋期間執行的及/或對運動向量的某個路徑(例如,最終的運動向量)執行的。在一些態樣中,在過濾路徑期間,可以存在對向量資料的某個種類的平滑化處理或後處理。例如,在運動估計中可能存在雜訊,該雜訊可能需要被過濾。過濾也可能消耗處理資源。照此,本案內容的各態樣可以在較大重要性的區域(例如,接近圖像的中心的較高優先順序區域)處執行更徹底的過濾,以及在較小重要性的區域(例如,接近圖像的邊緣區域的較低優先順序區域)處執行較不徹底的過濾。
本案內容的各態樣可以包括執行上述程序的若干不同的實現方式。例如,品質評估可以與檢視器和圖框外推聯合測試應用一起來實現。在一些態樣中,可以執行多個級別參數選擇,比如全品質運動估計或無運動估計。在一些情況中,全運動估計可以是在例如圓形區域中執行的,該圓形區域的半徑為從鏡頭中心到眼睛緩衝邊沿的距離的75%。在這些情況中,品質可能未被明顯地影響,使得動畫可以在清晰度高的中心鏡頭區域中保持流暢。另外,這些上述的運動估計方法可以導致降低運動估計工作負荷,例如,運動估計工作負荷降低56%。此外,增加眼睛追蹤可以提供進一步的工作負荷降低,因為高品質區域可以跟隨使用者的凹區域,這可以允許更激進的運動估計參數。
圖3是示出圖框302的區域的示意圖300。區域可以是基於圖框的中心來定義的。在使用眼睛追蹤的地方,區域可以基於是眼睛的焦點來定義的。例如,區域大體可以定義為圓形或環形的同心區域。中心區域310可以位於圖框的中心或眼睛的焦點處。可以給中心區域310分配最高的運動估計優先順序。邊緣區域340可以位於圖框的邊緣附近。例如,在邊緣區域340內的點可以位於距圖框的中心或焦點一定距離,該距離大於閥值距離。在一些實現方式中,閥值距離可以是從圖框的中心到眼睛緩衝邊沿的距離的75%。可以給邊緣區域340分配最低運動估計優先順序。在一些實現方式中,區域可以包括位於中心區域310與邊緣區域340之間的一或多個中間區域。例如,如所示出的,第一中間區域320可以圍繞中心區域310,以及第二中間區域330可以圍繞第一中間區域320。在一些實現方式中,每個中間區域可以經由距圖框的中心或眼睛的焦點的閥值距離來定義。針對距圖框的中心或眼睛的焦點較遠的區域,中間區域可以具有遞減的運動估計優先順序。例如,如利用四個區域所示出的,運動估計優先順序的次序可以是:中心區域310、第一中間區域320、第二中間區域330、邊緣區域340。運動向量品質或運動估計品質可以是基於運動估計優先順序的次序來分配給每個區域的。
圖4A和圖4B根據本案內容的一或多個技術分別地示出在示例圖框400和410中的運動向量。圖4A示出在不利用本案內容的上述運動估計程序的圖框400中的運動向量。圖4B示出在利用本案內容的上述運動估計程序的圖框410中的運動向量。如在圖4A中所示出的,運動向量是針對跨越圖框400的像素組來估計的。如在圖4B中所示出的,運動向量是僅針對在中心區域412內的像素組來估計的。針對在邊緣區域414內的像素組的運動向量可以設置為常數值(例如,無運動設置為0)。因此,估計的運動向量更多地集中在較大重要性的區域附近,例如,接近圖框410的中心。也就是說,運動向量可以是針對在接近圖框410的中心的中心區域412內的每個像素組來估計的。相應地,在執行圖框外推時,在中心區域412中的像素組的運動可以更精確。對使用者來說,在圖框410中表現的物件的移動可以顯得如在圖框400中的物件的移動一樣流暢。然而,與針對圖框400的運動向量的估計相比,針對圖框410的運動向量的估計可能消耗顯著地較少的資源。例如,在區域412定義為從鏡頭中心到眼睛緩衝邊沿的距離的75%以及針對邊緣區域414不執行運動估計的實現方式中,與圖框400相比,總的運動估計工作負荷可以降低56%。相應地,本案內容的各態樣為運動向量的估計和計算資源的相關聯的使用更加集中在更大重要性的區域附近(例如,接近圖像的中心)做準備。進一步地,本案內容的各態樣可以減少在較小重要性的區域(例如,接近圖像的邊緣的區域)處執行的運動估計的數量,因此降低運動估計工作負荷以及改善畫面播放速率及/或降低功耗。
圖5A、圖5B和圖5C示出針對不同的區域使用不同的運動估計技術的示例實現方式的結果。例如,圖5A是基於圖4A的運動向量來產生的圖像500的示例的照片,以及圖5B是基於圖4B的運動向量來產生的圖像510的照片。圖5C是示出在圖5A與圖5B之間的差異的區域的熱圖520。在圖5A與圖5B之間的差異將很難由使用者認出,特別是當被看作是一系列圖框中的一個圖框時。如在圖5C中所示出的,差異僅在使用者不太可能注視的邊緣區域。相應地,使用針對邊緣區域的降低的運動估計的本揭露的技術,可以提供在處理資源的使用中的顯著的降低而不顯著地降低感知到的品質。
圖6示出根據本案內容的一或多個技術的示例方法600的示例流程圖。方法600可以由用於圖形處理的GPU或裝置來執行。可選擇的方塊是利用虛線來示出的。
在方塊610中,方法600可以可選擇地包括追蹤眼睛的位置。例如,裝置可以包括眼睛追蹤器,該眼睛追蹤器具有針對使用者的眼睛的一或多個感測器以決定眼睛的位置。眼睛追蹤器可以決定眼睛在顯示器上的焦點。眼睛追蹤器可以決定在圖框內的相應的點。處理單元120及/或決定元件198可以接收對眼睛相對於圖框的位置的指示。
在方塊620中,方法600可以包括決定針對在圖框中的一或多個區域的運動估計優先順序,其中一或多個區域之每一者區域包括至少一個像素組。例如,包括處理單元120及/或決定元件198的裝置可以決定針對在圖框中的一或多個區域的運動估計優先順序,如結合在圖4A和圖4B中的示例所描述的。在一些態樣中,一或多個區域之每一者區域可以包括像素組。例如,一或多個區域可以包括中心區域和邊緣區域。在一些實現方式中,一或多個區域包括在中心區域與邊緣區域之間的至少一個中間區域。在一些實現方式中,在圖框中的一或多個區域是相對於眼睛的位置來定義的。
在方塊630處,方法600可以包括:基於包括像素組的區域的運動估計優先順序,來調整針對每個像素組的運動估計程序的品質。例如,包括處理單元120及/或決定元件198的裝置可以基於運動估計優先順序來調整針對每個像素組的運動估計程序的品質,如結合在圖4A和圖4B中的示例所描述的。
例如,在一些實現方式中,在子方塊632處,方塊630可以可選擇地包括決定針對在具有最低運動估計優先順序的區域中的至少一個像素組設置常數值。在一些實現方式中,在子方塊634處,方塊630可以可選擇地包括:基於運動估計優先順序,來設置至少一個像素組的大小。在一些實現方式中,在子方塊636處,方塊630可以可選擇地包括:基於運動估計優先順序來調整要在運動估計程序期間覆蓋的搜尋窗的大小。在一些實現方式中,在子方塊638處,方塊630可以可選擇地包括:基於運動估計優先順序,來決定在運動估計程序中具有運動向量細化的多路徑演算法的包含或省略。在一些實現方式中,在子方塊640處,方塊630可以可選擇地包括:基於運動估計優先順序,來決定用於SAD運算或SSD運算的區塊大小。在一些實現方式中,在子方塊642處,方塊630可以可選擇地包括:基於運動估計優先順序,來調整在運動搜尋過濾期間執行的或對最終的運動向量執行的過濾的數量。在一態樣中,方塊630可以包括子方塊632、634、636、638、640或642中的以組合方式的兩個或更多個子方塊。
在方塊650處,方法600可以包括:基於所調整的運動估計程序的品質,來執行針對至少一個像素組之每一者像素組的運動估計程序,以產生針對至少一個像素組的運動向量。例如,包括處理單元120及/或決定元件198的裝置還可以基於所調整的運動估計程序的品質來執行針對一或多個區域中每個區域的運動估計程序,如結合在圖4A和圖4B中的示例所描述的。
在方塊660處,方法600可以可選擇地包括:基於針對每個像素組的運動向量,來從圖框外推新的圖框。例如,處理單元120及/或決定元件198可以基於針對每個像素組的運動向量來從圖框外推新的圖框(例如,圖框510)。
在一個配置中,提供了用於圖形處理的方法或裝置。裝置可以是GPU或可以執行圖形處理的某種其它處理器。在一個態樣中,裝置可以是在設備104內的處理單元120,或可以是在設備104內的某種其它硬體或另一設備。裝置可以包括用於追蹤眼睛的位置的構件。裝置可以包括用於決定針對在圖框中的一或多個區域的運動估計優先順序的構件。裝置還可以包括用於基於包括像素組的區域的運動估計優先順序來調整針對每個像素組的運動估計程序的品質的構件。裝置還可以包括用於基於所調整的運動估計程序的品質來執行針對至少一個像素組之每一者像素組的運動估計程序,以產生針對至少一個像素組的運動向量的構件。裝置還可以包括用於基於針對每個像素組的運動向量來從圖框外推新的圖框的構件。
本文中描述的標的可以實施為實現一或多個益處或優勢。例如,描述的圖形處理技術可以以與其它圖形處理技術相比的低成本來完成。此外,本文中的圖形處理技術可以改善或加速GPU的資料處理或執行。進一步地,本文中的圖形處理技術可以改善GPU的資源或資料利用及/或資源效率。另外, 本案內容的各態樣可以改善GPU的運動估計,這可以繼而改善GPU的準確度和效率。本案內容的各態樣還可以改善運動估計的準確度。
根據本案內容,在上下文未以其它方式指示的地方,術語「或」可以解釋為「及/或」。另外,雖然比如「一或多個」或「至少一個」等的短語已經可以用於在本文中揭露的一些特徵而未用於其它特徵,但是在上下文未以其它方式指示的地方,針對其未使用此類語言的特徵可以解釋為具有此類隱含含義。
在一或多個示例中,本文中描述的功能可以在硬體、軟體、韌體或其任何組合中來實現。例如,雖然術語「處理單元」已經遍及本案內容來使用,但是此類處理單元可以在硬體、軟體、韌體或其任何組合中來實現。如果本文中描述的任何功能、處理單元、技術或其它模組是在軟體中實現的,那麼本文中描述的功能、處理單元、技術或其它模組可以儲存在電腦可讀取媒體上或作為在電腦可讀取媒體上的一或多個指令或代碼來發送。電腦可讀取媒體可以包括電腦資料儲存媒體或通訊媒體,該通訊媒體包括促進電腦程式從一個地方到另一地方的轉移的任何媒體。以這種方式,電腦可讀取媒體大體可以對應於(1)有形的電腦可讀取儲存媒體,其是非暫時性的,或(2)比如信號或載波的通訊媒體。資料儲存媒體可以是可以由一或多個電腦或一個和多個處理器存取以取回用於在本案內容中描述的技術的實現方式的指令、代碼及/或資料結構的任何可用媒體。經由示例而非限制的方式,此類電腦可讀取媒體可以包括RAM、ROM、EEPROM、CD-ROM或其它光碟儲存、磁碟儲存或其它磁性儲存裝置。如本文中所使用的,磁碟和光碟包括壓縮光碟(CD)、鐳射光碟、光碟、數位多功能光碟(DVD)、軟碟和藍光光碟,其中磁碟通常磁性地再現資料,而光碟則利用鐳射來光學地再現資料。上述各項的組合也應當包括在電腦可讀取媒體的範圍內。電腦程式產品可以包括電腦可讀取媒體。
代碼可以由一或多個處理器來執行,該處理器比如一或多個數位信號處理器(DSP)、 通用微處理器、專用積體電路(ASIC)、算數邏輯單位(ALU)、現場可程式化邏輯裝置(FPGA)、或其它等效的整合或個別邏輯電路。相應地,如本文中所使用的術語「處理器」可以指的是上述結構中的任何結構或可適合於本文中描述的技術的實現方式的任何其它結構。另外,技術可以是在一或多個電路或邏輯元素中充分地實現的。
本案內容的技術可以在多種多樣的設備或裝置中實現,該設備或裝置包括無線手機、積體電路(IC)或IC集,例如晶片集。各種元件、模組或單元在本案內容中描述以強調被配置為執行揭露的技術的設備的功能態樣,而不一定需要由不同的硬體單元來實現。準確地說,如上文所描述的,各種單元可以在任何硬體單元中組合,或由多個交互動操作的硬體單元(包括如上文所描述的一或多個處理器)結合適當的軟體及/或韌體來提供。
已描述各種示例。這些示例以及其它示例在所附申請專利範圍的範圍內。
100:內容產生系統
104:設備
107:圖形處理流水線
120:處理單元
121:內部記憶體
124:系統記憶體
126:通訊介面
127:顯示處理器
128:接收器
130:發射器
131:顯示器
132:收發機
198:決定元件
200:示例GPU
210:命令處理器(CP)
212:繪製調用封包
220:頂點獲取器(fetcher)(VFD)
222:頂點著色器(VS)
224:頂點快取記憶體(VPC)
226:三角設置引擎(TSE)
228:光柵器(RAS)
230:Z程序引擎(VPC)
232:像素內插器(PI)
234:片段著色器(FS)
236:渲染後端(RB)
238:L2快取記憶體(UCHE)
240:系統記憶體
250:命令緩衝器
260:上下文緩衝器封包
261:上下文狀態
300:示意圖
302:圖框
310:中心區域
320:第一中間區域
330:第二中間區域
340:邊緣區域
400:示例圖框
410:圖框
412:中心區域
414:邊緣區域
500:圖像
510:圖像
520:熱圖
600:示例方法
610:方塊
620:方塊
630:方塊
632:子方塊
634:子方塊
636:子方塊
638:子方塊
640:子方塊
642:子方塊
650:方塊
660:方塊
圖1是根據本案內容的一或多個技術示出示例內容產生系統的方塊圖。
圖2示出根據本案內容的一或多個技術的示例GPU。
圖3示出根據本案內容的一或多個技術的圖框的示例區域。
圖4A和圖4B示出在根據本案內容的一或多個技術的示例圖框中的運動向量。
圖5A是基於具有統一的運動估計品質的運動向量來產生的圖像的示例的照片。
圖5B是根據本案內容的一或多個技術基於具有針對不同區域的調整的運動估計品質的運動向量來產生的圖像的示例的照片。
圖5C示出示例熱圖,該熱圖示出在圖5A與根據本案內容的一或多個技術的圖5B之間的不同。
圖6示出根據本案內容的一或多個技術的示例方法的示例流程圖。
國內寄存資訊(請依寄存機構、日期、號碼順序註記)
無
國外寄存資訊(請依寄存國家、機構、日期、號碼順序註記)
無
100:內容產生系統
104:設備
107:圖形處理流水線
120:處理單元
121:內部記憶體
124:系統記憶體
126:通訊介面
127:顯示處理器
128:接收器
130:發射器
131:顯示器
132:收發機
198:決定元件
Claims (30)
- 一種用於圖形處理的方法,包括: 決定針對在一圖框中的一或多個區域的一運動估計優先順序,其中該一或多個區域之每一者區域包括至少一個像素組; 基於包括該像素組的該區域的該運動估計優先順序,來調整針對每個像素組的一運動估計程序的一品質;及 基於所調整的該運動估計程序的品質,來執行針對該至少一個像素組之每一者像素組的該運動估計程序,以產生針對該至少一個像素組的一運動向量。
- 根據請求項1之方法,其中該一或多個區域包括一中心區域和一邊緣區域。
- 根據請求項2之方法,其中該一或多個區域包括在該中心區域與該邊緣區域之間的至少一個中間區域。
- 根據請求項1之方法,還包括: 追蹤一眼睛的一位置,其中在該圖框中的該一或多個區域是相對於該眼睛的該位置來定義的。
- 根據請求項1之方法,其中調整該運動估計程序的該品質包括:決定針對在具有一最低運動估計優先順序的一區域中的該至少一個像素組設置一常數值。
- 根據請求項1之方法,其中調整該運動估計程序的該品質包括:基於該運動估計優先順序,來設置該至少一個像素組的一大小。
- 根據請求項1之方法,其中調整該運動估計程序的該品質包括:基於該運動估計優先順序,來調整要在該運動估計程序期間覆蓋的一搜尋窗的一大小。
- 根據請求項1之方法,其中調整該運動估計程序的該品質包括:基於該運動估計優先順序,來決定在該運動估計程序中具有運動向量細化的一多路徑演算法的包含或省略。
- 根據請求項1之方法,其中調整該運動估計程序的該品質包括:基於該運動估計優先順序,來決定用於一絕對差和(SAD)運算或一平方差和(SSD)運算的一區塊大小。
- 根據請求項1之方法,其中調整該運動估計程序的該品質包括:基於該運動估計優先順序,來調整在運動搜尋過濾期間執行的或對最終的運動向量執行的過濾的一數量。
- 根據請求項1之方法,還包括:基於針對每個像素組的運動向量,來從該圖框外推一新的圖框。
- 一種用於圖形處理的裝置,包括: 一記憶體;及 至少一個處理器,其耦合到該記憶體以及被配置為: 決定針對在一圖框中的一或多個區域的一運動估計優先順序,其中該一或多個區域之每一者區域包括至少一個像素組; 基於包括該像素組的區域的該運動估計優先順序,來調整針對每個像素組的一運動估計程序的一品質;及 基於所調整的該運動估計程序的品質,來執行針對該至少一個像素組之每一者像素組的該運動估計程序,以產生針對該至少一個像素組的一運動向量。
- 根據請求項12之裝置,其中該一或多個區域包括一中心區域和一邊緣區域。
- 根據請求項13之裝置,其中該一或多個區域包括在該中心區域與該邊緣區域之間的至少一個中間區域。
- 根據請求項12之裝置,其中該至少一個處理器被配置為追蹤一眼睛的一位置,其中在該圖框中的該一或多個區域是相對於該眼睛的該位置來定義的。
- 根據請求項12之裝置,其中該至少一個處理器被配置為決定針對在具有一最低運動估計優先順序的一區域中的該至少一個像素組設置一常數值。
- 根據請求項12之裝置,其中該至少一個處理器被配置為:基於該運動估計優先順序,來設置該至少一個像素組的一大小。
- 根據請求項12之裝置,其中該至少一個處理器被配置為:基於該運動估計優先順序,來調整要在該運動估計程序期間覆蓋的一搜尋窗的一大小。
- 根據請求項12之裝置,其中該至少一個處理器被配置為:基於該運動估計優先順序,來決定在該運動估計程序中具有運動向量細化的一多路徑演算法的包含或省略。
- 根據請求項12之裝置,其中該至少一個處理器被配置為:基於該運動估計優先順序,來決定用於一絕對差和(SAD)運算或一平方差和(SSD)運算的一區塊大小。
- 根據請求項12之裝置,其中該至少一個處理器被配置為:基於該運動估計優先順序,來調整在運動搜尋過濾期間執行的或對最終的運動向量執行的過濾的一數量。
- 根據請求項12之裝置,其中該至少一個處理器被配置為:基於針對每個像素組的運動向量,來從該圖框外推一新的圖框。
- 一種用於圖形處理的裝置,包括: 用於決定針對在一圖框中的一或多個區域的一運動估計優先順序的構件,其中該一或多個區域之每一者區域包括至少一個像素組; 用於基於包括該像素組的該區域的該運動估計優先順序來調整針對每個像素組的一運動估計程序的一品質的構件;及 用於基於所調整的該運動估計程序的品質,來執行針對該至少一個像素組之每一者像素組的該運動估計程序,以產生針對該至少一個像素組的一運動向量的構件。
- 根據請求項23之裝置,其中該一或多個區域包括一中心區域和一邊緣區域。
- 根據請求項23之裝置,還包括:用於追蹤一眼睛的一位置的構件,其中在該圖框中的該一或多個區域是相對於該眼睛的該位置來定義的。
- 根據請求項23之裝置,其中該用於調整該運動估計程序的該品質的構件被配置為:決定針對在具有一最低運動估計優先順序的一區域中的該至少一個像素組設置一常數值。
- 根據請求項23之裝置,其中該用於調整該運動估計程序的該品質的構件被配置為:基於該運動估計優先順序,來設置該至少一個像素組的一大小。
- 根據請求項23之裝置,其中該用於調整該運動估計程序的該品質的構件被配置為:基於該運動估計優先順序,來調整要在該運動估計程序期間覆蓋的一搜尋窗的一大小。
- 根據請求項23之裝置,還包括:用於基於針對每個像素組的運動向量來從該圖框外推新的圖框的構件。
- 一種非暫時性電腦可讀取媒體,其儲存用於圖形處理的電腦可執行代碼,包括進行以下操作的代碼: 決定針對在圖框中的一或多個區域的運動估計優先順序,其中該一或多個區域之每一者區域包括至少一個像素組; 基於包括該像素組的區域的該運動估計優先順序,來調整針對每個像素組的運動估計程序的品質;及 基於所調整的該運動估計程序的品質,來執行針對該至少一個像素組之每一者像素組的該運動估計程序,以產生針對該至少一個像素組的運動向量。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962888974P | 2019-08-19 | 2019-08-19 | |
US62/888,974 | 2019-08-19 | ||
US16/987,983 | 2020-08-07 | ||
US16/987,983 US11315211B2 (en) | 2019-08-19 | 2020-08-07 | Methods and apparatus for efficient motion estimation |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202111663A true TW202111663A (zh) | 2021-03-16 |
Family
ID=74646295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109127337A TW202111663A (zh) | 2019-08-19 | 2020-08-12 | 用於高效的運動估計的方法和裝置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11315211B2 (zh) |
EP (1) | EP4018416A1 (zh) |
CN (1) | CN114245904A (zh) |
TW (1) | TW202111663A (zh) |
WO (1) | WO2021034532A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11367199B2 (en) * | 2020-06-12 | 2022-06-21 | Adobe Inc. | System for automatic object mask and hotspot tracking |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6671321B1 (en) * | 1999-08-31 | 2003-12-30 | Mastsushita Electric Industrial Co., Ltd. | Motion vector detection device and motion vector detection method |
US7050502B2 (en) * | 2001-09-18 | 2006-05-23 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for motion vector detection and medium storing method program directed to the same |
US7760968B2 (en) * | 2004-01-16 | 2010-07-20 | Nvidia Corporation | Video image processing with processing time allocation |
WO2013019517A1 (en) * | 2011-08-02 | 2013-02-07 | Ciinow, Inc. | A method and mechanism for efficiently delivering visual data across a network |
US10482648B2 (en) * | 2016-12-13 | 2019-11-19 | Qualcomm Incorporated | Scene-based foveated rendering of graphics content |
JP6894725B2 (ja) | 2017-03-09 | 2021-06-30 | キヤノン株式会社 | 画像処理装置及びその制御方法、プログラム、記憶媒体 |
US10152822B2 (en) * | 2017-04-01 | 2018-12-11 | Intel Corporation | Motion biased foveated renderer |
US11178424B2 (en) * | 2017-11-23 | 2021-11-16 | Intel Corporation | Adaptive foveated encoder and global motion predictor |
US20190045193A1 (en) * | 2018-06-29 | 2019-02-07 | Intel Corporation | Region-based motion estimation and modeling for accurate region-based motion compensation for efficient video processing or coding |
-
2020
- 2020-08-07 US US16/987,983 patent/US11315211B2/en active Active
- 2020-08-10 CN CN202080056213.XA patent/CN114245904A/zh active Pending
- 2020-08-10 WO PCT/US2020/045671 patent/WO2021034532A1/en unknown
- 2020-08-10 EP EP20761429.8A patent/EP4018416A1/en active Pending
- 2020-08-12 TW TW109127337A patent/TW202111663A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2021034532A1 (en) | 2021-02-25 |
EP4018416A1 (en) | 2022-06-29 |
CN114245904A (zh) | 2022-03-25 |
US20210056661A1 (en) | 2021-02-25 |
US11315211B2 (en) | 2022-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11321928B2 (en) | Methods and apparatus for atlas management of augmented reality content | |
US11455705B2 (en) | Asynchronous space warp for remotely rendered VR | |
TW202134890A (zh) | 用於應用計算的分佈的方法和裝置 | |
TW202111663A (zh) | 用於高效的運動估計的方法和裝置 | |
US11748842B2 (en) | Methods and apparatus for content shifting in foveated rendering | |
TW202137141A (zh) | 用於邊緣壓縮抗混疊的方法和裝置 | |
TW202303374A (zh) | 具有訊框外插的高品質ui元素 | |
TW202230287A (zh) | 用於遮擋處理技術的方法和裝置 | |
US20240096042A1 (en) | Methods and apparatus for saliency based frame color enhancement | |
US11869115B1 (en) | Density driven variable rate shading | |
US20230230201A1 (en) | Fuzzy logic-based pattern matching and corner filtering for display scaler | |
US11610372B2 (en) | Methods and apparatus for multiple lens distortion correction | |
US11727631B2 (en) | Dynamic variable rate shading | |
US20220392109A1 (en) | Methods and apparatus for dynamic distortion correction | |
US20220058860A1 (en) | Billboard layers in object-space rendering | |
TW202223831A (zh) | 用於基於區域不連續性的運動估計的方法和裝置 |