TW202019174A - 用於視訊寫碼之系統及方法 - Google Patents

用於視訊寫碼之系統及方法 Download PDF

Info

Publication number
TW202019174A
TW202019174A TW108125111A TW108125111A TW202019174A TW 202019174 A TW202019174 A TW 202019174A TW 108125111 A TW108125111 A TW 108125111A TW 108125111 A TW108125111 A TW 108125111A TW 202019174 A TW202019174 A TW 202019174A
Authority
TW
Taiwan
Prior art keywords
motion vector
prediction
partition
block
image
Prior art date
Application number
TW108125111A
Other languages
English (en)
Other versions
TWI808218B (zh
Inventor
宗順 林
史寇敘P 夏西達
廖如伶
海威 孫
漢文 張
李靜雅
安倍清史
遠間正真
西孝啓
Original Assignee
美商松下電器(美國)知識產權公司
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 美商松下電器(美國)知識產權公司 filed Critical 美商松下電器(美國)知識產權公司
Publication of TW202019174A publication Critical patent/TW202019174A/zh
Application granted granted Critical
Publication of TWI808218B publication Critical patent/TWI808218B/zh

Links

Images

Classifications

    • 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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一種影像編碼器具有耦合至一記憶體之電路系統。該電路系統將一目前影像塊拆分成複數個分區。該電路系統針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量,並且使用該第一動作向量來編碼該第一分區。

Description

用於視訊寫碼之系統及方法
本揭露係有關於視訊寫碼,並且尤其係有關於用來進行框間預測功能以基於參考框來建置目前框之預測的視訊編碼與解碼系統、組件以及方法。
隨著視訊寫碼技術進步,從H.261及MPEG-1進步到H.264/AVC (先進視訊寫碼)、MPEG-LA、H.265/HEVC (高效率視訊寫碼)及H.266/VVC (多功能視訊編解碼),仍然需要不斷地對視訊寫碼技術予以改良及最佳化,以處理各種應用中日益增加的數位視訊資料量。本揭露係有關於視訊寫碼方面,尤其是一框間預測功能方面之再進步、改良及最佳化,該框間預測功能用來基於一參考框建置一目前框之一預測。
在一項態樣中,一種影像編碼器包含電路系統及耦合至該電路系統之一記憶體。在操作時,該電路系統將一目前影像塊拆分成複數個分區。針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量。使用該第一動作向量來編碼該第一分區。
在一項態樣中,一種影像編碼器包含在操作時接收一原始圖片並將該原始圖片拆分成區塊之一拆分器、在操作時從該拆分器接收該等區塊並從一預測控制器接收預測、並且將各預測從其對應區塊減去以輸出一殘差之一第一加法器、在操作時對輸出自該加法器之該等殘差進行一變換以輸出變換係數之一變換器、在操作時量化該等變換係數以產生經量化變換係數之一量化器、在操作時編碼該等經量化變換係數以產生一位元串流之一熵編碼器、在操作時逆量化該等經量化變換係數以取得該等變換係數並且逆變換該等變換係數以取得該等殘差之一逆量化器及變換器、在操作時將輸出自該逆量化器及變換器之該等殘差與輸出自該預測控制器之該等預測相加以重構該等區塊之一第二加法器、以及耦合至一框間預測器、一框內預測器、及一記憶體之該預測控制器。該框間預測器在操作時,基於一經編碼參考圖片中之一參考區塊來產生一目前區塊之一預測。該框內預測器在操作時,基於一目前圖片中之一經編碼參考區塊來產生一目前區塊之一預測。該框間預測器在操作時,將一目前影像塊拆分成複數個分區。針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量。使用該第一動作向量來編碼該第一分區。
在一項態樣中,一種影像編碼方法包含將一目前影像塊拆分成複數個分區。針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量。使用該第一動作向量來編碼該第一分區。
在一項態樣中,一種影像解碼器包含電路系統及耦合至該電路系統之一記憶體。該電路系統在操作時,將一目前影像塊拆分成複數個分區。針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量。使用該第一動作向量來解碼該第一分區。
在一項態樣中,一影像解碼器包含在操作時接收並解碼一經編碼位元串流以取得經量化變換係數之一熵解碼器、在操作時逆量化該等經量化變換係數以取得變換係數並且逆變換該等變換係數以取得殘差之一逆量化器及變換器、在操作時將輸出自該逆量化器及變換器之該等殘差與輸出自一預測控制器之預測相加以重構區塊之一加法器、以及耦合至一框間預測器、一框內預測器、及一記憶體之該預測控制器。該框間預測器在操作時,基於一經解碼參考圖片中之一參考區塊來產生一目前區塊之一預測。該框內預測器在操作時,基於一目前圖片中之一經編碼參考區塊來產生一目前區塊之一預測。該框間預測器在操作時,將一目前影像塊拆分成複數個分區。針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量。使用該第一動作向量來解碼該第一分區。
在一項態樣中,一種影像解碼方法包含將一目前影像塊拆分成複數個分區。針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量。使用該第一動作向量來解碼該第一分區。
本揭露之實施例有一些實作態樣可改善一編碼效率、可單純地係一編碼/解碼程序、可加速一編碼/解碼程序速度、可有效率地選擇諸如適當之濾波器、區塊尺寸、動作向量、參考圖片、參考區塊等編碼及解碼時所使用之適當組件/操作。
從本說明書及圖式,所揭示實施例之附加效益及優點將變為顯而易見。該等效益及/或優點可藉由本說明書及圖式之各項實施例及特徵來個別地取得,不需要為了取得此些效益及/或優點中之一或多者而提供所有的實施例及特徵。
應知,一般或特定實施例可被實施成一系統、一方法、一積體電路、一電腦程式、一儲存媒體、或其任何選擇性的組合。
在下文中,(多個)實施例將參照圖式作說明。請注意,下文所述之該(等)實施例各展示一通用或特定實例。以下(多個)實施例中所指出之數值、形狀、材料、組件、該等組件之布置及連接、步驟、該等步驟之關係及順序等僅為實例,並且非意欲限制申請專利範圍之範疇。
一編碼器及一解碼器之實施例將在下文作說明。該等實施例係本揭露之態樣之說明中介紹之程序及/或組態可適用之一編碼器及一解碼器之實例。亦可在有別於根據該等實施例所述之一編碼器及一解碼器中實施該等程序及/或組態。舉例而言,關於如施用於該等實施例之程序及/或組態,可實施以下任何一者:
(1)   根據本揭露之態樣之說明中介紹之實施例之編碼器、或解碼器之組件中之任何一者可用本揭露之態樣之說明中任何地方介紹之另一組件來替代或與之組合。
(2)   在根據該等實施例之編碼器或解碼器中,可對藉由編碼器或解碼器之一或多個組件進行之功能或程序施作任意的變更,諸如該等功能或程序之加入、替代、移除等。舉例而言,任何功能或程序可用本揭露之態樣之說明中任何地方介紹之另一功能或程序來替代或與之組合。
(3)   在根據該等實施例藉由該編碼器或該解碼器實施之方法中,可對該方法中所包括之一或多個程序施作任意的變更,諸如加入、替代、及移除。舉例而言,該方法中之任何程序可用本揭露之態樣之說明中任何地方介紹之另一程序來替代或與之組合。
(4)   根據實施例在該編碼器或該解碼器中包括之一或多個組件可與本揭露之態樣之說明中任何地方介紹之一組件組合、可與包括本揭露之態樣之說明中任何地方介紹之一或多個功能的一組件組合、以及可與實施藉由本揭露之態樣之說明中介紹之一組件來實施之一或多個程序組合。
(5)   根據該等實施例包括該編碼器或該解碼器之一或多個功能的一組件、或根據該等實施例實施該編碼器或該解碼器之一或多個程序的一組件,可與本揭露之態樣之說明中任何地方介紹之一組件組合或以之替代、與包括本揭露之態樣之說明中任何地方介紹之一或多個功能的一組件組合或以之替代、或與實施本揭露之態樣之說明中任何地方介紹之一或多個程序的一組件組合或以之替代。
(6)   在根據該等實施例由該編碼器或該解碼器實施之方法中,該方法中包括之任何程序可用本揭露之態樣之說明中任何地方介紹之程序替代或與之組合、或用任何對應或等效程序替代或與之組合。
(7)   根據該等實施例由該編碼器或該解碼器實施之方法中所包括之一或多個程序可與本揭露之態樣之說明中任何地方介紹之一程序組合。
(8)   本揭露之態樣之說明中介紹之程序及/或組態之實作態樣不受限於根據該等實施例之編碼器或解碼器。舉例而言,可在為了與該等實施例中所揭示之移動圖片編碼器或移動圖片解碼器有所不同之一目的而使用之一裝置中實施該等程序及/或組態。
(編碼器) 首先,根據一實施例之一編碼器將被說明。圖1係一方塊圖,其根據該實施例繪示編碼器100之一功能組態。編碼器100係一視訊編碼器,其以一區塊為單位來編碼一視訊。
如圖1所示,編碼器100係一設備,其以一區塊為單位來編碼一影像,並且包括拆分器102、減法器104、變換器106、量化器108、熵編碼器110、逆量化器112、逆變換器114、加法器116、區塊記憶體118、迴路濾波器120、圖框記憶體122、框內預測器124、框間預測器126、以及預測控制器128。
將編碼器100實施成例如一通用處理器及記憶體。在這種狀況中,當儲存在該記憶體中之一軟體程式係由該處理器執行時,該處理器作用為拆分器102、減法器104、變換器106、量化器108、熵編碼器110、逆量化器112、逆變換器114、加法器116、迴路濾波器120、框內預測器124、框間預測器126、以及預測控制器128。替代地,可將編碼器100實施成對應於拆分器102、減法器104、變換器106、量化器108、熵編碼器110、逆量化器112、逆變換器114、加法器116、迴路濾波器120、框內預測器124、框間預測器126、以及預測控制器128之一或多個專屬電子電路。
下文說明由編碼器100進行之程序之一總體流程,然後將說明編碼器100中所包括之各構成元件。
(編碼程序之總體流程) 圖2係一流程圖,其指出藉由編碼器100來進行之一總體編碼程序之一項實例。
首先,編碼器100之拆分器102將係為一視訊之一輸入影像中所包括之各圖片拆分成具有一固定尺寸(例如:128×128個像素)之複數個區塊(步驟Sa_1)。拆分器102接著針對該固定尺寸區塊選擇一拆分型樣(亦稱為一區塊形狀) (步驟Sa_2)。換句話說,拆分器102進一步將該固定尺寸區塊拆分成形成該所選擇拆分型樣之複數個區塊。編碼器100針對該等複數個區塊中之各區塊,為該區塊(其為要編碼之一目前區塊)進行步驟Sa_3至Sa_9。
換句話說,包括框內預測器124、框間預測器126、及預測控制器128全部或部分之一預測處理器產生要編碼之目前區塊(亦稱為一目前區塊)之一預測信號(亦稱為一預測區塊) (步驟Sa_3)。
其次,減法器104產生該目前區塊與一預測區塊之間的一差異作為一預測殘差(亦稱為一差異區塊) (步驟Sa_4)。
其次,變換器106變換該差異區塊且量化器108量化結果,以產生複數個量化係數(步驟Sa_5)。應知,具有該等複數個量化係數之區塊亦稱為一係數區塊。
其次,熵編碼器110編碼(具體而言,熵編碼)該係數區塊、及與產生一預測信號有關之一預測參數以產生一經編碼信號(步驟Sa_6)。應知,該經編碼信號亦稱為一經編碼位元串流、一經壓縮位元串流、或一串流。
其次,逆量化器112進行該係數區塊之逆量化,並且逆變換器114進行結果之逆變換,以還原複數個預測殘差(即一差異區塊) (步驟Sa_7)。
其次,加法器116將該預測區塊加入至該經還原差異區塊,以將該目前區塊重構為一重構影像(亦稱為一重構區塊或一經解碼影像塊) (步驟Sa_8)。依照這種方式,產生該重構影像。
當產生該重構影像時,迴路濾波器120根據需要對該重構影像進行濾波(步驟Sa_9)。
編碼器100接著判斷整個圖片之編碼是否已被完成(步驟Sa_10)。當判斷該編碼尚未被完成(步驟Sa_10為否)時,從步驟Sa_2重複地執行程序。
雖然編碼器100為一固定尺寸區塊選擇一個拆分型樣,並且在上述實例中根據該拆分型樣來編碼各區塊,應知,仍可根據複數個拆分型樣中一對應之拆分型樣來編碼各區塊。在這種狀況中,編碼器100可針對該等複數個拆分型樣之各者評估一成本,並且舉例而言,可選擇能藉由根據產出最小成本之拆分型樣進行編碼所取得之經編碼信號作為被輸出之一經編碼信號。
如圖示,步驟Sa_1至Sa_10中之程序係藉由編碼器100來循序進行。替代地,可平行進行二或更多個程序、可將該等程序重排序等。
(拆分器) 拆分器102將一輸入視訊中所包括之各圖片拆分成複數個區塊,並且將各區塊輸出至減法器104。舉例而言,拆分器102先將一圖片拆分成一固定尺寸(例如:128×128)之區塊。可運用其他固定區塊尺寸。固定尺寸區塊亦稱為一寫碼樹單元(CTU)。拆分器102接著基於遞迴四元樹及/或二元樹區塊拆分,將各固定尺寸區塊拆分成可變尺寸(例如:64×64或更小)之區塊。換句話說,拆分器102選擇一拆分型樣。可變尺寸區塊亦稱為一寫碼單元(CU)、一預測單元(PU)、或一變換單元(TU)。應知,在各種處理實例中,不需要區別CU、PU、及TU;一圖片中之全部或一些區塊可以一CU、一PU、或一TU為單位來處理。
圖3係一概念圖,其根據一實施例,繪示區塊拆分之一項實例。在圖3中,實線代表藉由四元樹區塊拆分來拆分之區塊之區塊邊界,而虛線代表藉由二元樹區塊拆分來拆分之區塊之區塊邊界。
在這裡,區塊10係具有128×128個像素之一正方形區塊(128×128區塊)。首先將此128×128區塊10拆分成四個正方形64×64區塊(四元樹區塊拆分)。
左上方64×64區塊係進一步垂直拆分成兩個矩形32×64區塊,並且左方32×64區塊係進一步垂直拆分成兩個矩形16×64區塊(二元樹區塊拆分)。結果是,左上方64×64區塊係拆分成兩個16×64區塊11與12、以及一個32×64區塊13。
右上方64×64區塊係水平拆分成兩個矩形64×32區塊14與15 (二元樹區塊拆分)。
首先左下方64×64區塊係拆分成四個正方形32×32區塊(四元樹區塊拆分)。進一步拆分四個32×32區塊中之左上方區塊及右下方區塊。左上方32×32區塊係垂直拆分成兩個矩形16×32區塊,並且右方16×32區塊係進一步水平拆分成兩個16×16區塊(二元樹區塊拆分)。右下方32×32區塊係水平拆分成兩個32×16區塊(二元樹區塊拆分)。結果是,左下方64×64區塊係拆分成16×32區塊16、兩個16×16區塊17與18、兩個32×32區塊19與20、以及兩個32×16區塊21與22。
不拆分右下方64×64區塊23。
如上述,在圖3中,區塊10係基於遞迴四元樹及二元樹區塊拆分來拆分成十三個可變尺寸區塊11至23。這種拆分類型亦稱為四元樹加二元樹(QTBT)拆分。
應知,在圖3中,一個區塊係拆分成四個或兩個區塊(四元樹或二元樹區塊拆分),但拆分不受限於這些實例。舉例而言,一個區塊可拆分成三個區塊(三元區塊拆分)。包括此類三元區塊拆分之拆分亦稱為多型樹(MBT)拆分。
(圖片結構:切片/圖磚) 一圖片可以一或多個切片或圖磚為單位來組配,以便平行解碼該圖片。以一或多個切片或圖磚為單位所組配之圖片可藉由拆分器102來組配。
切片係包括在一圖片中之基本編碼單元。一圖片舉例而言,可包括一或多個切片。另外,一切片包括一或多個接續寫碼樹單元(CTU)。
圖4A係一概念圖,其繪示一切片組態之一項實例。舉例而言,一圖片包括11×8個CTU,並且係拆分成四個切片(切片1至4)。切片1包括十六個CTU,切片2包括二十一個CTU,切片3包括二十九個CTU,並且切片4包括二十二個CTU。在這裡,該圖片中之各CTU屬於該等切片中之一者。各切片之形狀係可藉由水平拆分該圖片取得之一形狀。各切片之一邊界不需要與一影像端重合,並且可與該影像中之多個CTU之間的任何邊界重合。一切片中該等CTU之處理順序(一編碼順序或一解碼順序)舉例而言,係一光柵掃描順序。一切片包括標頭資訊及經編碼資料。該切片之特徵可在標頭資訊中被說明。該等特徵包括該切片中一頂端CTU之一CTU位址、一切片類型等。
一圖磚係包括在一圖片中之一矩形區域之一單元。在光柵掃描順序中,各圖磚可被指派有稱為圖磚識別符(TileId)之一號碼。
圖4B係一概念圖,其指出一圖磚組態之一實例。舉例而言,一圖片包括11×8個CTU,並且係拆分成四個矩形區域圖磚(圖磚1至4)。當使用圖磚時,CTU之處理順序係改變自沒有使用圖磚之狀況中之處理順序。當沒有使用圖磚時,一圖片中之CTU係依照光柵掃描順序來處理。當使用圖磚時,各個圖磚中之至少一個CTU係依照光柵掃描順序來處理。舉例而言,如圖4B所示,圖磚1中所包括之CTU之處理順序係從第一列圖磚1之左端開始朝向第一列圖磚1之右端、然後從第二列圖磚1之左端開始朝向第二列圖磚1之右端的順序。
應知,一個圖磚可包括一或多個切片,並且一個切片可包括一或多個圖磚。
(減法器) 減法器104將一預測信號(下文所指從預測控制器128輸入之預測樣本)從以輸入自拆分器102並藉由拆分器102拆分之一區塊為單位之一原始信號(原始樣本)減去。換句話說,減法器104計算要編碼之一區塊(下文亦稱為一目前區塊)之預測誤差(亦稱為殘差)。減法器104接著將所計算之預測誤差(殘差)輸出至變換器106。
原始信號係已被輸入到編碼器100內並且代表一視訊中所包括各圖片之一影像的一信號(例如:一亮度信號及兩個色度信號)。在下文中,代表一影像之一信號亦稱為一樣本。
(變換器) 變換器106將空間域中之預測誤差變換成頻域中之變換係數,並且將變換係數輸出至量化器108。更具體而言,變換器106舉例而言,將一經定義離散餘弦變換(DCT)或離散正弦變換(DST)施用於空間域中之預測誤差。該經定義DCT或DST可被預定義。
應知,變換器106可從複數種變換類型中適應性地選擇一變換類型,並且藉由使用對應於所選擇變換類型之一變換基礎函數將預測誤差變換成變換係數。這種變換亦稱為顯式多核心變換(EMT)或適應性多重變換(AMT)。
變換類型舉例而言,包括DCT-II、DCT-V、DCT-VIII、DST-I、以及DST-VII。圖5A係一圖表,其指出用於例示性變換類型之變換基礎函數。在圖5A中,N指出輸入像素之數量。舉例而言,從複數個變換類型中選擇變換類型可取決於一預測類型(框內預測及框間預測其中一者),並且可取決於一框內預測模式。
指出是否要施用此類EMT或AMT之資訊(舉例而言,稱為一EMT旗標或一AMT旗標)、以及指出所選擇變換類型之資訊通常是在CU層級傳訊。應知,此類資訊之傳訊不一定需要在CU層級進行,而是可在另一層級(舉例而言,在位元序列層級、圖片層級、切片層級、圖磚層級、或CTU層級)進行。
另外,變換器106可將變換係數(變換結果)再變換。此類再變換亦稱為適應性次級變換(AST)或不可分離次級變換(NSST)。舉例而言,變換器106以對應於一框內預測誤差之一變換係數區塊中所包括之一子區塊(例如:4×4子區塊)為單位進行再變換。指出是否要施用NSST之資訊、以及與用在NSST中之一變換矩陣有關之資訊通常是在CU層級傳訊。應知,此類資訊之傳訊不一定需要在CU層級進行,而是可在另一層級(舉例而言,在序列層級、圖片層級、切片層級、圖磚層級、或CTU層級)進行。
變換器106可運用一可分離變換及一不可分離變換。一可分離變換係一種藉由根據輸入之維度之數量針對若干方向中之各方向單獨進行一變換來複數次進行一變換之方法。一不可分離變換係一種進行一集合變換之方法,其中多維輸入中之二或更多個維度係共同視為單一維度。
在一不可分離變換之一項實例中,當一輸入係一4×4區塊,該4×4區塊係視為包括十六個元素之單一陣列,並且該變換將一16×16變換矩陣施用至該陣列。
在一不可分離變換之另一實例中,一4×4輸入區塊係視為包括十六個元素之單一陣列,然後可進行在該陣列上進行複數次吉文斯廻轉之一變換(超立方體吉文斯變換)。
在變換器106中進行變換時,可切換要根據一CU中之區域變換成頻域之基數類型。實例包括空間變化變換(SVT)。在SVT中,如圖5B所示,CU係水平或垂直拆分成兩個相等區域,並且僅將該等區域中之一個區域變換成頻域。可為各區域設定一變換基礎類型。舉例而言,使用DST7及DST8。在這項實例中,僅變換CU中這兩個區域中之一個區域,並且不變換另一區域。然而,這兩個區域都可予以變換。另外,該拆分方法不受限於拆分成兩個相等區域,並且可更加靈活。舉例而言,CU可拆分成四個相等區域,或可採用如同CU拆分之方式,將指出拆分之資訊單獨編碼並傳訊。應知,SVT亦稱為子區塊變換(SBT)。
(量化器) 量化器108量化輸出自變換器106之變換係數。更具體而言,量化器108以一已定掃描順序來掃描目前區塊之變換係數,並且基於對應於該等變換係數之量化參數(QP)來量化經掃描變換係數。量化器108接著將目前區塊之經量化變換係數(下文中亦稱為經量化係數)輸出至熵編碼器110及逆量化器112。可預定該已定掃描順序。
一已定掃描順序係用於量化/逆量化變換係數之一順序。舉例而言,可將一已定掃描順序定義為頻率之升序(從低頻至高頻)或頻率之降序(從高頻至低頻)。
一量化參數(QP)係定義一量化間距(量化寬度)之一參數。舉例而言,當量化參數之值增大時,量化間距也增大。換句話說,當量化參數之值增大時,量化誤差隨之增大。
另外,一量化矩陣可用於量化。舉例而言,可對應地將數種量化矩陣用於諸如4×4及8×8之頻率變換尺寸、諸如框內預測及框間預測之預測模式、以及諸如亮度及色度像素分量之像素分量。應知,量化意味著相應地將以已定間隔取樣之值數位化成已定層級。在這種技術領域中,量化可意指為使用其他表達式,諸如捨入及調整比例,並且可運用捨入及調整比例。可預定該等已定間隔及層級。
使用量化矩陣之方法包括使用已在編碼器側直接設定之一量化矩陣的一方法、以及使用已設定為一預設值(預設矩陣)之一量化矩陣的一方法。在編碼器側,適用於一影像之特徵的一量化矩陣可藉由直接設定一量化矩陣來設定。然而,這種案例之一缺點在於編碼該量化矩陣之一寫碼量會增加。
有一種不使用一量化矩陣便可用於量化一高頻係數及一低頻率係數之方法。應知,這種方法等效於一種使用係數具有相同值之一量化矩陣(扁平矩陣)的方法。
該量化矩陣舉例而言,可使用一序列參數集(SPS)或一圖片參數集(PPS)來指定。該SPS包括用於一序列之一參數,並且該PPS包括用於一圖片之一參數。該SPS及該PPS各可單純地稱為一參數集。
(熵編碼器) 熵編碼器110基於已從量化器108輸入之經量化係數來產生一經編碼信號(經編碼位元串流)。更具體而言,熵編碼器110舉例而言,二元化經量化係數,並且算術編碼該二元信號、以及輸出一經壓縮位元串流或序列。
(逆量化器) 逆量化器112逆量化已從量化器108輸入之經量化係數。更具體而言,逆量化器112以一已定掃描順序逆量化目前區塊之經量化係數。逆量化器112接著將目前區塊之經逆量化變換係數輸出至逆變換器114。可預定該已定掃描順序。
(逆變換器) 逆變換器114藉由逆變換已從逆量化器112輸入之變換係數來還原預測誤差(殘差)。更具體而言,逆變換器114藉由施用與由變換器106對變換係數施用之變換對應之一逆變換來還原目前區塊之預測誤差。逆變換器114接著將經還原預測誤差輸出至加法器116。
應知,由於資訊在量化時遺失,經還原預測誤差與由減法器104計算之預測誤差不匹配。換句話說,經還原預測誤差通常包括量化誤差。
(加法器) 加法器116藉由將已從逆變換器114輸入之預測誤差與已從預測控制器128輸入之預測樣本相加來重構目前區塊。加法器116接著將重構區塊輸出至區塊記憶體118及迴路濾波器120。一重構區塊亦稱為一局部解碼塊。
(區塊記憶體) 區塊記憶體118舉例而言,係用於將要編碼之一圖片(下文稱為一目前圖片)中之區塊儲存之儲存器,該圖片意指為在框內預測中之圖片。更具體而言,區塊記憶體118儲存從加法器116輸出之重構區塊。
(圖框記憶體) 圖框記憶體122舉例而言,係用於將框間預測中所用之參考圖片儲存之儲存器,並且亦稱為一圖框緩衝器。更具體而言,圖框記憶體122儲存由迴路濾波器120濾波之重構區塊。
(迴路濾波器) 迴路濾波器120將一迴路濾波施用於藉由加法器116重構之區塊,並且輸出經濾波重構區塊至圖框記憶體122。一迴路濾波器係一種用在一編碼迴路(迴路內濾波器)中之濾波器,並且舉例而言,包括一解塊濾波器(DF或DBF)、一樣本適應偏移(SAO)、以及一適應性迴路濾波器(ALF)。
在一ALF中,施用一種用於移除壓縮假影之最小平方誤差濾波器。舉例而言,基於局部梯度之方向及活性從複數個濾波器中選擇之一個濾波器係施用於目前區塊中之各2×2子區塊。
更具體而言,首先,將各子區塊(例如:各2×2子區塊)分類到複數種類別(例如:十五或二十五種類別)中之一種類別。子區塊之分類係基於梯度方向性及活性。舉例而言,分類索引C (例如,C = 5D + A)係基於梯度方向性D (例如:0至2或0至4)及梯度活性A (例如:0至4)來推導。接著,基於分類索引C,將各子區塊分類到複數種類別中之一種類別。
舉例而言,梯度方向性D係藉由比較複數個方向(例如:水平、垂直、及兩個對角方向)之梯度來計算。此外,舉例而言,梯度活性A係藉由將複數個方向之梯度相加並量化相加之結果來計算。
要用於各子區塊之濾波器基於此類分類之結果從複數個濾波器中被確定。
用在一ALF中之濾波形狀舉例而言,係一圓形對稱濾波形狀。圖6A至圖6C繪示ALF中所用之濾波形狀之實例。圖6A繪示一5×5菱形濾波,圖6B繪示一7×7菱形濾波,並且圖6C繪示一9×9菱形濾波。指出濾波形狀之資訊通常是在圖片層級傳訊。應知,指出濾波形狀之此類資訊之傳訊不一定需要在圖片層級進行,而是可在另一層級(舉例而言,在序列層級、切片層級、圖磚層級、CTU層級、或CU層級)進行。
ALF之ON或OFF舉例而言,是在圖片層級別或CU層級確定。舉例而言,是否要將ALF施用於亮度之決定可在CU層級進行,並且是否要將ALF施用於色度之決定可圖片層級進行。將ALF之ON或OFF指出之資訊通常是在圖片層級或CU層級傳訊。應知,將ALF之ON或OFF指出之資訊之傳訊不一定需要在圖片層級或CU層級進行,而是可在另一層級(舉例而言,在序列層級、切片層級、圖磚層級、或CTU層級)進行。
為複數個可選擇濾波器(例如:十五或多達二十五個濾波器)設定之係數通常是在圖片層級傳訊。應知,係數集之傳訊不一定需要在圖片層級進行,而是可在另一層級(舉例而言,在序列層級、切片層級、圖磚層級、CTU層級、CU層級、或子區塊層級)進行。
(迴路濾波器 > 解塊濾波器) 在一解塊濾波器中,迴路濾波器120對一重構影像中之一區塊邊界進行一濾波程序,以便減少發生在區塊邊界處之失真。
圖7係一方塊圖,其繪示作用為一解塊濾波器之一迴路濾波器120之一特定組態之一項實例。
迴路濾波器120包括:邊界決定器1201;濾波決定器1203;濾波執行器1205;程序決定器1208;濾波特性決定器1207;以及開關1202、1204及1206。
邊界決定器1201判斷一區塊邊界周圍是否存在要解塊濾波之一像素(即一目前像素)。邊界決定器1201接著將判斷結果輸至開關1202及處理決定器1208。
在邊界決定器1201已判斷一區塊邊界周圍存在一目前像素之狀況中,開關1202將一未濾波影像輸出至開關1204。在邊界決定器1201已判斷一區塊邊界周圍不存在目前像素之相反狀況中,開關1202將一未濾波影像輸出至開關1206。
濾波決定器1203基於位於目前像素周圍之至少一個環繞像素之像素值來判斷是否要進行目前像素之解塊濾波。濾波決定器1203接著將判斷結果輸至開關1204及處理決定器1208。
在濾波決定器1203已確定要進行目前像素之解塊濾波的狀況中,開關1204將透過開關1202取得之未濾波影像輸出至濾波執行器1205。在濾波決定器1203已確定不要進行目前像素之解塊濾波的相反狀況中,開關1204將透過開關1202取得之未濾波影像輸出至開關1206。
當透過開關1202與1204取得未濾波影像時,濾波執行器1205針對目前像素,以藉由濾波特性決定器1207所確定之濾波特性執行解塊濾波。濾波執行器1205接著將已濾波像素輸出至開關1206。
在處理決定器1208之控制下,開關1206選擇性地輸出尚未解塊濾波之一像素、以及已藉由濾波執行器1205解塊濾波之一像素。
處理決定器1208基於由邊界決定器1201及濾波決定器1203做出之判斷結果來控制開關1206。換句話說,處理決定器1208致使開關1206輸出在邊界決定器1201已確定區塊邊界周圍存在目前像素、且濾波決定器1203已確定要進行目前像素之解塊濾波時已解塊濾波之像素。另外,除以上狀況外,處理決定器1208致使開關1206輸出尚未解塊濾波之像素。一已濾波影像係藉由依此作法重複一像素之輸出而從開關1206被輸出。
圖8係一概念圖,其指出相對於一區塊邊界具有一對稱濾波特性之一解塊濾波器之一實例。
在一解塊濾波程序中,一強濾波器及一弱濾波器這兩個具有不同特性之解塊濾波器其中一者係使用像素值與量化參數來選擇。以強濾波器為例,像素p0至p2及像素q0至q2係橫跨如圖8所示之一區塊邊界存在,各別像素q0至q2之像素值係例如根據下面之表達式,藉由進行運算來變更為像素值q’0至q’2。
q’0 = (p1 + 2 × p0 + 2 × q0 + 2 × q1 + q2 + 4) / 8 q’1 = (p0 +q0 + q1 + q2 + 2) / 4 q’2 = (p0 + q0 + q1 +3 × q2 + 2 × q3 +4) / 8
應知,在以上表達式中,p0至p2及q0至q2係各別像素p0至p2及像素q0至q2之像素值。另外,q3係位於像素q2相對於區塊邊界之相對側處鄰近像素q3之像素值。另外,在各個表達式之右側中,與要用於解塊濾波之像素之各別像素值相乘之係數為濾波係數。
再者,在解塊濾波中,可進行削剪,以使得所計算之像素值未被設定超過門檻值。在削剪程序中,根據以上表達式計算之像素值係使用基於一量化參數確定之門檻值來削剪至根據「一運算像素值 ± 2 × 一門檻值」所取得之一值。依此作法,有可能防止過度平滑化。
圖9係一概念圖,用於繪示有在其上進行一解塊濾波程序之一區塊邊界。圖10係一概念圖,其指出Bs值之實例。
在其上有進行解塊濾波程序之區塊邊界舉例而言,係介於如圖9所示具有8×8個像素區塊之預測單元(PU)之間的一邊界、或介於變換單元(TU)之間的一邊界。解塊濾波程序可以四列或四行為單位來進行。首先,針對圖9所示之區塊P及區塊Q,被確定的邊界強度(Bs)值如圖10所指出。
根據圖10中之Bs值,判斷是否要使用不同強度來進行屬於相同影像之區塊邊界之解塊濾波程序。當Bs值為2時,針對一色度信號進行解塊濾波程序。當Bs值為1或1以上且滿足一已定條件時,針對一亮度信號進行解塊濾波程序。該已定條件可被預定。應知,用於確定Bs值之條件不受限於圖10中所指出之條件,並且Bs值可基於另一參數來確定。
(預測處理器(框內預測器、框間預測器、預測控制器)) 圖11係一流程圖,其繪示藉由編碼器100之預測處理器來進行之一程序之一項實例。應知,預測處理器包括以下全部或部分之構成元件:框內預測器124;框間預測器126;以及預測控制器128。
預測處理器產生一目前區塊之一預測影像(步驟Sb_1)。此預測影像亦稱為一預測信號或一預測區塊。應知,該預測信號舉例而言,係一框內預測信號或一框間預測信號。具體而言,預測處理器使用已經透過產生一預測區塊、產生一差異區塊、產生一係數區塊、還原一差異區塊、以及產生一經解碼影像塊所取得之一重構影像來產生目前區塊之預測影像。
該重構影像舉例而言,可以是一參考圖片中之一影像、或是一目前圖片中一經編碼區塊之一影像,該目前圖片係包括該目前區塊之圖片。目前圖片中之經編碼區塊舉例而言,係目前區塊之一鄰近區塊。
圖12係一流程圖,其繪示藉由編碼器100之預測處理器來進行之一程序之另一實例。
預測處理器使用一第一方法產生一預測影像(步驟Sc_1a)、使用一第二方法產生一預測影像(步驟Sc_1b)、以及使用一第三方法產生一預測影像(步驟Sc_1c)。第一方法、第二方法、以及第三方法可以是用於產生一預測影像之相互不同的方法。第一至第三方法各可以是一框間預測方法、一框內預測方法、或另一預測方法。可在這些預測方法中使用上述的重構影像。
其次,預測處理器選擇在步驟Sc_1a、Sc_1b、及Sc_1c中產生之複數種預測方法中之任何一者(步驟Sc_2)。預測影像之選擇係用於取得一最終預測影像之一方法或一模式之選擇,可藉由計算各個所產生預測影像之一成本及基於該成本來施作。替代地,預測影像之選擇可基於在一編碼程序中使用之一參數來施作。編碼器100可將用於識別一所選擇預測影像、一方法、或一模式之資訊變換成一經編碼信號(亦稱為一經編碼位元串流)。該資訊舉例而言,可以是一旗標或類似者。依此作法,解碼器能夠根據該方法或基於編碼器100中之資訊所選擇之模式來產生一預測影像。應知,在圖12所示之實例中,預測處理器在使用相應方法產生該等預測影像之後選擇該等預測影像中之任何一者。然而,預測處理器可在產生預測影像之前基於用在上述編碼程序中之一參數來選擇一方法或一模式,並且可根據所選擇之方法或模式來產生一預測影像。
舉例而言,第一方法及第二方法分別可以是框內預測及框間預測,並且預測處理器可從根據該等預測方法所產生之預測影像為一目前區塊選擇一最終預測影像。
圖13係一流程圖,其繪示藉由編碼器100之預測處理器來進行之一程序之另一實例。
首先,預測處理器使用框內預測產生一預測影像(步驟Sd_1a),並且使用框間預測產生一預測影像(步驟Sd_1b)。應知,藉由框內預測產生之預測影像亦稱為一框內預測影像,而藉由框間預測產生之預測影像亦稱為一框間預測影像。
其次,預測處理器評估該框內預測影像及該框間預測影像之各者(步驟Sd_2)。可在評估中使用一成本。換句話說,預測處理器為該框內預測影像及該框間預測影像之各者計算成本C。成本C可根據一R-D最佳化模型之一表達式來計算,例如:C = D + λ × R。在此表達式中,D表示一預測影像之一寫碼失真,並且舉例而言,係表示為一目前區塊之像素值與一預測影像之像素值之間絕對差之一總和。另外,R表示一預測影像之一預測寫碼量,具體而言,係為了產生一預測影像等而將動作資訊編碼所需之寫碼量。另外,λ舉例而言,表示以拉格朗日乘數之方法為根據之一乘數。
預測處理器接著針對目前區塊選擇已在框內預測影像與框間預測影像之中計算出最小成本C之預測影像作為最終預測影像(步驟Sd_3)。換句話說,用於針對目前區塊產生預測影像的預測方法或模式被選擇。
(框內預測器) 框內預測器124透過參照位在目前圖片中且儲存於區塊記憶體118中之一區塊或多個區塊,藉由對目前區塊進行框內預測(亦稱為圖框內預測)來產生一預測信號(框內預測信號)。更具體而言,框內預測器124透過參照與目前區塊鄰近之一區塊或多個區塊之樣本(例如:亮度及/或色度值),藉由進行框內預測來產生一框內預測信號,然後將該框內預測信號輸出至預測控制器128。
舉例而言,框內預測器124藉由從已定義之複數種框內預測模式中使用一種模式來進行框內預測。該等框內預測模式包括一或多種非定向預測模式及複數種定向預測模式。該等已定義模式可被預定義。
該一或多種非定向預測模式舉例而言,包括在H.265/高效率視訊寫碼(HEVC)標準中定義之平面預測模式及DC預測模式。
該等複數種定向預測模式舉例而言,包括H.265/HEVC標準中所定義之三十三種定向預測模式。應知,該等複數種定向預測模式除了這三十三種定向預測模式以外,可再包括三十二種定向預測模式(總計六十五種定向預測模式)。圖14係一概念圖,其繪示總計六十七種可在框內預測中使用之框內預測模式(兩種非定向預測模式及六十五種定向預測模式)。實線箭頭代表H.265/HEVC標準中定義之三十三種方向,而虛線箭頭代表另外的三十二種方向(圖14中未繪示該等兩種非定向預測模式)。
在各種處理實例中,一亮度區塊可意指為處於一色度區塊之框內預測中。換句話說,目前區塊之一色度分量可基於目前區塊之一亮度分量來預測。此類框內預測亦稱為交叉分量線性模型(CCLM)預測。可新增針對參照此一亮度區塊之一色度區塊所用之框內預測模式(舉例而言,亦稱為一CCLM模式)作為針對色度區塊所用之其中一種框內預測模式。
框內預測器124可基於水平/垂直參考像素梯度來校正框內預測像素值。這種校正隨附之框內預測亦稱為位置相依性框內預測組合(PDPC)。指出是否要施用PDPC之資訊(舉例而言,稱為一PDPC旗標)通常是在CU層級傳訊。應知,此類資訊之傳訊不一定需要在CU層級進行,而是可在另一層級(舉例而言,在序列層級、圖片層級、切片層級、圖磚層級、或CTU層級)進行。
(框間預測器) 框間預測器126透過參照一參考圖片中之一區塊或多個區塊,藉由對目前區塊進行框間預測(亦稱為圖框間預測)來產生一預測信號(框間預測信號),該參考圖片有別於該目前圖片並且係儲存在圖框記憶體122中。框間預測係以一目前區塊或該目前區塊中之一目前子區塊(例如:一4×4區塊)為單位來進行。舉例而言,框間預測器126針對目前區塊或目前子區塊在一參考圖片中進行動作估測,並且找出與目前區塊或目前子區塊最匹配之一參考區塊或子區塊。框間預測器126接著取得對從參考區塊或子區塊到目前區塊或子區塊之一動作或一變化進行補償之動作資訊(例如:一動作向量)。框間預測器126基於動作資訊,藉由進行動作補償(或動作預測)來產生目前區塊或子區塊之一框間預測信號。框間預測器126將所產生之框間預測信號輸出至預測控制器128。
可採用各種形式傳訊動作補償中使用之動作資訊作為框間預測信號。舉例而言,可傳訊一動作向量。舉另一例而言,可傳訊一動作向量與一動作向量預測子之間的差異。
(框間預測之基本流程) 圖15係一流程圖,其繪示框間預測之一例示性基本處理流程。
首先,框間預測器126產生一預測信號(步驟Se_1至Se_3)。其次,減法器104產生目前區塊與一預測影像之間的差異作為一預測殘差(步驟Se_4)。
在這裡,於產生預測影像時,框間預測器126透過確定目前區塊之動作向量(MV) (步驟Se_1及Se_2)及動作補償(步驟Se_3)來產生預測影像。再者,在確定一MV時,框間預測器126透過選擇一動作向量候選者(MV候選者) (步驟Se_1)及推導一MV (步驟Se_2)來確定MV。MV候選者之選擇舉例而言,係藉由從一MV候選者清單選擇至少一個MV候選者來施作。替代地,在推導一MV時,框間預測器126可進一步從該至少一個MV候選者選擇至少一個MV候選者,並且確定所選擇之至少一個MV候選者作為用於目前區塊之MV。替代地,框間預測器126可藉由在各個所選擇之至少一個MV候選者所指定之一參考圖片區域中進行估測來確定用於目前區塊之MV。應知,一參考圖片區域中之估測可稱為動作估測。
另外,雖然步驟Se_1至Se_3係藉由上述實例中之框間預測器126來進行,仍可藉由編碼器100中所包括之另一構成元件來進行一程序,其舉例而言,係步驟Se_1、步驟Se_2、或類似者。
(動作向量推導流程) 圖16係一流程圖,其繪示推導動作向量之一項實例。
框間預測器126在用於將動作資訊(例如:一MV)編碼之一模式中推導一目前區塊之一MV。在這種狀況中,舉例而言,將該動作資訊編碼為一預測參數,並且傳訊。換句話說,一經編碼信號(亦稱為一經編碼位元串流)中包括經編碼動作資訊。
替代地,框間預測器126在未將動作資訊編碼之一模式中推導一MV。在這種狀況中,一經編碼信號中不包括動作資訊。
在這裡,MV推導模式可包括一正常框間模式、一合併模式、一FRUC模式、一仿射模式等,其在下文有說明。模式之中有將動作資訊編碼之該等模式包括正常框間模式、合併模式、仿射模式(具體而言,一仿射框間模式及一仿射合併模式)等。應知,動作資訊可不僅包括一MV,還可包括下文有說明之動作向量預測子選擇資訊。未將動作資訊編碼之模式包括FRUC模式等。框間預測器126選擇用於從該等模式對目前區塊之一MV進行推導之一模式,並且使用所選擇之模式來推導目前區塊之MV。
圖17係一流程圖,其繪示推導動作向量之另一實例。
框間預測器126在有編塊一MV差異之一模式中推導一目前區塊之一MV。在這種狀況中,舉例而言,將該MV差異編碼為一預測參數,並且傳訊。換句話說,一經編碼信號中包括經編碼MV差異。該MV差異係目前區塊之MV與MV預測子之間的差異。
替代地,框間預測器126在未將MV差異編碼之一模式中推導一MV。在這種狀況中,一經編碼信號中不包括經編碼MV差異。
在這裡,如上述,MV推導模式包括正常框間模式、合併模式、FRUC模式、仿射模式等,其在下文有說明。模式之中有將一MV差異編碼之該等模式包括正常框間模式、仿射模式(具體而言,仿射框間模式)等。未將MV差異編碼之模式包括FRUC模式、合併模式、仿射模式(具體而言,仿射合併模式)等。框間預測器126從複數種模式選擇用於對目前區塊之一MV進行推導之一模式,並且使用所選擇之模式來推導目前區塊之MV。
(動作向量推導流程) 圖18係一流程圖,其繪示推導動作向量之另一實例。MV推導模式係框間預測模式,包括有複數種模式,並且係大致區分成有將MV差異編碼之模式、以及未將動作向量差異編碼之模式。未將MV差異編碼之模式包括合併模式、FRUC模式、仿射模式(具體而言,仿射合併模式)等。這些模式在下文有詳細說明。簡單地說,合併模式係用於藉由從一經編碼環繞區塊選擇一動作向量對一目前區塊之一MV進行推導之一模式,並且FRUC模式係用於藉由在經編碼區域之間進行估測對一目前區塊之一MV進行推導之一模式。仿射模式係一種用於對目前區塊中所包括之複數個子區塊中各子區塊之一動作向量,例如一目前區塊之一MV,進行推導、假設仿射變換之模式。
更具體而言,如圖示,當框間預測模式資訊指出0 (Sf_1中之0)時,框間預測器126使用合併模式來推導一動作向量(Sf_2)。當框間預測模式資訊指出1 (Sf_1中之1)時,框間預測器126使用FRUC模式來推導一動作向量(Sf_3)。當框間預測模式資訊指出2 (Sf_1中之2)時,框間預測器126使用仿射模式(具體而言,仿射合併模式)來推導一動作向量(Sf_4)。當框間預測模式資訊指出3 (Sf_1中之3)時,框間預測器126使用有將一MV差異編碼之一模式(例如:一正常框間模式)來推導一動作向量(Sf_5)。
(MV推導 > 正常框間模式) 正常框間模式係用於從由一MV候選者所指定之一參考圖片區域,基於與一目前區塊之影像類似之一區塊,對該目前區塊之一MV進行推導之一框間預測模式。在這種正常框間模式中,將一MV差異編碼。
圖19係一流程圖,其繪示框間預測在正常框間模式中之一實例。
首先,框間預測器126基於諸如時間上或空間上將目前區塊環繞之複數個經編碼區塊之MV等資訊,針對一目前區塊取得複數個MV候選者(步驟Sg_1)。換句話說,框間預測器126產生一MV候選者清單。
其次,框間預測器126根據一已定優先權順序,從在步驟Sg_1中取得之複數個MV候選者提取N (2或更大之一整數)個MV候選者,作為動作向量預測子候選者(亦稱為MV預測子候選者) (步驟Sg_2)。應知,可事先針對該N個MV候選者之各者確定優先權順序。
其次,框間預測器126從該N個動作向量預測子候選者選擇一個動作向量預測子候選者,作為目前區塊之動作向量預測子(亦稱為一MV預測子) (步驟Sg_3)。此時,框間預測器126在一串流中編碼用於識別所選擇之動作向量預測子的動作向量預測子選擇資訊。應知,如上述,該串流係一經編碼信號或一經編碼位元串流。
其次,框間預測器126藉由參照一經編碼參考圖片來推導一目前區塊之一MV(步驟Sg_4)。此時,框間預測器126在串流中進一步編碼經推導MV與動作向量預測子之間的差異作為一MV差異。應知,經編碼參考圖片係包括複數個區塊之一圖片,該等區塊已在經編碼之後被重構。
最後,框間預測器126使用經推導MV及經編碼參考圖片,藉由進行目前區塊之動作補償,針對目前區塊產生一預測影像(步驟Sg_5)。應知,預測影像係如上述之一框間預測信號。
另外,將用於產生預測影像之框間預測模式(以上實例中之正常框間模式)指出之資訊舉例而言,係經編碼作為一預測參數。
應知,MV候選者清單亦可用作為用在另一模式中之一清單。另外,可將與MV候選者清單有關之程序施用於與用在另一模式中之清單有關之程序。與MV候選者清單有關之程序舉例而言,包括從MV候選者清單提取或選擇一MV候選者、重排序MV候選者、或刪除一MV候選者。
(MV推導 > 合併模式) 合併模式係一框間預測模式,用於從一MV候選者清單選擇一MV候選者作為一目前區塊之一MV,藉此推導該MV。
圖20係一流程圖,其繪示框間預測在合併模式中之一實例。
首先,框間預測器126基於諸如時間上或空間上將目前區塊環繞之複數個經編碼區塊之MV等資訊,針對一目前區塊取得複數個MV候選者(步驟Sh_1)。換句話說,框間預測器126產生一MV候選者清單。
其次,框間預測器126從在步驟Sh_1中取得之複數個MV候選者選擇一個MV候選者,藉此推導目前區塊之一MV (步驟Sh_2)。此時,框間預測器126在一串流中編碼用於識別所選擇MV候選者的MV選擇資訊。
最後,框間預測器126使用經推導MV及經編碼參考圖片,藉由進行目前區塊之動作補償,針對目前區塊產生一預測影像(步驟Sh_3)。
另外,將用於產生預測影像之框間預測模式(以上實例中之合併模式)指出並且被包括在經編碼信號中之資訊舉例而言,係經編碼作為一預測參數。
圖21係一概念圖,用於繪示一目前圖片之一動作向量推導程序在合併模式中之一項實例。
首先,產生內有註冊MV預測子候選者之一MV候選者清單。MV預測子候選者之實例包括:空間鄰近MV預測子,其係空間上環繞一目前區塊設置之複數個經編碼區塊之MV;時間鄰近MV預測子,其係在其上有投射一目前區塊在一經編碼參考圖片中之位置的環繞區塊之MV;組合式MV預測子,其係藉由將一空間鄰近MV預測子之MV值與時間鄰近MV預測子之MV組合所產生之MV;以及一零MV預測子,其係具有一零值之一MV。
其次,一個MV預測子係選自於在一MV預測子清單中註冊之複數個MV預測子,並且所選擇MV預測子係判斷為一目前區塊之MV。
再者,可變長度編碼器在一串流中描述並編碼merge_idx,其係指出已選擇哪個MV預測子之一信號。
應知,圖21中所述在MV預測子清單中註冊之MV預測子係實例。MV預測子之數量可有別於圖中之MV預測子數量,MV預測子清單能以可不包括圖中一些種類之MV預測子的方式、或以包括圖中該等種類之MV預測子除外之一或多個MV預測子的方式被組配。
一最終MV可使用合併模式中所推導的目前區塊之MV,藉由進行要在下文說明之一解碼器動作向量細化程序(DMVR)來確定。
應知,MV預測子候選者係上述的MV候選者,並且MV預測子清單係上述的MV候選者清單。應知,MV候選者清單可稱為一候選者清單。另外,merge_idx係MV選擇資訊。
(MV推導 > FRUC模式) 動作資訊可在解碼器側被推導而不用從編碼器側被傳訊。應知,如上述,可使用在H.265/HEVC標準中定義之合併模式。另外,舉例而言,動作資訊可在解碼器側藉由進行動作估測來推導。在一實施例中,於解碼器側,進行動作估測而不使用一目前區塊中之任何像素值。
在這裡,說明用於在解碼器側進行動作估測之一模式。用於在解碼器側進行動作估測之模式可稱為一型樣匹配動作向量推導(PMMVD)模式,或一框率提升轉換(FRUC)模式。
圖22中繪示形式為一流程圖之一FRUC程序之一項實例。首先,藉由參照空間上或時間上與一目前區塊鄰近之一動作向量,產生複數個各具有一動作向量(MV)預測子之候選者之一清單(亦即,亦可用作為一合併清單之一MV候選者清單) (步驟Si_1)。其次,一最佳MV候選者係選自於在MV候選者清單中註冊之複數個MV候選者(步驟Si_2)。舉例而言,計算MV候選者清單中所包括之相應MV候選者之評估值,並且基於該等評估值來選擇一個MV候選者。基於所選擇之動作向量候選者,接著針對目前區塊推導一動作向量(步驟Si_4)。更具體而言,舉例來說,直接推導所選擇之動作向量候選者(最佳MV候選者)作為用於目前區塊之動作向量。另外,舉例而言,用於目前區塊之動作向量可使用一參考圖片中之一位置之一環繞區域中之型樣匹配來推導,其中該參考圖片中之該位置對應於所選擇之動作向量候選者。換句話說,可在最佳MV候選者之環繞區域中進行使用型樣匹配及評估值之估測,並且當有產出一更好評估值之一MV時,可將該最佳MV候選者更新為產出該更好評估值之MV,並且可將已更新之MV判斷為用於目前區塊之最終MV。一種其中不進行用於將最佳MV候選者更新成具有一更好評估值之MV的此一程序之組態亦為可能的。
最後,框間預測器126使用經推導MV及經編碼參考圖片,藉由進行目前區塊之動作補償,為目前區塊產生一預測影像(步驟Si_5)。
一類似程序可以一子區塊為單位來進行。
評估值可根據各種方法來計算。舉例而言,在對應於一動作向量之一參考圖片中之一區域中之一重構影像與一已定區域(該區域舉例而言,可以是另一參考圖片中之一區域、或一目前圖片之一鄰近區塊中之一區域,如下文所指)中之一重構影像之間施作一比較。該已定區域可被預定。
這兩個重構影像之像素值之間的差異可用於動作向量之一評估值。應知,一評估值可使用該差異之值除外之資訊來計算。
其次,詳細說明型樣匹配之一實例。首先,藉由型樣匹配來選擇一MV候選者清單(例如:一合併清單)中所包括之一個MV候選者作為估測之一起點。舉例而言,如型樣匹配,可擇一使用一第一型樣匹配或一第二型樣匹配。第一型樣匹配及第二型樣匹配亦分別稱為雙側匹配及模板匹配。
(MV推導 > FRUC > 雙側匹配) 在第一型樣匹配中,沿著一目前區塊之一動作軌跡在兩個區塊之間進行型樣匹配,這兩個區塊係不同之兩個參考圖片中之兩個區塊。因此,在第一型樣匹配中,沿著目前區塊之動作軌跡之另一參考圖片中之一區域係用作為用於對上述候選者之評估值進行計算之一已定區域。該已定區域可被預定。
圖23係一概念圖,用於繪示在兩個參考圖片中之兩個區塊之間沿著動作軌跡的第一型樣匹配(雙側匹配)之一項實例。如圖23所示,在第一型樣匹配中,兩個動作向量(MV0, MV1)係藉由估測一對來推導,該對在兩個不同參考圖片(Ref0, Ref1)中之兩個區塊中之多個對之中最佳匹配,這兩個區塊係沿著目前區塊(Cur區塊)之動作軌跡的兩個區塊。更具體而言,針對目前區塊推導由一MV候選者所指定之第一經編碼參考圖片(Ref0)中之一指定位置處之重構影像與藉由以一顯示時間間隔將MV候選者調整比例所取得之一對稱MV所指定之第二經編碼參考圖片(Ref1)中之一指定位置處之重構影像之間的一差異,並且使用所取得差異之值來計算一評估值。有可能在複數個MV候選者中選擇產出最佳評估值之MV候選者作為最終MV,並且其可能產生良好的結果。
在連續動作軌跡之假設中,指定兩個參考區塊之動作向量(MV0, MV1)係正比於目前圖片(Cur Pic)與該等兩個參考圖片(Ref0, Ref1)之間的時間距離(TD0, TD1)。舉例而言,當目前圖片在時間上位於兩個參考圖片之間、並且自目前圖片至相應兩個參考圖片之時間距離彼此相等時,在第一型樣匹配中推導鏡像對稱之雙向動作向量。
(MV推導 > FRUC > 模板匹配) 在第二型樣匹配(模板匹配)中,於一參考圖片中之一區塊與目前圖片中之一模板之間進行型樣匹配(該模板係目前圖片中與目前區塊鄰近之一區塊(舉例而言,該鄰近區塊係一(多個)上及/或左方鄰近區塊))。因此,在第二型樣匹配中,目前圖片中與目前區塊鄰近之區塊係用作為已定區域,用於計算上述候選者之評估值。
圖24係一概念圖,用於繪示介於一目前圖片中之一模板與一參考圖片中之一區塊之間的型樣匹配(模板匹配)之一項實例。如圖24所示,在第二型樣匹配中,目前區塊(Cur區塊)之動作向量係藉由在參考圖片(Ref0)中估測與目前圖片(Cur Pic)中目前區塊鄰近之區塊最佳匹配之區塊來推導。更具體而言,有可能推導一經編碼區域中鄰近左邊及上面兩者、或左邊或上面擇一之一重構影像與位在經編碼參考圖片(Ref0)中之一對應區域中且係由一MV候選者所指定之一重構影像之間的差異,一評估值係使用所取得差異之值來計算,並且在複數個MV候選者之中選擇產出最佳評估值之MV候選者作為最佳MV候選者。
此類指出是否要施用FRUC模式之資訊(舉例而言,稱為一FRUC旗標)可在CU層級傳訊。另外,當施用FRUC模式時(舉例而言,當一FRUC旗標成立時),指出可適用的型樣匹配方法(第一型樣匹配或第二型樣匹配擇一)之資訊能在CU層級傳訊。應知,此類資訊之傳訊不一定需要在CU層級進行,而是可在另一層級(舉例而言,在序列層級、圖片層級、切片層級、圖磚層級、CTU層級、或子區塊層級)進行。
(MV推導 > 仿射模式) 其次,說明用於基於複數個鄰近區塊之動作向量而以一子區塊為單位推導一動作向量之仿射模式。此模式亦稱為一仿射動作補償預測模式。
圖25A係一概念圖,用於繪示基於複數個鄰近區塊之動作向量對各子區塊之一動作向量進行推導之一項實例。在圖25A中,目前區塊包括十六個4×4子區塊。在此,目前區塊中一左上角控制點處之動作向量V0 係基於一鄰近區塊之一動作向量來推導,並且同樣地,目前區塊中一右上角控制點處之動作向量V1 係基於一鄰近子區塊之一動作向量來推導。兩個動作向量v0 及v1 可根據下文所指出之一表達式(1A)來投射,並且可推導用於目前區塊中之相應子區塊的動作向量(vx , vy )。
[數學式1]
Figure 02_image001
在這裡,x及y分別表示子區塊之水平位置及垂直位置,並且w表示一已定加權係數。該已定加權係數可被預定。
此類指出仿射模式之資訊(例如:稱為一仿射旗標)可在CU層級傳訊。應知,指出仿射模式之資訊之傳訊不一定需要在CU層級進行,而是可在另一層級(舉例而言,在序列層級、圖片層級、切片層級、圖磚層級、CTU層級、或子區塊層級)進行。
另外,仿射模式可針對不同方法包括數種模式,用於在左上角及右上角控制點處推導動作向量。舉例而言,仿射模式包括仿射框間模式(亦稱為一仿射正常框間模式)及仿射合併模式這兩種模式。
(MV推導 > 仿射模式) 圖25B係一概念圖,用於繪示對各子區塊在內有使用三個控制點之仿射模式中之一動作向量進行推導之一項實例。在圖25B中,目前區塊包括十六個4×4區塊。在這裡,目前區塊在左上角控制點處之動作向量V0 係基於一鄰近區塊之一動作向量來推導,而同樣地,目前區塊在右上角控制點處之動作向量V1 係基於一鄰近區塊之一動作向量來推導,並且目前區塊在左下角控制點處之動作向量V2 係基於一鄰近區塊之一動作向量來推導。三個動作向量v0 、v1 、以及v2 可根據下文所指出之一表達式(1B)來投射,並且可推導用於目前區塊中之相應子區塊的動作向量(vx , vy )。
[數學式2]
Figure 02_image003
在這裡,x及y分別表示子區塊之中心之水平位置及垂直位置,w表示目前區塊之寬度,並且h表示目前區塊之高度。
可在CU層級切換並傳訊所用控制點數量不同(例如:兩個及三個控制點)之仿射模式。應知,指出在CU層級所用的仿射模式中控制點數量之資訊可在另一層級(舉例而言,序列層級、圖片層級、切片層級、圖磚層級、CTU層級、或子區塊層級)傳訊。
另外,使用三個控制點之此一仿射模式可包括用於在左上、右上、及左下角控制點處推導動作向量之不同方法。舉例而言,仿射模式包括仿射框間模式(亦稱為仿射正常框間模式)及仿射合併模式這兩種模式。
(MV推導 > 仿射合併模式) 圖26A、圖26B、以及圖26C係概念圖,用於繪示仿射合併模式。
如圖26A所示,在仿射合併模式中,舉例而言,一目前區塊之各別控制點處之動作向量預測子係基於與根據鄰近目前區塊之經編碼區塊A (左)、區塊B (上)、區塊C (右上)、區塊D (左下)、及區塊E (左上)之中的仿射模式所編碼之區塊對應之複數個動作向量來計算。更具體而言,依照所列順序檢查經編碼區塊A (左)、區塊B (上)、區塊C (右上)、區塊D (左下)、以及區塊E (左上),並且識別根據仿射模式編碼之第一有效區塊。目前區塊之控制點處之動作向量預測子係基於對應於經識別區塊之複數個動作向量來計算。
舉例而言,如圖26B所示,當與目前區塊之左邊鄰近之區塊A已根據使用兩個控制點之一仿射模式來編碼時,推導包括區塊A之經編碼區塊之左上角位置及右上角位置處投射之動作向量v3 及v4 。接著從經推導動作向量v3 及v4 計算目前區塊之左上角控制點處之動作向量預測子v0 、及目前區塊之右上角控制點處之動作向量預測子v1
舉例而言,如圖26C所示,當與目前區塊之左邊鄰近之區塊A已根據使用三個控制點之一仿射模式來編碼時,推導包括區塊A之經編碼區塊之左上角位置、右上角位置、及左下角位置處投射之動作向量v3 及v4 、及v5 。接著從經推導動作向量v3 、v4 、及v5 計算目前區塊之左上角控制點處之動作向量預測子v0 、目前區塊之右上角控制點處之動作向量預測子v1 、及目前區塊之左下角控制點處之動作向量預測子v2
應知,這種用於推導動作向量預測子之方法可用於在之後說明的圖29之步驟Sj_1中推導目前區塊之各別控制點之動作向量預測子。
圖27係一流程圖,其繪示仿射合併模式中之一項實例。
在如圖示之仿射合併模式中,首先,框間預測器126推導一目前區塊之各別控制點之MV預測子(步驟Sk_1)。該等控制點如圖25A所示係目前區塊之一左上角控制點、及目前區塊之一右上角控制點,或如圖25B所示係目前區塊之一左上角控制點、目前區塊之一右上角控制點、及目前區塊之一左下角控制點。
換句話說,如圖26A所示,框間預測器126依照所列順序檢查經編碼區塊A (左)、區塊B (上)、區塊C (右上)、區塊D (左下)、以及區塊E (左上),並且識別根據仿射模式編碼之第一有效區塊。
當區塊A經識別且區塊A具有兩個控制點時,如圖26B所示,框間預測器126從包括區塊A之經編碼區塊之左上角及右上角處之動作向量v3 及v4 ,計算目前區塊之左上角控制點處之動作向量v0 、及目前區塊之右上角控制點處之動作向量v1 。舉例而言,框間預測器126藉由將經編碼區塊之左上角及右上角處之動作向量v3 及v4 投射到目前區塊上,來計算目前區塊之左上角控制點處之動作向量v0 、及目前區塊之右上角控制點處之動作向量v1
替代地,當區塊A經識別且區塊A具有三個控制點時,如圖26C所示,框間預測器126從包括區塊A之經編碼區塊之左上角、右上角、及左下角處之動作向量v3 、v4 、及v5 ,計算目前區塊之左上角控制點處之動作向量v0 、目前區塊之右上角控制點處之動作向量v1 、及目前區塊之左下角控制點處之動作向量v2 。舉例而言,框間預測器126藉由將經編碼區塊之左上角、右上角、及左下角處之動作向量v3 、v4 、及v5 投射到目前區塊上,來計算目前區塊之左上角控制點處之動作向量v0 、目前區塊之右上角控制點處之動作向量v1 、及目前區塊之左下角控制點處之動作向量v2
其次,框間預測器126進行目前區塊中所包括之複數個子區塊之各者之動作補償。換句話說,框間預測器126藉由擇一使用(i)兩個動作向量預測子v0 與v1 及上述的表達式(1A)、或(ii)三個動作向量預測子v0 、v1 與v2 及上述的表達式(1B),來針對複數個子區塊之各者計算該子區塊之一動作向量作為一仿射MV (步驟Sk_2)。框間預測器126接著使用這些仿射MV及經編碼參考圖片來進行該等子區塊之動作補償(步驟Sk_3)。結果是,進行目前區塊之動作補償以產生目前區塊之一預測影像。
(MV推導 > 仿射框間模式) 圖28A係一概念圖,用於繪示內有使用兩個控制點之一仿射框間模式。
在仿射框間模式中,如圖28A所示,從與目前區塊鄰近之經編碼區塊A、區塊B、及區塊C之動作向量選擇之一動作向量係用作為目前區塊之左上角控制點處之動作向量預測子v0 。同樣地,從與目前區塊鄰近之經編碼區塊D及區塊E之動作向量選擇之一動作向量係用作為目前區塊之右上角控制點處之動作向量預測子v1
圖28B係一概念圖,用於繪示內有使用三個控制點之一仿射框間模式。
在仿射框間模式中,如圖28B所示,從與目前區塊鄰近之經編碼區塊A、區塊B、及區塊C之動作向量選擇之一動作向量係用作為目前區塊之左上角控制點處之動作向量預測子v0 。同樣地,從與目前區塊鄰近之經編碼區塊D及區塊E之動作向量選擇之一動作向量係用作為目前區塊之右上角控制點處之動作向量預測子v1 。再者,從與目前區塊鄰近之經編碼區塊F及區塊G之動作向量選擇之一動作向量係用作為目前區塊之左下角控制點處之動作向量預測子v2
圖29係一流程圖,其繪示一仿射框間模式之一項實例。
在如圖所示之仿射框間模式中,首先,框間預測器126推導一目前區塊之各別兩個或三個控制點之MV預測子(v0 , v1 )或(v0 , v1 , v2 ) (步驟Sj_1)。該等控制點如圖25A所示係目前區塊之一左上角控制點、及目前區塊之一右上角控制點,或如圖25B所示係目前區塊之一左上角控制點、目前區塊之一右上角控制點、及目前區塊之一左下角控制點。
換句話說,框間預測器126藉由選擇圖28A或圖28B中擇一所示目前區塊之各別控制點附近經編碼區塊之中任何區塊之動作向量,來推導目前區塊之各別兩個或三個控制點之動作向量預測子(v0 , v1 )或(v0 , v1 , v2 )。此時,框間預測器126在一串流中編碼用於識別所選擇之兩個動作向量的動作向量預測子選擇資訊。
舉例而言,框間預測器126可使用一成本評估或類似者來確定從與目前區塊鄰近之經編碼區塊中選擇一動作向量作為一控制點處之一動作向量預測子的區塊,並且可在一位元串流中,描述指出已選擇哪個動作向量預測子之一旗標。
其次,框間預測器126進行動作估測(步驟Sj_3及Sj_4),同時更新在步驟Sj_1 (步驟Sj_2)中選擇或推導之一動作向量預測子。換句話說,框間預測器126擇一使用上述的表達式(1A)或表達式(1B),來計算對應於一已更新動作向量預測子之各子區塊之動作向量,作為一仿射MV (步驟Sj_3)。框間預測器126接著使用這些仿射MV及經編碼參考圖片來進行該等子區塊之動作補償(步驟Sj_4)。結果是,舉例而言,框間預測器126確定產出最小成本之動作向量預測子,作為一動作估測迴圈中一控制點處之動作向量(步驟Sj_5)。此時,框間預測器126在串流中進一步編碼已定MV與動作向量預測子之間的差異值作為一MV差異。
最後,框間預測器126使用已定MV及經編碼參考圖片,藉由進行目前區塊之動作補償,針對目前區塊產生一預測影像(步驟Sj_6)。
(MV推導 > 仿射框間模式) 當可在CU層級切換並傳訊所用控制點數量不同(例如:兩個及三個控制點)之仿射模式時,一經編碼區塊中之控制點數量與一目前區塊中之控制點數量可彼此不同。圖30A及圖30B係概念圖,用於繪示當一經編碼區塊中之控制點數量與一目前區塊中之控制點數量彼此不同時,用於推導控制點處動作向量預測子之方法。
舉例而言,如圖30A所示,當一目前區塊在左上角、右上角、及左下角處具有三個控制點,並且與目前區塊之左邊鄰近之區塊A已根據使用兩個控制點之一仿射模式來編碼時,推導包括區塊A之經編碼區塊中左上角位置及右上角位置處投射之動作向量v3 及v4 。接著從經推導動作向量v3 及v4 計算目前區塊之左上角控制點處之動作向量預測子v0 、及目前區塊之右上角控制點處之動作向量預測子v1 。再者,從經推導動作向量v0 及v1 計算出左下角控制點處之動作向量預測子v2
舉例而言,如圖30B所示,當一目前區塊在左上角及右上角處具有兩個控制點,並且與目前區塊之左邊鄰近之區塊A已根據使用三個控制點之仿射模式來編碼時,推導包括區塊A之經編碼區塊中左上角位置、右上角位置、及左下角位置處投射之動作向量v3 及v4 、及v5 。接著從經推導動作向量v3 、v4 、及v5 計算目前區塊之左上角控制點處之動作向量預測子v0 、及目前區塊之右上角控制點處之動作向量預測子v1
應知,這種用於推導動作向量預測子之方法可用於在圖29之步驟Sj_1中推導目前區塊之各別控制點之動作向量預測子。
(MV推導 > DMVR) 圖31A係一流程圖,其繪示合併模式與DMVR之間的一關係。
框間預測器126根據合併模式來推導一目前區塊之一動作向量(步驟Sl_1)。其次,框間預測器126判斷是否要進行一動作向量之估測,即動作估測(步驟Sl_2)。在這裡,當確定不要進行動作估測(步驟Sl_2為否)時,框間預測器126將步驟Sl_1中推導之動作向量確定為用於目前區塊之最終動作向量(步驟Sl_4)。換句話說,在這種狀況中,目前區塊之動作向量係根據合併模式來確定。
當在步驟Sl_1中確定要進行動作估測(步驟Sl_2為是)時,框間預測器126藉由對由步驟Sl_1中所推導的動作向量所指定之參考圖片之一環繞區域進行估測來針對目前區塊推導最終動作向量(步驟Sl_3)。換句話說,在這種狀況中,目前區塊之動作向量係根據DMVR來確定。
圖31B係一概念圖,用於繪示用於確定一MV之一DMVR程序之一項實例。
首先,(舉例而言,在合併模式中),將已設定為目前區塊之最佳MVP確定為一MV候選者。從一第一參考圖片(L0)識別一參考像素,該第一參考圖片係根據一MV候選者(LO)在LO方向上之一經編碼圖片。同樣地,從一第二參考圖片(L1)識別一參考像素,該第二參考圖片係根據一MV候選者(L1)在L1方向上之一經編碼圖片。一模板係藉由計算這些參考像素之一平均所產生。
其次,估測第一參考圖片(L0)及第二參考圖片(L1)之MV候選者之各環繞區域,並且將產出最小成本之MV確定係要為最終MV。應知,成本值舉例而言,可使用模板中之各像素值與估測區域中之一對應像素值、MV候選者之值等之間的一差異來計算。
應知,通常這裡所述之程序、組態及操作在將於下文說明之編碼器與一解碼器之間基本上共用。
確實並非總是需要進行這裡所述之相同例示性程序。可使用能夠藉由在MV候選者之環繞區域中進行估測來推導最終MV之任何程序。
(動作補償 > BIO/OBMC) 動作補償涉及用於產生一預測影像、以及校正該預測影像之一模式。該模式舉例而言,係將在下文說明之BIO及OBMC。
圖32係一流程圖,其繪示產生一預測影像之一項實例。
框間預測器126產生一預測影像(步驟Sm_1),並且舉例而言,根據上述之任何模式來校正該預測影像(步驟Sm_2)。
圖33係一流程圖,其繪示產生一預測影像之另一實例。
框間預測器126確定一目前區塊之一動作向量(步驟Sn_1)。其次,框間預測器126產生一預測影像(步驟Sn_2),並且判斷是否要進行一校正程序(步驟Sn_3)。在這裡,當確定要進行一校正程序(步驟Sn_3為是)時,框間預測器126藉由校正預測影像來產生最終預測影像(步驟Sn_4)。當確定不要進行一校正程序(步驟Sn_3為否)時,框間預測器126輸出預測影像作為最終預測影像而不校正預測影像(步驟Sn_5)。
另外,動作補償涉及用於在產生一預測影像時對該預測影像之亮度進行校正之一模式。該模式舉例而言,係將在下文說明之LIC。
圖34係一流程圖,其繪示產生一預測影像之另一實例。
框間預測器126推導一目前區塊之一動作向量(步驟So_1)。其次,框間預測器126判斷是否要進行亮度校正程序(步驟So_2)。在這裡,當確定要進行一亮度校正程序(步驟So_2為是)時,框間預測器126在進行一亮度校正程序時產生預測影像(步驟So_3)。換句話說,預測影像係使用LIC所產生。當確定不要進行一亮度校正程序(步驟So_2為否)時,框間預測器126藉由進行正常動作補償而非進行一亮度校正程序來產生一預測影像(步驟So_4)。
(動作補償 > OBMC) 應知,除了用於從動作估測所取得之目前區塊的動作資訊以外,還可使用用於一鄰近區塊的動作資訊來產生一框間預測信號。更具體而言,框間預測信號可藉由對(參考圖片中)基於從動作估測取得之動作資訊之一預測信號、以及(目前圖片中)基於用於一鄰近區塊之動作資訊之一預測信號進行一加權相加,以目前區塊中之一子區塊為單位來產生。此類框間預測(動作補償)亦稱為重疊區塊動作補償(OBMC)。
在OBMC模式中,針對OBMC指出一子區塊尺寸之資訊(舉例而言,稱為一OBMC區塊尺寸)可在序列層級傳訊。此外,指出是否要施用OBMC模式之資訊(舉例而言,稱為一OBMC旗標)可在CU層級傳訊。應知,此類資訊之傳訊不一定需要在序列層級及CU層級進行,而是可在另一層級(舉例而言,在圖片層級、切片層級、圖磚層級、CTU層級、或子區塊層級)進行。
將進一步詳細說明OBMC模式之實例。圖35及36係一流程圖及一概念圖,用於繪示藉由一OBMC程序來進行之一預測影像校正程序之一略述。
首先,如圖36所示,一預測影像(Pred)係使用指派給處理目標(目前)區塊之動作向量(MV),透過正常動作補償所取得。在圖36中,箭頭「MV」指向一參考圖片,並且指出目前圖片之目前區塊所參照者,以便取得一預測影像。
其次,一預測影像(Pred_L)係藉由將已經針對與目前區塊之左邊鄰近之經編碼區塊推導之一動作向量(MV_L)施用於目前區塊(針對目前區塊再利用動作向量)來取得。動作向量(MV_L)係藉由從一目前區塊指出一參考圖片之一箭頭「MV_L」來指出。一預測影像之一第一校正係藉由重疊兩個預測影像Pred與Pred_L來進行。這提供將鄰近區塊之間的邊界混合之一效應。
同樣地,一預測影像(Pred_U)係藉由將已經針對鄰近目前區塊上面之經編碼區塊所推導之一動作向量(MV_U)施用於目前區塊(針對目前區塊再利用動作向量)來取得。動作向量(MV_U)係藉由從一目前區塊指出一參考圖片之一箭頭「MV_U」來指出。一預測影像之一第二校正係藉由將預測影像Pred_U重疊至其上已進行第一校正之預測影像(例如:Pred與Pred_L)來進行。這提供將鄰近區塊之間的邊界混合之一效應。藉由第二校正所取得之預測影像係在其內已將該等鄰近區塊之間的邊界混合(平滑化)之一個預測影像,而因此係目前區塊之最終預測影像。
雖然以上實例係使用左方及上方鄰近區塊之一雙路徑校正方法,應知,該校正方法仍可以是亦使用右方鄰近區塊及/或下方鄰近區塊之三路徑或更多路徑校正方法。
應知,在其內有進行此類重疊之區域可以僅是一區塊邊界附近之一區域之部分,而不是整個區塊之像素區域。
應知,以上已說明根據OBMC用於藉由重疊附加預測影像Pred_L與Pred_U從一個參考圖片取得一個預測影像Pred之預測影像校正程序。然而,當預測影像係基於複數個參考影像來校正時,可將一類似程序施用於複數個參考圖片之各者。在此一狀況中,基於複數個參考圖片藉由進行OBMC影像校正從各別參考圖片取得已校正預測影像之後,將所取得之已校正預測影像進一步重疊以取得最終預測影像。
應知,在OBMC中,一目前區塊之單位可以是一預測區塊之單位或藉由進一步拆分該預測區塊所取得之一子區塊之單位。
用於判斷是否要施用一OBMC程序之一方法之一項實例係用於使用一obmc_flag之一方法,該obmc_flag係指出是否要施用一OBMC程序之一信號。舉一特定實例來說,一編碼器判斷目前區塊是否屬於具有複雜動作之一區域。該編碼器在區塊屬於具有複雜動作之一區域時將obmc_flag設為一「1」值,並且在編碼時施用一OBMC程序,以及在區塊不屬於具有複雜動作之一區域時將obmc_flag設定為一「0」值,並且未施用一OBMC程序而將區塊編碼。解碼器藉由解碼被寫入串流(例如:一經壓縮序列)之obmc_flag、以及透過根據旗標值在施用與不施用一OBMC程序之間切換將區塊解碼而在施用與不施用該OBMC程序之間切換。
框間預測器126針對以上實例中之一矩形目前區塊產生一個矩形預測影像。然而,框間預測器126可針對該矩形目前區塊產生複數個各具有與一矩形不同之一形狀的預測影像,並且可組合該等複數個預測影像以產生最終矩形預測影像。與矩形不同之形狀舉例而言,可以是一三角形。
圖37係一概念圖,用於繪示兩個三角形預測影像之產生。
框間預測器126藉由使用在一目前區塊中具有三角形形狀之一第一分區之一第一MV,由對該第一分區進行動作補償來產生一三角形預測影像,以產生三角形預測影像。同樣地,框間預測器126藉由使用在一目前區塊中具有三角形形狀之一第二分區之一第二MV,由對該第二分區進行動作補償來產生一三角形預測影像,以產生三角形預測影像。框間預測器126接著藉由組合這些預測影像來產生與目前區塊之矩形形狀具有相同矩形形狀之一預測影像。
應知,雖然第一分區與第二分區在圖37所示之實例中係三角形,第一分區與第二分區仍可以是梯形、或彼此不同之其它形狀。再者,雖然在圖37所示之實例中目前區塊包括兩個分區,該目前區塊仍可包括三個或更多個分區。
另外,第一分區與第二分區可彼此重疊。換句話說,第一分區與第二分區可包括相同像素區域。在這種狀況中,用於一目前區塊之一預測影像可使用第一分區中之一預測影像及第二分區中之一預測影像來產生。
另外,雖然一實例中一預測影像係使用框間預測針對兩個分區之各者來產生,一預測影像仍可使用框內預測針對至少一個分區來產生。
(動作補償 > BIO) 其次,說明用於推導一動作向量之一方法。首先,將說明用於基於假設均勻直線動作之一模型來推導一動作向量之一模式。此模式亦稱為一雙向光流(BIO)模式。
圖38係一概念圖,用於繪示假設均勻線性動作之一模型。在圖38中,(vx, vy)表示一速度向量,並且τ0及τ1表示一目前圖片(Cur Pic)與兩個參考圖片(Ref0, Ref1)之間的時間距離。(MVx0, MVy0)表示對應於參考圖片Ref0之動作向量,並且(MVx1, MVy1)表示對應於參考圖片Ref1之動作向量。
在這裡,假設由速度向量(vx , vy )、(MVx0 , MVy0 )及(MVx1 , MVy1 )所呈現之均勻線性動作係分別表示為(vx τ0 , vy τ0 )及(-vx τ1 , -vy τ1 ),並且可運用以下光流方程式(2)。
[數學式3]
Figure 02_image005
在這裡,I(k)表示參考圖片k (k = 0, 1)之一經動作補償亮度值。此光流方程式顯示(i)亮度值之時間導數、(ii)一參考影像之空間梯度之水平速度與水平分量之乘積、及(iii)一參考影像之空間梯度之垂直速度與垂直分量之乘積的總和係等於零。從例如一合併清單取得之各區塊之一動作向量可基於光流方程式及赫米特內插法之一組合,以一像素為單位來校正。
應知,可使用基於一模型假設均勻直線動作推導一動作向量除外之一方法,在解碼器側上推導一動作向量。舉例而言,一動作向量可基於鄰近區塊之動作向量,以一子區塊為單位來推導。
(動作補償 > LIC) 其次,將說明藉由使用一局部照明補償(LIC)程序來產生一預測影像(預測)之一模式之一實例。
圖39係一概念圖,用於繪示一預測影像產生方法之一項實例,該預測影像產生方法使用藉由一LIC程序進行之一亮度校正程序。
首先,一MV係推導自一經編碼參考圖片,並且取得對應於目前區塊之一參考影像。
其次,針對目前區塊提取指出參考圖片與目前圖片之間如何變更亮度值之資訊。此提取係針對經編碼左鄰近參考區域(環繞參考區域)及經編碼上鄰近參考區域(環繞參考區域)、以及經推導MV所指定之參考圖片中對應位置處之亮度像素值,基於亮度像素值來進行。一亮度校正參數係藉由使用指出亮度值如何變更之資訊來計算。
用於目前區塊之預測影像係藉由進行一亮度校正程序所產生,其中亮度校正參數係施用於由MV所指定之參考圖片中之參考影像。
應知,圖39所示環繞參考區域之形狀只是一項實例;該環繞參考區域可具有一不同形狀。
此外,雖然已在這裡說明從單一參考圖片產生一預測影像之程序,仍可採用相同方式說明從複數個參考圖片產生一預測影像之狀況。預測影像可在對採用如同上述之方式從參考圖片取得之參考影像進行一亮度校正程序之後產生。
用於判斷是否要施用一LIC程序之一方法之一項實例係用於使用一lic_flag之一方法,該lic_flag係指出是否要施用該LIC程序之一信號。舉一特定實例來說,編碼器判斷目前區塊是否屬於具有一亮度變更之一區域。編碼器在區塊屬於具有一亮度變更之一區域時將lic_flag設為一「1」值,並且在編碼時施用一LIC程序,以及在區塊不屬於具有一亮度變更之一區域時將lic_flag設定為一「0」值,並且未施用一LIC程序而將目前區塊編碼。解碼器可解碼被寫入串流之lic_flag,並且根據旗標值,藉由在施用與不施用一LIC程序之間切換來解碼目前區塊。
判斷是否要施用一LIC程序之一不同方法之一項實例係根據是否要將一LIC程序施用於一環繞區塊之一判斷方法。在一項具體實例中,當在目前區塊上使用合併模式時,判斷是否在合併模式程序中進行MV推導時所選擇之環繞經編碼區塊之編碼中施用一LIC程序。根據結果,編碼係藉由在施用與不施用一LIC程序之間切換來進行。應知,同樣在這項實例中,解碼器側之程序中是施用相同的程序。
下文詳細說明參照圖39所述之亮度校正(LIC)程序之一實施例。
首先,框間預測器126推導一動作向量,用於從係為一經編碼圖片之一參考圖片,取得與要編碼之一目前區塊對應之一參考影像。
其次,框間預測器126使用與目前區塊左邊或上面鄰近之一經編碼環繞參考區域之亮度像素值、以及由一動作向量所指定之參考圖片中對應位置中之亮度值,提取將參考圖片之亮度值已如何變更為目前圖片之亮度值指出之資訊,並且計算一亮度校正參數。舉例而言,假設目前圖片中之環繞參考區域中之一給定像素之亮度像素值係p0,以及與參考圖片中之環繞參考區域中之給定像素對應之像素之亮度像素值係p1。框間預測器126針對環繞參考區域中之複數個像素,計算係數A及B,用於最佳化A × p1 + B = p0作為亮度校正參數。
其次,框間預測器126使用用於由動作向量所指定之參考圖片中之參考影像的亮度校正參數來進行亮度校正程序,以產生用於目前區塊之一預測影像。舉例而言,假設參考影像中之亮度像素值係p2,以及預測影像之經亮度校正之亮度像素值係p3。框間預測器126藉由對參考影像中各像素計算A × p2 + B = p3,在經受亮度校正程序之後產生預測影像。
應知,圖39中所示環繞參考區域之形狀係一項實例;可使用環繞參考區域之形狀除外之一不同形狀。另外,可使用圖39中所示之部分環繞參考區域。舉例而言,可將具有從一上鄰近像素及一左鄰近像素之各者提取之已定像素數量的一區域用作為一環繞參考區域。該已定像素數量可被預定。
另外,環繞參考區域不受限於鄰近目前區塊之一區域,並且可以是不鄰近目前區塊之一區域。在圖39所示之實例中,參考圖片中之環繞參考區域係一目前圖片中由一動作向量所指定之一區域,來自目前圖片中之一環繞參考區域。然而,由另一動作向量所指定之一區域亦為可能的。舉例而言,另一動作向量可以是在目前圖片中之一環繞參考區域中之一動作向量。
雖然已在這裡說明由編碼器100所進行之操作,應知,解碼器200通常仍進行類似的操作。
應知,LIC程序不僅可被施用於亮度,還可被施用於色度。此時,可個別針對Y、Cb及Cr之各者推導一校正參數,或可將一共用校正參數使用於Y、Cb及Cr中之任何一者。
另外,LIC程序可以一子區塊為單位來施用。舉例而言,一校正參數可在由目前子區塊之一MV所指定之一參考圖片中,使用一目前子區塊中之一環繞參考區域、及一參考子區塊中之一環繞參考區域來推導。
(預測控制器) 框間預測器128選擇一內預測信號(輸出自框內預測器124之一信號)及一框間預測信號(輸出自框間預測器126之一信號)其中一者,並且將所選擇信號輸出至減法器104及加法器116作為一預測信號。
如圖1所示,在各種編碼器實例中,預測控制器128可輸出一預測參數,其被輸入至熵編碼器110。熵編碼器110可基於從預測控制器128輸入之預測參數、及從量化器108輸入之量化係數來產生一經編碼位元串流(或一序列)。可在一解碼器中使用該預測參數。該解碼器可接收並解碼經編碼位元串流,並進行與藉由框內預測器124、框間預測器126、及預測控制器128所進行之預測程序相同之程序。預測參數可包括(i)一選擇預測信號(例如:由框內預測器124或框間預測器126所使用之一動作向量、一預測類型、或一預測模式)、或(ii)一任選索引、一旗標、或一值,其係基於框內預測器124、框間預測器126、及預測控制器128之各者中所進行之一預測程序、或其指出該預測程序。
(編碼器安裝實例) 圖40係一方塊圖,其繪示編碼器100之一安裝實例。編碼器100包括處理器a1及記憶體a2。舉例而言,圖1中所示編碼器100之複數個構成元件係安裝在圖40所示之處理器a1及記憶體a2上。
處理器a1係進行資訊處理並且可存取記憶體a2之一電路系統。舉例而言,處理器a1係將一視訊編碼之專屬或通用電子電路系統。處理器a1可以是諸如一CPU之一處理器。另外,處理器a1可以是複數個電子電路之一集合體。另外,舉例而言,處理器a1可扮演的角色為:圖1所示編碼器100之複數個構成元件中之二或更多個構成元件等。
記憶體a2係用於儲存資訊之專屬或通用記憶體,該資訊係由處理器a1使用來編碼一視訊。記憶體a2可以是電子電路系統,並且可被連接至處理器a1。另外,可在處理器a1中包括記憶體a2。另外,記憶體a2可以是複數個電子電路之一集合體。另外,記憶體a2可以是一磁碟、一光碟、或類似者,或可被表示為一儲存器、一記錄媒體、或類似者。另外,記憶體a2可以是非依電性記憶體、或依電性記憶體。
舉例而言,記憶體a2可儲存要編碼之一視訊或對應於一經編碼視訊之一位元串流。另外,記憶體a2可儲存用於致使處理器a1來編碼一視訊之一程式。
另外,舉例而言,記憶體a2可扮演的角色為:圖1所示編碼器100之複數個構成元件中用於儲存資訊之二或更多個構成元件等。舉例而言,記憶體a2可扮演圖1所示區塊記憶體118及圖框記憶體122之角色。更具體而言,記憶體a2可儲存一重構區塊、一重構圖片等。
應知,在編碼器100中,可不實施所有圖1中所指出之複數個構成元件等,並且可不進行所有上述之程序。部分圖1所指出之構成元件等可被包括在另一裝置中,或部分上述之程序可藉由另一裝置來進行。
(解碼器) 其次,將說明能夠對例如從上述編碼器100輸出之一經編碼信號(經編碼位元串流)進行解碼之一解碼器。圖41係一方塊圖,其根據一實施例繪示一解碼器200之一功能組態。解碼器200係以一區塊為單位來解碼一視訊之一視訊解碼器。
如圖41所示,解碼器200包括熵解碼器202、逆量化器204、逆變換器206、加法器208、區塊記憶體210、迴路濾波器212、圖框記憶體214、框內預測器216、框間預測器218、以及預測控制器220。
將解碼器200實施成例如一通用處理器及記憶體。在這種狀況中,當儲存在該記憶體中之一軟體程式係由該處理器執行時,該處理器作用為熵解碼器202、逆量化器204、逆變換器206、加法器208、迴路濾波器212、框內預測器216、框間預測器218、以及預測控制器220。替代地,可將解碼器200實施成對應於熵解碼器202、逆量化器204、逆變換器206、加法器208、迴路濾波器212、框內預測器216、框間預測器218、以及預測控制器220之一或多個專屬電子電路。
下文說明由解碼器200進行之程序之一總體流程,然後將說明解碼器200中所包括之各構成元件。
(解碼程序之總體流程) 圖42係一流程圖,其繪示藉由解碼器200來進行之一總體解碼程序之一項實例。
首先,解碼器200之熵解碼器202識別具有一固定尺寸(例如:128×128個像素)之一區塊之一拆分型樣(步驟Sp_1)。此拆分型樣係藉由編碼器100所選擇之一拆分型樣。解碼器200接著針對拆分型樣之複數個區塊之各者進行步驟Sp_2至Sp_6之程序。
換句話說,熵解碼器202解碼(具體而言,熵解碼)要解碼之一目前區塊(亦稱為一目前區塊)之經編碼量化係數及一預測參數(步驟Sp_2)。
其次,逆量化器204進行該等複數個經量化係數之逆量化,並且逆變換器206進行結果之逆變換,以還原複數個預測殘差(即一差異區塊) (步驟Sp_3)。
其次,包括全部或部分的框內預測器216、框間預測器218、及預測控制器220之預測處理器產生目前區塊之一預測信號(亦稱為一預測區塊) (步驟Sp_4)。
其次,加法器208將預測區塊與差異區塊相加,以產生目前區塊之一重構影像(亦稱為一經解碼影像塊) (步驟Sp_5)。
當產生該重構影像時,迴路濾波器212對該重構影像進行濾波(步驟Sp_6)。
解碼器200接著判斷整個圖片之解碼是否已被完成(步驟Sp_7)。當確定解碼尚未被完成(步驟Sp_7為否)時,解碼器200以步驟Sp_1為起始重複地執行該等程序。
如圖示,步驟Sp_1至Sp_7之程序係藉由解碼器200來循序地進行。替代地,可平行地進行該等程序中之二或更多個程序、可修改該等程序中之二或更多個程序之處理順序等。
(熵解碼器) 熵解碼器202熵解碼一經編碼位元串流。更具體而言,舉例而言,熵解碼器202將一經編碼位元串流算術解碼成一二元信號。熵解碼器202接著解二元化(debinarize)該二元信號。憑藉於此,熵解碼器202將各區塊之經量化係數輸出至逆量化器204。熵解碼器202可將包括在一經編碼位元串流中之一預測參數(參見圖1)輸出至框內預測器216、框間預測器218、及預測控制器220。在一實施例中,框內預測器216、框間預測器218、及預測控制器220能夠執行與藉由編碼器側之框內預測器124、框間預測器126、及預測控制器128所進行之預測程序相同之預測程序。
(逆量化器) 逆量化器204逆量化要解碼之一區塊(下文稱為一目前區塊)之經量化係數,該等經量化係數係從熵解碼器202輸入。更具體而言,逆量化器204基於對應於經量化係數之量化參數,逆量化目前區塊之經量化係數。逆量化器204接著將目前區塊之經逆量化變換係數輸出至逆變換器206。
(逆變換器) 逆變換器206藉由逆變換從逆量化器204輸入之變換係數來還原預測誤差。
舉例而言,當從一經編碼位元串流剖析出之資訊指出要施用EMT或AMT時(舉例而言,當一AMT旗標成立時),逆變換器206基於指出經剖析變換類型之資訊來逆變換目前區塊之變換係數。
此外,舉例而言,當從一經編碼位元串流剖析出之資訊指出要施用NSST時,逆變換器206將一次級逆變換施用於變換係數。
(加法器) 加法器208藉由將係為來自逆變換器206之輸入的預測誤差與係為來自預測控制器220之輸入的預測樣本相加來重構目前區塊。加法器208接著將重構區塊輸出至區塊記憶體210及迴路濾波器212。
(區塊記憶體) 區塊記憶體210係用於將一圖片(下文稱為一目前圖片)中之區塊儲存之儲存器,該等區塊要被解碼且要在框內預測中被參照。更具體而言,區塊記憶體210儲存從加法器208輸出之重構區塊。
(迴路濾波器) 迴路濾波器212將一迴路濾波施用於藉由加法器208重構之區塊,並且將經濾波重構區塊輸出至圖框記憶體214、顯示裝置等。
當將從一經編碼位元串流剖析出之一ALF之ON或OFF指出之資訊指出一ALF為ON時,基於局部梯度之方向及活性從複數個濾波中選擇一個濾波,並且將所選擇之濾波施用於重構區塊。
(圖框記憶體) 圖框記憶體214舉例而言,係用於將框間預測中所用之參考圖片儲存之儲存器,並且亦稱為一圖框緩衝器。更具體而言,圖框記憶體214儲存由迴路濾波器212濾波之一重構區塊。
(預測處理器(框內預測器、框間預測器、預測控制器)) 圖43係一流程圖,其繪示藉由解碼器200之一預測處理器來進行之一程序之一項實例。應知,預測處理器包括以下全部或部分之構成元件:框內預測器216;框間預測器218;以及預測控制器220。
預測處理器產生一目前區塊之一預測影像(步驟Sq_1)。此預測影像亦稱為一預測信號或一預測區塊。應知,該預測信號舉例而言,係一框內預測信號或一框間預測信號。具體而言,預測處理器使用已經透過產生一預測區塊、產生一差異區塊、產生一係數區塊、還原一差異區塊、以及產生一經解碼影像塊所取得之一重構影像來產生目前區塊之預測影像。
該重構影像舉例而言,可以是一參考圖片中之一影像、或是一目前圖片中一經解碼區塊之一影像,該目前圖片係包括該目前區塊之圖片。目前圖片中之經解碼區塊舉例而言,係目前區塊之一鄰近區塊。
圖44係一流程圖,其繪示藉由解碼器200之預測處理器來進行之一程序之另一實例。
預測處理器擇一確定用於產生一預測影像之一方法或一模式(步驟Sr_1)。舉例而言,該方法或模式可基於例如一預測參數等來確定。
當確定一第一方法作為用於產生一預測影像之一模式時,預測處理器根據該第一方法產生一預測影像(步驟Sr_2a)。當確定一第二方法作為用於產生一預測影像之一模式時,預測處理器根據該第二方法產生一預測影像(步驟Sr_2b)。當確定一第三方法作為用於產生一預測影像之一模式時,預測處理器根據該第三方法產生一預測影像(步驟Sr_2c)。
第一方法、第二方法、以及第三方法可以是用於產生一預測影像之相互不同的方法。第一至第三方法各可以是一框間預測方法、一框內預測方法、或另一預測方法。可在這些預測方法中使用上述之重構影像。
(框內預測器) 框內預測器216基於從經編碼位元串流剖析出之框內預測模式,透過參照儲存在區塊記憶體210中之目前圖片中之一區塊或多個區塊,藉由進行框內預測來產生一預測信號(框內預測信號)。更具體而言,框內預測器216透過參照與目前區塊鄰近之一區塊或多個區塊之樣本(例如:亮度及/或色度值),藉由進行框內預測來產生一框內預測信號,然後將該框內預測信號輸出至預測控制器220。
應知,當選擇在一色度區塊之框內預測中參照一亮度區塊之一框內預測模式時,框內預測器216可基於目前區塊之亮度分量來預測目前區塊之色度分量。
此外,當從一經編碼位元串流剖析出之資訊指出要施用PDPC時,框內預測器216基於水平/垂直參考像素梯度來校正經框內預測之像素值。
(框間預測器) 框間預測器218藉由參照儲存在圖框記憶體214中之一參考圖片來預測目前區塊。框間預測係以一目前區塊或該目前區塊中之一子區塊(例如:一4×4區塊)為單位來進行。舉例而言,框間預測器218透過使用從一經編碼位元串流(例如:輸出自熵解碼器202之一預測參數)剖析出之動作資訊(例如:一動作向量),藉由進行動作補償來產生目前區塊或子區塊之一框間預測信號,並且將框間預測信號輸出至預測控制器220。
應知,當從經編碼位元串流剖析出之資訊指出要施用OBMC模式時,除了從動作估測取得之目前區塊之動作資訊以外,框間預測器218還使用一鄰近區塊之動作資訊來產生框間預測信號。
此外,當從經編碼位元串流剖析出之資訊指出要施用FRUC模式時,框間預測器218根據從經編碼位元串流剖析出之型樣匹配方法(雙側匹配或模板匹配),藉由進行動作估測來推導動作資訊。框間預測器218接著使用經推導動作資訊來進行動作補償(預測)。
此外,當要施用BIO模式時,框間預測器218基於假設均勻線性動作之一模型來推導一動作向量。此外,當從經編碼位元串流剖析出之資訊指出要施用仿射動作補償預測模式時,框間預測器218基於鄰近區塊之動作向量來推導各子區塊之一動作向量。
(MV推導 > 正常框間模式) 當從一經編碼位元串流剖析出之資訊指出要施用正常框間模式時,框間預測器218基於從該經編碼位元串流剖析出之資訊來推導一MV,並且使用該MV來進行動作補償(預測)。
圖45係一流程圖,其繪示解碼器200中框間預測在正常框間模式中之一實例。
解碼器200之框間預測器218針對各區塊進行動作補償。框間預測器218基於諸如時間上或空間上將目前區塊環繞之複數個經解碼區塊之MV等資訊,針對一目前區塊取得複數個MV候選者(步驟Ss_1)。換句話說,框間預測器218產生一MV候選者清單。
其次,框間預測器218根據一已定優先權順序,從在步驟Ss_1中取得之複數個MV候選者提取N (2或更大之一整數)個MV候選者,作為動作向量預測子候選者(亦稱為MV預測子候選者) (步驟Ss_2)。應知,可事先針對該等N個MV預測子候選者之各者確定優先權順序。
其次,框間預測器218解碼來自一輸入串流(即一經編碼位元串流)之動作向量預測子選擇資訊,並且使用經解碼動作向量預測子選擇資訊從N個MV預測子候選者選擇一個MV預測子候選者,作為目前區塊之一動作向量(亦稱為一MV預測子) (步驟Ss_3)。
其次,框間預測器218解碼來自該輸入串流之一MV差異,並且藉由將係為經解碼MV差異之一差異值與一所選擇動作向量預測子相加來針對一目前區塊推導一MV(步驟Ss_4)。
最後,框間預測器218使用經推導MV及經解碼參考圖片,藉由進行目前區塊之動作補償,針對目前區塊產生一預測影像(步驟Ss_5)。
(預測控制器) 預測控制器220擇一選擇框內預測信號或框間預測信號,並且將所選擇預測信號輸出至加法器208。整體而言,解碼器側之預測控制器220、框內預測器216、及框間預測器218之組態、功能、及程序可對應於編碼器側之預測控制器128、框內預測器124、及框間預測器126之組態、功能、及程序。
(解碼器安裝實例) 圖46係一方塊圖,其繪示解碼器200之一安裝實例。解碼器200包括處理器b1及記憶體b2。舉例而言,圖41中所示解碼器200之複數個構成元件係安裝在圖46所示之處理器b1及記憶體b2上。
處理器b1係進行資訊處理並且可存取記憶體b2之一電路系統。舉例而言,處理器b1係將一視訊(即一經編碼位元串流)解碼之專屬或通用電子電路系統。處理器b1可以是諸如一CPU之一處理器。另外,處理器b1可以是複數個電子電路之一集合體。另外,舉例而言,處理器b1可扮演的角色為:圖41所示解碼器200之複數個構成元件中之二或更多個構成元件等。
記憶體b2係用於儲存資訊之專屬或通用記憶體,該資訊係由處理器b1使用來解碼一經編碼位元串流。記憶體b2可以是電子電路系統,並且可被連接至處理器b1。另外,可在處理器b1中包括記憶體b2。另外,記憶體b2可以是複數個電子電路之一集合體。另外,記憶體b2可以是一磁碟、一光碟、或類似者,或可被表示為一儲存器、一記錄媒體、或類似者。另外,記憶體b2可以是一非依電性記憶體、或一依電性記憶體。
舉例而言,記憶體b2可儲存一視訊或一位元串流。另外,記憶體b2可儲存用於致使處理器b1解碼一經編碼位元串流之一程式。
另外,舉例而言,記憶體b2可扮演的角色為:圖41所示解碼器200之複數個構成元件中用於儲存資訊之二或更多個構成元件等。具體而言,記憶體b2可扮演圖41所示區塊記憶體210及圖框記憶體214之角色。更具體而言,記憶體b2可儲存一重構區塊、一重構圖片等。
應知,在解碼器200中,可不實施所有圖41所示之複數個構成元件等,並且可不進行所有上述的程序。部分圖41中所指出之構成元件等可被包括在另一裝置中,或部分上述之程序可藉由另一裝置來進行。
(用語之定義) 如下文中所指出的為例,各別用語可被定義。
一圖片係為單色格式之一亮度樣本陣列、或為4:2:0、4:2:2、及4:4:4顏色格式之一亮度樣本陣列及兩個對應之色度樣本陣列。一圖片可擇一為一圖框或一像場。
一圖框係一頂端像場與一底端像場之組成,其中樣本列0、2、4、...源自該頂端像場,而樣本列1、3、5、...源自該底端像場。
一切片係在一個獨立切片節段、及相同存取單元內居前於下一個獨立切片節段(若有的話)之所有後續相依切片節段(若有的話)中所含有之整數個寫碼樹單元。
一圖磚係一圖片中一特定圖磚行及一特定圖磚列內寫碼樹區塊之一矩形區域。一圖磚可以是意欲要能夠被獨立地解碼及編碼之圖框之一矩形區域,但仍然可施用橫跨圖磚邊緣之迴路濾波。
一區塊係一M×N (M行乘N列)樣本陣列、或一M×N變換係數陣列。一區塊可以是包括一個亮度及兩個色度矩陣之一正方形或矩形區域之像素。
一寫碼樹單元(CTU)可以是具有三個樣本陣列之一圖片之亮度樣本之一寫碼樹區塊、或色度樣本之兩個對應寫碼樹區塊。替代地,一CTU可以是一單色圖片、及使用被用於寫碼樣本之三個單獨顏色平面及語法結構來寫碼之一圖片其中一者之樣本之一寫碼樹區塊。 一超級區塊可以是64×64個像素之一正方形區塊,其係擇一由1或2個模式資訊區塊所組成,或被遞迴地劃分成四個32×32區塊,該等區塊本身可被進一步劃分。
圖47A係一流程圖,其根據一項實施例,繪示將一影像塊拆分成至少包括一第一分區及一第二分區之複數個分區、針對至少該第一分區從一動作向量候選者集合預測一動作向量、以及進行進一步處理之一程序流程1000之一實例。程序流程1000舉例而言,可藉由圖1之編碼器100、圖41之解碼器200等來進行。
在步驟S1001中,將一影像塊拆分成至少包括一第一分區之複數個分區,該第一分區可以或可不具有一非矩形形狀。圖48係一概念圖,用於繪示將一影像塊拆分成一第一分區及一第二分區之例示性方法。舉例而言,如圖48所示,可將一影像塊拆分成具有各種形狀之二或更多個分區。圖48之例示圖包括:一個從影像塊之左上角拆分至影像塊之右下角以建立兩者都具有一非矩形形狀(例如:三角形形狀)之一第一分區及一第二分區之影像塊;一個拆分成一L形分區及一矩形形狀分區之影像塊;一個拆分成一五邊形形狀分區及一三角形形狀分區之影像塊;一個拆分成一六邊形形狀分區及一五邊形形狀分區之影像塊;以及一個拆分成兩個多邊形形狀分區之影像塊。各種所示分區形狀可藉由採用其它方式拆分一影像塊來形成。舉例而言,兩個三角形形狀分區可藉由將一影像塊從該影像塊之一右上角拆分至該影像塊之一左下角來形成,用以建立兩者都具有一三角形形狀之一第一分區及一第二分區。在一些實施例中,一影像塊之二或更多個分區可具有一重疊部分。
在步驟S1002中,程序針對至少該第一分區,從一動作向量候選者集合預測一第一動作向量。一動作向量候選者清單之一動作之動作向量候選者可包括從該至少一第一分區之空間或時間鄰近分區推導出之動作向量候選者。在步驟S1003中,該至少一第一分區係使用第一動作向量來編碼或解碼。
圖49係一概念圖,用於繪示一目前圖片之一第一分區之相鄰及非相鄰之空間鄰近分區。相鄰之空間鄰近分區係與目前圖片中之第一分區相鄰之一分區。非相鄰之空間鄰近分區係與目前圖片中之第一分區隔開之一分區。在一些實施例中,可從目前圖片中之至少一第一分區之空間鄰近分區推導出圖47A之S1002之該動作向量候選者集合。
在一些實施例中,該動作向量候選者集合可推導自動作向量候選者清單,諸如一框間預測模式(例如:一合併模式、一略過(skip)模式或一框間模式)中所使用之一動作向量候選者清單。此一清單可包括單向預測動作向量候選者及雙向預測動作向量候選者兩者。
圖50係一概念圖,用於針對一目前圖片之一影像塊繪示單向預測及雙向預測動作向量候選者。一單向預測動作向量候選者係用於相對單一參考圖片之目前圖片中之目前區塊的一單一動作向量。如圖50之頂端部分所示,單向預測動作向量候選者係從一目前圖片之一區塊到一參考圖片之一區塊的一動作向量,其中參考圖片以一顯示順序出現在目前圖片之前。在一些實施例中,參考圖片可以該顯示順序出現在目前圖片之後。
一雙向預測動作向量候選者包含兩個動作向量:相對一第一參考圖片用於目前區塊之一第一動作向量、以及相對一第二參考圖片用於目前區塊之一第二動作向量。如圖50所示,左下方之雙向預測動作向量候選者具有從目前圖片之區塊到一第一參考圖片之一區塊的一第一動作向量、以及從目前圖片之區塊到一第二參考圖片之一區塊的一第二動作向量。如圖示,第一及第二參考圖片以一顯示順序出現在目前圖片之前。圖50右下方之雙向預測動作向量候選者具有從目前圖片之區塊到一第一參考圖片之一區塊的一第一動作向量、以及從目前圖片之區塊到一第二參考圖片之一區塊的一第二動作向量。第一參考圖片以一顯示順序出現在目前圖片之前,並且第二參考圖片以該顯示順序出現在目前圖片之後。
在一些實施例中,將至少一個分區之動作向量預測出之該動作向量候選者集合可以是一單向預測動作向量候選者集合。圖47B係一流程圖,其根據一項實施例,繪示將一影像塊拆分成至少包括一第一分區及一第二分區之複數個分區、針對至少該第一分區從一單向預測動作向量候選者集合預測一動作向量、以及進行進一步處理之一程序流程1000’之一實例。程序流程1000’舉例而言,可藉由圖1之編碼器100、圖41之解碼器200等來進行。圖47B之程序流程1000’與圖47A之程序流程1000差別在於圖47B之步驟1002’中,動作向量之預測來自一單向預測動作向量候選者集合。使用一單向預測動作向量候選者集合可有助於降低記憶體頻寬需求、以及編碼一分區所需之操作數量。
一單向預測動作向量候選者集合可從一動作向量候選者清單,藉由例如僅包括在該動作向量候選者集合中該清單之單向預測動作向量來推導出。然而,單向預測動作向量亦可採用各種方式從雙向預測動作向量推導出,並且亦可採用各種方式從單向預測動作向量候選者推導出。
舉例而言,索引可被使用來從一動作向量候選者清單之一雙向預測動作向量候選者推導出要在一單向預測動作向量候選者集合中包括之單向預測動作向量候選者。舉例而言,一雙向動作向量候選者可具有對一第一清單(例如:參考圖片清單L0)中之一第一參考圖片進行識別、並且對一第二清單(例如:參考圖片清單L1)中之一第二參考圖片進行識別之一相關聯索引。下表1繪示雙向預測動作向量候選者之索引對一第一參考圖片清單中之一第一參考圖片、及一第二參考圖片清單中之一第二參考圖片的一例示性映射關係。
[表1]
Figure 108125111-A0304-0001
表1:雙向預測動作向量候選者索引對參考圖片清單之參考圖片的例示性映射關係
參照至表1,具有一索引1之雙向預測動作向量候選者指向參考圖片清單L0中之參考圖片0,並且指向參考圖片清單L1中之參考圖片8。可從具有一索引1之雙向預測動作向量候選者、相對目前區塊及以參考圖片清單L0為基礎的參考圖片0之一區塊的一單向預測動作向量候選者、以及相對目前區塊及以參考圖片清單L1為基礎的參考圖片8之一區塊的一單向預測動作向量推導出兩個單向預測動作向量候選者。可將該等單向預測動作向量候選者其中之一者或兩者包括在該單向預測動作向量候選者集合中,針對目前影像之區塊之一目前分區從該單向預測動作向量候選者集合預測一動作向量(例如:以清單L0之參考圖片為基礎的單向預測動作向量、以參考圖片清單L1為基礎的單向預測動作向量、或兩者)。應知,針對一目前圖片,清單L0中之參考圖片8與清單L1中之參考圖片8相同。
類似地,具有索引2之雙向預測動作向量候選者指向參考圖片清單L0中之參考圖片8,並且指向參考圖片清單L1中之參考圖片16;可從具有一索引2之雙向預測動作向量候選者、相對目前區塊及參考圖片8之一區塊的一單向預測動作向量候選者、以及相對目前區塊及參考圖片16之一區塊的一單向預測動作向量推導出兩個單向預測動作向量候選者。可將該等單向預測動作向量候選者其中之一者或兩者包括在該單向預測動作向量候選者集合中,針對目前影像之區塊之一目前分區從該單向預測動作向量候選者集合預測一動作向量(例如:以清單L0之參考圖片為基礎的單向預測動作向量候選者、以參考圖片清單L1為基礎的單向預測動作向量候選者、或兩者)。
在一些實施例中,僅將以清單L0之參考圖片為基礎的單向預測動作向量候選者包括在從一候選者清單之一雙向預測動作向量候選者推導出之該單向預測動作向量候選者集合中。在一些實施例中,僅將以參考圖片清單L1為基礎的單向預測動作向量候選者包括在該單向預測動作向量候選者集合中。在一些實施例中,單向預測動作向量候選者集合係一有序集合,舉例而言,其中以清單L0之參考圖片為基礎的單向預測動作向量候選者在單向預測動作向量候選者集合中被後接以參考圖片清單L1為基礎的單向預測動作向量候選者。
在一些實施例中,要包括在一單向預測動作向量候選者集合中之一雙向預測動作向量候選者之一動作向量可基於一顯示順序或該等圖片之一寫碼順序來確定。一通用規則可以是包括時間方面擇一指向最近參考圖片或最早參考圖片之雙向預測動作向量候選者之動作向量。圖51至圖53係概念圖,用於繪示基於圖片之顯示或寫碼順序,從要在單向預測動作向量候選者集合中包括之一雙向預測動作向量候選者確定一單向預測動作向量。
在一些實施例中,單向預測動作向量候選者集合中包括依照顯示順序最靠近目前圖片之一雙向預測動作向量之參考圖片之動作向量。如圖51所示,一雙向預測動作向量候選者包括指向參考圖片0之Mv0、以及指向參考圖片1之Mv1。選擇Mv1作為要包括在單向預測動作向量集合中之一單向預測動作向量,因為參考圖片1依照顯示順序比參考圖片0更靠近目前圖片。
在一些實施例中,單向預測動作向量候選者集合中包括依照寫碼順序最靠近目前圖片之一雙向預測動作向量之參考圖片之動作向量。如圖52所示,一雙向預測動作向量候選者包括指向參考圖片1之Mv0、以及指向參考圖片2之Mv1。選擇Mv0作為要包括在單向預測動作向量集合中之一單向預測動作向量,因為參考圖片1依照寫碼順序比參考圖片2更靠近目前圖片。
在一些實施例中,單向預測動作向量候選者集合中包括一雙向預測動作向量之參考圖片之動作向量,該參考圖片係依照顯示順序在目前圖片之前的一參考圖片。如圖52所示,一雙向預測動作向量候選者包括指向參考圖片1之Mv0、以及指向參考圖片2之Mv1。選擇Mv0作為要包括在單向預測動作向量集合中之一單向預測動作向量,因為參考圖片1依照顯示順序係出現在目前圖片之前的參考圖片。
在一些實施例中,單向預測動作向量候選者集合中包括一雙向預測動作向量之參考圖片之動作向量,該參考圖片係依照顯示順序在目前圖片之後的一參考圖片。如圖52所示,一雙向預測動作向量候選者包括指向參考圖片1之Mv0、以及指向參考圖片2之Mv1。選擇Mv1作為要包括在單向預測動作向量集合中之一單向預測動作向量,因為參考圖片2依照顯示順序係在目前圖片之後的參考圖片。
一些實施例中可組合上述從雙向預測動作向量推導出單向預測動作向量之例示性方式。舉例而言,在一些實施例中,可在單向預測動作向量候選者集合中包括依照顯示順序最靠近目前圖片且在目前圖片之前的一雙向預測動作向量之參考圖片之動作向量。如圖53所示,一雙向預測動作向量候選者包括指向參考圖片1之Mv0、以及指向參考圖片2之Mv1。即使參考圖片2可能依照顯示順序更靠近目前圖片或離目前圖片之距離相同,仍選擇Mv0作為要包括在單向預測動作向量集合中之一單向預測動作向量,因為參考圖片1依照顯示順序係在目前圖片之前。
在另一實例中,一些實施例中可在單向預測動作向量候選者集合中包括依照顯示順序最靠近目前圖片且在目前圖片之後的一雙向預測動作向量之參考圖片之動作向量。如圖53所示,一雙向預測動作向量候選者包括指向參考圖片1之Mv0、以及指向參考圖片2之Mv1。即使參考圖片1可能依照顯示順序更靠近目前圖片或離目前圖片之距離相同,仍選擇Mv1作為要包括在單向預測動作向量集合中之一單向預測動作向量,因為參考圖片2依照顯示順序係在目前圖片之後。
在另一實例中,一些實施例中可在單向預測動作向量候選者集合中包括依照顯示順序最靠近目前圖片、且指向參考圖片清單0之一雙向預測動作向量之參考圖片之動作向量。可運用從一動作向量候選者清單推導出一單向預測動作向量候選者(例如,包括來自該清單之單向預測動作向量候選者、以及從該清單之雙向預測動作向量候選者推導出之單向預測動作向量候選者)之其他方式組合。
如前述,亦可從單向預測動作向量推導出一單向預測動作向量集合之單向預測動作向量。圖54至56係概念圖,用於繪示從一單向預測動作向量產生一或多個單向預測動作向量。
舉例而言,在一些實施例中,單向預測運動向量候選者集合中僅可包括一候選動作向量清單之單向預測動作向量,並且可將額外的單向預測動作向量推導自該候選動作向量清單之該等單向預測動作向量、以及包括在單向預測動作向量集合中。圖54繪示單向預測動作向量候選者集合中所包括之一候選動作向量清單之一單向預測動作向量Mv0。Mv0指向與單向預測動作向量之一索引相關聯之清單L0中之一參考圖片。除了Mv0以外,單向預測動作向量集合中還包括Mv0之一鏡像Mv0’,其指向與單向預測動作向量之索引相關聯之清單L1中之一參考圖片。
在另一實例中,圖55繪示單向預測動作向量候選者集合中所包括之一候選動作向量清單之一單向預測動作向量Mv0。Mv0指向與單向預測動作向量之一索引相關聯之清單L0中之一第一參考圖片。除了Mv0以外,單向預測動作向量候選者集合中還可包括Mv0經縮放之動作向量。如圖55所示,單向預測動作向量集合中亦包括Mv0’,其係指向清單L0中一第二參考圖片之一縮放版Mv0,並且亦包括MV0’’,其係指向清單L0中一第三參考圖片之一縮放版Mv0。
在一些實施例中,清單中之單向預測動作向量候選者及清單中之雙向預測動作向量候選者之個別動作向量可係包括在單向預測動作向量候選者集合中。參照圖51至53,單向預測動作向量候選者集合中將包括Mv0及Mv1兩者,清單中也將包括任何單向預測動作向量候選者。單向預測動作向量候選者集合通常可包括五個或六個單向預測動作向量候選者(例如:一分區五個、一區塊六個)。
在一些實施例中,要包括在單向預測動作向量集合中之一單向預測動作向量可推導自一雙向預測動作向量候選者之兩動作向量。圖56繪示從一雙向預測動作向量候選者之兩動作向量推導出要包括在集合中之一單向預測動作向量之一實例。如圖56所示,一雙向預測動作向量候選者包括指向參考圖片0之Mv0、以及指向參考圖片1之Mv1。產生Mv1、Mv1’之一鏡像,其指向參考圖片0 (由MV0指向之參考圖片)。Mv0及Mv1’可取平均,並且可以是(例如,連同清單之任何單向預測動作向量候選者)包括在單向預測動作向量候選者集合中之所生成向量。
在一些實施例中,將清單之一單向預測動作向量、以及至少一個分區之鄰近分區之兩個動作向量之一平均動作向量包括在集合中。在一些實施例中,將清單之一單向預測動作向量、以及來自一鄰近分區之動作向量之一經推導動作向量包括在集合中。鄰近分區可諸如在一仿射模式中,使用一動作向量推導模型來寫碼。在一些實施例中,將清單之一單向預測動作向量、以及鄰近分區之複數個動作向量之一加權組合包括在集合中。對複數個動作向量之動作向量施用之權重舉例而言,可以是基於鄰近分區之位置、尺寸、寫碼模式等。
在一實施例中,預測第一動作向量(參見圖47A之S1002及圖47B之S1002’)可包括從第一動作向量候選者集合選擇一動作向量、以及將所選擇之動作向量與一鄰近分區之一動作向量作比較。圖57係一概念圖,用於繪示一影像塊之第一及第二分區之單向動作向量。如圖57所示,可針對至少一第一分區(如圖示之白色三角形)從動作向量候選者集合選擇Mv0,並且可針對鄰近分區(如圖示之陰影三角形)從動作向量候選者集合選擇Mv1。應知,一區塊之兩個三角形形狀分區不具有同一單向預測動作向量候選者。
在一實施例中,Mv0係一單向預測動作向量,並且係用於針對第一分區預測動作向量。
在一實施例中,Mv0係一雙向預測動作向量候選者,並且Mv1係一單向預測動作向量候選者。可選擇指向與Mv1所指預測方向(例如,指向清單L0或清單L1)相同方向之Mv0動作向量,舉例而言,作為用於針對該至少一第一分區預測第一動作向量之動作向量。在另一實例中,可選擇指向與Mv1所指預測方向(例如,指向清單L0或指向清單L1)相反之Mv0動作向量,舉例而言,作為用於針對該至少一第一分區預測第一動作向量之動作向量。
在一實施例中,Mv0與Mv1兩者係雙向預測動作向量候選者。可確定Mv0與Mv1之間的一差異,並且舉例而言,如果L0方向上之差異大於或等於L1方向上之差異,則可將L0方向上之Mv0動作向量用於預測第一動作向量,否則可使用L1方向上之Mv0動作向量。在另一實例中,如果L0方向上之差異大於或等於L1方向上之差異,則可將L1方向上之Mv0動作向量用於預測第一動作向量,否則可使用L0方向上之Mv0動作向量。
在另一實例中,預測第一動作向量可包括基於單向預測動作向量候選者之一位置或尺寸,從一單向預測動作向量集合選擇一動作向量。
一鄰近分區之一單向預測動作向量候選者集合舉例而言,可包括五個單向預測動作向量候選者(例如,{Mv1, Mv2, Mv3, Mv4, Mv5})。如果選擇Mv2作為針對鄰近分區預測出一動作向量之單向預測動作向量,則Mv2將不被包括在(或可被排除出)針對該至少一第一分區預測出第一動作向量之單向預測動作向量候選者集合。如果將Mv2從單向預測動作向量候選者集合(例如:Mv6)移除,則Mv2可由另一單向預測動作向量來取代。
在一實施例中,是否要使用一第一動作向量候選者集合(其可含有單向預測與雙向預測動作向量候選者兩者)、或是否要使用一第二單向預測動作向量候選者集合來預測一影像塊之一分區之一動作向量係可基於各種的準則。
舉例而言,圖58係一流程圖,其根據一項實施例,繪示從一第一單向預測動作向量候選者集合、或從包括雙向預測動作向量候選者及單向預測動作向量候選者之一第二動作向量候選者集合擇一對一影像塊之一分區之一動作向量根據該分區之一形狀進行預測、以及進行進一步處理之一程序流程2000之一實例。
在步驟S2001中,將一影像塊拆分成至少包括一第一分區之複數個分區,該第一分區可以或可不具有一非矩形形狀。參見用於將一影像塊拆分成複數個分區之實例的圖48。
在步驟S2002中,程序流程2000判定或判斷一目前分區(舉例而言,如圖示,該至少一第一分區)是否係一矩形形狀分區。當在步驟S2002確定該目前分區係一矩形形狀分區時,程序流程2000前進至S2004。當在S2002未確定該目前分區係一矩形形狀分區時,程序流程2000前進至S2003。
在步驟S2004中,從一第一單向預測動作向量候選者集合預測第一動作向量,其舉例而言,可如上述被產生。在步驟S2003中,從第二動作向量候選者集合預測第一動作向量,其可包括單向預測及雙向預測動作向量候選者兩者。在步驟S2005中,目前分區係使用第一動作向量來編碼或解碼。
在另一實例中,圖59係一流程圖,其根據一項實施例,繪示從一第一單向預測動作向量候選者集合、或從包括雙向預測動作向量候選者及單向預測動作向量候選者之一第二動作向量候選者集合擇一對一影像塊之一分區之一動作向量根據該區塊之一尺寸、或該分區之一尺寸進行預測、以及進行進一步處理之一程序流程之一實例。
在步驟S3001中,將一影像塊拆分成至少包括一第一分區之複數個分區,該第一分區可以或可不具有一非矩形形狀。參見用於將一影像塊拆分成複數個分區之實例的圖48。
在步驟S3002中,程序流程3000判定或判斷一目前區塊之一尺寸或一目前分區之一尺寸是否大於一門檻尺寸。當在步驟S3002未確定目前區塊之尺寸或目前分區之尺寸大於門檻尺寸時,程序流程3000前進至S3004。當在S3002確定目前區塊或分區之尺寸大於門檻尺寸時,程序流程3000前進至S3003。
在步驟S3004中,從一第一單向預測動作向量候選者集合預測第一動作向量,其舉例而言,可如上述被產生。在步驟S3003中,從第二動作向量候選者集合預測第一動作向量,其可包括單向預測及雙向預測動作向量候選者。在步驟S3005中,目前分區係使用第一動作向量來編碼或解碼。
可運用各種門檻尺寸。舉例而言,可運用一16×16像素門檻尺寸,並且小於16×16個像素之區塊或分區可使用一單向預測動作向量候選者集合來處理,而更大尺寸則可使用雙向預測來處理。另外,一影像塊或分區之大小可以是該影像塊或分區之寬度、該影像塊或分區之高度、該影像塊或分區之寬對高的比率、該影像塊或分區之高對寬的比率、該影像塊或分區之亮度樣本數量、該影像塊或分區之樣本數量等、以及其之各種組合。
圖60係一流程圖,其根據一項實施例,繪示針對一第一分區及一第二分區從一動作向量候選者集合為該第一分區推導一動作向量且為該第二分區推導一動作向量、以及進行進一步處理之一程序流程4000之一實例。
在步驟S4001中,將一影像塊拆分成至少包括一第一分區及一第二分區之複數個分區,該等第一分區及第二分區可以或可不具有一非矩形形狀。舉例而言,該等第一及第二分區可以是三角形形狀分區。參見用於將一影像塊拆分成複數個分區之實例的圖48。
在步驟S4002中,程序流程4000為第一及第二分區建立一第一動作向量候選者集合。第一動作向量候選者集合可以是用於影像塊之一動作向量候選者清單。動作向量候選者清單之動作向量候選者可包括雙向預測動作向量候選者及單向預測動作向量候選者。在一實施例中,第一動作向量候選者集合可以是一雙向預測動作向量候選者集合。
在步驟S4003中,從第一動作向量候選者集合選擇至少兩個動作向量。所選擇動作向量候選者可包括雙向預測動作向量候選者及單向預測動作向量候選者。在一實施例中,所選擇動作向量候選者係雙向預測動作向量候選者。
在步驟S4004中,程序流程4000以基於該至少兩個所選擇動作向量候選者之一比較結果為基礎,推導用於第一分區之一第一動作向量、及用於第二分區之一第二動作向量。這可採用各種方式來完成。
舉例而言,該至少兩個所選擇動作向量候選者可兩者都是各具有兩個動作向量之雙向預測動作向量候選者,總計四個動作向量。所推導之第一與第二經推導動作向量可以是四個動作向量中具有一幅度差異之兩個動作向量,該幅度差異係至少兩個所選擇動作向量候選者之所有四個動作向量之中最大的幅度差異。經推導之第一及第二動作向量係單向預測動作向量。
在另一實例中,該至少兩個所選擇動作向量候選者可兩者都是各具有兩個動作向量之雙向預測動作向量候選者,總計四個動作向量。所推導之第一與第二經推導動作向量可以是四個動作向量中具有一幅度差異之兩個動作向量,該幅度差異係至少兩個所選擇動作向量候選者之所有四個動作向量之中最小的幅度差異。經推導之第一及第二動作向量係單向預測動作向量。
在另一實例中,該至少兩個所選擇動作向量候選者其中至少一者可以是具有兩個動作向量之一雙向預測動作向量候選者(總計三個或四個動作向量)。所推導之第一與第二經推導動作向量可以是所選擇動作向量候選者之動作向量中之兩個動作向量,其係至少兩個所選擇動作向量候選者之動作向量中之最大或最小的動作向量。經推導第一及第二動作向量係單向預測動作向量。在步驟S4005中,第一及第二分區之第一動作向量係使用第一及第二經推導動作向量來編碼或解碼。
本文中所揭示之一或多項態樣可藉由將本揭露中至少部分之其他態樣組合來進行。另外,本文中所揭示之一或多項態樣可藉由將根據該等態樣在任何流程圖中所指出之部分程序、任何裝置之部分組態、部分語法等與其他的態樣組合來進行。
(實作態樣及應用) 如以上實施例之各者中所述,舉例而言,通常可將各功能塊或操作塊落實為一MPU (微處理單元)及記憶體。此外,可將由各功能塊所進行之程序落實為一程式執行單元,例如對記錄在諸如ROM的一記錄媒體上之軟體(一程式)進行讀取及執行之一處理器。軟體可被配送。可將軟體記錄在諸如半導體記憶體的各種記錄媒體上。請注意,亦可將各功能塊落實為硬體(專屬電路)。可運用各種硬體與軟體之組合。
各實施例中所述之處理可經由使用單一設備(系統)之整合式處理來落實,並且替代地,可經由使用複數個設備之分散型處理來落實。此外,執行上述程式之處理器可以是單一處理器或複數個處理器。換句話說,可進行整合式處理,並且替代地,可進行分散型處理。
本揭露之實施例不受限於以上例示性實施例;可對例示性實施例施作各種修改,其之結果亦包括在本揭露之實施例之範疇內。
其次,將說明以上各實施例中所述之移動圖片編碼方法(影像編碼方法)及移動圖片解碼方法(影像解碼方法)之應用實例,還有實施該等應用實例之各種系統。可將此一系統特性化為包括運用影像編碼方法之一影像編碼器、運用影像解碼方法之一影像解碼器、或包括該影像編碼器及該影像解碼器兩者之一影像編碼器-解碼器。可在逐案例之基礎上修改此一系統之其它組態。
(使用實例) 圖61繪示適用於實施一內容配送服務之內容提供系統ex100之一總體組態。內有提供通訊服務之區域係區分成所欲尺寸之小區,並且基地台ex106、ex107、ex108、ex109、及ex110係位於各自小區中,該等基地台係所示實例中之固定式無線電台。
在內容提供系統ex100中,包括電腦ex111、遊戲裝置ex112、相機ex113、家用電器ex114、及智慧型手機ex115之裝置係經由網際網路服務提供者ex102或通訊網路ex104及基地台ex106至ex110連接至網際網路ex101。內容提供系統ex100可對以上裝置之任何組合進行組合及連接。在各種實作態樣中,該等裝置可經由一電話網路或近場通訊,而不是經由基地台ex106至ex110,被直接地或間接地連接在一起。再者,可經由例如網際網路ex101,將串流傳輸伺服器ex103連接至包括電腦ex111、遊戲裝置ex112、相機ex113、家用電器ex114、及智慧型手機ex115之裝置。亦可經由衛星ex116,將串流傳輸伺服器ex103連接至例如飛機ex117中之一熱點中之一終端機。
請注意,可使用無線接取點或熱點,而不是基地台ex106至ex110。串流傳輸伺服器ex103可直接而不是經由網際網路ex101或網際網路服務提供者ex102連接至通訊網ex104,並且可直接而不是經由衛星ex116連接至飛機ex117。
相機ex113係能夠擷取靜止影像及視訊之一裝置,諸如一數位相機。智慧型手機ex115係可依據2G、3G、3.9G、及4G系統、以及下一代5G系統之行動通訊系統標準來操作之一智慧型手機裝置、蜂巢式手機、或個人手持電話系統(PHS)。
家用電器ex114舉例而言,係一冰箱或包括在一家用燃料電池汽電共生系統中之一裝置。
在內容提供系統ex100中,包括一影像及/或視訊擷取功能之一終端機舉例而言,係能夠藉由經由例如基地台ex106連接至串流傳輸伺服器ex103來線上串流傳輸。當線上串流傳輸時,一終端機(例如:電腦ex111、遊戲裝置ex112、相機ex113、家用電器ex114、智慧型手機ex115、或飛機ex117中之一終端機)可對使用者經由該終端機所擷取之靜止影像或視訊內容進行以上實施例中所述之編碼處理、可多工處理經由編碼所取得之視訊資料及藉由將對應於該視訊之音訊編碼所取得之音訊資料、以及可將所取得之資料傳送至串流傳輸伺服器ex103。換句話說,該終端機根據本揭露之一項態樣作用為影像編碼器。
串流傳輸伺服器ex103將傳送之內容資料串流傳輸至請求串流之用戶端。用戶端實例包括能夠將上述經編碼資料解碼之電腦ex111、遊戲裝置ex112、相機ex113、家用電器ex114、智慧型手機ex115、及飛機ex117內部之終端機。接收串流資料之裝置可解碼並再生所接收之資料。換句話說,根據本揭露之一項態樣,該等裝置各可作用為影像解碼器。
(分散型處理) 可將串流傳輸伺服器ex103落實為複數個伺服器或電腦,諸如資料之處理、記錄、及串流傳輸的任務在其之間被區分。舉例而言,可將串流傳輸伺服器ex103落實為經由將位於世界各處之多個邊緣伺服器連接之一網路串流傳輸內容之一內容遞送網路(CDN)。在一CDN中,可將實體位在用戶端附近之一邊緣伺服器動態地指派給該用戶端。將內容快取並串流傳輸至邊緣伺服器以減少載入次數。舉例而言,若由於例如一流量尖波而在連線能力方面有某類型之錯誤或變化,則可能以高速來穩定地串流傳輸資料,因為有可能藉由例如在複數個邊緣伺服器之間區分處理、或者將串流傳輸的職責切換至一不同的邊緣伺服器並且繼續串流傳輸以避開受影響之部分網路。
分散化係不受限於僅用在串流傳輸之處理區分;所擷取資料之編碼可在該等終端機之間被區分並且藉由該等終端機在伺服器側被進行,或不受限於以上兩者。在一項實例中,進行典型編碼時,是在兩個迴圈中進行該處理。第一迴圈係用於在逐框或逐場景之基礎上檢測影像有多複雜、或檢測編碼負載。第二迴圈係用於維持影像品質並提升編碼效率之處理。舉例而言,有可能藉由使終端機進行第一迴圈之編碼,並且使接收到內容之伺服器側進行第二迴圈之編碼,來降低終端機之處理負載並提升內容之品質及編碼效率。在此一狀況中,在接收到一解碼請求後,另一終端機上便有可能近乎即時地接收並再生藉由一個終端機進行之第一迴圈所生成之經編碼資料。這使得有可能落實平順的、即時的串流傳輸。
在另一實例中,相機ex113或類似者從一影像提取一特徵量(一特徵量或特性量)、壓縮與該特徵量有關之資料作為元資料、以及將經壓縮元資料傳送至一伺服器。舉例而言,伺服器基於該特徵量來確定一物件之重要性,並且從而變更量化準確度以進行適用於影像之意義(或內容重要性)之壓縮。特徵量資料在改善伺服器進行第二壓縮通過期間動作向量預測之精確度及效率方面特別有效。此外,具有諸如可變長度寫碼(VLC)之一相對低處理負載之編碼可由終端機來處理,並且具有諸如脈絡適應性二元算術寫碼(CABAC)之一相對高處理負載之編碼可由伺服器來處理。
在又另一實例中,有在例如一運動場、購物商場、或工廠中由複數個終端機擷取大約相同場景之複數個視訊的例子。在此一狀況中,舉例而言,編碼可在一每個單元基礎上,藉由在擷取到視訊之複數個終端機,以及視需要,未擷取到視訊之其他終端機,與伺服器之間區分處理任務來分散化。該等單元舉例而言,可以是從區分一圖片所生成之圖片群組(GOP)、圖片、或圖磚。這使得有可能減少載入次數,並且實現更接近即時之串流傳輸。
由於該等視訊係含有大約相同的場景,管理及/或指令可藉由伺服器來實行,以使得由終端機所擷取之該等視訊可被交叉參照。此外,伺服器可從終端機接收經編碼資料、變更資料項目之間的參照關係、或校正或替換圖片本身,然後進行編碼。這使得有可能為個別資料項目產生具有品質及效率提升之一串流。
再者,伺服器可在進行轉碼以將視訊資料之編碼格式轉換之後串流傳輸視訊資料。舉例而言,伺服器可將編碼格式從MPEG轉換成VP (例如:VP9)、可將H.264轉換成H.265等。
依此作法,編碼可藉由一終端機或一或多個伺服器來進行。因此,雖然在以下說明中,進行編碼之裝置被稱為「伺服器」或「終端機」,由伺服器所進行之一些或所有程序仍可藉由終端機來進行,並且同樣地,由終端機所進行之一些或所有程序可藉由伺服器來進行。這也適用於解碼程序。
(3D、多角度) 藉由諸如相機ex113及/或智慧型手機ex115之複數個終端機,從並行擷取之不同場景的、或以不同角度擷取之相同場景的影像或視訊組合之影像或視訊,在使用程度方面已增加。由終端機擷取之視訊可基於例如該等終端機、或具有匹配特徵點之一視訊中之區域之間單獨取得之相對位置關係來組合。
除了二維移動圖片之編碼以外,伺服器還可擇一自動地或在由使用者所指定之一時間點,基於一移動圖片之場景分析來編碼一靜止影像,並且將經編碼靜止影像傳送至一接收終端機。再者,當伺服器可取得該等視訊擷取終端機之間的相對位置關係時,除了二維移動圖片以外,伺服器還可基於從不同角度擷取之一場景之視訊,產生相同場景之三維幾何形狀。伺服器可單獨地編碼例如從一點雲產生之三維資料,並且基於使用三維資料辨識或追蹤一人員或物件之一結果,可從由複數個終端機所擷取之視訊,選擇或重構以及產生要被傳送至一接收終端機之一視訊。
這允許使用者藉由自由選擇與視訊擷取終端機對應之視訊來欣賞一場景,並且允許使用者欣賞藉由從重構自複數個影像或視訊之三維資料以一所選擇視點提取一視訊所取得之內容。再者,正如視訊,可從相對不同角度錄製聲音,並且伺服器可隨著對應的視訊從一特定角度或空間多工處理音訊,並且傳輸經多工處理之視訊及音訊。
近年來,係為真實世界與一虛擬世界之一複合體的內容,諸如虛擬實境(VR)及擴增實境(AR)內容,也已變得普及。以VR影像為例,伺服器可從左右兩眼之視點建立影像,並且進行編碼,該編碼容許兩個視點影像之間的參照,諸如多視角寫碼(MVC),並且替代地,可不用參照而將該等影像編碼為單獨串流。當將影像解碼為單獨串流時,該等串流可於再生時被同步,以便根據使用者之視點來重建一虛擬三維空間。
以AR影像為例,伺服器可從使用者之觀點,基於一三維位置或移動,將一虛擬空間中現有之虛擬物件資訊疊加到代表一現實世界空間之相機資訊上。解碼器可取得或儲存虛擬物件資訊及三維資料、從使用者之觀點基於移動來產生二維影像,然後藉由將該等影像無縫連接來產生經疊加資料。替代地,除了對虛擬物件資訊之一請求以外,解碼器還可從使用者之觀點向伺服器傳送動作。伺服器可根據接收到之動作,基於儲存在伺服器中之三維資料來產生經疊加資料,並且將所產生之經疊加資料編碼並串流傳輸至解碼器。請注意,除了RGB值以外,經疊加資料通常還包括指出透明度之一α值,以及伺服器針對產生自三維資料之物件除外之區段將該α值設定為例如0,並且可在那些區段呈透明時進行編碼。替代地,伺服器可將背景設定為一已定RGB值,諸如一色度鍵,並且產生將該物件除外之區域設定為背景之資料。該已定RGB值可被預定。
類似串流傳輸資料之解碼可在伺服器側藉由用戶端(例如:終端機)來進行,或在其間進行區分。在一項實例中,一個終端機可將一接收請求傳送至一伺服器,所請求內容可藉由另一終端機來接收及解碼,並且可將一經解碼信號傳送至具有一顯示器之一裝置。有可能不管通訊終端機本身之處理能力,而藉由分散化處理及適當地選擇內容來再生高影像品質資料。在又另一實例中,儘管一TV例如正在接收大尺寸的影像資料,仍可在該TV之一觀眾或多個觀眾之一個人終端機或多個個人終端機上解碼及顯示諸如藉由區分該圖片所取得之一圖磚的一圖片之一區域。這使得觀眾有可能分享一大圖片視圖,並且各觀眾有可能檢查他或她的經指派區域,或者更詳細地近距離檢驗一區域。
在複數個無線連接係有可能遍及近距離、中距離及遠距離、室內或室外之情況下,使用諸如MPEG-DASH之一串流傳輸系統標準來無縫接收內容係有可能的。使用者可即時在資料之間進行切換,同時自由選擇包括使用者布置在室內或室外之終端機、顯示器等在內之一解碼器或顯示設備。此外,使用例如關於使用者位置之資訊,可在切換哪個終端機處理解碼及哪個終端機處理內容顯示的同時進行解碼。這使得當使用者正依照路線移動前往一目的地時,有可能將資訊映射及顯示在內有嵌埋能夠顯示內容之一裝置之一附近建築物之牆壁上、或在部分之地面上。此外,還有可能例如當可從接收終端機快速存取之一伺服器上快取經編碼資料時、或當在一內容遞送服務中將經編碼資料複製到一邊緣服務器時,基於對經編碼資料在一網路上的可存取性來切換所接收資料之位元率。
(可調式編碼) 內容之切換將參照圖62中所示之一可調式串流作說明,該可調式串流係經由以上實施例所述之移動圖片編碼方法之實作態樣來壓縮寫碼。伺服器可具有在利用一串流之時間及/或空間可調式性的同時對內容進行切換之一組態,這是藉由區分成層及編碼層來實現,如圖62所示。請注意,可有複數個內容相同但品質不同之個別串流。換句話說,藉由判斷哪一層要基於諸如解碼器側之處理能力的內部因子、及諸如通訊頻寬的外部因子來解碼,解碼器側可在解碼時於低解析度內容與高解析度內容之間自由切換。舉例而言,在使用者想要例如在家中諸如被連接至網際網路之一TV的一裝置上繼續觀看使用者先前已於移動時在智慧型手機ex115上觀看之一視訊的狀況中,該裝置可單純地解碼相同串流直到一不同層,這會使伺服器側負載降低。
再者,除了上述組態以外,其中可調式性還因為圖片被按層編碼而得以實現,憑藉增強層位在基本層上面,增強層可在影像上包括基於例如統計資訊之元資料。解碼器側可基於元資料,於基本層中藉由在一圖片上進行超解析度成像來產生高影像品質內容。超解析度成像可提升SN比,同時維持解析度及/或增加解析度。元資料包括如在超解析度處理中所使用之用於識別一線性或一非線性濾波係數之資訊、或在超解析度處理中所使用之濾波處理、機器學習、或一最小平方法中識別一參數值之資訊。
替代地,可提供根據例如影像中一物件之意義將一圖片區分成例如圖磚之一組態。在解碼器側,僅一部分區域係藉由選擇要解碼之一圖磚來解碼。再者,藉由將物件(人員、汽車、球等)之一屬性、及該物件在視訊中之一位置(等同影像中之坐標)儲存為元資料,解碼器側可基於該元資料來識別一所欲物件之位置,並且判斷哪個圖磚或哪些圖磚包括該物件。舉例而言,如圖63所示,元資料可使用與像素資料不同之一資料儲存結構來儲存,諸如HEVC中之一SEI (補充增強資訊)訊息。此元資料舉例而言,指出主物件之位置、尺寸、或顏色。
元資料可以複數個圖片為單位來儲存,諸如串流、序列、或隨機存取單位。解碼器側可取得例如一特定人員出現在視訊中之時間,並且藉由將時間資訊與圖片單位資訊擬合,可識別內有存在該物件之一圖片,並且可確定該物件在該圖片中之位置。
(網頁最佳化) 圖64舉例而言,繪示電腦ex111上一網頁之一顯示畫面之一實例。圖65舉例而言,繪示智慧型手機ex115上一網頁之一顯示畫面之一實例。如圖64及65所示,一網頁可包括被連結至影像內容之複數個影像連結,並且該網頁之外觀可因用於檢視網頁之裝置而異。當在螢幕上可檢視複數個影像連結時,直至使用者明確地選擇一影像連結、或直至該影像連結處於螢幕大約中心處或整個影像連結符合螢幕大小,顯示設備(解碼器)可顯示包括在內容或I圖片中之靜止影像作為影像連結;可使用複數個靜止影像或I圖片來顯示諸如一動畫gif之視訊;或可僅接收基本層,並且解碼及顯示該視訊。
當使用者選擇一影像連結時,顯示設備進行解碼,同時舉例而言,給予基本層最高的優先權。請注意,如果指出內容為可調式之網頁之HTML程式碼中有資訊,則顯示設備可解碼直到增強層。再者,為了保證即時再生,在進行選擇之前或當頻寬嚴格受限時,顯示設備可藉由僅解碼並顯示前向參考圖片(I圖片、P圖片、前向參考B圖片),來減少解碼前導圖片之時間點與顯示經解碼圖片之時間點之間的延遲(亦即,開始解碼內容到顯示內容之間的延遲)。又再者,顯示設備可有目的地忽略圖片之間的參考關係,並且將所有B與P圖片粗略地解碼為前向參考圖片,然後隨著隨時間接收之圖片數量增加來進行正常解碼。
(自動駕駛) 當傳送及接收諸如用於自動駕駛或輔助駕駛一汽車之二維或三維地圖資訊之靜止影像或視訊資料時,除了屬於一或多層之影像資料以外,接收終端機還可接收關於例如天氣或道路施工之資訊作為元資料,並且在解碼後使元資料與影像資料有關聯。請注意,元資料可按層被指派,並且替代地,可單純地與影像資料進行多工處理。
在此一狀況中,由於含有接收終端機之汽車、無人機、飛機等係可移動的,接收終端機可藉由將接收終端機之位置指出之資訊傳送,來無縫地接收並進行解碼,同時在基地台ex106至ex110之中的基地台之間進行切換。此外,根據使用者做出之選擇、使用者之情況、及/或連線之頻寬,接收終端機可動態地選擇元資料被接收之程度、或例如地圖資訊被更新之程度。
在內容提供系統ex100中,用戶端可即時接收、解碼、及再生由使用者傳送之經編碼資訊。
(個別內容之串流傳輸) 在內容提供系統ex100中,除了高影像品質以外,由一視訊配送實體所配送之長內容、低影像品質之單播或多播串流傳輸、及來自一個別者之短內容亦為可能。來自個別者之此類內容在普及度方面可能進一步提升。伺服器可在編碼處理之前先對內容進行編輯處理,以便細化個別內容。這舉例而言,可使用以下組態來實現。
在擷取視訊或影像內容的當下,或在已擷取並累積該內容之後,伺服器基於原始資料或經編碼資料來進行辨識處理,諸如擷取錯誤處理、場景搜尋處理、意義分析、及/或物件檢測處理。接著,基於辨識處理之結果,伺服器擇一在被提示時或採用自動的方式時編輯內容,其實例包括:諸如聚焦及/或動作模糊校正之校正;移除諸如相較於其他圖片亮度低、或失焦之場景的低優先權場景;物件邊緣調整;以及色調調整。伺服器基於編輯之結果來編碼經編輯資料。已知過長之視訊傾向接收更少之視圖。因此,為了將內容保持在隨著原始視訊之長度調整比例之一特定長度內,除了上述之低優先權場景以外,伺服器還可基於一影像處理結果,來自動剪輯出低移動之場景。替代地,伺服器可基於一場景之意義之一分析之一結果來產生並編碼一視訊摘要。
可有個別內容可能包括侵犯版權、道德權利、肖像權等之內容的例子。此類例子可導致創作者處於一不利情況,諸如當內容分享超出創作者所意欲之範疇時的情況。因此,在編碼之前,伺服器舉例而言,可編輯影像,以便舉例而言,使螢幕周緣中人員之臉部模糊、或使一房子之內部模糊。再者,伺服器可被組配來在要編碼之一影像中辨識一已註冊人員除外之人員之臉部,並且當此類臉部出現在一影像中時,舉例而言,可對該人員之臉部施用一馬賽克濾波。替代地,如用於編碼之前處理或後處理,使用者可為了版權理由而指定包括一人員之一影像之一區域、或要處理之背景之一區域。伺服器可藉由例如將該區域以一不同影像取代、或使該區域模糊來處理經指定區域。如果該區域包括一人員,可在移動圖片中追蹤該人員,並且可隨著該人員移動將該人員之頭部區域以另一影像取代。
由於對於即時檢視由個別者所產生傾向小資料尺寸之內容有一需求,解碼器可先接收基本層作為最高優先權,並且進行解碼及再生,但這可因頻寬而異。當內容再生兩次或更多次時,諸如當解碼器在解碼並再生基本層的期間接收增強層、並且該再生形成迴圈時,解碼器可再生包括增強層之高影像品質視訊。如果串流係使用此類可調式編碼來編碼,則視訊在處於一未選擇狀態或處於視訊開始時可以是低品質,但其可提供以一智慧方式使串流之影像品質漸近提升之一體驗。這不僅受限於可調式編碼;相同體驗可藉由組配來自首次再生之一低品質串流的一單一串流、以及使用第一資料串流作為一參照來編碼之一第二串流被提供。
(其他實作態樣及應用實例) 編碼及解碼可藉由通常包括在各終端機中之LSI (大型積體電路系統) ex500 (參見圖61)來進行。LSI ex500可被組配為單一晶片或複數個晶片。可將用於編碼及解碼移動圖片之軟體整合到可藉由例如電腦ex111讀取之某類型之一記錄媒體(諸如CD-ROM、一軟碟、或一硬碟)內,並且可使用該軟體來進行該等編碼與解碼。再者,當智慧型手機ex115配有一相機時,可傳送由相機所取得之視訊資料。在這種狀況中,視訊資料可藉由包括在智慧型手機ex115中之LSI ex500來寫碼。
請注意,LSI ex500可被組配來下載及啟動一應用程式。在此一狀況中,終端機首先判斷其是否與用於將內容編碼之方案相容、或是否能夠執行一特定服務。當終端機不與內容之編碼方案相容時,或當終端機不能夠執行一特定服務時,終端機可先下載一編解碼器或應用軟體,然後取得並再生內容。
除了使用網際網路ex101之內容提供系統ex100之實例以外,至少可在一數位廣播系統中實施移動圖片編碼器(影像編碼器)或移動圖片解碼器(影像解碼器)。可施用相同之編碼處理及解碼處理,以使用例如一衛星來傳送及接收與經多工處理之音訊及視訊資料疊加之廣播無線電波,即使這是針對多播亦然,而單播則更易於用內容提供系統ex100來進行。
(硬體組態) 圖66繪示圖61中所示智慧型手機ex115之進一步細節。圖67繪示智慧型手機ex115之一組態實例。智慧型手機ex115包括用於向基地台ex110及從基地台ex110傳送及接收無線電波之天線ex450、能夠擷取視訊及靜止影像之相機ex465、以及顯示諸如由相機ex465所擷取之視訊及由天線ex450所接收之視訊的經解碼資料之顯示器ex458。智慧型手機ex115更包括諸如一觸控面板之使用者介面ex466、諸如用於輸出語音或其他音訊的一揚聲器之音訊輸出單元ex457、諸如用於音訊輸入的一麥克風之音訊輸入單元ex456、能夠儲存諸如所擷取之視訊或靜止影像、經錄製音訊、所接收之視訊或靜止影像、及郵件以及所解碼資料之經解碼資料之記憶體ex467、以及係為供SIM ex468用於授權存取一網路及各種資料之一介面的插槽ex464。請注意,可使用外部記憶體代替記憶體ex467。
可廣泛地控制顯示器ex458及使用者介面ex466之主控制器ex460、電源電路ex461、使用者介面輸入控制器ex462、視訊信號處理器ex455、相機介面ex463、顯示控制器ex459、調變器/解調變器ex452、多工器/解多工器ex453、音訊信號處理器ex454、插槽ex464、以及記憶體ex467係經由匯流排ex470連接。
當使用者開啟電源電路ex461之電源按鈕時,智慧型手機ex115被電力開啟而進入一可操作狀態,並且各組件係以來自一電池組之電力供電。
智慧型手機ex115基於由主控制器ex460所進行之控制來針對例如呼叫及資料傳輸進行處理,該主控制器ex460包括一CPU、ROM、及RAM。當進行呼叫時,由音訊輸入單元ex456所錄製之一音訊信號係藉由被調變器/解調變器ex452施用展頻處理之音訊信號處理器ex454、及數位類比轉換來轉換成一數位音訊信號,並且頻率轉換處理係由傳送器/接收器ex451所施用,而所生成之信號係經由天線ex450來傳送。所接收資料係藉由調變器/解調變器ex452來放大、頻率轉換、以及類比數位轉換、逆展頻處理、藉由音訊信號處理器ex454來轉換成一類比音訊信號,然後從音訊輸出單元ex457輸出。舉例而言,在資料傳輸模式中,文字、靜止影像、或視訊資料可基於主體之使用者介面ex466之操作,經由使用者介面輸入控制器ex462,在主控制器ex460之控制下被傳送。類似的傳送及接收處理被進行。在資料傳輸模式中,當發送一視訊、靜止影像、或視訊與音訊時,視訊信號處理器ex455經由以上實施例中所述之移動圖片編碼方法對儲存在記憶體ex467中之一視訊信號、或從相機ex465輸入之一視訊信號進行壓縮編碼,並且將經編碼視訊資料傳送至多工器/解多工器ex453。音訊信號處理器ex454在相機ex465正擷取一視訊或靜止影像的同時編碼由音訊輸入單元ex456所錄製之音訊信號,並且將經編碼音訊資料傳送至多工器/解多工器ex453。多工器/解多工器ex453使用一已定方案來多工處理經編碼視訊資料及經編碼音訊資料、使用調變器/解調變器(調變器/解調變器電路) ex452及傳送器/接收器ex451來調變及轉換資料、以及經由天線ex450來傳送結果。該已定方案可被預定。
當接收到附加在一電子郵件或一聊天中之視訊、或從一網頁連結之一視訊時,舉例而言,為了解碼經由天線ex450所接收到的經多工處理資料,多工器/解多工器ex453解多工處理該經多工處理資料以將該經多工處理資料區分成一視訊資料位元串流及一音訊資料位元串流、經由同步匯流排ex470將經編碼視訊資料供應給視訊信號處理器ex455、以及經由同步匯流排ex470將經編碼音訊資料供應給音訊信號處理器ex454。視訊信號處理器ex455使用對應於以上實施例中所述之移動圖片編碼方法之一移動圖片解碼方法對視訊信號進行解碼,並且包括在經連結移動圖片檔案中之視訊或一靜止影像係經由顯示控制器ex459在顯示器ex458上顯示。音訊信號處理器ex454解碼音訊信號,並且從音訊輸出單元ex457輸出音訊。由於即時串流傳輸變得越來越普及,可能有取決於使用者之環境,而音訊之再生在社交方面上可能不適當之例子。因此,作為一初始值,僅再生視訊資料之一組態,亦即,不再生音訊信號之一組態可能係較佳的;僅當接收到一輸入時,諸如當使用者點選視訊資料時,才可同步及再生音訊。
雖然以上實例中所使用的是智慧型手機ex115,仍可想到其他的實作態樣:包括一編碼器及一解碼器兩者之一收發器終端機;僅包括一編碼器之一傳送器終端機;以及僅包括一解碼器之一接收器終端機。在數位廣播系統之說明中,給定接收或傳送作為視訊資料與音訊資料經多工處理之一結果而取得之經多工處理資料之一實例。然而,經多工處理資料可以是與音訊資料除外之諸如有關於視訊之文字資料的資料進行多工處理之視訊資料。再者,可接收或傳送視訊資料本身,而不是經多工處理資料。
雖然將包括一CPU之主控制器ex460描述為控制編碼或解碼程序,各種終端機通常仍包括GPU。因此,可接受經由CPU及GPU共享之記憶體、或包括為了允許由CPU及GPU共同使用而被管理之一位址之記憶體,藉由利用GPU之執行能力來立刻處理一大型區域之一組態。這使得有可能縮短編碼時間、維持串流之即時性、以及減少延遲。特別的是,與動作估測、解塊濾波、樣本適應偏移(SAO)、及變換/量化有關之處理可藉由GPU代替CPU以圖片為單位來例如一次全部地有效實行。
10~23:區塊 100:編碼器 102:拆分器 104:減法器 106:變換器 108:量化器 110:熵編碼器 112、204:逆量化器 114、206:逆變換器 116、208:加法器 118、210:區塊記憶體 120、212:迴路濾波器 122、214:圖框記憶體 124、216:框內預測器 126、218:框間預測器 128、220:預測控制器 200:解碼器 202:熵解碼器 1000、1000'、2000、3000、4000:程序流程 S1001~S1003、S1002'、S2001~S2005、S3001~S3005、S4001~S4005、Sa_1~Sa_10、Sb_1、Sc_1a~Sc_1c、Sc_2、Sd_1a、Sd_1b、Sd_2~Sd_3、Se_1~Se_4、Sf_1~Sf_5、Sg_1~Sg_5、Sh_1~Sh_3、Si_1~Si_5、Sj_1~Sj_6、Sk_1~Sk_3、Sl_1~Sl_4、Sm_1~Sm_2、Sn_1~Sn_5、So_1~So_4、Sp_1~Sp_7、Sq_1、Sr_1、Sr_2a~Sr_2c、Ss_1~Ss_5:步驟 1201:邊界決定器 1203:濾波決定器 1205:濾波執行器 1202、1204、1206:開關 1207:濾波特性決定器 1208:程序決定器 a1、b1:處理器 a2、b2、ex467:記憶體 ex100:內容提供系統 ex101:網際網路 ex102:網際網路服務提供者 ex103:串流傳輸伺服器 ex104:通訊網路 ex106~ex110:基地台 ex111:電腦 ex112:遊戲裝置 ex113、ex465:相機 ex114:家用電器 ex115:智慧型手機 ex116:衛星 ex117:飛機 ex450:天線 ex451:傳送器/接收器 ex452:調變器/解調變器 ex453:多工器/解多工器 ex454:音訊信號處理器 ex455:視訊信號處理器 ex456:音訊輸入單元 ex457:音訊輸出單元 ex458:顯示器 ex459:顯示控制器 ex460:主控制器 ex461:電源電路 ex462:使用者介面輸入控制器 ex463:相機介面 ex464:插槽 ex466:使用者介面 ex468:SIM ex500:LSI MV_L、MV_U:動作向量 Pred、Pred_L、Pred_U:預測影像
圖1係一方塊圖,其根據一實施例繪示一編碼器之一功能組態。 圖2係一流程圖,其指出藉由該編碼器來進行之一總體編碼程序之一項實例。 圖3係一概念圖,其繪示區塊拆分之一項實例。 圖4A係一概念圖,其繪示一切片組態之一項實例。 圖4B係一概念圖,其繪示一圖磚組態之一項實例。 圖5A係一圖表,其針對各種變換類型指出變換基礎函數。 圖5B係一概念圖,其繪示例示性空間變化變換(SVT)。 圖6A係一概念圖,其繪示一適應性迴路濾波器(ALF)中所用一濾波形狀之一項實例。 圖6B係一概念圖,其繪示一ALF中所用一濾波形狀之另一實例。 圖6C係一概念圖,其繪示一ALF中所用一濾波形狀之另一實例。 圖7係一方塊圖,其指出作用為一解塊濾波器(DBF)之一迴路濾波器之一特定組態之一項實例。 圖8係一概念圖,其指出相對一區塊邊界具有一對稱濾波特性之一解塊濾波器之一實例。 圖9係一概念圖,用於繪示有在其上進行一解塊濾波程序之一區塊邊界。 圖10係一概念圖,其指出Bs值之實例。 圖11係一流程圖,其繪示藉由該編碼器之一預測處理器來進行之一程序之一項實例。 圖12係一流程圖,其繪示藉由該編碼器之該預測處理器來進行之一程序之另一實例。 圖13係一流程圖,其繪示藉由該編碼器之該預測處理器來進行之一程序之另一實例。 圖14係一概念圖,其繪示一實施例中在框內預測中所用之六十七種框內預測模式。 圖15係一流程圖,其繪示框間預測之一例示性基本處理流程。 圖16係一流程圖,其繪示推導動作向量之一項實例。 圖17係一流程圖,其繪示推導動作向量之另一實例。 圖18係一流程圖,其繪示推導動作向量之另一實例。 圖19係一流程圖,其繪示框間預測在正常框間模式中之一實例。 圖20係一流程圖,其繪示框間預測在合併模式中之一實例。 圖21係一概念圖,用於繪示一動作向量推導程序在合併模式中之一項實例。 圖22係一流程圖,其繪示框率提升轉換(FRUC)程序之一項實例。 圖23係一概念圖,用於繪示在兩個區塊之間沿著一動作軌跡的型樣匹配(雙側匹配)之一項實例。 圖24係一概念圖,用於繪示介於一目前圖片中之一模板與一參考圖片中之一區塊之間的型樣匹配(模板匹配)之一項實例。 圖25A係一概念圖,用於繪示基於複數個鄰近區塊之動作向量對各子區塊之一動作向量進行推導之一項實例。 圖25B係一概念圖,用於繪示對各子區塊在內有使用三個控制點之仿射模式中之一動作向量進行推導之一項實例。 圖26A係一概念圖,用於繪示一仿射合併模式。 圖26B係一概念圖,用於繪示內有使用兩個控制點之一仿射合併模式。 圖26C係一概念圖,用於繪示內有使用三個控制點之一仿射合併模式。 圖27係一流程圖,其繪示一程序在仿射合併模式中之一項實例。 圖28A係一概念圖,用於繪示內有使用兩個控制點之一仿射框間模式。 圖28B係一概念圖,用於繪示內有使用三個控制點之一仿射框間模式。 圖29係一流程圖,其繪示一程序在仿射框間模式中之一項實例。 圖30A係一概念圖,用於繪示一仿射框間模式,其中一目前區塊具有三個控制點且一鄰近區塊具有兩個控制點。 圖30B係一概念圖,用於繪示一仿射框間模式,其中一目前區塊具有兩個控制點且一鄰近區塊具有三個控制點。 圖31A係一流程圖,其繪示包括解碼器動作向量細化(DMVR)之一合併模式程序。 圖31B係一概念圖,用於繪示一DMVR程序之一項實例。 圖32係一流程圖,其繪示產生一預測影像之一項實例。 圖33係一流程圖,其繪示產生一預測影像之另一實例。 圖34係一流程圖,其繪示產生一預測影像之另一實例。 圖35係一流程圖,其繪示藉由一重疊區塊動作補償(OBMC)程序來進行之一預測影像校正程序之一項實例。 圖36係一概念圖,用於繪示藉由一OBMC程序來進行之一預測影像校正程序之一項實例。 圖37係一概念圖,用於繪示兩個三角形預測影像之產生。 圖38係一概念圖,用於繪示假設均勻線性動作之一模型。 圖39係一概念圖,用於繪示一預測影像產生方法之一項實例,該預測影像產生方法使用藉由一局部照明補償(LIC)程序進行之一亮度校正程序。 圖40係一方塊圖,其繪示該編碼器之一安裝實例。 圖41係一方塊圖,其根據一實施例繪示一解碼器之一功能組態。 圖42係一流程圖,其繪示藉由該解碼器來進行之一總體解碼程序之一項實例。 圖43係一流程圖,其繪示藉由該解碼器之一預測處理器來進行之一程序之一項實例。 圖44係一流程圖,其繪示藉由該解碼器之該預測處理器來進行之一程序之另一實例。 圖45係一流程圖,其繪示該解碼器中框間預測在正常框間模式中之一實例。 圖46係一方塊圖,其繪示該解碼器之一安裝實例。 圖47A係一流程圖,其根據一項實施例,繪示將一影像塊拆分成至少包括一第一分區及一第二分區之複數個分區、針對至少該第一分區從一動作向量候選者集合預測一動作向量、以及進行進一步處理之一程序流程之一實例。 圖47B係一流程圖,其根據一項實施例,繪示將一影像塊拆分成至少包括一第一分區及一第二分區之複數個分區、針對至少該第一分區從一單向預測動作向量候選者集合預測一動作向量、以及進行進一步處理之一程序流程之一實例。 圖48係一概念圖,用於繪示將一影像塊拆分成一第一分區及一第二分區之例示性方法。 圖49係一概念圖,用於繪示一第一分區之相鄰及非相鄰之空間鄰近分區。 圖50係一概念圖,用於針對一影像塊繪示單向預測及雙向預測動作向量候選者。 圖51係一概念圖,用於繪示從一雙向預測動作向量確定一單向預測動作向量。 圖52係一概念圖,用於繪示從一雙向預測動作向量確定一單向預測動作向量。 圖53係一概念圖,用於繪示從一雙向預測動作向量確定一單向預測動作向量。 圖54係一概念圖,用於繪示從一單向預測動作向量產生一或多個單向預測動作向量。 圖55係一概念圖,用於繪示從一單向預測動作向量產生一或多個單向預測動作向量。 圖56係一概念圖,用於繪示從一單向預測動作向量產生一或多個單向預測動作向量。 圖57係一概念圖,用於繪示一影像塊之第一及第二分區之單向動作向量。 圖58係一流程圖,其根據一項實施例,繪示從一第一單向預測動作向量候選者集合、或從包括雙向預測動作向量候選者及單向預測動作向量候選者之一第二動作向量候選者集合擇一對一影像塊之一分區之一動作向量根據該分區之一形狀進行預測、以及進行進一步處理之一程序流程之一實例。 圖59係一流程圖,其根據一項實施例,繪示從一第一單向預測動作向量候選者集合、或從包括雙向預測動作向量候選者及單向預測動作向量候選者之一第二動作向量候選者集合擇一對一影像塊之一分區之一動作向量根據該區塊之一尺寸、或該分區之一尺寸進行預測、以及進行進一步處理之一程序流程之一實例。 圖60係一流程圖,其根據一項實施例,繪示針對一第一分區及一第二分區從一動作向量候選者集合為該第一分區推導一動作向量且為該第二分區推導一動作向量、以及進行進一步處理之一程序流程之一實例。 圖61係一方塊圖,其繪示用於實施一內容配送服務之一內容提供系統之一總體組態。 圖62係一概念圖,其繪示可調式編碼中之一編碼結構之一實例。 圖63係一概念圖,其繪示可調式編碼中之一編碼結構之一實例。 圖64係一概念圖,其繪示一網頁之一顯示畫面之一實例。 圖65係一概念圖,其繪示一網頁之一顯示畫面之一實例。 圖66係一方塊圖,其繪示一智慧型手機之一項實例。 圖67係一方塊圖,其繪示一智慧型手機之一組態之一實例。
1000:程序流程
S1001~S1003:步驟

Claims (58)

  1. 一種影像編碼器,其包含: 電路系統;以及 耦合至該電路系統之一記憶體; 其中該電路系統在操作時: 將一目前影像塊拆分成複數個分區; 針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量;以及 使用該第一動作向量來編碼該第一分區。
  2. 如請求項1之編碼器,其中該電路系統在操作時: 產生該單向預測動作向量候選者集合。
  3. 如請求項2之編碼器,其中該電路系統在操作時: 將一動作向量候選者清單使用於該目前區塊來產生該單向預測動作向量候選者集合。
  4. 如請求項2之編碼器,其中該電路系統在操作時: 從一雙向預測動作向量候選者產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  5. 如請求項4之編碼器,其中該電路系統在操作時: 基於該雙向預測動作向量候選者之一索引,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者。
  6. 如請求項4之編碼器,其中該電路系統在操作時: 基於該雙向預測動作向量候選者之動作向量所指向之相應參考圖片,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者。
  7. 如請求項6之編碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量指向該等相應參考圖片之一參考圖片,該參考圖片依照一顯示順序最靠近包括該目前區塊之一圖片。
  8. 如請求項6之編碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量指向該等相應參考圖片之一參考圖片,該參考圖片依照一寫碼順序最靠近包括該目前區塊之一圖片。
  9. 如請求項6之編碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量依照一顯示順序位在包括該目前區塊之一圖片之前。
  10. 如請求項6之編碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量依照一顯示順序位在包括該目前區塊之一圖片之後。
  11. 如請求項6之編碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量指向該等相應參考圖片之一參考圖片,該參考圖片依照一顯示順序位在包括該目前區塊之一圖片之前並且最靠近該圖片。
  12. 如請求項4之編碼器,其中該電路系統在操作時: 基於與該雙向預測動作向量候選者之動作向量所指向之參考圖片相關聯之相應參考圖片清單,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者。
  13. 如請求項2之編碼器,其中該電路系統在操作時: 從一單向預測動作向量候選者產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  14. 如請求項2之編碼器,其中該電路系統在操作時: 從一或多個空間鄰近分區產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  15. 如請求項1之編碼器,其中該第一分區係一三角形形狀分區。
  16. 如請求項1之編碼器,其中該電路系統在操作時: 確定要基於該第一分區之一特性,從第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  17. 如請求項16之編碼器,其中該特性係該第一分區之一形狀,並且該電路系統在操作時,確定要回應於具有一非矩形形狀之該第一分區,從該第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  18. 如請求項16之編碼器,其中該特性係該第一分區之一尺寸,並且該電路系統在操作時,確定要基於該第一分區之該尺寸與一門檻分區尺寸之一比較,從該第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  19. 一種影像編碼器,其包含: 一拆分器,其在操作時,接收一原始圖片並將該原始圖片拆分成區塊, 一第一加法器,其在操作時,從該拆分器接收該等區塊並從一預測控制器接收預測、及將各預測從其對應區塊減去以輸出一殘差, 一變換器,其在操作時,對輸出自該加法器之該殘差進行一變換以輸出變換係數, 一量化器,其在操作時,量化該等變換係數以產生經量化變換係數, 一熵編碼器,其在操作時,編碼該經量化變換係數以產生一位元串流, 一逆量化器及變換器,其在操作時,逆量化該等經量化變換係數以取得該等變換係數,並且逆變換該等變換係數以取得該等殘差, 一第二加法器,其在操作時,將輸出自該逆量化器及變換器之該等殘差與輸出自該預測控制器之該等預測相加以重構該等區塊,及 該預測控制器,其耦合至一框間預測器、一框內預測器、及一記憶體,其中該框間預測器在操作時基於一經編碼參考圖片中之一參考區塊來產生一目前區塊之一預測,並且該框內預測器在操作時基於一目前圖片中之一經編碼參考區塊來產生一目前區塊之一預測,其中該框間預測器在操作時, 將一目前影像塊拆分成複數個分區; 針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量;以及 使用該第一動作向量來編碼該第一分區。
  20. 如請求項19之影像編碼器,其中該框間預測器在操作時: 產生該單向預測動作向量候選者集合。
  21. 如請求項20之影像編碼器,其中該框間預測器在操作時: 將一動作向量候選者清單使用於該目前區塊來產生該單向預測動作向量候選者集合。
  22. 如請求項20之影像編碼器,其中該框間預測器在操作時: 從一雙向預測動作向量候選者產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  23. 如請求項20之影像編碼器,其中該框間預測器在操作時: 從一單向預測動作向量候選者產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  24. 如請求項19之影像編碼器,其中該框間預測器在操作時: 確定要基於該第一分區之一特性,從第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  25. 如請求項24之影像編碼器,其中該特性係該第一分區之一尺寸,並且該框間預測器在操作時,確定要基於該第一分區之該尺寸與一門檻分區尺寸之一比較,從該第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  26. 一種影像編碼方法,其包含: 將要編碼之一目前影像塊拆分成複數個分區; 針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量;以及 使用該第一動作向量來編碼該第一分區。
  27. 如請求項26之影像編碼方法,其包含: 產生該單向預測動作向量候選者集合。
  28. 如請求項26之影像編碼方法,其包含: 確定要基於該第一分區之一特性,從第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  29. 如請求項28之影像編碼方法,其中該特性係該第一分區之一尺寸,並且該方法包含確定要基於該第一分區之該尺寸與一門檻分區尺寸之一比較,從該第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  30. 一種影像解碼器,其包含: 電路系統;以及 耦合至該電路系統之一記憶體; 其中該電路系統在操作時: 將一目前影像塊拆分成複數個分區; 針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量;以及 使用該第一動作向量來解碼該第一分區。
  31. 如請求項30之解碼器,其中該電路系統在操作時: 產生該單向預測動作向量候選者集合。
  32. 如請求項31之解碼器,其中該電路系統在操作時: 將一動作向量候選者清單使用於該目前區塊來產生該單向預測動作向量候選者集合。
  33. 如請求項31之解碼器,其中該電路系統在操作時: 從一雙向預測動作向量候選者產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  34. 如請求項33之解碼器,其中該電路系統在操作時: 基於該雙向預測動作向量候選者之一索引,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者。
  35. 如請求項33之解碼器,其中該電路系統在操作時: 基於該雙向預測動作向量候選者之動作向量所指向之相應參考圖片,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者。
  36. 如請求項35之解碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量指向該等相應參考圖片之一參考圖片,該參考圖片依照一顯示順序最靠近包括該目前區塊之一圖片。
  37. 如請求項35之解碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量指向該等相應參考圖片之一參考圖片,該參考圖片依照一寫碼順序最靠近包括該目前區塊之一圖片。
  38. 如請求項35之解碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量依照一顯示順序位在包括該目前區塊之一圖片之前。
  39. 如請求項35之解碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量依照一顯示順序位在包括該目前區塊之一圖片之後。
  40. 如請求項35之解碼器,其中該電路系統在操作時: 藉由選擇該雙向預測動作向量候選者之一動作向量,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者,該動作向量指向該等相應參考圖片之一參考圖片,該參考圖片依照一顯示順序位在包括該目前區塊之一圖片之前並且最靠近該圖片。
  41. 如請求項33之解碼器,其中該電路系統在操作時: 基於與該雙向預測動作向量候選者之動作向量所指向之參考圖片相關聯之相應參考圖片清單,產生該單向預測動作向量候選者集合之該單向預測動作向量候選者。
  42. 如請求項31之解碼器,其中該電路系統在操作時: 從一單向預測動作向量候選者產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  43. 如請求項31之解碼器,其中該電路系統在操作時: 從一或多個空間鄰近分區產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  44. 如請求項30之解碼器,其中該第一分區係一三角形形狀分區。
  45. 如請求項30之解碼器,其中該電路系統在操作時: 確定要基於該第一分區之一特性,從第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  46. 如請求項45之解碼器,其中該特性係該第一分區之一形狀,並且該電路系統在操作時,確定要回應於具有一非矩形形狀之該第一分區,從該第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  47. 如請求項45之解碼器,其中該特性係該第一分區之一尺寸,並且該電路系統在操作時,確定要基於該第一分區之該尺寸與一門檻分區尺寸之一比較,從該第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  48. 一種影像解碼器,其包含: 一熵解碼器,其在操作時,接收並解碼一經編碼位元串流以取得經量化變換係數, 一逆量化器及變換器,其在操作時,逆量化該等經量化變換係數以取得變換係數,並且逆變換該等變換係數以取得殘差, 一加法器,其在操作時,將輸出自該逆量化器及變換器之該等殘差與輸出自一預測控制器之預測相加以重構區塊,及 該預測控制器,其耦合至一框間預測器、一框內預測器、及一記憶體,其中該框間預測器在操作時基於一經解碼參考圖片中之一參考區塊來產生一目前區塊之一預測,並且該框內預測器在操作時基於一目前圖片中之一經編碼參考區塊來產生一目前區塊之一預測,其中該框間預測器在操作時, 將一目前影像塊拆分成複數個分區; 針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量;以及 使用該第一動作向量來解碼該第一分區。
  49. 如請求項48之影像解碼器,其中該框間預測器在操作時: 產生該單向預測動作向量候選者集合。
  50. 如請求項49之影像解碼器,其中該框間預測器在操作時: 將一動作向量候選者清單使用於該目前區塊來產生該單向預測動作向量候選者集合。
  51. 如請求項49之影像解碼器,其中該框間預測器在操作時: 從一雙向預測動作向量候選者產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  52. 如請求項49之影像解碼器,其中該框間預測器在操作時: 從一單向預測動作向量候選者產生該單向預測動作向量候選者集合之一單向預測動作向量候選者。
  53. 如請求項48之影像解碼器,其中該框間預測器在操作時: 確定要基於該第一分區之一特性,從第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  54. 如請求項53之影像解碼器,其中該特性係該第一分區之一尺寸,並且該框間預測器在操作時,確定要基於該第一分區之該尺寸與一門檻分區尺寸之一比較,從該第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  55. 一種影像解碼方法,其包含: 將要解碼之一目前影像塊拆分成複數個分區; 針對該等複數個分區中之一第一分區,從一單向預測動作向量候選者集合預測一第一動作向量;以及 使用該第一動作向量來解碼該第一分區。
  56. 如請求項55之影像解碼方法,其包含: 產生該單向預測動作向量候選者集合。
  57. 如請求項55之影像解碼方法,其包含: 確定要基於該第一分區之一特性,從第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
  58. 如請求項57之影像解碼方法,其中該特性係該第一分區之一尺寸,並且該方法包含確定要基於該第一分區之該尺寸與一門檻分區尺寸之一比較,從該第一單向預測動作向量候選者集合,針對該第一分區預測該第一動作向量。
TW108125111A 2018-07-17 2019-07-16 用於視訊寫碼之系統及方法 TWI808218B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862699404P 2018-07-17 2018-07-17
US62/699,404 2018-07-17

Publications (2)

Publication Number Publication Date
TW202019174A true TW202019174A (zh) 2020-05-16
TWI808218B TWI808218B (zh) 2023-07-11

Family

ID=67480266

Family Applications (2)

Application Number Title Priority Date Filing Date
TW108125111A TWI808218B (zh) 2018-07-17 2019-07-16 用於視訊寫碼之系統及方法
TW112124090A TW202344048A (zh) 2018-07-17 2019-07-16 用於視訊寫碼之系統及方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW112124090A TW202344048A (zh) 2018-07-17 2019-07-16 用於視訊寫碼之系統及方法

Country Status (8)

Country Link
US (3) US20200029087A1 (zh)
JP (2) JP2022503464A (zh)
KR (1) KR20210028651A (zh)
CN (1) CN112514394A (zh)
BR (1) BR112020026686A2 (zh)
MX (1) MX2021000265A (zh)
TW (2) TWI808218B (zh)
WO (1) WO2020017423A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114615493A (zh) * 2016-03-24 2022-06-10 英迪股份有限公司 视频解码方法、视频编码方法和可读记录介质
US11750832B2 (en) * 2017-11-02 2023-09-05 Hfi Innovation Inc. Method and apparatus for video coding
JP2022503464A (ja) * 2018-07-17 2022-01-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ ビデオコーディング用動きベクトル予測
US11030777B2 (en) * 2018-09-14 2021-06-08 Sony Group Corporation Adaptive subband coding for lifting transform
EP3850846A4 (en) * 2018-10-08 2021-12-15 Huawei Technologies Co., Ltd. DEVICES AND METHODS FOR PREDICTING A TRIANGULAR PARTITION OF AN ENCODING BLOCK
JP7164813B2 (ja) * 2018-11-21 2022-11-02 日本電信電話株式会社 予測装置、予測方法、及びプログラム。
US10778977B2 (en) * 2018-12-05 2020-09-15 Qualcomm Incorporated Triangle motion information for video coding
CN113852815B (zh) * 2018-12-25 2022-12-27 北京达佳互联信息技术有限公司 利用三角形形状预测单元的视频编码方法、设备及介质
US11412221B2 (en) * 2019-06-24 2022-08-09 Alibaba Group Holding Limited Method and apparatus for motion field storage in triangle partition mode and geometric partition mode
US11601651B2 (en) * 2019-06-24 2023-03-07 Alibaba Group Holding Limited Method and apparatus for motion vector refinement
EP3987795A4 (en) * 2019-08-15 2023-02-08 Alibaba Group Holding Limited BLOCK PARTITION METHODS FOR VIDEO CODING
WO2021148038A1 (en) * 2020-01-26 2021-07-29 Beijing Bytedance Network Technology Co., Ltd. Motion compensation along different directions
US20240029316A1 (en) * 2022-07-14 2024-01-25 Tencent America LLC Systems and methods for reflection symmetry-based mesh coding

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BRPI0710048A2 (pt) 2006-03-30 2011-08-02 Lg Electronics Inc método e aparelho para decodificar / codificar um sinal de vìdeo
RU2010120518A (ru) 2007-10-15 2011-11-27 Нокиа Корпорейшн (Fi) Пропуск информации движения и одноцикловое кодирование для многоракурсного видеоконтента
US9445121B2 (en) * 2008-08-04 2016-09-13 Dolby Laboratories Licensing Corporation Overlapped block disparity estimation and compensation architecture
KR101703362B1 (ko) 2008-09-04 2017-02-06 톰슨 라이센싱 암시적 모션 예측을 이용한 예측 리파인먼트를 위한 방법들 및 장치들
JP2012023597A (ja) * 2010-07-15 2012-02-02 Sony Corp 画像処理装置及び画像処理方法
RU2580942C2 (ru) 2010-10-06 2016-04-10 Нтт Докомо, Инк. Устройство прогнозирующего кодирования изображений, способ прогнозирующего кодирования изображений, программа прогнозирующего кодирования изображений, устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений и программа прогнозирующего декодирования изображений
US9807424B2 (en) * 2011-01-10 2017-10-31 Qualcomm Incorporated Adaptive selection of region size for identification of samples in a transition zone for overlapped block motion compensation
US9538180B2 (en) 2012-12-17 2017-01-03 Qualcomm Incorporated Motion vector prediction in video coding
KR20130067280A (ko) * 2013-04-18 2013-06-21 엠앤케이홀딩스 주식회사 인터 예측 부호화된 동영상 복호화 방법
WO2015006884A1 (en) 2013-07-19 2015-01-22 Qualcomm Incorporated 3d video coding with partition-based depth inter coding
US10244253B2 (en) 2013-09-13 2019-03-26 Qualcomm Incorporated Video coding techniques using asymmetric motion partitioning
SG11201703454XA (en) * 2014-11-18 2017-06-29 Mediatek Inc Method of bi-prediction video coding based on motion vectors from uni-prediction and merge candidate
US10511835B2 (en) * 2015-09-02 2019-12-17 Mediatek Inc. Method and apparatus of decoder side motion derivation for video coding
WO2017048008A1 (ko) * 2015-09-17 2017-03-23 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측 방법 및 장치
US20170244964A1 (en) * 2016-02-23 2017-08-24 Mediatek Inc. Method and Apparatus of Flexible Block Partition for Video Coding
US10560718B2 (en) * 2016-05-13 2020-02-11 Qualcomm Incorporated Merge candidates for motion vector prediction for video coding
US20190158860A1 (en) * 2016-05-13 2019-05-23 Sharp Kabushiki Kaisha Video decoding device
WO2018105582A1 (ja) * 2016-12-09 2018-06-14 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
US20180199057A1 (en) * 2017-01-12 2018-07-12 Mediatek Inc. Method and Apparatus of Candidate Skipping for Predictor Refinement in Video Coding
US10602180B2 (en) * 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction
WO2019151297A1 (ja) * 2018-01-30 2019-08-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019151279A1 (ja) * 2018-01-30 2019-08-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
JP7315480B2 (ja) * 2018-01-30 2023-07-26 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
KR102551363B1 (ko) * 2018-02-28 2023-07-04 삼성전자주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
WO2019199127A1 (ko) * 2018-04-12 2019-10-17 삼성전자 주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
WO2019221103A1 (ja) * 2018-05-17 2019-11-21 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
US20200014931A1 (en) * 2018-07-06 2020-01-09 Mediatek Inc. Methods and Apparatuses of Generating an Average Candidate for Inter Picture Prediction in Video Coding Systems
JP2022503464A (ja) * 2018-07-17 2022-01-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ ビデオコーディング用動きベクトル予測
WO2020098713A1 (en) * 2018-11-13 2020-05-22 Beijing Bytedance Network Technology Co., Ltd. Motion candidate list construction for prediction

Also Published As

Publication number Publication date
JP2023126578A (ja) 2023-09-07
TW202344048A (zh) 2023-11-01
TWI808218B (zh) 2023-07-11
WO2020017423A1 (en) 2020-01-23
MX2021000265A (es) 2021-03-25
JP2022503464A (ja) 2022-01-12
US20210385474A1 (en) 2021-12-09
BR112020026686A2 (pt) 2021-03-30
CN112514394A (zh) 2021-03-16
US20230319300A1 (en) 2023-10-05
US11722684B2 (en) 2023-08-08
US20200029087A1 (en) 2020-01-23
KR20210028651A (ko) 2021-03-12

Similar Documents

Publication Publication Date Title
US10869051B2 (en) Image decoder and image decoding method capable of boundary smoothing operation between triangle partitions
US20220046266A1 (en) Image encoder and related non-transitory computer readable medium for image decoding
TWI808218B (zh) 用於視訊寫碼之系統及方法
US20210409743A1 (en) Image encoder, image decoder, image encoding method, and image decoding method
TWI832891B (zh) 用於視訊寫碼之系統及方法
US11509908B2 (en) Encoder, decoder, encoding method, and decoding method
WO2020171046A1 (en) Image encoder and image decoder
WO2020141591A1 (ja) 符号化装置、復号装置、符号化方法、及び復号方法
US20210037243A1 (en) Encoder, decoder, encoding method, and decoding method
KR20210145762A (ko) 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
JP7189234B2 (ja) 符号化装置及び復号装置
JP7337222B2 (ja) 符号化装置及び復号装置
JP2022168052A (ja) 復号装置及び符号化装置
WO2020162535A1 (ja) 符号化装置、復号装置、符号化方法、および復号方法
WO2020116242A1 (ja) 符号化装置、復号装置、符号化方法及び復号方法
US11490093B2 (en) Encoder, decoder, encoding method, and decoding method
WO2020162534A1 (ja) 符号化装置、復号装置、符号化方法、および復号方法
WO2020179715A1 (ja) 符号化装置、復号装置、符号化方法及び復号方法
WO2020171224A1 (ja) 符号化装置、復号装置、符号化方法及び復号方法
WO2020141609A1 (ja) 符号化装置、復号装置、符号化方法および復号方法
WO2020085400A1 (ja) 符号化装置、復号装置、符号化方法及び復号方法
KR20220024007A (ko) 부호화 장치, 복호 장치, 부호화 방법, 및 복호 방법