TWI625962B - 取樣自適應偏移解碼方法 - Google Patents

取樣自適應偏移解碼方法 Download PDF

Info

Publication number
TWI625962B
TWI625962B TW105139995A TW105139995A TWI625962B TW I625962 B TWI625962 B TW I625962B TW 105139995 A TW105139995 A TW 105139995A TW 105139995 A TW105139995 A TW 105139995A TW I625962 B TWI625962 B TW I625962B
Authority
TW
Taiwan
Prior art keywords
sao
information
lcu
type
encoding
Prior art date
Application number
TW105139995A
Other languages
English (en)
Other versions
TW201709737A (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 TW201709737A publication Critical patent/TW201709737A/zh
Application granted granted Critical
Publication of TWI625962B publication Critical patent/TWI625962B/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
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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
    • 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/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

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

Abstract

本揭露是關於在視訊編碼及解碼操作中用信號發送所判定的取樣自適應偏移(SAO)參數以最小化原始影像與經重新建構的影像之間的誤差。一種SAO解碼方法包含:自最大寫碼單元(LCU)的位元串流獲得經內文編碼的向左SAO合併資訊以及經內文編碼的向上SAO合併資訊;自位元串流獲得關於每一色彩分量而經內文編碼的SAO繼續/中斷資訊;若SAO繼續/中斷資訊指示執行SAO操作,則自位元串流獲得關於每一色彩分量而經旁路編碼的針對每一SAO種類的絕對偏移值資訊;以及自位元串流獲得關於每一色彩分量而經旁路編碼的級區位置資訊以及邊緣類別資訊中的一者。

Description

取樣自適應偏移解碼方法
本揭露是關於在視訊編碼以及解碼操作中藉由自適應地判定的與樣本的偏移來調整經重新建構的像素值以最小化原始影像與經重新建構的影像之間的誤差的方法。
隨著用於再生以及儲存高解析度或高品質視訊內容的硬體正被開發以及供應,對用於有效地對高解析度或高品質視訊內容做編碼或解碼的視訊編解碼器的需要增加。根據習知視訊編解碼器,基於具有預定大小的巨集區塊而根據有限編碼方法來對視訊做編碼。
經由頻率變換而將空間域的影像資料變換為頻域的係數。根據視訊編解碼器,將影像分割為具有預定大小的區塊,對每一區塊執行離散餘弦變換(discrete cosine transformation, DCT),且以區塊為單位來對頻率係數做編碼,以實現頻率變換的快速計算。相比空間域的影像資料,容易壓縮頻域的係數。特定言之,由於經由視訊編解碼器的畫面間預測或畫面內預測根據預測誤差來表達空間域的影像像素值,因此在對預測誤差執行頻率變換時,可將大量資料變換為0。根據視訊編解碼器,可藉由將連續且重複產生的資料替換為較小大小的資料而減少資料量。
技術問題 本揭露是關於在視訊編碼以及解碼操作中用信號發送所判定的取樣自適應偏移(sample adaptive offset, SAO)參數以最小化原始影像與經重新建構的影像之間的誤差。 技術解決方案
根據本揭露的態樣,提供一種取樣自適應偏移(SAO)解碼方法,包含:自最大寫碼單元(largest coding unit, LCU)的位元串流獲得經內文編碼的向左SAO合併資訊以及經內文編碼的向上SAO合併資訊;自位元串流獲得關於每一色彩分量而經內文編碼的SAO繼續/中斷資訊;若SAO繼續/中斷資訊指示執行SAO操作,則自位元串流獲得關於每一色彩分量而經旁路編碼的針對每一SAO種類的絕對偏移值資訊;以及自位元串流獲得關於每一色彩分量而經旁路編碼的級區位置資訊以及邊緣類別資訊中的一者。 有利效應
在根據本揭露的各種實施例的對取樣自適應偏移(SAO)參數做編碼以及做解碼的方法中,由於僅對SAO參數中的SAO合併資訊以及SAO繼續/中斷資訊執行內文編碼以及內文解碼,且對剩餘位元串流執行旁路編碼以及旁路解碼,因此用於對SAO參數做解碼的總計算量可減少。
且,在SAO參數中,由於一些參數是關於每一色彩分量而不同地判定且一些參數關於第一色度分量以及第二色度分量或關於明度分量,以及第一色度分量及第二色度分量設定為相同,因此SAO參數的總位元長度可減小且待剖析的資料的量亦可減少。
此外,由於切換內文編碼與解碼操作,以及旁路編碼與解碼操作的次數減少,因此對SAO參數進行的整體熵編碼以及解碼操作的效率可得以改良。
根據本揭露的態樣,提供一種取樣自適應偏移(SAO)解碼方法,包含:自最大寫碼單元(LCU)的位元串流獲得經內文編碼的向左SAO合併資訊以及經內文編碼的向上SAO合併資訊;自位元串流獲得關於每一色彩分量而經內文編碼的SAO繼續/中斷資訊;若SAO繼續/中斷資訊指示執行SAO操作,則自位元串流獲得關於每一色彩分量而經旁路編碼的針對每一SAO種類的絕對偏移值資訊;以及自位元串流獲得關於每一色彩分量而經旁路編碼的級區位置資訊(band position information)以及邊緣類別資訊中的一者。
SAO繼續/中斷資訊的獲得可包含:若SAO繼續/中斷資訊指示執行SAO操作,則自位元串流進一步獲得關於每一色彩分量而以旁路模式編碼的邊緣級區識別資訊,且可對LCU的SAO類型資訊的第一二進位中的SAO繼續/中斷資訊執行內文解碼,且可對除了SAO繼續/中斷資訊之外的SAO類型資訊的剩餘位元執行旁路解碼。
級區位置資訊或邊緣類別資訊的獲得可包含:若所獲得的邊緣級區識別資訊指示級區類型(band type),則自位元串流獲得關於每一色彩分量而經旁路編碼的級區位置資訊,級區位置資訊的獲得可包含:若針對每一SAO種類而獲得的絕對偏移值資訊不是0,則自位元串流獲得關於每一色彩分量而經旁路編碼的級區位置資訊以及偏移正負號資訊,且級區位置資訊可最後自LCU的SAO參數中獲得。
級區位置資訊或邊緣類別資訊的獲得可包含:若所獲得的邊緣級區識別資訊指示邊緣類型,則自位元串流獲得關於每一色彩分量而經旁路編碼的邊緣類別資訊,且邊緣類別資訊可包含針對明度分量的邊緣類別資訊以及針對第一色度分量的邊緣類別資訊,且針對第一色度分量的邊緣類別資訊可同樣應用於第二色度分量。
針對第一色度分量的SAO繼續/中斷資訊以及邊緣級區識別資訊可同樣應用於第二色度分量,且向左SAO合併資訊以及向上SAO合併資訊可共同應用於LCU的明度分量,以及第一色度分量及第二色度分量。
向左SAO合併資訊以及向上SAO合併資訊的獲得可包含:判定向左SAO合併資訊的基於內文的機率模型,藉由使用向左SAO合併資訊的所判定的機率模型而執行熵解碼,以及因此重新建構向左SAO合併資訊;以及判定向上SAO合併資訊的基於內文的機率模型,藉由使用向上SAO合併資訊的所判定的機率模型而執行熵解碼,以及因此重新建構向上SAO合併資訊,且SAO繼續/中斷資訊的獲得可包含:判定SAO繼續/中斷資訊的基於內文的機率模型,藉由使用SAO繼續/中斷資訊的所判定的機率模型而執行熵解碼,以及因此重新建構SAO繼續/中斷資訊。
絕對偏移值資訊的獲得可包含:判定絕對偏移值資訊的基於內文的機率模型,在不使用絕對偏移值資訊的所判定的機率模型的情況下執行熵解碼,以及因此重新建構絕對偏移值資訊,偏移正負號資訊以及級區位置資訊的獲得可包含:在不使用偏移正負號資訊的基於內文的機率模型的情況下執行熵解碼,以及因此重新建構偏移正負號資訊;以及在不使用級區位置資訊的基於內文的機率模型的情況下執行熵解碼,以及因此重新建構級區位置資訊。
邊緣類別資訊的獲得可包含:在不使用邊緣類別資訊的基於內文的機率模型的情況下執行熵解碼,以及因此重新建構邊緣類別資訊。
根據本揭露的態樣,提供一種取樣自適應偏移(SAO)編碼方法,包含:輸出藉由對最大寫碼單元(LCU)的向左SAO合併資訊以及向上SAO合併資訊中的每一者執行內文編碼而產生的向左SAO合併資訊的1位元以及向上SAO合併資訊的1位元;輸出藉由關於每一色彩分量對SAO繼續/中斷資訊執行內文編碼而產生的SAO繼續/中斷資訊的1位元;若SAO繼續/中斷資訊指示執行SAO操作,則輸出藉由關於每一色彩分量以及每一SAO種類對絕對偏移值資訊執行旁路編碼而產生的絕對偏移值資訊的位元串流;以及輸出藉由關於每一色彩分量對級區位置資訊以及邊緣類別資訊中的一者執行旁路編碼而產生的剩餘位元串流。
SAO繼續/中斷資訊的1位元的輸出可包含:若SAO繼續/中斷資訊指示執行SAO操作,則進一步輸出藉由關於每一色彩分量對邊緣級區識別資訊執行旁路編碼而產生的邊緣級區識別資訊的1位元,且可對LCU的SAO類型資訊的第一二進位中的SAO繼續/中斷資訊執行內文編碼,且可對除了SAO繼續/中斷資訊之外的SAO類型資訊的剩餘位元執行旁路編碼。
剩餘位元串流的輸出可包含:若邊緣級區識別資訊指示級區類型,則輸出藉由關於每一色彩分量對級區位置資訊執行旁路編碼而產生的級區位置資訊的位元串流,級區位置資訊的輸出可包含:若針對每一SAO種類的絕對偏移值資訊不是0,則輸出級區位置資訊的所產生的位元串流以及藉由對偏移正負號資訊執行旁路編碼而產生的偏移正負號資訊的位元串流,且級區位置資訊可最後自LCU的SAO參數輸出。
剩餘位元串流的輸出可包含:若邊緣級區識別資訊指示邊緣類型,則輸出藉由關於每一色彩分量對邊緣類別資訊執行旁路編碼而產生的邊緣類別資訊的位元串流。
根據本揭露的態樣,提供一種取樣自適應偏移(SAO)解碼裝置,包含:SAO內文解碼器,用於自最大寫碼單元(LCU)的位元串流獲得經內文編碼的向左SAO合併資訊以及向上SAO合併資訊,以及獲得關於每一色彩分量而經內文編碼的SAO繼續/中斷資訊;SAO旁路解碼器,用於在SAO繼續/中斷資訊指示執行SAO操作的情況下自位元串流獲得關於每一色彩分量以及每一SAO種類而經旁路編碼的絕對偏移值資訊,以及獲得關於每一色彩分量而經旁路編碼的級區位置資訊以及邊緣類別資訊中的一者;以及SAO操作器,用於在SAO繼續/中斷資訊指示執行SAO操作的情況下藉由使用所獲得的資訊基於絕對偏移值資訊針對每一SAO種類而調整LCU的經重新建構的值。
根據本揭露的態樣,提供一種取樣自適應偏移(SAO)編碼裝置,包含:SAO操作器,用於對最大寫碼單元(LCU)執行SAO操作;SAO內文編碼器,用於藉由對LCU的向左SAO合併資訊以及向上SAO合併資訊中的每一者執行內文編碼而產生及輸出向左SAO合併資訊的位元串流以及向上SAO合併資訊的位元串流,且藉由關於每一色彩分量對SAO繼續/中斷資訊執行內文編碼而產生及輸出SAO繼續/中斷資訊的1位元;SAO旁路編碼器,用於在SAO繼續/中斷資訊指示執行SAO操作的情況下藉由關於每一色彩分量以及每一SAO種類對絕對偏移值資訊執行旁路編碼而產生及輸出絕對偏移值資訊的位元串流;以及藉由關於每一色彩分量對級區位置資訊以及邊緣類別資訊中的一者執行旁路編碼而產生及輸出剩餘位元串流。
根據本揭露的態樣,提供一種電腦可讀記錄媒體,其上記錄有用於執行上述方法的電腦程式。
下文中,將參看圖1A至圖7C來描述根據本揭露的實施例的使用基於像素分類的取樣自適應偏移(SAO)操作的視訊編碼技術以及視訊解碼技術。且,將參看圖8至圖20來描述根據本揭露的實施例的在基於具有樹狀結構的寫碼單元的視訊編碼技術以及視訊解碼技術中的基於像素分類的SAO操作。下文中,「影像」可表示視訊的靜態影像或動態影像或視訊自身。
現將參看圖1A至圖7C來描述根據本揭露的實施例的使用基於像素分類的SAO操作的視訊編碼技術以及視訊解碼技術。圖1A及圖1B,以及圖2A及圖2B中說明的SAO編碼裝置10以及SAO解碼裝置20執行SAO操作以最小化原始像素與經重新建構的像素之間的誤差,且傳輸及接收用於執行SAO操作的SAO參數。
使用SAO操作的SAO編碼裝置10將每一影像區塊的像素分類為預定像素群組,將每一像素分配給對應像素群組,且對指示同一像素群組中所包含的原始像素與經重新建構的像素之間的誤差的平均值的偏移值做編碼。
在SAO編碼裝置10與SAO解碼裝置20之間用信號發送樣本。換言之,SAO編碼裝置10可對藉由執行視訊編碼而產生的樣本做編碼且可將樣本作為位元串流而傳輸,且SAO解碼裝置20可自所接收的位元串流剖析且重新建構樣本。
SAO編碼裝置10以及SAO解碼裝置20用信號發送用於SAO操作的SAO參數以藉由按基於像素分類而判定的偏移來調整經重新建構的像素值來最小化原始像素與經重新建構的像素之間的誤差。將偏移值作為SAO參數而在SAO編碼裝置10與SAO解碼裝置20之間進行編碼、傳輸及接收,且接著自SAO參數解碼偏移值。
因此,SAO解碼裝置20可藉由對所接收的位元串流做解碼而產生每一影像區塊的經重新建構的像素,可藉由自位元串流重新建構的偏移值而調整經重新建構的像素,且因此可產生與原始影像具有最小化的誤差的經重新建構的影像。
將參看圖1A及圖1B詳細描述用於執行SAO操作的SAO編碼裝置10的操作,且將參看圖2A及圖2B詳細描述用於執行SAO操作的SAO解碼裝置20的操作。
圖1A及圖1B為根據本揭露的實施例的SAO編碼裝置10的方塊圖以及SAO編碼方法的流程圖。
SAO編碼裝置10包含SAO操作器12以及熵編碼器14。熵編碼器14包含用於對SAO參數做編碼的SAO內文編碼器16以及SAO旁路編碼器18。
SAO編碼裝置10接收視訊的影像(例如,片段)的輸入,將每一影像分割為區塊,且對每一區塊做編碼。區塊可具有正方形形狀、矩形形狀或任意幾何形狀且不限於具有預定大小的資料單元。區塊可為具有樹狀結構的寫碼單元中的最大寫碼單元(LCU)或寫碼單元。下文將參看圖8至圖20來描述基於具有樹狀結構的寫碼單元的視訊編碼以及解碼方法。
SAO編碼裝置10可將每一輸入影像分割為LCU,且可將藉由對每一LCU的樣本執行預測、變換以及熵編碼而產生的所得資料作為位元串流輸出。LCU的樣本可為LCU中所包含的像素的像素值資料。
SAO編碼裝置10可對圖像的LCU個別地做編碼。SAO編碼裝置10可基於自當前LCU分割且具有樹狀結構的寫碼單元來對當前LCU做編碼。
為了對當前LCU做編碼,SAO編碼裝置10可藉由對當前LCU中所包含且具有樹狀結構的寫碼單元中的每一者執行畫面內預測、畫面間預測、變換以及量化,而對樣本做編碼。
SAO編碼裝置10可藉由對具有樹狀結構的寫碼單元中的每一者執行逆量化、逆變換以及畫面間預測或運動補償以便對寫碼單元做解碼,而重新建構當前LCU中所包含的經編碼的樣本。可藉由對經編碼的樣本的先前片段做編碼且接著做解碼而產生經重新建構的影像。可參考先前片段的經重新建構的影像以對當前片段執行畫面間預測。
為了將對當前LCU做編碼之前的原始像素與對當前LCU做解碼之後的經重新建構的像素之間的誤差最小化,SAO操作器12可判定指示原始像素與經重新建構的像素之間的差值的偏移值。
SAO操作器12可對每一色彩分量執行SAO操作。舉例而言,關於YCrCb彩色影像,可對明度分量(Y分量)以及第一色度分量及第二色度分量(Cr分量及Cb分量)中的每一者執行SAO操作。
SAO操作器12可判定是否對當前片段的明度分量執行SAO操作。SAO操作器12可判定是否對當前片段的第一色度分量以及第二色度分量執行SAO操作,其中第一色度分量以及第二色度分量被視為相同分量。換言之,若對第一色度色彩分量執行SAO操作,則亦可對第二色度分量執行SAO操作。若不對第一色度色彩分量執行SAO操作,則可能亦不對第二色度分量執行SAO操作。
熵編碼器14可產生當前片段的SAO參數且可將SAO參數包含於當前片段的標頭中。
SAO操作器12可判定是否對每一LCU執行SAO操作。根據SAO操作器12的判定,SAO內文編碼器16可產生指示是否對明度分量執行SAO操作的明度SAO繼續/中斷資訊。且,根據SAO操作器12的判定,SAO內文編碼器16可產生指示是否對第一色度分量以及第二色度分量執行SAO操作的色度SAO繼續/中斷資訊。
SAO內文編碼器16可將明度SAO繼續/中斷資訊以及色度SAO繼續/中斷資訊包含於LCU的SAO參數中。
SAO操作器12可關於每一LCU而判定偏移值。亦可關於每一LCU而判定SAO參數,SAO參數包含偏移值、SAO類型以及SAO類別。
SAO操作器12可根據當前LCU的像素值分類方法而判定SAO類型。可將SAO類型判定為邊緣類型或級區類型。根據當前區塊的像素值分類方法,可判定是根據邊緣類型還是級區類型來對當前區塊的像素分類。
若SAO類型為邊緣類型,則根據當前LCU的經重新建構的像素與其鄰近像素之間形成的邊緣的方向以及形狀,可判定經重新建構的像素與原始像素之間的偏移。
若SAO類型為級區類型,則在藉由劃分當前LCU的經重新建構的像素的像素值的總範圍而獲得的多個級區中,可判定每一級區中所包含的經重新建構的像素與原始像素之間的偏移。可藉由均勻地或不均勻地劃分像素值的總範圍來獲得級區。
因此,SAO操作器12可基於當前LCU的像素值的空間特性來判定當前LCU的SAO類型,SAO類型指示邊緣類型或級區類型。
SAO操作器12可根據當前LCU的SAO類型而判定經重新建構的像素中的每一者的SAO類別。可將SAO類別判定為邊緣類別或級區類別。
關於邊緣類型,邊緣類別可指示經重新建構的像素與其鄰近像素之間形成的邊緣的方向。邊緣類別可指示0˚、90˚、45˚或135˚的邊緣方向。
若SAO類型為邊緣類型,則SAO操作器12可判定當前LCU的經重新建構的像素中的每一者的邊緣類別。
關於級區類型,在作為藉由劃分當前LCU的像素值的總範圍而獲得的預定數目的連續像素值周期的多個級區中,級區類別可指示經重新建構的像素的像素值所屬的級區的位置。
舉例而言,關於具有8個位元的像素值的樣本,像素值的總範圍為0至255,且像素值可分類為總計32個級區。在此狀況下,在總計32個級區中,可判定經重新建構的像素的像素值所屬的預定數目的級區。級區類別可藉由使用0至31的級區索引中的一者來指示預定數目的連續級區的開始位置(左側開始點)。
關於邊緣類型,根據經重新建構的像素與其鄰近像素之間形成的邊緣的形狀,可將當前LCU的經重新建構的像素分類為預定數目的種類。舉例而言,根據四個邊緣形狀(諸如,凹入邊緣的局部凹部、凹入邊緣的彎曲角落、凸出邊緣的彎曲角落以及凸出邊緣的局部凸部),可將經重新建構的像素分類為四個種類。根據當前LCU的經重新建構的像素中的每一者的邊緣形狀,可判定四個種類中的一者。
關於級區類型,根據當前LCU的經重新建構的像素的像素值所屬的級區的位置,可將經重新建構的像素分類為預定數目的種類。舉例而言,根據自級區類別所指示的開始位置(亦即,最左側級區的開始點)開始的四個連續級區的級區索引,可將經重新建構的像素分類為四個種類。根據當前LCU的經重新建構的像素中的每一者所屬的四個級區中的一者,可判定四個種類中的一者。
SAO操作器12可判定當前LCU的經重新建構的像素中的每一者的種類。關於屬於同一種類的當前LCU的經重新建構的像素,SAO操作器12可藉由使用經重新建構的像素與原始像素之間的差值而判定偏移值。在每一種類中,可將經重新建構的像素與原始像素之間的差值的平均值(亦即,經重新建構的像素的平均誤差)判定為對應於當前種類的偏移值。SAO操作器12可判定每一種類的偏移值,且可將所有種類的偏移值判定為當前LCU的偏移值。
舉例而言,若當前LCU的SAO類型為邊緣類型且經重新建構的像素根據邊緣形狀而分類為四個種類,或若當前LCU的SAO類型為級區類型且經重新建構的像素根據四個連續級區的索引而分類為四個種類,則SAO操作器12可藉由判定經重新建構的像素與原始像素之間的平均值來判定四個偏移值,偏移值屬於四個種類中的每一者。
偏移值中的每一者可大於等於預先設定的最小值,且可小於等於預先設定的最大值。
熵編碼器14可對SAO操作器12所判定的SAO參數做編碼以及輸出,SAO參數包含當前LCU的SAO類型、SAO類別以及偏移值。
每一區塊的SAO參數可包含區塊的SAO類型以及偏移值。作為SAO類型,可輸出中斷類型、邊緣類型或級區類型。
若SAO類型為中斷類型,則可指示SAO操作未應用於當前LCU。在此狀況下,無需對當前LCU的剩餘SAO參數做編碼。
若SAO類型為邊緣類型,則SAO參數可包含個別地對應於邊緣類別的偏移值。否則,若SAO類型為級區類型,則SAO參數可包含個別地對應於級區的偏移值。換言之,熵編碼器14可對每一區塊的SAO參數做編碼。
如上所述,SAO操作器12可對影像的LCU中的每一者執行SAO操作。
根據熵編碼方法,可將SAO參數分類為待以基於內文的熵寫碼為基礎而編碼的參數以及待以旁路模式編碼的參數。
基於內文的熵寫碼方法可包含一系列操作,諸如用於將諸如SAO參數的符號變換為位元串流的二進位化,以及對位元串流進行的基於內文的算術編碼。內文自適應二進位算術寫碼(context adaptive binary arithmetic coding, CABAC)廣泛用作基於內文的算術編碼方法的實例。根據基於內文的算術編碼以及解碼,符號位元串流的每一位元可視為內文的二進位,且每一位元位置可映射至二進位索引。位元串流的長度(亦即,二進位的長度)可根據符號值的大小而改變。對於基於內文的算術編碼以及解碼,需要對符號執行基於內文的機率模型化。
假定基於先前編碼的符號而以機率方式預測當前符號的寫碼位元,則需要執行基於內文的機率模型化。對於基於內文的機率模型化,需要最近更新符號位元串流的每一位元位置(亦即,每一二進位索引)的內文。此處,機率模型化指分析在每一二進位中產生0還是1的機率的程序。可在每一區塊中重複藉由將分析新區塊的符號的每一位元的機率的結果反映至內文而更新內文的程序。若重複上述機率模型化,則可判定每一二進位與機率匹配的機率模型。
因此,關於基於內文的機率模型,可關於當前符號的二進位化位元串流的每一位元而執行選擇及輸出對應於當前內文的碼的操作,藉此執行基於內文的熵編碼。
判定符號的每一二進位的基於內文的機率模型以用於以基於內文的熵寫碼為基礎而進行編碼的操作需要大量計算以及時間。另一方面,旁路模式的熵編碼包含使用機率模型而不考慮符號的內文的熵編碼操作。
熵編碼器14可包含:SAO內文編碼器16,用於以基於內文的熵寫碼(下文中稱作「內文編碼」)為基礎而對SAO參數執行編碼;以及SAO旁路編碼器18,用於以旁路模式(下文中稱作「旁路編碼」)對SAO參數執行熵編碼。
SAO內文編碼器16可對LCU的向左SAO合併資訊、向上SAO合併資訊以及SAO繼續/中斷資訊執行內文編碼。
SAO旁路編碼器18可關於每一色彩分量而對絕對偏移值資訊以及級區位置資訊或邊緣類別資訊執行旁路編碼。
下文將參看圖1B中的SAO編碼方法的流程圖來詳細描述SAO內文編碼器16以及SAO旁路編碼器18輸出SAO參數的實例。
SAO操作器12可判定是否關於當前片段的每一LCU執行SAO操作、SAO方法以及SAO參數。
在操作11中,SAO內文編碼器16可藉由對當前LCU的向左SAO合併資訊執行內文編碼而產生向左SAO合併資訊的1位元旗標。且,SAO內文編碼器16可藉由對當前LCU的向上SAO合併資訊執行內文編碼而產生向上SAO合併資訊的1位元旗標。
熵編碼器14可判定是否關於所有色彩分量(諸如明度分量以及色度分量)而將當前LCU的左側以及上方鄰近LCU的SAO參數用作當前LCU的SAO參數而不分離明度分量以及色度分量。
最初,基於是否藉由使用左側LCU的SAO參數來預測當前LCU的SAO參數,熵編碼器14可產生當前LCU的向左SAO合併資訊。換言之,在不分離明度分量以及第一色度分量及第二色度分量的情況下,可產生相同的向左SAO合併資訊。
接著,基於是否藉由使用上方LCU的SAO參數來預測當前LCU的SAO參數,熵編碼器14可產生當前LCU的向上SAO合併資訊。在不分離明度分量以及第一色度分量及第二色度分量的情況下,可產生相同的向上SAO合併資訊。
在操作13中,SAO內文編碼器16可關於每一色彩分量而對SAO繼續/中斷資訊執行內文編碼。SAO內文編碼器16可產生歸因於內文編碼而產生的SAO繼續/中斷資訊的1位元旗標。
SAO操作器12可將SAO類型資訊的第一位元分配給指示是否對當前LCU執行SAO操作的SAO繼續/中斷資訊。SAO內文編碼器16可僅對SAO類型資訊的第一二進位執行基於內文的CABAC編碼。
若SAO繼續/中斷資訊指示執行SAO操作,則SAO旁路編碼器18可關於每一色彩分量而對邊緣級區識別資訊執行旁路編碼。SAO旁路編碼器18可輸出歸因於旁路編碼而產生的邊緣級區識別資訊的1位元。
SAO旁路編碼器18可將SAO類型資訊的第二位元分配給指示對當前LCU執行邊緣SAO操作還是級區SAO操作的邊緣級區識別資訊。SAO旁路編碼器18可對SAO類型資訊的第二二進位執行旁路模式CABAC編碼。
換言之,若執行SAO操作,則熵編碼器14可將SAO繼續/中斷資訊的經內文編碼的旗標以及邊緣級區識別資訊的經旁路編碼的旗標作為SAO類型資訊而輸出。
SAO操作器12可將相同SAO繼續/中斷資訊應用於第一色度分量以及第二色度分量。且,SAO操作器12可將相同邊緣級區識別資訊應用於第一色度分量以及第二色度分量。因此,熵編碼器14可針對明度分量以及第一色度分量對SAO繼續/中斷資訊以及邊緣級區識別資訊執行熵編碼,且接著可能不針對第二色度分量再次對SAO繼續/中斷資訊以及邊緣級區識別資訊執行熵編碼。
在操作15中,若SAO繼續/中斷資訊指示執行SAO操作,則SAO旁路編碼器18可針對每一SAO種類以及每一色彩分量而對絕對偏移值資訊執行旁路編碼。SAO旁路編碼器18可輸出歸因於旁路編碼而產生的絕對偏移值資訊的位元串流。
SAO旁路編碼器18可針對明度分量以及第一色度分量及第二色度分量中的每一者而對絕對偏移值資訊執行旁路編碼。且,可關於四個種類中的每一者以及每一色彩分量而對絕對偏移值資訊執行旁路編碼。
SAO編碼裝置10可對LCU的SAO參數中的絕對偏移值資訊執行旁路模式CABAC編碼。絕對偏移值資訊可指示基於視訊的位元深度的範圍內的值。舉例而言,若位元深度對應於8個位元,則絕對偏移值可為大於等於0且小於等於7的值。作為另一實例,若位元深度對應於10個位元,則絕對偏移值可為大於等於0且小於等於31的值。
在操作17中,SAO旁路編碼器18可關於每一色彩分量而對級區位置資訊以及邊緣類別資訊中的一者執行旁路編碼。可將除了SAO繼續/中斷資訊以及邊緣級區識別資訊之外的SAO類型資訊的剩餘位元串流分配給級區位置資訊或邊緣類別資訊。SAO旁路編碼器18可輸出歸因於旁路編碼而產生的級區位置資訊或邊緣類別資訊的剩餘位元串流。
若邊緣級區識別資訊指示級區類型,則SAO旁路編碼器18可關於每一色彩分量而對級區位置資訊執行旁路編碼。級區位置資訊將級區的左側開始點指示為級區類型的SAO類別。級區位置資訊可被判定為具有固定位元長度的位元串流。
若針對每一SAO種類的絕對偏移值資訊不是0,則SAO旁路編碼器18可對偏移正負號資訊執行旁路編碼。因此,SAO旁路編碼器18可將偏移正負號資訊以及級區位置資訊的經旁路編碼的位元串流作為指示級區SAO類型的SAO類型資訊的剩餘位元串流而輸出。SAO旁路編碼器18可最後輸出LCU的SAO參數中的級區位置資訊。
可關於明度分量以及第一色度分量及第二色度分量中的每一者而判定級區SAO類型的偏移正負號資訊以及級區位置資訊。因此,SAO旁路編碼器18可關於明度分量以及第一色度分量及第二色度分量中的每一者而對偏移正負號資訊以及級區位置資訊執行旁路編碼。歸因於旁路編碼而產生的級區類別資訊的位元串流可作為SAO類型資訊的剩餘位元串流而輸出。
若邊緣級區識別資訊指示邊緣類型,則SAO旁路編碼器18可關於每一色彩分量而對邊緣類別資訊執行旁路編碼。歸因於旁路編碼而產生的邊緣類別資訊的位元串流可作為SAO類型資訊的剩餘位元串流而輸出。
可關於明度分量以及第一色度分量而判定邊緣類別資訊。關於第一色度分量而判定的邊緣類別資訊可同樣應用於第二色度分量。因此,SAO旁路編碼器18可關於明度分量以及第一色度分量而設定邊緣類別資訊,且接著可能不關於第二色度分量而再次設定邊緣類別資訊。
SAO編碼裝置10可包含中央處理器(未圖示),中央處理器用於整體控制SAO操作器12、熵編碼器14、SAO內文編碼器16以及SAO旁路編碼器18。或者,SAO操作器12、熵編碼器14、SAO內文編碼器16以及SAO旁路編碼器18可由其個別處理器(未圖示)驅動,處理器協同操作以控制SAO編碼裝置10。或者,SAO編碼裝置10外部的外部處理器(未圖示)可控制SAO操作器12、熵編碼器14、SAO內文編碼器16以及SAO旁路編碼器18。
SAO編碼裝置10可包含一個或一個以上資料儲存器(未圖示),資料儲存器用於儲存SAO操作器12、熵編碼器14、SAO內文編碼器16以及SAO旁路編碼器18的輸入及輸出資料。SAO編碼裝置10可包含記憶體控制器(未圖示),記憶體控制器用於管理輸入至資料儲存器以及自資料儲存器輸出的資料。
為了執行視訊編碼操作(包含變換)且輸出視訊編碼操作的結果,SAO編碼裝置10可結合內部或外部視訊編碼處理器而操作。SAO編碼裝置10的內部視訊編碼處理器可為用於執行視訊編碼操作的獨立處理器。且,SAO編碼裝置10、中央處理單元或圖形處理單元可包含用於執行基本視訊編碼操作的視訊編碼處理器模組。
圖2A及圖2B為根據本揭露的實施例的SAO解碼裝置20的方塊圖以及SAO解碼方法的流程圖。
SAO解碼裝置20包含熵解碼器22以及SAO操作器28。熵解碼器22包含SAO內文解碼器24以及SAO旁路解碼器26。
SAO解碼裝置20接收包含視訊的經編碼的資料的位元串流。SAO解碼裝置20可自所接收的位元串流剖析經編碼的視訊樣本,且可對每一影像區塊執行熵解碼、逆量化、逆變換、預測以及運動補償,以便產生經重新建構的像素。
SAO解碼裝置20可藉由對包含自所接收的位元串流獲得的當前片段的經編碼的樣本以及經編碼的資訊的經編碼的符號做解碼來重新建構當前片段。因此,經重新建構的影像可得以產生。
且,SAO解碼裝置20可接收指示原始像素與經重新建構的像素之間的差值的偏移值,且SAO操作器28可將原始影像與經重新建構的影像之間的誤差最小化。SAO解碼裝置20可接收視訊的每一LCU的經編碼的資料,且可基於自LCU分割且具有樹狀結構的寫碼單元而重新建構LCU。SAO操作器28可對LCU執行SAO操作。
當SAO解碼裝置20執行SAO操作時,首先,需要由已執行SAO操作的SAO編碼裝置10判定的SAO參數。熵解碼器22可自LCU的位元串流獲得SAO參數。SAO內文解碼器24可自LCU的位元串流獲得關於每一色彩分量的向左SAO合併資訊及向上SAO合併資訊以及SAO繼續/中斷資訊。
若SAO繼續/中斷資訊指示執行SAO操作,則SAO旁路解碼器26可自位元串流獲得關於每一色彩分量的邊緣級區識別資訊,以及針對每一SAO種類的絕對偏移值資訊及級區位置資訊或邊緣類別資訊。
因而,若SAO繼續/中斷資訊指示執行SAO操作,則SAO操作器28可藉由使用藉由SAO內文解碼器24以及SAO旁路解碼器26獲得的資訊基於關於每一SAO種類的絕對偏移值資訊而調整LCU的經重新建構的值。
現將參看圖2B來詳細描述重新建構當前LCU的樣本且獲得用於調整偏移的SAO參數的方法。
SAO解碼裝置20可藉由使用每一符號的碼機率模型而對每一LCU的符號執行算術解碼。此外,SAO解碼裝置20可關於每一LCU基於更新的機率模型而執行基於內文的算術解碼(下文中稱作「內文解碼」)。
且,SAO解碼裝置20可執行旁路模式熵解碼(下文中稱作「旁路解碼」)以用於執行算術解碼而不判定考慮內文的機率模型。
在操作21中,SAO內文解碼器24可自LCU的位元串流獲得經內文編碼的向左SAO合併資訊以及向上SAO合併資訊。
SAO內文解碼器24可判定向左SAO合併資訊的基於內文的機率模型,可藉由使用向左SAO合併資訊的機率模型而執行熵解碼,且因此可重新建構向左SAO合併資訊。
SAO內文解碼器24可判定向上SAO合併資訊的基於內文的機率模型,可藉由使用向上SAO合併資訊的機率模型而執行熵解碼,且因此可重新建構向上SAO合併資訊。
若向左SAO合併資訊指示藉由使用左側LCU的SAO參數來預測當前LCU的SAO參數,則可將關於左側LCU的每一色彩分量的SAO參數用作關於當前LCU的每一色彩分量的SAO參數。
若向左SAO合併資訊指示不使用左側LCU的SAO參數且向上SAO合併資訊指示藉由使用上方LCU的SAO參數來預測當前LCU的SAO參數,則可將關於上方LCU的每一色彩分量的SAO參數用作關於當前LCU的每一色彩分量的SAO參數。
然而,若向上SAO合併資訊指示不藉由使用上方LCU的SAO參數來預測當前LCU的SAO參數,則熵解碼器22可自位元串流獲得關於當前LCU的每一色彩分量的SAO參數。
在操作23中,SAO內文解碼器24可自LCU的位元串流獲得關於每一色彩分量的經內文編碼的SAO繼續/中斷資訊。
若SAO繼續/中斷資訊指示執行SAO操作,則SAO旁路解碼器26可自LCU的位元串流進一步獲得關於每一色彩分量的經旁路編碼的邊緣級區識別資訊。
SAO內文解碼器24可判定SAO繼續/中斷資訊的基於內文的機率模型,可藉由使用SAO繼續/中斷資訊的機率模型而執行熵解碼,且因此可重新建構SAO繼續/中斷資訊。
針對第一色度分量的SAO繼續/中斷資訊可同樣應用於第二色度分量。因此,若獲得了針對明度分量以及第一色度分量中的每一者的SAO繼續/中斷資訊,則SAO內文解碼器24可能不會進一步獲得針對第二色度分量的SAO繼續/中斷資訊。
針對第一色度分量的邊緣級區識別資訊可同樣應用於第二色度分量。因此,若獲得了針對明度分量以及第一色度分量中的每一者的邊緣級區識別資訊,則SAO旁路解碼器26可能不會進一步獲得針對第二色度分量的邊緣級區識別資訊。
若在操作23中獲得的SAO繼續/中斷資訊指示執行SAO操作,則在操作25中,SAO旁路解碼器26可自LCU的位元串流獲得針對每一SAO種類以及每一色彩分量的經旁路編碼的絕對偏移值資訊。
SAO旁路解碼器26可執行熵解碼而不使用絕對偏移值資訊的基於內文的機率模型且因此可重新建構絕對偏移值資訊。
在操作27中,SAO旁路解碼器26可自LCU的位元串流獲得關於每一色彩分量的經旁路編碼的級區位置資訊以及邊緣類別資訊中的一者。
若邊緣級區識別資訊指示級區類型,則SAO旁路解碼器26可自位元串流獲得關於每一色彩分量的經旁路編碼的級區位置資訊。若針對每一SAO種類而獲得的絕對偏移值資訊不是0,則SAO旁路解碼器26可自位元串流獲得關於每一色彩分量的經旁路編碼的偏移正負號資訊以及級區位置資訊。SAO旁路解碼器26可最後獲得LCU的SAO參數中的級區位置資訊。
若邊緣級區識別資訊指示邊緣類型,則SAO旁路解碼器26可自位元串流獲得關於每一色彩分量的經旁路編碼的邊緣類別資訊。邊緣類別資訊可包含針對明度分量的邊緣類別資訊以及針對第一色度分量的邊緣類別資訊。針對第一色度分量的邊緣類別資訊可同樣應用於第二色度分量。若獲得了針對明度分量以及第一色度分量中的每一者的邊緣類別資訊,則SAO旁路解碼器26可能不會進一步獲得針對第二色度分量的邊緣類別資訊。
SAO旁路解碼器26可執行熵解碼而不使用偏移正負號資訊的基於內文的機率模型且因此可重新建構偏移正負號資訊。SAO旁路解碼器26可執行熵解碼而不使用級區位置資訊的基於內文的機率模型且因此可重新建構級區位置資訊。SAO旁路解碼器26可執行熵解碼而不使用邊緣類別資訊的基於內文的機率模型且因此可重新建構邊緣類別資訊。
SAO操作器28可藉由使用左側或上方LCU的SAO參數基於SAO合併資訊來判定當前LCU的SAO參數。在此狀況下,可不提取當前LCU的SAO參數而將其重新建構為與先前經重新建構的鄰近LCU的SAO參數相同。
SAO內文解碼器24可提取針對當前LCU的明度分量以及第一色度分量及第二色度分量的共同SAO合併資訊。SAO內文解碼器24可基於共同SAO合併資訊而判定是否將明度分量的SAO參數以及第一色度分量及第二色度分量的SAO參數重新建構為與鄰近LCU的SAO參數相同。
可基於由熵解碼器22獲得的SAO類型資訊而判定中斷類型、邊緣類型或級區類型。
若藉由SAO內文解碼器24而重新建構SAO類型資訊的第一二進位(亦即,SAO繼續/中斷資訊),則可基於SAO繼續/中斷資訊而判定是否對當前LCU執行SAO操作。若SAO類型為中斷類型,則可判定不對當前LCU執行SAO操作。在此狀況下,無需剖析當前LCU的剩餘SAO參數。
SAO旁路解碼器26可判定關於每一色彩分量以及每一種類的絕對偏移值。每一偏移值可大於等於預先設定的最小值,且可小於等於預先設定的最大值。
若SAO類型資訊指示級區類型,則可基於藉由SAO旁路解碼器26獲得的級區位置資訊而判定包含經重新建構的像素的像素值的級區的位置。
若SAO類型資訊指示級區類型且絕對偏移值被判定為0,則SAO旁路解碼器26不重新建構偏移正負號資訊。若絕對偏移值不是0,則SAO旁路解碼器26可獲得偏移正負號資訊,且可判定偏移值為正值還是負值。且,SAO旁路解碼器26可在獲得偏移正負號資訊之後獲得級區位置資訊。
若SAO類型資訊指示邊緣類型,則可基於藉由SAO旁路解碼器26獲得的邊緣類別資訊而將當前LCU中所包含的經重新建構的像素的邊緣方向判定為0˚、90˚、45˚或135˚。
SAO操作器28可基於明度SAO類型資訊的第二位元而判定當前LCU的SAO類型為邊緣類型還是級區類型,且可對當前LCU的明度分量執行邊緣SAO操作或級區SAO操作。
SAO操作器28可基於色度SAO類型資訊的第二位元而判定當前LCU的SAO類型為邊緣類型還是級區類型,且可對當前LCU的第一色度分量以及第二色度分量執行邊緣SAO操作或級區SAO操作。
且,若判定對當前LCU的第一色度分量以及第二色度分量執行邊緣SAO操作,則SAO操作器28可基於色度SAO類型資訊而判定當前LCU的第一色度分量以及第二色度分量具有同一邊緣類別。
藉由SAO旁路解碼器26獲得的SAO參數中的絕對偏移值資訊可限於小於等於基於視訊的位元深度的臨限值的值。絕對偏移值資訊可指示基於視訊的位元深度的範圍內的值。舉例而言,若位元深度對應於8個位元,則絕對偏移值可為大於等於0且小於等於7的值。作為另一實例,若位元深度對應於10個位元,則絕對偏移值可為大於等於0且小於等於31的值。
且,若自SAO類型資訊的第二位元獲悉對當前LCU執行級區SAO操作,則SAO旁路解碼器26可對具有固定位元長度且在SAO類型資訊的第二位元之後的位元執行旁路模式CABAC解碼。SAO旁路解碼器26可自關於明度分量以及色度分量中的每一者的SAO類型資訊的最後固定位元長度位元獲得關於級區的左側開始點的資訊。
基於藉由SAO旁路解碼器26重新建構的邊緣級區識別資訊,當前LCU的像素值分類方法可判定為邊緣類型或級區類型。
SAO操作器28可藉由關於自當前LCU分割且具有樹狀結構的寫碼單元而判定的差值來調整經重新建構的樣本的像素值。
SAO解碼裝置20可包含中央處理器(未圖示),中央處理器用於整體控制熵解碼器22、SAO內文解碼器24、SAO旁路解碼器26以及SAO操作器28。或者,熵解碼器22、SAO內文解碼器24、SAO旁路解碼器26以及SAO操作器28可由其個別處理器(未圖示)驅動,處理器協同操作以控制SAO解碼裝置20。或者,SAO解碼裝置20外部的外部處理器(未圖示)可控制熵解碼器22、SAO內文解碼器24、SAO旁路解碼器26以及SAO操作器28。
SAO解碼裝置20可包含一個或一個以上資料儲存器(未圖示),資料儲存器用於儲存熵解碼器22、SAO內文解碼器24、SAO旁路解碼器26以及SAO操作器28的輸入及輸出資料。SAO解碼裝置20可包含記憶體控制器(未圖示),記憶體控制器用於管理輸入至資料儲存器以及自資料儲存器輸出的資料。
為了藉由執行視訊解碼而重新建構視訊,SAO解碼裝置20可結合內部或外部視訊解碼處理器而操作。SAO解碼裝置20的內部視訊解碼處理器可為用於執行基本視訊解碼操作的獨立處理器。且,SAO解碼裝置20、中央處理單元或圖形處理單元可包含用於執行基本視訊解碼操作的視訊解碼處理器模組。
現將參看圖3來詳細描述使用SAO技術的視訊解碼方法。圖3為根據本揭露的實施例的視訊解碼裝置30的方塊圖。
視訊解碼裝置30包含熵解碼器31、逆量化器32、逆變換器33、重新建構器34、畫面內預測器35、參考圖像緩衝器36、運動補償器37、解區塊濾波器38以及SAO操作器39。
視訊解碼裝置30可接收包含經編碼的視訊資料的位元串流。熵解碼器31可自位元串流剖析畫面內模式資訊、畫面間模式資訊、SAO資訊以及留數(residue)。
由熵解碼器31提取的留數可為經量化的變換係數。因此,逆量化器32可對留數執行逆量化以重新建構變換係數,且逆變換器33可對經重新建構的係數執行逆變換,以重新建構空間域的殘餘值。
為了預測且重新建構空間域的殘餘值,可執行畫面內預測或運動補償。
若畫面內模式資訊由熵解碼器31提取,則畫面內預測器35可藉由使用畫面內模式資訊而判定待參考以自空間上鄰近於當前樣本的樣本重新建構當前樣本的參考樣本。可自先前由重新建構器34重新建構的樣本選擇參考樣本。重新建構器34可藉由使用基於由逆變換器33重新建構的畫面內模式資訊以及殘餘值而判定的參考樣本來重新建構當前樣本。
若畫面間模式資訊由熵解碼器31提取,則運動補償器37可藉由使用畫面間模式資訊而判定待參考以自當前圖像之前重新建構的圖像重新建構當前圖像的當前樣本的參考圖像。畫面間模式資訊可包含運動向量、參考索引等。藉由使用參考索引,在當前圖像之前重新建構且儲存於參考圖像緩衝器36中的圖像中,可判定待用於對當前樣本執行運動補償的參考圖像。藉由使用運動向量,可判定待用於對當前區塊執行運動補償的參考圖像的參考區塊。重新建構器34可藉由使用基於由逆變換器33重新建構的畫面間模式資訊以及殘餘值而判定的參考區塊來重新建構當前樣本。
重新建構器34可重新建構樣本,且可輸出經重新建構的像素。重新建構器34可基於具有樹狀結構的寫碼單元而產生每一LCU的經重新建構的像素。
解區塊濾波器38可執行濾波,以減少安置在LCU或具有樹狀結構的寫碼單元中的每一者的邊緣區域處的像素的結塊現象(blocking phenomenon)。
且,SAO操作器39可根據SAO技術而調整每一LCU的經重新建構的像素的偏移。SAO操作器39可基於由熵解碼器31提取的SAO資訊而判定當前LCU的SAO類型、SAO類別以及偏移值。
由熵解碼器31進行的提取SAO資訊的操作可對應於SAO解碼裝置20的熵解碼器22的操作,且SAO操作器39的操作可對應於SAO解碼裝置20的SAO內文解碼器24以及SAO旁路解碼器26的操作。
SAO操作器39可基於自SAO資訊判定的偏移值,關於當前LCU的經重新建構的像素,而判定偏移值的正負號以及差值。SAO操作器39可藉由按照基於偏移值而判定的差值來增大或減小經重新建構的像素的像素值,而減小經重新建構的像素與原始像素之間的誤差。
包含由SAO操作器39偏移調整的經重新建構的像素的圖像可儲存於參考圖像緩衝器36中。因此,藉由使用根據SAO操作而在經重新建構的樣本與原始像素之間具有最小化的誤差的參考圖像,可對下一圖像執行運動補償。
根據SAO操作,基於經重新建構的像素與原始像素之間的差值,可判定包含經重新建構的像素的像素群組的偏移。針對SAO操作,現將詳細描述用於將經重新建構的像素分類為像素群組的實施例。
根據SAO操作,可基於(i)經重新建構的像素的邊緣類型或(ii)經重新建構的像素的級區類型來對像素分類。可藉由使用SAO類型來定義是基於邊緣類型還是級區類型來對像素分類。
現將詳細描述根據SAO操作基於邊緣類型來對像素分類的實施例。
在判定當前LCU的邊緣類型偏移時,可判定當前LCU中所包含的經重新建構的像素中的每一者的邊緣類別。換言之,藉由比較當前的經重新建構的像素與鄰近像素之間的像素值,可定義當前的經重新建構的像素的邊緣類別。現將參看圖4來描述判定邊緣類別的實例。
圖4為展示根據本揭露的實施例的邊緣類型的邊緣類別的表格。
可依序將索引0、1、2及3分配給邊緣類別41、42、43及44。若邊緣類型頻繁出現,則可將小的索引分配給邊緣類型。
邊緣類別可指示當前的經重新建構的像素X0與兩個鄰近像素之間形成的1維邊緣的方向。具有索引0的邊緣類別41指示在邊緣形成於當前的經重新建構的像素X0與兩個水平鄰近的像素X1及X2之間時的狀況。具有索引1的邊緣類別42指示在邊緣形成於當前的經重新建構的像素X0與兩個垂直鄰近的像素X3及X4之間時的狀況。具有索引2的邊緣類別43指示在邊緣形成於當前的經重新建構的像素X0與兩個135˚對角線鄰近的像素X5及X8之間時的狀況。具有索引3的邊緣類別44指示在邊緣形成於當前的經重新建構的像素X0與兩個45˚對角線鄰近的像素X6及X7之間時的狀況。
因此,藉由分析當前LCU中所包含的經重新建構的像素的邊緣方向且因此判定當前LCU中的強邊方向(strong edge direction),可判定當前LCU的邊緣類別。
關於每一邊緣類別,可根據當前像素的邊緣形狀而對種類分類。現將參看圖5A及圖5B來描述根據邊緣形狀的種類的實例。
圖5A及圖5B為展示根據本揭露的實施例的邊緣類型的種類的表格及圖表。
邊緣類別指示當前像素對應於凹入邊緣的最低點、安置於凹入邊緣的最低點周圍的彎曲角落處的像素、凸出邊緣的最高點還是安置於凸出邊緣的最高點周圍的彎曲角落處的像素。
圖5A例示性地展示用於判定邊緣的種類的條件。圖5B例示性地展示經重新建構的像素與鄰近像素之間的邊緣形狀,及像素的像素值c、a以及b。
c指示當前的經重新建構的像素的索引,且a以及b指示根據邊緣方向在當前的經重新建構的像素的兩側的鄰近像素的索引。Xa、Xb以及Xc分別指示具有索引a、b以及c的經重新建構的像素的像素值。在圖5B中,x軸指示當前的經重新建構的像素以及當前的經重新建構的像素的兩側的鄰近像素的索引,且y軸指示樣本的像素值。
種類1指示在當前樣本對應於凹入邊緣的最低點(亦即,局部凹部)(Xc<Xa && Xc<Xb)時的狀況。如圖表51所示,若鄰近像素a與b之間的當前的經重新建構的像素c對應於凹入邊緣的最低點,則當前的經重新建構的像素可分類為種類1。
種類2指示在當前樣本安置於凹入邊緣的最低點周圍的彎曲角落(亦即,凹入角落)處(Xc<Xa && Xc==Xb || Xc==Xa && Xc<Xb)時的狀況。如圖表52所示,若鄰近像素a與b之間的當前的經重新建構的像素c安置於凹入邊緣的向下曲線的結束點處(Xc<Xa && Xc==Xb),或如圖表53所示,若當前的經重新建構的像素c安置於凹入邊緣的向上曲線的開始點處(Xc==Xa && Xc<Xb),則當前的經重新建構的像素可分類為種類2。
種類3指示在當前樣本安置於凸出邊緣的最高點周圍的彎曲角落(亦即,凸出角落)處(Xc>Xa && Xc==Xb || Xc==Xa && Xc>Xb)時的狀況。如圖表54所示,若鄰近像素a與b之間的當前的經重新建構的像素c安置於凸出邊緣的向下曲線的開始點處(Xc==Xa && Xc>Xb),或如圖表55所示,若當前的經重新建構的像素c安置於凸出邊緣的向上曲線的結束點處(Xc>Xa && Xc==Xb),則當前的經重新建構的像素可分類為種類3。
種類4指示在當前樣本對應於凸出邊緣的最高點(亦即,局部凸部)(Xc>Xa && Xc>Xb)時的狀況。如圖表56所示,若鄰近像素a與b之間的當前的經重新建構的像素c對應於凸出邊緣的最高點,則當前的經重新建構的像素可分類為種類4。
若當前的經重新建構的像素並不滿足種類1、2、3以及4的條件的任一者,則當前的經重新建構的像素並不對應於邊緣,且因此分類為種類0,且種類0的偏移無需編碼。
根據本揭露的實施例,關於對應於同一種類的經重新建構的像素,可將經重新建構的像素與原始像素之間的差值的平均值判定為當前種類的偏移。且,可判定所有種類的偏移。
若藉由使用正偏移值來調整經重新建構的像素值,則可將種類1及2的凹入邊緣平滑化,且可由於負偏移值而將凹入邊緣銳化。可由於負偏移值而將種類3及4的凸出邊緣平滑化,且可由於正偏移值而將凸出邊緣銳化。
SAO編碼裝置10可並不允許對邊緣的銳化效應。此處,種類1及2的凹入邊緣需要正偏移值,且種類3及4的凸出邊緣需要負偏移值。在此狀況下,若邊緣的種類是已知的,則可判定偏移值的正負號。因此,SAO編碼裝置10可並不傳輸偏移值的正負號,且可僅傳輸偏移值的絕對值。且,SAO解碼裝置20可並不接收偏移值的正負號,且可僅接收偏移值的絕對值。
因此,SAO編碼裝置10可對根據當前邊緣類別的種類的偏移值做編碼並進行傳輸,且SAO解碼裝置20可按照所接收的偏移值而調整種類的經重新建構的像素。
舉例而言,若將邊緣類型的偏移值判定為0,則SAO編碼裝置10可僅傳輸邊緣類別資訊。
舉例而言,若邊緣類型的絕對偏移值不是0,則SAO編碼裝置10可傳輸絕對偏移值以及邊緣類別資訊。關於邊緣類型,偏移值的正負號無需傳輸。
若所接收的絕對偏移值不是0,則SAO解碼裝置20可讀取邊緣類型的絕對偏移值。可基於經重新建構的像素與鄰近像素之間的邊緣形狀,根據邊緣種類來預測偏移值的正負號。
因此,SAO編碼裝置10可根據邊緣方向以及邊緣形狀而對像素分類,可將具有相同特性的像素之間的平均誤差值判定為偏移值,且可判定根據種類的偏移值。SAO編碼裝置10可對指示邊緣類型的SAO類型資訊、指示邊緣方向的SAO類別資訊以及偏移值做編碼且進行傳輸。
SAO解碼裝置20可接收SAO類型資訊、SAO類別資訊以及偏移值,且可根據SAO類型資訊以及SAO類別資訊而判定邊緣方向。SAO解碼裝置20可根據邊緣方向而判定對應於邊緣形狀的種類的經重新建構的像素的偏移值,且可按照偏移值來調整經重新建構的像素的像素值,藉此使原始影像與經重新建構的影像之間的誤差最小化。
現將詳細描述根據SAO技術基於級區類型來對像素分類的實施例。
根據本揭露的實施例,經重新建構的像素的像素值中的每一者可屬於多個級區中的一者。舉例而言,像素值可根據p位元取樣而具有自最小值Min至最大值Max的總範圍,其中Min為0且Max為2^(p-1)。若將像素值的總範圍(Min, Max)劃分為K個周期,則可將像素值的每一周期稱為級區。若Bk 指示第k級區的最大值,則可劃分級區[B0 , B1 -1]、[B1 , B2 -1]、[B2 , B3 -1]、……、以及[Bk -1, Bk ]。若當前的經重新建構的像素Rec(x,y)的像素值屬於級區[Bk -1, Bk ],則可將當前級區判定為k。可均勻地或不均勻地劃分級區。
舉例而言,若將像素值分類為相等的8位元像素級區,則可將像素值劃分為32個級區。更詳細言之,可將像素值分類為級區[0, 7]、[8, 15]、……、 [240, 247]以及[248, 255]。
在根據級區類型而分類的多個級區中,可判定經重新建構的像素的像素值中的每一者所屬的級區。且,可判定指示每一級區中的原始像素與經重新建構的像素之間的誤差的平均值的偏移值。
因此,SAO編碼裝置10以及SAO解碼裝置20可對對應於根據當前級區類型而分類的級區中的每一者的偏移做編碼且進行收發,且可按照偏移來調整經重新建構的像素。
因此,關於級區類型,SAO編碼裝置10以及SAO解碼裝置20可根據經重新建構的像素的像素值所屬的級區來對經重新建構的像素分類,可按照屬於同一級區的經重新建構的像素的誤差值的平均值來判定偏移,且可按照偏移來調整經重新建構的像素,藉此使原始影像與經重新建構的影像之間的誤差最小化。
在根據級區類型來判定偏移時,SAO編碼裝置10以及SAO解碼裝置20可根據級區位置而將經重新建構的像素分類為多個種類。舉例而言,若將像素值的總範圍劃分為K個級區,則可根據指示第k級區的級區索引k來對種類編索引。可將種類的數目判定為對應於級區的數目。
然而,為了減少資料,SAO編碼裝置10以及SAO解碼裝置20可限制用於根據SAO技術來判定偏移的種類的數目。舉例而言,可將在級區索引增大的方向上自具有預定開始位置的級區開始的連續的預定數目的級區分配給種類,且可僅判定每一種類的偏移。
舉例而言,若將具有索引12的級區判定為開始級區,則可將自開始級區開始的四個級區(亦即,具有索引12、13、14以及15的級區)分別分配給種類1、2、3以及4。因此,可將具有索引12的級區中所包含的經重新建構的像素與原始像素之間的平均誤差判定為種類1的偏移。同樣,可將具有索引13的級區中所包含的經重新建構的像素與原始像素之間的平均誤差判定為種類2的偏移,可將具有索引14的級區中所包含的經重新建構的像素與原始像素之間的平均誤差判定為種類3的偏移,且可將具有索引15的級區中所包含的經重新建構的像素與原始像素之間的平均誤差判定為種類4的偏移。
在此狀況下,需要關於級區範圍的開始位置(亦即,左側級區的位置)的資訊,以判定分配給種類的級區的位置。因此,SAO編碼裝置10可將指示左側級區的位置的左側開始點資訊作為SAO類別來編碼且進行傳輸。SAO編碼裝置10可對指示級區類型的SAO類型、SAO類別以及根據種類的偏移值做編碼且進行傳輸。
SAO解碼裝置20可接收SAO類型、SAO類別以及根據種類的偏移值。若所接收的SAO類型為級區類型,則SAO解碼裝置20可自SAO類別讀取開始級區位置。SAO解碼裝置20可在自開始級區開始的四個級區中判定經重新建構的像素所屬的級區,可在根據種類的偏移值中判定分配給當前級區的偏移值,且可按照偏移值來調整經重新建構的像素的像素值。
上文中,將邊緣類型以及級區類型作為SAO類型介紹,且詳細描述了根據SAO類型的SAO類別以及種類。現將詳細描述由SAO編碼裝置10以及SAO解碼裝置20編碼且收發的SAO參數。
SAO編碼裝置10以及SAO解碼裝置20可根據每一LCU的經重新建構的像素的像素分類方法來判定SAO類型。
可根據每一區塊的影像特性來判定SAO類型。舉例而言,關於包含垂直邊緣、水平邊緣以及對角線邊緣的LCU,為了改變邊緣值,可藉由根據邊緣類型來對像素值分類而判定偏移值。關於不包含邊緣區域的LCU,可根據級區分類來判定偏移值。因此,SAO編碼裝置10以及SAO解碼裝置20可關於每一LCU用信號發送SAO類型。
SAO編碼裝置10以及SAO解碼裝置20可關於每一LCU來判定SAO參數。換言之,可判定LCU的經重新建構的像素的SAO類型,可將LCU的經重新建構的像素分類為多個種類,且可根據種類來判定偏移值。
在LCU中所包含的經重新建構的像素中,SAO編碼裝置10可將分類為同一種類的經重新建構的像素的平均誤差判定為偏移值。可判定每一種類的偏移值。
根據本揭露的實施例,SAO參數可包含SAO類型、偏移值以及SAO類別。SAO編碼裝置10以及SAO解碼裝置20可收發關於每一LCU而判定的SAO參數。
在LCU的SAO參數中,SAO編碼裝置10可對SAO類型以及偏移值做編碼且進行傳輸。若SAO類型為邊緣類型,則SAO編碼裝置10可進一步傳輸指示邊緣方向的SAO類別,SAO類別之後是SAO類型以及根據種類的偏移值。若SAO類型為級區類型,則SAO編碼裝置10可進一步傳輸指示開始級區位置的SAO類別,SAO類別之後是SAO類型以及根據種類的偏移值。SAO類別可關於邊緣類型而分類為邊緣類別資訊,且可關於級區類型而分類為級區位置資訊。
SAO解碼裝置20可接收每一LCU的SAO參數,SAO參數包含SAO類型、偏移值以及SAO類別。且,SAO解碼裝置20可在根據種類的偏移值中選擇每一經重新建構的像素所屬的種類的偏移值,且可按照所選擇的偏移值來調整經重新建構的像素。
現將描述收發SAO參數中的偏移值的實施例。
為了傳輸偏移值,SAO編碼裝置10可進一步傳輸正負號資訊以及絕對剩餘部分。
若絕對偏移值為0,則無需對正負號資訊或絕對剩餘部分做編碼。然而,若絕對偏移值不是0,則可進一步傳輸正負號資訊以及絕對剩餘部分。
然而,如上所述,關於邊緣類型,由於可根據種類而按照正數或負數來預測偏移值,因此,無需傳輸正負號資訊。
根據本揭露的實施例,在判定偏移值Off-set之前,可預先將偏移值限制於自最小值MinOffSet至最大值MaxOffSet的範圍內(MinOffset ≤ Off-Set ≤ MaxOffset)。
舉例而言,關於邊緣類型,可將種類1及2的經重新建構的像素的偏移值判定為處於自最小值0至最大值7的範圍內。關於邊緣類型,可將種類3及4的經重新建構的像素的偏移值判定為處於自最小值-7至最大值0的範圍內。
舉例而言,關於級區類型,可將所有種類的經重新建構的像素的偏移值判定為處於自最小值-7至最大值7的範圍內。
為了減少偏移值的傳輸位元,可將剩餘部分限制為p位元值而不是負數。在此狀況下,剩餘部分可大於等於0,且可小於等於最大值與最小值之間的差值(0 ≤ 剩餘部分 ≤ MaxOffSet - MinOffSet + 1 ≤ 2^p)。若SAO編碼裝置10傳輸剩餘部分,且SAO解碼裝置20知曉偏移值的最大值以及最小值中的至少一者,則可藉由僅使用所接收的剩餘部分來重新建構原始偏移值。
在SAO參數中,現將詳細描述SAO合併資訊。
鄰近區塊的SAO類型及/或偏移值可能相同。SAO編碼裝置10可比較當前區塊的SAO參數與鄰近區塊的SAO參數,且若SAO參數相同,則可對當前區塊以及鄰近區塊的SAO參數做合併以及編碼。若先前對鄰近區塊的SAO參數做編碼,則可將鄰近區塊的SAO參數用作當前區塊的SAO參數。因此,SAO編碼裝置10可並不對當前區塊的SAO參數做編碼,且可僅對當前區塊的SAO合併資訊做編碼。
在自所接收的位元串流剖析SAO參數之前,SAO解碼裝置20可最初剖析SAO合併資訊,且可判定是否剖析SAO參數。SAO解碼裝置20可基於SAO合併資訊來判定SAO參數與當前區塊的SAO參數相同的鄰近區塊是否存在。
舉例而言,若基於SAO合併資訊,SAO參數與當前區塊的SAO參數相同的鄰近區塊存在,則SAO解碼裝置20可並不剖析當前區塊的SAO參數,且可將鄰近區塊的經重新建構的SAO參數用作當前區塊的SAO參數。因此,SAO解碼裝置20可將當前區塊的SAO參數重新建構為與鄰近區塊的SAO參數相同。且,基於SAO合併資訊,可判定具有待參考的SAO參數的鄰近區塊。
舉例而言,若基於SAO合併資訊,鄰近區塊的SAO參數不同於當前區塊的SAO參數,則SAO解碼裝置20可自位元串流剖析且重新建構當前區塊的SAO參數。
圖6A為展示根據本揭露的實施例的經參考以合併SAO參數的鄰近LCU(652、653)的圖式。
SAO編碼裝置10可在當前LCU 651之前重新建構的鄰近LCU中判定待參考以預測當前LCU 651的SAO參數的鄰近LCU的候選者清單。SAO編碼裝置10可比較當前LCU 651與候選者清單中的鄰近LCU的SAO參數。
舉例而言,簡言之,當前圖像65中的當前LCU 651的左側LCU 653以及上方LCU 652可包含於候選者清單中。
因此,SAO編碼裝置10可根據參考次序而比較候選者清單中所包含的鄰近LCU的SAO參數與當前LCU 651的SAO參數。舉例而言,可按照左側LCU 653以及上方LCU 652的次序來將SAO參數與當前LCU 651的SAO參數進行比較。在所比較的左側LCU 653以及上方LCU 652中,可將SAO參數與當前LCU 651的SAO參數相同的LCU判定為參考LCU。
為了預測當前LCU 651的SAO參數,SAO編碼裝置10以及SAO解碼裝置20可參考相同鄰近LCU。且,可收發指示具有待參考的SAO參數的LCU的SAO合併資訊。SAO解碼裝置20可基於SAO合併資訊而選擇鄰近LCU中的一者,且可將當前LCU 651的SAO參數重新建構為與所選擇的鄰近LCU的SAO參數相同。
舉例而言,假設參考左側LCU 653以及上方LCU 652。熵編碼器14可將指示當前LCU 651的左側LCU 653的SAO參數是否與當前LCU 651的SAO參數相同的向左SAO合併資訊以及指示上方LCU 652的SAO參數是否與當前LCU 651的SAO參數相同的向上SAO合併資訊作為SAO合併資訊來編碼。在此狀況下,最初,可比較當前LCU 651以及左側LCU 653的SAO參數以判定SAO參數是否相同,且接著可比較當前LCU 651與上方LCU 652的SAO參數以判定SAO參數是否相同。根據比較結果,可判定SAO合併資訊。
若左側LCU 653以及上方LCU 652中的至少一者的SAO參數與當前LCU 651的SAO參數相同,則熵編碼器14可僅對向左SAO合併資訊以及向上SAO合併資訊做編碼,且可並不對當前LCU 651的SAO參數做編碼。
若左側LCU 653與上方LCU 652兩者的SAO參數不同於當前LCU 651的SAO參數,則熵編碼器14可對向左SAO合併資訊、向上SAO合併資訊以及當前LCU 651的SAO參數做編碼。
現將詳細描述根據色彩分量的SAO參數。
SAO編碼裝置10以及SAO解碼裝置20可相互預測色彩分量之間的SAO參數。
SAO編碼裝置10以及SAO解碼裝置20可在YCrCb色彩格式中對明度區塊以及色度區塊兩者執行SAO操作。可判定當前LCU的明度分量(Y分量)以及第一色度分量及第二色度分量(Cr分量及Cb分量)的偏移值。
根據實施例,可將共同SAO合併資訊應用於當前LCU的Y分量、Cr分量以及Cb分量。換言之,基於一段SAO合併資訊,可判定Y分量的SAO參數是否與鄰近LCU的Y分量的SAO參數相同,可判定Cr分量的SAO參數是否與鄰近LCU的Cr分量的SAO參數相同,且可判定Cb分量的SAO參數是否與鄰近LCU的Cb分量的SAO參數相同。
根據另一實施例,可將共同SAO類型資訊應用於當前LCU的Cr分量以及Cb分量。換言之,基於一段SAO類型資訊,可判定同時還是非同時對Cr分量以及Cb分量執行SAO操作。且,基於一段SAO類型資訊,可識別是根據邊緣類型還是級區類型來判定Cr分量以及Cb分量的偏移值。若基於一段SAO類型資訊,SAO類型為邊緣類型,則Cr分量以及Cb分量可共用同一邊緣方向。
換言之,基於一段SAO類型資訊,可識別是根據邊緣類型還是級區類型來判定Cr分量以及Cb分量的偏移值。
且,基於一段SAO類型資訊,Cr分量以及Cb分量可共用同一SAO類別。若基於一段SAO類型資訊,SAO類型為邊緣類型,則Cr分量以及Cb分量可共用同一邊緣方向。若基於一段SAO類型資訊,SAO類型為級區類型,則Cr分量以及Cb分量可共用同一左側級區開始位置。
現將參看圖6B及圖7A至圖7C來詳細描述定義當前LCU的SAO參數的語法結構。
圖6B為根據本揭露的另一實施例的對SAO參數60執行熵編碼的程序的圖式。
由於對LCU的每一色彩分量執行SAO操作,因此可關於每一色彩分量而個別地獲得圖6B的SAO參數60。若指示明度分量或第一色度分量或第二色度分量的色彩索引「cIdx」改變,則可獲得額外SAO參數60。
SAO參數60可包含指示向左SAO合併資訊的參數「sao_merge_left_flag」、指示向上SAO合併資訊的參數「sao_merge_up_flag」、指示SAO類型資訊的參數「sao_type_idx」、指示級區類型的級區位置資訊的參數「sao_band_position」、指示絕對偏移值資訊的參數「sao_offset_abs」,以及指示偏移正負號資訊的參數「sao_offset_sign」。因此,每當將色彩索引「cIdx」設定為0、1或2時,可最新獲得「sao_merge_left_flag」、「sao_merge_up_flag」、「sao_type_idx」、「sao_band_position」、「sao_offset_abs」,以及「sao_offset_sign」。
詳言之,可關於四個SAO種類而另外獲得指示絕對偏移值資訊的參數「sao_offset_abs」,以及指示偏移正負號資訊的參數「sao_offset_sign」。另外,可關於四個種類中的每一者以及每一色彩分量而獲得「sao_offset_abs」以及「sao_offset_sign」。
且,SAO參數60可具有不同熵編碼方法。可根據所獲得的參數的熵編碼方法而執行內文解碼或旁路解碼。
舉例而言,可對指示參數「sao_merge_left_flag」的1個二進位做內文解碼,且可對指示參數「sao_merge_up_flag」的1個二進位做內文解碼。可對指示參數「sao_type_idx」的6個二進位做內文解碼。
且,可對指示參數「sao_band_position」的5個二進位做旁路解碼。可對指示參數「sao_offset_abs」的31個二進位做內文解碼,且可對指示參數「sao_offset_sign」的1個二進位做旁路解碼。
考慮到參數是關於三個色彩分量而個別地獲得且一些參數是關於四個SAO種類而個別地獲得,可根據等式a獲得多達423個二進位。 <方程式a> 3×(1 + 1 + 6 + 5 + 4×31 + 4×1) = 396 + 27 = 423
詳言之,在423個二進位中,可對396個二進位做內文解碼,且可對27個二進位做旁路解碼。對於內文解碼,由於每一二進位需要基於內文的機率模型化,因此計算量為大的。因此,若在SAO參數60的整個位元串流中,經內文解碼的二進位的數目大於經旁路解碼的二進位的數目,則用於對所有SAO參數60做解碼的計算量以及時間增加。
且,應對指示級區位置資訊的參數「sao_band_position」做旁路解碼,應對指示絕對偏移值資訊的參數「sao_offset_abs」做內文解碼,且應對指示偏移正負號資訊的參數「sao_offset_sign」做旁路解碼。詳言之,由於SAO種類索引增加為0、1、2及3,因此應替代地對參數「sao_offset_abs」執行內文解碼操作且對參數「sao_offset_sign」執行旁路解碼操作。
與連續執行相同的熵解碼操作相比,替代地執行不同的熵解碼操作效率較低。因此,若對SAO參數60中的「sao_band_position」、「sao_offset_abs」,以及「sao_offset_sign」替代地執行內文解碼以及旁路解碼操作多次,則整體熵解碼操作的效率可降低。
圖7A展示根據本揭露的實施例的寫碼單元的SAO語法70。
圖7A的SAO語法70為LCU的語法的一部分,其與SAO參數相關。SAO編碼裝置10可藉由對LCU的樣本執行SAO操作來判定SAO參數,且可對SAO參數執行熵編碼。且,SAO編碼裝置10可根據由SAO語法70指示的次序而輸出包含SAO參數的位元串流的位元串流。
SAO解碼裝置20可藉由剖析SAO語法70而獲得SAO參數的位元串流,且可藉由對SAO參數執行熵解碼而重新建構SAO參數。SAO解碼裝置20可藉由使用經重新建構的SAO參數來對LCU的經重新建構的樣本執行SAO操作。
若鄰近於當前LCU的左側LCU存在於當前片段中,則可獲得向左SAO合併資訊「sao_merge_left_flag」71。否則,若鄰近於當前LCU的上方LCU存在於當前片段中且左側LCU的SAO參數不合併,則可獲得向上SAO合併資訊「sao_merge_up_flag」72。
可獲得「sao_merge_left_flag」71以及「sao_merge_up_flag」72而不管色彩分量,且因此其可同樣應用於明度分量以及第一色度分量及第二色度分量。可使用相同運動向量以對三個色彩分量執行運動補償。因此,由於獲得SAO合併資訊而不管色彩分量,可藉由用於執行運動補償的編解碼器來有效地統一使用向左SAO合併資訊71以及向上SAO合併資訊72的SAO操作。
除了「sao_merge_left_flag」71以及「sao_merge_up_flag」72之外的SAO參數(741、743、751、753、77、781、782、791及793)可根據色彩分量而分離,且因此可藉由將色彩索引「cIdx」指定為0、1及2(73)而獲得。
若當前色彩分量指示明度分量(74),則可獲得明度SAO繼續/中斷資訊「sao_on_off_flag_luma」741。若對明度分量執行SAO操作,則可進一步獲得明度邊緣級區識別資訊「sao_eo_bo_flag_luma」743。
否則,若當前色彩索引為第一色度分量(75),則可獲得針對第一色度分量以及第二色度分量的色度SAO繼續/中斷資訊「sao_on_off_flag_chroma」751。若對第一色度分量以及第二色度分量執行SAO操作,則可進一步獲得色度邊緣級區識別資訊「sao_eo_bo_flag_chroma」753。「sao_on_off_flag_chroma」751以及「sao_eo_bo_flag_chroma」753可僅在色彩索引指示第一色度分量時獲得,且可能不在色彩索引指示第二色度分量時獲得。
SAO類型資訊的SAO繼續/中斷資訊不指示「中斷」(76),可獲得針對每一SAO種類的SAO類別資訊以及偏移值資訊。歸因於根據增大「i」的for循環陳述,可關於每一SAO種類而個別地獲得絕對偏移值資訊「sao_offset_abs」77、偏移正負號資訊「sao_offset_sign」781以及級區位置資訊「sao_band_position」783。
最初,若獲得絕對偏移值資訊「sao_offset_abs」77且SAO類型資訊指示級區類型(78),則可獲得級區位置資訊「sao_band_position」783。詳言之,若絕對偏移值資訊「sao_offset_abs」77不是0,則首先可獲得偏移正負號資訊「sao_offset_sign」781且接著可獲得「sao_band_position」783。
當SAO類選資訊指示邊緣類型(79)時,若色彩索引指示明度分量,則可獲得明度邊緣類別資訊「sao_eo_class_luma」791。若色彩索引指示第一色度分量,則可獲得針對第一色度分量以及第二色度分量的色度邊緣類別資訊「sao_eo_class_chroma」793。若色彩索引指示第二色度分量,則可能不獲得「sao_eo_class_chroma」793。
若SAO類型資訊指示邊緣類型,則可僅獲得明度邊緣類別資訊791或色度邊緣類別資訊793且可能不獲得偏移正負號資訊,因為可根據邊緣類別而判定邊緣偏移值的正負號。
如上所述,色度SAO繼續/中斷資訊「sao_on_off_flag_chroma」751、色度邊緣級區識別資訊「sao_eo_bo_flag_chroma」753以及色度邊緣類別資訊「sao_eo_class_chroma」793為共同應用於第一色度分量以及第二色度分量的參數。
因此,由於關於第一色度分量以及第二色度分量而共同獲得色度SAO繼續/中斷資訊「sao_on_off_flag_chroma」751、色度邊緣級區識別資訊「sao_eo_bo_flag_chroma」753以及色度邊緣類別資訊「sao_eo_class_chroma」793,所以可簡化用於對色度分量執行SAO操作的記憶體存取。且,由於在對第一色度分量以及第二色度分量執行的畫面內預測、運動補償以及自適應迴路濾波(adaptive loop filtering, ALF)中的每一者中,相同參數應用於第一色度分量以及第二色度分量,因此可藉由存取相同記憶體而獲得用於每一操作的參數或樣本。因此,可藉由用於執行畫面內預測、運動補償以及ALF的編解碼器來有效地統一SAO操作。
上文中,依序詳細描述了用於藉由剖析SAO語法70而獲得SAO參數的SAO解碼裝置20的操作。現將詳細描述對所獲得的SAO參數執行熵解碼的程序。
SAO解碼裝置20可對向左SAO合併資訊「sao_merge_left_flag」71以及向上SAO合併資訊「sao_merge_up_flag」72執行內文解碼。因此,可判定基於向左SAO合併資訊71的二進位的內文的機率模型,且可重新建構用以按機率方式產生1位元向左SAO合併資訊71的1個二進位值。可對向上SAO合併資訊72類似地執行上述內文解碼。
不同於圖6B的SAO參數60,SAO解碼裝置20可將SAO類型資訊分開地解碼為SAO繼續/中斷資訊741及743、邊緣級區識別資訊751及753、偏移正負號資訊781、級區位置資訊783以及邊緣類別資訊791及793。可關於邊緣類型而獲得邊緣類別資訊791及793,且可關於級區類型而獲得偏移正負號資訊781以及級區位置資訊783。
內文解碼是針對圖6B的SAO參數60的SAO類型資訊「sao_type_idx」的6個二進位而執行。另一方面,SAO解碼裝置20可針對SAO繼續/中斷資訊741及743的1個二進位執行內文解碼,且可針對剩餘參數執行旁路解碼。
舉例而言,關於邊緣類型,SAO解碼裝置20可針對SAO繼續/中斷資訊741及743的1個二進位執行內文解碼,且可針對邊緣級區識別資訊751或753的1個二進位以及邊緣類別資訊791或793的2個二進位執行旁路解碼。
因此,考慮到僅一些參數是關於三個色彩分量以及四個SAO種類關於級區類型而個別地獲得,SAO解碼裝置20可根據等式b獲得多達405個二進位。 <方程式b> 1 + 1 + 2×(1 + 1) + 3×(4×31 + 4×1 + 5) = 4 + 401 = 405
詳言之,在405個二進位中,可對4個二進位做內文解碼,且可對401個二進位做旁路解碼。換言之,需要相對大的計算量的內文解碼操作的數目遠小於旁路解碼操作的數目。且,由於一些SAO參數是作為關於色彩分量的一些參數而獲得,因此SAO參數的整個位元串流的長度可減小。
因此,由於SAO解碼裝置20對邊緣級區識別資訊751或753、絕對偏移值資訊77以及級區位置資訊783或邊緣類別資訊791或793執行旁路解碼,關於色彩分量而獲得共同SAO合併資訊71及72,且關於色度分量而獲得共同SAO繼續/中斷資訊741或743、邊緣級區識別資訊751或753以及邊緣類別資訊791或793,因此對SAO參數進行的整體熵解碼操作的效率可得以改良。
且,不同於圖6B的SAO參數60,SAO解碼裝置20可在絕對偏移值資訊77之後獲得級區位置資訊783。因而,SAO解碼裝置20可對SAO合併資訊71及72以及SAO繼續/中斷資訊741或741執行內文解碼,且可對邊緣級區識別資訊751或753、絕對偏移值資訊77以及級區位置資訊783或邊緣類別資訊791或793執行旁路解碼。
因此,與圖6B的SAO參數60相比,由於藉由使用SAO語法70,SAO解碼裝置20替代地執行內文解碼以及旁路解碼的次數減少,因此對SAO參數進行的熵解碼操作的效率可得以改良。
圖7B及圖7C展示根據本揭露的其他實施例的寫碼單元的SAO語法。
圖7B的SAO語法經設計以減少圖7A的SAO語法70中的用於檢查色彩索引的if陳述的數目,此是因為若用於檢查條件的if陳述的數目增加,則計算量增加。
在圖7B的SAO語法中,不需要用於檢查當前色彩分量指示明度分量還是第一色度分量以便獲得SAO繼續/中斷資訊83及84的if陳述。根據圖7B的SAO語法,可依序獲得針對明度分量的明度SAO繼續/中斷資訊83、明度邊緣級區識別資訊831以及明度邊緣類別資訊832,且接著可依序獲得針對第一色度分量以及第二色度分量的色度SAO繼續/中斷資訊84、色度邊緣級區識別資訊841以及色度邊緣類別資訊842。
因此,根據圖7B的SAO語法,與圖7A的SAO語法70相比,由於刪除了用於檢查當前色彩索引指示明度分量還是第一色度分量的四個if陳述,因此if陳述的數目可減少4。
在圖7B的SAO語法中,在獲得明度SAO繼續/中斷資訊83、明度邊緣級區識別資訊831、明度邊緣類別資訊832、色度SAO繼續/中斷資訊84、色度邊緣級區識別資訊841以及色度邊緣類別資訊842之後,可關於每一色彩分量以及每一種類而獲得絕對偏移值資訊87以及偏移正負號資訊881且可關於每一色彩分量而獲得級區位置資訊883。
在此狀況下,對明度SAO繼續/中斷資訊83執行內文解碼操作,對明度邊緣級區識別資訊831以及明度邊緣類別資訊832執行旁路解碼操作,對色度SAO繼續/中斷資訊84執行內文解碼操作,且對色度邊緣級區識別資訊841以及色度邊緣類別資訊842執行旁路解碼操作。可對絕對偏移值資訊87、偏移正負號資訊881以及級區位置資訊883執行旁路解碼操作。
因此,在圖7B的SAO語法中,內文解碼以及旁路解碼操作切換三次。
圖7C的SAO語法經設計以減少在圖7B的SAO語法70中切換內文解碼以及旁路解碼操作的次數,其中圖7A的SAO語法70中的用於檢查色彩索引的if陳述的數目得以減少。
在圖7C的SAO語法中,獲得明度SAO繼續/中斷資訊83且接著獲得色度SAO繼續/中斷資訊84。此後,可基於明度SAO繼續/中斷資訊83而獲得明度邊緣級區識別資訊831以及明度邊緣類別資訊832,且可基於色度SAO繼續/中斷資訊84而獲得色度邊緣級區識別資訊841以及色度邊緣類別資訊842。
因此,對明度SAO繼續/中斷資訊83以及色度SAO繼續/中斷資訊84執行內文解碼操作,且對明度邊緣級區識別資訊831、明度邊緣類別資訊832、色度邊緣級區識別資訊841以及色度邊緣類別資訊842執行旁路解碼操作。接著,亦可對絕對偏移值資訊87、偏移正負號資訊881以及級區位置資訊883執行旁路解碼操作。因此,在圖7C的SAO語法中,由於熵解碼方法自內文解碼操作切換至旁路解碼操作僅一次且不重複執行,因此整體熵解碼操作的效率可得以改良。
根據上述實施例,SAO編碼裝置10可對用於SAO操作的絕對偏移值資訊執行旁路解碼。且,SAO類型資訊可分離為SAO繼續/中斷資訊、邊緣級區識別資訊以及級區位置資訊(或邊緣類別資訊),且可僅對SAO繼續/中斷資訊執行內文解碼。因此,在SAO參數中,藉由減少待經內文解碼的參數的數目以及增加待經旁路解碼的參數的數目,對SAO參數進行的整體熵編碼操作的效率可得以改良。
且,在SAO參數中,藉由使用與針對第一色度分量以及第二色度分量的SAO繼續/中斷資訊、邊緣級區識別資訊以及邊緣類別資訊相同的參數,且藉由使用與針對明度分量以及第一色度分量及第二色度分量的SAO合併資訊相同的參數,SAO參數的總傳輸量可減少。
此外,藉由減少切換內文編碼以及旁路編碼操作的次數,熵編碼操作的效率亦可得以改良。
另外,在SAO參數中,由於SAO解碼裝置20可僅對SAO合併資訊以及SAO繼續/中斷資訊執行內文解碼且可對剩餘位元串流執行旁路解碼,因此用於對SAO參數做解碼的總計算量可大大地減少。
此外,在SAO繼續/中斷資訊中,針對第一色度分量以及第二色度分量的邊緣級區識別資訊以及邊緣類別資訊是作為相同參數而獲得,且針對明度分量以及第一色度分量及第二色度分量的SAO合併資訊是作為相同參數而獲得,SAO參數的總位元長度可減小且待剖析的資料量亦可減少。
且,由於切換內文解碼以及旁路解碼操作的次數減少,因此對SAO參數進行的整體熵解碼操作的效率可得以改良。
因此,根據本揭露的實施例,使用SAO操作的視訊編碼裝置以及視訊解碼裝置可根據影像特性(諸如,邊緣類型或級區類型)而將每一LCU的像素值分類,可用信號發送偏移值(其為具有相同特性的像素值的平均誤差值),且可按照偏移值來調整經重新建構的像素的不可預測的像素值,藉此將原始影像與經重新建構的影像之間的誤差最小化。
在SAO編碼裝置10以及SAO解碼裝置20中,如上所述,可將視訊資料分割為LCU,可基於具有樹狀結構的寫碼單元來對每一LCU做編碼以及解碼,且每一LCU可根據像素分類來判定偏移值。下文中,將參看圖8至圖27來描述基於具有樹狀結構的寫碼單元以及變換單元的視訊編碼方法、視訊編碼裝置、視訊解碼方法以及視訊解碼裝置。
圖8為根據本揭露的實施例的基於具有樹狀結構的寫碼單元的視訊編碼裝置100的方塊圖。
涉及基於具有樹狀結構的寫碼單元的視訊預測的視訊編碼裝置100包含LCU分割器110、寫碼單元判定器120以及輸出器130。
LCU分割器110可基於LCU來分割當前圖像,LCU為影像的當前圖像的最大大小的寫碼單元。若當前圖像大於LCU,則當前圖像的影像資料可分割為至少一個LCU。根據本揭露的實施例的LCU可為大小為32×32、64×64、128×128、256×256等的資料單元,其中資料單元的形狀是寬度以及長度為2的平方的正方形。影像資料可根據至少一個LCU而輸出至寫碼單元判定器120。
根據本揭露的實施例的寫碼單元可藉由最大大小以及深度來表徵。深度表示寫碼單元自LCU在空間上分割的次數,且隨著深度加深,根據深度的較深寫碼單元可自LCU分割為最小寫碼單元(smallest coding unit, SCU)。LCU的深度為最上層深度,且SCU的深度為最下層深度。由於對應於每一深度的寫碼單元的大小隨著LCU的深度加深而減小,因此對應於較上層深度的寫碼單元可包含對應於較下層深度的多個寫碼單元。
如上所述,當前圖像的影像資料根據寫碼單元的最大大小而分割為LCU,且LCU中的每一者可包含根據深度而分割的較深寫碼單元。由於根據本發明的實施例的LCU是根據深度來分割,因此包含於LCU中的空間域的影像資料可根據深度而階層式分類。
限制LCU的高度以及寬度階層式分割的總次數的寫碼單元的最大深度以及最大大小可為預定的。
寫碼單元判定器120對藉由根據深度來分割LCU的區域而獲得的至少一個分割區域做編碼,且判定深度以根據至少一個分割區域來輸出最終編碼的影像資料。換言之,寫碼單元判定器120藉由根據當前圖像的LCU來對根據深度的較深寫碼單元中的影像資料做編碼以及選擇具有最小編碼誤差的深度來判定經寫碼的深度。所判定的經寫碼的深度以及根據所判定的經寫碼的深度的經編碼的影像資料輸出至輸出器130。
基於對應於等於或低於最大深度的至少一個深度的較深寫碼單元而對LCU中的影像資料做編碼,且基於較深寫碼單元中的每一者而比較對影像資料做編碼的結果。可在比較較深寫碼單元的編碼誤差之後選擇具有最小編碼誤差的深度。可針對每一LCU選擇至少一個經寫碼的深度。
隨著寫碼單元根據深度而階層式分割,且隨著寫碼單元的數目增大,LCU的大小被分割。且,即使寫碼單元對應於一個LCU中的同一深度,仍藉由獨立量測每一寫碼單元的影像資料的編碼誤差而判定是否將對應於同一深度的寫碼單元中的每一者分割為較下層深度。因此,即使當影像資料包含於一個LCU中時,編碼誤差仍可根據一個LCU中的區域而不同,且因此經寫碼的深度可根據影像資料中的區域而不同。因此,可在一個LCU中判定一或多個經寫碼的深度,且可根據至少一個經寫碼的深度的寫碼單元而劃分LCU的影像資料。
因此,寫碼單元判定器120可判定包含於LCU中的具有樹狀結構的寫碼單元。根據本揭露的實施例的「具有樹狀結構的寫碼單元」包含LCU中所包含的所有較深寫碼單元中的對應於判定為經寫碼的深度的深度的寫碼單元。可根據LCU的同一區域中的深度而階層式判定經寫碼的深度的寫碼單元,且可在不同區域中獨立地進行判定。類似地,可獨立於另一區域中的經寫碼的深度而判定當前區域中的經寫碼的深度。
根據本揭露的實施例的最大深度為與自LCU至SCU的分割次數相關的索引。根據本揭露的實施例的第一最大深度可表示自LCU至SCU的總分割次數。根據本揭露的實施例的第二最大深度可表示自LCU至SCU的總深度層級數。舉例而言,當LCU的深度為0時,LCU被分割一次的寫碼單元的深度可設定為1,且LCU被分割兩次的寫碼單元的深度可設定為2。此處,若SCU為LCU被分割四次的寫碼單元,則存在深度0、1、2、3以及4的5個深度層級,且因此第一最大深度可設定為4,且第二最大深度可設定為5。
可根據LCU執行預測編碼以及變換。根據LCU,亦基於根據等於最大深度的深度或小於最大深度的深度的較深寫碼單元來執行預測編碼以及變換。
由於每當根據深度來分割LCU,較深寫碼單元的數目便增大,因此對隨著深度加深而產生的所有較深寫碼單元執行包含預測編碼以及變換的編碼。為便於描述,在LCU中,現將基於當前深度的寫碼單元來描述預測編碼以及變換。
視訊編碼裝置100可按各種方式選擇用於對影像資料做編碼的資料單元的大小或形狀。為了對影像資料做編碼,執行諸如預測編碼、變換以及熵編碼的操作,且此時,同一資料單元可用於所有操作或不同資料單元可用於每一操作。
舉例而言,視訊編碼裝置100可不僅選擇用於對影像資料做編碼的寫碼單元,而且選擇不同於寫碼單元的資料單元,以便對寫碼單元中的影像資料執行預測編碼。
為了在LCU中執行預測編碼,可基於對應於經寫碼的深度的寫碼單元(亦即,基於不再分割為對應於較下層深度的寫碼單元的寫碼單元)來執行預測編碼。下文中,不再分割且變為用於預測編碼的基礎單元的寫碼單元現將被稱為「預測單元」。藉由分割預測單元而獲得的分區可包含藉由分割預測單元的高度以及寬度中的至少一者而獲得的預測單元或資料單元。分區為分割寫碼單元的預測單元的資料單元,且預測單元可為大小與寫碼單元相同的分區。
舉例而言,當2N×N(其中N為正整數)的寫碼單元不再分割且變為2N×2N的預測單元,分區的大小可為2N×2N、2N×N、N×2N或N×N。分區類型的實例包含藉由對稱地分割預測單元的高度或寬度而獲得的對稱分區、藉由非對稱地分割預測單元的高度或寬度(諸如,1:n或n:1)而獲得的分區、藉由用幾何方式分割預測單元而獲得的分區,以及具有任意形狀的分區。
預測單元的預測模式可為畫面內模式、畫面間模式以及跳過模式中的至少一者。舉例而言,可對2N×2N、2N×N、N×2N或N×N的分區執行畫面內模式或畫面間模式。且,可僅對2N×2N的分區執行跳過模式。在寫碼單元中對一個預測單元獨立地執行編碼,藉此選擇具有最小編碼誤差的預測模式。
視訊編碼裝置100亦可不僅基於用於對影像資料做編碼的寫碼單元而且基於不同於寫碼單元的資料單元而對寫碼單元中的影像資料執行變換。為了在寫碼單元中執行變換,可基於具有小於等於寫碼單元的大小的資料單元來執行變換。舉例而言,用於變換的資料單元可包含用於畫面內模式的資料單元以及用於畫面間模式的資料單元。
以類似於根據樹狀結構的寫碼單元的方式,寫碼單元中的變換單元可按遞迴方式分割為較小大小的區域。因此,可根據具有根據變換深度的樹狀結構的變換單元而劃分寫碼單元中的留數。
亦可在變換單元中設定指示藉由分割寫碼單元的高度以及寬度而達到變換單元的分割次數的變換深度。舉例而言,在2N×2N的當前寫碼單元中,當變換單元的大小為2N×2N時,變換深度可為0,當變換單元的大小為N×N時,變換深度可為1,且當變換單元的大小為N/2×N/2時,變換深度可為2。換言之,可根據變換深度而設定具有樹狀結構的變換單元。
根據對應於經寫碼的深度的寫碼單元的編碼資訊不僅需要關於經寫碼的深度的資訊,而且需要與預測編碼以及變換相關的資訊。因此,寫碼單元判定器120不僅判定具有最小編碼誤差的經寫碼的深度,而且判定預測單元中的分區類型、根據預測單元的預測模式,以及用於變換的變換單元的大小。
下文將參看圖7至圖19詳細描述根據本揭露的實施例的LCU中的具有樹狀結構的寫碼單元及判定預測單元/分區以及變換單元的方法。
寫碼單元判定器120可藉由基於拉格朗日乘數(Lagrangian multiplier)使用位元率-失真最佳化(Rate-Distortion Optimization)來量測根據深度的較深寫碼單元的編碼誤差。
輸出器130按照位元串流的形式輸出基於由寫碼單元判定器120判定的至少一個經寫碼的深度而編碼的LCU的影像資料,以及根據經寫碼的深度關於編碼模式的資訊。
可藉由對影像的留數做編碼來獲得經編碼的影像資料。
根據經寫碼的深度關於編碼模式的資訊可包含關於經寫碼的深度、關於預測單元中的分區類型、預測模式以及變換單元的大小的資訊。
可藉由使用根據深度的分割資訊來定義關於經寫碼的深度的資訊,根據深度的分割資訊指示是否對較下層深度而非當前深度的寫碼單元執行編碼。若當前寫碼單元的當前深度為經寫碼的深度,則對當前寫碼單元中的影像資料做編碼且輸出,且因此,分割資訊可定義為不將當前寫碼單元分割為較下層深度。或者,若當前寫碼單元的當前深度並非經寫碼的深度,則對較下層深度的寫碼單元執行編碼,且因此分割資訊可定義為分割當前寫碼單元以獲得較下層深度的寫碼單元。
若當前深度並非經寫碼的深度,則對分割為較下層深度的寫碼單元的寫碼單元執行編碼。由於較下層深度的至少一個寫碼單元存在於當前深度的一個寫碼單元中,因此對較下層深度的每一寫碼單元重複地執行編碼,且因此可對具有同一深度的寫碼單元按遞迴方式執行編碼。
由於針對一個LCU而判定具有樹狀結構的寫碼單元,且針對經寫碼的深度的寫碼單元而判定關於至少一個編碼模式的資訊,因此可針對一個LCU而判定關於至少一個編碼模式的資訊。且,LCU的影像資料的經寫碼的深度可根據位置而不同,此是因為根據深度而階層式分割影像資料,且因此可針對影像資料而設定關於經寫碼的深度以及編碼模式的資訊。
因此,輸出器130可將關於對應經寫碼的深度以及編碼模式的編碼資訊指派給包含於LCU中的寫碼單元、預測單元以及最小單元中的至少一者。
根據本揭露的實施例的最小單元為藉由將構成最下層深度的SCU分割為4份而獲得的正方形資料單元。或者,根據實施例的最小單元可為可包含於LCU中所包含的所有寫碼單元、預測單元、分區單元以及變換單元中的最大正方形資料單元。
舉例而言,由輸出器130輸出的編碼資訊可分類為根據較深寫碼單元的編碼資訊,以及根據預測單元的編碼資訊。根據較深寫碼單元的編碼資訊可包含關於預測模式以及關於分區的大小的資訊。根據預測單元的編碼資訊可包含關於畫面間模式的估計方向、關於畫面間模式的參考影像索引、關於運動向量、關於畫面內模式的色度分量以及關於畫面內模式的內插方法的資訊。
關於根據圖像、片段或GOP而定義的寫碼單元的最大大小的資訊,以及關於最大深度的資訊可插入至位元串流的標頭、序列參數集合(sequence parameter set)或圖像參數集合(picture parameter set)中。
關於針對當前視訊而允許的變換單元的最大大小的資訊,以及關於變換單元的最小大小的資訊亦可經由位元串流的標頭、序列參數集合或圖像參數集合而輸出。輸出器130可對與上文參看圖1A至圖7C而描述的偏移操作技術相關的SAO參數做編碼以及輸出。
在視訊編碼裝置100中,較深寫碼單元可為藉由將較上層深度的寫碼單元(其為上一層)的高度或寬度劃分為2份而獲得的寫碼單元。換言之,在當前深度的寫碼單元的大小為2N×2N時,較下層深度的寫碼單元的大小為N×N。且,大小為2N×2N的當前深度的寫碼單元可包含較下層深度的最多4個寫碼單元。
因此,視訊編碼裝置100可藉由基於考慮當前圖像的特性而判定的LCU的大小以及最大深度,藉由針對每一LCU判定具有最佳形狀以及最佳大小的寫碼單元而形成具有樹狀結構的寫碼單元。且,由於藉由使用各種預測模式以及變換中的任一者對每一LCU執行編碼,因此可考慮各種影像大小的寫碼單元的特性來判定最佳編碼模式。
因此,若在習知巨集區塊中對具有高解析度或大資料量的影像做編碼,則每圖像的巨集區塊的數目過度地增大。因此,針對每一巨集區塊產生的壓縮資訊的段數增大,且因此難以傳輸壓縮資訊,且資料壓縮效率降低。然而,藉由使用視訊編碼裝置100,因為在考慮影像的大小而增大寫碼單元的最大大小的同時考慮影像的特性而調整寫碼單元,所以影像壓縮效率可提高。
圖8的視訊編碼裝置100可執行上文參看圖1A的SAO編碼裝置10的操作。
寫碼單元判定器120可執行SAO編碼裝置10的SAO操作器12的操作。可關於每一LCU而判定SAO類型、根據種類的偏移值以及SAO類別。
輸出器130可執行熵編碼器14的操作。可輸出關於每一LCU而判定的SAO參數。最初,可輸出指示是否將當前LCU的左側及上方鄰近LCU的SAO參數用作當前LCU的SAO參數的向左及向上SAO合併資訊。作為SAO類型,可輸出中斷類型、邊緣類型或級區類型。輸出絕對偏移值資訊。關於級區類型,可輸出正負號資訊以及級區位置資訊。關於邊緣類型,可輸出邊緣類別資訊且可以不輸出偏移值的正負號資訊。
輸出器130可對LCU的向左SAO合併資訊以及向上SAO合併資訊中的每一者執行內文編碼。輸出器130可關於明度分量以及色度分量中的每一者而對SAO繼續/中斷資訊執行內文編碼。
若SAO繼續/中斷資訊指示執行SAO操作,則輸出器130可關於明度分量以及色度分量中的每一者而對邊緣級區識別資訊執行旁路編碼。
若SAO繼續/中斷資訊指示執行SAO操作,則輸出器130可關於明度分量以及第一色度分量及第二色度分量中的每一者以及每一SAO種類而對絕對偏移值資訊執行旁路編碼。關於級區類型,輸出器130可關於明度分量以及第一色度分量及第二色度分量中的每一者而對偏移正負號資訊以及級區位置資訊執行旁路編碼。關於邊緣類型,輸出器130可關於明度分量以及色度分量中的每一者而對邊緣類別資訊執行旁路編碼。
針對第一色度分量的邊緣類別資訊亦可應用於第二色度分量,且針對第一色度分量的SAO繼續/中斷資訊以及邊緣級區識別資訊亦可應用於第二色度分量。
圖9為根據本揭露的實施例的基於具有樹狀結構的寫碼單元的視訊解碼裝置200的方塊圖。
涉及基於具有樹狀結構的寫碼單元的視訊預測的視訊解碼裝置200包含接收器210、影像資料以及編碼資訊提取器220以及影像資料解碼器230。
用於視訊解碼裝置200的解碼操作的各種術語(諸如,寫碼單元、深度、預測單元、變換單元以及關於各種編碼模式的資訊)的定義與參看圖7且參考視訊編碼裝置100的術語相同。
接收器210接收且剖析經編碼的視訊的位元串流。影像資料以及編碼資訊提取器220自所剖析的位元串流提取每一寫碼單元的經編碼的影像資料,其中寫碼單元具有根據每一LCU的樹狀結構,且將所提取的影像資料輸出至影像資料解碼器230。影像資料以及編碼資訊提取器220可自關於當前圖像的標頭、序列參數集合或圖像參數集合提取關於當前圖像的寫碼單元的最大大小的資訊。
且,影像資料以及編碼資訊提取器220自所剖析的位元串流針對具有根據每一LCU的樹狀結構的寫碼單元提取關於經寫碼的深度以及編碼模式的資訊。關於經寫碼的深度以及編碼模式的所提取的資訊輸出至影像資料解碼器230。換言之,位元串流中的影像資料分割為LCU,以使得影像資料解碼器230對每一LCU的影像資料做解碼。
可針對關於對應於經寫碼的深度的至少一個寫碼單元的資訊而設定根據LCU關於經寫碼的深度以及編碼模式的資訊,且關於編碼模式的資訊可包含關於對應於經寫碼的深度的對應寫碼單元的分區類型、關於預測模式以及變換單元的大小的資訊。且,可將根據深度的分割資訊作為關於經寫碼的深度的資訊來提取。
由影像資料以及編碼資訊提取器220提取的根據每一LCU關於經寫碼的深度以及編碼模式的資訊為關於經判定以在諸如視訊編碼裝置100的編碼器根據每一LCU對根據深度的每一較深寫碼單元重複地執行編碼時產生最小編碼誤差的經寫碼的深度以及編碼模式的資訊。因此,視訊解碼裝置200可藉由根據產生最小編碼誤差的經寫碼的深度以及編碼模式來對影像資料做解碼而重新建構影像。
由於關於經寫碼的深度以及編碼模式的編碼資訊可指派給對應寫碼單元、預測單元以及最小單元中的預定資料單元,因此影像資料以及編碼資訊提取器220可提取根據預定資料單元關於經寫碼的深度以及編碼模式的資訊。若根據預定資料單元而記錄關於對應LCU的經寫碼的深度以及編碼模式的資訊,則被指派關於經寫碼的深度以及編碼模式的相同資訊的預定資料單元可推斷為包含於同一LCU中的資料單元。
影像資料解碼器230可藉由基於根據LCU關於經寫碼的深度以及編碼模式的資訊對每一LCU中的影像資料做解碼來重新建構當前圖像。換言之,影像資料解碼器230可基於關於每一LCU中所包含的具有樹狀結構的寫碼單元中的每一寫碼單元的分區類型、預測模式以及變換單元的所提取的資訊而對經編碼的影像資料做解碼。解碼程序可包含:包含畫面內預測以及運動補償的預測;以及逆變換。
影像資料解碼器230可基於根據經寫碼的深度關於每一寫碼單元的預測單元的分區類型以及預測模式的資訊根據寫碼單元的分區以及預測模式來執行畫面內預測或運動補償。
此外,影像資料解碼器230可針對每一寫碼單元根據樹狀結構來讀取關於變換單元的資訊,以便基於每一寫碼單元的變換單元來執行逆變換,以實現每一LCU的逆變換。經由逆變換,可重新建構寫碼單元的空間域的像素值。
影像資料解碼器230可藉由使用根據深度的分割資訊而判定當前LCU的經寫碼的深度。若分割資訊指示影像資料在當前深度中不再分割,則當前深度為經寫碼的深度。因此,影像資料解碼器230可針對對應於經寫碼的深度的每一寫碼單元藉由使用關於預測單元的分區類型、預測模式以及變換單元的大小的資訊來對當前LCU中的經編碼的資料做解碼。
換言之,可藉由觀測針對寫碼單元、預測單元以及最小單元中的預定資料單元而指派的編碼資訊集合來收集含有包含相同分割資訊的編碼資訊的資料單元,且可將所收集的資料單元視為待由影像資料解碼器230在同一編碼模式中解碼的一個資料單元。因此,可藉由針對每一寫碼單元獲得關於編碼模式的資訊來對當前寫碼單元做解碼。
且,圖9的視訊解碼裝置200可執行上文參看圖2A的SAO解碼裝置20的操作。
影像資料以及編碼資訊提取器220以及接收器210可執行SAO解碼裝置20的SAO內文解碼器24以及SAO旁路解碼器26的操作。影像資料解碼器230可執行SAO解碼裝置20的SAO操作器28的操作。
影像資料以及編碼資訊提取器220可自LCU的位元串流獲得SAO參數的位元串流,可對位元串流執行熵解碼,且因此可重新建構SAO參數的符號。
可獲得向左SAO合併資訊以及向上SAO合併資訊,且可對向左SAO合併資訊以及向上SAO合併資訊中的每一者執行內文解碼。影像資料以及編碼資訊提取器220可關於明度分量以及色度分量中的每一者而獲得SAO繼續/中斷資訊的1位元。影像資料以及編碼資訊提取器220可對明度SAO繼續/中斷資訊以及色度SAO繼續/中斷資訊執行內文解碼。
若SAO繼續/中斷資訊指示執行SAO操作,則影像資料以及編碼資訊提取器220可關於明度分量以及色度分量中的每一者而獲得邊緣級區識別資訊,且可對邊緣級區識別資訊的一位元執行旁路解碼。
若SAO繼續/中斷資訊指示執行SAO操作,則影像資料以及編碼資訊提取器220可關於明度分量以及第一色度分量及第二色度分量中的每一者以及每一SAO種類而獲得絕對偏移值資訊,且可對絕對偏移值資訊執行旁路解碼。關於級區類型,影像資料以及編碼資訊提取器220可關於明度分量以及第一色度分量及第二色度分量中的每一者而獲得偏移正負號資訊以及級區位置資訊,且可對每一參數執行旁路解碼。關於邊緣類型,影像資料以及編碼資訊提取器220可對關於明度分量以及色度分量中的每一者而獲得的邊緣類別資訊執行旁路編碼。
針對第一色度分量的邊緣類別資訊亦可應用於第二色度分量,且針對第一色度分量的SAO繼續/中斷資訊以及邊緣級區識別資訊亦可應用於第二色度分量。
影像資料解碼器230可藉由按照對應偏移值來調整經重新建構的像素的像素值而產生能夠將原始像素與經重新建構的像素之間的誤差最小化的經重新建構的像素。可基於所剖析的SAO參數來調整每一LCU的經重新建構的像素的偏移。
因此,視訊解碼裝置200可獲得關於在對每一LCU按遞迴方式執行編碼時產生最小編碼誤差的至少一個寫碼單元的資訊,且可使用資訊來對當前圖像做解碼。換言之,可對判定為每一LCU中的最佳寫碼單元的具有樹狀結構的寫碼單元做解碼。
因此,即使影像資料具有高解析度以及大量資料,仍可藉由使用自編碼器接收的關於最佳編碼模式的資訊藉由使用根據影像資料的特性而自適應地判定的寫碼單元的大小以及編碼模式來有效地對影像資料做解碼以及重新建構。
圖10為用於描述根據本揭露的實施例的寫碼單元的概念的圖式。
寫碼單元的大小可用寬度×高度來表達,且可為64×64、32×32、16×16以及8×8。64×64的寫碼單元可分割為64×64、64×32、32×64或32×32的分區,且32×32的寫碼單元可分割為32×32、32×16、16×32或16×16的分區,16×16的寫碼單元可分割為16×16、16×8、8×16或8×8的分區,且8×8的寫碼單元可分割為8×8、8×4、4×8或4×4的分區。
在視訊資料310中,解析度為1920×1080,寫碼單元的最大大小為64,且最大深度為2。在視訊資料320中,解析度為1920×1080,寫碼單元的最大大小為64,且最大深度為3。在視訊資料330中,解析度為352×288,寫碼單元的最大大小為16,且最大深度為1。圖10所示的最大深度表示自LCU至最小解碼單元的總分割次數。
若解析度高或資料量大,則寫碼單元的最大大小可為大的,以便不僅提高編碼效率而且準確地反映影像的特性。因此,具有高於視訊資料330的解析度的視訊資料310以及320的寫碼單元的最大大小可為64。
由於視訊資料310的最大深度為2,因此視訊資料310的寫碼單元315可包含長軸大小為64的LCU,以及長軸大小為32以及16的寫碼單元,此是因為深度藉由分割LCU兩次而加深為兩層。由於視訊資料330的最大深度為1,因此視訊資料330的寫碼單元335可包含長軸大小為16的LCU,以及長軸大小為8的寫碼單元,此是因為深度藉由分割LCU一次而加深為一層。
由於視訊資料320的最大深度為3,因此視訊資料320的寫碼單元325可包含長軸大小為64的LCU,以及長軸大小為32、16以及8的寫碼單元,此是因為深度藉由分割LCU三次而加深為三層。隨著深度加深,可精確地表達詳細資訊。
圖11為根據本揭露的實施例的基於寫碼單元的影像編碼器400的方塊圖。
影像編碼器400執行視訊編碼裝置100的寫碼單元判定器120的操作以對影像資料做編碼。換言之,畫面內預測器410對當前畫面405中的處於畫面內模式中的寫碼單元執行畫面內預測,且運動估計器420以及運動補償器425分別藉由使用當前畫面405以及參考畫面495而對當前畫面405中的處於畫面間模式中的寫碼單元執行畫面間估計以及運動補償。
自畫面內預測器410、運動估計器420以及運動補償器425輸出的資料經由變換器430以及量化器440作為經量化的變換係數而輸出。經量化的變換係數經由逆量化器460以及逆變換器470而重新建構為空間域中的資料,且空間域中的經重新建構的資料在經由解區塊濾波器480以及SAO操作器490後處理之後作為參考畫面495輸出。經量化的變換係數可經由熵編碼器450作為位元串流455輸出。
為了使影像編碼器400應用於視訊編碼裝置100中,影像編碼器400的所有部件(亦即,畫面內預測器410、運動估計器420、運動補償器425、變換器430、量化器440、熵編碼器450、逆量化器460、逆變換器470、解區塊濾波器480以及SAO操作器490)在考慮每一LCU的最大深度的同時基於具有樹狀結構的寫碼單元中的每一寫碼單元來執行操作。
特定言之,畫面內預測器410、運動估計器420以及運動補償器425在考慮當前LCU的最大大小以及最大深度的同時判定具有樹狀結構的寫碼單元中的每一寫碼單元的分區以及預測模式,且變換器430判定具有樹狀結構的寫碼單元中的每一寫碼單元中的變換單元的大小。
SAO操作器490可根據參考畫面495的每一LCU的邊緣類型(或級區類型)來對像素分類,可判定邊緣方向(或開始級區位置),且可判定每一種類中所包含的經重新建構的像素的平均誤差值。關於每一LCU,可對SAO合併資訊、SAO類型以及偏移值做編碼且用信號發送。
熵編碼器450可對SAO參數執行CABAC編碼,SAO參數包含用於SAO操作的SAO合併資訊、SAO類型資訊以及偏移值。舉例而言,對於SAO類型資訊,一個內文模型可用於僅第一位元且可對剩餘位元執行旁路模式CABAC編碼。兩個內文模型可用於偏移值,且一個內文模型可用於左側SAO合併資訊以及上方SAO合併資訊中的每一者。因此,總計五個內文模型可用於對SAO參數執行CABAC編碼。
圖12為根據本揭露的實施例的基於寫碼單元的影像解碼器500的方塊圖。
剖析器510自位元串流505剖析待解碼的經編碼的影像資料以及解碼所需的關於編碼的資訊。經編碼的影像資料經由熵解碼器520以及逆量化器530作為經逆量化的資料而輸出,且經逆量化的資料經由逆變換器540而重新建構為空間域中的影像資料。
畫面內預測器550關於空間域中的影像資料對處於畫面內模式中的寫碼單元執行畫面內預測,且運動補償器560藉由使用參考畫面585對處於畫面間模式中的寫碼單元執行運動補償。
通過畫面內預測器550以及運動補償器560的空間域中的影像資料可在經由解區塊濾波器570以及SAO操作器580後處理之後作為經重新建構的畫面595輸出。且,經由解區塊濾波器570以及SAO操作器580後處理的影像資料可作為參考畫面585輸出。
為了在視訊解碼裝置200的影像資料解碼器230中對影像資料做解碼,影像解碼器500可執行在剖析器510之後執行的操作。
為了使影像解碼器500應用於視訊解碼裝置200中,影像解碼器500的所有部件(亦即,剖析器510、熵解碼器520、逆量化器530、逆變換器540、畫面內預測器550、運動補償器560、解區塊濾波器570以及SAO操作器580)針對每一LCU基於具有樹狀結構的寫碼單元來執行操作。
特定言之,畫面內預測器550以及運動補償器560針對具有樹狀結構的寫碼單元中的每一者基於分區以及預測模式而執行操作,且逆變換器540針對每一寫碼單元基於變換單元的大小而執行操作。
熵解碼器520可對SAO參數執行CABAC解碼以便自SAO參數剖析用於SAO操作的SAO合併資訊、SAO類型資訊以及偏移值。舉例而言,對於SAO類型資訊,一個內文模型可用於僅第一位元且可對剩餘位元執行旁路模式CABAC解碼。兩個內文模型可用於偏移值,且一個內文模型可用於左側SAO合併資訊以及上方SAO合併資訊中的每一者。因此,總計五個內文模型可用於對SAO參數執行CABAC解碼。
影像解碼器500可自位元串流提取LCU的SAO參數。基於當前LCU的SAO參數中的SAO合併資訊,可重新建構當前LCU的SAO參數,當前LCU的SAO參數與鄰近LCU的SAO參數相同。藉由使用當前LCU的SAO參數中的SAO類型以及偏移值,可按照對應於根據邊緣類型或級區類型的種類的偏移值來調整經重新建構的畫面595的LCU的經重新建構的像素中的每一者。
圖13為說明根據本揭露的實施例的根據深度的較深寫碼單元以及分區的圖式。
視訊編碼裝置100以及視訊解碼裝置200使用階層式寫碼單元以便考慮影像的特性。可根據影像的特性來自適應地判定寫碼單元的最大高度、最大寬度以及最大深度,或可由使用者不同地進行設定。可根據寫碼單元的預定最大大小判定根據深度的較深寫碼單元的大小。
在根據本揭露的實施例的寫碼單元的階層式結構600中,寫碼單元的最大高度以及最大寬度各為64,且最大深度為4。在此狀況下,最大深度指寫碼單元自LCU分割至SCU的總分割次數。由於深度沿著階層式結構600的垂直軸加深,因此將較深寫碼單元的高度以及寬度各自分割。且,沿著階層式結構600的水平軸展示作為用於每一較深寫碼單元的預測編碼的基礎的預測單元以及分區。
換言之,寫碼單元610為階層式結構600中的LCU,其中深度為0且大小(亦即,高度乘寬度)為64×64。深度沿著垂直軸而加深,且存在大小為32×32且深度為1的寫碼單元620、大小為16×16且深度為2的寫碼單元630以及大小為8×8且深度為3的寫碼單元640。大小為4×4且深度為3的寫碼單元640為SCU。
寫碼單元的預測單元以及分區根據每一深度沿著水平軸而配置。換言之,若大小為64×64且深度為0的寫碼單元610為預測單元,則預測單元可分割為包含於編碼單元610中的分區,亦即,大小為64×64的分區610、大小為64×32的分區612、大小為32×64的分區614或大小為32×32的分區616。
類似地,大小為32×32且深度為1的寫碼單元620的預測單元可分割為包含於寫碼單元620中的分區,亦即,大小為32×32的分區620、大小為32×16的分區622、大小為16×32的分區624以及大小為16×16的分區626。
類似地,大小為16×16且深度為2的寫碼單元630的預測單元可分割為包含於寫碼單元630中的分區,亦即,包含於寫碼單元中的大小為16×16的分區630、大小為16×8的分區632、大小為8×16的分區634以及大小為8×8的分區636。
類似地,大小為8×8且深度為3的寫碼單元640的預測單元可分割為包含於寫碼單元640中的分區,亦即,包含於寫碼單元中的大小為8×8的分區640、大小為8×4的分區642、大小為4×8的分區644以及大小為4×4的分區646。
為了判定構成LCU 610的寫碼單元的至少一個經寫碼的深度,視訊編碼裝置100的寫碼單元判定器120對包含於LCU 610中的對應於每一深度的寫碼單元執行編碼。
隨著深度加深,包含相同範圍中的資料以及相同大小的根據深度的較深寫碼單元的數目增大。舉例而言,需要對應於深度2的四個寫碼單元來涵蓋包含於對應於深度1的一個寫碼單元中的資料。因此,為了比較根據深度的相同資料的編碼結果,將對應於深度1的寫碼單元以及對應於深度2的四個寫碼單元各自編碼。
為了針對深度中的當前深度執行編碼,沿著階層式結構600的水平軸,可藉由針對對應於當前深度的寫碼單元中的每一預測單元執行編碼而針對當前深度選擇最小編碼誤差。或者,可藉由比較根據深度的最小編碼誤差、藉由隨著深度沿著階層式結構600的垂直軸加深而針對每一深度執行編碼來搜尋最小編碼誤差。可選擇寫碼單元610中具有最小編碼誤差的深度以及分區作為寫碼單元610的經寫碼的深度以及分區類型。
圖14為用於描述根據本揭露的實施例的寫碼單元710與變換單元720之間的關係的圖式。
視訊編碼裝置100或視訊解碼裝置200針對每一LCU根據具有小於等於LCU的大小的寫碼單元來對影像做編碼或解碼。可基於不大於對應寫碼單元的資料單元而選擇在編碼期間用於變換的變換單元的大小。
舉例而言,在視訊編碼裝置100或視訊解碼裝置200中,若寫碼單元710的大小為64×64,則可藉由使用大小為32×32的變換單元720來執行變換。
且,可藉由對大小為小於64×64的32×32、16×16、8×8以及4×4的變換單元中的每一者執行變換而對大小為64×64的寫碼單元710的資料做編碼,且接著可選擇具有最小寫碼誤差的變換單元。
圖15為用於描述根據本揭露的實施例的對應於經寫碼的深度的寫碼單元的編碼資訊的圖式。
視訊編碼裝置100的輸出器130可對關於分區類型的傳輸資訊800、關於預測模式的資訊810,以及關於對應於經寫碼的深度的每一寫碼單元的變換單元的大小的資訊820做編碼且作為關於編碼模式的資訊而傳輸。
資訊800指示關於藉由分割當前寫碼單元的預測單元而獲得的分區的形狀的資訊,其中分區為用於當前寫碼單元的預測編碼的資料單元。舉例而言,大小為2N×2N的當前寫碼單元CU_0可分割為大小為2N×2N的分區802、大小為2N×N的分區804、大小為N×2N的分區806以及大小為N×N的分區808中的任一者。此處,關於分區類型的資訊800設定為指示大小為2N×N的分區804、大小為N×2N的分區806以及大小為N×N的分區808中的一者。
資訊810指示每一分區的預測模式。舉例而言,資訊810可指示對由資訊800指示的分區執行的預測編碼的模式,亦即,畫面內模式812、畫面間模式814或跳過模式816。
資訊820指示待基於何時對當前寫碼單元執行變換的變換單元。舉例而言,變換單元可為第一畫面內變換單元822、第二畫面內變換單元824、第一畫面間變換單元826或第二畫面間變換單元828。
根據每一較深寫碼單元,視訊解碼裝置200的影像資料以及編碼資訊提取器220可提取且使用資訊800、810以及820以用於解碼。
圖16為根據本揭露的實施例的根據深度的較深寫碼單元的圖式。
分割資訊可用以指示深度的改變。分割資訊指示當前深度的寫碼單元是否分割為較下層深度的寫碼單元。
用於深度為0且大小為2N_0×2N_0的寫碼單元900的預測編碼的預測單元910可包含大小為2N_0×2N_0的分區類型912、大小為2N_0×N_0的分區類型914、大小為N_0×2N_0的分區類型916以及大小為N_0×N_0的分區類型918的分區。圖9僅說明藉由對稱地分割預測單元910而獲得的分區類型912至918,但分區類型不限於此,且預測單元910的分區可包含非對稱分區、具有預定形狀的分區以及具有幾何形狀的分區。
根據每一分區類型,對大小為2N_0×2N_0的一個分區、大小為2N_0×N_0的兩個分區、大小為N_0×2N_0的兩個分區以及大小為N_0×N_0的四個分區重複地執行預測編碼。可對大小為2N_0×2N_0、N_0×2N_0、2N_0×N_0以及N_0×N_0的分區執行在畫面內模式以及畫面間模式中的預測編碼。僅對大小為2N_0×2N_0的分區執行在跳過模式中的預測編碼。
若編碼誤差在分區類型912至916中的一者中最小,則預測單元910可能不分割為較下層深度。
若編碼誤差在分區類型918中最小,則深度自0改變為1以在操作920中分割分區類型918,且對深度為2且大小為N_0×N_0的寫碼單元930重複地執行編碼以搜尋最小編碼誤差。
用於深度為1且大小為2N_1×2N_1(=N_0×N_0)的寫碼單元930的預測編碼的預測單元940可包含大小為2N_1×2N_1的分區類型942、大小為2N_1×N_1的分區類型944、大小為N_1×2N_1的分區類型946以及大小為N_1×N_1的分區類型948的分區。
若編碼誤差在分區類型948中最小,則深度自1改變為2以在操作950中分割分區類型948,且對深度為2且大小為N_2×N_2的寫碼單元960重複地執行編碼以搜尋最小編碼誤差。
當最大深度為d時,可執行根據每一深度的分割操作直至深度變為d-1時,且可對分割資訊做編碼直至深度為0至d-2中的一者時。換言之,當執行編碼直至在對應於深度d-2的寫碼單元在操作970中分割之後深度為d-1時,用於深度為d-1且大小為2N_(d-1)×2N_(d-1)的寫碼單元980的預測編碼的預測單元990可包含大小為2N_(d-1)×2N_(d-1)的分區類型992、大小為2N_(d-1)×N_(d-1)的分區類型994、大小為N_(d-1)×2N_(d-1)的分區類型996以及大小為N_(d-1)×N_(d-1)的分區類型998的分區。
可對分區類型992至998中的大小為2N_(d-1)×2N_(d-1)的一個分區、大小為2N_(d-1)×N_(d-1)的兩個分區、大小為N_(d-1)×2N_(d-1)的兩個分區、大小為N_(d-1)×N_(d-1)的四個分區重複地執行預測編碼以搜尋具有最小編碼誤差的分區類型。
即使當分區類型998具有最小編碼誤差時,由於最大深度為d,因此不再將深度為d-1的寫碼單元CU_(d-1)分割為較下層深度,且將構成當前LCU 900的寫碼單元的經寫碼的深度判定為d-1,且可將當前LCU 900的分區類型判定為N_(d-1)×N_(d-1)。且,由於最大深度為d且具有最下層深度d-1的SCU 980不再分割為較下層深度,因此不設定用於SCU 980的分割資訊。
資料單元999可為當前LCU的「最小單元」。根據本揭露的實施例的最小單元可為藉由將SCU 980分割為4份而獲得的正方形資料單元。藉由重複地執行編碼,視訊編碼裝置100可藉由根據寫碼單元900的深度比較編碼誤差而選擇具有最小編碼誤差的深度以判定經寫碼的深度,且將對應分區類型以及預測模式設定為經寫碼的深度的編碼模式。
因而,在所有深度1至d中比較根據深度的最小編碼誤差,且可將具有最小編碼誤差的深度判定為經寫碼的深度。可對經寫碼的深度、預測單元的分區類型以及預測模式做編碼且作為關於編碼模式的資訊而傳輸。且,由於寫碼單元自深度0分割為經寫碼的深度,因此僅經寫碼的深度的分割資訊設定為0,且排除經寫碼的深度的深度的分割資訊設定為1。
視訊解碼裝置200的影像資料以及編碼資訊提取器220可提取且使用關於寫碼單元900的經寫碼的深度以及預測單元的資訊以對分區912做解碼。視訊解碼裝置200可藉由使用根據深度的分割資訊而將分割資訊為0的深度判定為經寫碼的深度,且使用關於對應深度的編碼模式的資訊以用於解碼。
圖17至圖19為用於描述根據本揭露的實施例的寫碼單元1010、預測單元1060與變換單元1070之間的關係的圖式。
寫碼單元1010為在LCU中對應於由視訊編碼裝置100判定的經寫碼的深度的具有樹狀結構的寫碼單元。預測單元1060為寫碼單元1010中的每一者的預測單元的分區,且變換單元1070為寫碼單元1010中的每一者的變換單元。
當LCU的深度在寫碼單元1010中為0時,寫碼單元1012以及1054的深度為1,寫碼單元1014、1016、1018、1028、1050以及1052的深度為2,寫碼單元1020、1022、1024、1026、1030、1032以及1048的深度為3,且寫碼單元1040、1042、1044以及1046的深度為4。
在預測單元1060中,藉由在編碼單元1010中分割寫碼單元而獲得一些編碼單元1014、1016、1022、1032、1048、1050、1052以及1054。換言之,寫碼單元1014、1022、1050以及1054中的分區類型的大小為2N×N,寫碼單元1016、1048以及1052中的分區類型的大小為N×2N,且寫碼單元1032的分區類型的大小為N×N。寫碼單元1010的預測單元以及分區小於等於每一寫碼單元。
對小於寫碼單元1052的資料單元中的變換單元1070中的寫碼單元1052的影像資料執行變換或逆變換。且,變換單元1070中的寫碼單元1014、1016、1022、1032、1048、1050以及1052的大小以及形狀不同於預測單元1060中的寫碼單元。換言之,視訊編碼裝置100以及視訊解碼裝置200可對同一寫碼單元中的資料單元個別地執行畫面內預測、運動估計、運動補償、變換以及逆變換。
因此,對在LCU的每一區域中具有階層式結構的寫碼單元中的每一者以遞迴方式執行編碼以判定最佳寫碼單元,且因此可獲得具有遞迴樹狀結構的寫碼單元。編碼資訊可包含關於寫碼單元的分割資訊、關於分區類型的資訊、關於預測模式的資訊,以及關於變換單元的大小的資訊。表1展示可由視訊編碼裝置100以及視訊解碼裝置200設定的編碼資訊。 表1
視訊編碼裝置100的輸出器130可輸出關於具有樹狀結構的寫碼單元的編碼資訊,且視訊解碼裝置200的影像資料以及編碼資訊提取器220可自所接收的位元串流提取關於具有樹狀結構的寫碼單元的編碼資訊。
分割資訊指示當前寫碼單元是否分割為較下層深度的寫碼單元。若當前深度d的分割資訊為0,則當前寫碼單元不再分割為較下層深度的深度為經寫碼的深度,且因此可針對經寫碼的深度而定義關於分區類型、預測模式以及變換單元的大小的資訊。若根據分割資訊進一步分割當前寫碼單元,則對較下層深度的四個分割寫碼單元獨立地執行編碼。
預測模式可為畫面內模式、畫面間模式以及跳過模式中的一者。可在所有分區類型中定義畫面內模式以及畫面間模式,且僅在大小為2N×2N的分區類型中定義跳過模式。
關於分區類型的資訊可指示:大小為2N×2N、2N×N、N×2N以及N×N的對稱分區類型,其是藉由對稱地分割預測單元的高度或寬度而獲得;以及大小為2N×nU、2N×nD、nL×2N以及nR×2N的非對稱分區類型,其是藉由非對稱地分割預測單元的高度或寬度而獲得。可藉由以1:3以及3:1分割預測單元的高度而分別獲得大小為2N×nU以及2N×nD的非對稱分區類型,且可藉由以1:3以及3:1分割預測單元的寬度而分別獲得大小為nL×2N以及nR×2N的非對稱分區類型。
變換單元的大小可在畫面內模式中設定為兩種類型且在畫面間模式中設定為兩種類型。換言之,若變換單元的分割資訊為0,則變換單元的大小可為2N×2N,此為當前寫碼單元的大小。若變換單元的分割資訊為1,則可藉由分割當前寫碼單元而獲得變換單元。且,若大小為2N×2N的當前寫碼單元的分區類型為對稱分區類型,則變換單元的大小可為N×N,且若當前寫碼單元的分區類型為非對稱分區類型,則變換單元的大小可為N/2×N/2。
關於具有樹狀結構的寫碼單元的編碼資訊可包含對應於經寫碼的深度的寫碼單元、預測單元以及最小單元中的至少一者。對應於經寫碼的深度的寫碼單元可包含含有相同編碼資訊的預測單元以及最小單元中的至少一者。
因此,藉由比較鄰近資料單元的編碼資訊而判定鄰近資料單元是否包含於對應於經寫碼的深度的同一寫碼單元中。且,藉由使用資料單元的編碼資訊而判定對應於經寫碼的深度的對應寫碼單元,且因此可判定LCU中的經寫碼的深度的分佈。
因此,若基於鄰近資料單元的編碼資訊而預測當前寫碼單元,則可直接參考且使用鄰近於當前寫碼單元的較深寫碼單元中的資料單元的編碼資訊。
或者,若基於鄰近資料單元的編碼資訊而預測當前寫碼單元,則使用資料單元的經編碼的資訊而搜尋鄰近於當前寫碼單元的資料單元,且可參考所搜尋的鄰近寫碼單元以用於預測當前寫碼單元。
圖20為用於描述根據表1的編碼模式資訊的寫碼單元、預測單元與變換單元之間的關係的圖式。
LCU 1300包含經寫碼的深度的寫碼單元1302、1304、1306、1312、1314、1316以及1318。此處,由於寫碼單元1318為經寫碼的深度的寫碼單元,因此分割資訊可設定為0。關於大小為2N×2N的寫碼單元1318的分區類型的資訊可設定為大小為2N×2N的分區類型1322、大小為2N×N的分區類型1324、大小為N×2N的分區類型1326、大小為N×N的分區類型1328、大小為2N×nU的分區類型1332、大小為2N×nD的分區類型1334、大小為nL×2N的分區類型1336以及大小為nR×2N的分區類型1338中的一者。
變換單元的分割資訊(TU大小旗標)為一種類型的變換索引。對應於變換索引的變換單元的大小可根據寫碼單元的預測單元類型或分區類型而改變。
舉例而言,在分區類型設定為對稱(亦即,分區類型1322、1324、1326或1328)時,若變換單元的TU大小旗標為0,則設定大小為2N×2N的變換單元1342,且若TU大小旗標為1,則設定大小為N×N的變換單元1344。
當分區類型設定為非對稱(亦即,分區類型1332、1334、1336或1338)時,若TU大小旗標為0,則設定大小為2N×2N的變換單元1352,且若TU大小旗標為1,則設定大小為N/2×N/2的變換單元1354。
參看圖20,TU大小旗標為具有值0或1的旗標,但TU大小旗標不限於1個位元,且變換單元可在TU大小旗標自0增大時階層式分割為具有樹狀結構。變換單元的分割資訊(TU大小旗標)可為變換索引的實例。
在此狀況下,藉由將根據本揭露的實施例的變換單元的TU大小旗標與變換單元的最大大小及最小大小一起使用,可表達已實際使用的變換單元大小。視訊編碼裝置100能夠對最大變換單元大小資訊、最小變換單元大小資訊以及最大TU大小旗標做編碼。對最大變換單元大小資訊、最小變換單元大小資訊以及最大TU大小旗標做編碼的結果可插入至SPS中。視訊解碼裝置200可藉由使用最大變換單元大小資訊、最小變換單元大小資訊以及最大TU大小旗標來對視訊做解碼。
舉例而言,(a)若當前寫碼單元的大小為64×64且最大變換單元大小為32×32,則(a-1)當TU大小旗標為0時,變換單元的大小可為32×32,(a-2)當TU大小旗標為1時,變換單元的大小可為16×16,且(a-3)當TU大小旗標為2時,變換單元的大小可為8×8。
作為另一實例,(b)若當前寫碼單元的大小為32×32且最小變換單元大小為32×32,則(b-1)當TU大小旗標為0時,變換單元的大小可為32×32。此時,TU大小旗標無法設定為除0之外的值,此是因為變換單元的大小無法小於32×32。
作為另一實例,(c)若當前寫碼單元的大小為64×64且最大TU大小旗標為1,則TU大小旗標可為0或1。此時,TU大小旗標無法設定為除0或1之外的值。
因此,若定義最大TU大小旗標為「MaxTransformSizeIndex」、最小變換單元大小為「MinTransformSize」且在TU大小旗標為0時的變換單元大小為「RootTuSize」,則可在當前寫碼單元中判定的當前最小變換單元大小「CurrMinTuSize」可由方程式(1)來定義: CurrMinTuSize =max (MinTransformSize, RootTuSize/(2^MaxTransformSizeIndex)) ... (1)
與可在當前寫碼單元中判定的當前最小變換單元大小「CurrMinTuSize」相比,在TU大小旗標為0時的變換單元大小「RootTuSize」可表示可在系統中選擇的最大變換單元大小。在方程式(1)中,「RootTuSize/(2^MaxTransformSizeIndex)」表示在TU大小旗標為0時的變換單元大小「RootTuSize」分割對應於最大TU大小旗標的次數時的變換單元大小,且「MinTransformSize」表示最小變換大小。因此,「RootTuSize/(2^MaxTransformSizeIndex)」以及「MinTransformSize」中的較小值可為可在當前寫碼單元中判定的當前最小變換單元大小「CurrMinTuSize」。
根據本揭露的實施例,最大變換單元大小RootTuSize可根據預測模式的類型而變化。
舉例而言,若當前預測模式為畫面間模式,則可藉由使用下文方程式(2)來判定「RootTuSize」。在方程式(2)中,「MaxTransformSize」表示最大變換單元大小,且「PUSize」表示當前預測單元大小。 RootTuSize = min(MaxTransformSize, PUSize) ......... (2)
換言之,若當前預測模式為畫面間模式,則在TU大小旗標為0時的變換單元大小「RootTuSize」可為最大變換單元大小以及當前預測單元大小中的較小值。
若當前分區單元的預測模式為畫面內模式,則可藉由使用下文方程式(3)來判定「RootTuSize」。在方程式(3)中,「PartitionSize」表示當前分區單元的大小。 RootTuSize = min(MaxTransformSize, PartitionSize) ...........(3)
換言之,若當前預測模式為畫面內模式,則在TU大小旗標為0時的變換單元大小「RootTuSize」可為最大變換單元大小以及當前分區單元的大小中的較小值。
然而,根據分區單元的預測模式的類型而變化的當前最大變換單元大小「RootTuSize」僅為一實例,且本揭露不限於此。
根據如參看圖8至圖20而描述的基於具有樹狀結構的寫碼單元的視訊編碼方法,針對樹狀結構的每一寫碼單元來對空間域的影像資料做編碼。根據基於具有樹狀結構的寫碼單元的視訊解碼方法,針對每一LCU來執行解碼以重新建構空間域的影像資料。因此,可重新建構圖像以及視訊(其為圖像序列)。經重新建構的視訊可由再生裝置再生,儲存於儲存媒體中或經由網路而傳輸。
且,可關於每一圖像、每一片段、每一LCU、具有樹狀結構的寫碼單元中的每一者、寫碼單元中的每一預測單元或寫碼單元的每一變換單元來用信號發送SAO參數。舉例而言,可藉由使用基於所接收的SAO參數而重新建構的偏移值來調整每一LCU的經重新建構的像素的像素值,且因此,可重新建構在原始區塊與LCU之間具有最小化的誤差的LCU。
為便於描述,上文參看圖1A至圖20的根據樣本偏移的操作的視訊編碼方法將稱為「根據本揭露的視訊編碼方法」。此外,上文參看圖1A至圖20的根據樣本偏移的操作的視訊解碼方法將稱為「根據本揭露的視訊解碼方法」。
且,上文參看圖1A至圖20的包含SAO編碼裝置10、視訊編碼裝置100或影像編碼器400的視訊編碼裝置將稱為「根據本揭露的視訊編碼裝置」。此外,上文參看圖1A至圖20的包含SAO解碼裝置20、視訊解碼裝置200或影像解碼器500的視訊解碼裝置將稱為「根據本揭露的視訊解碼裝置」。
現將詳細描述根據本揭露的實施例的儲存程式的電腦可讀記錄媒體(例如,光碟26000)。
圖21為根據本揭露的實施例的儲存程式的光碟26000的實體結構的圖式。光碟26000(其為儲存媒體)可為硬碟機(hard drive)、緊密光碟-唯讀記憶體(compact disc-read only memory, CD-ROM)光碟、藍光光碟(Blu-ray disc)或數位多功能光碟(digital versatile disc, DVD)。光碟26000包含多個同心磁軌Tr,其各自劃分為在光碟26000的圓周方向上的具體數目的磁區Se。在光碟26000的具體區域中,可指派並儲存執行上述量化參數判定方法、視訊編碼方法以及視訊解碼方法的程式。
現將參看圖22描述電腦系統,電腦系統是使用儲存媒體來體現的,儲存媒體儲存用於執行如上所述的視訊編碼方法以及視訊解碼方法的程式。
圖22為藉由使用光碟26000而記錄以及讀取程式的光碟機26800的圖式。電腦系統26700可經由光碟機26800而在光碟26000中儲存程式,程式執行根據本揭露的實施例的視訊編碼方法以及視訊解碼方法中的至少一者。為了在電腦系統26700中執行儲存於光碟26000中的程式,可藉由使用光碟機26700而自光碟260讀取程式,並將其傳輸至電腦系統26700。
執行根據本揭露的實施例的視訊編碼方法以及視訊解碼方法中的至少一者的程式可不僅儲存於圖21或圖22所說明的光碟26000中,而且儲存於記憶卡、ROM卡匣(ROM cassette)或固態磁碟(solid state drive, SSD)中。
下文將描述應用了上述視訊編碼方法以及視訊解碼方法的系統。
圖23為提供內容散佈服務的內容供應系統11000的整體結構的圖式。通信系統的服務區域劃分為預定大小的小區,且無線基地台11700、11800、11900以及12000分別安裝於此等小區中。
內容供應系統11000包含多個獨立元件。舉例而言,諸如電腦12100、個人數位助理(personal digital assistant, PDA)12200、視訊攝影機12300以及行動電話12500的多個獨立元件經由網際網路服務提供商11200、通信網路11400以及無線基地台11700、11800、11900以及12000而連接至網際網路11100。
然而,內容供應系統11000不限於如圖24所說明的內容供應系統,且多個元件可選擇性連接至內容供應系統。多個獨立元件可直接連接至通信網路11400,而不是經由無線基地台11700、11800、11900以及12000來連接。
視訊攝影機12300為能夠攝取視訊影像的成像元件,例如,數位視訊攝影機。行動電話12500可使用各種協定中的至少一種通信方法,例如,個人數位通信(Personal Digital Communications, PDC)、分碼多重存取(Code Division Multiple Access, CDMA)、寬頻分碼多重存取(Wideband-Code Division Multiple Access, W-CDMA)、全球行動通信系統(Global System for Mobile Communications, GSM)以及個人手持電話系統(Personal Handyphone System, PHS)。
視訊攝影機12300可經由無線基地台11900以及通信網路11400而連接至串流伺服器11300。串流伺服器11300允許經由視訊攝影機12300自使用者接收的內容經由即時廣播(real-time broadcast)而串流傳輸。可使用視訊攝影機12300或串流伺服器11300來對自視訊攝影機12300接收的內容做編碼。可將由視訊攝影機12300攝取的視訊資料經由電腦12100傳輸至串流伺服器11300。
亦可將由相機12600攝取的視訊資料經由電腦12100傳輸至串流伺服器11300。相機12600為類似於數位相機能夠攝取靜態影像與視訊影像兩者的成像元件。可使用相機12600或電腦12100來對由相機12600攝取的視訊資料做編碼。執行視訊編碼以及解碼的軟體可儲存於可由電腦12100存取的電腦可讀記錄媒體中,電腦可讀記錄媒體例如為CD-ROM光碟、軟碟(floppy disc)、硬碟機、SSD或記憶卡。
若視訊資料是由內建於行動電話12500中的相機攝取,則可自行動電話12500接收視訊資料。
視訊資料亦可由安裝於視訊攝影機12300、行動電話12500或相機12600中的大型積體電路(large scale integrated circuit, LSI)系統編碼。
內容供應系統11000可對由使用者使用視訊攝影機12300、相機12600、行動電話12500或另一成像元件記錄的內容資料(例如,在音樂會期間記錄的內容)做編碼,且將經編碼的內容資料傳輸至串流伺服器11300。串流伺服器11300可將經編碼的內容資料以串流內容的類型傳輸至請求內容資料的其他用戶端。
用戶端為能夠對經編碼的內容資料做解碼的元件,例如,電腦12100、PDA 12200、視訊攝影機12300或行動電話12500。因此,內容供應系統11000允許用戶端接收並再生經編碼的內容資料。且,內容供應系統11000允許用戶端接收經編碼的內容資料並即時地對經編碼的內容資料做解碼以及再生,藉此實現個人廣播。
內容供應系統11000中所包含的多個獨立元件的編碼以及解碼操作可類似於根據本揭露的實施例的視訊編碼裝置以及視訊解碼裝置的編碼以及解碼操作。
現將參看圖24及圖25更詳細地描述根據本揭露的實施例的內容供應系統11000中所包含的行動電話12500。
圖24說明根據本揭露的實施例的應用了視訊編碼方法以及視訊解碼方法的行動電話12500的外部結構。行動電話12500可為智慧型電話,其功能不受限制,且其大量功能可被改變或擴展。
行動電話12500包含內部天線12510,可經由內部天線12510而與圖21的無線基地台12000交換射頻(radio-frequency, RF)信號,且行動電話12500包含用於顯示由相機12530攝取的影像或經由天線12510而接收並被解碼的影像的顯示螢幕12520,例如,液晶顯示器(liquid crystal display, LCD)或有機發光二極體(organic light-emitting diode, OLED)螢幕。行動電話12500包含操作面板12540,其包含控制按鈕以及觸控面板。若顯示螢幕12520為觸控螢幕,則操作面板12540更包含顯示螢幕12520的觸摸感測面板。行動電話12500包含用於輸出語音以及聲音的揚聲器12580或另一類型的聲音輸出器,以及用於輸入語音以及聲音的麥克風12550或另一類型的聲音輸入器。行動電話12500更包含相機12530(諸如,電荷耦合元件(charge-coupled device, CCD)相機)以攝取視訊以及靜態影像。行動電話12500可更包含:儲存媒體12570,其用於儲存經編碼/經解碼的資料,例如,由相機12530攝取、經由電子郵件而接收或根據各種方式而獲得的視訊或靜態影像;以及插槽12560,儲存媒體12570經由插槽12560而裝載至行動電話12500中。儲存媒體12570可為快閃記憶體,例如,安全數位(secure digital, SD)卡或包含於塑膠外殼中的電可抹除可程式化唯讀記憶體(electrically erasable and programmable read only memory, EEPROM)。
圖25說明根據本揭露的實施例的行動電話12500的內部結構。為了系統地控制包含顯示螢幕12520以及操作面板12540的行動電話12500的多個部分,電力供應電路12700、操作輸入控制器12640、影像編碼器12720、相機介面12630、LCD控制器12620、影像解碼器12690、多工器/解多工器12680、記錄器/讀取器12670、調變器/解調變器12660以及聲音處理器12650經由同步匯流排12730而連接至中央控制器12710。
若使用者操作電源按鈕且自「電源關閉」狀態設定至「電源開啟」狀態,則電力供應電路12700將電力自電池組(battery pack)供應至行動電話12500的所有部分,藉此將行動電話12500設定於操作模式。
中央控制器12710包含中央處理單元(central processing unit, CPU)、ROM以及RAM。
雖然行動電話12500將通信資料傳輸至外部,但數位資料在中央控制器12710的控制下由行動電話12500產生。舉例而言,聲音處理器12650可產生數位聲音信號,影像編碼器12720可產生數位影像信號,且訊息的文字資料可經由操作面板12540以及操作輸入控制器12640而產生。在數位信號在中央控制器12710的控制下傳輸至調變器/解調變器12660時,調變器/解調變器12660調變數位信號的頻帶,且通信電路12610對經頻帶調變的數位聲音信號執行數位至類比轉換(digital-to-analog conversion, DAC)以及頻率轉換。自通信電路12610輸出的傳輸信號可經由天線12510而傳輸至語音通信基地台或無線基地台12000。
舉例而言,在行動電話12500處於交談模式時,經由麥克風12550而獲得的聲音信號在中央控制器12710的控制下由聲音處理器12650變換為數位聲音信號。數位聲音信號可經由調變器/解調變器12660以及通信電路12610而變換為變換信號,且可經由天線12510而傳輸。
當在資料通信模式中傳輸文字訊息(例如,電子郵件)時,文字訊息的文字資料經由操作面板12540而輸入,且經由操作輸入控制器12640而傳輸至中央控制器12710。在中央控制器12710的控制下,文字資料經由調變器/解調變器12660以及通信電路12610變換為傳輸信號,且經由天線12510而傳輸至無線基地台12000。
為了在資料通信模式中傳輸影像資料,由相機12530攝取的影像資料經由相機介面12630而提供至影像編碼器12720。所攝取的影像資料可經由相機介面12630以及LCD控制器12620直接顯示在顯示螢幕12520上。
影像編碼器12720的結構可對應於根據本揭露的上述視訊編碼方法的視訊編碼裝置的結構。影像編碼器12720可基於根據本揭露的上述視訊編碼方法而將自相機12530接收的影像資料變換為經壓縮且編碼的影像資料,且接著將經編碼的影像資料輸出至多工器/解多工器12680。在相機12530的記錄操作期間,由行動電話12500的麥克風12550獲得的聲音信號可經由聲音處理器12650而變換為數位聲音資料,且數位聲音資料可傳輸至多工器/解多工器12680。
多工器/解多工器12680將自影像編碼器12720接收的經編碼的影像資料以及自聲音處理器12650接收的聲音資料一起多工。對資料進行多工的結果可經由調變器/解調變器12660以及通信電路12610而變換為傳輸信號,且可接著經由天線12510而傳輸。
雖然行動電話12500自外部接收通信信號,但對經由天線12510而接收的信號執行頻率恢復以及ADC,以將信號變換為數位信號。調變器/解調變器12660調變數位信號的頻帶。經頻帶調變的數位信號根據數位信號的類型而傳輸至影像解碼器12690、聲音處理器12650或LCD控制器12620。
在交談模式中,行動電話12500放大經由天線12510而接收的信號,且藉由對經放大的信號執行頻率轉換以及ADC而獲得數位聲音信號。在中央控制器12710的控制下,所接收的數位聲音信號經由調變器/解調變器12660以及聲音處理器12650而變換為類比聲音信號,且類比聲音信號經由揚聲器12580而輸出。
在處於資料通信模式時,接收在網際網路網站處存取的視訊檔案的資料,且將經由天線12510而自無線基地台12000接收的信號經由調變器/解調變器12660作為經多工的資料而輸出,且將經多工的資料傳輸至多工器/解多工器12680。
為了對經由天線12510而接收的經多工的資料做解碼,多工器/解多工器12680將經多工的資料解多工為經編碼的視訊資料串流以及經編碼的音訊資料串流。經由同步匯流排12730而分別將經編碼的視訊資料串流以及經編碼的音訊資料串流提供至影像解碼器12690以及聲音處理器12650。
影像解碼器12690的結構可對應於根據本揭露的上述視訊解碼方法的視訊解碼裝置的結構。藉由使用根據本揭露的上述視訊解碼方法,影像解碼器12690可對經編碼的視訊資料做解碼以獲得經重新建構的視訊資料且經由LCD控制器12620而將經重新建構的視訊資料提供至顯示螢幕12520。
因此,在網際網路網站處存取的視訊檔案的資料可顯示於顯示螢幕12520上。同時,聲音處理器12650可將音訊資料變換為類比聲音信號,且將類比聲音信號提供至揚聲器12580。因此,在網際網路網站處存取的視訊檔案中所含有的音訊資料亦可經由揚聲器12580而再生。
行動電話12500或另一類型的通信終端機可為包含根據本揭露的實施例的視訊編碼裝置與視訊解碼裝置兩者的收發終端機,可為僅包含視訊編碼裝置的收發終端機,或可為僅包含視訊解碼裝置收發終端機。
根據本揭露的通信系統不限於上文參看圖24而描述的通信系統。舉例而言,圖26說明根據本揭露的實施例的使用通信系統的數位廣播系統。圖26的數位廣播系統可藉由使用根據本揭露的實施例的視訊編碼裝置以及視訊解碼裝置而接收經由衛星或地面網路傳輸的數位廣播。
特定言之,廣播站12890藉由使用無線電波而將視訊資料串流傳輸至通信衛星或廣播衛星12900。廣播衛星12900傳輸廣播信號,且廣播信號經由家用天線12860而傳輸至衛星廣播接收器。在每個家庭中,經編碼的視訊串流可由電視(television, TV)接收器12810、機上盒(set-top box)12870或另一元件解碼並再生。
在根據本揭露的實施例的視訊解碼裝置實施於再生裝置12830中時,再生裝置12830可對記錄於儲存媒體12820(諸如,光碟或記憶卡)上的經編碼的視訊串流進行剖析以及解碼以重新建構數位信號。因此,經重新建構的視訊信號可再生於(例如)監視器12840上。
在連接至用於衛星/地面廣播的天線12860或用於接收有線電視(TV)廣播的電纜天線12850的機上盒12870中,可安裝有根據本揭露的實施例的視訊解碼裝置。自機上盒12870輸出的資料亦可再生於TV監視器12880上。
作為另一實例,根據本揭露的實施例的視訊解碼裝置可安裝於TV接收器12810而非機上盒12870上。
具有合適天線12910的汽車12920可接收自衛星12900或圖21的無線基地台11700傳輸的信號。經解碼的視訊可再生於安裝於汽車12920中的汽車導航系統12930的顯示螢幕上。
視訊信號可由根據本揭露的實施例的視訊編碼裝置編碼且可接著儲存於儲存媒體中。特定言之,影像信號可由DVD記錄器儲存於DVD光碟12960中或可由硬碟記錄器12950儲存於硬碟中。作為另一實例,視訊信號可儲存於SD卡12970中。若硬碟記錄器12950包含根據本揭露的實施例的視訊解碼裝置,則DVD光碟12960、SD卡12970或另一儲存媒體上所記錄的視訊信號可再生於TV監視器12880上。
汽車導航系統12930可能不包含圖24的相機12530以及圖25的相機介面12630及影像編碼器12720。舉例而言,電腦12100以及TV接收器12810可能不包含相機12530、相機介面12630以及影像編碼器12720。
圖27為說明根據本揭露的實施例的使用視訊編碼裝置以及視訊解碼裝置的雲端計算系統的網路結構的圖式。
雲端計算系統可包含雲端計算伺服器14000、使用者資料庫(database, DB)14100、多個計算資源14200以及使用者終端機。
雲端計算系統回應於來自使用者終端機的請求而經由資料通信網路(例如,網際網路)提供多個計算資源14200的應需委外服務(on-demand outsourcing service)。在雲端計算環境下,服務提供商藉由使用虛擬化技術來組合位於實體上不同位置處的資料中心的計算資源而向使用者提供所要服務。服務使用者並不需要將計算資源(例如,應用程式、儲存器、作業系統(operating system, OS)或安全機制)安裝於其自身的終端機上以便進行使用,而是可在所要時間點自經由虛擬化技術而產生的虛擬空間中的服務選擇所要服務並進行使用。
指定服務使用者的使用者終端機經由資料通信網路(包含網際網路以及行動電信網路)而連接至雲端計算伺服器14000。可自雲端計算伺服器14000對使用者終端機提供雲端計算服務且特定言之視訊再生服務。使用者終端機可為能夠連接至網際網路的各種類型的電子元件,例如,桌上型PC 14300、智慧型TV 14400、智慧型電話14500、筆記型電腦14600、攜帶型多媒體播放器(portable multimedia player, PMP)14700、平板型PC 14800及其類似者。
雲端計算伺服器14000可組合雲端網路中所分散的多個計算資源14200且向使用者終端機提供組合的結果。多個計算資源14200可包含各種資料服務,且可包含自使用者終端機上傳的資料。如上所述,雲端計算伺服器14000可藉由根據虛擬化技術來組合不同區域中所分散的視訊資料庫而向使用者終端機提供所要服務。
關於已預訂雲端計算服務的使用者的使用者資訊儲存於使用者DB 14100中。使用者資訊可包含使用者的登錄資訊、地址、姓名以及個人信用資訊。使用者資訊可更包含視訊的索引。此處,索引可包含已再生的視訊的清單、正再生的視訊的清單、再生的視訊的暫停點(pausing point)以及其類似者。
關於儲存於使用者DB 14100中的視訊的資訊可在使用者元件之間共用。舉例而言,在視訊服務回應於來自筆記型電腦14600的請求而提供至筆記型電腦14600時,視訊服務的再生歷史儲存於使用者DB 14100中。在自智慧型電話14500接收到對再生此視訊服務的請求時,雲端計算伺服器14000基於使用者DB 14100而搜尋並再生此視訊服務。在智慧型電話14500自雲端計算伺服器14000接收視訊資料串流時,藉由對視訊資料串流做解碼而再生視訊的程序類似於上文參看圖24而描述的行動電話12500的操作。
雲端計算伺服器14000可參考儲存於使用者DB 14100中的所要視訊服務的再生歷史。舉例而言,雲端計算伺服器14000自使用者終端機接收對再生儲存於使用者DB 14100中的視訊的請求。若正再生此視訊,則由雲端計算伺服器14000執行的串流傳輸此視訊的方法可根據來自使用者終端機的請求(亦即,根據將始於視訊的開始還是其暫停點而再生視訊)而變化。舉例而言,若使用者終端機請求始於視訊的開始而再生視訊,則雲端計算伺服器14000始於視訊的第一畫面而將視訊的資料串流傳輸至使用者終端機。舉例而言,若使用者終端機請求始於視訊的暫停點而再生視訊,則雲端計算伺服器14000始於對應於暫停點的畫面而將視訊的資料串流傳輸至使用者終端機。
在此狀況下,使用者終端機可包含如上文參看圖1A至圖20而描述的視訊解碼裝置。作為另一實例,使用者終端機可包含如上文參看圖1A至圖20而描述的視訊編碼裝置。或者,使用者終端機可包含如上文參看圖1A至圖20而描述的視訊解碼裝置與視訊編碼裝置兩者。
上文已參看圖21至圖27而描述上文參看圖1A至圖20的根據本揭露的實施例的視訊編碼方法、視訊解碼方法、視訊編碼裝置以及視訊解碼裝置的各種應用。然而,根據本揭露的各種實施例的將視訊編碼方法以及視訊解碼方法儲存於儲存媒體中的方法或將視訊編碼裝置以及視訊解碼裝置實施在元件中的方法不限於上文參看圖21至圖27而描述的實施例。
在本說明書中,表達「A可包含a1、a2以及a3中的一者」廣泛地意謂部件A的例示性子部件為a1、a2或a3。
上述表達並不將部件A的子部件限於a1、a2或a3。因此,應注意,上述表達不應解釋為將除了a1、a2以及a3之外的部件排除於部件A的子部件之外。
且,上述表達意謂部件A可包含a1,可包含a2,或可包含a3。上述表達並不意謂將部件A的子部件選擇性地判定於某一群組中。舉例而言,應注意,上述表達不應解釋為選自由a1、a2以及a3組成的群組的a1、a2或a3形成部件A。
此外,在本說明書中,表達「a1、a2以及a3中的至少一者」表示a1;a2;a3;a1及a2;a1及a3;a2及a3;以及a1、a2及a3中的一者。
因此,應注意,除非定義為「a1中的至少一者,a2中的至少一者或(以及)a3中的至少一者」,否則表達「a1、a2以及a3中的至少一者」不解釋為「a1中的至少一者,a2中的至少一者或(以及)a3中的至少一者」。
根據本揭露的實施例可寫為電腦程式,且可在使用電腦可讀記錄媒體執行程式的通用數位電腦中實施。電腦可讀記錄媒體的實例包含磁性儲存媒體(例如,ROM、軟碟、硬碟等)以及光學記錄媒體(例如,CD-ROM或DVD)。
儘管已參考本揭露的例示性實施例特定地展示且描述了本揭露,但一般熟習此項技術者將理解,在不脫離如由所附申請專利範圍界定的本揭露的精神以及範疇的情況下,可對本揭露進行形式以及細節上的各種改變。例示性實施例應僅在描述性意義上考慮且並非用於限制目的。因此,本揭露的範疇並非由本揭露的詳細描述界定而是由隨附申請專利範圍界定,且在此範疇內的所有差異將解釋為包含於本揭露中。
10‧‧‧SAO編碼裝置
11‧‧‧操作
12‧‧‧SAO操作器
13‧‧‧操作
14‧‧‧熵編碼器
15‧‧‧操作
16‧‧‧SAO內文編碼器
17‧‧‧操作
18‧‧‧SAO旁路編碼器
20‧‧‧SAO解碼裝置
21‧‧‧操作
22‧‧‧熵解碼器
23‧‧‧操作
24‧‧‧SAO內文解碼器
25‧‧‧操作
26‧‧‧SAO旁路解碼器
27‧‧‧操作
28‧‧‧SAO操作器
30‧‧‧視訊解碼裝置
31‧‧‧熵解碼器
32‧‧‧逆量化器
33‧‧‧逆變換器
34‧‧‧重新建構器
35‧‧‧畫面內預測器
36‧‧‧參考圖像緩衝器
37‧‧‧運動補償器
38‧‧‧解區塊濾波器
39‧‧‧SAO操作器
41‧‧‧邊緣類別
42‧‧‧邊緣類別
43‧‧‧邊緣類別
44‧‧‧邊緣類別
51‧‧‧圖表
52‧‧‧圖表
53‧‧‧圖表
54‧‧‧圖表
55‧‧‧圖表
56‧‧‧圖表
60‧‧‧SAO參數
65‧‧‧當前圖像
70‧‧‧SAO語法
71‧‧‧向左SAO合併資訊「sao_merge_left_flag」
72‧‧‧向上SAO合併資訊「sao_merge_up_flag」
73‧‧‧操作
74‧‧‧操作
75‧‧‧操作
76‧‧‧操作
77‧‧‧絕對偏移值資訊「sao_offset_abs」
78‧‧‧操作
83‧‧‧明度SAO開/關資訊
84‧‧‧色度SAO開/關資訊
85‧‧‧操作
86‧‧‧操作
87‧‧‧絕對偏移值資訊
88‧‧‧操作
100‧‧‧視訊編碼裝置
110‧‧‧LCU分割器
120‧‧‧寫碼單元判定器
130‧‧‧輸出器
200‧‧‧視訊解碼裝置
210‧‧‧接收器
220‧‧‧影像資料以及編碼資訊提取器
230‧‧‧影像資料解碼器
310‧‧‧視訊資料
315‧‧‧寫碼單元
320‧‧‧視訊資料
325‧‧‧寫碼單元
330‧‧‧視訊資料
335‧‧‧寫碼單元
400‧‧‧影像編碼器
405‧‧‧當前畫面
410‧‧‧畫面內預測器
420‧‧‧運動估計器
425‧‧‧運動補償器
430‧‧‧變換器
440‧‧‧量化器
450‧‧‧熵編碼器
455‧‧‧位元串流
460‧‧‧逆量化器
470‧‧‧逆變換器
480‧‧‧解區塊濾波器
490‧‧‧SAO操作器
495‧‧‧參考畫面
500‧‧‧影像解碼器
505‧‧‧位元串流
510‧‧‧剖析器
520‧‧‧熵解碼器
530‧‧‧逆量化器
540‧‧‧逆變換器
550‧‧‧畫面內預測器
560‧‧‧運動補償器
570‧‧‧解區塊濾波器
580‧‧‧SAO操作器
585‧‧‧參考畫面
595‧‧‧經重新建構的畫面
600‧‧‧階層式結構
610‧‧‧寫碼單元/分區/LCU/編碼單元
611‧‧‧當前第一色度成分
612‧‧‧分區
613‧‧‧第一色度成分
614‧‧‧分區
615‧‧‧第一色度成分
616‧‧‧分區
617‧‧‧第一色度成分
619‧‧‧第一色度成分
620‧‧‧寫碼單元/分區
621‧‧‧當前第二色度成分
622‧‧‧分區
623‧‧‧第二色度成分
624‧‧‧分區
625‧‧‧第二色度成分
626‧‧‧分區
630‧‧‧寫碼單元/分區
632‧‧‧分區
634‧‧‧分區
636‧‧‧分區
640‧‧‧寫碼單元/分區
642‧‧‧分區
644‧‧‧分區
646‧‧‧分區
651‧‧‧當前LCU
652‧‧‧上方LCU
653‧‧‧左側LCU
700‧‧‧片段標頭
701‧‧‧參數
702‧‧‧參數
703‧‧‧參數
705‧‧‧片段資料
706‧‧‧SAO參數
707‧‧‧左側SAO合併資訊
708‧‧‧上方SAO合併資訊
709‧‧‧SAO參數
710‧‧‧寫碼單元
711‧‧‧SAO類型資訊
713‧‧‧偏移值
715‧‧‧偏移正負號資訊
717‧‧‧資訊
720‧‧‧變換單元
721‧‧‧第一1個位元
723‧‧‧剩餘位元
741‧‧‧明度SAO開/關資訊「sao_on_off_flag_luma」
743‧‧‧明度邊緣級區識別資訊「sao_eo_bo_flag_luma」
751‧‧‧色度SAO開/關資訊「sao_on_off_flag_chroma」
753‧‧‧色度邊緣級區識別資訊「sao_eo_bo_flag_chroma」
781‧‧‧偏移正負號資訊「sao_offset_sign」
782‧‧‧SAO參數
783‧‧‧級區位置資訊「sao_band_position」
791‧‧‧明度邊緣類別資訊「sao_eo_class_luma」
793‧‧‧色度邊緣類別資訊「sao_eo_class_chroma」
800‧‧‧資訊
802‧‧‧分區
804‧‧‧分區
806‧‧‧分區
808‧‧‧分區
810‧‧‧資訊
812‧‧‧畫面內模式
814‧‧‧畫面間模式
816‧‧‧跳過模式
820‧‧‧資訊
822‧‧‧第一畫面內變換單元
824‧‧‧第二畫面內變換單元
826‧‧‧第一畫面間變換單元
828‧‧‧第二畫面間變換單元
831‧‧‧明度邊緣級區識別資訊
832‧‧‧明度邊緣類別資訊
841‧‧‧色度邊緣級區識別資訊
842‧‧‧色度邊緣類別資訊
843‧‧‧SAO參數
881‧‧‧偏移正負號資訊
883‧‧‧級區位置資訊
900‧‧‧寫碼單元/當前LCU
910‧‧‧預測單元
912‧‧‧分區類型/分區
914‧‧‧分區類型
916‧‧‧分區類型
918‧‧‧分區類型
920‧‧‧操作
930‧‧‧寫碼單元
940‧‧‧預測單元
942‧‧‧分區類型
944‧‧‧分區類型
946‧‧‧分區類型
948‧‧‧分區類型
950‧‧‧操作
960‧‧‧寫碼單元
970‧‧‧操作
980‧‧‧寫碼單元
990‧‧‧預測單元
992‧‧‧分區類型
994‧‧‧分區類型
996‧‧‧分區類型
998‧‧‧分區類型
999‧‧‧資料單元
1010‧‧‧寫碼單元/編碼單元
1012‧‧‧寫碼單元
1014‧‧‧寫碼單元/編碼單元
1016‧‧‧寫碼單元/編碼單元
1018‧‧‧寫碼單元
1020‧‧‧寫碼單元
1022‧‧‧寫碼單元/編碼單元
1024‧‧‧寫碼單元
1026‧‧‧寫碼單元
1028‧‧‧寫碼單元
1030‧‧‧寫碼單元
1032‧‧‧寫碼單元/編碼單元
1040‧‧‧寫碼單元
1042‧‧‧寫碼單元
1044‧‧‧寫碼單元
1046‧‧‧寫碼單元
1048‧‧‧寫碼單元/編碼單元
1050‧‧‧寫碼單元/編碼單元
1052‧‧‧寫碼單元/編碼單元
1054‧‧‧寫碼單元/編碼單元
1060‧‧‧預測單元
1070‧‧‧變換單元
1300‧‧‧LCU
1302‧‧‧寫碼單元
1304‧‧‧寫碼單元
1306‧‧‧寫碼單元
1312‧‧‧寫碼單元
1314‧‧‧寫碼單元
1316‧‧‧寫碼單元
1318‧‧‧寫碼單元
1322‧‧‧分區類型
1324‧‧‧分區類型
1326‧‧‧分區類型
1328‧‧‧分區類型
1332‧‧‧分區類型
1334‧‧‧分區類型
1336‧‧‧分區類型
1338‧‧‧分區類型
1342‧‧‧變換單元
1344‧‧‧變換單元
1352‧‧‧變換單元
1354‧‧‧變換單元
11000‧‧‧內容供應系統
11100‧‧‧網際網路
11200‧‧‧網際網路服務提供商
11300‧‧‧串流伺服器
11400‧‧‧通信網路
11700‧‧‧無線基地台
11800‧‧‧無線基地台
11900‧‧‧無線基地台
12000‧‧‧無線基地台
12100‧‧‧電腦
12200‧‧‧個人數位助理
12300‧‧‧視訊攝影機
12500‧‧‧行動電話
12510‧‧‧內部天線
12520‧‧‧顯示螢幕
12530‧‧‧相機
12540‧‧‧操作面板
12550‧‧‧麥克風
12560‧‧‧插槽
12570‧‧‧儲存媒體
12580‧‧‧揚聲器
12600‧‧‧相機
12610‧‧‧通信電路
12620‧‧‧LCD控制器
12630‧‧‧相機介面
12640‧‧‧操作輸入控制器
12650‧‧‧聲音處理器
12660‧‧‧調變器/解調變器
12670‧‧‧記錄器/讀取器
12680‧‧‧多工器/解多工器
12690‧‧‧影像解碼器
12700‧‧‧電力供應電路
12710‧‧‧中央控制器
12720‧‧‧影像編碼器
12730‧‧‧同步匯流排
12810‧‧‧TV接收器
12820‧‧‧儲存媒體
12830‧‧‧再生裝置
12840‧‧‧監視器
12850‧‧‧電纜天線
12860‧‧‧天線
12870‧‧‧機上盒
12880‧‧‧TV監視器
12890‧‧‧廣播站
12900‧‧‧廣播衛星
12910‧‧‧天線
12920‧‧‧汽車
12930‧‧‧汽車導航系統
12950‧‧‧硬碟記錄器
12960‧‧‧DVD光碟
12970‧‧‧SD卡
14000‧‧‧雲端計算伺服器
14100‧‧‧使用者資料庫
14200‧‧‧計算資源
14300‧‧‧桌上型PC
14400‧‧‧智慧型TV
14500‧‧‧智慧型電話
14600‧‧‧筆記型電腦
14700‧‧‧攜帶型多媒體播放器
14800‧‧‧平板型PC
26000‧‧‧光碟
26700‧‧‧電腦系統
26800‧‧‧光碟機
CU‧‧‧寫碼單元
CU_0‧‧‧當前寫碼單元
CU_1‧‧‧寫碼單元
CU_(d-1)‧‧‧寫碼單元
PU‧‧‧預測單元
Se‧‧‧磁區
Tr‧‧‧同心磁軌
TU‧‧‧變換單元
圖1A及圖1B為根據本揭露的實施例的取樣自適應偏移(SAO)編碼裝置的方塊圖以及SAO編碼方法的流程圖。 圖2A及圖2B為根據本揭露的實施例的SAO解碼裝置的方塊圖以及SAO解碼方法的流程圖。 圖3為根據本揭露的實施例的視訊解碼裝置的方塊圖。 圖4為展示根據本揭露的實施例的邊緣類型的邊緣類別的表格。 圖5A及圖5B為展示根據本揭露的實施例的邊緣類型的種類的表格及圖表。 圖6A為展示根據本揭露的實施例的經參考以合併SAO參數與當前最大寫碼單元(LCU)的鄰近LCU的圖式。 圖6B為根據本揭露的另一實施例的對SAO參數執行熵編碼的程序的圖式。 圖7A展示根據本揭露的實施例的寫碼單元的SAO語法。 圖7B及圖7C展示根據本揭露的其他實施例的寫碼單元的SAO語法。 圖8為根據本揭露的實施例的基於具有樹狀結構的寫碼單元的視訊編碼裝置的方塊圖。 圖9為根據本揭露的實施例的基於具有樹狀結構的寫碼單元的視訊解碼裝置的方塊圖。 圖10為用於描述根據本揭露的實施例的寫碼單元的概念的圖式。 圖11為根據本揭露的實施例的基於寫碼單元的影像編碼器的方塊圖。 圖12為根據本揭露的實施例的基於寫碼單元的影像解碼器的方塊圖。 圖13為說明根據本揭露的實施例的根據深度的較深寫碼單元以及分區的圖式。 圖14為用於描述根據本揭露的實施例的寫碼單元與變換單元之間的關係的圖式。 圖15為用於描述根據本揭露的實施例的對應於經寫碼的深度的寫碼單元的編碼資訊的圖式。 圖16為根據本揭露的實施例的根據深度的較深寫碼單元的圖式。 圖17至圖19為用於描述根據本揭露的實施例的寫碼單元、預測單元與變換單元之間的關係的圖式。 圖20為用於描述根據表1的編碼模式資訊的寫碼單元、預測單元與變換單元之間的關係的圖式。 圖21為根據本揭露的實施例的儲存程式的光碟的實體結構的圖式。 圖22為藉由使用光碟而記錄以及讀取程式的光碟機的圖式。 圖23為提供內容散佈服務的內容供應系統的整體結構的圖式。 圖24及圖25分別為根據本揭露的實施例的應用了視訊編碼方法以及視訊解碼方法的行動電話的外部結構以及內部結構的圖式。 圖26為根據本揭露的實施例的應用了通信系統的數位廣播系統的圖式。 圖27為說明根據本揭露的實施例的使用視訊編碼裝置以及視訊解碼裝置的雲端計算系統的網路結構的圖式。

Claims (1)

  1. 一種取樣自適應偏移(SAO)解碼方法,包括: 自最大寫碼單元(LCU)的位元串流獲得經內文編碼的向左SAO合併資訊以及經內文編碼的向上SAO合併資訊; 通過對所述LCU的SAO類型資訊的第一二進位執行內文解碼且對所述LCU的所述SAO類型資訊的剩餘二進位執行旁路解碼,自位元串流獲得SAO繼續/中斷資訊; 若所述SAO繼續/中斷資訊指示執行SAO操作,則通過執行旁路解碼自所述位元串流獲得所述LCU的絕對偏移值資訊;以及 通過執行旁路解碼自所述位元串流獲得所述LCU的級區位置資訊以及邊緣類別資訊中的一者, 其中,獲得所述經內文編碼的向左SAO合併資訊以及所述經內文編碼的向上SAO合併資訊包括: 通過執行內文解碼自所述位元串流獲得向左SAO合併資訊; 當所述向左SAO合併資訊指示當前LCU的SAO參數是通過使用左側LCU的SAO參數來判定時,判定將所述左側LCU的色彩分量的SAO參數用作所述當前LCU的色彩分量的SAO參數; 當所述向左SAO合併資訊指示所述當前LCU的所述SAO參數不是通過使用所述左側LCU的所述SAO參數來判定時,通過執行內文解碼自所述位元串流獲得向上SAO合併資訊;以及 當所述向上SAO合併資訊指示所述當前LCU的所述SAO參數是通過使用上方LCU的SAO參數來判定,判定將所述上方LCU的色彩分量的SAO參數用作所述當前LCU的所述色彩分量的所述SAO參數, 所述SAO參數包含所述SAO繼續/中斷資訊、所述絕對偏移值資訊、所述級區位置資訊以及所述邊緣類別資訊中的至少一者,以及 所述左側LCU的所述色彩分量包含明度分量、第一色度分量及第二色度分量。
TW105139995A 2012-07-16 2013-07-16 取樣自適應偏移解碼方法 TWI625962B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261672166P 2012-07-16 2012-07-16
US61/672,166 2012-07-16

Publications (2)

Publication Number Publication Date
TW201709737A TW201709737A (zh) 2017-03-01
TWI625962B true TWI625962B (zh) 2018-06-01

Family

ID=49949026

Family Applications (3)

Application Number Title Priority Date Filing Date
TW105139995A TWI625962B (zh) 2012-07-16 2013-07-16 取樣自適應偏移解碼方法
TW102125440A TWI568248B (zh) 2012-07-16 2013-07-16 取樣自適應偏移解碼裝置與其方法、取樣自適應偏移編碼裝置與其方法、以及電腦可讀記錄媒體
TW107113797A TWI656786B (zh) 2012-07-16 2013-07-16 取樣自適應偏移裝置

Family Applications After (2)

Application Number Title Priority Date Filing Date
TW102125440A TWI568248B (zh) 2012-07-16 2013-07-16 取樣自適應偏移解碼裝置與其方法、取樣自適應偏移編碼裝置與其方法、以及電腦可讀記錄媒體
TW107113797A TWI656786B (zh) 2012-07-16 2013-07-16 取樣自適應偏移裝置

Country Status (16)

Country Link
US (5) US9787992B2 (zh)
EP (1) EP2874391A4 (zh)
JP (2) JP6382807B2 (zh)
KR (1) KR102165855B1 (zh)
CN (6) CN108055544B (zh)
AU (3) AU2013290950B2 (zh)
BR (2) BR112015001111B1 (zh)
CA (2) CA2879440C (zh)
MX (2) MX368355B (zh)
MY (3) MY184416A (zh)
PH (5) PH12015500121B1 (zh)
RU (3) RU2643658C2 (zh)
SG (2) SG10201703660TA (zh)
TW (3) TWI625962B (zh)
WO (1) WO2014014251A1 (zh)
ZA (1) ZA201501039B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201119206D0 (en) * 2011-11-07 2011-12-21 Canon Kk Method and device for providing compensation offsets for a set of reconstructed samples of an image
US9253482B2 (en) * 2011-11-08 2016-02-02 Texas Insturments Incorporated Method and apparatus for sample adaptive offset without sign coding
CA2841112C (en) 2012-05-25 2019-09-17 Panasonic Corporation Moving picture coding and decoding using context adaptive binary arithmetic coding with fixed probability for some sample adaptive offset parameters
WO2013175736A1 (ja) 2012-05-25 2013-11-28 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および、動画像符号化復号装置
WO2013183232A1 (ja) 2012-06-04 2013-12-12 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置
JP6132161B2 (ja) 2012-06-08 2017-05-24 サン パテント トラスト 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置
CN103621088B (zh) 2012-06-27 2018-01-30 太阳专利托管公司 图像解码方法和图像解码装置
US9294766B2 (en) 2013-09-09 2016-03-22 Apple Inc. Chroma quantization in video coding
CN110177283B (zh) * 2014-04-04 2021-08-03 北京三星通信技术研究有限公司 对像素标识进行处理的方法和装置
US9609362B2 (en) 2014-10-06 2017-03-28 Telefonaktiebolaget Lm Ericsson (Publ) Coding and deriving quantization parameters
US10057574B2 (en) 2015-02-11 2018-08-21 Qualcomm Incorporated Coding tree unit (CTU) level adaptive loop filter (ALF)
CN106254888B (zh) * 2015-06-09 2020-06-02 同济大学 一种图像编码及解码方法、图像处理设备
US20170155905A1 (en) * 2015-11-30 2017-06-01 Intel Corporation Efficient intra video/image coding using wavelets and variable size transform coding
US10602187B2 (en) 2015-11-30 2020-03-24 Intel Corporation Efficient, compatible, and scalable intra video/image coding using wavelets and HEVC coding
US10939144B2 (en) * 2016-11-29 2021-03-02 Sharp Kabushiki Kaisha Signaling ratings information
JP6904156B2 (ja) * 2017-08-10 2021-07-14 富士通株式会社 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
CN107707915B (zh) * 2017-09-30 2019-11-12 上海兆芯集成电路有限公司 采样点自适应偏移滤波的控制方法及其影像处理系统
CN108702521B (zh) * 2017-10-17 2020-03-31 北京金山云网络技术有限公司 编码和解码方法、装置、编码器、解码器及存储介质
CN108235021B (zh) * 2018-01-10 2020-06-19 北京奇艺世纪科技有限公司 一种band模式确定方法及装置
GB2574425A (en) * 2018-06-05 2019-12-11 Canon Kk Video coding and decoding
CN118214862A (zh) 2018-09-17 2024-06-18 三星电子株式会社 用于编码和解码运动信息的方法及用于编码和解码运动信息的装置
CN113411612B (zh) 2019-01-11 2022-06-24 华为技术有限公司 对图像块进行视频译码的方法、解码设备和编/解码器
US11949870B2 (en) * 2019-06-21 2024-04-02 Qualcomm Incorporated Context modeling for low-frequency non-separable transformation signaling for video coding
CN112135149B (zh) * 2019-06-24 2023-07-18 华为技术有限公司 语法元素的熵编码/解码方法、装置以及编解码器
US20220107738A1 (en) * 2020-10-06 2022-04-07 Kioxia Corporation Read controller and input/output controller
CN114363613B (zh) * 2022-01-10 2023-11-28 北京达佳互联信息技术有限公司 滤波方法和滤波装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1200568C (zh) * 2002-01-07 2005-05-04 三星电子株式会社 在图像和视频的编码/解码中的变换系数的最佳扫描方法
TWI353119B (en) * 2008-02-22 2011-11-21 Himax Tech Ltd Compression system and method for a bit-plane
US20110305274A1 (en) * 2010-06-15 2011-12-15 Mediatek Inc. Apparatus and method of adaptive offset for video coding
US20120082244A1 (en) * 2010-10-05 2012-04-05 Mediatek Inc. Method and Apparatus of Region-Based Adaptive Loop Filtering
TWI365423B (en) * 2008-03-17 2012-06-01 Chunghwa Picture Tubes Ltd Compression method and decompression method for image data
US20120177103A1 (en) * 2011-01-09 2012-07-12 Mediatek Inc. Apparatus and method of efficient sample adaptive offset
US20120177107A1 (en) * 2011-01-09 2012-07-12 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Video Coding

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703776B1 (ko) 2005-04-19 2007-04-06 삼성전자주식회사 향상된 코딩 효율을 갖는 컨텍스트 기반 적응적 산술 코딩및 디코딩 방법과 이를 위한 장치, 이를 포함하는 비디오코딩 및 디코딩 방법과 이를 위한 장치
WO2007116551A1 (ja) * 2006-03-30 2007-10-18 Kabushiki Kaisha Toshiba 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法
KR101356733B1 (ko) 2007-03-07 2014-02-05 삼성전자주식회사 컨텍스트 기반 적응적 이진 산술 부호화, 복호화 방법 및장치
US9008174B2 (en) * 2008-01-10 2015-04-14 Thomson Licensing Methods and apparatus for illumination compensation of intra-predicted video
KR101314230B1 (ko) * 2008-07-18 2013-10-04 삼성전자주식회사 화상처리장치 및 그 화상처리방법
US9078007B2 (en) * 2008-10-03 2015-07-07 Qualcomm Incorporated Digital video coding with interpolation filters and offsets
US8873626B2 (en) * 2009-07-02 2014-10-28 Qualcomm Incorporated Template matching for video coding
JP5133950B2 (ja) * 2009-07-16 2013-01-30 日本電信電話株式会社 コンテクスト適応エントロピ符号化方法および装置,コンテクスト適応エントロピ復号方法および装置,並びにそれらのプログラム
US9078009B2 (en) * 2010-02-19 2015-07-07 Skype Data compression for video utilizing non-translational motion information
US9094658B2 (en) * 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
US9813738B2 (en) 2010-10-05 2017-11-07 Hfi Innovation Inc. Method and apparatus of adaptive loop filtering
CN103392338A (zh) 2011-01-03 2013-11-13 联发科技股份有限公司 基于滤波单元的回路滤波方法
WO2012092787A1 (en) * 2011-01-09 2012-07-12 Mediatek Inc. Apparatus and method of efficient sample adaptive offset
CN105791875B (zh) * 2011-06-10 2018-12-11 联发科技股份有限公司 可伸缩视频编码方法及其装置
US10070152B2 (en) * 2011-08-24 2018-09-04 Texas Instruments Incorporated Sample adaptive offset (SAO) parameter signaling
US9031137B2 (en) * 2012-05-03 2015-05-12 Texas Instruments Incorporated Signaling signed band offset values for sample adaptive offset (SAO) filtering in video coding
JP6132161B2 (ja) * 2012-06-08 2017-05-24 サン パテント トラスト 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置
US10623759B2 (en) * 2012-06-13 2020-04-14 Sony Corporation Decoupling enhancements in sample adaptive offset (SAO) for high efficiency video encoder (HEVC)
KR102166335B1 (ko) * 2013-04-19 2020-10-15 삼성전자주식회사 Sao 파라미터를 시그널링하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1200568C (zh) * 2002-01-07 2005-05-04 三星电子株式会社 在图像和视频的编码/解码中的变换系数的最佳扫描方法
TWI353119B (en) * 2008-02-22 2011-11-21 Himax Tech Ltd Compression system and method for a bit-plane
TWI365423B (en) * 2008-03-17 2012-06-01 Chunghwa Picture Tubes Ltd Compression method and decompression method for image data
US20110305274A1 (en) * 2010-06-15 2011-12-15 Mediatek Inc. Apparatus and method of adaptive offset for video coding
US20120082244A1 (en) * 2010-10-05 2012-04-05 Mediatek Inc. Method and Apparatus of Region-Based Adaptive Loop Filtering
US20120177103A1 (en) * 2011-01-09 2012-07-12 Mediatek Inc. Apparatus and method of efficient sample adaptive offset
US20120177107A1 (en) * 2011-01-09 2012-07-12 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Video Coding

Also Published As

Publication number Publication date
MY171481A (en) 2019-10-15
MX346795B (es) 2017-03-31
TW201415907A (zh) 2014-04-16
KR20140011473A (ko) 2014-01-28
CA3029323A1 (en) 2014-01-23
PH12017502273A1 (en) 2018-07-30
EP2874391A1 (en) 2015-05-20
PH12015500121A1 (en) 2015-03-16
US10277903B2 (en) 2019-04-30
MX368355B (es) 2019-09-30
US20180035114A1 (en) 2018-02-01
CN108235030B (zh) 2020-10-09
TW201709737A (zh) 2017-03-01
KR102165855B1 (ko) 2020-10-15
CN108055545B (zh) 2020-09-08
CA3029323C (en) 2020-03-24
PH12015500121B1 (en) 2015-03-16
ZA201501039B (en) 2019-07-31
EP2874391A4 (en) 2016-03-09
US20150181214A1 (en) 2015-06-25
CA2879440C (en) 2018-10-23
CN104641640A (zh) 2015-05-20
AU2013290950B2 (en) 2016-10-20
CA2879440A1 (en) 2014-01-23
US10356421B2 (en) 2019-07-16
RU2015104987A (ru) 2016-09-10
PH12017502274A1 (en) 2018-06-11
US20180014020A1 (en) 2018-01-11
AU2018201330B2 (en) 2019-02-07
SG10201703660TA (en) 2017-06-29
PH12017502268A1 (en) 2018-06-11
WO2014014251A1 (ko) 2014-01-23
MY184416A (en) 2021-04-01
US20180041761A1 (en) 2018-02-08
CN104641640B (zh) 2018-04-20
CN108055544A (zh) 2018-05-18
TW201826798A (zh) 2018-07-16
MX2015000763A (es) 2015-04-16
BR122019027914B1 (pt) 2021-06-08
RU2675154C1 (ru) 2018-12-17
CN108235036B (zh) 2020-10-09
CN108055546B (zh) 2020-09-22
CN108055546A (zh) 2018-05-18
CN108055544B (zh) 2020-09-08
CN108055545A (zh) 2018-05-18
RU2701080C1 (ru) 2019-09-24
JP2018152883A (ja) 2018-09-27
US10021399B2 (en) 2018-07-10
BR112015001111A2 (pt) 2017-06-27
JP6382807B2 (ja) 2018-08-29
PH12017502271A1 (en) 2018-06-11
AU2018201330A1 (en) 2018-03-15
AU2017200150A1 (en) 2017-02-02
CN108235030A (zh) 2018-06-29
TWI568248B (zh) 2017-01-21
TWI656786B (zh) 2019-04-11
MY201685A (en) 2024-03-13
US10362313B2 (en) 2019-07-23
US9787992B2 (en) 2017-10-10
SG11201500363QA (en) 2015-03-30
CN108235036A (zh) 2018-06-29
AU2017200150B2 (en) 2017-12-07
RU2643658C2 (ru) 2018-02-02
JP2015528250A (ja) 2015-09-24
AU2013290950A1 (en) 2015-03-05
BR112015001111B1 (pt) 2021-03-09
US20180035115A1 (en) 2018-02-01

Similar Documents

Publication Publication Date Title
TWI625962B (zh) 取樣自適應偏移解碼方法
TWI632805B (zh) 視訊解碼方法、視訊編碼方法、視訊解碼裝置、視訊編碼裝置以及非暫態的電腦可讀取儲存媒體
TWI532368B (zh) 視訊解碼裝置
TW201424397A (zh) 可調式視訊解碼、編碼方法及其裝置與非暫時性電腦可讀記錄體
TW201507439A (zh) 視訊編碼方法與裝置以及非暫時性電腦可讀記錄媒體
TWI661711B (zh) 視訊解碼方法、視訊編碼方法、裝置及非暫態電腦可讀儲存媒體