TWI847618B - 編碼器及相關的訊號處理方法 - Google Patents
編碼器及相關的訊號處理方法 Download PDFInfo
- Publication number
- TWI847618B TWI847618B TW112110815A TW112110815A TWI847618B TW I847618 B TWI847618 B TW I847618B TW 112110815 A TW112110815 A TW 112110815A TW 112110815 A TW112110815 A TW 112110815A TW I847618 B TWI847618 B TW I847618B
- Authority
- TW
- Taiwan
- Prior art keywords
- coding tree
- tree unit
- quantization
- circuit
- quantization parameter
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims description 7
- 238000013139 quantization Methods 0.000 claims abstract description 143
- 238000004364 calculation method Methods 0.000 claims abstract description 28
- 238000000034 method Methods 0.000 claims description 23
- 238000006243 chemical reaction Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000007423 decrease Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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 picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/1883—Methods 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 relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本發明揭露了一種編碼器,其包含有一量化電路、一編碼電路、一能量參數計算電路以及一量化參數決定電路。該量化電路用以對一影像資料中的多個編碼樹單元依序進行量化操作,以產生分別對應於該多個編碼樹單元的量化後資料。該編碼電路用以依序對該多個編碼樹單元的量化後資料進行編碼操作,以產生一編碼後資料。該能量參數計算電路用以接收該影像資料,並分別計算對應於該多個編碼樹單元的多個能量參數。該量化參數決定電路用以根據該多個能量參數的至少一部份,以分別決定出該多個編碼樹單元的多個量化參數,以供該量化電路使用。
Description
本發明係有關於視訊編碼器。
在編碼器中有關於位元率控制的操作中,一般可以分為固定位元率(constant bitrate,CBR)以及可變位元率(variable bitrate,VBR),其中固定位元率指的是編碼器的輸出位元率是一個固定值以方便在一個有限頻寬的通道內傳輸,而可變位元率則是編碼器的輸出位元率會隨著輸入源的訊號複雜度來進行調整,以維持輸出影像的品質。然而,由於編碼器中緩衝器的容量有限,故上述固定位元率或是可變位元率的控制方法在低延遲的應用中很難實現。具體來說,在對一圖框中每一個編碼樹單元(Coding Tree Unit,CTU)進行編碼的過程中,由於圖框內容的差異,編碼樹單元在編碼後的位元數會有很大的差異。例如具有複雜紋理(texture)的編碼樹單元在編碼後會具有高的位元數,而具有簡單紋理的編碼樹單元在編碼後會具有低的位元數。因此,若是具有複雜紋理的編碼樹單元在量化參數上的設定不恰當,則有可能會使得編碼樹單元在編碼後的位元數超出編碼器中緩衝器的容量上限,造成無法有效控制位元率(bitrate)的問題。
因此,本發明的目的之一在於提出一種編碼器及相關的訊號處理方法,其透過決定每一個編碼樹單元的量化參數以限制編碼樹單元在編碼後的位元數,並進而有效控制編碼器的輸出位元率,以解決先前技術中所述的問題。
在本發明的一實施例中,揭露了一種編碼器,其包含有一量化電路、一編碼電路、一能量參數計算電路以及一量化參數決定電路。該量化電路用以對一影像資料中的多個編碼樹單元依序進行量化操作,以產生分別對應於該多個編碼樹單元的量化後資料。該編碼電路用以依序對該多個編碼樹單元的量化後資料進行編碼操作,以產生一編碼後資料。該能量參數計算電路用以接收該影像資料,並分別計算對應於該多個編碼樹單元的多個能量參數。該量化參數決定電路用以根據該多個能量參數的至少一部份,以分別決定出該多個編碼樹單元的多個量化參數,以供該量化電路對該多個編碼樹單元依序進行量化操作時使用。
在本發明的一實施例中,揭露了一種應用於一編碼器的訊號處理方法,其包含有以下步驟:接收一影像資料,並分別計算對應於該影像資料中多個編碼樹單元的多個能量參數;根據該多個能量參數的至少一部份,以分別決定出該多個編碼樹單元的多個量化參數;使用該多個量化參數以依序對該多個編碼樹單元依序進行量化操作,以產生分別對應於該多個編碼樹單元的量化後資料;以及依序對該多個編碼樹單元的量化後資料進行編碼操作,以產生一編碼後資料。
100:編碼器
102:計算電路
110:轉換電路
120:量化電路
130:編碼電路
140:反量化電路
150:反轉換電路
152:計算電路
160:圖框緩衝器
170:預測電路
180:能量參數計算電路
190:量化參數決定電路
310,320,330:編碼樹單元群組
500~508:步驟
第1圖為根據本發明一實施例之編碼器的示意圖。
第2圖為編碼器所接收到之多個圖框及其編碼樹單元之能量參數計算的示意圖。
第3圖為編碼樹單元群組及不同編碼樹單元所採用之量化參數決定方法的示意圖。
第4圖為位元預算池與可借位元預算池的示意圖。
第5圖為根據本發明一實施例之應用於編碼器之訊號處理方法的流程圖。
第1圖為根據本發明一實施例之編碼器100的示意圖。如第1圖所示,編碼器100包含了一計算電路102、一轉換(transform)電路110、一量化電路120、一編碼電路130、一反量化電路140、一反轉換電路150、一計算電路152、一圖框緩衝器160、一預測電路170、一能量參數計算電路180及一量化參數決定電路190。在本實施例中,編碼器100係支援開放媒體聯盟(AOMedia)所制定的AV1視訊編碼格式,但本發明並不以此為限。
在編碼器100的主要操作中,預測電路170係用來接收外部的影像資料(影像圖框)以及編碼器100內部所產生的內插圖框或調整後影像資料,以產生預測影像資料,而計算電路102將影像資料與預測電路170所產生的預測影像資料相減以得到剩餘誤差資料。具體來說,預測電路170可以先將所接收到的圖框分割為多個區塊,並對該多個區塊進行圖框間預測(Inter-frame prediction)、圖框內預測(Intra-frame prediction)、運動估計(motion estimation)及/或運動補償(motion compensation),以產生預測影像資料,以供計算電路102計算出分別對應到多個
區塊的多個剩餘誤差資料。接著,轉換電路110將多個剩餘誤差資料進行離散餘弦變換(Discrete Cosine Transform,DCT),以將剩餘誤差資料轉換為頻域資料。接著,量化電路120對轉換電路110所產生的頻域資料進行量化操作以產生一量化後資料,其中每一個圖框的量化操作係對應到一量化參數,而量化後資料接著透過編碼電路130的處理產生一編碼後資料,並透過後端的通道傳送至一解碼器(未繪示)。此外,反量化電路140對量化電路120所產生的量化後資料進行反量化操作,而反轉換電路150對反量化電路140的輸出進行反轉換操作(反離散餘弦變換)以產生一反轉換後剩餘誤差資料。接著,計算電路152將反轉換電路150所產生的反轉換後剩餘誤差資料與預測電路170所產生的預測影像資料進行相加,以產生一調整後影像資料,並將調整後影像資料儲存至圖框緩衝器160中,以供預測電路170使用。
需注意的是,編碼器100中的計算電路102、轉換電路110、量化電路120、編碼電路130、反量化電路140、反轉換電路150、計算電路152、圖框緩衝器160及預測電路170的主要操作已為本領域具有通常知識者所熟知,且本發明的重點在於能量參數計算電路180及量化參數決定電路190,故以下的敘述主要針對能量參數計算電路180及量化參數決定電路190的內容來進行說明。
在AV1視訊編碼格式中,規定了多種不同大小的編碼單元(coding unit),其中最大的編碼單元可稱為編碼樹單元(CTU)或是超級區塊,其大小可以是128*128個像素值或是64*64個像素值。在能量參數計算電路180的操作中,能量參數計算電路180會計算出每一個圖框中每一個CTU的能量參數。舉例來說,參考第2圖所示,編碼器100所接收到的影像資料包含了多個圖框,例如圖示之具有播放順序序號(Picture Order Count,POC)1~12的圖框,且該多個圖框包含了
內圖框(Intra-frame,I-frame)與預測圖框(Predicted frame,P-frame)。針對內圖框中的每一個CTU,能量參數計算電路180可以計算出CTU中像素值的變異數(variance)以作為CTU的能量參數,其中變異數的計算可以透過將出CTU中像素值平方的均值減去像素值均值的平方,但本發明並不以此為限。此外,針對預測圖框中的每一個CTU,能量參數計算電路180可以根據CTU中像素值來計算出變異數與絕對差和(Sum of Absolute Difference,SAD),其中絕對差和是將CTU中每一個像素值與一參考圖框中對應的像素值相減後取絕對值,再進行加總而得到;且能量參數計算電路180接著將CTU中像素值的變異數與絕對差和進行加權相加,以得到預測圖框中CTU的能量參數。
在決定出CTU的能量參數後,量化參數決定電路190再根據CTU的能量參數以及其他相關資訊,以決定出量化參數以供量化電路120使用,以使用最適合的量化參數來對CTU進行量化操作。
具體來說,參考第3圖所示之圖框中多個CTU的示意圖,其中量化參數決定電路190會將多個CTU組成一個CTU群組,例如N*M個CTU構成一個群組,其中N、M可以是任何大於或等於2的值。在第3圖的範例中,係以4*4個CTU構成一個CTU群組來做為說明,其中CTU群組310係位於圖框的最左側,亦即CTU群組310的左側不具有其他的CTU。
如先前技術中所述,由於編碼器100中緩衝器的容量有限,故編碼器100在低延遲的應用中很容易因為CTU的紋理複雜而導致CTU在編碼後的位元數超出緩衝器的容量上限。為了解決此一問題,編碼器100的位元率控制係以每一列(row)為單位來進行,以使得每一列在編碼後的位元率/位元數控制在一個範
圍內,其中上述的“每一列”指的是一列CTU群組,亦即第3圖所示之CTU群組310、320、330、...、到圖框最右側的CTU群組;此外,量化參數決定電路190再根據每一列的位元率或是編碼後位元數來對每一個CTU進行量化參數的調整,以使得CTU在經過量化電路120以及編碼電路130的處理後所產生的編碼後資料的位元數不會超出緩衝器的容量。在本實施例中,量化電路120所使用的量化參數可以在0~255之間進行調整,且量化參數越小,量化電路120所產生之量化後資料在經過編碼電路130的編碼後會具有較大的資料量;類似地,量化參數越大,量化電路120所產生之量化後資料在經過編碼電路130的編碼後會具有較小的資料量,因此,透過調整量化參數可以有效地控制編碼電路130的位元率/輸出位元數。
具體來說,量化參數決定電路190針對不同CTU群組、或是CTU群組內的不同CTU可以有不同的量化參數決定方式。在本實施例中,CTU群組310中的第一行(column)的CTU可以採用列層級(row-level)量化參數決定方法,CTU群組310中其他行的CTU可以採用CTU層級(CTU-level)量化參數決定方法,CTU群組320、330中的第一行的CTU可以採用CTU群組層級(CTU set-level)量化參數決定方法,而CTU群組320、330中其他行的CTU可以採用CTU層級量化參數決定方法。上述三種量化參數決定方法的詳細內容如下所述。
在列層級量化參數決定方法中,針對CTU群組310中第一行的任一個CTU,可以根據此列在編碼後的目標位元數以及此列之CTU的能量參數平均值來計算出CTU的量化參數。舉例來說,CTU的量化參數可以使用以下公式來計算:current_row_qp=-53.65*log(target_row_size/avg_row_energy)+500;
其中current_row_qp為CTU群組310中第一行的任一個CTU所對應的量化參數,target_row_size為CTU群組310所屬列上所有CTU在編碼後之目標位元數的總和,且avg_row_energy為CTU群組310所屬列上CTU的能量參數平均值。
在CTU群組層級量化參數決定方法中,除了可以透過本身的能量參數之外,也會透過前一個CTU群組在編碼後所產生之編碼後資料的實際位元數來進行動態調整量化參數,其中“前一個CTU群組”指的是緊接於目前CTU群組左側的CTU群組。以第3圖所示之CTU群組310、320為例來進行說明,編碼器100會在內部的緩衝器建立如第4圖所示之一位元預算池(budget pool)以及一可借位元預算池(loan budget pool),其中位元預算池係為CTU群組310所屬列上所有CTU在編碼後之目標位元數的總和,亦即上述的target_row_size。可借位元預算池為CTU群組310在進行編碼時可以向其他CTU群組借用的位元數,其也可以根據上述target_row_size來進行估計,例如是target_row_size的八分之一。詳細來說,CTU群組310包含了16個CTU,而這16個CTU會依序進行編碼以產生對應的編碼後資料,在對CTU群組310進行編碼的過程中,編碼電路130會在位元預算池內分配一部份的位元數以供CTU群組310使用,而此一部份的位元數可稱為CTU群組310在進行編碼後的估計位元數。接著,若是CTU群組310在編碼後之編碼後資料的實際位元數超過了估計位元數,則需要向可借位元預算池中借用其中的位元數以填補超出的部分;而若是CTU群組310在編碼後之編碼後資料的實際位元數低於估計位元數,則可以將剩餘的位元數填入至可借位元預算池。此外,在CTU群組310完成編碼後,位元預算池會根據CTU群組310在編碼後的編碼後資料的實際位元數來更新其中的內容。
上述位元預算池或是可借位元預算池係可用來衡量目前CTU群組
310目前所使用的量化參數與理想量化參數之間的關係。具體來說,當CTU群組310中的16個CTU都完成編碼之後,若是可借位元預算池借出了位元數,或是CTU群組310完成編碼後的實際位元數高於估計位元數(位元預算池的剩餘位元數減少),則代表CTU群組310在透過量化電路120進行處理時所使用之量化參數整體來說偏小,故量化參數決定電路190會將下一個CTU群組(亦即CTU群組320)中第一行之CTU的量化參數增大;類似地,若是可借位元預算池的剩餘位元數增加了,或是CTU群組310完成編碼後的實際位元數低於估計位元數(位元預算池的剩餘位元數增加),則代表CTU群組310在透過量化電路120進行處理時所使用之量化參數整體來說偏大,故量化參數決定電路190會將下一個CTU群組(CTU群組320)中第一行之CTU的量化參數減小。在一實施例中,CTU群組320中第一行之CTU所使用的量化參數CTU_set_base_qp可以根據CTU群組310中第一行之CTU所使用的current_row_qp,再透過上述位元預算池或是可借位元預算池的內容來進行調整而得到。
在一實施例中,若是目前要進行編碼的CTU群組的能量參數相較於前一個CTU群組的能量參數出現大幅增加或是大幅減小的情形,則量化參數決定電路190可以另外根據目前要進行編碼的CTU群組的能量參數(例如,CTU群組320內之所有CTU的能量參數總和或是平均值)來進一步決定CTU群組320中第一行之CTU所使用的量化參數CTU_set_base_qp。具體來說,若是CTU群組的能量參數大於前一個CTU群組的能量參數加上一臨界值,則選擇前一個CTU群組的CTU_set_base_qp與第一個CTU群組之current_row_qp中較大者,來做為目前CTU群組的CTU_set_base_qp;以目前CTU群組是CTU群組330來做為說明,其CTU_set_base_qp則是CTU群組320的CTU_set_base_qp與CTU群組310的current_row_qp中的較大者。此外,若是CTU群組的能量參數小於前一個CTU群
組的能量參數減去一臨界值,則選擇前一個CTU群組的CTU_set_base_qp與第一個CTU群組之current_row_qp中較小者,來做為目前CTU群組的CTU_set_base_qp;以目前CTU群組是CTU群組330來做為說明,其CTU_set_base_qp則是CTU群組320的CTU_set_base_qp與CTU群組310的current_row_qp中的較小者。
在CTU層級量化參數決定方法中,其決定方法類似於上述的CTU群組層級量化參數決定方法,其可以透過建立位元預算池與可借位元預算池的方式來對CTU的量化參數進行調整。例如當目前CTU完成編碼之後,若是可借位元預算池借出了位元數、或是CTU完成編碼後的實際位元數高於估計位元數、或是位元預算池的剩餘位元數減少,則代表目前CTU在透過量化電路120進行處理時所使用之量化參數整體來說偏小,故量化參數決定電路190會將下一個CTU的量化參數增大,其中“下一個CTU”指的是緊接於目前CTU右側的CTU。類似地,若是可借位元預算池的剩餘位元數增加了、或是CTU完成編碼後的實際位元數低於估計位元數、或是位元預算池的剩餘位元數增加,則代表目前CTU在透過量化電路120進行處理時所使用之量化參數整體來說偏大,故量化參數決定電路190會將下一個CTU量化參數減小。在一實施例中,目前CTU所使用的量化參數可以根據前一個CTU所使用的量化參數,再透過上述位元預算池或是可借位元預算池的內容來進行調整而得到。
此外,量化參數決定電路190另外建立了兩個參數:base_bytes_per_energy與bytes_per_energy,其中base_bytes_per_energy表示單位能量參數所分配的位元數,而bytes_per_energy表示尚未進行編碼之CTU中單位能量參數所分配的位元數,其計算公式如下:
base_bytes_per_energy=target_row_size/total_row_energy;bytes_per_energy=left_row_size/left_row_energy;其中target_row_size為CTU群組310所屬列上所有CTU在編碼後之目標位元數總和,total_row_energy為CTU群組310所屬列上所有CTU的能量參數總和,left_row_size為CTU群組310所屬列上所有尚未進行編碼之CTU的目標位元數總和,left_row_energy為CTU群組310所屬列上所有尚未進行編碼之CTU的能量參數總和。
在一實施例中,針對一目前CTU,若是base_bytes_per_energy小於left_row_energy,則表示剩餘的位元數不夠充裕,亦即第4圖所示之位元預算池的剩餘位元數可能不足,故量化參數決定電路190不會增加目前CTU的量化參數(亦即,目前CTU的量化參數不會大於前一個CTU的量化參數)。
在一實施例中,若是目前要進行編碼的CTU的能量參數相較於前一個CTU的能量參數出現大幅增加或是大幅減小的情形,則量化參數決定電路190可以另外根據目前要進行編碼的CTU的能量參數來進一步決定其量化參數。具體來說,若是目前CTU的能量參數大於前一個CTU的能量參數加上一臨界值,則選擇目前CTU群組的CTU_set_base_qp與第一個CTU群組之current_row_qp中較大者,來做為目前CTU的量化參數;以目前CTU是CTU群組320內第三行的一CTU來做為說明,其量化參數是CTU群組320的CTU_set_base_qp與CTU群組310的current_row_qp中的較大者。此外,若是目前CTU的能量參數小於前一個CTU的能量參數減去一臨界值,則選擇目前CTU群組的CTU_set_base_qp與第一個CTU群組之current_row_qp中較小者,來做為目前CTU的量化參數;以目前CTU是CTU群組320內第三行的一CTU來做為說明,其量化參數是CTU群組320的
CTU_set_base_qp與CTU群組310的current_row_qp中的較小者。
第5圖為根據本發明一實施例之應用於編碼器之訊號處理方法的流程圖。參考以上第1~4圖之實施例所述的內容,訊號處理方法的流程如下所述。
步驟500:流程開始。
步驟502:接收一影像資料,並分別計算對應於該影像資料中多個編碼樹單元的多個能量參數。
步驟504:根據該多個能量參數的至少一部份,以分別決定出該多個編碼樹單元的多個量化參數。
步驟506:使用該多個量化參數以依序對該多個編碼樹單元依序進行量化操作,以產生分別對應於該多個編碼樹單元的量化後資料。
步驟508:依序對該多個編碼樹單元的量化後資料進行編碼操作,以產生一編碼後資料。
綜上所述,在本發明之編碼器及相關的操作中,透過將多個CTU組成CTU群組,再以一列CTU群組來進行目標位元數控制,可以有效地控制編碼器的位元率。此外,透過使用量化參數決定電路來針對不同的CTU採用不同的量化參數決定方式,可以讓每一個CTU具有最適合的量化參數,以使得編碼器的位元率控制更準確。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100:編碼器
102:計算電路
110:轉換電路
120:量化電路
130:編碼電路
140:反量化電路
150:反轉換電路
152:計算電路
160:圖框緩衝器
170:預測電路
180:能量參數計算電路
190:量化參數決定電路
Claims (9)
- 一種編碼器,包含有:一量化電路,用以對一影像資料中的多個編碼樹單元依序進行量化操作,以產生分別對應於該多個編碼樹單元的量化後資料;一編碼電路,用以依序對該多個編碼樹單元的量化後資料進行編碼操作,以產生一編碼後資料;一能量參數計算電路,用以接收該影像資料,並分別計算對應於該多個編碼樹單元的多個能量參數;以及一量化參數決定電路,用以根據該多個能量參數的至少一部份,以分別決定出該多個編碼樹單元的多個量化參數,以供該量化電路對該多個編碼樹單元依序進行量化操作時使用;其中針對每一個編碼樹單元,該能量參數計算電路計算該編碼樹單元內多個像素值的變異數,以供產生該編碼樹單元的能量參數。
- 如申請專利範圍第1項所述之編碼器,其中若是該影像資料屬於內圖框(Intra-frame,I-frame),則該能量參數計算電路根據該編碼樹單元內多個像素值的變異數以產生該編碼樹單元的能量參數;以及若是影像資料屬於預測圖框(Predicted frame,P-frame),則該能量參數計算電路另計算該編碼樹單元的像素值與一參考圖框中對應的像素值的絕對差和(Sum of Absolute Difference,SAD),並根據所計算出之變異數與絕對差和來計算出該編碼樹單元的能量參數。
- 一種編碼器,包含有: 一量化電路,用以對一影像資料中的多個編碼樹單元依序進行量化操作,以產生分別對應於該多個編碼樹單元的量化後資料;一編碼電路,用以依序對該多個編碼樹單元的量化後資料進行編碼操作,以產生一編碼後資料;一能量參數計算電路,用以接收該影像資料,並分別計算對應於該多個編碼樹單元的多個能量參數;以及一量化參數決定電路,用以根據該多個能量參數的至少一部份,以分別決定出該多個編碼樹單元的多個量化參數,以供該量化電路對該多個編碼樹單元依序進行量化操作時使用;其中該多個編碼樹單元係構成一圖框之一列(row)編碼樹單元群組,每一個編碼樹單元群組包含N*M個編碼樹單元,N、M為大於或等於2的正整數;以及針對每一個編碼樹單元,該量化參數決定電路根據該編碼樹單元在該列編碼樹單元群組中的位置,以決定採用一列層級量化參數決定方法、一編碼樹單元層級量化參數決定方法、或是一編碼樹單元群組層級量化參數決定方法,來計算出該編碼樹單元的量化參數。
- 如申請專利範圍第3項所述之編碼器,其中若是該編碼樹單元位於該列編碼樹單元群組的第一行(column),則該量化參數決定電路使用該列層級量化參數決定方法,以計算出該編碼樹單元的量化參數。
- 如申請專利範圍第4項所述之編碼器,其中該量化參數決定電路根據該列編碼樹單元群組在編碼後的目標位元數以及該列編碼樹單元群組之該多個編碼樹單元的能量參數平均值,以計算出該編碼樹單元的量化參數。
- 如申請專利範圍第3項所述之編碼器,其中若是該編碼樹單元位於該列編碼樹單元群組中除了第一個編碼樹單元群組以外所有編碼樹單元群組的第一行,則該量化參數決定電路使用該編碼樹單元群組層級量化參數決定方法,以計算出該編碼樹單元的量化參數。
- 如申請專利範圍第6項所述之編碼器,其中該編碼樹單元位於一第二編碼樹單元群組,且該第二編碼樹單元群組位於一第一編碼樹單元群組之後,該量化參數決定電路根據該第一編碼樹單元群組在編碼後的實際位元數以及編碼前的估計位元數,以決定出該編碼樹單元的量化參數。
- 如申請專利範圍第7項所述之編碼器,其中若是該編碼樹單元並非位於每一個編碼樹單元群組的第一行,則該量化參數決定電路使用該編碼樹單元層級量化參數決定方法,以計算出該編碼樹單元的量化參數。
- 一種應用於一編碼器的訊號處理方法,包含有:接收一影像資料,並分別計算對應於該影像資料中多個編碼樹單元的多個能量參數;根據該多個能量參數的至少一部份,以分別決定出該多個編碼樹單元的多個量化參數;使用該多個量化參數以依序對該多個編碼樹單元依序進行量化操作,以產生分別對應於該多個編碼樹單元的量化後資料;以及依序對該多個編碼樹單元的量化後資料進行編碼操作,以產生一編碼後資料; 其中分別計算對應於該影像資料中該多個編碼樹單元的該多個能量參數的步驟包含有:針對每一個編碼樹單元,計算該編碼樹單元內多個像素值的變異數,以供產生該編碼樹單元的能量參數。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/107,022 | 2023-02-08 | ||
US18/107,022 US12120311B2 (en) | 2023-02-08 | 2023-02-08 | Encoder and associated signal processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI847618B true TWI847618B (zh) | 2024-07-01 |
TW202433927A TW202433927A (zh) | 2024-08-16 |
Family
ID=92119315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112110815A TWI847618B (zh) | 2023-02-08 | 2023-03-23 | 編碼器及相關的訊號處理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US12120311B2 (zh) |
CN (1) | CN118474367A (zh) |
TW (1) | TWI847618B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200612756A (en) * | 2004-06-14 | 2006-04-16 | Monolith Co Ltd | Moving picture encoding method, and moving picture decoding method |
TW202239205A (zh) * | 2021-03-22 | 2022-10-01 | 瑞昱半導體股份有限公司 | 編碼器及相關的訊號處理方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10264257B2 (en) * | 2015-06-30 | 2019-04-16 | Texas Instruments Incorporated | Video encoding |
CN110933430B (zh) * | 2019-12-16 | 2022-03-25 | 电子科技大学 | 二次编码优化方法 |
-
2023
- 2023-02-08 US US18/107,022 patent/US12120311B2/en active Active
- 2023-03-23 TW TW112110815A patent/TWI847618B/zh active
- 2023-05-31 CN CN202310635710.0A patent/CN118474367A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200612756A (en) * | 2004-06-14 | 2006-04-16 | Monolith Co Ltd | Moving picture encoding method, and moving picture decoding method |
TW202239205A (zh) * | 2021-03-22 | 2022-10-01 | 瑞昱半導體股份有限公司 | 編碼器及相關的訊號處理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN118474367A (zh) | 2024-08-09 |
US20240267528A1 (en) | 2024-08-08 |
US12120311B2 (en) | 2024-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100484148B1 (ko) | 개선된 비트율 제어 방법과 그 장치 | |
CN1910934B (zh) | 自适应速率控制编码器 | |
JP3954136B2 (ja) | 画像シーケンスを表すディジタルデータの符号器の出力流量制御方法 | |
JPH05167998A (ja) | 画像の符号化制御処理方法 | |
JP2006333444A (ja) | ブロックベースのビデオエンコーダにおけるエンコーダ出力ビットレートを制御する方法、及び相応するビデオエンコーダ装置 | |
WO2009121234A1 (zh) | 一种视频压缩码率控制方法 | |
CN106937112A (zh) | 基于h.264视频压缩标准的码率控制方法 | |
CN104754335B (zh) | 一种视频编码码率控制方法 | |
CN104113761B (zh) | 一种视频编码中的码率控制方法及编码器 | |
CN101184239A (zh) | 一种恒定码率的控制方法 | |
CN100448295C (zh) | 一种低复杂度的积分码率控制方法 | |
TWI847618B (zh) | 編碼器及相關的訊號處理方法 | |
CN110971900A (zh) | 一种适用于4k、8k超高清运动平缓视频的码率控制方法 | |
JP4104066B2 (ja) | ビデオ情報複数同時符号化装置 | |
KR20040007818A (ko) | 동영상 부호화를 위한 dct연산량 조절 방법 및 그 장치 | |
TW202433927A (zh) | 編碼器及相關的訊號處理方法 | |
TWI774383B (zh) | 編碼器及相關的訊號處理方法 | |
RU2587412C2 (ru) | Управление скоростью передачи видео на основе гистограммы коэффициентов преобразования | |
JP4364350B2 (ja) | 可変レート動画像符号化装置 | |
CN112243129B (zh) | 视频数据处理方法、装置、计算机设备及存储介质 | |
WO2022198465A1 (zh) | 一种编码方法及装置 | |
JP3812269B2 (ja) | 動画像符号化装置及びその方法 | |
Tsai | Rate control for low-delay video using a dynamic rate table | |
TWI847619B (zh) | 編碼器及相關的訊號處理方法 | |
KR101197094B1 (ko) | H.264/avc를 위한 통계 모델 기반의 비트율 제어 방법 및 장치 |