新四季網

視頻處理系統的製作方法

2023-06-13 21:34:11 1


本發明涉及視頻數據的處理,更具體地,本發明涉及處理視頻數據的幀的方法和裝置。



背景技術:

在針對視頻處理系統的領域中已知的是,生成通常供給電子顯示器的視頻數據幀。視頻幀通常被表示為表示圖像的像素(像元)的矩形陣列,其中,要用於各個像素的顏色值利用適當的顏色空間(例如,RGB顏色空間)來表示。

為大量視頻幀存儲像素數據需要大量存儲器。因此,已經開發了許多視頻編碼方法,以允許按壓縮形式來存儲表示視頻幀的像素數據。

根據許多這種視頻編碼方法,一系列視頻幀中的幀被相對於所謂的「基準幀」(針對該幀,存儲了全解析度像素數據,並且不是參照另一幀限定的)有差別地編碼(即,從它們的差別方面)。通常,一系列視頻幀中的多個幀關於單個基準幀相對地限定,並且這種安排在該系列視頻幀上加以重複。

一種這樣的視頻編碼方法使用所謂的「運動估計」,其中,特定幀被劃分成例如16×16像素的多個塊,並且利用指向基準幀中的對應像素塊的矢量值(所謂的「運動矢量」)和描述當前幀像素塊與基準幀中的對應像素塊之間的差別的數據(所謂的「殘差」)來編碼各個像素塊。這由此允許根據由該運動矢量所指向的基準幀中的像素塊的像素數據和描述該像素數據與當前視頻幀的像素數據之間的差的殘差數據來構造當前幀的像素塊的像素數據。

與針對一系列視頻幀中的每個幀存儲原始像素值相比,採用使用基準幀的視頻編碼方法可以導致存儲器需求方面的顯著縮減。

通常,新的基準幀周期性地生成,例如,一系列幀中的每N個幀。接著,將該基準幀存儲在存儲器中以供系統使用。

例如,生成並存儲當前基準幀的像素數據,以供在編碼一系列視頻幀時使用,例如,用於根據該基準幀導出正在被編碼的幀的運動矢量和殘差值。(通常,新的基準幀將替換存儲器中的現有基準幀)。

在解碼一系列視頻幀(例如,顯示一系列視頻幀)時,當前基準幀將根據編碼的視頻數據生成,並且例如被顯示而且還被存儲,以供在解碼該系列中的取決於該基準幀的其它幀時使用。(為了正確地解碼差別編碼的視頻幀,生成全解析度基準幀並存儲在存儲器中,以在解碼處理期間使用)。

申請人認為仍然存在改進用於在視頻處理系統中處理視頻數據幀的方法和裝置的範圍。



技術實現要素:

根據本發明第一方面,提供了一種在視頻處理系統中處理視頻數據幀的方法,其中,相對於基準幀限定一系列視頻幀中的一個或更多個幀的數據,所述方法包括以下步驟:

當要在解碼該一系列視頻幀時使用用於所述一系列視頻幀的基準幀的全部或部分時:

生成並在存儲器中存儲按照第一解析度表示所述基準幀的全部或部分的像素數據;以及

生成並在存儲器中存儲按照與所述第一解析度相比的至少一個不同解析度表示所述基準幀的全部或部分的像素數據。

根據本發明第二方面,提供了一種用於在視頻處理系統中處理視頻數據幀的裝置,其中,相對於基準幀限定一系列視頻幀中的一個或更多個幀的數據,所述裝置包括:

基準幀生成級,其被配置成當要在解碼該一系列視頻幀時使用用於所述一系列視頻幀的基準幀的全部或部分時:

生成並在存儲器中存儲按照第一解析度表示所述基準幀的全部或部分的像素數據;並且

生成並在存儲器中存儲按照與所述第一解析度相比的至少一個不同解析度表示所述基準幀的全部或部分的像素數據。

本發明涉及這樣一種用於在視頻處理系統中處理視頻數據幀的方法和裝置,其採用差分編碼,即,其中,相對於基準幀限定一系列視頻幀中的一個或更多個幀。

在本發明中,當需要基準幀的全部或部分來解碼一系列視頻幀時,例如生成以第一解析度表示該基準幀的全部或部分的像素數據並存儲在存儲器中,以使所述像素數據可用於按其與該系列視頻幀中的其它(例如,隨後)幀的差別(殘差)來限定和/或解碼它們。然而,除了生成以第一解析度表示所述基準幀的像素數據並存儲以外,本發明還生成以相對於所述第一解析度的一個或更多個不同解析度表示同一基準幀(或其一部分)的全部或部分的像素數據並存儲。

在此描述的實施方式通常是指生成像素數據,尤其是針對整個基準幀。然而,這是不需要的。在本發明中,生成並存儲在存儲器中的所述像素數據可以(並且在某些實施方式中)僅按照第一解析度和至少一個不同解析度來表示所述基準幀的一部分。

如下面將進一步討論的,申請人已經認識到,提供按照至少兩個不同解析度表示同一基準幀的像素數據在視頻處理系統的各個級可以是有益的,並且例如可以提供總體更有效的視頻處理系統。例如,如下將進一步討論的,生成不僅按照第一解析度而且按照至少一個第二(例如較低的)解析度表示所述基準幀的像素數據例如可用於促進隨後生成的幀的更有效的壓縮,或者減少在縮放特定幀以供顯示時所需的存儲器存取數。

該系列視頻幀包括相對於基準幀限定(編碼)的一個或更多個幀。該系列中的幀可以採用任何合適且希望的次序。然而,在優選實施方式中,這些幀採用它們要被顯示的次序。

該基準幀本身可以是據以限定該系列視頻幀中的一個或更多個幀的任何幀。在優選實施方式中,該基準幀可以是該系列視頻幀中的任何幀。例如,該基準幀可以在相對於該基準幀限定的該系列幀中的幀或多個幀之前或之後。然而,在其它安排中,基準幀可以在相對於該基準幀限定的該系列幀中的一個或更多個幀之後並且在一個或更多個其它幀之前。

如本領域技術人員應當清楚,可以存在要解碼的許多視頻幀的集合,包括多個基準幀和相對於相應的基準幀限定的相應的其它幀。在這種情況下,各個基準幀及其相關的幀可以並且優選地按本發明的方式處理為一系列幀。(對應地,特定的整個集合或系列視頻幀可以由(並且處理為)具有本發明的形式的多個系列視頻幀組成。

要在解碼該系列視頻幀時使用的表示所述基準幀的像素數據在需要基準幀時生成(並存儲在存儲器中)。根據本發明的實施方式,解碼所述系列視頻幀的步驟包括:(優選地)利用所述基準幀像素數據來解碼所述系列中的所述一個或更多個不獨立編碼的視頻幀,例如,以提供所述幀以供顯示。

可以按任何合適和希望方式來生成按照第一解析度表示所述基準幀的所述像素數據。

在優選實施方式中,所述生成按照第一解析度表示所述基準幀的像素數據的步驟包括:確定要用於所述基準幀的像素的合適值(例如,顏色值)。

在一個優選實施方式中,所述生成按照第一解析度表示所述基準幀的像素數據的步驟包括:例如,利用紋理圖和/或其它的渲染(rendering)處理來渲染所述像素值。

在另一優選實施方式中,所述生成所述基準幀的像素數據的步驟包括:解碼表示所述基準幀的編碼數據,並且據此生成按照第一解析度表示所述基準幀的像素數據。這在當前基準幀被以編碼形式存儲在存儲器中的情況下可以是適合的。因此,在優選實施方式中,所述生成按照第一解析度表示所述基準幀的像素數據的步驟包括:首先從存儲器讀取現有的基準幀。

應當清楚,所述基準幀的解析度取決於該基準幀內的單個像素的數量,而單個像素的數量限定了可以用於表示所述基準幀的細節的量。

所生成的像素數據表示所述基準幀的所述第一解析度可以是任何合適或希望的解析度。然而,申請人已經認識到,在正常情況下,通常有用的是,生成按照可能的最大細節量(最大解析度)來表示所述基準幀的像素數據,以使其以後可以被視頻處理系統用於例如解碼目的。由此,根據本發明的優選實施方式,所述第一解析度是生成所述基準幀的像素數據的最高解析度。優選為最大可能解析度,或者使用最大細節來表示所述基準幀的解析度(例如,根據可用存儲器等)。如果所述視頻處理系統被配置成生成僅按照單一解析度表示所述基準幀的像素數據,則這例如可以是並且優選為已經生成像素數據的解析度。

可以按任何合適和希望方式來生成按照與所述第一解析度相比的所述至少一個不同解析度表示所述基準幀的所述像素數據。

按照至少一個不同解析度表示所述基準幀的像素數據可以單獨地和/或與按照所述第一解析度表示所述基準幀的像素數據獨立地生成。例如,在第一次生成所述基準 幀的情況下,可以單獨渲染按照各解析度表示所述基準幀的像素數據。因此,根據本發明的實施方式,所述方法包括以下步驟:按照第一解析度表示所述基準幀的像素數據與按照與所述第一解析度相比的所述至少一個不同解析度表示所述基準幀的所述像素數據分開地生成(例如,渲染)。

然而,在優選實施方式中,基於已按照所述第一解析度針對所述基準幀生成(並且表示)的所述像素數據,生成按照與所述第一解析度相比的至少一個不同解析度表示所述基準幀的所述像素數據。例如,所述基準幀生成級被可以(並且優選地)配置成首先生成按照第一解析度表示所述基準幀的像素數據(如上所述),並且利用(基於)按照所述第一解析度表示所述基準幀的所述像素數據,生成按照不同於所述第一解析度的至少一個不同解析度表示所述基準幀的像素數據。

本發明可以生成按照任何(例如,指定或選擇)數量的不同解析度來表示所述基準幀的像素數據,並且不同於所述第一解析度的每個解析度都可以是任何合適或希望的解析度(只要不是所述第一解析度即可)。

在優選實施方式中,與所述基準幀的第一解析度形式相比,本發明生成表示所述基準幀的至少一個較不詳細版本的像素數據並存儲在存儲器中。由此,根據優選實施方式,與所述第一解析度相比的所述至少一個不同解析度包括比所述第一解析度低的至少一個解析度。例如,針對所述基準幀生成的所述像素數據可以按照第一解析度1080×920個像素和第二解析度720×576個像素來表示所述基準幀。

因此,表示所述基準幀的較低解析度版本的所述像素數據優選為按照所述第一解析度表示所述基準幀的所述像素數據的合併(並且優選為降低採樣(下變換))版本。由此,根據優選實施方式,所述生成按照與所述第一解析度相比的至少一個不同解析度表示所述基準幀的像素數據的步驟包括:合併按照所述第一解析度表示所述基準幀的所述像素數據,來生成按照比所述第一解析度低的至少一個解析度表示所述基準幀的合併像素數據。

合併所述像素數據可以按任何合適或希望方式來進行。按比所述第一解析度低的至少一個解析度中的一個或更多個或全部解析度來表示所述基準幀的合併像素數據可以根據按所述第一解析度表示所述基準幀的所述像素數據(即,未合併數據)來生成。另選的是,在要生成按比所述第一解析度低的兩個或更多個不同解析度來表示所述基準幀的合併像素數據的情況下,按較低解析度表示所述基準幀的所述合併像素數 據因而例如(並且如果需要的話)可以根據按前一較高解析度表示所述基準幀的所述合併像素數據來生成。

在優選實施方式中,合併所述像素數據的步驟包括:針對較高解析度的所述基準幀的指定(例如,所選擇的)數量的像素,平均化或以其它方式組合(過濾)被用於該較高解析度基準幀的所述像素數據。例如,所述像素數據可以被劃分成多個像素塊,並且每一個這種塊(例如,四個像素)接著(並且優選地)用具有該塊中的像素的平均像素(顏色)值的單個像素來表示。然而,若希望的話,還可以或代替地使用其它技術,諸如對表示所述較高解析度的基準幀的所述像素數據的子採樣。

在優選實施方式中,生成並存儲按至少三個不同解析度表示所述基準幀的像素數據(即,按所述第一解析度並且按與所述第一解析度不同的至少兩個(並且優選為較低)解析度)。

在特別優選的實施方式中,生成並存儲的、並且按第一和至少一個不同解析度表示所述基準幀的所述像素數據採用表示所述基準幀的兩個或更多個或全部級別的mipmap集的形式。等同地,在優選實施方式中,所述基準幀生成級被配置成生成表示所述基準幀的像素數據作為mipmap集。

mipmap集包括一系列幀,每一個幀都是(同一)幀圖像的逐漸降低的解析度(不太詳細)表示。(所述mipmap集中的所述幀的每一個版本在此都被稱為mipmap級別,除非另外加以表明,在此針對較高和較低mipmap級別的引用分別指不太詳細和更加詳細的mipmap)。

在優選實施方式中,所述mipmap集的每一個級別的高度和寬度是比該集合中的前一級別的高度和寬度小二倍的因子,並且每一個級別具有作為前一級別的解析度的四分之一(z在素數量方面)的解析度。例如,如果所述基準幀在第一解析度具有256乘256像素的尺寸,則關聯的mipmap集可包含一系列8個級別(所述基準幀的不同版本),其中,每一個級別是前一級別的總面積的四分之一:128×128像素、64×64、32×32、16×16、8×8、4×4、2×2、1×1(單個像素)。

若希望的話,可以將其它縮放因子用於所述mipmap集。

在這點上,申請人已經認識到,儘管mipmap集(其中,mipmap的每一個級別都具有嚴格的縮放級)可以不必是表示所述基準幀的解析度的最理想集合,但生成(和使用)表示所述基準幀的像素數據作為mipmap集仍可以有益的。

例如,儘管mipmap級別的解析度可能不精確匹配要顯示所述基準幀的顯示器的解析度,但申請人已經認識到,相對容易將所述基準幀的表示生成和操縱或處理為相應的mipmap級別(與其它任意解析度相比)應當比按這種形式提供所述基準幀可能具有的任何潛在缺點更重要。

根據本發明生成並存儲的像素數據可以表示基準幀的整個mipmap集(即,從最高解析度版本開始並且包括一直到單個像素(或其等同物)的各個mipmap級別的相應較低解析度版本)。然而,並不要求所述像素數據表示所述mipmap的每一個可能級別。在本發明的實施方式中,生成按所述mipmap的兩個或更多個級別表示所述基準幀的像素數據並存儲在存儲器中。在一些實施方式中,生成按所述mipmap的每隔一個級別(即,將組成完整mipmap的該系列基準幀中的所述基準幀的每隔一個版本)來表示所述基準幀的像素數據並存儲在存儲器中。在其它實施方式中,所述基準幀生成級被配置成針對所述基準幀僅生成表示所述mipmap的級別的特定(例如,希望的,例如選定的)子集的像素數據。

在一個優選實施方式中,生成按與所述第一解析度相比的至少一個不同解析度表示整個所述基準幀的像素數據。然而,這是不需要的。由此,在本發明的其它實施方式中,按與所述第一解析度相比的至少一個不同解析度表示所述基準幀的所述像素數據僅表示整個基準幀(圖像)的區域或部分。例如,所述基準幀生成級可以被配置成僅合併按所述第一解析度表示所述基準幀的所述像素數據的子集。

本發明的視頻處理系統可以被配置成按任何合適或希望方式來實現上述實施方式(與生成按照與所述第一解析度相比的至少一個不同解析度表示所述基準幀的像素數據有關地)。例如,所述生成按與所述第一解析度相比的至少一個不同解析度表示所述基準幀的像素數據的處理可以(並且優選地)例如基於總視頻處理系統對其的獲知,而通過CPU上的合適驅動器來觸發和配置。

在優選實施方式中,所述基準幀像素數據生成是基於所述視頻處理系統將怎樣使用所述基準幀的所述像素數據來配置的。

例如,並且優選地,基於要顯示所述視頻系列的電子顯示器或多個顯示器的解析度來選擇生成所述基準幀的、與所述第一解析度相比的所述至少一個不同解析度中的一個或更多個或全部。在一個優選實施方式中,與所述第一解析度相比的所述至少一個不同解析度對應於要顯示的輸出幀的解析度。

附加地或另選地(並且優選為附加地),優選地基於該系統的獲知來選擇要表示所述基準幀的多個不同解析度。例如,所述基準幀生成級可以被配置成生成按不同於所述第一解析度的單個解析度直至與總的視頻處理系統中存在要顯示該視頻系列的不同顯示器一樣多的不同解析度表示所述基準幀的像素數據。

表示所述基準幀的所述像素數據可以通過所述視頻處理系統的任何合適和希望組件來生成。在優選實施方式中,所述像素數據通過所述視頻處理系統的合適處理器(如圖形處理器、視頻處理器(視頻引擎)、組合器或顯示處理器)來生成。由此,所述基準幀生成級優選地包括:圖形處理器、視頻處理器(視頻引擎)、組合引擎(組合器)或顯示控制器。若需要的話,所述基準幀生成級可以包括超過一個處理器,並且這些處理器中的一個或更多個或全部都可按本發明的方式工作。

若希望的話(並且在優選實施方式中是這種情況),所述基準幀生成級還可以包括其它組件,諸如解壓縮擊級(解碼單元)和/或壓縮級(編碼單元)。

在優選實施方式中,按不同於所述第一解析度的所述至少一個不同解析度表示所述基準幀的所述像素數據通過所述視頻處理系統的、生成按所述第一解析度表示所述基準幀的所述像素數據的同一處理器生成。

然而,在其它實施方式中,生成按第一和至少一個不同解析度表示所述基準幀的像素數據的任務在多個處理器當中劃分,並接著大致並行地執行。在這點上,可以設置任意希望數量的基準幀生成處理器,舉例來說,兩個基準幀生成處理器,例如,直至與要表示指定基準幀的不同解析度的數量一樣多的基準幀生成處理器。

在優選實施方式中,無論所像素數據是通過單個基準幀生成級還是多個基準幀生成級來生成,按至少一個不同解析度表示所述基準幀的所述像素數據與第一解析度像素數據大致相同的時間生成。這樣,所述視頻處理系統應當僅需要讀取/訪問全解析度基準幀一次,而非在每次生成不同解析度幀時讀取/訪問。

在特別優選實施方式中,按與所述第一解析度相比的至少一個不同解析度生成像素數據由所述視頻處理系統的現有級來執行,優選地由將以其它方式正常執行縮放操作作為其「正常」處理操作的一部分的級(其因而還可以被用於生成按不同解析度表示同一基準幀的像素數據)。

在這點上,申請人已經認識到,對於運動估計(如分層運動估計)的某些方法來說,幀將經歷縮放處理,其中幀的尺寸和解析度被減小。例如,構造同一圖像的幾個版本,每一個版本都將兩個尺度減小(按比例縮小)了特定因子。

由此,在特別優選實施方式中,本發明的視頻處理系統是這樣的視頻處理系統,即,其包括用於在運動估計編碼期間執行縮放操作的硬體,並且該硬體被用於按與所述第一解析度相比的至少一個不同解析度來生成所述基準幀的所述像素數據。由此,在優選實施方式中,所述基準幀生成級包括被用於分層運動估計編碼的縮放硬體。

被用於分層運動估計編碼的所述縮放硬體是所述視頻處理系統的、用於生成按不同解析度表示所述基準幀的所述像素數據的特別優選的組件,因為所述縮放硬體已經工作以針對視頻數據執行縮放操作。這樣,在分層運動估計編碼中使用的所述縮放硬體可以在所述視頻處理系統的各個組件(如所述視頻處理系統的一個或更多個基準幀生成處理器)之間共用(和重複利用)。

所述基準幀的生成的像素數據被存儲在存儲器中。該像素數據可存儲在任何合適的存儲器中,諸如並且優選為合適的幀緩衝器,使得其接著可被讀取以供視頻處理系統以後使用。

在一個實施方式中,生成的像素數據被存儲在所述基準幀生成級的本地存儲器中(優選為合適的幀緩衝器中)。這是優選的情況,其中,立即需要所述基準幀以例如解碼一系列差別編碼的視頻幀。

在另一實施方式中,將所述像素數據存儲在所述視頻處理系統的主存儲器中,諸如在利用所述視頻處理系統的主機系統的主存儲器(諸如硬碟或多個硬碟,或者固態盤)、某一其它形式的外部存儲介質(如光碟(DVD或CDROM)、閃速存儲器、硬碟驅動器或者遠程地並通過網絡連接接入等。

在優選實施方式中,所述基準幀的所述像素數據以編碼(並且優選為壓縮)的形式存儲。在特別優選實施方式中,利用基於塊的編碼格式來編碼表示所述基準幀的所述像素數據。例如,所述基準幀可以(並且優選地)被劃分該幀的成多個像素塊(宏塊)(例如,在MPEG編碼的情況下,16×16像素塊),並且單獨地編碼各個塊的像素數據。優選地,根據在申請人的美國專利申請US2013/036290和/或美國專利US8542939中公開的任一種方法來編碼。

由此,在優選實施方式中,按所述第一和按至少一個其它解析度表示所述基準幀的所述像素數據被以壓縮的形式存儲。對應地,表示所述基準幀的mipmap集的兩個或更多個或全部級別優選地被以壓縮的形式存儲在存儲器中。

在這點上,所述像素數據(例如,mipmap集)可以按任何合適和希望方式壓縮。在優選實施方式中,按全解析度表示(即,其表示所述基準幀的精確位(bitexact)形式)所述基準幀的所述像素數據(所述mipmap集的層(例如,下層))利用無損壓縮方案來壓縮(以使其可以被用於解碼隨後的幀)。對於按一個或更多個其它(例如,較低)解析度表示所述基準幀的其它解析度(層)來說,可以(並且在優選實施方式中)使用有損壓縮方案。

所述mipmap集的每一個級別都可以利用任何(例如,選擇的或希望的)壓縮方案和/或壓縮率來壓縮。在優選實施方式中,將申請人的美國專利申請US 2013/036290和/或美國專利US 8542939中公開的一種或更多種方法用於壓縮所述像素數據。用於壓縮所述基準幀的壓縮方案和/或壓縮率可以(並且在一些實施方式中)基於正在壓縮的像素數據表示所述基準幀的解析度來選擇(例如,所述mipmap的級別被壓縮)。

在一些實施方式中,所述基準幀生成級的壓縮級(編碼單元)被配置成利用不同壓縮率來壓縮所述基準幀的不同解析度版本(所述mipmap集的不同級別)。例如,如果處於壓縮形式的全解析度層用10比特數據來表示,則其它層可以(並且在一些實施方式中)用較少的比特,如8比特(實際上,保證壓縮20%)。類似地,較低解析度層可例如通過從4:2:2採樣轉換至4:2:0採樣來去除色度信息(實際上,保證壓縮25%)。

根據上述實施方式壓縮表示所述基準幀的所述像素數據(例如,mipmap集)的有利之處在於,進一步減小了存儲器帶寬。其還是一種用於處理視頻內容的特別合適的布置,假定該視頻內容已典型地被壓縮(意指已經去除高頻內容,使其更適於壓縮)。

如上所述,按與所述第一解析度相比的至少一個不同解析度表示所述基準幀的所述像素數據可以有利地在所述視頻處理系統的各級處使用。

由此,根據優選實施方式,本發明的方法還包括以下步驟:利用按與所述第一解析度相比的至少一個不同解析度表示所述基準幀的所述像素數據,來處理所述系列視頻幀中的至少一個幀,例如,用於顯示。

因此,在優選實施方式中,本發明的裝置還包括幀處理級,該幀處理級被配置成利用按照與所述第一解析度相比的至少一個不同解析度表示所述基準幀的所述像素數據,來處理所述系列視頻幀中的至少一個幀。

在這點上,申請人已經認識到,按不同解析度表示所述基準幀的像素數據可以有利地用於視頻處理的解碼側,例如,在處理該系列視頻幀以供顯示的情況下。例如,當提供輸出幀或多個幀以供顯示時,可希望使用按與所述第一解析度相比的至少一個不同解析度(並且優選為較低)表示所述基準幀的像素數據(而且在優選實施方式中,就是這樣做的)。

這在所述系列視頻幀中的當前幀要按不同於所述基準幀的所述第一解析度的解析度顯示的布置中特別真實。可以是這樣的情況,即,例如,當在具有低於所述基準幀的所述第一解析度的解析度的顯示器上提供用於顯示的輸出幀或多個幀時。另一示例是當提供要在整體顯示器的一部分(例如,窗口)中顯示的輸出幀或多個幀時,其中,該顯示器的該部分具有低於所述基準幀的所述第一解析度的解析度。在這種情況下,表示當前視頻幀的輸出幀將對應於具有比所述基準幀的所述第一解析度低的解析度的一組像素。(由此,正在生成的輸出幀例如可以完全填充所討論的顯示器,或者可以用於在顯示器上顯示的窗口)。

如本領域所已知的,提供用於顯示的輸出幀例如包括將像素數據加載到合適的幀緩衝器中,接著可以從那裡讀取像素數據並提供給顯示器。在許多情況下,這將涉及至少基於表示對應基準幀的全解析度像素數據來生成輸出幀的像素數據。

然而,根據本發明的實施方式,在當前幀要按比所述基準幀的所述第一解析度低的解析度來顯示的情況下,代替利用第一(即,全)解析度基準幀的像素數據來生成輸出幀的像素數據,可以(並且優選地)將表示低解析度基準幀的像素數據用於該目的。由此,根據本發明的實施方式,所述處理所述系列視頻幀中的至少一個幀的步驟包括:利用按比所述第一解析度低的至少一個解析度表示所述基準幀的像素數據來生成表示用於顯示的輸出幀的像素數據。

在一些實施方式中,所述較低解析度基準幀的像素數據可以被用作所述輸出幀的像素數據。例如,在所述系列視頻幀中的要顯示的當前幀是(例如,被標誌為)所述基準幀本身的情況下,為了生成輸出幀,所述視頻處理系統(具體地,所述幀處理級)將僅使用所述基準幀的較低解析度像素數據。(應當清楚,儘管在該實施方式中僅使 用所述基準幀的低解析度像素數據用作輸出幀,但所述視頻處理系統(例如,視頻處理引擎)可以並優選地仍生成(並存儲在存儲器中)按所述第一(即,全)解析度表示所述基準幀的像素數據,使得其可以被用於解碼所述系列視頻幀中的其它幀)。

這還可以是(並且在某些實施方式中)這樣的情況,即,在要顯示的當前幀是有差別編碼的幀並且針對當前幀的殘差等於零的布置中。例如,如果當前幀的指定塊與所述基準幀相比無變化,則所述視頻處理系統可以(並且將優選地)使用所述基準幀(的低解析度版本)中的對應塊的像素數據,作為輸出幀的像素數據。

在實施方式中,與所述第一解析度相比的所述至少一個較低解析度中的一個(生成所述基準幀的像素數據的解析度)對應於要顯示的所述輸出幀所需的解析度。在這種情況下,按對應於輸出幀解析度的所述至少一個較低解析度來表示所述基準幀的像素數據可以(並且優選地)被直接使用(並且例如,輸出)為所述輸出幀的像素數據。

由此,根據本發明的實施方式,利用按比所述第一解析度低的至少一個解析度表示所述基準幀的所述像素數據來生成表示用於顯示的輸出幀的像素數據的步驟包括:直接輸出按比所述第一解析度低的所述至少一個解析度中的一個解析度表示所述基準幀的像素數據作為所述輸出幀。

然而,在所述基準幀的所生成的低解析度版本不對應於所述輸出幀所需的解析度(例如,顯示器)的布置中,可能需要執行縮放操作來導出用於所述輸出幀的最終像素數據。由此,根據本發明的實施方式,利用按比所述第一解析度低的至少一個解析度表示所述基準幀的所述像素數據來生成表示用於顯示的輸出幀的像素數據的步驟包括:在導出用於所述輸出幀的最終像素數據時,對按比所述第一解析度低的至少一個解析度表示所述基準幀的所述像素數據執行縮放操作。

在這種情況下,所述基準幀的被使用的低解析度形式被優選地選擇,以使減小(例如,最小化)可能需要的縮放處理量,例如,利用最接近實際需要的解析度的解析度。

在要顯示的當前幀是差別編碼幀的情況下,即,已經關於表示所述基準幀的全解析度像素數據編碼(並且沒有零殘差)的幀,那麼,為了正確地生成用於顯示的輸出幀,要顯示的差別編碼幀將根據表示當前幀的差別編碼像素數據和表示全解析度基準幀的像素數據來正常地解碼。接著,所述幀的被解碼的像素數據正常存儲在存儲器中,例如,其可以由顯示單元從存儲器取回並在必要時縮小以適配輸出幀解析度。

然而,根據本發明的實施方式,取代首先解碼當前幀的像素數據(全解析度)並將其存儲在存儲器中,所述幀處理級被配置成不在存儲器中存儲表示(解碼的)當前幀的全解析度像素數據。相反,所述幀處理級被配置成僅生成並存儲按較低解析度表示所述(解碼的)當前幀的像素數據。

這可以(並且優選地)通過以下步驟進行:(例如,所述幀處理級)讀入並且利用表示所述基準幀的全解析度像素數據來解碼要顯示的當前幀,並且內部地利用按全解析度表述當前幀的(解碼的)像素數據來生成按與全解析度相比的一個或更多個不同解析度表示當前幀的像素數據。接著,僅將按與全解析度相比的一個或更多個不同解析度表示當前幀的所述像素數據存儲在存儲器中(供以後在該系統中使用)。

由此,根據本發明的實施方式,所述方法還包括,如果要顯示的當前幀是關於所述基準幀編碼的,則:

利用當前幀的編碼的像素數據和按第一解析度表示所述基準幀的像素數據來解碼當前幀;

生成按與第一解析度相比的至少一個不同解析度來表示所述當前幀的像素數據並存儲在存儲器中;以及

利用按與所述第一解析度相比的所述至少一個不同解析度表示當前幀的像素數據來生成表示輸出幀的像素數據。

在優選實施方式中,生成按與所述第一(例如,全)解析度相比的至少一個不同解析度表示當前幀的像素數據的步驟包括:對按所述第一解析度表示所述當前幀的像素數據執行一個或更多個縮放操作。

申請人已經認識到,儘管該實施方式未利用按比所述第一解析度低的解析度表示的所述基準幀的像素數據,但對於利用全解析度基準幀來生成表示要顯示的當前幀的多個解析度版本的像素數據來說,仍存在優點。例如,具有要顯示的所述當前幀的較低解析度版本允許顯示控制器僅讀入當前幀的較小版本(而非全解析度版本),以便導出用於要顯示的輸出幀的像素數據,由此例如節省存儲器訪問的次數和存儲器帶寬。這在所述至少一個較低解析度對應於顯示器所需的解析度的情況下特別有利。

在其它實施方式中,所述視頻處理系統(例如,所述幀處理級)被配置成首先將當前幀的(差別)編碼像素數據按比例縮小(即,通過合併運動矢量和殘差數據)至 較低解析度,並接著基於當前幀的「按比例縮小的」版本和按至少一個較低解析度表示所述基準幀的像素數據來導出和生成用於輸出幀的最終(即,解碼的)像素數據。

由此,根據實施方式,生成用於顯示的輸出幀的步驟包括:合併按第一解析度表示要顯示的當前幀的(差別編碼)像素數據,以生成按與所述第一解析度不同的第二(例如,較低)解析度表示所述當前幀的合併像素數據,並且基於表示所述當前幀的合併數據和按用於生成所述基準幀的像素數據的所述至少一個較低解析度中的一個解析度表示所述基準幀的像素數據,導出用於輸出幀的最終像素數據。

在優選實施方式中,所述當前(差別編碼的)幀的所述第一解析度與所述基準幀的所述第一解析度相同和/或所述當前(差別編碼的)幀的所述第二解析度與用於生成所述基準幀的像素數據的所述至少一個較低解析度中的一個解析度相同。

根據實施方式,基於表示所述當前幀的合併數據和按所述至少一個較低解析度中的所述一個解析度表示所述基準幀的像素數據導出輸出幀的最終像素數據的步驟包括:利用按所述至少一個較低解析度中的所述一個解析度表示所述基準幀的像素數據,解碼用於所述當前幀的合併(並且差別編碼的)像素數據。接著,被解碼的(合併的)像素數據可以(並且在某些實施方式中)被直接用作用於所述輸出幀的最終像素數據。然而,在其它實施方式中,被解碼的像素數據被縮放,以便導出用於所述輸出幀的最終像素數據。這例如在被解碼的像素數據的解析度與輸出幀解析度不同的情況下是需要的。

由此,根據實施方式,本發明包括對表示要顯示的所述當前幀的解碼的版本的像素數據執行縮放操作,以導出用於所述輸出幀的最終像素數據。該縮放操作優選地包括縮放表示所述當前幀的解碼的版本的像素數據,以提供按(希望的)輸出幀解析度表示所述當前幀的解碼的版本的像素數據。

在這樣生成用於顯示的幀時利用所述基準幀的較低解析度像素數據的有利之處在於,該顯示處理僅需要讀入較小的基準幀,而非全解析度版本,以便導出用於要顯示的輸出幀或多個幀的像素數據,由此節省存儲器存取的次數和存儲器帶寬。

如上所述,所述基準幀生成級可以被配置成基於所述數據處理系統的需求的獲知來控制基準幀生成的方面。由此,在所述數據處理系統已知所需的輸出幀(例如,顯示)解析度的情況下,所述基準幀生成級可以被配置成基於顯示輸出幀解析度來生成所述基準幀的像素數據。等同地,在所述視頻處理系統包括超過一個顯示單元的情況 下,所述基準幀生成級可以(並且優選地)被配置成基於每一個不同的顯示輸出幀解析度來生成表示所述基準幀的像素數據。在這些情況下,所述基準幀可以按所需的輸出顯示幀解析度和/或按更接近於所需的輸出顯示幀解析度(並接著在需要時縮放至該解析度)來生成。

申請人認為,被配置成按上述方式操作的視頻處理系統在自身權利方面是新且有利的。

由此,根據本發明第三方面,提供了一種視頻處理系統,其中,相對於基準幀限定用於一系列視頻幀中的一個或更多個幀的數據,所述視頻處理系統包括:

存儲器;

處理單元(例如,視頻處理器),該處理單元被配置成,當要在提供用於顯示的輸出幀時使用用於一系列視頻幀的基準幀的全部或部分時:

生成按第一解析度和按與所述第一解析度相比的至少一個不同解析度來表示所述基準幀的全部或部分的像素數據並存儲在所述存儲器中;以及

顯示控制器,該顯示控制器被配置成:

從所述存儲器中讀取按與所述第一解析度相比的所述至少一個不同解析度表示所述基準幀的全部或部分的像素數據;

在生成要顯示的輸出幀時利用所述像素數據;以及

向顯示器輸出生成的輸出幀。

根據本發明第四方面,提供了一種操作視頻處理系統的方法,其中,相對於基準幀限定用於一系列視頻幀中的一個或更多個幀的數據,所述方法包括以下步驟:

當要在提供用於顯示的輸出幀時使用用於一系列視頻幀的基準幀的全部或部分時,所述視頻處理系統的處理單元(例如,視頻處理器):

生成按第一解析度和按與所述第一解析度相比的至少一個不同解析度表示所述基準幀的全部或部分的像素數據並存儲在存儲器中;並且

所述視頻處理系統的顯示控制器:

從所述存儲器讀取按與所述第一解析度相比的所述至少一個不同解析度表示所述基準幀的全部或部分的像素數據;

在生成要顯示的輸出幀時利用所述像素數據;以及

向顯示器輸出生成的輸出幀。

本領域技術人員應當清楚,本發明的這些方面在適當時候可以並且優選地包括在此描述的本發明的優選和可選特徵中的一個或更多個。由此,例如,所述視頻處理系統優選地還包括顯示器。

申請人已經認識到,除了在生成用於顯示的輸出幀時使用以外,具有按與所述第一解析度相比的所述至少一個不同解析度表示所述基準幀的像素數據還可以被用於促進執行針對例如要顯示的視頻幀或多個幀的處理操作。

這種處理操作例如可以包括變換操作,諸如要顯示的幀縮放、旋轉以及/或偏斜(skewing)。該操作可以由總的視頻和數據處理系統的任何合適單元或級來執行,諸如圖形處理器、組合引擎、CPU和/或具有用於執行這種操作的能力的顯示控制器。

由此,根據本發明的實施方式,利用按與所述第一解析度相比的至少一個不同(例如,較低)解析度表示所述基準幀的像素數據來處理所述系列視頻幀中的至少一個幀的步驟包括:利用按與所述第一解析度相比的至少一個不同(例如,較低)解析度表示所述基準幀的像素數據,對所述系列視頻幀中的所述至少一個幀執行變換操作。等同地,根據實施方式,本發明的幀處理級包括處理器(例如,圖形處理器),該處理器能夠並且被配置成利用按與所述第一解析度相比的至少一個不同解析度(例如,較低)表示所述基準幀的像素數據,對所述系列視頻幀中的所述至少一個幀執行至少一個變換操作。

在優選實施方式中,所述變換操作包括縮放、旋轉以及偏斜操作中的至少一個。該變換操作可以(並且在某些實施方式中)包括在所述系列視頻幀中的幀之間內插。

申請人已經認識到,生成並利用按與所述第一解析度相比的至少一個較低解析度表示所述基準幀的像素數據在執行處理操作時可以有益之處在於,與在利用所述基準幀的較高解析度版本時相比,所述視頻處理系統將需要較少的存儲器存取來讀取所述基準幀。

而且,申請人已經認識到,使所述基準幀的多個解析度版本同時可用(例如,可用於GPU)可以促進以更有效和/或更複雜方式來執行諸如縮放的處理操作。例如,具有可以被同時使用的所述基準幀的多個解析度版本可以促進執行用於在顯示器上可視地輕擊多個幀的操作(如「封面流(coverflow)」型操作)。

申請人還認為,被配置成按這種方式操作的視頻處理系統在自身權利方面是新且有利的。

由此,根據本發明另一方面,提供了一種視頻處理系統,其中,相對於基準幀限定用於一系列視頻幀中的一個或更多個幀的數據,所述視頻處理系統包括:

存儲器;

第一處理單元(例如,視頻處理器),該第一處理單元被配置成,當要在提供用於顯示的輸出幀時使用用於一系列視頻幀的基準幀的全部或部分時:

生成按第一解析度和按與所述第一解析度相比的至少一個不同解析度表示所述基準幀的全部或部分的像素數據並存儲在存儲器中;以及

第二處理單元(例如,圖形處理器),該第二處理單元被配置成:

從存儲器中讀取按與所述第一解析度相比的所述至少一個不同解析度表示所述基準幀的全部或部分的像素數據;

在對所述系列視頻幀中的幀執行處理操作時使用所述像素數據,以生成表示已處理的幀的像素數據;以及

在存儲器中存儲表示所述已處理的幀的所述像素數據。

根據本發明另一方面,提供了一種操作視頻處理系統的方法,其中,相對於基準幀限定用於一系列視頻幀中的一個或更多個幀的數據,所述方法包括以下步驟:

當要在提供用於顯示的輸出幀時使用用於一系列視頻幀的基準幀的全部或部分時,所述視頻處理系統的第一處理單元(例如,視頻處理器):

生成按第一解析度和按與所述第一解析度相比的至少一個不同解析度表示所述基準幀的全部或部分的像素數據並存儲在存儲器中;以及所述視頻處理系統的第二處理單元(例如,圖形處理器):

從存儲器中讀取按與所述第一解析度相比的所述至少一個不同解析度表示所述基準幀的全部或部分的像素數據;

在對所述系列視頻幀中的幀執行處理操作時使用所述像素數據,以生成表示已處理的幀的像素數據;以及

在存儲器中存儲表示所述已處理的幀的所述像素數據。

本領域技術人員應當清楚,本發明的這些方面在適當時候可以並且優選地包括在此描述的本發明的優選和可選特徵中的一個或更多個。由此,例如,所述視頻處理系統優選地還包括顯示器和/或所述系統優選地還包括顯示控制器,該顯示控制器被配 置成:從存儲器讀取表示所述已處理的幀的像素數據;在生成要顯示的輸出幀時使用所述像素數據;以及將所生成的輸出幀輸出至顯示器。

類似地,所述第一處理單元優選為視頻處理器,而所述第二處理單元優選為圖形處理器、組合引擎、中央處理單元(CPU)或可工作為執行針對要顯示的幀的處理操作的顯示控制器中的一個。可存在超過一個「第二」處理單元,若需要的話,第二處理器在對所述系列視頻幀中的一幀執行處理操作時,使用按與所述第一解析度相比的所述至少一個不同解析度表示所述基準幀的全部或部分的像素數據,來生成表示已處理的幀的像素數據。

對應地,所述處理操作優選地包括變換操作,諸如要顯示的幀的縮放、旋轉和/或偏斜。

應當清楚,儘管主要參照生成表示用於顯示的輸出幀的像素數據對上述實施方式進行了描述,但只要將基於表示基準幀的像素數據來生成幀,就可以使用上述原理和技術。例如,在一個布置中,上述原理和技術還可以例如由組合引擎使用,以根據兩個或更多個單獨源幀(都將自己的基準值存儲在存儲器中)來導出並生成表示組合幀的像素數據。在該情況下,用於一個或更多個所述源幀的較低解析度基準幀可以用於生成組合幀。

由於本發明的視頻處理系統具有用於提供基準幀的多個不同解析度版本的能力,因而若需要的話,其還可以被用於在編碼一系列視頻幀時,提供按不同解析度表示基準幀的像素數據。這可以例如可用於在編碼一系列視頻幀時執行運動估計操作。

由此,在本發明的實施方式中,利用表示所述基準幀的像素數據來處理所述系列視頻幀中的至少一個幀的步驟包括:利用按與所述第一解析度不同(並且優選為較低)的解析度表示所述基準幀的像素數據,對一系列視頻幀中的至少一個幀進行編碼(並且優選地執行運動估計)。相應地,在實施方式中,所述幀處理級包括編碼單元。

而且,雖然已經參照整個幀對上述實施方式進行了描述,但本發明的技術和原理可以等同地(並且在一個優選實施方式中)僅應用至幀的一部分。例如,按與所述第一解析度相比的至少一個不同解析度表示整個基準幀(或其一部分)的像素數據可以被用於僅處理一系列視頻幀中的幀的一部分。

本發明可以在任何希望和合適的數據處理系統中實現,該數據處理系統可工作為生成用於例如在電子顯示器上顯示的視頻數據幀。

在這點上,所述幀處理級優選地包括合適的處理器,諸如圖形處理器、視頻處理器、組合器或顯示控制器。在一些實施方式中,所述幀處理級包括與所述基準幀生成級相同的處理器或多個處理器。

雖然上面已參照一系列視頻幀中的基準幀對本發明進行了描述,但本發明可更通常地應用於任何種類的數據幀,如表示靜止圖像(例如,JPEG)的那些數據幀。

由此,根據本發明的方面,提供了一種在視頻處理系統中處理數據幀的裝置,該裝置包括:

處理單元(例如,視頻處理單元),該處理單元被配置成,當幀的全部或部分要被用於進一步處理時:

生成按第一解析度表示所述幀的全部或部分的像素數據(並優選地存儲在存儲器中);以及

生成按與所述第一解析度相比的至少一個不同解析度來表示所述幀的全部或部分的像素數據並存儲在存儲器中。

根據本發明另一方面,提供一種在視頻處理系統中處理數據幀的方法,該方法包括以下步驟:

當所述幀的全部或部分要被用於進一步處理時:

生成按第一解析度表示所述幀的全部或部分的像素數據(並優選地存儲在存儲器中);以及

生成按與所述第一解析度相比的至少一個不同解析度來表示所述幀的全部或部分的像素數據並存儲在存儲器中。

應當清楚,這些方面可以(並且優選地)包括在此描述的可選特徵和實施方式中的一個或更多個或者全部。

由此,例如,與所述第一解析度相比的所述至少一個不同解析度優選為比所述第一解析度低的解析度。類似地,所生成的並且其按第一和至少一個不同解析度表示所述幀的像素數據優選地採用表示所述幀的mipmap集的兩個或更多個或全部級別的形式。等同地,在優選實施方式中,所述處理單元被配置成生成表示所述幀的像素數據作為mipmap集。此外,在優選實施方式中,所述mipmap集的每一個級別的高度和寬度是比該集合中的前一級別的高度和寬度小二倍,並且每一個級別的解析度都是前一 級別的解析度的四分之一(在素數數量方面)。(然而,若需要的話,可以將其它縮放因子用於所述mipmap集)。

生成並存儲的所述像素數據可以表示所述幀的整個mipmap集(即,從最高解析度版本開始並且包括各個mipmap級別的各個較低解析度版本,直到單個像素(或其等同物)。然而,不需要所述像素數據表示所述mipmap的每個可能級別。

在本發明的這些方面和實施方式中,按兩個或更多個不同解析度表示所述數據幀的像素數據再次優選地以壓縮的形式存儲在存儲器中,優選地按上面討論的一種或更多種方式。由此,在優選實施方式中,所述處理單元包括壓縮級(編碼單元)。

在一個優選實施方式中,生成按與所述第一解析度相比的至少一個不同解析度表示整個所述幀的像素數據。然而,這是不需要的。由此,在其它實施方式中,按與所述第一解析度相比的至少一個不同解析度表示所述幀的像素數據僅表示整個幀(圖像)的區域或部分。

在優選實施方式中,基於(例如,利用)已經按所述第一解析度針對(並且表示)所述幀生成的像素數據,生成按與所述第一解析度相比的至少一個不同解析度表示所述幀的像素數據。

在這些方面的優選實施方式和本發明的實施方式中,要用於進一步處理的所述幀是表示靜止圖像的數據幀,即,未相對於另一幀編碼的完全限定的幀。在特別優選實施方式中,所述幀是根據由聯合圖像專家組(JPEG)定義的格式編碼的幀。

申請人已經認識到,與基準幀的情況類似地,提供按至少兩個不同解析度表示靜止圖像(例如,JPEG圖像)的像素數據在視頻處理系統的多個級將是有利的,並且例如可以提供總體更有效的視頻處理系統。

根據優選實施方式,本發明的裝置還包括幀處理級(例如,圖形處理單元),該幀處理級被配置成,利用按與所述第一解析度相比的至少一個不同解析度表示所述幀的所述像素數據,來處理幀(例如用於顯示)。等同地,根據優選實施方式,本發明還包括利用按與所述第一解析度相比的至少一個不同解析度表示所述幀的像素數據,處理所述幀(例如用於顯示)。

利用按與所述第一解析度相比的至少一個不同(例如,較低)解析度表示所述幀的像素數據來處理所述幀的步驟可以(並且優選地)包括:利用按與所述第一解析度相比的至少一個不同(例如,較低)解析度表示所述幀的像素數據,對所述幀執行變 換操作。等同地,根據實施方式,本發明的幀處理級包括處理器(例如,圖形處理單元或組合器),該處理器能夠並且被配置成利用按與所述第一解析度相比的至少一個不同解析度(例如,較低)表示所述基準幀的像素數據,對所述幀執行至少一個變換操作。

在優選實施方式中,所述變換操作包括縮放、旋轉及偏斜操作中的至少一個。該變換操作可以(並且在某些實施方式中)包括在一組靜止圖像幀中的多個幀之間內插。

申請人已經認識到,生成並利用按與所述第一解析度相比的至少一個較低解析度表示所述幀的像素數據在執行處理操作時可以是有益的,因為與在利用所述幀的較高解析度版本時相比,所述處理系統將需要較少的存儲器存取來讀取所述幀。

而且,申請人已經認識到,使所述幀的多個解析度版本同時可用(例如,可用於GPU)可以促進按更有效和/或更複雜方式來執行諸如縮放的處理操作。例如,具有可同時使用的所述幀的多個解析度版本可以促進執行用於在顯示器上可視地輕擊多個幀的操作(如「封面流(coverflow)」型(映射至旋轉面)操作)。

在優選實施方式中,本發明在這樣的數據處理系統中實現,即,該系統是用於在顯示器上顯示(例如圖形用戶界面的)窗口的系統,並且優選為組合窗口系統。

實現本發明的所述數據(視頻)處理系統可以包含任何希望和恰當並且合適的部件與組件。由此,其可以並且優選地包含以下中的一個或更多個,並且優選為包含全部:CPU、GPU、視頻處理器、顯示控制器、顯示器(例如,LCD或OLED顯示器)以及用於存儲各種幀和所需的其它數據的合適的存儲器。

要顯示的所生成的幀和用於顯示的輸出幀(和任何其它源表面(幀))可以按任何合適和希望方式存儲在存儲器中。它們優選地存儲在合適的緩衝器中。例如,所述輸出幀優選地存儲在輸出幀緩衝器中。

所述輸出幀緩衝器可以是晶片上緩衝器或者可以是外部還緩衝器。類似地,所述輸出幀緩衝器可以是用於該目的的專用存儲器,或者可以是也用於其它數據的存儲器的一部分。在一些實施方式中,所述輸出幀緩衝器是用於正生成所述幀的所述視頻處理系統和/或用於要顯示所述幀的顯示器的幀緩衝器。

類似地,所生成的幀在生成(渲染)它們時被首先寫入的緩衝器可以包括任何合適的這種緩衝器,並且可以按任何合適和希望方式配置在存儲器中。例如,它們可以是晶片上緩衝器或多個緩衝器,或者可以是外部緩衝器或多個緩衝器。類似地,它們 可以是用於該目的的專用存儲器,或者可以是也被用於其它數據的存儲器的一部分。所述輸入幀緩衝器例如可以採用應用所需要的任何格式,並且例如可以存儲在系統存儲器中(例如,採用統一存儲器架構),或者圖形存儲器中(例如,採用非統一存儲器架構)。

本發明可以按任何合適系統來實現,如適當配置的基於微處理器的系統。在一些實施方式中,本發明在基於計算機和/或微處理器的系統中實現。

本發明的各種功能可以按任何希望和合適方式來執行。例如,本發明的功能可以如所希望地按硬體或軟體來實現。由此,例如,本發明的各種功能性部件和「裝置」可以包括合適的處理器或多個處理器、控制器或多個控制器、功能單元、電路、處理邏輯、微處理器排布結構等,其工作為執行各種功能等,如可以被編程為按希望方式工作的適當專用的硬體部件(處理電路)和/或可編程的硬體部件(處理電路)。

在此,還應注意,本領域技術人員應當清楚,本發明的各種功能等可以在指定處理器上複製和/或並行執行。等同地,若需要的話,各種處理級可以共用處理電路等。

本發明優選地在可攜式裝置中實現,諸如並且優選為行動電話或平板計算機。

本領域技術人員還應清楚,本發明的描述的全部實施方式在合適時候可以包括在此描述的優選和可選特徵中的任一個或更多個或全部。

根據本發明的方法可以至少部分地利用軟體(例如,電腦程式)來實現。由此,可以看到,當從本發明的另一些實施方式觀看時,本發明提供了當安裝在數據處理裝置上時特別適於執行在此所描述的方法的計算機軟體、包括當在數據處理裝置上運行該程序要素時用於執行在此所描述的方法的計算機軟體代碼的電腦程式要素、以及包括當在數據處理系統上運行該程序時適於執行在此所描述的方法的或多個方法的全部步驟的代碼裝置的電腦程式。所述數據處理系統可以是微處理器、可編程FPGA(現場可編程門陣列)等。

本發明還擴展至包括這種軟體的計算機軟體載體,其在被用於操作包括數據處理裝置的圖形處理器、渲染器或其它系統時,使與所述數據處理裝置、所述處理器、渲染器或系統結合地執行本發明的方法的步驟。這種計算機軟體載體可以是物理存儲介質,諸如ROM晶片、CD ROM、RAM、閃速存儲器或磁碟,或者可以是諸如通過導線的電子信號的信號、光學信號或諸如到衛星的無線電信號等。

還應清楚,並不是本發明方法的所有步驟都需要通過計算機軟體來執行,因此,根據本發明的更廣泛實施方式提供安裝在計算機軟體載體上的、用於執行在此闡述的方法的步驟中的至少一個步驟的計算機軟體和這種軟體。

因此,本發明的裝置可以適當地具體實施為與計算機系統一起使用的電腦程式產品。這種實現可以包括在諸如計算機可讀介質(例如,軟盤、CD ROM、ROM、RAM、閃速存儲器或硬碟)的有形非暫時介質上固定的一系列計算機可讀指令。其還可以包括可通過有形介質(包括但不限於光學或模擬通信線路)、或者利用無線技術(包括但不限於微波、紅外線或其他傳輸技術)無形地經由數據機或其它接口裝置傳送至計算機系統的一系列計算機可讀指令。該系列計算機可讀指令具體實施先前在此描述的全部或部分功能。

本領域技術人員應當清楚,這種計算機可讀指令可以採用許多程式語言來編寫,以與許多計算機架構或作業系統一起使用。而且,這種指令可以利用當前或將來的任何存儲器技術來存儲,包括但不限於半導體、磁或光學,或者利用當前或將來的任何通信技術來傳送,包括但不限於光學、紅外線或微波。設想的是,這種電腦程式產品可以作為具有附隨的列印或電子文檔(例如,收縮包裝軟體)的可去除介質而分發,利用計算機系統預先加載(例如,預先加載在系統ROM或固定盤上),或者通過網絡(例如,網際網路或全球資訊網)從伺服器或電子公告板分發。

附圖說明

下面,僅通過示例的方式並參照附圖,對本發明的優選實施方式進行描述,其中:

圖1示意性地例示了被配置成按照根據本發明的方式處理視頻數據幀的示例性視頻處理系統;

圖2示意性地例示了被表示為所述(同一)基準幀圖像的逐漸降低的解析度版本的mipmap集的基準幀;

圖3示意性地示出了可執行本發明的基本操作的視頻處理系統的實施方式;

圖4示意性地例示了具有被配置為按照根據本發明的方式處理靜止圖像幀的視頻處理器的視頻處理系統的實施方式;以及

圖5示意性地例示了被配置為按照根據本發明的方式編碼一系列視頻幀中的至少一個幀的視頻處理系統的實施方式。

具體實施方式

圖1示意性地示出了可執行本發明的基本操作的視頻處理系統11的實施方式。

如圖1所示,視頻處理系統11可以包括晶片上系統(SoC)12,晶片上系統12包括全部可利用外部(例如,晶片外)存儲器19的中央處理單元(CPU)13、圖形處理單元(GPU)14、視頻處理單元(VPU)15、顯示處理單元16以及外部接口18。與SoC和外部存儲器分立的是顯示器本身(未示出)。

GPU 14和VPU 15可以包括用於編碼(壓縮)要按壓縮形式存儲在存儲器中的數據(例如,幀)的合適的壓縮器(和對應的解壓縮器)。因此,顯示處理單元16可以包括用於解壓縮數據(例如,要顯示的幀)的解壓縮器。

根據本實施方式,一系列(壓縮的)視頻幀將從外部源提供給視頻引擎以進行解碼。在其它實施方式中,要顯示的幀按要求例如通過被GPU 14或視頻引擎15恰當渲染來生成。

如果正在被視頻引擎處理的當前幀是所謂的基準幀(因而要在解碼該系列視頻幀中的其它幀時使用),則表示該基準幀的全解析度版本的像素數據將被生成並存儲在外部存儲器19內的緩衝器中。然而,除了生成按全解析度(即,原始希望解析度)表示基準幀的像素數據以外,根據本實施方式,該視頻引擎將生成按與第一全解析度相比的至少一個不同解析度表示基準幀的像素數據並存儲在外部存儲器19中。

生成不僅按第一解析度而且按至少一個第二(例如較低)解析度表示基準幀的像素數據可以用於促進隨後生成的幀的更有效壓縮,或者減少在生成輸出幀以供顯示時所需的存儲器存取數。

例如,按多個解析度表示基準幀的像素數據可以從外部存儲器19取回並且由合適的編碼單元(未示出)使用以編碼(例如,執行運動估計)一系列視頻幀中的至少一個幀。(雖然圖中未示出編碼單元,但應當清楚,該編碼單元可以是SoC排布結構上的分立的單元,或者可以集成在視頻處理系統的合適組件內,如視頻處理單元15)。

在其它實施方式中,按不同解析度表示基準幀的像素數據從外部存儲器19取回並且用於生成輸出幀以供顯示。

例如,在要顯示的幀是基準幀的情況下,按用於顯示的最恰當解析度表示基準幀的像素數據可以由顯示處理單元16從外部存儲器19取回並輸出以供顯示。應當清楚, 在某些情況下,顯示處理單元16(或者例如,GPU 14)可以對表示基準幀的像素數據執行縮放操作,以按顯示尺寸的正確解析度提供輸出幀。

在要顯示的幀未被標誌為基準幀而是相對於基準幀編碼的情況下,視頻處理單元15例如從存儲器19檢索表示基準幀的像素數據,並將其用於解碼當前幀並生成按希望的解析度(優選為輸出幀解析度)表示當前幀的像素數據。

應當明白,儘管圖1的排布結構僅示出了兩個幀生成器(GPU 14和視頻引擎15),但本發明的視頻處理系統可以適當地包括任何數量(和類型)的幀生成器。

圖2例示了被表示為所述(同一個)基準幀圖像的逐漸降低的解析度形式的mipmap集的基準幀。

如上所述,在特別優選實施方式中,生成並存儲的並且按第一和至少一個不同解析度表示基準幀的像素數據採用表示基準幀的mipmap集的兩個或更多個或全部級別的形式。該mipmap集中的幀的每個版本都被稱為mipmap級別,其中,最低級別L0(20)是基準幀的最詳細版本,而最高級別L4(24)是最不詳細版本。

如圖2所示,在這個實施方式中,mipmap集的各個級別的高度和寬度比該集合中的前一級別的高度和寬度小二倍,並且各個級別的解析度是前一級別的解析度的四分之一(在像素數量方面)。在圖2所示實施方式中,該基準幀具有第一級別L0的原始全解析度4096×2160像素,並且關聯的mipmap集包含一系列5個級別(L0到L4),其中,各個級別是前一級別的總面積的四分之一:2048×1080像素、1024×540像素、512×270像素、256×135像素。

應當清楚,根據本發明生成並存儲的像素數據可以表示基準幀的整個mipmap集(即,從最高解析度版本開始並且包括各個mipmap級別的相應較低解析度版本,直至單個像素(或其等同物)的形式),或者僅表示基準幀的mipmap級別的特定(例如,希望的,例如選定的)子集。

還應清楚,根據本發明的一些實施方式,僅整個基準幀的一區域或一部分按mipmap集的指定級別來表示。

圖3示意性地示出了可執行本發明的基本操作的視頻處理系統31的實施方式。

如圖3所示,該視頻處理系統包括:VPU 32、第一顯示處理單元(DPU[0])34以及第二顯示處理單元(DPU[1])35,全部都可利用外部存儲器33。第一DPU(DPU[0]) 對應於尺寸L1的第一顯示屏(屏幕0),而第二DPU(DPU[1])對應於尺寸L2的第二顯示屏(屏幕1)。

根據本發明的實施方式,VPU 32作為輸入部接收表示一系列視頻幀的壓縮視頻數據,包括用於限定該系列中的其它幀的基準幀。在所示實施方式中,壓縮視頻數據按第一解析度L0表示該系列視頻幀中的每一個幀。

VPU 32被配置成解壓壓縮的視頻輸入(一次一個幀),以生成表示幀的解壓縮視頻數據。因此,VPU 32包括用於解壓縮視頻數據(例如,要顯示的幀)的解壓縮器(未示出)。

(應當清楚,若希望的話,解壓縮該壓縮視頻數據可以按其它方式進行。例如,取代包括解壓縮器的VPU 32,可以在系統中提供分立的解壓縮引擎,該解壓縮引擎接收壓縮的視頻數據並在將它們發送至VPU 32之前將它們解壓縮)。

VPU 32被配置成生成按第一原始解析度L0表示基準幀的像素數據並存儲在外部存儲器33中。由此,一旦解壓縮了表示基準幀的壓縮視頻數據,就將表示基準幀的(解壓縮)像素數據存儲在存儲器33中。然而,根據本發明的實施方式,VPU 32還被配置成生成按與第一解析度相比的至少一個不同解析度來表示基準幀的像素數據並存儲在存儲器33中。這例如可以通過對(解壓縮的)基準幀執行恰當縮放操作來實現。

在圖3所示實施方式中,被VPU 32接收到的該系列視頻幀中的第一幀(幀1)是基準幀並且是要輸出以供顯示的幀。因此,VPU 32生成按第一解析度L1表示基準幀的像素數據,並將其例如存儲在存儲器33中,以使其可以被用於限定和解碼該系列視頻幀中的其它幀。然而,除此以外,VPU 32還生成按除了第一解析度(L0)以外的兩個不同解析度(L1和L2)表示基準幀的像素數據。這可以通過將基準幀縮放至第一和第二顯示屏的精確解析度來完成。

該系列視頻幀中的第二幀(幀2)也被標誌為基準幀和輸出幀,因而還生成按第一、第二以及第三解析度L0、L1以及L2表示該基準幀的像素數據。

第三幀(幀3)未被標誌為基準幀,相反僅被標誌為輸出幀。在這種情況下,不需要按全解析度表示該幀的全像素數據(因為其將不被用於解碼該系列中的任何其它幀),因而VPU 32被配置成僅生成按所述一個或更多個較低解析度表示該幀的像素數據並存儲在存儲器33中。在所示的具體示例中,VPU 32生成按第二和第三解析度L1和L2表示該幀的像素數據。

(這可以通過首先利用按全解析度表示對應的基準幀(例如,幀2)的像素數據解碼該幀,接著對(解碼的)幀執行縮放操作以生成按與第一解析度相比的一個或更多個較低解析度表示該幀的像素數據來完成)。

存儲在存儲器中的幀接著可由恰當的DPU(或多個DPU)檢索以供顯示。在這點上,應當清楚,具有幀的較低解析度像素數據的有利之處在於,僅當前幀(圖3中的第一、第二或第三幀)較小版本需要被讀取以供顯示,由此節省存儲器帶寬和存取等。

在圖3所示示例中,除了DPU[0]將僅讀取按較低解析度L1表示該幀的數據,而DPU[1]將僅讀取按較低解析度L2表示幀的數據以外,第一像素單元DPU[0]和第二像素單元DPU[1]中的每一個都被配置成輸出幀。

(應當清楚,儘管圖3示出了僅按與第一解析度相比的兩個不同解析度表示基準幀的像素數據,但除了第一解析度以外,還可以生成任何數量的不同解析度。例如,VPU可以被配置成生成全mipmap集。而且,雖然圖3示出了兩個分立的顯示處理單元,但可以使用任何數量的顯示處理單元。而且,用於生成表示幀的像素數據的所述一個或更多個較低解析度不需要正好對應於所述一個或更多個顯示屏的解析度。相反,所述一個或更多個較低解析度可以被選擇為所述一個或更多個顯示屏的解析度的mipmap集的最接近級別,其中所需的任何最終縮放都在顯示處理單元中執行)。

圖4示意性地例示了可以執行本發明的基本操作的視頻處理系統31的實施方式,除了取代處理一系列視頻幀以外,該視頻處理器還被配置成處理靜止圖像幀。

與圖3的實施方式類似地,在這個示例中,視頻處理系統41包括:VPU 42、外部存儲器43、GPU 44以及例如顯示器上的圖形用戶界面45。

從在圖4中可以看出,VPU 42被配置成從圖像源(未示出)接收一系列(壓縮的)靜止圖像幀,並且生成按第一解析度和與第一解析度相比的至少一個不同解析度表示每一個幀的像素數據並存儲在存儲器中。

VPU 43被配置成生成表示該系列靜止圖像中的每一個圖像的像素數據作為完整的mipmap並存儲在存儲器43中。例如,圖4的外部存儲器43存儲有按連續的較低解析度L0到LN表示圖像的像素數據。

來自存儲器的表示幀或多個幀的像素數據接著被從存儲器檢索並且被GPU 44用於對所述一個或更多個幀執行處理操作,例如用於顯示。

例如,GPU 44可以被配置成讀取並使用按與第一解析度相比的至少一個較低解析度表示幀的像素數據,以對該幀執行變換操作,如縮放、旋轉或偏斜操作。在其它示例中,GPU 44可以被配置成讀取並使用按與第一解析度相比的至少一個較低解析度表示超過一個幀的像素數據,以執行用於在圖形用戶界面45上可視地輕擊多個幀的操作(如「封面流」型操作)。

圖5示意性地例示了根據本發明的被配置成編碼一系列視頻幀中的至少一個幀的視頻處理系統的實施方式。該視頻處理系統包括外部存儲器42和具有分層運動估計編碼器54的VPU 53。

VPU 53被配置成對一系列視頻幀中的指定幀(幀1)執行分層運動估計編碼。如圖所示,該幀被編碼為雙向幀,即,根據該系列視頻幀中的前一幀(幀0)和後一幀(幀2)兩者限定的幀。在圖5的實施方式中,幀0和幀2都是基準幀,而幀1僅被編碼為輸出幀。

因此,按第一解析度和至少一個不同解析度表示基準幀(幀0和幀2)的像素數據被生成並存儲在外部存儲器52中。在圖5所示示例中,按第一解析度和至少一個不同解析度表示基準幀(幀0和幀2)的像素數據已被生成並存儲在該視頻處理系統的外部存儲器52中。(在該具體例中,各個基準幀都被表示為包括基準幀的第一、第二以及第三解析度版本(分別為版本L0、L1以及L2)的(例如,稀疏的)mipmap集,但其它配置同樣也是可以的)。

VPU 53(更具體地,VPU 53的編碼器54)被配置成從存儲器52讀取表示基準幀的像素數據並將其用於對所討論的幀(幀1)執行分層運動估計編碼。在圖5所示實施方式中,編碼器54生成表示該幀的編碼像素數據作為mipmap集,優選為僅包含正在被分層搜索方案使用的級別(即,級別L0、L1以及L2)的稀疏mipmap集。

申請人已經認識到,具有已經存儲在存儲器中的基準幀的多解析度版本有利於按更有效方式執行運動估計編碼。具體來說,具有所述幀的多解析度版本易於尋找較長的運動矢量,同時保持存儲器帶寬較低(通過搜索基準幀的多解析度版本)。例如,當希望在基準幀的較低解析度版本中搜索運動數量時,VPU 53可以簡單地讀取按較低解析度表示該基準幀的像素數據(而不是首先讀入全解析度像素數據並接著將其按比例縮小),由此節省存儲器存取和帶寬。

應當清楚,儘管圖5的VPU 53編碼雙向幀,但這是不必要的。適合時,可以使用任何壓縮方案。例如,可以將幀編碼為前向預測幀(例如,根據單個基準幀),或者雙向預測幀。

根據上述內容,可以看出,本發明至少在其優選實施方式中提供了一種提供更有效的視頻處理系統的方式,其中,相對於基準幀限定用於一系列視頻幀中的一個或更多個幀的數據。

在優選實施方式中,這至少通過以下步驟來實現:當需要基準幀的全部或一部分來解碼(或編碼)一系列視頻幀時,生成按第一全解析度和與第一解析度相比的至少一個不同(例如,較低)解析度表示該基準幀的全部或一部分的像素數據並存儲在存儲器中。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀