TWI565298B - 利用畫面內矩形區塊估測模式的視訊編解碼方法及其裝置 - Google Patents

利用畫面內矩形區塊估測模式的視訊編解碼方法及其裝置 Download PDF

Info

Publication number
TWI565298B
TWI565298B TW103145939A TW103145939A TWI565298B TW I565298 B TWI565298 B TW I565298B TW 103145939 A TW103145939 A TW 103145939A TW 103145939 A TW103145939 A TW 103145939A TW I565298 B TWI565298 B TW I565298B
Authority
TW
Taiwan
Prior art keywords
sub
block
current
prediction unit
size
Prior art date
Application number
TW103145939A
Other languages
English (en)
Other versions
TW201540047A (zh
Inventor
彭文孝
杭學鳴
陳俊吉
廖如伶
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 TW201540047A publication Critical patent/TW201540047A/zh
Application granted granted Critical
Publication of TWI565298B publication Critical patent/TWI565298B/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for 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/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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/115Selection of the code volume for a coding unit prior to coding

Landscapes

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

Description

利用畫面內矩形區塊估測模式的視訊編解碼方法及其裝置
本發明是有關於一種視訊處理的方法及其裝置,且特別是有關於一種利用畫面內矩形區塊估測模式的視訊編解碼方法及其編解碼器。
在現今的數位多媒體發展下,高畫質影音串流的比例提高,而在有限的儲存容量和網路頻寬下接收或傳送影像資料,視訊壓縮的技術佔有不可或缺的地位。高效率視訊編碼(High Efficiency Video Coding,H.265/HEVC)是目前的視訊標準之一,其係為視訊編碼專家群(Video Coding Expert Group,VCEG)與動態影像專家群(Moving Pictures Experts Group,MPEG)共同組成之聯合視訊小組所擬定的視訊壓縮標準。相較於高階視訊編碼(Advanced Video Coding,H.264/AVC),H.265/HEVC的視訊壓縮標準除了具有較高的壓縮率與視訊品質外,其最高可支援到超解析度(Ultra High Definition,UHD)的影像規格。
H.265/HEVC的視訊編碼機制是先將一個編碼畫面切割 成多個等大小且形狀為正方形的編碼樹單元(Coding Tree Unit,CTU),其中編碼樹單元的大小可以是64×64、32×32、16×16或是8×8的區塊(單位為像素)。接著,以四分樹(Quadtree)的方式將編碼樹單元切割成一個或數個編碼單元(Coding Unit,CU),其中每一編碼單元為等於或小於編碼樹單元的方正矩形,其大小可以是64×64、32×32、16×16或是8×8的區塊,並且以2N×2N來表示。編碼單元內的像素係採用同一種編碼模式,並且依據其編碼模式進一步地將該編碼單元切割成一個、二個或是四個預測單元(Prediction Unit,PU),其切割方式包括:畫面內預測模式(Intra Prediction)、畫面間預測模式(Inter Prediction)以及畫面內區塊複製模式(Intra Block Copy,IBC),而在同一預測單元內的像素係採用同種預測方式。
畫面內預測模式所採用的預測方式是以周圍影像做為重 建的取樣樣本,此模式僅允許方正矩形切割,其支援2N×2N及N×N的切割模式。畫面間預測模式所採用的預測是以運動補償的方式,此模式允許對稱與非對稱切割,其支援2N×2N、N×2N、2N×N、N×N的對稱切割模式以及2N×nU、2N×nD、nL×2N、nR×2N的非對稱切割模式,其中nU、nD、nL以及nR分屬於較短邊的不同位置。畫面內區塊複製模式為畫面內預測模式的特例,其是將鄰近畫面的區塊複製到目前編碼單元的子區塊以減少傳輸資訊量,此模式僅允許2Nx2N的切割。
一個編碼單元中的各個預測單元將於參考畫面中搜尋匹 配的參考區塊,並且進一步地計算各個預測區塊與其參考區塊的殘量(Residual)以進行殘量編碼。殘量編碼係以四分樹方式,將編碼單元切割成一個或多個方正矩形的轉換單元(Transform Unit,TU),每一轉換單元在經由跨分量預測(Cross Component Prediction,CCP)、殘量差分脈衝編碼調變(Residual Differential Pulse-code Modulation,RDPCM)、離散餘弦轉換(Discrete Cosine Transform,DCT)以及量化(Quantization)後,將完成殘量編碼。 最後,每一編碼單元將依據其編碼模式於編碼端重建。
然而,H.265/HEVC的視訊壓縮標準雖可提高壓縮率,但 由於編碼單元在畫面內預測模式以及畫面內區塊複製模式之中,僅允許方正矩形的預測單元,因此較不易搜尋到匹配的參考區塊,進而影響到編碼的效能。
有鑑於此,本發明提供一種視訊編碼方法、視訊解碼方法、編碼器以及解碼器,其能夠有效地提升視訊影像的編碼效能。
本發明提出一種視訊編碼方法,適用於視訊編碼器,此方法包括下列步驟:接收一序列輸入畫面之中的一目前編碼畫面;根據預測單元切割模式,切割目前編碼畫面中的目前編碼樹單元中的目前編碼單元為兩個非方正矩形的預測單元,其中各所述預測單元分別對應於該序列輸入畫面中的參考畫面,至少一所 述參考畫面為目前編碼畫面,所述預測單元包括目前預測單元,其中目前編碼單元的大小為2N×2N;於目前預測單元所對應的參考畫面的搜尋範圍內,搜尋對應於目前預測單元的最佳參考區塊,並且取得目前預測單元與最佳參考區塊之間的最佳區塊向量,其中最佳區塊向量為目前預測單元與最佳參考區塊之間的相對位置;以及根據預測單元切割模式以及關聯於最佳區塊向量的資訊,編碼目前預測單元。
本發明提出一種視訊編碼器,包括接收電路、切割電路、 搜尋電路以及編碼電路,其中切割電路耦接接收電路,搜尋電路耦接切割電路,編碼電路耦接搜尋電路。接收電路用以接收一序列輸入畫面之中的一目前編碼畫面。切割電路,用以切割目前編碼畫面中的目前編碼樹單元中的目前編碼單元為兩個非方正矩形的預測單元,其中各所述預測單元分別對應於該序列輸入畫面中的參考畫面,至少一所述參考畫面為目前編碼畫面,所述預測單元包括目前預測單元其中目前編碼單元的大小為2N×2N。搜尋電路用以於目前預測單元所對應的參考畫面的搜尋範圍內,搜尋對應於目前預測單元的最佳參考區塊,並且取得目前預測單元與最佳參考區塊之間的最佳區塊向量,其中最佳區塊向量為目前預測單元與最佳參考區塊之間的相對位置。編碼電路用以根據預測單元切割模式以及關聯於最佳區塊向量的資訊,編碼目前預測單元。
本發明提出一種視訊解碼方法,適用於視訊解碼器,此方法包括下列步驟:接收一序列已編碼畫面之中的一目前解碼畫 面、預測單元切割模式以及關聯於最佳區塊向量的資訊;根據預測單元切割模式,切割目前解碼畫面中的目前編碼樹單元中的目前編碼單元為兩個非方正矩形的預測單元,其中各所述預測單元分別對應於該序列已編碼畫面中的參考畫面,至少一所述參考畫面為目前解碼畫面,所述預測單元包括目前預測單元,其中目前編碼單元的大小為2N×2N;根據關聯於最佳區塊向量的資訊,解碼目前預測單元,其中最佳區塊向量為目前預測單元與最佳參考區塊之間的相對位置。
本發明提出一種視訊解碼器,包括接收電路、切割電路 以及編碼電路,其中切割電路耦接接收電路,解碼電路耦接切割電路。接收電路用以接收一序列已編碼畫面之中的一目前解碼畫面、預測單元切割模式以及關聯於最佳區塊向量的資訊。切割電路用以根據預測單元切割模式,切割目前解碼畫面中的目前編碼樹單元中的目前編碼單元為兩個非方正矩形的預測單元,其中各所述預測單元分別對應於該序列已編碼畫面中的參考畫面,至少一所述參考畫面為目前解碼畫面,所述預測單元包括目前預測單元,其中目前編碼單元的大小為2N×2N。解碼電路用以根據關聯於最佳區塊向量的資訊,解碼目前預測單元,其中最佳區塊向量為目前預測單元與最佳參考區塊之間的相對位置。
在本發明的一實施例中,上述的預測單元切割模式為橫向切割,並且各所述預測單元的大小皆為2N×N。
在本發明的一實施例中,上述的預測單元切割模式為橫 向切割,並且各所述預測單元的大小分別為2N×M以及2N×(2N-M),其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N。
在本發明的一實施例中,上述的預測單元切割模式為縱向切割,並且各所述預測單元的大小皆為N×2N。
在本發明的一實施例中,上述的預測單元切割模式為縱向切割,並且各所述預測單元的大小分別M×2N以及(2N-M)×2N,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N。
本發明提出另一種視訊編碼方法,適用於視訊編碼器,此方法包括下列步驟:接收一序列輸入畫面之中的一目前編碼畫面;根據子區塊切割模式,切割目前編碼畫面中的目前編碼樹單元中的目前編碼單元的目前預測單元為多個子區塊,其中所述子區塊包括目前子區塊,各所述子區塊分別對應於該序列輸入畫面中的參考畫面,至少一所述參考畫面為目前編碼畫面,其中目前預測單元的大小係根據預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N或是(2N-M)×2N其中之一者,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N;於目前子區塊所對應的參考畫面的搜尋範圍內,搜尋對應於目前子區塊的最佳參考子區塊,並且取得目前子區塊與最佳參考子區塊之間的最佳子區塊向量,其中最佳子區塊向量為目前子區塊與最佳參考子區塊之間的相對位置;以及根據預測單元切割模式、子區塊切割模式以及關聯於最佳子區塊向量的資訊,編碼目前子 區塊。
本發明提出另一種視訊編碼器,包括接收電路、切割電路、搜尋電路以及編碼電路,其中切割電路耦接接收電路,搜尋電路耦接切割電路,編碼電路耦接搜尋電路。接收電路用以接收一序列輸入畫面之中的一目前編碼畫面。切割電路用以根據子區塊切割模式,切割目前編碼畫面中的目前編碼樹單元中的目前編碼單元的目前預測單元為多個子區塊,其中所述子區塊包括目前子區塊,各所述子區塊分別對應於該序列輸入畫面中的參考畫面,至少一所述參考畫面為目前編碼畫面,其中目前預測單元的大小係根據預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N或是(2N-M)×2N其中之一者,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N。搜尋電路用以於目前子區塊所對應的參考畫面的搜尋範圍內,搜尋對應於目前子區塊的最佳參考子區塊,並且取得目前子區塊與最佳參考子區塊之間的最佳子區塊向量,其中最佳子區塊向量為目前子區塊與最佳參考子區塊之間的相對位置。編碼電路用以根據預測單元切割模式、子區塊切割模式以及關聯於最佳子區塊向量的資訊,編碼目前子區塊。
本發明提出另一種視訊解碼方法,適用於視訊解碼器, 此方法包括下列步驟:接收一序列輸入畫面之中的一目前解碼畫面、預測單元切割模式、子區塊切割模式以及關聯於最佳子區塊向量的資訊;根據子區塊切割模式,切割目前解碼畫面中的目前 編碼樹單元中的目前編碼單元的目前預測單元為多個子區塊,其中所述子區塊包括目前子區塊,各所述子區塊分別對應於該序列輸入畫面中的參考畫面,至少一所述參考畫面為目前編碼畫面,其中目前預測單元的大小係根據預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N或是(2N-M)×2N其中之一者,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N;以及根據關聯於最佳子區塊向量的資訊,解碼目前子區塊,其中最佳子區塊向量為目前子區塊與最佳參考子區塊之間的相對位置。
本發明提出另一種視訊解碼器,包括接收電路、切割電 路以及編碼電路,其中切割電路耦接接收電路,解碼電路耦接切割電路。接收電路用以接收一序列輸入畫面之中的一目前解碼畫面、預測單元切割模式、子區塊切割模式以及關聯於最佳子區塊向量的資訊。切割電路用以根據子區塊切割模式,切割目前解碼畫面中的目前編碼樹單元中的目前編碼單元的目前預測單元為多個子區塊,其中所述子區塊包括目前子區塊,各所述子區塊分別對應於該序列輸入畫面中的參考畫面,至少一所述參考畫面為目前編碼畫面,其中目前預測單元的大小係根據預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N或是(2N-M)×2N其中之一者,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N。編碼電路用以根據關聯於最佳子區塊向量的資訊,解碼目前子區塊,其中最佳子區塊向量為目前子區 塊與最佳參考子區塊之間的相對位置。
在本發明的一實施例中,上述的子區塊切割模式為橫向切割並且各所述子區塊的寬度等於目前預測單元的寬度。當各所述子區塊的高度為1時,各所述子區塊的大小為以下其中之一者:當目前預測單元的大小為2N×2N、2N×N、2N×M、2N×(2N-M),各所述子區塊的大小可以為2N×1;當目前預測單元的大小為N×2N時,各所述子區塊的大小可以為N×1;當目前預測單元的大小為M×2N時,各所述子區塊的大小可以為M×1;當目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小為(2N-M)×1。當各所述子區塊的高度為L時,各所述子區塊的大小為以下其中之一者:當目前預測單元的大小為2N×2N時,各所述子區塊的大小可以為2N×L,其中1<L≦2N。當目前預測單元的大小為2N×N時,各所述子區塊的大小可以為2N×L,其中1<L≦N。當目前預測單元的大小為2N×M時,各所述子區塊的大小可以為2N×L,其中1<L≦M。當目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小可以為2N×L,其中1<L≦2N-M。當目前預測單元的大小為N×2N時,各所述子區塊的大小可以為N×L,其中1<L≦2N。當目前預測單元的大小為M×2N時,各所述子區塊的大小可以為M×L,其中1<L≦2N。當目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小可以為(2N-M)×L,其中1<L≦2N。在此的L皆為2的指數倍。
在本發明的一實施例中,上述的子區塊切割模式為縱向 切割並且各所述子區塊的高度等於目前預測單元的高度。當各所述子區塊的寬度為1時,各所述子區塊的大小為以下其中之一者:當目前預測單元的大小為2N×2N、N×2N、M×2N、(2N-M)×2N,各所述子區塊的大小可以為1×2N;當目前預測單元的大小為2N×N時,各所述子區塊的大小可以為1×N;當目前預測單元的大小為2N×M時,各所述子區塊的大小可以為1×M;當目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小可以為1×(2N-M)。當各所述子區塊的寬度為L時,各所述子區塊的大小為以下其中之一者:當目前預測單元的大小為2N×2N時,各所述子區塊的大小可以為L×2N,其中1<L≦2N。當目前預測單元的大小為2N×N時,各所述子區塊的大小可以為L×N,其中1<L≦2N。 當目前預測單元的大小為2N×M時,各所述子區塊的大小可以為L×M,其中1<L≦2N。當目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小可以為L×(2N-M),其中1<L≦2N。當目前預測單元的大小為N×2N時,各所述子區塊的大小可以為L×2N,其中1<L≦N。當目前預測單元的大小為M×2N時,各所述子區塊的大小可以為L×2N,其中1<L≦M。當目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小可以為L×2N,其中1<L≦(2N-M)。在此的L亦皆為2的指數倍。
基於上述,本發明所提出的視訊編碼方法、視訊解碼方 法、編碼器以及解碼器能夠彈性地將編碼單元分割為兩個非方正矩形的預測單元,又可進一步地將預測單元分割為多個子區塊, 以增進自參考畫面中搜尋到各個預測單元或者是子區塊的參考區塊之準確性,以有效地提升視訊影像的編碼效能。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
100A‧‧‧視訊發送平台
103‧‧‧編碼緩衝器
100B‧‧‧視訊接收平台
150‧‧‧網路
101‧‧‧視訊來源
120‧‧‧視訊解碼器
110‧‧‧視訊編碼器
122‧‧‧接收電路
112‧‧‧接收電路
124‧‧‧切割電路
114‧‧‧切割電路
126‧‧‧編碼電路
116‧‧‧搜尋電路
105‧‧‧播放
118‧‧‧編碼電路
S202~S208、S802~S808‧‧‧視訊編碼方法的流程
301、302、303、304、401、402、403、501、502、512、503、513、601、602、603、604、605‧‧‧目前編碼單元
301a、301b、302a、302b、303a、303b、304a、304b‧‧‧預測單元
401a、402a、403a、501a、502a、512a、503b、513b、601a、602a、603b、604a、605b、901、902、903‧‧‧目前預測單元
401b、402b、403b‧‧‧最佳參考區塊
SR1、SR3、SR5‧‧‧搜尋範圍
BV1、BV2、BV3‧‧‧最佳區塊向量
A10、A11、B10、B11、B12、A20、A21、B20、B21、B22、A200、A201、B200、B201、B202、A30、A31、B30、B31、B32、A300、A301、B300、B301、B302、C1、D1、C2、D2、C3、D3、C4、D4、C5、D5‧‧‧區塊
901a、901b、901c‧‧‧子區塊
S702~S706、S1002~S1006‧‧‧視訊解碼方法的流程
圖1是根據本發明一實施例所繪示之視訊編解碼方法所提出的一種硬體系統架構的方塊圖。
圖2為根據本發明之一實施例所繪示的視訊編碼方法的流程圖。
圖3A~圖3D為根據本發明之一實施例所繪示的多種預測單元切割模式的範例。
圖4A~4C根據本發明之一實施例所繪示的多種搜尋方式的範例。
圖5A~5C2為根據本發明之一實施例所繪示的畫面間預測模式下的三種區塊向量預測範例。
圖6A~6E為根據本發明之一實施例所繪示的畫面內預測模式下的三種區塊向量預測範例。
圖7為根據本發明之一實施例所繪示的視訊解碼方法的流程圖。
圖8為根據本發明之一實施例所繪示的視訊編碼方法的流程 圖。
圖9A~圖9C為根據本發明之一實施例所繪示的多種預測單元切割模式的範例。
圖10為根據本發明之一實施例所繪示的視訊解碼方法的流程圖。
本發明的部份實施例接下來將會配合附圖來詳細描述, 以下的描述所引用的元件符號,當不同附圖出現相同的元件符號將視為相同或相似的元件。這些實施例只是本發明的一部份,並未揭示所有本發明的可實施方式。更確切的說,這些實施例只是本發明的專利申請範圍中的裝置與方法的範例。
圖1是根據本發明一實施例所繪示之視訊編解碼方法所 提出的一種硬體系統架構的方塊圖,但此僅是為了方便說明,並不用以限制本發明。
請參照圖1,在本實施例中,圖1中的系統包括視訊發送 平台100A以及視訊接收平台100B。視訊發送平台100A包括視訊來源101,其係為用以提供視訊或動態影像的裝置。視訊來源101將視訊串流或動態影像的原始檔輸出至視訊編碼器110。視訊編碼器110將編碼後的視訊輸出至編碼緩衝器103。接著,視訊發送平台100A可透過網路150,利用Wi-Fi通訊協定、2G通訊協定、3G通訊協定或4G通訊協定、ADSL寬頻或光纖網路的方式等通訊方 式將編碼後的視訊輸出至視訊接收平台100B。視訊接收平台100B包括視訊解碼器120,其可將自視訊發送平台100A所接收編碼後的視訊進行解碼,並且將解碼後的視訊傳輸至播放器105以進行播放。
視訊編碼器110包括接收電路112、切割電路114、搜尋 電路116以及編碼電路118,其中切割電路114耦接於接收電路112,搜尋電路116耦接於切割電路114,編碼電路118耦接於搜尋電路116。視訊解碼器120包括接收電路122、切割電路124、以及編碼電路128,其中切割電路124耦接於接收電路122,編碼電路128耦接於切割電路124。視訊編碼器110以及視訊解碼器120中的各個電路可被實作為一或多個積體電路,其中各個積體電路包括多個邏輯閘(logic gate)。必須說明的是,在本實施例中,視訊編碼器110以及視訊解碼器120實作於不同的裝置平台。然而,在其它的實施例中,亦可實作於同一個裝置平台之中。視訊編碼器110以及視訊解碼器120中的各個電路之詳細功能將分別配合圖2的視訊編碼流程以及圖7的視訊解碼流程一併揭露。
〔第一實施例〕
圖2為根據本發明之一實施例所繪示的視訊編碼方法的 流程圖,而圖2的視訊編碼方法可以圖1的視訊編碼器110的各元件來實現。
請同時參照圖1以及圖2,首先,視訊編碼器110的接收 電路112接收一序列輸入畫面之中的一目前編碼畫面(步驟S202)。在此,接收電路112自視訊來源101接收原始視訊畫面串流的一個序列輸入畫面後,視訊編碼器110的其它電路將會針對該序列輸入畫面進行編碼程序。為了方便說明,以下僅針對該序列輸入畫面中的其中一個畫面(在此定義為「目前編碼畫面」)來進行描述。
在H.265/HEVC的視訊編碼機制下,目前編碼畫面包括 多個編碼樹單元,其中編碼樹單元的大小可以是64×64、32×32、16×16或是8×8的區塊(單位為像素)。各個編碼樹單元更包括一個或多個編碼單元,其中每一編碼單元為等於或小於編碼樹單元的方正矩形,其大小可以是64×64、32×32、16×16或是8×8的區塊,在此以2N×2N來表示。在本實施例中,切割電路102將針對各個編碼單元進行更進一步地切割。以下僅針對其中一個編碼單元(在此定義為「目前編碼單元」)進行說明。
詳言之,切割電路114將根據預測單元切割模式,切割目前編碼畫面中的目前編碼樹單元中的目前編碼單元為兩個非方正矩形的預測單元(步驟S204),其中同一預測單元內的像素係採用同種預測模式來執行編碼。在一實施例中,切割電路114可根據切割的執行效能與編碼器110的性能來選擇適當的預測單元切割模式,在另一實施例中,切割電路114可以根據其它演算法或是隨機或依序地選擇不同的預測單元切割模式。此外,切割電路114亦可以透過使用者的輸入來設定預測單元切割模式,本發明不 在此設限。
必須說明的是,在習知的機制下,畫面內預測模式(包 括畫面內區塊複製模式)僅支援2N×2N或是N×N的切割模式;換言之,在畫面內預測模式下,編碼單元僅能被切割成一個或是多個正方矩形的預測單元。然而,在本實施例中的切割電路114可根據預測單元切割模式將目前編碼單元切割成兩個非方正矩形的預測單元,其中至少一個預測單元可採用畫面內預測模式來執行編碼。換言之,目前編碼單元中的兩個預測單元的至少之一的參考畫面可以為目前編碼畫面。
然而,在其它實施例中,亦可支援習知的機制,所有的預測單元皆可利用畫面內預測模式來執行編碼。換言之,切割電路114同時可以不切割編碼單元(亦即,預測單元等於編碼單元的大小2N×2N),或是可將編碼單元切割成四個大小為2N×2N的預測單元,本發明不在此設限。
圖3A~圖3D為根據本發明之一實施例所繪示的多種預 測單元切割模式的範例。在本實施例中,切割電路114的預測單元切割模式可分為橫向切割以及縱向切割,以將目前編碼單元切割為兩個非方正矩形的預測單元。
在圖3A的範例中,切割電路114係針對目前編碼單元301進行橫向切割,以將目前編碼單元301切割成兩個大小皆為2N×N的預測單元301a以及預測單元301b。在圖3B的範例中,切割電路102係針對目前編碼單元302進行橫向切割,以將目前 編碼單元302切割成大小為2N×M的預測單元302a以及大小為2N×(2N-M)預測單元302b。在圖3C的範例中,切割電路103係針對目前編碼單元303進行縱向切割,以將目前編碼單元303切割成兩個大小皆為N×2N的預測單元303a以及預測單元303b。在圖3D的範例中,切割電路114係針對目前編碼單元304進行縱向切割,以將目前編碼單元304切割成大小為M×2N的預測單元304a以及大小為(2N-M)×2N預測單元304b。在上述的範例中,M為2的指數倍(例如:1、2、4、…、N、2N),並且M≠N。
由於目前編碼單元中的兩個預測單元之後續處理方式皆 相同,以下僅針對兩個子區塊中的其中一個預測單元(在此定義為「目前預測單元」)進行說明。
請再參照圖2,搜尋電路116於目前預測單元所對應的參 考畫面的搜尋範圍內,搜尋目前預測單元的最佳參考區塊,並且取得目前預測單元與最佳參考區塊之間的最佳區塊向量(步驟S206)。詳言之,目前預測單元所對應的參考畫面可以是畫面內預測模式的目前編碼畫面或者是畫面間預測模式的任一張重建畫面。必須注意的是,先前已說明本實施例中至少一個預測單元將採用畫面內預測模式來執行編碼,因此目前編碼單元中的兩個預測單元的至少之一的參考畫面為目前編碼畫面。此外,在一實施例中,若目前預測單元的寬度或高度為1時,其所對應的參考畫面可以設定為目前編碼畫面。
在本實施例中,假設目前參考區塊的參考畫面為目前編 碼畫面,其搜尋範圍可以例如是下列幾種範例,然而本發明不在此設限。在一範例中,搜尋範圍可以是參考畫面中的已編碼區域。在一範例中,搜尋範圍亦可以是整張參考畫面。
在其它範例中,搜尋範圍可以較為限定。在一範例,搜尋範圍可以是參考畫面中的部份範圍,且該部份範圍不包括目前編碼單元以及尚未編碼的區域。舉例來說,搜尋範圍可以是目前編碼單元所在的編碼樹單元與延伸至其第一軸方向(例如:左邊)的n個編碼樹單元,其中n≧0並且為整數。在另一範例中,搜尋範圍亦可以是參考畫面中的部份範圍,並且該部份範圍可同時包括已編碼區域、目前編碼單元以及尚未編碼的區域。在一範例中,搜尋範圍可以是參考畫面中的區塊向量預測子(Block Vector Predictor,BVp)所指向的點附近所框選的一個範圍。
搜尋電路116將於搜尋範圍中的候選參考區塊中,判斷與目前預測單元最為匹配的候選參考區塊(即為前述的「最佳參考區塊」)。搜尋電路116的搜尋方式可以分為非完美匹配(Non-perfect Match)以及完美匹配(Perfect Match)。
非完美匹配允許目前預測單元的像素與其候選參考區塊的像素存在失真。搜尋電路116將計算目前預測單元與搜尋範圍中的各個候選區塊之間的代價值(Cost),其計算方式可以是目前預測單元與候選參考區塊之間的失真量再加上編碼目前預測單元與候選參考區塊之間對應的區塊向量(相對位置)所需的位元數。在此的失真量計算可以是針對亮度值(Luma)以及彩度值 (Chroma)上的失真來計算,而失真量計算方式可以是使用絕對誤差和(Sum of Absolute Difference,SAD)、平均絕對誤差(Mean Absolute Difference,MAD)、均方差(Mean Square Error,MSE)等方式表示,然而本發明不以此為限。
完美匹配則是代表目前預測單元的像素與其候選參考區塊的像素值完全相同;亦即,亮度值以及彩度值上的失真量皆為0。搜尋電路116將計算目前預測單元與搜尋範圍中的各個候選參考區塊之間的代價值(Cost),其計算方式可以是編碼目前預測單元與候選參考區塊之間對應的區塊向量所需的位元數。
以非完美搜尋為例,搜尋電路116將計算所有候選參考區塊的第一代價值(亮度值失真量加上編碼對應的區塊向量所需的位元數),並且將前m個最低代價值的候選參考區塊做為「可能最佳參考區塊」,其中m為正整數。依經驗來說,其可以是1、2、3、…、8。接著,搜尋電路103將進一步地計算第二代價值(彩度值失真量加上第一代價值)。搜尋電路116將設定第二代價值之中的最小值所對應的可能最佳參考區塊為「最佳參考區塊」。另外,在此將目前預測單元與最佳參考區塊之間的區塊向量定義為「最佳區塊向量」。
搜尋電路116於搜尋範圍中搜尋最佳參考區塊的方式可以例如是圖4A~4C根據本發明之一實施例所繪示的多種搜尋方式的範例。
在一實施例中,搜尋電路116搜尋目前預測單元的最佳 候選參考區塊的方式可以是以一維搜尋,也就是說以水平方向、垂直方向、或是水平與垂直的方向進行搜尋。以圖4A為例,搜尋電路116可以是在搜尋範圍SR1中沿著目前編碼單元401的目前預測單元401a1的水平方向來搜尋。假設401a2為最佳參考區塊,則區塊向量BV1則為最佳區塊向量。以圖4B為例,搜尋電路116可以是在搜尋範圍SR2中沿著目前編碼單元402的目前預測單元402a1的垂直方向來搜尋。假設402a2為最佳參考區塊,則區塊向量BV2則為最佳區塊向量。此外,在另一實施例中,搜尋電路116可以亦是沿著水平方向以及垂直方向來搜尋,本發明不在此設限。
在一實施例中,搜尋電路116搜尋目前預測單元的最佳候選參考區塊的方式可以是以二維搜尋。搜尋電路116亦可針對每一個位於搜尋範圍內的候選參考區塊來搜尋最佳參考區塊。以圖4C為例,搜尋電路116可以是在搜尋範圍SR3中搜尋目前編碼單元403的目前預測單元403a1的最佳參考區塊。假設403a2為最佳參考區塊,區塊向量BV3則為最佳區塊向量。
請再參照圖2,在搜尋電路116搜尋到對應於目前預測單元的最佳參考區塊並且取得最佳區塊向量後,編碼電路118將根據預測單元切割模式以及關聯於最佳區塊向量的資訊,編碼目前預測單元(步驟S208)。在此的最佳區塊向量的資訊可分為區塊向量預測以及區塊向量差值(Block Vector Difference,BVD)。以下將說明畫面間預測模式以及畫面內區塊複製模式下的區塊向量預測方式。
圖5A~5C為根據本發明之一實施例所繪示的畫面間預測模式下的三種區塊向量預測範例。
在圖5A的範例中,目前編碼單元501與目前預測單元501a的大小相同。換言之,切割電路114並沒有針對目前編碼單元500進行更進一步地切割。在此範例中,編碼電路118可自以下順序選取兩個區塊向量作為候選區塊向量預測子。
首先,編碼電路118可於目前預測單元501a的左下方區塊A10以及左方區塊A11依序選取一個區塊向量。詳言之,編碼電路118可先判斷左下方區塊A10是否對應於畫面間預測模式以及存在區塊向量:若是,則編碼電路118直接將其設定為其中一個候選區塊向量預測子,而不再對左方區塊A11進行判斷;若否,編碼電路118將進一步地判斷左方區塊A11是否對應於畫面間預測模式以及存在區塊向量,若是,則將其設定為其中一個候選區塊向量預測子。接著,類似地,編碼電路118將於目前預測單元501a的右上方區塊B10、上方B11以及左上方區塊B12依序選取一個區塊向量做為候選區塊向量預測子。附帶說明的是,在本實施例中,左下方區塊A10、左方區塊A11、右上方區塊B10、上方B11以及左上方區塊B12可以是大小為4×4大小的區塊。
此外,假使左下方區塊A10、左方區塊A11、右上方區塊B10、上方B11以及左上方區塊B12僅存在一個候選區塊向量預測子,編碼電路118可選取時間上對應於畫面間預測模式的前第一個已編碼的區塊向量做為候選區塊向量預測子。假使上述區塊並 無存在任何候選區塊向量預測子,編碼電路118可選取時間上對應於畫面間預測模式前兩個已編碼的區塊向量做為候選區塊向量預測子。編碼電路118在取得兩個候選區塊向量預測子後,將以編碼區塊向量差值所需之位元數較低者做為「最佳區塊向量預測子」,其中區塊向量差值為候選區塊向量預測子與目前預測單元的最佳區塊向量之間的向量差值。
在圖5B1的範例中,目前編碼單元502具有兩個預測單元,其中目前預測單元502a為目前編碼單元502中的第一個預測單元。換言之,當切割電路114是以縱切的方式切割目前編碼單元時,第一個預測單元即為最左方的預測單元。而在圖5B2的範例中,當切割電路114是以橫切的方式切割目前編碼單元512時,第一個預測單元512a即為最上方的預測單元。
請先參照圖5B1,在此縱向切割的範例中,編碼電路118可自以下順序選取兩個區塊向量作為候選區塊向量預測子。首先,編碼電路118將會於目前預測單元502a的左下方區塊A20以及左方區塊A21依序選取一個區塊向量做為候選區塊向量預測子。接著,編碼電路118將會於目前預測單元502a的右上方區塊B20、上方B21以及左上方區塊B22依序選取一個區塊向量做為候選區塊向量預測子。假設編碼電路118僅取得一個或是沒有取得任何候選區塊向量預測子時,編碼電路118可選取時間上對應於畫面間預測模式的前一個或者是前兩個已編碼的區塊向量做為候選區塊向量預測子。編碼電路118在取得兩個候選區塊向量預測 子後,將以編碼區塊向量差值所需之位元數較低者做為最佳區塊向量預測子。
請再參照圖5B2,在此橫向切割的範例中,編碼電路118 可先於將目前預測單元512a的左下方區塊A200以及左方區塊A201依序選取一個區塊向量做為候選區塊向量預測子。接著,編碼電路118將會於目前預測單元512a的右上方區塊B200、上方區塊B201以及左上方區塊B202依序選取一個區塊向量做為候選區塊向量預測子。假設編碼電路118僅取得一個或是沒有取得任何候選區塊向量預測子時,編碼電路118可選取時間上對應於畫面間預測模式的前一個或者是前兩個已編碼的區塊向量做為候選區塊向量預測子。編碼電路118在取得兩個候選區塊向量預測子後,將以編碼區塊向量差值所需之位元數較低者做為最佳區塊向量預測子。
在圖5C1以及圖5C2的範例中,目前編碼單元503以及目前編碼單元513具有兩個預測單元,其中目前預測單元503b以及目前預測單元513b分別為目前編碼單元503以及目前編碼單元513中第一個預測單元之外的預測單元。
請先參照圖5C1,在此縱向切割的範例中,編碼電路118可自以下順序選取兩個區塊向量作為候選區塊向量預測子。首先,編碼電路118可自目前預測單元503b所在的目前編碼單元503的左下方區塊A30以及左方區塊A31依序選取一個區塊向量做為候選區塊向量預測子。接著,編碼電路118可自目前預測單元502b的右上方區塊B30、上方B31以及左上方區塊B32依序選取一個區 塊向量做為候選區塊向量預測子。假設編碼電路118僅取得一個或是沒有取得任何候選區塊向量預測子時,編碼電路118可選取時間上對應於畫面間預測模式的前一個或者是前兩個已編碼的區塊向量做為候選區塊向量預測子。編碼電路118在取得兩個候選區塊向量預測子後,將以編碼區塊向量差值之位元數較低者做為最佳區塊向量預測子。
請再參照圖5C2,在此橫向切割的範例中,編碼電路118 可自以下順序選取兩個區塊向量作為候選區塊向量預測子。首先,編碼電路118可自目前預測單元513b所在的目前編碼單元503的左下方區塊A300以及左方區塊A301依序選取一個區塊向量做為候選區塊向量預測子。接著,編碼電路118可自目前預測單元502b的上方區塊B301以及左上方區塊B302依序選取一個區塊向量做為候選區塊向量預測子。假設編碼電路118僅取得一個或是沒有取得任何候選區塊向量預測子時,編碼電路118可選取時間上對應於畫面間預測模式的前一個或者是前兩個已編碼的區塊向量做為候選區塊向量預測子。編碼電路118在取得兩個候選區塊向量預測子後,將以編碼區塊向量差值之位元數較低者做為最佳區塊向量預測子。
圖6A~6E為根據本發明之一實施例所繪示的畫面內預測模式下的三種區塊向量預測範例。
在畫面內預測模式下,無論是第一個預測單元或是第二個預測單元,編碼電路118皆是以目前預測單元的左下方、右上 方的區塊以及前兩個已編碼的區塊向量依序選取兩個候選區塊向量預測子,將以編碼區塊向量差值之位元數較低者做為區塊向量預測子。因此,在圖6A目前編碼單元601與目前預測單元601a的大小相同的範例中,編碼電路118可於目前預測單元601a的左下方區塊C1以及右上方區塊D1依序選取一個區塊向量。詳言之,編碼電路118可先判斷左下方區塊C1是否對應於畫面內預測模式以及存在區塊向量:若是,則編碼電路118直接將其設定為其中一個候選區塊向量預測子。接著,編碼電路118將進一步地判斷右上方區塊D1是否對應於畫面間預測模式以及存在區塊向量,若是,則將其設定為其中一個候選區塊向量預測子。假設編碼電路118僅取得一個或是沒有取得任何候選區塊向量預測子時,編碼電路118可選取時間上對應於畫面內預測模式前一個或者是前兩個已編碼的區塊向量做為候選區塊向量預測子。編碼電路118在取得兩個候選區塊向量預測子後,將以編碼區塊向量差值所需之位元數較低者做為最佳區塊向量預測子。
類似地,在圖6B的範例中,編碼電路118可於目前編碼單元602的目前預測單元602a的左下方區塊C2、右上方區塊D2,時間上對應於畫面內預測模式的前一個或者是前兩個已編碼的區塊向量依序選取兩個區塊向量做為最佳區塊向量預測子。在圖6C的範例中,編碼電路118可於目前編碼單元603的目前預測單元603b的左下方區塊C3、右上方區塊D3,時間上對應於畫面內預測模式的前一個或者是前兩個已編碼的區塊向量依序選取兩個區塊 向量做為最佳區塊向量預測子。
在圖6C的範例中,編碼電路118可於目前編碼單元604的目前預測單元604a的左下方區塊C4、右上方區塊D4,時間上對應於畫面內預測模式的前一個或者是前兩個已編碼的區塊向量依序選取兩個區塊向量做為最佳區塊向量預測子。在圖6E的範例中,編碼電路118可於目前編碼單元605的目前預測單元605b的左下方區塊C5、右上方區塊D5,時間上對應於畫面內預測模式的前一個或者是前兩個已編碼的區塊向量依序選取兩個區塊向量做為最佳區塊向量預測子。
編碼電路118在取得目前預測單元的最佳區塊向量預測子及其所對應的區塊向量差值後,將會編碼一個旗標以表示使用哪些區塊向量做為最佳區塊向量預測子。之後,當編碼電路119得到對應於最佳區塊向量預測子的區塊向量差值後,將會對其進行使用例如是霍夫曼編碼(Huffman Coding)、算數編碼(Arithmetic Coding)等可變長度編碼(Variable Length Coding)。
此外,在一實施例中,除了根據編碼預測單元切割模式以及關聯於最佳區塊向量的資訊(亦即,區塊向量預測以及編碼區塊向量差值)進行目前預測單元的編碼外,更可以進行關聯於目前預測單元的殘量(Residual)運算。詳言之,視訊編碼器110更包括計算電路(未繪示)。當搜尋電路116搜尋完目前編碼單元中的各個預測單元的最佳匹配參考區塊後,計算電路更可將各個最佳參考區塊的像素值複製到一個暫存區塊,其中此暫存區塊與 編碼單元同等大小。接著,編碼電路118將根據暫存區塊的像素值與編碼單元的原始像素值來計算殘量,並且可直接將殘量儲存在此暫存區塊中。編碼電路118可直接將此暫存區塊切割成一個、四個或數多個轉換單元(Transform Unit,TU)。計算電路104可將每一個轉換單元經由跨分量預測(Cross Component Prediction,CCP)、殘量差分脈衝編碼調變(Residual Differential Pulse Code Modulation,RDPCM)、離散餘弦轉換(Discrete Cosine Transform,DCT)、量化(Quantization)。在一實施例中,計算電路亦可省略RDPCM以及DCT的步驟。之後,編碼電路118可對量化後的殘量進行編碼。然而,必須說明的是,在一實施例中,編碼電路118亦可選擇不針對殘量進行編碼。
同時,計算電路更可將目前編碼單元中的各個預測單元 的各個最佳參考區塊的像素值複製到一個重建區塊,其中此重建區塊與編碼單元同等大小。計算電路104將量化後的殘量進行反量化(Inverse Quantization)、反離散餘弦轉換(Inverse DCT)、反殘量差分脈衝編碼調變(Inverse CCP)後所得到的殘量加上重建區塊中所儲存的參考區塊之像素值,即可重建編碼單元,並且暫存於例如是畫面記憶體(Frame Memory,未繪示)中,作為後續編碼的參考。
在本實施例中,視訊編碼器110在完成編碼後,會將編碼後的視訊以及相關資訊透過網路150傳送至視訊接收平台100B,而解碼器120將根據相關資訊將編碼後的視訊進行解碼。
圖7為根據本發明之一實施例所繪示的視訊解碼方法的 流程圖,而圖7的視訊編碼方法可以圖1的視訊解碼器120的各元件來實現。
請參照圖7,首先視訊編碼器120的接收電路122將接收 一序列已編碼畫面之中的目前解碼畫面、預測單元切割模式以及關聯於最佳區塊向量的資訊(步驟S702)。在此的預測單元切割模式以及關聯於最佳區塊向量的資訊即為圖2中步驟S208所編碼的資料,詳細說明請參照前述段落,於此不再贅述。
接著,切割電路124將根據預測單元切割模式,切割目 前解碼畫面中的目前編碼樹單元中的目前編碼單元為兩個非方正矩形的預測單元(步驟S704)。之後,解碼電路128將根據關聯於最佳區塊向量的資訊,解碼目前預測單元(步驟S706)。換言之,切割電路124將根據自視訊編碼器110所接收的預測單元切割模式來切割目前編碼單元,並且解碼電路128將根據自視訊編碼器110所接收的最佳區塊向量預測子及其區塊向量差值重建目前預測單元的區塊向量,以進行目前預測單元的解碼。此外,若接收電路122有自視訊編碼器110接收關聯於目前預測單元的殘量時,在重建區塊向量後亦會對殘量進行解碼。在本實施例中,所有解碼完的已編碼畫面將會自視訊解碼器120輸出至播放器105來進行播放。
〔第二實施例〕
第二實施例與第一實施例類似,在此僅描述不同之處。 在第一實施例中所採取的視訊編碼方法在切割程序時僅針對各個編碼單元切割成兩個非方正矩形的預測單元。在第二實施例中所所採取的視訊編碼方法在切割程序時將各個預測單元更進一步地切割成多個子區塊。
圖8為根據本發明之一實施例所繪示的視訊編碼方法的 流程圖,而圖8的視訊編碼方法亦可以圖1的視訊編碼器110的各元件來實現。
請同時參照圖1以及圖8,首先,視訊編碼器110的接收 電路112接收一序列輸入畫面之中的一目前編碼畫面(步驟S802)。接著,切割電路114將根據子區塊切割模式,切割目前編碼畫面中的目前編碼樹單元中的目前編碼單元的目前預測單元為多個子區塊,其中目前預測單元的大小係根據預測單元切割模式所設定(步驟S804)。詳言之,在本實施例中,切割電路102在切割完目前編碼單元後,將針對各個預測單元進行更進一步地切割。以下僅針對其中一個預測單元(在此定義為「目前預測單元」)來說明。各個預測單元的大小可以是根據預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N、(2N-M)×2N,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N。
在本實施例中,切割電路114的子區塊切割模式亦可分為橫向切割以及縱向切割,以將目前預測單元進一步地切割為多個子區塊。
在一實施例中,當子區塊切割模式為橫向切割,並且各個子區塊的寬度等於目前預測單元的寬度時,可分為兩種情況。 當各個子區塊的高度皆為1時(亦即,對目前預測單元進行線型樣式的切割),各所述子區塊的大小可以為以下其中之一者:當目前預測單元的大小為2N×2N、2N×N、2N×M、2N×(2N-M),各所述子區塊的大小可以為2N×1;當目前預測單元的大小為N×2N時,各所述子區塊的大小可以為N×1;當目前預測單元的大小為M×2N時,各所述子區塊的大小可以為M×1;當目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小可以為(2N-M)×1。
此外,當各個子區塊的高度為L時,各所述子區塊的大小可以為以下其中之一者:當目前預測單元的大小為2N×2N時,各所述子區塊的大小可以為2N×L,其中1<L≦2N。當目前預測單元的大小為2N×N時,各所述子區塊的大小可以為2N×L,其中1<L≦N。當目前預測單元的大小為2N×M時,各所述子區塊的大小可以為2N×L,其中1<L≦M。當目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小可以為2N×L,其中1<L≦2N-M。當目前預測單元的大小為N×2N時,各所述子區塊的大小可以為N×L,其中1<L≦2N。當目前預測單元的大小為M×2N時,各所述子區塊的大小可以為M×L,其中1<L≦2N。當目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小可以為(2N-M)×L,其中1<L≦2N。在此的L皆為2的指數倍。必須注意的是當L的數值被設定為大於或是等於所屬範圍中的最大值 時,切割電路114並不會對目前預測單元進行切割。
在一實施例中,當子區塊切割模式為縱向切割,並且各個子區塊的高度等於目前預測單元的高度時,可分為兩種情況。當各個子區塊的寬度皆為1時(亦即,對目前預測單元進行線型樣式的切割),各所述子區塊的大小可以為以下其中之一者:當目前預測單元的大小為2N×2N、N×2N、M×2N、(2N-M)×2N,各所述子區塊的大小可以為1×2N;當目前預測單元的大小為2N×N時,各所述子區塊的大小可以為1×N;當目前預測單元的大小為2N×M時,各所述子區塊的大小可以為1×M;當目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小可以為1×(2N-M)。
此外,當各個子區塊的寬度為L時,各所述子區塊的大小可以為以下其中之一者:當目前預測單元的大小為2N×2N時,各所述子區塊的大小可以為L×2N,其中1<L≦2N。當目前預測單元的大小為2N×N時,各所述子區塊的大小可以為L×N,其中1<L≦2N。當目前預測單元的大小為2N×M時,各所述子區塊的大小可以為L×M,其中1<L≦2N。當目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小可以為L×(2N-M),其中1<L≦2N。當目前預測單元的大小為N×2N時,各所述子區塊的大小可以為L×2N,其中1<L≦N。當目前預測單元的大小為M×2N時,各所述子區塊的大小可以為L×2N,其中1<L≦M。當目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小可以為L×2N,其中1<L≦(2N-M)。在此的L亦皆為2的指數倍。類似地, 必須注意的是當L的數值被設定為大於或是等於所屬範圍中的最大值時,切割電路114並不會對目前預測單元進行切割。
圖9A~圖9C為根據本發明之一實施例所繪示的多種預測單元切割模式的範例。
在圖9A的範例中,目前預測單元901的大小即為2N×2N,切割電路114係針對目前預測單元901進行縱向切割,以將目前預測單元901切割成多個大小皆為1×2N的子區塊(例如:子區塊901a)。在圖9B的範例中,目前預測單元902的大小即為2N×M,切割電路114係針對目前預測單元902進行縱向切割,以將目前預測單元902切割成多個大小皆為1×M的子區塊(例如:子區塊901b)。在圖9C的範例中,目前預測單元903的大小即為(2N-M)×2N,切割電路114係針對目前預測單元903進行橫向切割,以將目前預測單元903切割成多個大小皆為(2N-M)×L的子區塊(例如:子區塊901c)。
請再參照圖8,由於目前預測單元中的所有子區塊之後續 處理方式皆相同,以下僅針對其中一個子區塊(在此定義為「目前子區塊」)進行說明。搜尋電路116於目前子區塊所對應的參考畫面的搜尋範圍內,搜尋對應於目前子區塊的最佳參考子區塊,並且取得目前子區塊與最佳參考子區塊之間的最佳子區塊向量(步驟S806)。類似於第一實施例,目前子區塊所對應的參考畫面可以是畫面內預測模式的目前編碼畫面或者是畫面間預測模式的任一張重建畫面。在本實施例中,目前預測單元中所有子區塊的 至少之一的參考畫面為目前編碼畫面。此外,在一實施例中,若目前子區塊的寬度或高度為1時,其所對應的參考畫面可以設定為目前編碼畫面。
搜尋電路116於目前子區塊所對應的參考畫面來搜尋目 前子區塊的最佳參考子區塊以及取得最佳子區塊向量的方式類似於步驟S206搜尋電路116於預測單元所對應的參考畫面搜尋預測單元的最佳參考子區塊以及取得最佳區塊向量的方式。首先,搜尋電路116將於搜尋範圍內搜尋多個候選參考子區塊,並且計算各所述候選參考子區塊與該目前子區塊之間的代價值,其中各所述代價值為目前子區塊與各所述候選參考子區塊之間關聯於亮度以及彩度的失真量以及編碼目前子區塊與各所述候選參考子區塊之間的區塊向量所需的位元數。接著,搜尋電路116將所述代價值之中具有最小代價值所對應的候選參考子區塊設定為最佳參考子區塊。有關於搜尋範圍以及代價值的詳細計算方式請參照前述段落之相關說明,於此不再贅述。
請再參照圖8,在搜尋電路116搜尋到對應於目前子區塊 的最佳參考子區塊並且取得最佳子區塊向量後,編碼電路118將根據預測單元切割模式、子區塊切割模式以及關聯於最佳子區塊向量的資訊,編碼目前子區塊(步驟S808)。在此的最佳子區塊向量的資訊亦可分為區塊子向量預測以及區塊子向量差值。
詳言之,當目前子區塊對應於畫面間預測模式並且目前子區塊位於目前預測單元的第一個區塊(即最左方或是最上方的 子區塊)時,編碼電路118將根據目前子區塊所在的預測單元所對應的最佳區塊向量預測子以及最佳區塊向量預測子的區塊向量差值來做為「最佳子區塊向量預測子」以及「子區塊向量差值」。 預測單元所對應的最佳區塊向量預測子及其區塊向量差值的取得方式可參照圖5A~圖5C的相關說明,於此不再贅述。
當目前子區塊對應於畫面間預測模式並且目前子區塊位於目前預測單元的第一個區塊(即最左方或是最上方的子區塊)時,類似於圖6A~圖6C,編碼電路118可自目前子區塊所位於的目前預測單元的左下方區塊的區塊向量、右上方區塊的區塊向量以及前兩個已編碼的區塊向量之中依序選取兩個候選區塊向量預測子,取得目前預測單元的最佳區塊向量預測子以及對應於最佳區塊向量預測子的區塊向量差值,並且將其設定為目前子區塊所對應的「最佳子區塊向量預測子」以及「子區塊向量差值」。
需特別說明的是,在本實施例中,當目前子區塊並非位於目前預測單元的第一個區塊時,編碼電路118直接將目前預測單元中前一個已編碼的子區塊所對應的最佳子區塊向量的資訊設定為目前子區塊的最佳子區塊向量的資訊。此設計方式在於前一個子區塊畫面會有很高比例與目前子區塊的畫面相似,以減少位元傳輸量。
編碼電路118在取得目前子區塊的最佳子區塊向量預測子及其所對應的子區塊向量差值後,將會編碼一個旗標以表示使用哪個子區塊向量做為最佳子區塊向量預測子。之後,當編碼電 路119得到對應於最佳子區塊向量預測子的子區塊向量差值後,將會對其進行使用例如是霍夫曼編碼、算數編碼等可變長度編碼。
此外,類似於第一實施例,編碼單元118除了根據編碼 子區塊切割模式以及關聯於最佳子區塊向量的資訊進行目前子區塊的編碼外,計算單元將進行關聯於目前子區塊的殘量運算。詳言之,當搜尋電路116搜尋完目前編碼單元中的各個預測單元的各個子區塊的最佳參考子區塊後,計算電路更可將各個最佳參考子區塊的像素值複製到一個暫存區塊,其中此暫存區塊與編碼單元同等大小。接著,編碼電路118將根據暫存區塊的像素值與編碼單元的原始像素值來計算殘量,並且可直接將殘量儲存在此暫存區塊中。編碼電路118可直接將此暫存區塊切割成一個、四個或數多個轉換單元。計算電路可將每一個轉換單元經由跨分量預測、殘量差分脈衝編碼調變、離散餘弦轉換、量化。在一實施例中,計算電路亦可省略殘量差分脈衝編碼調變以及離散餘弦轉換的步驟。之後,編碼電路118可對量化後的殘量進行編碼。然而,必須說明的是,在一實施例中,編碼電路118亦可選擇不針對殘量進行編碼。
同時,計算電路更可將目前編碼單元中的各個預測單元 的各個子區塊的最佳參考子區塊的像素值複製到一個重建區塊,其中此重建區塊與編碼單元同等大小。計算電路104將量化後的殘量進行反量化、反離散餘弦轉換、反殘量差分脈衝編碼調變後所得到的殘量加上重建區塊中所儲存的參考區塊之像素值,即可 重建編碼單元,並且暫存於例如是畫面記憶體中,作為後續編碼的參考。
在本實施例中,視訊編碼器110在完成編碼後,會將編 碼後的視訊以及相關資訊透過網路150傳送至視訊接收平台100B,而解碼器120將根據相關資訊將編碼後的視訊進行解碼。
圖10為根據本發明之一實施例所繪示的視訊解碼方法的 流程圖,而圖10的視訊編碼方法可以圖1的視訊解碼器120的各元件來實現。
請參照圖10,首先視訊編碼器120的接收電路122將接 收一序列輸入畫面之中的一目前解碼畫面、預測單元切割模式、子區塊切割模式以及關聯於最佳子區塊向量的資訊(步驟S1002)。在此的子區塊切割模式、預測單元切割模式以及關聯於最佳子區塊向量的資訊即為圖8中步驟S808所編碼的資料,詳細說明請參照前述段落,於此不再贅述。
接著,切割電路124將根據子區塊切割模式,切割目前 解碼畫面中的目前編碼樹單元中的目前編碼單元的目前預測單元為多個子區塊,其中目前預測單元的大小是根據預測單元切割模式所設定(步驟S1004)。之後,解碼電路128將根據關聯於最佳子區塊向量的資訊,解碼目前預測單元(步驟S1006)。換言之,切割電路124將根據自視訊編碼器110所接收的預測單元切割模式以及子區塊切割模式來切割目前編碼單元,並且解碼電路128將根據自視訊編碼器110所接收的最佳子區塊向量預測子及其子 區塊向量差值重建目前子區塊的區塊向量,以進行目前子區塊的解碼。此外,若接收電路122有自視訊編碼器110接收關聯於目前子區塊的殘量時,在重建區塊向量後亦會對殘量進行解碼。在本實施例中,所有解碼完的已編碼畫面將會自視訊解碼器120輸出至播放器105來進行播放。
〔第三實施例〕
第三實施例為第一實施例以及第二實施例的整合,在此 僅描述前述不同之處。切割單元114可根據預測單元切割模式以及子區塊切割模式來進行切割,其中子區塊切割模式可細分為不切割、縱向切割以及橫向切割。當子區塊切割模式設定為不切割時(亦即,子區塊的寬度以及高度等於目前預測單元的寬度以及高度),即等同於第一實施例。當子區塊切割模式設定為橫向切割或是縱向切割時,即等同於第二實施例。
綜上所述,本發明所提出的視訊編碼方法、視訊解碼方 法、編碼器以及解碼器能夠彈性地將編碼單元分割為兩個非方正矩形的預測單元,又可進一步地將預測單元分割為多個子區塊,以增進自參考畫面中搜尋到各個預測單元或者是子區塊的參考區塊之準確性,以有效地提升視訊影像的編碼效能。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍 當視後附的申請專利範圍所界定者為準。
S202~S208‧‧‧視訊編碼方法的流程

Claims (33)

  1. 一種利用畫面內矩形區塊估測模式的視訊編碼方法,適用於一視訊編碼器,該視訊編碼方法包括:接收一序列輸入畫面之中的一目前編碼畫面;根據一預測單元切割模式,切割該目前編碼畫面中的一目前編碼樹單元中的一目前編碼單元為兩個非方正矩形的預測單元,其中各所述預測單元分別對應於該序列輸入畫面中的一參考畫面,至少一所述參考畫面為該目前編碼畫面,所述預測單元包括一目前預測單元,其中該目前編碼單元的大小為2N×2N;於該目前預測單元所對應的該參考畫面的一搜尋範圍內,搜尋對應於該目前預測單元的一最佳參考區塊,並且取得該目前預測單元與該最佳參考區塊之間的一最佳區塊向量,其中該最佳區塊向量為該目前預測單元與該最佳參考區塊之間的相對位置;以及根據該預測單元切割模式以及關聯於該最佳區塊向量的一資訊,編碼該目前預測單元。
  2. 如申請專利範圍第1項所述的視訊編碼方法,其中該預測單元切割模式為橫向切割,並且各所述預測單元的大小皆為2N×N。
  3. 如申請專利範圍第1項所述的視訊編碼方法,其中該預測單元切割模式為橫向切割,並且各所述預測單元的大小分別為2N×M以及2N×(2N-M),其中M為2的指數倍,並且M為1、2、4、...、 N、2N以及M≠N。
  4. 如申請專利範圍第1項所述的視訊編碼方法,其中該預測單元切割模式為縱向切割,並且各所述預測單元的大小皆為N×2N。
  5. 如申請專利範圍第1項所述的視訊編碼方法,其中該預測單元切割模式為縱向切割,並且各所述預測單元的大小分別M×2N以及(2N-M)×2N,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N。
  6. 如申請專利範圍第1項所述的視訊編碼方法,其中當該目前預測單元的寬度以及高度兩者其中之一為1時,該目前預測單元所對應的該參考畫面為該目前編碼畫面。
  7. 如申請專利範圍第1項所述的視訊編碼方法,其中於該目前預測單元所對應的該參考畫面的該搜尋範圍內,搜尋對應於該目前預測單元的該最佳參考區塊的步驟包括:於該搜尋範圍內搜尋多個候選參考區塊,並且計算各所述候選參考區塊與該目前預測單元之間的的一代價值,其中各所述代價值為該目前預測單元與各所述候選參考區塊之間關聯於亮度以及彩度的一失真量以及編碼該目前預測單元與各所述候選參考區塊之間的一區塊向量所需的一位元數;以及設定所述代價值之中具有一最小代價值所對應的該候選參考區塊為該最佳參考區塊。
  8. 如申請專利範圍第1項所述的視訊編碼方法,其中該參考 畫面為該目前編碼畫面,該搜尋區域為該目前編碼樹單元與延伸至一其水平方向上的一個或多個編碼樹單元。
  9. 如申請專利範圍第1項所述的視訊編碼方法,其中該參考畫面為該目前編碼畫面,並且搜尋對應於該目前預測單元的該最佳參考區塊的方式為一維搜尋,其中該一維搜尋為以下三者之一:自該目前預測單元沿著一水平方向搜尋、自該目前預測單元沿著一垂直方向搜尋或是自該目前預測單元沿著該水平方向與該垂直方向搜尋。
  10. 如申請專利範圍第1項所述的視訊編碼方法,其中該參考畫面為該目前編碼畫面,並且搜尋對應於該目前預測單元的該最佳參考區塊的方式為二維搜尋。
  11. 如申請專利範圍第1項所述的視訊編碼方法,其中該參考畫面為該目前編碼畫面,而根據該預測單元切割模式以及關聯於該最佳區塊向量的該資訊,編碼該目前預測單元的步驟包括:自該目前預測單元的一左下方區塊的區塊向量、一右上方區塊的區塊向量以及前兩個已編碼的區塊向量之中依序選取兩個候選區塊向量預測子;計算各所述候選區塊向量預測子與該目前預測單元的該最佳區塊向量的一向量差值,並且以所述向量差值之中所須的編碼位元數最低者做為一最佳區塊向量預測子;以及編碼該預測單元切割模式、該最佳區塊向量預測子以及對應於該最佳區塊向量預測子的該區塊向量差值。
  12. 一種視訊編碼器,包括:一接收電路,用以接收一序列輸入畫面之中的一目前編碼畫面;一切割電路,耦接該接收電路,用以根據一預測單元切割模式,切割該目前編碼畫面中的一目前編碼樹單元中的一目前編碼單元為兩個非方正矩形的預測單元,其中各所述預測單元分別對應於該序列輸入畫面中的一參考畫面,至少一所述參考畫面為該目前編碼畫面,所述預測單元包括一目前預測單元,其中該目前編碼單元的大小為2N×2N;一搜尋電路,耦接該切割電路,用以於該目前預測單元所對應的該參考畫面的一搜尋範圍內,搜尋對應於該目前預測單元的一最佳參考區塊,並且取得該目前預測單元與該最佳參考區塊之間的一最佳區塊向量,其中該最佳區塊向量為該目前預測單元與該最佳參考區塊之間的相對位置;以及一編碼電路,耦接該搜尋電路,用以根據該預測單元切割模式以及關聯於該最佳區塊向量的一資訊,編碼該目前預測單元。
  13. 一種利用畫面內矩形區塊估測模式的視訊解碼方法,適用於一視訊解碼器,該視訊解碼方法包括:接收一序列已編碼畫面之中的一目前解碼畫面、一預測單元切割模式以及關聯於一最佳區塊向量的一資訊;根據該預測單元切割模式,切割該目前解碼畫面中的一目前編碼樹單元中的一目前編碼單元為兩個非方正矩形的預測單元, 其中各所述預測單元分別對應於該序列已編碼畫面中的一參考畫面,至少一所述參考畫面為該目前解碼畫面,所述預測單元包括一目前預測單元,其中該目前編碼單元的大小為2N×2N;以及根據關聯於該最佳區塊向量的該資訊,解碼該目前預測單元,其中該最佳區塊向量為該目前預測單元與該最佳參考區塊之間的相對位置。
  14. 如申請專利範圍第13項所述的視訊解碼方法,其中該預測單元切割模式為橫向切割,並且各所述預測單元的大小皆為2N×N。
  15. 如申請專利範圍第13項所述的視訊解碼方法,其中該預測單元切割模式為橫向切割,並且各所述預測單元的大小分別為2N×M以及2N×(2N-M),其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N。
  16. 如申請專利範圍第13項所述的視訊解碼方法,其中該預測單元切割模式為縱向切割,並且各所述預測單元的大小皆為N×2N。
  17. 如申請專利範圍第13項所述的視訊解碼方法,其中該預測單元切割模式為縱向切割,並且各所述預測單元的大小分別M×2N以及(2N-M)×2N,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N。
  18. 一種視訊解碼器,包括:一接收電路,用以接收一序列已編碼畫面之中的一目前解碼 畫面、一預測單元切割模式以及關聯於一最佳區塊向量的一資訊;一切割電路,耦接該接收電路,用以根據該預測單元切割模式,切割該目前解碼畫面中的一目前編碼樹單元中的一目前編碼單元為兩個非方正矩形的預測單元,其中各所述預測單元分別對應於該序列已編碼畫面中的一參考畫面,至少一所述參考畫面為該目前解碼畫面,所述預測單元包括一目前預測單元,其中該目前編碼單元的大小為2N×2N;一解碼電路,耦接該切割電路,用以根據關聯於該最佳區塊向量的該資訊,解碼該目前預測單元,其中該最佳區塊向量為該目前預測單元與該最佳參考區塊之間的相對位置。
  19. 一種利用畫面內矩形區塊估測模式的視訊編碼方法,適用於一視訊編碼器,該視訊編碼方法包括:接收一序列輸入畫面之中的一目前編碼畫面;根據一子區塊切割模式,切割該目前編碼畫面中的一目前編碼樹單元中的一目前編碼單元的一目前預測單元為多個子區塊,其中所述子區塊包括一目前子區塊,各所述子區塊分別對應於該序列輸入畫面中的一參考畫面,至少一所述參考畫面為該目前編碼畫面,其中該目前預測單元的大小係根據一預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N或是(2N-M)×2N其中之一者,其中M為2的指數倍,並且1≦M≦2N以及M≠N;於該目前子區塊所對應的該參考畫面的一搜尋範圍內,搜尋 對應於該目前子區塊的一最佳參考子區塊,並且取得該目前子區塊與該最佳參考子區塊之間的一最佳子區塊向量,其中該最佳子區塊向量為該目前子區塊與該最佳參考子區塊之間的相對位置;以及根據該預測單元切割模式、該子區塊切割模式以及關聯於該最佳子區塊向量的一資訊,編碼該目前子區塊。
  20. 如申請專利範圍第19項所述的視訊編碼方法,其中該子區塊切割模式為縱向切割並且各所述子區塊的寬度等於該目前預測單元的寬度,其中:當各所述子區塊的高度為1時,各所述子區塊的大小為以下其中之一者:當該目前預測單元的大小為2N×2N、2N×N、2N×M或是2N×(2N-M)時,各所述子區塊的大小為2N×1;當該目前預測單元的大小為N×2N時,各所述子區塊的大小為N×1;當該目前預測單元的大小為M×2N時,各所述子區塊的大小為M×1;以及當該目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小為(2N-M)×1;以及當各所述子區塊的高度為L並且L為2的指數倍時,各所述子區塊的大小為以下其中之一者:當該目前預測單元的大小為2N×2N時,各所述子區塊的 大小為2N×L,其中1<L≦2N;當該目前預測單元的大小為2N×N時,各所述子區塊的大小為2N×L,其中1<L≦N;當該目前預測單元的大小為2N×M時,各所述子區塊的大小為2N×L,其中1<L≦M;當該目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小為2N×L,其中1<L≦2N-M;當該目前預測單元的大小為N×2N時,各所述子區塊的大小為N×L,其中1<L≦2N;當該目前預測單元的大小為M×2N時,各所述子區塊的大小為M×L,其中1<L≦2N;以及當該目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小為(2N-M)×L,其中1<L≦2N。
  21. 如申請專利範圍第19項所述的視訊編碼方法,其中該子區塊切割模式為橫向切割並且各所述子區塊的高度等於該目前預測單元的高度,其中:當各所述子區塊的寬度為1時,各所述子區塊的大小為以下其中之一者:當該目前預測單元的大小為2N×2N、N×2N、M×2N或是(2N-M)×2N時,各所述子區塊的大小為1×2N;當該目前預測單元的大小為2N×N時,各所述子區塊的大小為1×N; 當該目前預測單元的大小為2N×M時,各所述子區塊的大小為1×M;以及當該目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小為1×(2N-M);以及當各所述子區塊的寬度為L並且L為2的指數倍時,各所述子區塊的大小為以下其中之一者:當該目前預測單元的大小為2N×2N時,各所述子區塊的大小為L×2N,其中1<L≦2N;當該目前預測單元的大小為2N×N時,各所述子區塊的大小為L×N,其中1<L≦2N;當該目前預測單元的大小為2N×M時,各所述子區塊的大小為L×M,其中1<L≦2N;當該目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小為L×(2N-M),其中1<L≦2N;當該目前預測單元的大小為N×2N時,各所述子區塊的大小為L×2N,其中1<L≦N;當該目前預測單元的大小為M×2N時,各所述子區塊的大小為L×2N,其中1<L≦M;以及當該目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小為L×2N,其中1<L≦(2N-M)。
  22. 如申請專利範圍第19項所述的視訊編碼方法,其中當該目前子區塊的寬度以及高度兩者其中之一為1時,該目前預測單 元所對應的該參考畫面為該目前編碼畫面。
  23. 如申請專利範圍第19項所述的視訊編碼方法,其中於該目前子區塊所對應的該參考畫面的該搜尋範圍內,搜尋對應於該目前子區塊的該最佳參考子區塊,並且取得該目前子區塊與該最佳參考子區塊之間的該最佳子區塊向量包括:於該搜尋範圍內搜尋多個候選參考子區塊,並且計算各所述候選參考子區塊與該目前子區塊之間的的一代價值,其中各所述代價值為該目前子區塊與各所述候選參考子區塊之間關聯於亮度以及彩度的一失真量以及編碼該目前子區塊與各所述候選參考子區塊之間的一區塊向量所需的一位元數;以及設定所述代價值之中具有一最小代價值所對應的該候選參考子區塊為該最佳參考子區塊。
  24. 如申請專利範圍第19項所述的視訊編碼方法,其中該參考畫面為該目前編碼畫面,該搜尋區域為該目前編碼樹單元與延伸至其一水平方向上的一個或多個編碼樹單元。
  25. 如申請專利範圍第19項所述的視訊編碼方法,其中該參考畫面為該目前編碼畫面,並且搜尋對應於該目前子區塊的該最佳參考子區塊的方式為一維搜尋,其中該一維搜尋為以下三者之一:自該目前子區塊沿著一水平方向搜尋、自該目前子區塊沿著一垂直方向搜尋或是自該目前子區塊沿著該水平方向與該垂直方向搜尋。
  26. 如申請專利範圍第19項所述的視訊編碼方法,其中該參 考畫面為該目前編碼畫面,並且搜尋對應於該目前子區塊的該最佳參考子區塊的方式為二維搜尋。
  27. 如申請專利範圍第19項所述的視訊編碼方法,其中該參考畫面為該目前編碼畫面,當該目前子區塊為該目前預測單元中最左方或是最上方的子區塊時,根據該預測單元切割模式、該子區塊切割模式以及關聯於該最佳子區塊向量的該資訊,編碼該目前子區塊的步驟包括:自該目前預測單元的一左下方區塊的區塊向量、一右上方區塊的區塊向量以及前兩個已編碼的區塊向量之中依序選取兩個候選區塊向量預測子;計算各所述候選區塊向量預測子與該目前預測單元的該最佳區塊向量的一向量差值,並且以所述向量差值之中所須的編碼位元數最低者做為一最佳區塊向量預測子;以及編碼該預測單元切割模式、該最佳區塊向量預測子以及對應於該最佳區塊向量預測子的該區塊向量差值。
  28. 如申請專利範圍第19項所述的視訊編碼方法,其中該參考畫面為該目前編碼畫面,當該目前子區塊為該目前預測單元中不為最左方或是最上方的子區塊時,根據該子區塊切割模式以及關聯於該最佳子區塊向量的該資訊,編碼該目前子區塊的步驟包括:設定該目前預測單元中前一個已編碼的該子區塊所對應的一最佳子區塊向量的資訊為該目前子區塊的該最佳子區塊向量的資 訊;以及編碼該預測單元切割模式、該最佳區塊向量預測子以及對應於該最佳區塊向量預測子的該區塊向量差值。
  29. 一種視訊編碼器,包括:一接收電路,用以接收一序列輸入畫面之中的一目前編碼畫面;一切割電路,耦接該接收電路,用以根據一子區塊切割模式,切割該目前編碼畫面中的一目前編碼樹單元中的一目前編碼單元的一目前預測單元為多個子區塊,其中所述子區塊包括一目前子區塊,各所述子區塊分別對應於該序列輸入畫面中的一參考畫面,至少一所述參考畫面為該目前編碼畫面,其中該目前預測單元的大小係根據一預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N或是(2N-M)×2N其中之一者,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N;一搜尋電路,耦接該切割電路,用以於該目前子區塊所對應的該參考畫面的一搜尋範圍內,搜尋對應於該目前子區塊的一最佳參考子區塊,並且取得該目前子區塊與該最佳參考子區塊之間的一最佳子區塊向量,其中該最佳子區塊向量為該目前子區塊與該最佳參考子區塊之間的相對位置;以及一編碼電路,耦接該搜尋電路,用以根據該預測單元切割模式、該子區塊切割模式以及關聯於該最佳子區塊向量的一資訊,編碼該目前子區塊。
  30. 一種利用畫面內矩形區塊估測模式的視訊解碼方法,適用於一視訊解碼器,該視訊編碼方法包括:接收一序列輸入畫面之中的一目前解碼畫面、一預測單元切割模式、一子區塊切割模式以及關聯於一最佳子區塊向量的一資訊;根據該子區塊切割模式,切割該目前解碼畫面中的一目前編碼樹單元中的一目前編碼單元的一目前預測單元為多個子區塊,其中所述子區塊包括一目前子區塊,各所述子區塊分別對應於該序列輸入畫面中的一參考畫面,至少一所述參考畫面為該目前編碼畫面,其中該目前預測單元的大小係根據該預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N或是(2N-M)×2N其中之一者,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N;以及根據關聯於該最佳子區塊向量的該資訊,解碼該目前子區塊,其中該最佳子區塊向量為該目前子區塊與該最佳參考子區塊之間的相對位置。
  31. 如申請專利範圍第30項所述的視訊解碼方法,其中該子區塊切割模式為縱向切割並且各所述子區塊的寬度等於該目前預測單元的寬度,其中:當各所述子區塊的高度為1時,各所述子區塊的大小為以下其中之一者:當該目前預測單元的大小為2N×2N、2N×N、2N×M或 是2N×(2N-M)時,各所述子區塊的大小為2N×1;當該目前預測單元的大小為N×2N時,各所述子區塊的大小為N×1;當該目前預測單元的大小為M×2N時,各所述子區塊的大小為M×1;以及當該目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小為(2N-M)×1;以及當各所述子區塊的高度為L並且L為2的指數倍時,各所述子區塊的大小為以下其中之一者:當該目前預測單元的大小為2N×2N時,各所述子區塊的大小為2N×L,其中1<L≦2N;當該目前預測單元的大小為2N×N時,各所述子區塊的大小為2N×L,其中1<L≦N;當該目前預測單元的大小為2N×M時,各所述子區塊的大小為2N×L,其中1<L≦M;當該目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小為2N×L,其中1<L≦2N-M;當該目前預測單元的大小為N×2N時,各所述子區塊的大小為N×L,其中1<L≦2N;當該目前預測單元的大小為M×2N時,各所述子區塊的大小為M×L,其中1<L≦2N;以及當該目前預測單元的大小為(2N-M)×2N時,各所述子區 塊的大小為(2N-M)×L,其中1<L≦2N。
  32. 如申請專利範圍第30項所述的視訊解碼方法,其中該子區塊切割模式為橫向切割並且各所述子區塊的高度等於該目前預測單元的高度,其中:當各所述子區塊的寬度為1時,各所述子區塊的大小為以下其中之一者:當該目前預測單元的大小為2N×2N、N×2N、M×2N或是(2N-M)×2N時,各所述子區塊的大小為1×2N;當該目前預測單元的大小為2N×N時,各所述子區塊的大小為1×N;當該目前預測單元的大小為2N×M時,各所述子區塊的大小為1×M;以及當該目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小為1×(2N-M);以及當各所述子區塊的寬度為L並且L為2的指數倍時,各所述子區塊的大小為以下其中之一者:當該目前預測單元的大小為2N×2N時,各所述子區塊的大小為L×2N,其中1<L≦2N;當該目前預測單元的大小為2N×N時,各所述子區塊的大小為L×N,其中1<L≦2N;當該目前預測單元的大小為2N×M時,各所述子區塊的大小為L×M,其中1<L≦2N; 當該目前預測單元的大小為2N×(2N-M)時,各所述子區塊的大小為L×(2N-M),其中1<L≦2N;當該目前預測單元的大小為N×2N時,各所述子區塊的大小為L×2N,其中1<L≦N;當該目前預測單元的大小為M×2N時,各所述子區塊的大小為L×2N,其中1<L≦M;以及當該目前預測單元的大小為(2N-M)×2N時,各所述子區塊的大小為L×2N,其中1<L≦(2N-M)。
  33. 一種視訊解碼器,包括:一接收電路,用以接收一序列輸入畫面之中的一目前解碼畫面、一預測單元切割模式、一子區塊切割模式以及關聯於一最佳子區塊向量的一資訊;一切割電路,耦接該接收電路,用以根據該子區塊切割模式,切割該目前解碼畫面中的一目前編碼樹單元中的一目前編碼單元的一目前預測單元為多個子區塊,其中所述子區塊包括一目前子區塊,各所述子區塊分別對應於該序列輸入畫面中的一參考畫面,至少一所述參考畫面為該目前編碼畫面,其中該目前預測單元的大小係根據一預測單元切割模式設定為2N×2N、2N×N、2N×M、2N×(2N-M)、N×2N、M×2N或是(2N-M)×2N其中之一者,其中M為2的指數倍,並且M為1、2、4、...、N、2N以及M≠N;以及一編碼電路,耦接該切割電路,用以根據關聯於該最佳子區 塊向量的該資訊,解碼該目前子區塊,其中該最佳子區塊向量為該目前子區塊與該最佳參考子區塊之間的相對位置。
TW103145939A 2013-12-27 2014-12-27 利用畫面內矩形區塊估測模式的視訊編解碼方法及其裝置 TWI565298B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201361921091P 2013-12-27 2013-12-27

Publications (2)

Publication Number Publication Date
TW201540047A TW201540047A (zh) 2015-10-16
TWI565298B true TWI565298B (zh) 2017-01-01

Family

ID=53483424

Family Applications (2)

Application Number Title Priority Date Filing Date
TW103142135A TWI536811B (zh) 2013-12-27 2014-12-04 影像處理方法與系統、解碼方法、編碼器與解碼器
TW103145939A TWI565298B (zh) 2013-12-27 2014-12-27 利用畫面內矩形區塊估測模式的視訊編解碼方法及其裝置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW103142135A TWI536811B (zh) 2013-12-27 2014-12-04 影像處理方法與系統、解碼方法、編碼器與解碼器

Country Status (2)

Country Link
US (1) US10142654B2 (zh)
TW (2) TWI536811B (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2013228045A1 (en) * 2013-09-13 2015-04-02 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding video data
WO2015054811A1 (en) 2013-10-14 2015-04-23 Microsoft Corporation Features of intra block copy prediction mode for video and image coding and decoding
CN105659602B (zh) 2013-10-14 2019-10-08 微软技术许可有限责任公司 用于视频和图像编码的帧内块复制预测模式的编码器侧选项
MX360926B (es) * 2014-01-03 2018-11-22 Microsoft Technology Licensing Llc Prediccion de vector de bloque en codificacion/descodificacion de video e imagen.
US10390034B2 (en) 2014-01-03 2019-08-20 Microsoft Technology Licensing, Llc Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area
US11284103B2 (en) 2014-01-17 2022-03-22 Microsoft Technology Licensing, Llc Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning
EP3253059A1 (en) 2014-03-04 2017-12-06 Microsoft Technology Licensing, LLC Block flipping and skip mode in intra block copy prediction
US10477232B2 (en) * 2014-03-21 2019-11-12 Qualcomm Incorporated Search region determination for intra block copy in video coding
EP3158734A4 (en) 2014-06-19 2017-04-26 Microsoft Technology Licensing, LLC Unified intra block copy and inter prediction modes
WO2015194913A1 (ko) * 2014-06-20 2015-12-23 성균관대학교 산학협력단 영상의 부호화/복호화 방법 및 이를 이용하는 장치
KR101748620B1 (ko) * 2014-06-20 2017-07-04 성균관대학교산학협력단 영상의 부호화/복호화 방법 및 이를 이용하는 장치
KR102330740B1 (ko) 2014-09-30 2021-11-23 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 파면 병렬 프로세싱이 인에이블되는 경우의 인트라 픽쳐 예측 모드에 대한 규칙
GB2531003A (en) * 2014-10-06 2016-04-13 Canon Kk Method and apparatus for vector encoding in video coding and decoding
CN106034236B (zh) 2015-03-19 2019-07-19 阿里巴巴集团控股有限公司 一种hevc编码最佳参考帧的选择方法、装置及编码器
WO2017088093A1 (en) * 2015-11-23 2017-06-01 Mediatek Singapore Pte. Ltd. On the smallest allowed block size in video coding
US10306258B2 (en) 2016-01-29 2019-05-28 Google Llc Last frame motion vector partitioning
US10469841B2 (en) 2016-01-29 2019-11-05 Google Llc Motion vector prediction using prior frame residual
US20180109812A1 (en) * 2016-10-14 2018-04-19 Media Tek Inc. Block partitioning using tree structures
US10986349B2 (en) 2017-12-29 2021-04-20 Microsoft Technology Licensing, Llc Constraints on locations of reference blocks for intra block copy prediction
JP7104186B2 (ja) 2018-06-05 2022-07-20 北京字節跳動網絡技術有限公司 Ibcとatmvpとの間でのインタラクション
WO2019245228A1 (ko) * 2018-06-18 2019-12-26 엘지전자 주식회사 어파인 모션 예측을 사용하여 비디오 신호를 처리하기 위한 방법 및 장치
CN110636298B (zh) 2018-06-21 2022-09-13 北京字节跳动网络技术有限公司 对于Merge仿射模式和非Merge仿射模式的统一约束
CN110636297B (zh) 2018-06-21 2021-05-14 北京字节跳动网络技术有限公司 分量相关的子块分割
WO2020065518A1 (en) 2018-09-24 2020-04-02 Beijing Bytedance Network Technology Co., Ltd. Bi-prediction with weights in video coding and decoding
CN112997480B (zh) 2018-11-10 2023-08-22 北京字节跳动网络技术有限公司 成对平均候选计算中的取整
BR112021014202A2 (pt) 2019-02-01 2021-09-21 Beijing Bytedance Network Technology Co., Ltd. Sinalização de informações de reformulação em malha usando conjuntos de parâmetros
WO2020156526A1 (en) 2019-02-01 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Interactions between in-loop reshaping and inter coding tools
WO2020171658A1 (ko) * 2019-02-21 2020-08-27 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11012686B2 (en) * 2019-03-08 2021-05-18 Tencent America LLC Unified block vector prediction for intra picture block compensation
KR20210148113A (ko) * 2019-03-11 2021-12-07 브이아이디 스케일, 인크. 비디오 코딩의 내부 하위 파티션
CN113574889B (zh) 2019-03-14 2024-01-12 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
CN113632469B (zh) 2019-03-23 2022-12-13 北京字节跳动网络技术有限公司 默认的环内整形参数
JP7414843B2 (ja) 2019-04-24 2024-01-16 バイトダンス インコーポレイテッド 符号化映像の量子化残差差分パルス符号変調表現
CN117857783A (zh) 2019-05-01 2024-04-09 字节跳动有限公司 使用量化残差差分脉冲码调制编解码的帧内编解码视频
CN117615130A (zh) 2019-05-02 2024-02-27 字节跳动有限公司 基于编解码树结构类型的编解码模式
WO2021196228A1 (zh) * 2020-04-03 2021-10-07 Oppo广东移动通信有限公司 帧间预测方法、编码器、解码器以及存储介质
CN116195253A (zh) * 2020-08-20 2023-05-30 抖音视界有限公司 帧内块复制编解码中的块矢量处理
KR20220157765A (ko) * 2021-05-21 2022-11-29 삼성전자주식회사 영상 부호화 장치 및 이의 동작 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6483874B1 (en) * 1999-01-27 2002-11-19 General Instrument Corporation Efficient motion estimation for an arbitrarily-shaped object
US20130058417A1 (en) * 2010-05-13 2013-03-07 Sharp Kabushiki Kaisha Prediction image generation device, moving image decoding device, and moving image coding device
TW201316957A (zh) * 2011-07-12 2013-05-01 Colgate Palmolive Co 口腔保健器具握柄之置換刷頭
TW201345261A (zh) * 2012-01-30 2013-11-01 Samsung Electronics Co Ltd 空間次分割中視訊編碼的方法和裝置以及空間次分割中視訊解碼的方法和裝置
TW201349876A (zh) * 2009-08-13 2013-12-01 Samsung Electronics Co Ltd 解碼影像的方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7120196B2 (en) 2002-04-29 2006-10-10 Ess Technology, Inc. Intra-prediction using intra-macroblock motion compensation
KR101432775B1 (ko) * 2008-09-08 2014-08-22 에스케이텔레콤 주식회사 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치
KR20100095992A (ko) 2009-02-23 2010-09-01 한국과학기술원 비디오 부호화에서의 분할 블록 부호화 방법, 비디오 복호화에서의 분할 블록 복호화 방법 및 이를 구현하는 기록매체
CN105007491B (zh) 2009-10-01 2018-02-06 Sk电信有限公司 视频解码装置
KR101484280B1 (ko) 2009-12-08 2015-01-20 삼성전자주식회사 임의적인 파티션을 이용한 움직임 예측에 따른 비디오 부호화 방법 및 장치, 임의적인 파티션을 이용한 움직임 보상에 따른 비디오 복호화 방법 및 장치
HUE061239T2 (hu) * 2011-01-07 2023-06-28 Ntt Docomo Inc Prediktív kódolási eljárás, prediktív kódoló eszköz, prediktív kódoló program mozgásvektorhoz, valamint prediktív dekódolási eljárás, prediktív dekódoló eszköz, prediktív dekódoló program mozgásvektorhoz
JP5541240B2 (ja) * 2011-07-12 2014-07-09 コニカミノルタ株式会社 画像形成装置および画像処理方法
TWI424583B (zh) * 2011-07-25 2014-01-21 Nat Univ Tsing Hua 薄膜太陽能電池的製造方法
CN107580223B (zh) * 2011-11-08 2020-12-08 株式会社Kt 利用解码装置对视频信号进行解码的方法
US20130163664A1 (en) * 2011-12-22 2013-06-27 Qualcomm Incorporated Unified partition mode table for intra-mode coding
US9503715B2 (en) * 2013-08-30 2016-11-22 Qualcomm Incorporated Constrained intra prediction in video coding
US20150189269A1 (en) * 2013-12-30 2015-07-02 Google Inc. Recursive block partitioning
KR102185245B1 (ko) * 2014-03-04 2020-12-01 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 해시 기반 블록 매칭을 위한 해시 테이블 구성 및 이용가능성 검사

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6483874B1 (en) * 1999-01-27 2002-11-19 General Instrument Corporation Efficient motion estimation for an arbitrarily-shaped object
TW201349876A (zh) * 2009-08-13 2013-12-01 Samsung Electronics Co Ltd 解碼影像的方法
US20130058417A1 (en) * 2010-05-13 2013-03-07 Sharp Kabushiki Kaisha Prediction image generation device, moving image decoding device, and moving image coding device
TW201316957A (zh) * 2011-07-12 2013-05-01 Colgate Palmolive Co 口腔保健器具握柄之置換刷頭
TW201345261A (zh) * 2012-01-30 2013-11-01 Samsung Electronics Co Ltd 空間次分割中視訊編碼的方法和裝置以及空間次分割中視訊解碼的方法和裝置

Also Published As

Publication number Publication date
US20150189272A1 (en) 2015-07-02
US10142654B2 (en) 2018-11-27
TW201526617A (zh) 2015-07-01
TW201540047A (zh) 2015-10-16
TWI536811B (zh) 2016-06-01

Similar Documents

Publication Publication Date Title
TWI565298B (zh) 利用畫面內矩形區塊估測模式的視訊編解碼方法及其裝置
TWI759389B (zh) 用於視訊寫碼之低複雜度符號預測
RU2683495C1 (ru) Нововведения в предсказание блочных векторов и оценку восстановленных значений отсчетов в области перекрытия
TW201924343A (zh) 視訊寫碼中之仿射預測
TW201838415A (zh) 在視訊寫碼中判定用於雙邊濾波之鄰近樣本
TWI741239B (zh) 視頻資料的幀間預測方法和裝置
TW201830964A (zh) 基於在視訊寫碼中之一預測模式導出雙邊濾波器資訊
JP2006148970A (ja) 画像データの符号化方法およびそのためのプログラムを記録したコンピュータ読み取り可能媒体
CN110868587B (zh) 一种视频图像预测方法及装置
WO2020006969A1 (zh) 运动矢量预测方法以及相关装置
WO2020042604A1 (zh) 视频编码器、视频解码器及相应方法
JP6259272B2 (ja) 映像符号化装置及び映像符号化プログラム
WO2020007093A1 (zh) 一种图像预测方法及装置
KR101500300B1 (ko) 부호화기와 복호화기 사이에 상호작용이 가능한 선택적 저전력 비디오 코덱 장치, 이를 이용한 부호화 및 복호화 방법
CN110677645B (zh) 一种图像预测方法及装置
TWI841033B (zh) 視頻數據的幀間預測方法和裝置
US20240040133A1 (en) Video coding using multi-model linear model
JP6735370B2 (ja) 復号化方法
JP6523495B2 (ja) 復号化方法
JP6872412B2 (ja) 映像符号化装置及びプログラム
WO2020042724A1 (zh) 帧间预测方法、装置以及视频编码器和视频解码器
WO2020024275A1 (zh) 一种帧间预测的方法及装置
KR20220059930A (ko) 플렌옵틱 영상 처리 방법 및 장치
JP2019092188A (ja) 復号化方法
JP2017038377A (ja) 復号化方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees