TWI468017B - 用於視訊寫碼中運動補償之進階內插技術 - Google Patents

用於視訊寫碼中運動補償之進階內插技術 Download PDF

Info

Publication number
TWI468017B
TWI468017B TW98112128A TW98112128A TWI468017B TW I468017 B TWI468017 B TW I468017B TW 98112128 A TW98112128 A TW 98112128A TW 98112128 A TW98112128 A TW 98112128A TW I468017 B TWI468017 B TW I468017B
Authority
TW
Taiwan
Prior art keywords
pixel values
pixel
video
values
video data
Prior art date
Application number
TW98112128A
Other languages
English (en)
Other versions
TW201010440A (en
Inventor
Yan Ye
Peisong Chen
Marta Karczewicz
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW201010440A publication Critical patent/TW201010440A/zh
Application granted granted Critical
Publication of TWI468017B publication Critical patent/TWI468017B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

用於視訊寫碼中運動補償之進階內插技術
本揭示案係關於數位視訊寫碼,且更特定言之,係關於用於視訊寫碼中之預測性資料之分數內插。
本申請案主張2008年4月10日申請之美國臨時申請案第61/044,023號、2008年4月11日申請之美國臨時申請案第61/044,240號及2008年5月30日申請之美國臨時申請案第61/057,373號之權利,該等申請案之全文以引用的方式併入本文中。
可將數位視訊能力併入於廣泛範圍之器件中,包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、數位相機、數位記錄器件、視訊遊戲器件、視訊遊戲控制台、蜂巢式或衛星無線電電話及其類似物。數位視訊器件實施視訊壓縮技術,諸如,MPEG-2、MPEG-4或ITU-T H.264/MPEG-4第十部分、進階視訊寫碼(AVC),以更有效地傳輸及接收數位視訊資訊。視訊壓縮技術可執行空間預測及/或時間預測以減少或移除視訊序列中固有之冗餘。
基於區塊之圖框間寫碼為非常有用的寫碼技術,其依賴於時間預測來減少或移除在視訊序列之連續經寫碼單元之視訊區塊之間的時間冗餘。經寫碼單元可包含視訊圖框、視訊圖框之片段、圖像之群或視訊區塊之另一定義單元。對於圖框間寫碼,視訊編碼器執行運動估計及運動補償以追蹤兩個或兩個以上相鄰經寫碼單元之相應視訊區塊之移動。運動估計產生運動向量,其指示視訊區塊相對於一或多個參考圖框或其他經寫碼單元中之相應預測視訊區塊之移位。運動補償使用運動向量來自參考圖框或其他經寫碼單元產生預測視訊區塊。在運動補償之後,殘餘視訊區塊藉由自正經寫碼之原始視訊區塊減去預測視訊區塊來形成。
視訊編碼器亦可應用變換、量化及熵寫碼過程以進一步降低與殘餘區塊之通信相關聯的位元率。變換技術可包含離散餘弦變換(DCT)或概念上類似的過程。或者,可使用小波變換、整數變換或其他類型之變換。在DCT過程中,例如,一組像素值經轉換為變換係數,其可表示頻域中之像素值之能量。將量化應用於變換係數,且量化通常涉及限制與任何給定變換係數相關聯的位元數目之過程。熵寫碼包含共同壓縮經量化變換係數之序列之一或多個過程。熵寫碼之實例包括(但不限於)內容適應性可變長度寫碼(CAVLC)及上下文適應性二進制算術寫碼(CABAC)。
經寫碼之視訊區塊可由可用於產生或識別預測性區塊之預測資訊及指示正經寫碼區塊與預測性區塊之間的差異之資料的殘餘區塊來表示。預測資訊可包含一或多個運動向量,該一或多個運動向量用於識別資料之預測性區塊。給定運動向量,解碼器能夠重新建構用於寫碼殘餘區塊之預測性區塊。因此,給定一組殘餘區塊及一組運動向量(及可能的一些額外語法),則解碼器可能夠重新建構最初經編碼之視訊圖框。基於運動估計及運動補償之圖框間寫碼可達成非常好的壓縮,因為連續視訊圖框或其他類型之經寫碼單元通常非常類似。經編碼之視訊序列可包含殘餘資料區塊、運動向量及可能的其他類型之語法。
已開發內插技術以便改良可在圖框間寫碼中達成之壓縮等級。在此種狀況下,在運動補償期間所產生之預測性資料(其用於寫碼視訊區塊)可自視訊圖框或用於運動估計中之其他經寫碼單元之視訊區塊之像素而內插。內插通常經執行以產生預測性半像素值(半像素)及預測性四分之一像素值(四分之一像素)。此內插通常產生比預測性圖框或用於視訊寫碼中之其他經寫碼單元之實際視訊區塊更類似於正經寫碼視訊區塊之預測性區塊。
大體上,本揭示案描述在視訊寫碼之運動補償處理期間由編碼器及解碼器執行之內插技術。根據本揭示案之技術,編碼器可應用複數個預定義內插濾波器以便產生複數個不同的內插預測資料。可選擇達成最高壓縮等級之內插預測資料,且可將所使用之內插濾波器寫碼為語法且傳達至解碼器件以作為經寫碼視訊資料之部分。內插濾波器可每預測性單元定義一次(例如,每預測圖框一次),或可在區塊基礎上加以定義(例如,不同濾波可應用於預測性單元內之不同視訊區塊)。或者,可在樣本基礎上定義內插濾波器,或可在子樣本基礎上定義內插濾波器。
解碼器接收經寫碼之視訊資料,且可解譯語法以便識別由編碼器使用之內插濾波器。以此方式,解碼器可在其運動補償處理期間識別且使用在編碼過程期間所使用之相同內插濾波器。藉由考慮在編碼器處之多個不同的內插濾波器,可相對於具有固定內插濾波器之技術而改良壓縮。同時,該等技術可比習知適應性內插濾波顯著不複雜,該習知適應性內插濾波適應性地定義內插濾波器係數以作為寫碼過程之部分。根據本揭示案之一些態樣,不同內插濾波器可藉由對測試視訊序列實施適應性內插濾波或其他技術以便預定義將可能導致良好壓縮之內插濾波器係數之集合而加以預定義。或者,不同數目之濾波器係數(不同數目之分接頭)或不同類型之濾波器可經一起預定義,且接著在編碼及解碼過程期間經選擇並使用。
另外,本揭示案亦認識到歸因於半像素值之習知捨入之寫碼無效率,且提供可藉由減小或消除中間捨入來改良內插之技術。在此種狀況下,可為半像素內插之目的而捨入內插半像素值。然而,可基於內插之半像素值中之一或多者而產生之四分之一像素值可依賴於半像素值之未捨入型式。此可消除自半像素值至四分之一像素值之捨入不準確性之傳播。在一些狀況下,在不犧牲最終值之準確性之情況下的輕微捨入可應用於一特定半像素值以便確保16位元儲存元件可用於儲存半像素之任何中間值。詳言之,當15個可能的子像素定位經定義以用於每一像素定位時,特定半像素值中之一者可能需要基於其他半像素值產生(亦即,需要兩級半像素內插),且此特定半像素值可能需要捨入以確保16位元儲存元件可用於儲存所有內插值。
在任何狀況下,中間捨入任務之消除可在有或無複數個預定義內插濾波器之實施的情況下進行,如本文中所描述。舉例而言,可在使用複數個預定義內插濾波器之實施的情形中執行中間捨入之消除,如本文中所描述。或者,可在更習知內插之情形中,諸如,在適應性內插濾波(AIF)之情形中執行中間捨入之消除。
在一實例中,本揭示案提供一種編碼視訊資料之方法。該方法包含產生預測資料,其中產生預測資料包括基於複數個不同的預定義內插濾波器內插參考視訊資料之像素值。該方法亦包含基於預測資料來編碼視訊資料。
在另一實例中,本揭示案提供一種解碼視訊資料之方法。該解碼方法包含接收一語法元素,該語法元素識別來自複數個不同的預定義內插濾波器之一內插濾波器;產生預測資料,其中產生預測資料包括基於由語法元素所識別之內插濾波器而內插參考視訊資料之像素值;及基於該預測資料解碼視訊資料。
在另一實例中,本揭示案提供一種內插用於視訊寫碼之預測性視訊資料之方法。該方法包含基於整數像素值產生半像素值,捨入該等半像素值以產生半像素內插值,儲存半像素值以作為半像素值之未捨入型式,及基於半像素值之未捨入型式及整數像素值產生四分之一像素值。
在另一實例中,本揭示案提供一種編碼視訊資料之裝置,該裝置包含一視訊編碼器,該視訊編碼器包括產生預測資料之運動補償單元。運動補償單元基於複數個不同的預定義內插濾波器內插參考視訊資料之像素值,且視訊編碼器基於該預測資料來編碼視訊資料。
在另一實例中,本揭示案提供一種解碼視訊資料之裝置,該裝置包含一視訊解碼器,該視訊解碼器包括運動補償單元。該視訊解碼器接收一語法元素,該語法元素識別來自複數個不同的預定義內插濾波器之一內插濾波器。該運動補償單元產生預測資料,其中產生預測資料包括基於由語法元素識別之內插濾波器來內插參考視訊資料之像素值。視訊解碼器接著基於預測資料來解碼視訊資料。
在另一實例中,本揭示案提供一種內插用於視訊寫碼之預測性視訊資料之裝置,其中該裝置包括一運動補償單元,該運動補償單元基於整數像素值產生半像素值,捨入半像素值以產生半像素內插值,儲存半像素值以作為半像素值之未捨入型式,及基於半像素值之未捨入型式及整數像素值產生四分之一像素值。
在另一實例中,本揭示案提供一種編碼視訊資料之器件,該器件包含用於產生預測資料之構件,其中用於產生預測資料之構件包括用於基於複數個不同的預定義內插濾波器內插參考視訊資料之像素值之構件及用於基於預測資料來編碼視訊資料之構件。
在另一實例中,本揭示案提供一種解碼視訊資料之器件,該器件包含用於接收一語法元素之構件,該語法元素識別來自複數個不同的預定義內插濾波器之一內插濾波器;用於產生預測資料之構件,其中用於產生預測資料之構件包括用於基於由語法元素識別之內插濾波器內插參考視訊資料之像素值之構件;及用於基於預測資料來解碼視訊資料之構件。
在另一實例中,本揭示案提供一種內插用於視訊寫碼之預測性視訊資料之器件,該器件包含用於基於整數像素值產生半像素值之構件,用於捨入半像素值以產生半像素內插值之構件,用於儲存半像素值以作為半像素值之未捨入型式之構件,及用於基於半像素值之未捨入型式及整數像素值產生四分之一像素值之構件。
在另一實例中,本揭示案提供一種編碼視訊資料之器件,該器件包含一視訊編碼器,該視訊編碼器包括一運動補償單元,該運動補償單元藉由基於複數個不同的預定義內插濾波器內插參考視訊資料之像素值來產生預測資料,且基於該預測資料來編碼視訊資料;及一無線傳輸器,其將視訊資料傳輸至另一器件。
在另一實例中,本揭示案提供一種解碼視訊資料之器件,該器件包含:一無線接收器,其接收視訊資料;及一視訊解碼器,其包括一運動補償單元,該運動補償單元接收識別來自複數個不同的預定義內插濾波器之一內插濾波器的語法元素,產生預測資料,其中產生預測資料包括基於由語法元素識別之內插濾波器內插參考視訊資料之像素值,及基於預測資料來解碼視訊資料。
在另一實例中,本揭示案提供一種編碼視訊資料之器件,該器件包含:一視訊編碼器,該視訊編碼器包括一運動補償單元,該運動補償單元基於整數像素值產生半像素值,捨入半像素值以產生半像素內插值,儲存半像素值以作為半像素值之未捨入型式,及基於半像素值之未捨入型式及整數像素值產生四分之一像素值;及一無線傳輸器,其將由運動補償單元編碼之視訊資料傳輸至另一器件。
在另一實例中,本揭示案提供一種解碼視訊資料之器件,該器件包含:一無線接收器,其接收視訊資料;及一包括運動補償單元之視訊解碼器,其解碼視訊資料。在解碼視訊資料中,運動補償單元基於整數像素值產生半像素值,捨入半像素值以產生半像素內插值,儲存半像素值以作為半像素值之未捨入型式,且基於半像素值之未捨入型式及整數像素值產生四分之一像素值。
本揭示案中所描述之技術可在硬體、軟體、韌體或其任何組合中實施。若以軟體實施,則軟體可執行於一或多個處理器(諸如,微處理器、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)或數位信號處理器(DSP))中。執行該等技術之軟體最初可儲存於電腦可讀媒體中且載入並執行於處理器中。
因此,本揭示案亦涵蓋一種包含指令之電腦可讀儲存媒體,該等指令在執行時引起一器件編碼視訊資料,其中該等指令引起該器件產生預測資料,其中產生預測資料包括基於複數個不同的預定義內插濾波器內插參考視訊資料之像素值,及基於預測資料來編碼視訊資料。
本揭示案亦涵蓋一種包含指令之電腦可讀儲存媒體,該等指令在執行時引起一器件解碼視訊資料,其中該等指令引起該器件在接收到識別來自複數個不同的預定義內插濾波器之一內插濾波器的語法元素時產生預測資料,其中產生預測資料包括基於由語法元素識別之內插濾波器內插參考視訊資料之像素值,及基於預測資料來解碼視訊資料。
另外,本揭示案亦涵蓋一種包含指令之電腦可讀儲存媒體,該等指令在執行時引起一器件內插用於視訊寫碼之預測性視訊資料,其中該等指令引起該器件基於整數像素值產生半像素值,捨入半像素值以產生半像素內插值,儲存半像素值以作為半像素值之未捨入型式,及基於半像素值之未捨入型式及整數像素值產生四分之一像素值。
在隨附圖式及以下描述中陳述本揭示案之一或多項態樣的細節。本揭示案中所描述之技術之其他特徵、目標及優點將自該描述及圖式及自申請專利範圍而顯而易見。
本揭示案描述在視訊寫碼之運動補償處理期間由編碼器及解碼器執行之各種內插技術。根據本揭示案之一態樣,編碼器可應用複數個預定義內插濾波器以便產生複數個不同的內插預測資料。可在編碼器處選擇達成最高壓縮等級之內插預測資料,且可將所使用之內插濾波器寫碼為語法且傳達至解碼器件以作為經寫碼視訊資料之部分。內插預測資料包含參考資料。待寫碼之視訊資料(例如,視訊區塊)可自內插預測資料(例如,內插預測性參考區塊)減去以便定義經編碼資料之殘餘區塊,該殘餘區塊接著可經變換、量化及熵寫碼。
內插濾波器可每預測單元定義一次(例如,每預測圖框一次),或可在樣本基礎上加以定義(例如,不同濾波可應用於預測性單元內之不同視訊區塊或不同樣本定位)。不同內插濾波器(例如)可由不同組之濾波器係數、不同數目之濾波器係數或可能不同的濾波器類型來定義。在任何狀況下,藉由提供複數個預定義內插濾波器,內插資料可提供改良之資料壓縮。
解碼器接收經寫碼之視訊資料,且可解譯語法以便識別由編碼器使用之內插濾波器。以此方式,解碼器可在其運動補償處理期間識別且使用在編碼過程期間所使用之相同內插濾波器。再次,藉由考慮在編碼器處之多個不同的內插濾波器,可相對於具有單一經定義內插濾波器之技術而改良壓縮。同時,該等技術可比習知適應性內插濾波顯著不複雜,該習知適應性內插濾波適應性地定義內插濾波器(藉由選擇濾波器係數)以作為寫碼過程之一部分。在一實例中,內插濾波器可藉由對測試視訊序列實施適應性內插濾波或其他技術以便預定義將可能導致良好壓縮之內插濾波器係數之集合而加以預定義。
在本揭示案之另一態樣中,描述內插技術,其消除或顯著減小用於四分之一像素內插之半像素值的中間捨入。消除或顯著減小中間捨入之技術可在有或無使用預定義內插濾波器之以上所提及技術的情況下使用。換言之,消除或顯著減小中間捨入之技術可根據一或多個預定義內插濾波器在內插期間使用,但亦可與使用固定內插濾波器之內插或可能與適應性改進內插技術一起使用。
本揭示案認識到可歸因於半像素值之習知捨入而出現之寫碼無效率,且提議藉由消除或減小中間捨入來改良內插之技術。在此種狀況下,可為半像素內插之目的而捨入內插之半像素值。然而,可基於內插半像素值中之一或多者而產生之四分之一像素值可依賴於半像素值之未捨入型式。此可消除自半像素值至四分之一像素值之捨入不準確性之傳播。在一些狀況下,輕微捨入可應用於一些半像素值以便確保16位元資料結構可用於儲存任何中間值。在一些狀況下,輕微捨入對最終準確性之影響可藉由適當地執行捨入而為零。在任何狀況下,中間捨入之消除或減小可在有或無複數個預定義內插濾波器之實施的情況下進行,如本文中所描述。
圖1為說明可實施本揭示案之技術之一例示性視訊編碼及解碼系統10的方塊圖。如圖1中所示,系統10包括一源器件12,其將經編碼之視訊經由通信頻道15傳輸至目的地器件16。源器件12及目的地器件16可包含多種器件中之任一者。在一些狀況下,源器件12及目的地器件16包含諸如無線手機、所謂的蜂巢式或衛星無線電話之無線通信器件,或可經由通信頻道15傳達視訊資訊之任何無線器件,在該種狀況下通信頻道15為無線的。然而,關於運動補償內插之本揭示案之技術不必限於無線應用或設定。
在圖1之實例中,源器件12可包括視訊源20、視訊編碼器22、調變器/解調變器(數據機)23及傳輸器24。目的地器件16可包括接收器26、數據機27、視訊解碼器28及顯示器件30。根據本揭示案,源器件12之視訊編碼器22可經組態以應用本揭示案之內插技術中之一或多者以作為視訊編碼過程之部分。類似地,目的地器件16之視訊解碼器28可經組態以應用本揭示案之內插技術中之一或多者以作為視訊解碼過程之部分。
圖1之所說明系統10僅為例示性的。本揭示案之內插技術可由支援運動補償內插至子像素解析度之任何編碼器件來執行。源器件12及目的地器件16僅為此等寫碼器件之實例。在此種狀況下,源器件12產生用於傳輸至目的地器件16之經寫碼視訊資料。器件12、16可以實質上對稱方式操作以使得器件12、16中之每一者包括(例如)在組合編碼器-解碼器(CODEC)中之視訊編碼及解碼組件。因此,系統10可支援視訊器件12、16之間的單程或雙程視訊傳輸,例如,以用於視訊串流、視訊回放、視訊廣播或視訊電話。
源器件12之視訊源20可包括諸如視訊攝影機之視訊捕獲器件、含有先前捕獲之視訊之視訊檔案或來自視訊內容提供者之視訊饋入。作為另一替代,視訊源20可產生基於電腦圖形之資料以作為源視訊,或現場直播視訊、所保存之視訊與電腦產生之視訊的組合。在一些狀況下,若視訊源20為視訊攝影機,則源器件12及目的地器件16可形成所謂的相機電話或視訊電話。在每一狀況下,經捕獲、預先捕獲或電腦產生之視訊可由視訊編碼器22編碼。經編碼之視訊資訊接著可根據通信標準(例如,分碼多重存取(CDMA)或另一通信標準)由數據機23調變,且經由傳輸器24傳輸至目的地器件16。數據機23可包括各種混合器、濾波器、放大器或經設計以用於信號調變之其他組件。對於無線應用,傳輸器24可包括經設計以用於傳輸資料之電路,其包括放大器、濾波器及一或多個天線。
目的地器件16之接收器26經由頻道15接收資訊,且數據機27解調變該資訊。再次,視訊編碼過程可實施本文中所述技術中之一或多者以在運動補償期間改良內插。由視訊解碼器28執行之視訊解碼過程亦可在解碼過程之其運動補償階段期間執行內插。顯示器件30向使用者顯示經解碼之視訊資料,且可包含諸如陰極射線管、液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示器件的多種顯示器件中之任一者。
在圖1之實例中,通信頻道15可包含任何無線或有線通信媒體,諸如,射頻(RF)頻譜或一或多個實體傳輸線,或無線與有線媒體之任何組合。通信頻道15可形成諸如區域網路、廣域網路或諸如網際網路之全球網路的基於封包之網路之部分。通信頻道15通常表示用於將視訊資料自源器件12傳輸至目的地器件16之任何適合的通信媒體,或不同通信媒體之集合。
視訊編碼器22及視訊解碼器28可根據視訊壓縮標準,諸如ITU-T H.264標準(或者描述為MPEG-4第十部分、進階視訊寫碼(AVC))來操作。然而,本揭示案之技術不限於任何特定寫碼標準。儘管在圖1中未展示,但在一些態樣中,視訊編碼器22及視訊解碼器28可各自與音訊編碼器及解碼器整合,且可包括適當的多工解多工單元或其他硬體及軟體,以處理共同資料流或獨立資料流中之音訊與視訊的編碼。若適用,則多工解多工單元可符合ITU H.223多工器協定,或諸如使用者資料報協定(UDP)之其他協定。
ITU-T H.264/MPEG-4(AVC)標準由ITU-T視訊寫碼專家群(VCEG)連同ISO/IEC動畫專家群(MPEG)一起闡明為被稱為聯合視訊小組(JVT)之集體合作之產品。在一些態樣中,本揭示案中所描述之技術可應用於大體符合H.264標準之器件。H.264標準描述於由ITU-T研究群制定且註明日期為2005年3月之ITU-T Recommendation H.264,Advanced Video Coding for generic audiovisual services中,其在本文中可稱為H.264標準或H.264規格或H.264/AVC標準或規格。聯合視訊小組(JVT)繼續研究H.264/MPEG-4 AVC之擴展。
視訊編碼器22及視訊解碼器28各自可實施為一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、軟體、硬體、韌體或其任何組合。視訊編碼器22及視訊解碼器28中之每一者可包括於一或多個編碼器或解碼器中,其任一者可整合為各別行動器件、用戶器件、廣播器件、伺服器或其類似者中的組合CODEC之部分。
視訊序列通常包括一系列視訊圖框。視訊編碼器22對個別視訊圖框內之視訊區塊操作以便編碼視訊資料。該等視訊區塊可具有固定或變化之大小,且可根據指定之寫碼標準而在大小上不同。每一視訊圖框包括一系列片段。每一片段可包括一系列巨集區塊,其可排列為子區塊。舉例而言,ITU-T H.264標準支援諸如用於明度(luma)分量之16×16、8×8或4×4及用於色度分量之8×8之各種區塊大小的圖框內預測,以及諸如用於明度分量之16×16、16×8、8×16、8×8、8×4、4×8及4×4及用於色度(chroma)分量之相應經按比例調整之大小之各種區塊大小的圖框間預測。視訊區塊在(例如)諸如離散餘弦變換或概念上類似的變換過程之變換過程之後可包含像素資料之區塊或變換係數之區塊。
較小視訊區塊可提供較佳解析度,且可用於定位包括高等級細節之視訊圖框。大體上,巨集區塊(MB)及各種子區塊可視作視訊區塊。另外,一片段可視作一系列視訊區塊,諸如MB及/或子區塊。每一片段可為視訊圖框之一可獨立解碼的單元。視訊編碼器22及視訊解碼器28執行基於圖框間之預測性寫碼,其涉及預測性參考資料之產生及待寫碼視訊區塊自預測性參考資料之減去以產生殘餘資料,該殘餘資料接著可經變換、量化及熵寫碼。基於圖框間之預測性寫碼可包括根據本揭示案之預測性資料之內插。
在基於圖框間之預測性寫碼(其包括本揭示案之內插技術)之後且在任何變換(諸如用於H.264/AVC中之4×4或8×8整數變換或離散餘弦變換DCT)之後,可執行量化。量化大體上指代一過程,其中係數經量化以可能減少用於表示係數之資料量。量化過程可減小與一些或所有係數相關聯的位元深度。舉例而言,16位元值在量化期間可下捨入為15位元值。在量化之後,熵寫碼可(例如)根據內容適應性可變長度寫碼(CAVLC)、上下文適應性二進制算術寫碼(CABAC)或另一熵寫碼方法來執行。
根據本揭示案之技術,視訊編碼器22可應用複數個預定義內插濾波器以便產生複數個不同的內插預測資料。可藉由視訊編碼器22選擇達成最高壓縮等級之內插預測資料,且可將用於所選內插預測資料之內插濾波器寫碼為語法且傳達至目的地器件16以作為經寫碼視訊資料之部分。在此種狀況下,視訊解碼器28接收經寫碼之視訊資料,且可解譯語法以便識別由視訊編碼器22使用之內插濾波器。因此,視訊解碼器28可在運動補償解碼過程期間識別且使用在編碼過程期間所使用之相同內插濾波器。不同的預定義內插濾波器可包含具有不同組濾波器係數(濾波器分接頭)之類似濾波器。或者,不同的預定義內插濾波器可包含具有不同數目之濾波器分接頭或可能完全不同類型之濾波器組態之濾波器。
又,根據本揭示案之另一態樣,視訊編碼器22及視訊解碼器28可應用內插技術,其消除或顯著減小用於四分之一像素內插之半像素值之中間捨入。在此種狀況下,視訊編碼器22及視訊解碼器28可為了半像素內插之目的而捨入內插之半像素值。然而,對於四分之一像素內插,視訊編碼器22及視訊解碼器28可儲存且使用半像素值之未捨入型式以便減小或消除自半像素值至四分之一像素值之捨入不準確性之傳播。在一些狀況下,輕微捨入可應用於需要兩級內插之一特定半像素值以便確保固定大小之儲存元件(例如,16位元暫存器)可用於儲存任何中間值。在一些狀況下,輕微捨入對最終準確性之影響可藉由適當地執行捨入而為零,如本文中所描述。
圖2為說明符合本揭示案之可執行運動補償內插之視訊編碼器50之一實例的方塊圖。視訊編碼器50可對應於器件20之視訊編碼器22或不同器件之視訊編碼器。視訊編碼器50可執行視訊圖框內之區塊之圖框內寫碼及圖框間寫碼,儘管未說明圖框內編碼。圖框內寫碼依賴於空間預測來減小或移除給定視訊圖框圖框內的視訊中之空間冗餘。圖框間寫碼依賴於時間預測來減小或移除視訊序列之相鄰圖框內之視訊的時間冗餘。圖框內模式(I模式)可指基於空間之壓縮模式,且諸如預測(p模式)或雙向(B模式)之圖框間模式可指基於時間之壓縮模式。本揭示案之技術通常可在圖框間寫碼期間應用,且因此為說明之簡單性及簡易性起見而未在圖2中說明諸如空間預測單元之圖框內寫碼單元。然而,本揭示案之捨入技術亦可應用於空間預測及圖框內寫碼技術。
如圖2中所示,視訊編碼器50接收待編碼之視訊圖框內之當前視訊區塊。在圖2之實例中,視訊編碼器50包括運動估計單元32、運動補償單元35、參考圖框儲存器34、加法器48、變換單元38、量化單元40及熵寫碼單元46。對於視訊區塊重新建構,視訊編碼器50亦包括逆量化單元42、逆變換單元44、加法器51。亦可包括解塊濾波器(deblocking filter)(未圖示)以濾波區塊邊界以自重新建構之視訊移除區塊效應假影(blockiness artifact)。必要時,解塊濾波器通常將濾波加法器51之輸出。
在編碼過程期間,視訊編碼器50接收待寫碼之視訊區塊,且運動估計單元32及運動補償單元35執行圖框間預測性寫碼。運動估計單元32及運動補償單元35可高度整合,但為概念目的而分別說明。運動估計通常視為產生運動向量之過程,其估計視訊區塊之運動。運動向量(例如)可指示預測性圖框(或其他經寫碼單元)內之預測性區塊相對於當前圖框(或其他經寫碼單元)內之正經寫碼的當前區塊之移位。運動補償通常視為基於由運動估計確定之運動向量提取或產生預測性區塊之過程。再次,運動估計單元32及運動補償單元35可功能上整合。本揭示案中所述之內插技術經描述為由運動補償單元35執行。然而,可在運動估計期間執行內插以便促進最佳運動向量之選擇。
根據本揭示案,運動估計32藉由比較待寫碼視訊區塊與預測性經寫碼單元(例如,先前圖框)之視訊區塊來選擇用於待編碼視訊區塊之適當運動向量。此時,運動補償單元35可執行內插以便產生子像素解析度下之預測資料。在一些狀況下,在運動估計期間,內插可係基於固定內插濾波器。在其他狀況下,在運動補償(如下概述)期間所應用之不同內插濾波器亦可為了運動向量選擇之目的而在運動估計過程期間使用。
一旦運動估計單元32已選擇用於待寫碼視訊區塊之運動向量,則運動補償單元35產生與彼運動向量相關聯的預測性視訊區塊。然而,根據本揭示案,運動補償單元35可考慮具有子像素解析度之任何預測性視訊區塊之若干型式。在此種狀況下,運動補償單元35可應用複數個預定義內插濾波器以便產生用於待寫碼視訊區塊之複數個不同的內插預測資料。運動補償單元35接著選擇達成最高壓縮等級之內插預測資料(例如,與內插濾波器中之一者相關聯的內插視訊區塊)。用於產生內插資料之內插濾波器可經寫碼為內插語法且傳達至熵寫碼單元46以用於包括於經寫碼位元流中。一旦運動補償單元35已選擇且應用最佳內插濾波器,則運動補償單元35使用內插濾波器產生預測性資料,且視訊編碼器應用加法器48以自正經寫碼之視訊區塊減去彼預測性資料以產生殘餘資料。
又,根據本揭示案之另一態樣,視訊編碼器22及視訊解碼器28可應用內插技術,其消除或顯著減小用於四分之一像素內插之半像素值之中間捨入。在此種狀況下,視訊編碼器22及視訊解碼器28可為了半像素內插之目的而捨入內插之半像素值。然而,對於四分之一像素內插,視訊編碼器22及視訊解碼器28可儲存且使用半像素值之未捨入型式,以便減小或消除自半像素值至四分之一像素值之捨入不準確性之傳播。在一些狀況下,輕微捨入可應用於需要兩級內插之一特定半像素值以便確保固定大小之儲存元件(例如,16位元暫存器)可用於儲存任何中間值。
如所指出,一旦運動補償單元35產生預測資料(例如,內插之預測性視訊區塊),則視訊編碼器50藉由自正經寫碼之原始視訊區塊減去預測資料來形成殘餘視訊區塊。加法器48表示執行此減法運算之一或多個組件。變換單元38將諸如離散餘弦變換(DCT)之變換或概念上類似之變換應用於殘餘區塊,從而產生包含殘餘變換區塊係數之視訊區塊。舉例而言,變換單元38可執行諸如由H.264標準所定義之其他變換,其概念上類似於DCT。亦可使用小波變換、整數變換、副頻帶變換或其他類型之變換。在任何狀況下,變換單元38將變換應用於殘餘區塊,從而產生殘餘變換係數之區塊。變換可將殘餘資訊自像素域轉換至頻域。
量化單元40量化殘餘變換係數以進一步降低位元率。量化處理可減小與一些或所有係數相關聯的位元深度。舉例而言,16位元值在量化期間可下捨入為15位元值。在量化之後,熵寫碼單元46熵寫碼經量化之變換係數。舉例而言,熵寫碼單元46可執行內容適應性可變長度寫碼(CAVLC)、上下文適應性二進制算術寫碼(CABAC)或另一熵寫碼方法。在藉由熵寫碼單元46之熵寫碼之後,可將經編碼之視訊傳輸至另一器件或經保存以供稍後傳輸或擷取。經寫碼之位元流可包括經熵寫碼之殘餘區塊、用於此等區塊之運動向量及包括識別由運動補償單元35應用之內插濾波器之內插語法的其他語法。
逆量化單元42及逆變換單元44分別應用逆量化及逆變換來在像素域中重新建構殘餘區塊(例如)以供稍後用作參考區塊。求和器51將重新建構之殘餘區塊加至由運動補償單元35產生之運動補償預測區塊以產生重新建構之視訊區塊以供儲存於參考圖框儲存器34中。重新建構之視訊區塊可由運動估計單元32及運動補償單元35用作參考區塊以圖框間編碼隨後視訊圖框中之區塊。
圖3為說明視訊解碼器60之一實例之方塊圖,該視訊解碼器60解碼以本文中所述方式編碼之視訊序列。視訊解碼器60包括一運動補償單元55,該運動補償單元55執行本揭示案之內插技術以用於解碼。詳言之,在解碼側,運動補償單元55可自熵解碼單元52接收一語法元素,該語法元素識別來自複數個不同預定義內插濾波器之一內插濾波器。運動補償單元55可產生預測資料,其包括基於由語法元素識別之內插濾波器內插參考視訊資料之像素值。特定言之,運動補償單元55可基於自熵解碼單元52接收之運動向量及如由語法元素定義之內插(圖3中標記為內插語法)產生預測資料。基於此內插預測資料,可解碼視訊資料(例如,重新建構之殘餘視訊區塊)。
熵解碼單元52熵解碼所接收之位元流以產生量化係數及語法(例如,發送至運動補償單元55之內插語法及運動向量)。逆量化單元56逆量化(亦即,解量化)經量化之區塊係數。逆量化處理可為如由H.264解碼所定義之習知過程。逆變換單元58將逆變換(例如,逆DCT或概念上類似的逆變換處理)應用於變換係數以便在像素域中產生殘餘區塊。運動補償單元55以本文中所述之方式產生運動補償區塊,(例如)包括基於由語法元素識別之一組內插濾波器係數(亦即,內插語法)之內插。
求和器64藉由求和殘餘區塊與由運動補償單元55產生之相應預測區塊來解碼殘餘區塊以形成經解碼之區塊。必要時,亦可應用解塊濾波器以濾波經解碼之區塊以便移除區塊效應假影。接著將經解碼之視訊區塊儲存於參考圖框儲存器62中,其為提供用於隨後運動補償之參考區塊且亦產生至驅動顯示器件(諸如圖1之器件30)之經解碼視訊的儲存元件。
再次,本揭示案之技術關於運動補償內插,其中預測性視訊區塊之像素值內插至子像素解析度。編碼器使用本揭示案之技術以識別來自複數個預定義內插濾波器之理想內插濾波器。不同濾波器之特徵可在於不同組之濾波器係數、不同數目之濾波器係數或不同濾波器類型。解碼器解譯自編碼器發送之語法元素以便識別由編碼器所使用之相同理想組之內插濾波器係數。
圖4A至圖4D為說明整數像素及可包含預測性視訊區塊之像素之內插像素之概念圖。在圖4之概念說明中,不同方塊表示像素。大寫字母(在具有實線之方塊中)表示整數像素定位,而小寫字母(在具有虛線之方塊中)表示內插像素定位。字母標記在本文中可用於描述像素定位或像素位置,或可指代與各種定位相關聯的像素值。像素定位「aa」、「bb」、「cc」、「dd」、「ee」、「ff」、「gg」、「hh」、「ii」及「jj」為用於與像素定位「C3」相關聯的各種分數定位之分數內插中之半像素定位。
每一像素定位可具有相關聯的15個不同分數定位(例如,依照與ITU H.264/AVC標準一致的內插)。在圖4A至圖4D之實例中,說明與像素「C3」相關聯的此等15個不同分數定位。為說明之簡單性及簡易性起見,未展示大部分其他分數定位(不同於以上所提及之彼等定位,其用於產生與像素「C3」相關聯的15個不同分數定位中之一或多者)。
在ITU H.264/AVC標準中,為了獲得在半像素位置處之明度信號,通常使用具有係數[1,-5,20,20,5,1]之6分接頭維納濾波器(Wiener filter)。接著,為了獲得在四分之一像素定位處之明度信號,使用雙線性濾波器。雙線性濾波器亦可用於色度分量之分數像素內插中,該等色度分量在H.264/AVC中可具有高達1/8像素精確度。
像素定位「b」及「h」之半像素內插在圖4B中分別示範在水平及垂直方向上。在此種狀況下,像素定位「b」可基於整數像素「C1」、「C2」、「C3」、「C4」、「C5」及「C6」內插。類似地,像素定位「h」可基於整數像素「A3」、「B3」、「C3」、「D3」、「E3」及「F3」內插。可應用不同內插濾波器(例如,不同組之濾波器分接頭)以產生像素定位「b」及「h」之不同內插值,如本文中所描述。在圖4B中,內插像素定位「b」及「h」以陰影展示,且整數像素定位「C1」、「C2」、「C3」、「C4」、「C5」、「C6」、「A3」、「B3」、「C3」、「D3」、「E3」及「F3」以交叉陰影展示。
圖4C說明可能需要兩級內插之一特殊狀況。詳言之,像素定位「j」不同於其他半像素定位:像素定位「j」本身基於其他半像素值而內插。舉例而言,像素定位「j」可基於在水平方向上之半像素內插值「cc」、「dd」、「h」、「ee」、「ff」及「gg」內插。或者,像素定位「j」可基於在垂直方向上之半像素內插值「aa」、「bb」、「b」、「hh」、「ii」及「jj」內插。在圖4C中,內插像素定位「j」以陰影展示,在垂直方向上之半像素內插值「aa」、「bb」、「b」、「hh」、「ii」及「jj」以右至左交叉陰影展示,且半像素內插值「cc」、「dd」、「h」、「ee」、「ff」及「gg」以左至右交叉陰影展示。
圖4D以陰影說明四分之一像素定位「a」、「c」、「d」、「e」、「f」、「g」、「i」、「k」、「l」、「m」、「n」及「o」,且以交叉陰影說明用於此四分之一像素內插之整數及半像素定位(例如,「C3」、「b」、「C4」、「h」、「j」、「ee」、「D3」、「hh」及「D4」)。
在運動估計之後,可識別給定視訊區塊之最佳運動向量,例如,可能使用速率失真模型來平衡寫碼速率與品質。接著,在運動補償期間使用最佳運動向量形成預測視訊區塊。如上概述,藉由自原始視訊區塊減去預測視訊區塊來形成殘餘視訊區塊。接著將變換應用於殘餘區塊,且變換係數經量化及熵寫碼以進一步降低位元率。
再次,圖4A至圖4D用大寫字母以實線方塊展示整數像素樣本(亦稱為全像素)。對於任何給定整數像素樣本,總共存在15個子像素位置,其在圖4A至圖4D中經展示用於整數像素樣本「C3」且標記為「a」至「o」。在H.264/AVC中,可首先使用一維6分接頭維納濾波器來計算半像素位置「b」、「h」及「j」。如所指出,半像素位置「j」可能需要使用6分接頭濾波之兩級之此內插。在此種狀況下,對於像素位置「j」,內插濾波器首先應用於水平方向且接著應用於垂直方向,其中可能在一個維度上內插之後中間捨入內插之像素值以便確保資料可儲存於16位元儲存元件內。其餘四分之一像素位置接著經由使用雙線性濾波器及已計算之半像素樣本之濾波來內插。
ITU-T SG16/Q.6/VCEG(視訊寫碼專家群)委員會一直在探索提供比H.264/AVC更高的寫碼效率之寫碼技術。此探索在KTA(關鍵技術領域)論壇中進行。已採用於KTA中之寫碼工具中之一者被稱為適應性內插濾波器(AIF)。AIF提供優於H.264/AVC之大寫碼增益,對具有高解析度(例如,720p)之視訊序列尤其如此。在AIF中,每一子像素位置之內插濾波器藉由最小化預測誤差能量而在分析上經計算用於每一視訊圖框。每一圖框之分析上導出的適應性濾波器係數接著經預測、量化、寫碼且發送於視訊位元流中。
本揭示案之技術可達成與彼等由AIF達成之相當的寫碼改良,同時相對於AIF降低實施複雜性。所描述之技術可不需要分析過程以導出每一視訊圖框之濾波器係數。實情為,在一實例中,不同組之濾波器係數經預先計算及預定義以用於即時應用。在此種狀況下,濾波器係數之預定義可係基於應用於測試序列之AIF或其他選擇準則。
三個不同類型之AIF方案已採用於KTA中。第一者為二維不可分AIF(NS-AIF),第二者為可分AIF(S-AIF),且第三者為具有定向濾波器之AIF(DAIF)。然而,所有三個AIF方案使用相同的分析過程以導出濾波器係數,其在下文使用不可分AIF作為實例來解釋。
假定6×6二維不可分濾波器具有係數,其中i,j=0...5且SP表示圖4A至圖4D中所示之15個子像素位置(ao )中之一者。應注意,15個子像素位置中之6者「a」、「b」、「c」、「d」、「h」及「l」為一維子像素位置,其可使用6分接頭濾波器以內插。又假定參考圖框中整數像素位置(圖4A至圖4D中之A1至F6)處之預測像素採取像素值P i,j ,其中i,j=0...5。即,A1採取值P 0 , 0 ,...,A6採取值P 5,0 ,...,F1採取值P 5,0 ,...,且F6採取值P 5,5 。接著,在子像素位置SP, 處之內插值p sp 可使用以下方程式來計算。
使S x,y 為在位置(x,y) 處之當前視訊圖框中之像素值。
其中(mvx,mvy) 為運動向量,([mvx],[mvy] )為運動向量之整數分量,且FO 為濾波器位移(offset)。舉例而言,在6分接頭濾波器之狀況下,FO =6/2-1=2。對於每一子像素位置SP ,在當前圖框之實際像素值與內插值之間的預測誤差能量(e sp ) 2 可經累積用於具有對應於子像素位置SP 之運動向量精確度之所有像素。預測誤差能量(e SP ) 2 使用以下方程式來計算:
對於子像素位置「a」...「o」中之每一者,個別組之方程式可藉由相對於濾波器係數計算(e sp )2 之導數來設置。在此種狀況下,方程式之數目等於用於當前子像素位置SP 之濾波器係數之數目。對於使用6×6分接頭二維濾波器之每個二維子像素位置「e」、「f」、「g」、「i」、「j」、「k」、「m」、「n」及「o」,可求解具有36個未知數之36個方程式之系統。對於可僅需要一維濾波器之其餘子像素位置「a」、「b」、「c」、「d」、「h」及「l」,可求解6個方程式之系統。
總之,導出及應用AIF濾波器之實例過程可具有以下步驟:
1.可對於待寫碼之每一視訊圖框估計運動向量(mvx,mvy )。在運動估計期間,可應用固定內插濾波器(例如,H.264/AVC之內插過程)。
2.使用此等運動向量,可在當前視訊圖框上累積每一子像素位置SP 之預測誤差能量。接著,可對於每一子像素位置SP 藉由最小化如在以上兩個預測能量方程式中之預測誤差能量來獨立地計算適應性濾波器係數
3.接著可估計新的運動向量。在此運動估計過程期間,可應用在步驟2中所計算之適應性內插濾波器。使用適應性內插濾波器,減少由混疊、攝影機雜訊等引起之運動估計誤差且可達成較佳運動預測。
所有三個現有AIF方案使用如上給定之相同的分析過程。此等方案之間的差異主要在於所使用之唯一濾波器係數之數目,而不管內插濾波器可分或不可分,及使用何濾波器支援(亦即,用於內插之整數像素位置)。在此等方案中之每一者中,外加對AIF濾波器之某些對稱性約束以減少需要在視訊位元流中發送之濾波器係數之數目。
如上所提及,在H.264/AVC中,藉由中間捨入運算執行內插。按照慣例,半像素位置(「b」、「h」及「j」)在其用於獲得四分之一像素位置之前經濾波且捨入。此外,在用於獲得四分之一像素值之雙線性濾波期間,可使用上捨入(亦即,(a+b+1)>>1可用於習知雙線性濾波器中)。此頻繁且具有偏差的捨入運算可降低內插濾波器之精確度。詳言之,模擬已展示自用於H.264/AVC中之6分接頭維納濾波器及雙線性濾波器直接導出之高精確度內插濾波器提供優於H.264/AVC之顯著增益,對於諸如720p序列之高清晰度視訊序列尤其如此。由AIF方案(NS-AIF、S-AIF及DAIF)達成之增益之顯著部分可來自此等AIF方案使用比H.264/AVC更高精確度濾波器之事實。
根據本揭示案,可使用相對簡單的具有位移之切換內插濾波器(SIFO)方案。代替適應性地導出每一圖框之濾波器係數(其為編碼器側之非常昂貴的過程),SIFO方案在複數個固定濾波器之間選擇,該複數個固定濾波器(例如)可分別由複數個不同預定義組之內插濾波器係數定義。內插濾波器之選擇可在圖框級或在子像素位置級上進行,其可分別稱為基於圖框之選擇或基於樣本之選擇。必要時,DC位移亦可在預測之後經添加,且DC位移亦可在圖框基礎或樣本基礎上添加。因此,一或多個DC位移可經定義用於每一圖框,不同DC位移(或不同組之DC位移)可經定義用於圖框之不同視訊區塊。不同的DC位移可經定義用於每一像素及內插子像素之位置。圖框為經寫碼單元之一實例,且短語「基於圖框之選擇」更廣泛地指代基於經寫碼單元之選擇。在某種狀況下,圖框之片段或部分(例如)可分別經寫碼為個別經寫碼單元。
不同組之固定濾波器可分別由圖2及圖3之運動補償單元35及55使用。實例包括標準H.264濾波器組、基於H.264/AVC但具有較高精確度之濾波器組(無用於半像素位置之中間捨入及用於四分之一像素位置之有偏差捨入),或一或多組定製內插濾波器。該一或多組定製內插濾波器可藉由使用一組訓練視訊序列來獲得。最小化預測誤差能量之適應性濾波器可藉由將用於AIF方案中之分析過程應用於訓練視訊組來導出。接著,每一子像素位置之平均濾波器可經計算且用作由運動補償單元35及55所應用之定製內插濾波器,如本文中所描述。
用於特定子像素位置之平均濾波器亦可經正規化以使得所有濾波器係數總計為1.0。平均濾波器亦可經量化至某定點精確度(例如,13位元精確度)。濾波器係數中之定點精確度之使用確保跨越不同平台之實施將不具有漂移。此外,真實定點實施可由此等預定義濾波器係數導出。任何定製濾波器可具有不同的特徵。特定言之,不同濾波器可為不可分濾波器或可分濾波器,且不同濾波器可定義不同濾波器支援(例如,6×6或4×4)。
在任何狀況下,可在編碼過程期間由運動補償單元35選擇在任何給定情況下均提供最佳預測(例如,最小預測誤差能量)之濾波器組。再次,濾波器組選擇可為基於圖框或基於樣本的,其意謂濾波器可經選擇以用於每一圖框(或其他經寫碼單元)或可經選擇以用於每一圖框之不同視訊區塊。當使用多個參考圖框時,不同濾波器組可經選擇以用於不同參考圖框。此外,一些參考圖框可具有基於圖框之濾波器選擇,而其他參考圖框可具有基於樣本之濾波器選擇。當使用基於圖框之濾波器選擇時且當選擇定製濾波器組時,標準濾波器仍可應用於半像素位置(例如,位置「b」、「h」及「j」)上,而定製濾波器組可應用於其他半像素位置上。
亦可在內插期間添加位移。將DC位移添加至預測值可幫助捕獲在不同視訊圖框之間的照明改變,諸如,閃光、變暗天空等。在本揭示案之方案中,DC位移可在圖框級上應用(圖框中之所有像素使用相同DC位移)或在樣本位置級上應用(不同像素定位具有不同DC位移)。當使用基於樣本之DC位移時,總共16個DC位移可能需要在視訊位元流中發送以使得整數像素定位及15個可能的非整數像素定位可各自定義不同的位移。基於樣本之DC位移之應用可為有益的,因為其可用作簡單但有效的運動分段工具。舉例而言,將含有變暗天空之視訊圖框作為靜止背景且將移動物件作為前景。在此種狀況下,背景與前景可具有不同程度之照明改變,且使用基於樣本之DC位移可幫助捕獲前景及背景中之不同程度之照明改變。
當使用多個參考圖框時,不同DC位移可經計算且發送以用於不同的參考圖框。此外,一些參考圖框可具有基於圖框之DC位移,而其他參考圖框可具有基於樣本之DC位移。一特定方案為將基於樣本之DC位移僅用於在時間距離上最接近當前圖框之參考圖框上,且將基於圖框之DC位移用於所有其他參考圖框。資訊可經寫碼於位元流中以向解碼器通知所使用位移之類型,及此等位移在不同像素定位處之量值。
子像素運動向量指代需要內插之參考圖像中之子像素位置。H.264定義用於子像素之一內插過程,其中子像素b及h(見圖4A至圖4D)可藉由以具有分接頭值(1,-5,20,20,-5,1)之6分接頭濾波器的水平及垂直濾波來計算,如下:
b 1=C 1-5* C 2+20* C 3+20* C 4-5* C 5+C 6
其中「C1」、「C2」、「C3」、「C4」、「C5」及「C6」表示在水平方向上圍繞「b」之六個最接近的整數像素,其中像素「C3」及「C4」最接近,「C2」及「C5」其次最接近且「C1」及「C6」其次最接近。
h 1=A 3-5* B 3+202* D 3-5* E 3+F 3
其中「A3」、「B3」、「C3」、「D3」、「E3」及「F3」表示在垂直方向上圍繞「h」之六個最接近的整數像素,其中像素「C3」及「D3」最接近,「B3」及「E3」其次最接近且「A3」及「F3」其次最接近。
在此種狀況下,「b」及「h」之值可經定義為:
b =max(0,min(255,(b 1+16)>>5))
h =max(0,min(255,(h 1+16)>>5))
其中「>>」為右移運算。在本揭示案中,「>>」表示右移運算且「>>」表示左移運算。
為了內插子像素「j」,中間值「j1」首先導出為:
j 1=aa 1-5* bb 1+20* b 1+20hh 1-5* ii 1+jj 1,
其中指示為「aa1」、「bb1」、「hh1」、「ii1」及「jj1」之中間值藉由在位置「aa」、「bb」、「hh」、「ii」及「jj」處以與b1之計算相同的方式水平地應用6分接頭濾波器而導出。最終值j可經計算為:
j =max(0,min(255,(j 1+512)>>10))。
在標記為「a」、「c」、「d」、「1」、「f」、「i」、「k」及「n」之四分之一像素位置處之像素可根據表1藉由求平均整數及半像素位置處之兩個最近像素且接著應用上捨入而導出。
在標記為「e」、「g」、「m」及「o」之四分之一像素位置處之像素根據表2藉由求平均對角方向上的半像素位置處之兩個最近像素且接著應用上捨入而計算。
彼等四分之一像素之最終值可最終刪減至範圍(0,255)中之值。
為了保持貫穿中間步驟之最高可能精確度,可避免任何移位、捨入及刪減運算直至內插過程之最後步驟。不同於在H.264標準定義之實施中,在標記為「a」、「c」、「d」、「l」、「f」、「i」、「k」及「n」之四分之一像素位置處之像素根據表3藉由求平均整數及半像素位置「b」、「h」、「j」、「ee」及「hh」處之兩個最近像素而藉由上捨入導出。
在此種狀況下,指示為「ee1」及「hh1」之中間值藉由以與以上列出之「h1」及「b1」之計算相同的方式但在位置「ee」及「hh」處垂直且水平地應用6分接頭濾波器而導出。在此階段在產生「ee1」及「hh1」中可避免捨入,如本文中所描述。
在標記為「e」、「g」、「m」及「o」之四分之一像素位置處之像素可根據表4藉由求平均對角方向上的半像素位置處之兩個最近像素而藉由上捨入來計算。
彼等四分之一像素之最終值可刪減至範圍(0,255)中之值。藉由保持中間值之全精確度,內插之子像素將更準確。詳言之,為四分之一像素產生之目的,在定位「b」、「h」、「ee」及「hh」處之半像素值可為指示為「b1」、「h1」、「ee1」及「hh1」之未捨入值。
遺憾地,值「j」之內插可更複雜,因為位置j處之內插需要兩級之半像素內插。詳言之,為了內插「j」,可能需要20個位元以表示中間值「j1」。在此種狀況下,「j」之中間型式「j1」可經捨入以在16位元內。在此種狀況下,以上所論述之運算可以較小修改實施以使得所有運算可在不犧牲精確度之情況下適合於16位元資料結構內。「b」及「h」之內插可與以上所定義之彼內插相同,除其中間型式「b1」及「h1」可經儲存用於其他子像素內插以外。下表展示16位元儲存元件中之其他子像素之內插過程。在下表中,每一行中所定義之運算貫穿各別表依序執行。陰影列含有在過程結束時所執行之運算,且不用於其他子像素位置之內插。
以下表7說明在像素定位「j」處之導出像素值之16位元實施。所有1-D半像素「aa1」、「bb1」、「b1」、「hh1」、「ii1」及「jj1」係在無任何下移的情況下獲得。用以避免溢位之刪減範圍為(-2372,18640)。再次,表中之陰影列指示僅在內插過程結束時執行之運算,且此等結果不用於其他子像素位置之內插。中間值「j1」將經保存用於「f」、「i」、「k」及「n」之內插。
以下表8示範可經採取用於內插{f,i,k,n}(其為用於內插中間值「j1」之位置)之16位元實施之步驟。
簡言之,以上論述示範用於在不超過16位元儲存元件之情況下內插每一可能子像素定位「a」、「b」、「c」、「d」、「e」、「f」、「g」、「h」、「i」、「j」、「k」、「l」、「m」、「n」及「o」之完整技術,其對於實施為理想的。為了四分之一像素內插起見,大部分中間半像素值保持不捨入。然而,像素定位「j」為一特殊狀況,其可能為了產生半像素值之目的而需要捨入中間結果,因為像素定位「j」需要兩級半像素內插。然而,根據本揭示案,像素定位「j」之捨入將不影響依賴於「j」之四分之一像素之最終值的準確性。
圖5為符合與本揭示案一致的視訊編碼之一或多項態樣之流程圖。圖5將從圖2中所示之視訊編碼器50的角度論述。詳言之,運動補償單元35產生預測資料(101),其包括基於複數個預定義內插濾波器而內插。運動補償單元35接著基於與預定義內插濾波器中之每一者相關聯的預測資料編碼例如視訊區塊之視訊資料(102)。舉例而言,運動補償單元35可調用加法器48以產生與預定義內插濾波器中之每一者相關聯的殘餘區塊以使得不同殘餘區塊可相互比較以找到最佳殘餘區塊。運動補償單元35選擇達成最高壓縮等級之視訊資料(103)。詳言之,所選視訊資料說明為加法器48之「殘餘區塊」輸出,其為最終輸出。加法器48之此最終輸出由變換單元38予以變換,由量化單元40予以量化且由熵寫碼單元46予以熵寫碼。
運動補償單元35亦識別與達成最高壓縮等級之所選殘餘視訊資料相關聯的特定內插濾波器(104)。運動補償單元35將內插語法元素轉發至熵寫碼單元46。內插語法元素識別所使用之特定內插濾波器。熵寫碼單元46編碼語法元素(105)以形成輸出位元流之部分。以此方式,在編碼器50處所使用之內插濾波器(例如,所使用之濾波器係數或其他濾波器設計或參數)可傳達至目的地器件以使得目的地器件可在視訊重新建構期間執行適當的內插濾波。
內插濾波可在逐圖框基礎上定義內插濾波,或可在逐視訊區塊基礎上定義內插濾波。在其他狀況下,內插濾波可在逐樣本基礎上定義內插濾波,或可在逐子樣本基礎上定義內插濾波。術語「視訊單元」可指代視訊圖框、視訊區塊、視訊樣本或視訊子樣本。在任何狀況下,視訊編碼器50可編碼不同語法元素以識別用於產生視訊資料之不同經寫碼單元之預測性資料的不同參考視訊單元之不同內插濾波器。或者,視訊編碼器可編碼不同語法元素以識別用於參考視訊資料之不同視訊區塊的不同內插濾波器。在任何狀況下,可使用測試視訊序列預定義內插濾波器。在此種狀況下,例如,適應性內插濾波(AIF)可應用於視訊序列以便定義達成理想結果之不同內插濾波器,且此等內插濾波器可經程式化至運動補償單元35中。
圖6為符合與本揭示案一致的視訊解碼之一或多項態樣之流程圖。圖6將自圖2中所示之視訊解碼器60的角度論述。詳言之,視訊解碼器60接收經編碼之視訊資料(111),且接收識別來自複數個內插濾波器之一內插濾波器之語法元素(112)。經編碼之位元流可包括經編碼之殘餘視訊資料與識別在編碼器處所使用之內插濾波器之語法元素兩者。熵解碼單元52可熵解碼所接收之位元流以剖析出經變換且量化之殘餘區塊,其經發送至逆變換量化單元56及逆變換單元58;且剖析出內插語法元素及運動向量,其經發送至運動補償單元55。
運動補償單元55產生預測資料(113),其包括基於由語法元素識別之內插濾波器之內插。視訊解碼器60基於預測資料解碼視訊資料(114)。詳言之,由運動補償單元55產生之預測資料可經由加法器64與殘餘資料組合以在像素域中重新建構視訊資料。經解碼之視訊接著可儲存於參考圖框儲存器62中以供隨後用於預測,且亦可輸出以用於(例如)經由顯示器或其他輸出器件呈現至使用者。
如同編碼,在解碼過程期間之內插濾波可在逐圖框基礎上定義,或可在逐視訊區塊基礎上、逐樣本基礎上或逐子樣本基礎上定義。詳言之,視訊解碼器60可解碼不同語法元素以識別用於產生視訊資料之不同經寫碼單元之預測性資料的不同參考視訊單元之不同內插濾波器,或者,視訊解碼器60可解碼不同語法元素以識別用於參考視訊資料之不同視訊區塊的不同內插濾波器。在任何狀況下,內插濾波器可使用測試視訊序列預定義,且此等內插濾波器可程式化至運動補償單元55中以使得語法可用於識別且調用運動補償單元55內之適當內插濾波器。
圖7說明一內插技術,其可在編碼過程期間由運動補償單元35執行,或在解碼過程期間由運動補償單元55執行。如圖7中所示,運動補償單元35或55基於整數像素值產生半像素值(121)。舉例而言,此等半像素值可對應於圖4A至圖4D之定位「b」及「h」處之像素值。運動補償單元35或55捨入此等半像素值以產生半像素內插值(122),但亦儲存半像素值之未捨入型式(123)。運動補償單元35及55可具有儲存元件以促進對應於半像素值之未捨入型式之中間值的暫時儲存。運動補償單元35或55接著可基於未捨入半像素值及整數像素值產生四分之一像素值(124)。此等四分之一像素值(例如)可對應於圖4A至圖4D中所示之定位「a」、「c」、「d」及「l」。
如上所解釋,在圖4A至圖4D中之定位「j」處之半像素值可能需要中間值之一些捨入,因為定位「j」可能需要兩級半像素內插。圖8說明一內插技術,其可在編碼過程期間由運動補償單元35執行,或在解碼過程期間由運動補償單元55執行以便產生在諸如16位元之固定位元實施內之所有內插值(圖4A至圖4D中所示之「a至o」)。
如同圖7之過程,圖8之過程自運動補償單元35或55基於整數像素值產生半像素值(131)開始,例如該等半像素值可對應於圖4A至圖4D之定位「b」及「h」處之像素值。運動補償單元35或55接著捨入此等半像素值以產生半像素內插值(132),但亦儲存半像素值之未捨入型式(133)。
接下來,運動補償單元35或55基於未捨入半像素值產生額外半像素值(例如,對應於圖4A至圖4D中之定位「j」處之值)。運動補償單元35或55必要時捨入額外半像素值(例如,對應於圖4A至圖4D中之定位「j」之值),以確保此值在不犧牲依賴於「j」之四分之一像素之準確性的情況下處於固定位元深度(例如,16位元)內(135)。運動補償單元35或55接著可基於未捨入半像素值、額外半像素值及整數像素值產生四分之一像素值(136)。以此方式,可產生在圖4D中以陰影(例如,定位「a」、「c」、「d」、「e」、「f」、「g」、「i」、「k」、「l」、「m」、「n」及「o」)展示之所有四分之一像素值。以上表及論述提供關於可在此過程中執行之運算之更特定細節。
圖7及圖8之技術可應用於許多不同的內插環境。詳言之,此等技術可在使用或不使用預定義內插濾波器之本文中所描述之其他技術的情況下使用。換言之,消除或顯著減小中間捨入之圖7及圖8之技術可根據一或多個預定義內插濾波器而在內插期間使用,但亦可與使用固定內插濾波器之內插或可能與適應性改進內插技術一起使用。因此,本文中所描述之不同技術不必需要一同執行,但可具有在許多不同內插設定或情形下之理想應用。
本揭示案之該等技術可體現於多種器件或裝置中,包括無線手機及積體電路(IC)或一組IC(亦即,晶片集)。已描述經提供以強調功能態樣之任何組件、模組或單元,且其未必需要藉由不同硬體單元等來實現。
因此,本文中所描述之技術可以硬體、軟體、韌體或其任何組合實施。若以硬體實施,則描述為模組、單元或組件之任何特徵可一起實施於整合式邏輯器件中或單獨作為離散但能共同操作之邏輯器件實施。若以軟體實施,則可至少部分地藉由包含指令之電腦可讀媒體來實現該等技術,該等指令在處理器中執行時執行上文所描述之方法中之一或多者。電腦可讀媒體可包含電腦可讀儲存媒體且可形成電腦程式產品之部分,該電腦程式產品可包括封裝材料。電腦可讀儲存媒體可包含隨機存取記憶體(RAM)(諸如,同步動態隨機存取記憶體(SDRAM))、唯讀記憶體(ROM)、非揮發性隨機存取記憶體(NVRAM)、電可抹除可程式化唯讀記憶體(EEPROM)、快閃記憶體、磁性或光學資料儲存媒體及其類似者。另外或其他,可至少部分地藉由電腦可讀通信媒體來實現該等技術,該電腦可讀通信媒體載運或傳達呈指令或資料結構之形式的程式碼且可由電腦存取、讀取及/或執行。
程式碼可由一或多個處理器,諸如,一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效整合式或離散邏輯電路來執行。因此,術語「處理器」在本文中使用時可指代適合於實施本文中所描述之技術的前述結構中之任一者或任何其他結構。另外,在一些態樣中,本文中所描述之功能性可提供於為編碼及解碼而組態之專用軟體模組或硬體模組內,或併入於經組合之視訊編碼器-解碼器(CODEC)中。又,該等技術可完全實施於一或多個電路或邏輯元件中。
已描述本揭示案之各種態樣。此等及其他態樣在以下申請專利範圍之範疇內。
10...視訊編碼及解碼系統
12...源器件
15...通信頻道
16...目的地器件
20...視訊源
22...視訊編碼器
23...調變器/解調變器(數據機)
24...傳輸器
26...接收器
27...數據機
28...視訊解碼器
30...顯示器件
32...運動估計單元
34...參考圖框儲存器
35...運動補償單元
38...變換單元
40...量化單元
42...逆量化單元
44...逆變換單元
46...熵寫碼單元
48...加法器
50...視訊編碼器
51...加法器/求和器
52...熵解碼單元
55...運動補償單元
56...逆量化單元
58...逆變換單元
60...視訊解碼器
62...參考圖框儲存器
64...求和器/加法器
圖1為說明視訊編碼及解碼系統之例示性方塊圖。
圖2為說明符合本揭示案之視訊編碼器之一實例的方塊圖。
圖3為說明符合本揭示案之視訊解碼器之一實例的方塊圖。
圖4A至圖4D為說明整數像素及可包含預測性視訊區塊之像素之內插像素之概念圖。
圖5至圖8為說明符合本揭示案之技術之流程圖。
(無元件符號說明)

Claims (30)

  1. 一種內插視訊資料以產生預測性視訊資料以用於視訊寫碼之方法,該方法包含:基於複數個整數像素值產生複數個半像素值;捨入該等半像素值以產生複數個半像素內插值,其中一第一組預測性視訊資料包含藉由捨入該等半像素值產生之該等半像素內插值;儲存該等半像素值作為該等半像素值之未捨入型式;及基於該等半像素值之該等未捨入型式及該等整數像素值產生複數個四分之一像素值,其中與該第一組預測性視訊資料不同之一第二組預測性視訊資料包含基於該等半像素值之該等未捨入型式及該等整數像素值產生之該等四分之一像素值。
  2. 如請求項1之方法,其進一步包含:基於該等半像素值之該等未捨入型式中之複數者產生另一半像素值;及基於該另一半像素值及該等半像素值之該等未捨入型式產生額外複數個四分之一像素值。
  3. 如請求項1之方法,其中該等值中之每一者可儲存於十六位元資料結構中,該方法進一步包含:基於該等半像素值之該等未捨入型式中之複數者產生另一半像素值;捨入該另一半像素值以使得該另一半像素值可儲存於該十六位元資料結構中;及 基於該另一半像素值及該等半像素值之該等未捨入型式產生額外複數個四分之一像素值。
  4. 如請求項1之方法,其進一步包含:基於該等整數像素值、該等半像素值及/或該等四分之一像素值編碼一或多個視訊區塊。
  5. 如請求項1之方法,其進一步包含:基於該等整數像素值、該等半像素值及/或該等四分之一像素值解碼一或多個視訊區塊。
  6. 如請求項1之方法,其進一步包含將該第一組預測性視訊資料及該第二組預測性視訊資料之一或多者用於運動補償。
  7. 一種內插視訊資料以產生預測性視訊資料以用於視訊寫碼之裝置,其中該裝置包括一運動補償單元,該運動補償單元經組態以:基於複數個整數像素值產生複數個半像素值;捨入該等半像素值以產生複數個半像素內插值,其中一第一組預測性視訊資料包含藉由捨入該等半像素值產生之該等半像素內插值;儲存該等半像素值作為該等半像素值之未捨入型式;及基於該等半像素值之該等未捨入型式及該等整數像素值產生複數個四分之一像素值,其中與該第一組預測性視訊資料不同之一第二組預測性視訊資料包含基於該等半像素值之該等未捨入型式及該等整數像素值產生之該等四分之一像素值。
  8. 如請求項7之裝置,其中該運動補償單元進一步經組態以:基於該等半像素值之該等未捨入型式中之複數者產生另一半像素值;及基於該另一半像素值及該等半像素值之該等未捨入型式產生額外複數個四分之一像素值。
  9. 如請求項7之裝置,其中該等值中之每一者可儲存於十六位元資料結構中,其中該運動補償單元進一步經組態以:基於該等半像素值之該等未捨入型式中之複數者產生另一半像素值;捨入該另一半像素值以使得該另一半像素值可儲存於該十六位元資料結構中;及基於該另一半像素值及該等半像素值之該等未捨入型式產生額外複數個四分之一像素值。
  10. 如請求項7之裝置,其中該裝置包含一視訊編碼器,該視訊編碼器包括該運動補償單元,其中該視訊編碼器經組態以:基於該等整數像素值、該等半像素值及/或該等四分之一像素值預測性地編碼一或多個視訊區塊。
  11. 如請求項7之裝置,其中該裝置包含一視訊解碼器,該視訊解碼器包括該運動補償單元,其中該視訊解碼器經組態以:基於該等整數像素值、該等半像素值及/或該等四分之 一像素值預測性地解碼一或多個視訊區塊。
  12. 如請求項7之裝置,其中該裝置包含一積體電路。
  13. 如請求項7之裝置,其中該裝置包含一微處理器。
  14. 如請求項7之裝置,其中該運動補償單元進一步經組態將該第一組預測性視訊資料及該第二組預測性視訊資料之一或多者用於運動補償。
  15. 一種非暫態電腦可讀儲存媒體,其包含在執行時使一器件內插視訊資料以產生預測性視訊資料以用於視訊寫碼之指令,其中該等指令使該器件:基於複數個整數像素值產生複數個半像素值;捨入該等半像素值以產生複數個半像素內插值,其中一第一組預測性視訊資料包含藉由捨入該等半像素值產生之該等半像素內插值;儲存該等半像素值作為該等半像素值之未捨入型式;及基於該等半像素值之該等未捨入型式及該等整數像素值產生複數個四分之一像素值,其中與該第一組預測性視訊資料不同之一第二組預測性視訊資料包含基於該等半像素值之該等未捨入型式及該等整數像素值產生之該等四分之一像素值。
  16. 如請求項15之非暫態電腦可讀儲存媒體,其進一步包含在執行時使該器件進行下列操作之指令:基於該等半像素值之該等未捨入型式中之複數者產生另一半像素值;及基於該另一半像素值及該等半像素值之該等未捨入型 式產生額外複數個四分之一像素值。
  17. 如請求項15之非暫態電腦可讀儲存媒體,其中該等值中之每一者可儲存於十六位元資料結構中,該電腦可讀媒體進一步包含在執行時使該器件進行下列操作之指令:基於該等半像素值之該等未捨入型式中之複數者產生另一半像素值;捨入該另一半像素值以使得該另一半像素值可儲存於該十六位元資料結構中;及基於該另一半像素值及該等半像素值之該等未捨入型式產生額外複數個四分之一像素值。
  18. 如請求項15之非暫態電腦可讀儲存媒體,其進一步包含在執行時使該器件進行下列操作之指令:基於該等整數像素值、該等半像素值及/或該等四分之一像素值編碼一或多個視訊區塊。
  19. 如請求項15之非暫態電腦可讀儲存媒體,其進一步包含在執行時使該器件進行下列操作之指令:基於該等整數像素值、該等半像素值及/或該等四分之一像素值解碼一或多個視訊區塊。
  20. 如請求項15之非暫態電腦可讀儲存媒體,其進一步包含在執行時使該器件將該第一組預測性視訊資料及該第二組預測性視訊資料之一或多者用於運動補償之指令。
  21. 一種內插視訊資料以產生預測性視訊資料以用於視訊寫碼之器件,該器件包含:用於基於複數個整數像素值產生複數個半像素值之構 件;用於捨入該等半像素值以產生複數個半像素內插值之構件,其中一第一組預測性視訊資料包含藉由捨入該等半像素值產生之該等半像素內插值;用於儲存該等半像素值作為該等半像素值之未捨入型式之構件;及用於基於該等半像素值之該等未捨入型式及該等整數像素值產生複數個四分之一像素值之構件,其中與該第一組預測性視訊資料不同之一第二組預測性視訊資料包含基於該等半像素值之該等未捨入型式及該等整數像素值產生之該等四分之一像素值。
  22. 如請求項21之器件,其進一步包含:用於基於該等半像素值之該等未捨入型式中之複數者產生另一半像素值之構件;及用於基於該另一半像素值及該等半像素值之該等未捨入型式產生額外複數個四分之一像素值之構件。
  23. 如請求項21之器件,其中該等值中之每一者可儲存於十六位元資料結構中,該器件進一步包含:用於基於該等半像素值之該等未捨入型式中之複數者產生另一半像素值之構件;用於捨入該另一半像素值以使得該另一半像素值可儲存於該十六位元資料結構中之構件;及用於基於該另一半像素值及該等半像素值之該等未捨入型式產生額外複數個四分之一像素值之構件。
  24. 如請求項21之器件,其進一步包含:用於基於該等整數像素值、該等半像素值及/或該等四分之一像素值編碼一或多個視訊區塊之構件。
  25. 如請求項21之器件,其進一步包含:用於基於該等整數像素值、該等半像素值及/或該等四分之一像素值解碼一或多個視訊區塊之構件。
  26. 如請求項21之器件,其進一步包含用於將該第一組預測性視訊資料及該第二組預測性視訊資料之一或多者用於運動補償之構件。
  27. 一種編碼視訊資料之器件,該器件包含:一視訊編碼器,其包括一經組態以編碼該視訊資料之運動補償單元,其中為了編碼該視訊資料,該運動補償單元經組態以基於複數個整數像素值產生複數個半像素值,捨入該等半像素值以產生複數個半像素內插值,其中一第一組預測性視訊資料包含藉由捨入該等半像素值產生之該等半像素內插值,儲存該等半像素值作為該等半像素值之未捨入型式,且基於該等半像素值之該等未捨入型式及該等整數像素值產生複數個四分之一像素值,其中與該第一組預測性視訊資料不同之一第二組預測性視訊資料包含基於該等半像素值之該等未捨入型式及該等整數像素值產生之該等四分之一像素值;及一無線傳輸器,其經組態以將由該運動補償單元編碼之該視訊資料傳輸至另一器件。
  28. 如請求項27之器件,其中該器件包含一無線通信手機。
  29. 一種解碼視訊資料之器件,該器件包含:一無線接收器,其經組態以接收該視訊資料;及一視訊解碼器,其包括一經組態以解碼該視訊資料之運動補償單元,其中為了解碼該視訊資料,該運動補償單元經組態以:基於複數個整數像素值產生複數個半像素值;捨入該等半像素值以產生複數個半像素內插值,其中一第一組預測性視訊資料包含藉由捨入該等半像素值產生之該等半像素內插值;儲存該等半像素值作為該等半像素值之未捨入型式;及基於該等半像素值之該等未捨入型式及該等整數像素值產生複數個四分之一像素值,其中與該第一組預測性視訊資料不同之一第二組預測性視訊資料包含基於該等半像素值之該等未捨入型式及該等整數像素值產生之該等四分之一像素值。
  30. 如請求項29之器件,其中該器件包含一無線通信手機。
TW98112128A 2008-04-10 2009-04-10 用於視訊寫碼中運動補償之進階內插技術 TWI468017B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US4402308P 2008-04-10 2008-04-10
US4424008P 2008-04-11 2008-04-11
US5737308P 2008-05-30 2008-05-30
US12/420,256 US8971412B2 (en) 2008-04-10 2009-04-08 Advanced interpolation techniques for motion compensation in video coding

Publications (2)

Publication Number Publication Date
TW201010440A TW201010440A (en) 2010-03-01
TWI468017B true TWI468017B (zh) 2015-01-01

Family

ID=40765698

Family Applications (1)

Application Number Title Priority Date Filing Date
TW98112128A TWI468017B (zh) 2008-04-10 2009-04-10 用於視訊寫碼中運動補償之進階內插技術

Country Status (9)

Country Link
US (1) US8971412B2 (zh)
EP (1) EP2272253A1 (zh)
JP (2) JP2011517239A (zh)
KR (1) KR101208384B1 (zh)
CN (1) CN101999229B (zh)
BR (1) BRPI0910641B1 (zh)
CA (1) CA2719540C (zh)
TW (1) TWI468017B (zh)
WO (1) WO2009126921A1 (zh)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590059B2 (en) * 2004-05-21 2009-09-15 Broadcom Corp. Multistandard video decoder
US9967590B2 (en) 2008-04-10 2018-05-08 Qualcomm Incorporated Rate-distortion defined interpolation for video coding based on fixed filter or adaptive filter
CN102025985A (zh) * 2009-09-23 2011-04-20 鸿富锦精密工业(深圳)有限公司 视频编解码装置及其插值计算方法
JP5439162B2 (ja) * 2009-12-25 2014-03-12 株式会社Kddi研究所 動画像符号化装置および動画像復号装置
WO2011086672A1 (ja) * 2010-01-13 2011-07-21 株式会社 東芝 動画像符号化装置および復号装置
JP5323211B2 (ja) * 2010-01-13 2013-10-23 株式会社東芝 動画像符号化装置および復号装置
JP5436695B2 (ja) * 2010-01-14 2014-03-05 ドルビー ラボラトリーズ ライセンシング コーポレイション ビデオ適応フィルタリングのための方法、システム、ビデオエンコーダ、ビデオデコーダ、コンピュータ装置、集積回路(ic)装置、及びコンピュータ読取可能な記録媒体
JP5323252B2 (ja) * 2010-03-30 2013-10-23 株式会社東芝 動画像符号化方法、復号化方法、符号化装置および復号化装置
KR101682147B1 (ko) 2010-04-05 2016-12-05 삼성전자주식회사 변환 및 역변환에 기초한 보간 방법 및 장치
DE102010023954A1 (de) * 2010-06-16 2011-12-22 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren und Vorrichtung zum Mischen von Videoströmen auf der Makroblock-Ebene
CN103119935B (zh) * 2010-07-09 2016-05-04 三星电子株式会社 图像插值方法和设备
JP2012060208A (ja) * 2010-09-06 2012-03-22 Nippon Telegr & Teleph Corp <Ntt> 動画像符号化方法,動画像符号化装置,動画像復号方法,動画像復号装置およびそれらのプログラム
GB2484969B (en) * 2010-10-29 2013-11-20 Canon Kk Improved reference frame for video encoding and decoding
ES2922238T3 (es) 2011-01-07 2022-09-12 Nokia Technologies Oy Predicción de movimiento en codificación de vídeo
US9049454B2 (en) 2011-01-19 2015-06-02 Google Technology Holdings Llc. High efficiency low complexity interpolation filters
US20120230393A1 (en) * 2011-03-08 2012-09-13 Sue Mon Thet Naing Methods and apparatuses for encoding and decoding video using adaptive interpolation filter length
US9313519B2 (en) * 2011-03-11 2016-04-12 Google Technology Holdings LLC Interpolation filter selection using prediction unit (PU) size
JP5768491B2 (ja) 2011-05-17 2015-08-26 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
US9264725B2 (en) 2011-06-24 2016-02-16 Google Inc. Selection of phase offsets for interpolation filters for motion compensation
CN103650506B (zh) 2011-07-01 2017-08-15 谷歌技术控股有限责任公司 用于时间预测的联合亚像素插值滤波器
US9277222B2 (en) * 2012-05-14 2016-03-01 Qualcomm Incorporated Unified fractional search and motion compensation architecture across multiple video standards
US10764574B2 (en) 2015-07-01 2020-09-01 Panasonic Intellectual Property Management Co., Ltd. Encoding method, decoding method, encoding apparatus, decoding apparatus, and encoding and decoding apparatus
US10805627B2 (en) 2015-10-15 2020-10-13 Cisco Technology, Inc. Low-complexity method for generating synthetic reference frames in video coding
US9762915B2 (en) * 2015-12-03 2017-09-12 Facebook, Inc. Systems and methods for variable compression of media content based on media properties
US10009622B1 (en) 2015-12-15 2018-06-26 Google Llc Video coding with degradation of residuals
US10136155B2 (en) 2016-07-27 2018-11-20 Cisco Technology, Inc. Motion compensation using a patchwork motion field
US10455253B1 (en) 2017-02-28 2019-10-22 Google Llc Single direction long interpolation filter
US10506258B2 (en) 2017-07-13 2019-12-10 Google Llc Coding video syntax elements using a context tree
CN111201791B (zh) * 2017-11-07 2022-05-24 华为技术有限公司 用于视频编码的帧间预测装置和方法的插值滤波器
CN111527753B (zh) * 2017-12-29 2022-03-08 瑞典爱立信有限公司 使用参考值提供视频编码和/或解码的方法及相关设备
WO2020125629A1 (en) * 2018-12-17 2020-06-25 Beijing Bytedance Network Technology Co., Ltd. Reference pixels padding for motion compensation
AU2020240048B2 (en) * 2019-03-18 2022-12-22 Tencent America LLC Method and apparatus for video coding
EP4035350A4 (en) 2019-09-24 2023-11-01 Alibaba Group Holding Limited MOTION COMPENSATION METHOD FOR VIDEO CODING

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812791A (en) * 1995-05-10 1998-09-22 Cagent Technologies, Inc. Multiple sequence MPEG decoder
US6028583A (en) * 1998-01-16 2000-02-22 Adobe Systems, Inc. Compound layers for composited image manipulation
US6614939B1 (en) * 1997-08-05 2003-09-02 Matsushita Electric Industrial Co., Ltd Image compression apparatus and decoding apparatus suited to lossless image compression
US20040049672A1 (en) * 2002-05-31 2004-03-11 Vincent Nollet System and method for hardware-software multitasking on a reconfigurable computing platform
US20050249283A1 (en) * 2004-05-07 2005-11-10 Canon Kabushiki Kaisha Image coding apparatus and image decoding apparatus and their control methods, and computer program and computer-readable storage medium

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5684538A (en) 1994-08-18 1997-11-04 Hitachi, Ltd. System and method for performing video coding/decoding using motion compensation
JP3787650B2 (ja) 1995-09-08 2006-06-21 ソニー株式会社 デイジタル画像信号符号化装置及び方法、符号化画像信号復号装置及び方法
GB2379820A (en) 2001-09-17 2003-03-19 Nokia Corp Interpolating values for sub-pixels
US6950469B2 (en) * 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
KR100747958B1 (ko) 2001-09-18 2007-08-08 마쯔시다덴기산교 가부시키가이샤 화상 부호화 방법 및 화상 복호화 방법
MXPA04006814A (es) 2002-01-14 2004-12-06 Nokia Corp Filtros dinamicos de codificacion.
US7305034B2 (en) 2002-04-10 2007-12-04 Microsoft Corporation Rounding control for multi-stage interpolation
US7620109B2 (en) 2002-04-10 2009-11-17 Microsoft Corporation Sub-pixel interpolation in motion estimation and compensation
KR20050018948A (ko) 2002-07-09 2005-02-28 노키아 코포레이션 비디오 부호화에서 보간 필터 유형을 선택하기 위한 방법및 장치
KR100472476B1 (ko) 2002-08-31 2005-03-10 삼성전자주식회사 움직임 보상을 위한 보간 방법 및 그 장치
WO2005104564A1 (ja) 2004-04-21 2005-11-03 Matsushita Electric Industrial Co., Ltd. 動き補償装置
EP1617672A1 (en) 2004-07-13 2006-01-18 Matsushita Electric Industrial Co., Ltd. Motion estimator/compensator including a 16-bit 1/8 pel interpolation filter
US7653132B2 (en) 2004-12-21 2010-01-26 Stmicroelectronics, Inc. Method and system for fast implementation of subpixel interpolation
JP2008536414A (ja) 2005-04-13 2008-09-04 ゴットフリート・ヴィルヘルム・ライプニッツ・ウニヴェルジテート・ハノーヴァー ビデオの拡張された符号化方法及び装置
EP1746839A1 (en) 2005-07-22 2007-01-24 Thomson Licensing Method and apparatus for encoding video data
US7778494B2 (en) 2005-10-13 2010-08-17 Texas Instruments Incorporated FIR-based interpolation in advanced video codecs on VLIW processor
KR100754841B1 (ko) 2005-10-28 2007-09-04 경희대학교 산학협력단 비트율 왜곡 비용에 기초하여 선택된 보간 필터를 이용하여공간 계층간 예측을 수행하는 스케일러블 h.264부호화/복호화 방법
US8582663B2 (en) 2006-08-08 2013-11-12 Core Wireless Licensing S.A.R.L. Method, device, and system for multiplexing of video streams

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812791A (en) * 1995-05-10 1998-09-22 Cagent Technologies, Inc. Multiple sequence MPEG decoder
US6614939B1 (en) * 1997-08-05 2003-09-02 Matsushita Electric Industrial Co., Ltd Image compression apparatus and decoding apparatus suited to lossless image compression
US6028583A (en) * 1998-01-16 2000-02-22 Adobe Systems, Inc. Compound layers for composited image manipulation
US20040049672A1 (en) * 2002-05-31 2004-03-11 Vincent Nollet System and method for hardware-software multitasking on a reconfigurable computing platform
US20050249283A1 (en) * 2004-05-07 2005-11-10 Canon Kabushiki Kaisha Image coding apparatus and image decoding apparatus and their control methods, and computer program and computer-readable storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Thomas Wiegand, Gary J. Sullivan, Gisle Bjøntegaard, and Ajay Luthra," Overview of the H.264/AVC Video Coding Standard", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, pp.560-575, VOL. 13, NO. 7, July, Year of 2003 *

Also Published As

Publication number Publication date
BRPI0910641B1 (pt) 2020-11-03
JP2011517239A (ja) 2011-05-26
US20090257503A1 (en) 2009-10-15
JP2013243720A (ja) 2013-12-05
WO2009126921A1 (en) 2009-10-15
KR101208384B1 (ko) 2012-12-05
BRPI0910641A2 (pt) 2016-08-23
CN101999229A (zh) 2011-03-30
KR20100133005A (ko) 2010-12-20
EP2272253A1 (en) 2011-01-12
CA2719540A1 (en) 2009-10-15
CA2719540C (en) 2014-03-25
CN101999229B (zh) 2013-04-17
US8971412B2 (en) 2015-03-03
JP5654087B2 (ja) 2015-01-14
TW201010440A (en) 2010-03-01

Similar Documents

Publication Publication Date Title
TWI468017B (zh) 用於視訊寫碼中運動補償之進階內插技術
US20190028736A1 (en) Advanced interpolation techniques for motion compensation in video coding
KR101202632B1 (ko) 비디오 코딩에서의 보간을 위한 예측 기술
KR101242958B1 (ko) 비디오 코딩에서의 서브-픽셀 해상도를 위한 보간 필터 서포트
TWI542222B (zh) 用於基於固定濾波器或適應性濾波器用於視訊編碼之由率失真定義之內插之方法、裝置、器件及電腦可讀儲存媒體
KR101250115B1 (ko) 비디오 코딩에서의 서브-픽셀 포지션들의 보간 필터링을 위한 대칭
KR101214021B1 (ko) 비디오 코딩에서의 정수-픽셀 포지션들의 보간형 필터링
CA2795204C (en) Mixed tap filters
WO2009126937A1 (en) Offsets at sub-pixel resolution
US20110317764A1 (en) Inclusion of switched interpolation filter coefficients in a compressed bit-stream
RU2481727C2 (ru) Усовершенствованные технологии интерполяции для компенсации движения при кодировании видео