TWI841500B - 圖像編碼裝置、圖像編碼方法及非暫時性記憶媒體 - Google Patents
圖像編碼裝置、圖像編碼方法及非暫時性記憶媒體 Download PDFInfo
- Publication number
- TWI841500B TWI841500B TW112140110A TW112140110A TWI841500B TW I841500 B TWI841500 B TW I841500B TW 112140110 A TW112140110 A TW 112140110A TW 112140110 A TW112140110 A TW 112140110A TW I841500 B TWI841500 B TW I841500B
- Authority
- TW
- Taiwan
- Prior art keywords
- block
- sub
- blocks
- segmentation
- unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 138
- 230000011218 segmentation Effects 0.000 claims abstract description 405
- 230000008569 process Effects 0.000 claims description 42
- 238000012545 processing Methods 0.000 abstract description 113
- 238000005192 partition Methods 0.000 description 113
- 230000033001 locomotion Effects 0.000 description 109
- 238000013139 quantization Methods 0.000 description 80
- 238000000638 solvent extraction Methods 0.000 description 78
- 238000010586 diagram Methods 0.000 description 71
- 238000006243 chemical reaction Methods 0.000 description 63
- 239000013598 vector Substances 0.000 description 54
- 238000007906 compression Methods 0.000 description 15
- 230000006835 compression Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 230000005236 sound signal Effects 0.000 description 13
- 238000012937 correction Methods 0.000 description 12
- 238000011156 evaluation Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000011664 signaling Effects 0.000 description 10
- 230000009466 transformation Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 6
- 238000001914 filtration Methods 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 4
- 238000009795 derivation Methods 0.000 description 4
- 238000010191 image analysis Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 101100537098 Mus musculus Alyref gene Proteins 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 101150095908 apex1 gene Proteins 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 229910003460 diamond Inorganic materials 0.000 description 3
- 239000010432 diamond Substances 0.000 description 3
- 238000003702 image correction Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000009792 diffusion process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 1
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 1
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical group COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Abstract
圖像編碼裝置是進行以下處理:將第1參數寫入位元流,該第1參數是從複數個分割模式之中識別用於將第1區塊分割成子區塊的分割模式;在已判斷為選擇第2分割模式,作為用來分割第2區塊的候選時,從包括第2分割模式來作為候選的複數個分割模式之中選擇分割模式,,並將顯示選擇結果的第2參數寫入位元流;在已判斷不選擇第2分割模式,來作為用來分割第2區塊的候選時,選擇分割模式,其中該分割模式是將區塊分割成子區塊,該子區塊和藉第2分割模式所產生的子區塊比較,為不同形狀或者不同尺寸;使用已選擇的分割模式,來將第2區塊切割成子區塊;以及將已被分割的區塊進行編碼。
Description
發明領域
本揭示是有關於一種用於利用區塊分割而將影像及圖像進行編碼及解碼之方法及裝置。
發明背景
在習知的圖像及影像編碼方法中,圖像一般是被分割成區塊,且以區塊等級進行編碼及解碼處理。在最近的影像規格的研發中,除了典型的8x8或者16x16尺寸外,還能以各種區塊尺寸來進行編碼及解碼處理。為了圖像的編碼及解碼處理,可使用從4x4迄至256x256之尺寸的範圍。
先行技術文獻
非專利文獻
非專利文獻1:H.265(ISO/IEC 23008-2 HEVC(High Efficiency Video Coding))
發明概要
發明欲解決之課題
為了表示從4x4迄至256x256之尺寸的範圍,區塊分割模式(例如四元樹、二元樹及三元樹)及如同分割旗標(例如***旗標(split flag))般的區塊分割資訊是用於區塊而被決定以及訊號化。如果分割深度增加,該訊號化的負擔(overhead)就會增加。接著,所增加的負擔會降低影像壓縮效率。
在此,本揭示一態樣的編碼裝置是提供在區塊分割資訊的編碼中可提昇壓縮效率的編碼裝置等。
用以解決課題的手段
本揭示一態樣的圖像編碼裝置是將圖像的區塊進行編碼的圖像編碼裝置,包含有處理器;及記憶體,前述處理器是使用前述記憶體,進行以下處理:將第1參數寫入位元流,其中該第1參數是從複數個分割模式之中,識別用來將第1區塊分割成子區塊的分割模式;判斷前述第1參數是否已識別第1分割模式;至少根據前述第1參數是否已識別前述第1分割模式的判斷,來判斷是否不選擇第2分割模式,來作為用來分割與前述第1區塊不同的第2區塊的候選;當已判斷選擇前述第2分割模式,來作為用來分割前述第2區塊的候選時,從包括前述第2分割模式來作為候選的複數個分割模式之中選擇分割模式,並將顯示選擇結果的第2參數寫入位元流;當已判斷不選擇前述第2分割模式,來作為用來分割前述第2區塊的候選時,選擇不同於前述第2分割模式的分割模式,且該分割模式是將區塊分割成子區塊,該子區塊是與藉前述第2分割模式所產生的子區塊比較,為不同形狀或者不同尺寸的子區塊;使用已選擇的前述分割模式,將前述第2區塊分割成子區塊;以及將已被分割的前述區塊進行編碼。
另,該等概括性或者是具體性的態樣,可以透過系統、方法、積體電路、電腦程式、或者電腦可讀取之CD-ROM等之記錄媒體來實現,也可以透過系統、方法、積體電路、電腦程式、及記錄媒體的任意組合來實現。
發明的效果
依本揭示,在區塊分割資訊的編碼中可將壓縮效率提昇。
較佳實施例之詳細說明
以下,針對實施形態,一邊參考圖式一邊具體地進行說明。
另,在以下所說明的實施形態每一個都是顯示概括性或具體性的例子。在以下的實施形態中所示的數值、形狀、材料、構成要素、構成要素的配置位置及連接形態、步驟、步驟的順序等都只是例示罷了,其旨趣並非是來限定請求的範圍。又,以下的實施形態中之構成要素之中,針對未記載於顯示最上位概念的獨立請求項之構成要素,是當做為任意的構成要素來說明的。
(實施形態1)
首先針對可適用後述的本揭示之各態樣中所說明的處理及/或構成之編碼裝置及解碼裝置的一例,說明實施形態1的概要。惟,實施形態1只不過是可適用本揭示之各態樣所說明之處理及/或構成的編碼裝置及解碼裝置之一例罷了,在本揭示所說明的處理及/或構成也可實施在與實施形態1不同的編碼裝置及解碼裝置中。
對於實施形態1,適用在本揭示之各態樣所說明的處理及/或構成時,例如亦可以進行以下任一種方式。
(1)對於實施形態1之編碼裝置或者解碼裝置,在構成該編碼裝置或者解碼裝置之複數個構成要素之中,將與本揭示的各態樣中所說明的構成要素對應的構成要素,替換成本揭示的各態樣中所說明的構成要素;
(2)對於實施形態1之編碼裝置或者解碼裝置,針對構成該編碼裝置或者解碼裝置之複數個構成要素之中一部分的構成要素,先施予功能或者欲實施之處理的追加、替換、刪除等之任意的變更後,再將與本揭示之各態樣中所說明的構成要素對應的構成要素,替換成本揭示之各態樣中所說明的構成要素;
(3)對於實施形態1之編碼裝置或者解碼裝置所要實施的方法,針對處理的追加、及/或該方法所含的複數個處理之中一部分的處理,先施予替換、刪除等之任意的變更後,再將與本揭示的各態樣中所說明的處理相對應的處理,替換成本揭示的各態樣中所說明的處理;
(4)將構成實施形態1之編碼裝置或者解碼裝置之複數個構成要素之中一部分的構成要素,和本揭示之各態樣中所說明的構成要素、具備本揭示之各態樣中所說明的構成要素所具備的功能之一部分之構成要素、或者要實施本揭示之各態樣中所說明之構成要素所要實施的處理之一部分的構成要素組合而實施;
(5)將具備構成實施形態1之編碼裝置或者解碼裝置之複數個構成要素之中一部分的構成要素所具備的功能之一部分的構成要素、或者實施構成實施形態1之編碼裝置或者解碼裝置之複數個構成要素之中一部分的構成要素所實施的處理之一部分的構成要素,和本揭示之各態樣中所說明之構成要素、具備在本揭示之各態樣中所說明之構成要素所具備的功能之一部分之構成要素、或者是實施本揭示之各態樣中所說明之構成要素所實施之處理之一部分的構成要素組合來實施;
(6)對於實施形態1之編碼裝置或者解碼裝置所要實施的方法,在該方法所含的複數個處理之中,將對應於本揭示之各態樣中所說明之處理的處理,替換成本揭示之各態樣中所要說明的處理;
(7)將實施形態1之編碼裝置或者解碼裝置所要實施的方法所含之複數個處理之中的一部分處理,和本揭示之各態樣中所說明之處理相組合來實施。
另,本揭示之各態樣中所說明之處理及/或構成的實施方式並不限於上述例子。例如,也可以實施在與實施形態1中所揭示之動態圖像/圖像編碼裝置或者是動態圖像/圖像解碼裝置不同的目的而被利用的裝置中,也可以單獨地實施已在各態樣中所說明之處理及/或構成。又,也可將已在不同的態樣中所說明的處理及/或構成組合來實施。
[編碼裝置的概要]
首先,說明實施形態1之編碼裝置的概要。圖1是顯示實施形態1之編碼裝置100之功能構成之方塊圖。編碼裝置100是以區塊單位而將動態圖像/圖像進行編碼之動態圖像/圖像編碼裝置。
如圖1所示,編碼裝置100是以區塊單位而將圖像進行編碼的裝置,包含有:分割部102、減法部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加法部116、區塊記憶體118、迴路濾波部120、訊框記憶體122、內預測部124、間預測部126、及預測控制部128。
編碼裝置100是例如藉通用處理器及記憶體來實現。此時,當儲存在記憶體的軟體程式藉由處理器來執行時,處理器是作為分割部102、減法部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加法部116、迴路濾波部120、內預測部124、間預測部126、及預測控制部128而發揮功能。又,編碼裝置100也可作對應於分割部102、減法部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加法部116、迴路濾波部120、內預測部124、間預測部126、及預測控制部128之專用的1個以上的電子電路來實現。
以下針對編碼裝置100所含的各構成要素進行說明。
[分割部]
分割部102是將輸入動態圖像所含之各圖片分割成複數個區塊,並將各區塊輸出至減法部104。例如,分割部102,首先將圖片分割成固定尺寸(例如128×128)之區塊。該固定尺寸的區塊有時亦被稱為編碼樹單元(CTU)。接著,分割部102根據遞迴性的四元樹(quadtree)及/或二元樹(binary tree)區塊分割,將固定尺寸的區塊之每一個分割成可變尺寸(例如64×64以下)的區塊。這個可變尺寸的區塊有時亦被稱為編碼單元(CU)、預測單元(PU)或者轉換單元(TU)。另,在本實施形態中,沒有區別CU、PU及TU的必要,也可以是圖片內的一部分或者全部的區塊成為CU、PU、TU的處理單位。
圖2是顯示實施形態1中的區塊分割一例之圖。在圖2中,實線是表示透過四元樹區塊分割所得到的區塊邊界,虛線是表示透過二元樹區塊分割所得到的區塊邊界。
在此,區塊10是128×128像素的正方形區塊(128×128區塊)。該128×128區塊10,首先是被分割成4個正方形的64×64區塊(四元樹區塊分割)。
左上的64×64區塊是進一步被垂直分割成2個矩形的32×64區塊,左邊的32×64區塊是進一步被垂直分割成2個矩形的16×64區塊(二元樹區塊分割)。其結果,左上的64×64區塊是被分割成2個16×64區塊11、12、及32×64區塊13。
右上的64×64區塊是被水平分割成2個矩形的64×32區塊14、15(二元樹區塊分割)。
左下的64×64區塊是被分割成4個正方形的32×32區塊(四元樹區塊分割)。4個32×32區塊之中,左上的區塊及右下的區塊被進一步分割。左上的32×32區塊是被垂直分割成2個矩形的16×32區塊,右邊的16×32區塊是進一步被水平分割成2個16×16區塊(二元樹區塊分割)。右下的32×32區塊是被水平分割成2個32×16區塊(二元樹區塊分割)。其結果,左下的64×64區塊是被分割成1個16×32區塊16、2個16×16區塊17、18、2個32×32區塊19、20、及2個32×16區塊21、22。
右下的64×64區塊23是不分割。
如上,在圖2中,區塊10是根據遞迴性的四元樹及二元樹區塊分割,而被分割成13個可變尺寸的區塊11至23。如此分割,有時亦被稱為QTBT(quad-tree plus binary tree)分割。
另,在圖2中,1個區塊是被分割成4個或者2個區塊(四元樹或者二元樹區塊分割),而分割並不限於此。例如,1個區塊也可被分割成3個區塊(三元樹區塊分割)。如此包括三元樹區塊分割的分割有時亦被稱為MBT(multi type tree)分割。
[減法部]
減法部104是以分割部102所分割的區塊單位,從原訊號(原樣本)減去預測訊號(預測樣本)。即,減法部104是算出編碼對象區塊(以下,稱為當前區塊)的預測誤差(也稱為殘差)。接著,減法部104將所算出的預測誤差輸出至轉換部106。
原訊號為編碼裝置100的輸入訊號,是表示構成動態圖像之各圖片的圖像之訊號(例如亮度(luma)訊號及2個色差(chroma)訊號)。在下面內容中,也將表示圖像的訊號稱為樣本。
[轉換部]
轉換部106是將空間區域的預測誤差轉換成頻率區域的轉換係數,且將轉換係數輸出至量化部108。具體來說,轉換部106,例如對於空間區域的預測誤差,進行已事先決定的離散餘弦轉換(DCT)或者離散正弦轉換(DST)。
另,轉換部106也可從複數個轉換型式之中適應性地選擇轉換型式,使用對應於所選擇的轉換型式之轉換基底函數(transform basis function),將預測誤差轉換成轉換係數。如此轉換有時亦被稱為EMT(explicit multiple core transform)或者AMT(adaptive multiple transform)。
複數個轉換型式,例如包括有DCT-II、DCT-V、DCT-VIII、DST-I及DST-VII。圖3是顯示對應於各轉換型式之轉換基底函數之表。在圖3中,N是顯示輸入像素的數量。從該等複數個轉換型式之中的轉換型式的選擇,例如也可依據預測的種類(內預測及間預測),也可依據內預測模式。
顯示是否適用如此的EMT或者AMT之資訊(例如被稱為AMT旗標)以及顯示所被選擇的轉換型式的資訊是以CU等級而被進行訊號化。另,該等資訊的訊號化沒有必要限定在CU等級,也可為其他等級(例如序列等級(sequence level)、圖片等級(picture level)、切片等級(slice level)、方塊(tile)等級或者CTU等級)。
又,轉換部106也可將轉換係數(轉換結果)再轉換。如此再轉換有時亦被稱為AST(adaptive secondary transform)或者NSST(non-separable secondary transform)。例如,轉換部106是依對應於內預測誤差之轉換係數的區塊所含之各個子區塊(例如4×4子區塊)進行再轉換。顯示是否適用NSST之資訊及有關於使用在NSST之轉換矩陣之資訊是以CU等級進行訊號化。另,該等資訊的訊號化沒有必要限定在CU等級,也可為其他等級(例如序列等級、圖片等級、切片等級、方塊等級或者CTU等級)。
在此,可分離(Separable)的轉換是指依方向分離輸入的維數,來進行數次轉換的方式,不可分離(Non-Separable)的轉換是指在輸入為多維時,將2以上的維度匯整,而視為1維,再一起進行轉換的方式。
例如,以不可分離的轉換之1例來說,可舉例有如下者:在輸入為4×4的區塊時,將該區塊視為具有16個要素之一個陣列,並對該陣列以16×16的轉換矩陣進行轉換處理。
又,同樣地,將4×4的輸入區塊視為如同具有16個要素之一整個陣列,之後對該陣列進行數次吉文斯旋轉(Givens rotation)之構成(Hypercube Givens Transform/超立方體吉文斯轉換),也是不可分離(Non- Separable)性轉換的例子。
[量化部]
量化部108是將從轉換部106所輸出的轉換係數進行量化。具體來說,量化部108是以預定的掃描順序來掃描當前區塊的轉換係數,根據對應於所掃描的轉換係數的量化參數(QP),而將該轉換係數進行量化。然後,量化部108將當前區塊之已量化的轉換係數(以下稱為量化係數)輸出至熵編碼部110及反量化部112。
預定的順序是轉換係數的量化/反量化之用的順序。例如,預定的掃描順序是以頻率的升冪排序(從低頻到高頻的順序)或者降冪排序(從高頻到低頻的順序)來定義。
量化參數是指定義量化步階(量化幅寬)的參數。例如,若量化參數的值增加時,量化步階也會增加。即,若量化參數的值增加,量化誤差也會變大。
[熵編碼部]
熵編碼部110是將從量化部108輸入的量化係數進行可變長度編碼,藉此產生編碼訊號(編碼位元流)。具體來說,熵編碼部110是例如將量化係數進行二值化,且將二值化訊號進行算術編碼。
[反量化部]
反量化部112是將量化係數進行反量化,該量化係數為來自量化部108的輸入。具體來說,反量化部112是以預定的掃描順序而將當前區塊的量化係數進行反量化。然後,反量化部112是將當前區塊的已反量化的轉換係數輸出至反轉換部114。
[反轉換部]
反轉換部114是將來自反量化部112之輸入的轉換係數進行反轉換,藉此將預測誤差復原。具體來說,反轉換部114是對轉換係數進行與轉換部106所進行的轉換對應之反轉換,藉此將當前區塊的預測誤差復原。然後,反轉換部114是將已復原的預測誤差輸出至加法部116。
另,已復原的預測誤差是因為量化的進行而失去了資訊,因此和減法部104所算出的預測誤差不一致。即,在已復原的預測誤差中含有量化誤差。
[加法部]
加法部116是將來自反轉換部114之輸入的預測誤差、與來自預測控制部128之輸入的預測樣本相加,藉此再構成當前區塊。然後,加法部116將已再構成的區塊輸出至區塊記憶體118及迴路濾波部120。再構成區塊有時也被稱為局部解碼區塊。
[區塊記憶體]
區塊記憶體118是用來儲存區塊的記憶體,其中該區塊為於內預測被參考的區塊,且為編碼對象圖片(以下稱為當前圖片)內的區塊。具體來說,區塊記憶體118是儲存從加法部116所輸出的再構成區塊。
[迴路濾波部]
迴路濾波部120是對透過加法部116而再構成的區塊施加迴路濾波,且將已濾波的再構成區塊輸出至訊框記憶體122。迴路濾波是指在編碼迴路內所使用的濾波器(迴路內濾波器),例如包括解區塊濾波器(DF)、樣本適應性偏移(SAO)及適應性迴路濾波器(ALF)等。
在ALF中,適用用來移除編碼變形的最小平方誤差濾波器,例如按當前區塊內的各個2×2子區塊,根據局部性的梯度(gradient)的方向及活性度(activity),適用從複數個濾波器之中所選擇的1個濾波器。
具體來說,首先子區塊(例如2×2子區塊)被分類成複數個類別(例如15或者25類)。子區塊的分類是根據梯度的方向及活性度來進行。例如,使用梯度的方向值D(例如0至2或者0至4)與梯度的活性值A(例如0至4),而算出分類值C(例如C=5D+A)。然後,根據分類值C,使子區塊被分類成複數個類別(例如15或者25類)。
梯度的方向值D,例如是藉由比較複數個方向(例如水平、垂直及2個對角方向)的梯度來導出。又,梯度的活性值A,例如是藉由將複數個方向的梯度相加,將加法結果進行量化來導出。
根據如此分類的結果,從複數個濾波器之中,決定子區塊用的濾波器。
以於ALF所使用的濾波器的形狀來說,例如利用圓對稱形狀。如圖4A至圖4C是顯示ALF所使用的濾波器的形狀的複數例之圖。圖4A顯示5×5菱形形狀濾波器,圖4B顯示7×7菱形形狀濾波器,圖4C顯示9×9菱形形狀濾波器。顯示濾波器的形狀之資訊是以圖片等級來被進行訊號化。另,顯示濾波器的形狀之資訊的訊號化並不須限定在圖片等級,也可為其他等級(例如序列等級、切片等級、方塊等級、CTU等級或者CU等級)。
ALF的開啟/關閉,例如是以圖片等級或者CU等級來決定。例如,針對亮度,是以CU等級來決定是否適用ALF,針對色差,是以圖片等級來決定是否適用ALF。顯示ALF的開啟/關閉的資訊,是以圖片等級或者CU等級來進行訊號化。另,顯示ALF的開啟/關閉的資訊,並無須限定在圖片等級或者CU等級,也可為其他等級(例如序列等級、切片等級、方塊等級、或者CTU等級)。
可選擇的複數個濾波器(例如迄至15或25的濾波器)的係數集是以圖片等級進行訊號化。另,係數集的訊號化並無須限定在圖片等級,也可為其他等級(例如序列等級、切片等級、方塊等級、CTU等級、CU等級或者是子區塊等級)。
[訊框記憶體]
訊框記憶體122是一種用來儲存被使用在間預測的參考圖片之記憶部,有時也被稱為訊框緩衝器。具體來說,訊框記憶體122是儲存已經由迴路濾波部120過濾的再構成區塊。
[內預測部]
內預測部124是藉由參考區塊記憶體118所儲存的當前圖片內的區塊,進行當前區塊的內預測(也稱為畫面內預測),以產生預測訊號(內預測訊號)。具體來說,內預測部124是藉由參考鄰接於當前區塊之區塊的樣本(例如亮度值、色差值)進行內預測,以產生內預測訊號,且將內預測訊號輸出至預測控制部128。
例如,內預測部124利用已事先規定的複數個內預測模式之中的1個,來進行內預測。複數個內預測模式是包括1個以上的非方向性預測模式、及複數個方向性預測模式。
1個以上的非方向性預測模式,例如包括以H.265/HEVC(High-Efficiency Video Coding/高效率視訊編碼)規格(非專利文獻1)所規定的平面(Planar)預測模式及直流(DC)預測模式。
複數個方向性預測模式, 例如包括以H.265/ HEVC規格所規定的33種方向的預測模式。另,複數個方向性預測模式,除了33種方向外,也可進一步包括32種方向的預測模式(合計共65種方向性預測模式)。圖5A是顯示內預測中的67種內預測模式(2個非方向性預測模式及65個方向性預測模式)之圖。實線箭頭符號是表示以H.265/HEVC規格所規定的33種方向,虛線箭頭符號是表示所追加的32種方向
另,在色差區塊的內預測中,亮度區塊也可被參考。即,根據當前區塊的亮度成分,當前區塊的色差成分也可被預測。如此之內預測有時被稱為CCLM (cross- component linear model)預測。像這種參考亮度區塊之色差區塊的內預測模式(例如被稱為CCLM模式),也可作為1種色差區塊的內預測模式而加入。
內預測部124,也可根據水平/垂直方向的參考像素的梯度,來補正內預測後的像素值。像這樣伴隨著補正的內預測有時被稱為PDPC(position dependent intra prediction combination)。顯示有無PDPC的適用之資訊(例如被稱為PDPC旗標),例如是以CU等級而被進行訊號化。另,該資訊的訊號化並無須限定在CU等級,也可為其他等級(例如序列等級、圖片等級、切片等級、方塊等級、或者CTU等級)。
[間預測部]
間預測部126是參考參考圖片,來進行當前區塊的間預測(也叫做畫面間預測),以此產生預測訊號(間預測訊號),其中該參考圖片是訊框記憶體122所儲存的參考圖片,且為與當前圖片相異的參考圖片。間預測是以當前區塊或者當前區塊內的子區塊(例如4×4區塊)的單位來進行。例如,間預測部126是針對當前區塊或者子區塊,在參考圖片內進行移動估測(motion estimation)。接著,間預測部126是利用藉移動估測而得到的移動資訊(例如移動向量)來進行移動補償,以此產生當前區塊或者子區塊的間預測訊號。然後,間預測部126是將所產生的間預測訊號輸出至預測控制部128。
用於移動補償的移動資訊被進行訊號化。對於移動向量的訊號化,移動向量預測子(motion vector predictor)也可被使用。即,移動向量與移動向量預測子之間的差分也可被訊號化。
另,不僅使用透過移動估測所得到的當前區塊的移動資訊,也可使用鄰接區塊的移動資訊,來產生間預測訊號。具體來說,也可將根據透過移動估測所得到的移動資訊之預測訊號、與根據鄰接區塊的移動資訊之預測訊號予以加權加總,藉此以當前區塊內的子區塊單位來產生間預測訊號。如此之間預測(移動補償)有時被稱為OBMC (overlapped block motion compensation)。
在如此之OBMC模式中,顯示OBMC用的子區塊的尺寸之資訊(例如被稱為OBMC區塊尺寸)是以序列等級而被訊號化。又,顯示是否適用OBMC模式之資訊(例如被叫做OBMC旗標)是以CU等級而被訊號化。另,該等資訊的訊號化的等級並無須限定在序列等級及CU等級,也可為其他等級(例如圖片等級、切片等級、方塊等級、CTU等級、或者子區塊等級)。
針對OBMC模式,更具體地來進行說明。圖5B及圖5C是用來說明OBMC處理所進行的預測圖像補正處理的概要之流程及概念圖。
首先,使用被分配到編碼對象區塊之移動向量(MV),取得依通常的移動補償所得到之預測圖像(Pred)。
其次,將已編碼完畢的左鄰接區塊的移動向量(MV_L)適用在編碼對象區塊,取得預測圖像(Pred_L),將前述預測圖像與Pred_L加權、疊合,以此進行預測圖像的第1次補正。
以同樣方式,將已編碼完畢之上鄰接區塊的移動向量(MV_U)適用在編碼對象區塊,取得預測圖像 (Pred_U),將前述已進行第1次補正的預測圖像與Pred_U賦予權重、疊合,以此進行預測圖像的第2次補正,將此作為最後的預測圖像。
另,在此說明了使用左鄰接區塊與上鄰接區塊的2階段補正的方法,但也能作成如下構成,即,使用右鄰接區塊或下鄰接區塊,進行比2階段更多次數的補正之構成。
另,進行疊合的區域,也可為僅只區塊邊界附近之一部分的區域,而非區塊整體的像素區域。
另,在此雖是針對來自1張參考圖片的預測圖像補正處理進行說明,但是在從複數張參考圖片來補正預測圖像的情況也是同樣的方式,從各參考圖片取得已補正的預測圖像後,將所得到的預測圖像進一步疊合,以此作為最後的預測圖像。
另,前述處理對象區塊也可為預測區塊單位,也可為將預測區塊進一步加以分割的子區塊單位。
作為判定是否適用OBMC處理的方法,例如有一種使用obmc_flag之方法,該obmc_flag是顯示是否適用OBMC處理的訊號。以一具體例來說,在編碼裝置中,判定編碼對象區塊是否屬於移動為複雜的區域,在屬於移動為複雜的區域時,設定值為1來作為obmc_flag,適用OBMC處理進行編碼,在不屬於移動為複雜的區域時,則設定值為0來作為obmc_flag,不適用OBMC處理來進行編碼。另一方面,在解碼裝置中,將記述在串流的obmc_flag解碼,以此因應該值,切換是否適用OBMC處理,來進行解碼。
另,移動資訊也可不被訊號化,而在解碼裝置側導出。例如也可採用來H.265/HEVC規格所規定的合併(merge)模式。又,例如也可於解碼裝置側進行移動估測,藉此導出移動資訊。此時,不使用當前區塊的像素值而進行移動估測。
在此,針對在解碼裝置側進行移動估測之模式來說明。在該解碼裝置側進行移動估測的模式有時被稱為PMMVD(pattern matched motion vector derivation)模式或者FRUC(frame rate up-conversion)模式。
FRUC處理之一例是顯示在圖5D中。首先,參考空間上或時間上鄰接於當前區塊的編碼完畢區塊之移動向量,產生複數個候選的清單(也可與合併清單為共通),該複數個候選的清單各自具有預測移動向量。其次,從已登錄在候選清單的複數個候選MV之中選擇最佳候選MV。例如,算出候選清單所含之各候選的評價值,根據評價值,而選擇1個候選。
接著,根據所選擇的候選之移動向量,導出當前區塊用的移動向量。具體來說,例如將所選擇的候選之移動向量(最佳候選MV),就這樣導出來作為當前區塊用的移動向量。又,例如在參考圖片內之位置的周邊區域中進行圖案匹配,藉此也可以導出當前區塊用的移動向量,其中該參考圖片是對應於所選擇之候選的移動向量。即,對於最佳候選MV之周邊的區域,以同樣的方法進行搜索,進而有評價值為好的數字之MV時,將最佳候選MV更新為前述MV,將該MV當做為當前區塊之最後的MV亦可。另,也可做成不實施該處理之構成。
在以子區塊單位進行處理時,也可構成為完全同樣的處理。
另,評價值是可透過對應於移動向量之參考圖片內的區域、與預定區域之間的圖案匹配,來求取再構成圖像的差分值,藉此而算出。另,除了差分值外,也可使用除此以外的資訊,來算出評價值。
對於圖案匹配,是使用第1圖案匹配或者第2圖案匹配。第1圖案匹配及第2圖案匹配,有時分別被稱為雙向匹配(bilateral matching)以及模板匹配(template matching)。
在第1圖案匹配中,是在2個區塊之間進行圖案匹配,該2個區塊是不同的2個參考圖片內的2個區塊,且是沿著當前區塊的移動軌跡(motion trajectory)。因此,在第1圖案匹配中,是使用沿著當前區塊的移動軌跡的其他參考圖片內之區域,來作為算出上述候選的評價值之用的預定區域。
圖6是用來說明在沿著移動軌跡的2個區塊間之圖案匹配(雙向匹配)一例之圖。如圖6所示,在第1圖案匹配下,在沿著當前區塊(Cur block)的移動軌跡之2個區塊,且為不同的2個參考圖片(Ref0、Ref1)內的2個區塊之配對(pair)之中,搜索最為相配的配對,藉此導出2個移動向量(MV0、MV1)。具體來說,對於當前區塊,導出以候選MV所指定的第1編碼完畢參考圖片(Ref0)內的指定位置中之再構成圖像、與已將前述候選MV以顯示時間間隔進行定標(scaling)的對稱MV所指定的第2編碼完畢參考圖片(Ref1)內的指定位置中之再構成圖像間之差分,使用所得到的差分值來算出評價值。在複數個候選MV之中,選擇評價值為最佳值的候選MV,來作為最後MV即可。
在連續的移動軌跡的假設之下,指示2個參考區塊的移動向量(MV0、MV1)是相對於當前圖片(Cur Pic)與2個參考圖片(Ref0、Ref1)間之時間上的距離(TD0、TD1)成比例。例如,當前圖片是時間上位於2個參考圖片之間,在從當前圖片到2個參考圖片的時間上的距離相等時,在第1圖案匹配上,能導出鏡射對稱的雙向之移動向量。
在第2圖案匹配上,在當前圖片內的模板(在當前圖片內鄰接於當前區塊的區塊(例如上及/或左鄰接區塊))與參考圖片內的區塊之間,進行圖案匹配。因此,在第2圖案匹配上,使用鄰接於當前圖片內的當前區塊的區塊,以作為上述之候選的評價值之算出用的預定區域。
圖7是用來說明在當前圖片內的模板(Template)與參考圖片內的區塊之間的圖案匹配(模板匹配)一例之圖。如圖7所示,在第2圖案匹配中,在參考圖片(Ref0)內搜索在當前圖片(Cur Pic)內和鄰接於當前區塊(Cur block)之區塊最匹配的區塊,藉此導出當前區塊的移動向量。具體來說,對於當前區塊,導出:左鄰接及上鄰接兩邊或者任一邊的編碼完畢區域的再構成圖像、與以候選MV所指定的編碼完畢參考圖片(Ref0)內的同等位置中的再構成圖像間之差分,且使用所得到的差分值,算出評價值,在複數個候選MV之中選擇評價值為最佳之值的候選MV,來作為最佳候選MV即可。
如此之顯示是否適用FRUC模式之資訊(例如被稱為FRUC旗標)是以CU等級而被訊號化。又,在適用FRUC模式時(例如FRUC旗標為真時),顯示圖案匹配之方法(第1圖案匹配或者第2圖案匹配)之資訊(例如被稱為FRUC模式旗標)是以CU等級而被訊號化。另,該等資訊之訊號化並不須限定於CU等級,也可為其他等級(例如序列等級、圖片等級、切片等級、方塊等級、CTU等級或者子區塊等級)。
在此,針對根據模型來導出移動向量的模式進行說明,其中該模型為假設為等速直線運動之模型。該模式有時被稱為BIO (bi-directional optical flow,雙向光流)模式。
圖8是用來說明假設為等速直線運動的模型之圖。在圖8中,(v
x,v
y)是表示速度向量,τ
0、τ
1各表示為當前圖片 (Cur Pic)與2個參考圖片(Ref
0,Ref
1)間的時間上的距離。(MVx
0,MVy
0)是表示對應於參考圖片Ref
0之移動向量,(MVx
1、MVy
1)是表示對應於參考圖片Ref
1之移動向量。
此時,速度向量(v
x,v
y)在等速直線運動的假設之下,(MVx
0,MVy
0)及(MVx
1,MVy
1)各表示為(v
xτ
0,v
yτ
0)及(-v
xτ
1,-v
yτ
1),使以下的光流等式(1)成立。
(數1)
在此,I
(k)是表示移動補償後之參考圖像k(k=0,1)的亮度值。該光流等式是顯示(i)亮度值的時間微分、(ii)水平方向的速度及參考圖像的空間梯度的水平成分的乘積、與(iii)垂直方向的速度及參考圖像的空間梯度的垂直成分的乘積之和等於零者。根據該光流等式與埃爾米特插值(Hermite interpolation)之組合,將從合併清單等所得到的區塊單位之移動向量以像素單位進行補正。
另,也能以異於根據假設等速直線運動之模型之移動向量的導出之方法,在解碼裝置側導出移動向量。例如,也可根據複數個鄰接區塊的移動向量,以子區塊單位導出移動向量。
在此,針對根據複數個鄰接區塊的移動向量,以子區塊單位導出移動向量的模式進行說明。該模式有時被稱為仿射移動補償預測(affine motion compensation prediction)模式。
圖9A是用來說明子區塊單位的移動向量之導出之圖,該導出是根據複數個鄰接區塊的移動向量來進行。在圖9A中,當前區塊含有16個4×4子區塊。在此,根據鄰接區塊的移動向量,導出當前區塊的左上角控制點的移動向量v
0,且根據鄰接子區塊的移動向量,導出當前區塊的右上角控制點的移動向量v
1。接著,使用2個移動向量v
0及v
1,經由以下的式(2),而導出當前區塊內的各子區塊的移動向量(v
x,v
y)。
(數2)
在此,x及y各表示子區塊的水平位置及垂直位置,w表示已事先訂定的權重係數。
在如此之仿射移動補償預測模式中,也可包括左上及右上角控制點的移動向量之導出方法相異之幾個模式。顯示如此之仿射移動補償預測模式之資訊(例如被稱為仿射旗標)是以CU等級而被進行訊號化。另,該顯示仿射移動補償預測模式之資訊的訊號化無須限定在CU等級,也可為其他等級(例如序列等級、圖片等級、切片等級、方塊等級、CTU等級或者子區塊等級)。
[預測控制部]
預測控制部128是選擇內預測訊號及間預測訊號之任一種,且將所選擇的訊號作為預測訊號,而輸出至減法部104及加法部116。
在此,說明經由合併模式而導出編碼對象圖片的移動向量之例。圖9B是用來說明藉合併模式進行之移動向量導出處理之概要之圖。
首先,產生已登錄預測MV之候選的預測MV清單。以預測MV的候選來說,包括有:空間鄰接預測MV,是編碼對象區塊之空間上位於周邊的複數個編碼完畢區塊所具有之MV;時間鄰接預測MV,是投影到編碼完畢參考圖片中的編碼對象區塊之位置的附近區塊所具有的MV;結合預測MV,是組合空間鄰接預測MV及時間鄰接預測MV之MV值而產生的MV;以及零預測MV,其值為零的MV等。
其次,從已登錄在預測MV清單的複數個預測MV之中,選擇1個預測MV,以此將之決定作為編碼對象區塊的MV。
進而,在可變長度編碼部中,將merge_idx記述在串流中,並進行編碼,其中該merge_idx是顯示已選擇哪一預測MV之訊號。
另,登錄在圖9B中所說明之預測MV清單之預測MV只是一個例子,也可為和圖中的個數不同的個數,或者不含圖中的預測MV之一部分的種類之構成,或者追加了圖中的預測MV之種類以外的預測MV之構成。
另,也可使用藉合併模式所導出之編碼對象區塊的MV,進行後述的DMVR處理,藉此來決定最後的MV。
在此,針對使用DMVR處理來決定MV之例進行說明。
圖9C是用來說明DMVR處理的概要之概念圖。
首先,以已設定於處理對象區塊的最適合的MVP作為候選MV來說,依照前述候選MV,從L0方向的處理完畢圖片即第1參考圖片、及L1方向之處理完畢圖片即第2參考圖片,分別取得參考像素,取各參考像素的平均,以此產生模板。
其次,使用前述模板,分別搜索第1參考圖片及第2參考圖片的候選MV之周邊區域,將成本為最小的MV決定作為最後的MV。另,成本值是利用模板的各像素值與搜索區域的各像素值之差分值及MV值等來算出。
另,在編碼裝置及解碼裝置中,在此所說明的處理之概要基本上是共通的。
另,就算不是在此所說明的處理內容,只要是能搜索候選MV的周邊而導出最後的MV之處理,也可使用其他處理。
在此,針對使用LIC處理來產生預測圖像的模式進行說明。
圖9D是用來說明使用依LIC處理之亮度補正處理的預測圖像產生方法之概要之圖。
首先,從參考圖片導出MV,其中該參考圖片是編碼完畢圖片,該MV是用來取得對應於編碼對象區塊之參考圖像。
其次,對於編碼對象區塊,利用左鄰接及上鄰接之編碼完畢周邊參考區域的亮度像素值、與位於以MV所指定的參考圖片內之同等位置之亮度像素值,擷取顯示亮度值在參考圖片與編碼對象圖片是如何變化的資訊,而算出亮度補正參數。
對於以MV所指定的參考圖片內之參考圖像,使用前述亮度補正參數,進行亮度補正處理,以此產生相對於編碼對象區塊之預測圖像。
另,圖9D中的前述周邊參考區域的形狀只是其中一例而已,也可使用除此以外的形狀。
又,在此已針對從1張參考圖片來產生預測圖像的處理進行說明,但從複數張的參考圖片來產生預測圖像的情況也是同樣,先對已從各個參考圖片取得的參考圖像,以同樣的方法進行亮度補正處理,之後再產生預測圖像。
以判定是否適用LIC處理之方法來說,例如有使用lic_flag之方法,該lic_flag是顯示是否適用LIC處理的訊號。以具體的一例來說,在編碼裝置中,判定編碼對象區塊是否為屬於發生亮度變化之區域,若為屬於發生亮度變化的區域時,對lic_flag設定其值為1,適用LIC處理而進行編碼,若不屬於發生亮度變化之區域時,則對lic_flag設定其值為0,不適用LIC處理而進行編碼。另一方面,在解碼裝置中,將記述於串流之lic_flag進行解碼,以此因應該值來切換是否適用LIC處理,而進行解碼。
以判定是否適用LIC處理之另一方法來說,例如還有如下方法,該方法是依照在周邊區塊是否適用過LIC處理而判定。以具體的一例來說,編碼對象區塊為合併模式時,判定在於合併模式處理中的MV之導出時所選擇的周邊的編碼完畢區塊是否適用LIC處理而進行編碼,因應該結果,切換是否適用LIC處理,而進行編碼。另,在該例的情況,解碼中的處理也是完全相同。
[解碼裝置的概要]
其次,針對解碼裝置之概要進行說明,該解碼裝置可將從上述編碼裝置100所輸出的編碼訊號(編碼位元流)進行解碼。圖10是顯示實施形態1之解碼裝置200的功能構成之方塊圖。解碼裝置200是以區塊單位而將動態圖像/圖像進行解碼的動態圖像/圖像解碼裝置。
如圖10所示,解碼裝置200包含有:熵解碼部202、反量化部204、反轉換部206、加法部208、區塊記憶體210、迴路濾波部212、訊框記憶體214、內預測部216、間預測部218、及預測控制部220。
解碼裝置200,例如可透過通用處理器及記憶體來實現。此時,記憶體所儲存的軟體程式經由處理器來執行時,處理器是作為熵解碼部202、反量化部204、反轉換部206、加法部208、迴路濾波部212、內預測部216、間預測部218、及預測控制部220而運作。又,解碼裝置200也可作為對應於熵解碼部202、反量化部204、反轉換部206、加法部208、迴路濾波部212、內預測部216、間預測部218、及預測控制部220之專用的1個以上的電子電路而附諸實現。
以下,針對解碼裝置200所含之各構成要素予以說明。
[熵解碼部]
熵解碼部202是將編碼位元流進行熵解碼。具體來說,熵解碼部202是例如進行從編碼位元流變成二值訊號的算術解碼。接著,熵解碼部202將二值訊號進行反二值化(debinarize)。藉此,熵解碼部202是以區塊單位而將量化係數輸出至反量化部204。
[反量化部]
反量化部204是將解碼對象區塊(以下稱為當前區塊)的量化係數進行反量化,其中該解碼對象區塊為來自熵解碼部202的輸入。具體來說,反量化部204是針對當前區塊的量化係數之各個,根據對應於該量化係數之量化參數,而將該量化係數進行反量化。然後,反量化部204是將當前區塊的已反量化之量化係數(即轉換係數)輸出至反轉換部206。
[反轉換部]
反轉換部206是將轉換係數進行反轉換,藉此將預測誤差復原,其中該轉換係數為來自反量化部204之輸入。
例如已從編碼位元流解讀的資訊是顯示適用EMT或者AMT的時候(例如AMT旗標為真),反轉換部206是根據顯示所解讀的轉換型式的資訊,將當前區塊的轉換係數進行反轉換。
又,例如已從編碼位元流解讀的資訊是顯示適用NSST的時候,反轉換部206是對轉換係數適用反再轉換。
[加法部]
加法部208是將預測誤差與預測樣本相加,藉此再構成當前區塊,其中該預測誤差是來自反轉換部206之輸入,該預測樣本是來自預測控制部220之輸入。然後,加法部208是將已再構成的區塊輸出至區塊記憶體210及迴路濾波部212。
[區塊記憶體]
區塊記憶體210是用來儲存在內預測中被參考的區塊且為解碼對象圖片(以下稱為當前圖片)內的區塊之記憶部。具體來說,區塊記憶體210是儲存從加法部208所輸出的再構成區塊。
[迴路濾波部]
迴路濾波部212是對已經由加法部208而再構成的區塊施行迴路濾波,且將已濾波的再構成區塊輸出至訊框記憶體214及顯示裝置等。
顯示已從編碼位元流解讀之ALF之開啟/關閉的資訊是顯示ALF之開啟的時候,根據一部分的梯度的方向及活性度,從複數個濾波器之中,選擇1個濾波器,將所選擇的濾波器適用於再構成區塊。
[訊框記憶體]
訊框記憶體214是用來儲存使用在間預測的參考圖片之記憶部,有時候也被稱為訊框緩衝器。具體來說,訊框記憶體214是儲存經由迴路濾波部212所濾波的再構成區塊。
[內預測部]
內預測部216是根據已從編碼位元流解讀的內預測模式,參考區塊記憶體210所儲存的當前圖片內的區塊,來進行內預測,以此產生預測訊號(內預測訊號)。具體來說,內預測部216是參考鄰接於當前區塊的區塊之樣本(例如亮度值、色差值)來進行內預測,以此產生內預測訊號,且將內預測訊號輸出至預測控制部220。
另,在色差區塊的內預測中,選擇了參考亮度區塊的內預測模式時,內預測部216也可根據當前區塊的亮度成分,預測當前區塊的色差成分。
又,在已從編碼位元流解讀的資訊顯示PDPC的適用時,內預測部216是根據水平/垂直方向的參考像素的梯度,來補正內預測後的像素值。
[間預測部]
間預測部218是參考訊框記憶體214所儲存的參考圖片,來預測當前區塊。預測是以當前區塊或者當前區塊內的子區塊(例如4×4區塊)的單位進行。例如,間預測部218是使用已從編碼位元流解讀的移動資訊(例如移動向量)來進行移動補償,以此產生當前區塊或者子區塊的間預測訊號,且將間預測訊號輸出至預測控制部220。
另,在已從編碼位元流解讀的資訊是顯示適用OBMC模式時,間預測部218不只是利用經由移動估測而得到的當前區塊的移動資訊,還利用鄰接區塊的移動資訊,產生間預測訊號。
又,在已從編碼位元流解讀的資訊是顯示適用FRUC模式時,間預測部218是依照已從編碼流解讀的圖案匹配的方法(雙向匹配或者模板匹配)來進行移動估測,藉此導出移動資訊。然後,間預測部218是使用所導出的移動資訊,來進行移動補償。
又,間預測部218是適用BIO模式時,根據假設等速直線運動之模型,導出移動向量。又,在已從編碼位元流解讀的資訊顯示適用仿射移動補償預測模式時,間預測部218是根據複數個鄰接區塊的移動向量,而以子區塊單位導出移動向量。
[預測控制部]
預測控制部220是選擇內預測訊號及間預測訊號之任一個,且將所選擇的訊號作為預測訊號,而輸出至加法部208。
(實施形態2)
一邊參考圖11及圖12,一邊具體地說明實施形態2之編碼處理及解碼處理,且一邊參考圖15及圖16,一邊具體地說明實施形態2之編碼裝置及解碼裝置。
[編碼處理]
圖11是顯示實施形態2的影像編碼處理。
首先,在步驟S1001中,將第1參數寫入位元流,其中該第1參數是從複數個分割模式之中識別用來將第1區塊分割成複數個子區塊的分割模式。若使用分割模式,區塊就被分割成複數個子區塊。若使用不同的分割模式時,區塊則被分割成不同形狀、不同高度或者不同幅寬的複數個子區塊。
圖28是顯示在實施形態2中用來將NxN像素的區塊分割的分割模式之例。在圖28中,(a)至(h)是顯示相互不同的分割模式。如圖28所示,若使用分割模式(a)時,NxN像素(例如16x16像素,以「N」的值來說,也可取8到128之間4的整數倍之任一個值)的區塊被分割成2個N/2xN像素(例如8x16像素)的子區塊。若使用分割模式(b)時,NxN像素的區塊則被分割成N/4xN像素(例如4x16像素)的子區塊、及3N/4xN像素(例如12x16像素)的子區塊。若使用分割模式(c)時,NxN像素的區塊被分割成3N/4xN像素(例如12x16像素)的子區塊、及N/4xN像素(例如4x16像素)的子區塊。若使用分割模式(d)時,NxN像素的區塊被分割成(N/4)xN像素(例如4x16像素)的子區塊、N/2xN像素(例如8x16像素)的子區塊、及N/4xN像素(例如4x16像素)的子區塊。若使用分割模式(e)時,NxN像素的區塊會被分割成2個NxN/2像素(例如16x8像素)的子區塊。若使用分割模式(f)時,NxN像素的區塊會被分割成NxN/4像素(例如16x4像素)的子區塊、及Nx3N/4像素(例如16x12像素)的子區塊。若使用分割模式(g)時,NxN像素的區塊會被分割成Nx3N/4像素(例如16x12像素)的子區塊、及NxN/4像素(例如16x4像素)的子區塊。若使用分割模式(h)時,NxN像素的區塊會被分割成NxN/4像素(例如16x4像素)的子區塊、NxN/2像素(例如16x8像素)的子區塊、及NxN/4像素(例如16x4像素)的子區塊。
其次,在步驟S1002中,判斷第1參數是否已識別了第1分割模式。
其次,在步驟S1003中,至少根據第1參數是否已識別了第1分割模式的判斷,而判斷是否不選擇第2分割模式來作為用來分割第2區塊的候選。
2個不同的分割模式集或許是將區塊分割成相同形狀及尺寸的子區塊。例如,如圖31A所示,(1b)及(2c)的子區塊具有相同形狀及尺寸。1個分割模式集可包括至少2個分割模式。例如,如圖31A的(1a)及(1b)所示,1個分割模式集除了三元樹垂直分割,還可包括中間的子區塊的二元樹垂直分割及其他的子區塊的非分割。又例如,如圖31A之(2a)、(2b)及(2c)所示,其他分割模式集,除了二元樹垂直分割,還可包括兩邊的子區塊的二元樹垂直分割。任何其中一種分割模式集都成為相同形狀及尺寸的子區塊。
從2個分割模式集之中選擇時,會選擇較少的二進位數或者較少的位元數的分割模式集,其中前述2個分割模式集是將區塊分割成相同形狀及尺寸的子區塊,且在於位元流內被編碼時為不同的二進位數或者不同位元數的2個分割模式集。另,二進位數及位元數是相當於編碼量。
從2個分割模式集之中選擇時,會選擇複數個分割模式集之在預定順序上為最初出現的分割模式集,其中前述2個分割模式集是將區塊分割成相同形狀及尺寸的子區塊,且在於位元流內被編碼時為相同二進位數或者相同位元數的2個分割模式集。預定順序是也可為例如根據各分割模式集內的分割模式的數目的順序。
圖31A及圖31B是顯示在分割模式的編碼中,使用較少的二進位數的分割模式集來將區塊分割成子區塊之一例的圖。在該例中,左側的NxN像素的區塊已被垂直分割成2個子區塊時,在步驟(2c)之中,則不選擇用於右側的NxN像素的區塊之第2分割模式。這是因為在圖31B的分割模式的編碼方法中,第2分割模式集(2a、2b、2c),與第1分割模式集(1a、1b)相比,對分割模式的編碼會要求較多的二進位的緣故。
圖32A至圖32C是顯示使用複數個分割模式集的預定順序上最初出現的分割模式集,來將區塊分割成子區塊之一例的圖。在該例中,2NxN/2像素的區塊被垂直分割成3個子區塊時,在步驟(2c)中,下方的2NxN/2像素的區塊之用的第2分割模式是不被選擇。這是因為在圖32B的分割模式的編碼方法中,第2分割模式集(2a、2b、2c)是和第1分割模式集(1a、1b、1c、1d)相同二進位數,且,在圖32C所示的分割模式集的在預定順序上是出現在第1分割模式集(1a、1b、1c、1d)之後。複數個分割模式集的預定順序也可予以固定,也可在位元流內予以訊號化。
圖20是顯示在實施形態2中,如步驟(2c)所示,為了2NxN像素的區塊的分割,而不選擇第2分割模式的一例。如圖20所示,使用第1分割方法(i),如步驟(1a),可以將2Nx2N像素(例如16x16像素)的區塊等分割成NxN像素(例如8x8像素)之4個子區塊。又,使用第2分割方法(ii),如步驟(2a),也可以將2Nx2N像素的區塊水平等分割成2NxN像素(例如16x8像素)的2個子區塊。在此,在第2分割方法(ii)中,如步驟(2b),在藉由第1分割模式來將上側的2NxN像素之區塊(第1區塊)垂直分割成2個NxN像素的子區塊時,在步驟(2c)中,就不選擇第2分割模式來作為可能的分割模式之候選,其中該第2分割模式為將下側的2NxN像素的區塊(第2區塊)垂直分割成2個NxN像素的子區塊之模式。這是因為會產生與透過第1分割方法(i)的四分割而得到的子區塊尺寸相同的子區塊尺寸的緣故。
如上,在圖20中,若使用第1分割模式,則第1區塊於垂直方向被等分割成2個子區塊,且,若使用第2分割模式,則於垂直方向鄰接於第1區塊之第2區塊於垂直方向被等分割成2個子區塊時,第2分割模式就不會被選擇作為候選。
圖21是顯示在實施形態2中,如步驟(2c)所示,為了Nx2N像素的區塊之分割,而不選擇第2分割模式的一例。如圖21所示,可使用第1分割方法(i),如步驟(1a),將2Nx2N像素的區塊等分割成NxN像素的4個子區塊。又,也可使用第2分割方法(ii),如步驟(2a),將2Nx2N像素的區塊垂直地等分割成2NxN像素(例如8x16像素)之2個子區塊。在第2分割方法(ii)中,如步驟(2b),在透過第1分割模式而使左側的Nx2N像素的區塊(第1區塊)被水平分割成2個NxN像素的子區塊時,在步驟(2c)中,第2分割模式不會被選擇作為可能進行的分割模式的候選,其中該第2分割模式為將右側的Nx2N像素的區塊(第2區塊)水平地分割成2個NxN像素的子區塊。這是因為會產生與透過第1分割方法(i)的四分割而得到的子區塊尺寸相同的子區塊尺寸的緣故。
如上,在圖21中,若使用第1分割模式,則第1區塊於水平方向被等分割成2個子區塊,且,若使用第2分割模式,則在於水平方向鄰接第1區塊之第2區塊於水平方向被等分割成2個子區塊時,第2分割模式不被選擇作為候選。
圖22是顯示在實施形態2中,如步驟(2c)所示,為了NxN像素的區塊的分割,不選擇第2分割模式的一例。如圖22所示,可使用第1分割方法(i),如步驟(1a),將2NxN像素(例如16x8像素,以「N」值來說,也可取得8至128的4之整數倍的所有值)的區塊,垂直地分割成N/2xN像素的子區塊、NxN像素的子區塊、及N/2xN像素的子區塊(例如4x8像素的子區塊、8x8像素的子區塊、及4x8像素的子區塊)。又,也可使用第2分割方法(ii),如步驟(2a),將2NxN像素的區塊分割成2個NxN像素的子區塊。在第1分割方法(i)中,以步驟(1b),可將位於中央的NxN像素的區塊垂直地分割成2個N/2xN像素(例如4x8像素)之子區塊。在第2分割方法(ii)中,如步驟(2b),在左側的NxN像素的區塊(第1區塊)被垂直地分割成2個N/2xN像素的子區塊時,在步驟(2c)中,將右側的NxN像素的區塊(第2區塊)垂直地分割成2個N/2xN像素的子區塊的分割模式不被選擇作為可能的分割模式的候選。這是因為產生與透過第1分割方法(i)所得到的子區塊尺寸相同的子區塊尺寸,即,4個N/2xN像素的子區塊的緣故。
如上,在圖22中,若使用第1分割模式,則第1區塊於垂直方向被等分割成2個子區塊,且,若使用第2分割模式,則在於水平方向鄰接第1區塊之第2區塊於垂直方向被等分割成2個子區塊時,不選擇第2分割模式來作為候選。
圖23是顯示在實施形態2中,如步驟(2c)所示,為了NxN像素的區塊的分割,不選擇第2分割模式的一例。如圖23所示,可使用第1分割方法(i),如步驟(1a),將Nx2N像素(例如8x16像素,以「N」值來說,也可取得8至128的4之整數倍的所有值)的區塊,分割成NxN/2像素的子區塊、NxN像素的子區塊、及NxN/2像素的子區塊(例如8x4像素的子區塊、8x8像素的子區塊、及8x4像素的子區塊)。又,也可使用第2分割方法,如步驟(2a),分割成2個NxN像素的子區塊。在第1分割方法(i)中,如步驟(1b),可將位於中央的NxN像素的區塊分割成2個NxN/2像素之子區塊。在第2分割方法(ii)中,如步驟(2b),在上側的NxN像素的區塊(第1區塊)被水平分割成2個NxN/2像素的子區塊時,在步驟(2c)中,將下側的NxN像素的區塊(第2區塊)水平分割成2個NxN/2像素的子區塊的分割模式不被選擇作為可能的分割模式的候選。這是因為產生與透過第1分割方法(i)所得到的子區塊尺寸相同的子區塊尺寸,即,4個NxN/2像素的子區塊的緣故。
如上,在圖23中,若使用第1分割模式,則第1區塊於水平方向被等分割成2個子區塊,且,若使用第2分割模式,則在於垂直方向鄰接第1區塊之第2區塊於水平方向被等分割成2個子區塊時,不選擇第2分割模式來作為候選。
若已判斷為第2分割模式集被選擇作為用來分割第2區塊的候選時(S1003的N),在步驟S1004中,會從包括第2分割模式來作為候選的複數個分割模式中選擇分割模式。在步驟S1005中,將顯示選擇結果的第2參數寫入位元流。
若已判斷為不選擇第2分割模式來作為用來分割第2區塊的候選時(S1003的是),在步驟S1006中,與第2分割模式不同的分割模式被選擇用來分割第2區塊。在此所被選擇的分割模式將區塊分割成具有與藉第2分割模式而產生的子區塊比較而不同的形狀或者不同的尺寸的子區塊。
圖24是顯示在實施形態2中,如步驟(3),在不選擇第2分割模式時,使用已被選擇的分割模式來分割2NxN像素的區塊的一例。如圖24所示,已被選擇的分割模式,如圖24的(c)及(f)所示,將2NxN像素的當前區塊(在該例中為下區塊)分割成3個子區塊。3個子區塊的尺寸也可不同。例如,在3個子區塊中,大子區塊也可具有小子區塊2倍的寬度/高度。又例如,已被選擇的分割模式,如圖24的(a)、(b)、(d)及(e)所示,也可將當前區塊分割成尺寸不同的2個子區塊(非對稱二元樹)。例如,在使用非對稱二元樹時,大子區塊可具有小子區塊3倍的寬度/高度。
圖25是顯示在實施形態2中,如步驟(3)所示,在不選擇第2分割模式時,使用已選擇的分割模式,來分割Nx2N像素的區塊的一例。如圖25所示,已選擇的分割模式可將Nx2N像素的當前區塊(在該例中為右區塊),如圖25的(c)及(f)所示,分割成3個子區塊。3個子區塊的尺寸也可不同。例如,在3個子區塊中,大子區塊也可具有小子區塊2倍的寬度/高度。又例如,已選擇的分割模式也可將當前區塊,如圖25的(a)、(b)、(d)及(e)所示,分割成尺寸不同的2個子區塊(非對稱二元樹)。例如,在使用非對稱二元樹時,大子區塊可具有小子區塊3倍的寬度/高度。
圖26是顯示在實施形態2中,如步驟(3)所示,在不選擇第2分割模式時,使用已選擇的分割模式,來分割NxN像素的區塊的一例。如圖26所示,在步驟(1)中,2NxN像素的區塊是垂直地分割成2個NxN像素的子區塊,在步驟(2)中,左側的NxN像素的區塊被垂直地分割成2個N/2xN像素的子區塊。在步驟(3)中,使用為了NxN像素的當前區塊(在該例中為左區塊)之已選擇的分割模式,如圖26的(c)及(f)所示,可將當前區塊分割成3個子區塊。3個子區塊的尺寸也可不同。例如,在3個子區塊中,大子區塊也可具有小子區塊2倍的寬度/高度。又例如,已選擇的分割模式,也可將當前區塊,如圖26的(a)、(b)、(d)及(e)所示,分割成尺寸不同的2個子區塊(非對稱二元樹)。例如,在使用非對稱二元樹時,大子區塊可具有小子區塊3倍的寬度/高度。
圖27是顯示在實施形態2中,如步驟(3)所示,在不選擇第2分割模式時,使用已選擇的分割模式,來分割NxN像素的區塊之一例。如圖27所示,在步驟(1)中,Nx2N像素的區塊是水平地分割成2個NxN像素的子區塊,在步驟(2)中,上側的NxN像素的區塊被水平地分割成2個NxN/2像素的子區塊。在步驟(3)中,使用為了NxN像素的當前區塊(在該例中為下區塊)之已選擇的分割模式,如圖27的(c)及(f)所示,可將當前區塊分割成3個子區塊。3個子區塊的尺寸也可不同。例如,在3個子區塊中,大子區塊也可具有小子區塊2倍的寬度/高度。又例如,已選擇的分割模式,也可將當前區塊,如圖27的(a)、(b)、(d)及(e)所示,分割成尺寸不同的2個子區塊(非對稱二元樹)。例如,在使用非對稱二元樹時,大子區塊可具有小子區塊3倍的寬度/高度。
圖17是顯示壓縮影像串流內的第1參數之可想到的位置。如圖17所示,第1參數可配置在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。第1參數可顯示將區塊分割成複數個子區塊的方法。例如,第1參數可含有旗標(flag),該旗標是顯示是否於水平方向或者垂直方向來分割區塊。第1參數也可包括顯示是否將區塊分割成2以上的子區塊的參數。
圖18是顯示壓縮影像串流內的第2參數之可想到的位置。如圖18所示,第2參數可配置在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。第2參數可顯示將區塊分割成複數個子區塊的方法。例如,第2參數可含有旗標(flag),該旗標是顯示是否於水平方向或者垂直方向來分割區塊。第2參數也可包括顯示是否將區塊分割成2以上的子區塊的參數。第2參數,如圖19所示,是配置在位元流內接在第1參數之後。
第1區塊及第2區塊為不同的區塊。第1區塊及第2區塊也可包含在同一訊框。例如,第1區塊也可為鄰接於第2區塊的上邊的區塊。又,例如,第1區塊也可為鄰接於第2區塊的左邊的區塊。
在步驟S1007中,第2區塊是使用已選擇的分割模式,來分割成子區塊。在步驟S1008中,已被分割的區塊是被進行編碼。
[編碼裝置]
圖15是顯示實施形態2或3的影像/圖像編碼裝置的構成的方塊圖。
影像編碼裝置5000是用以依每個區塊將輸入影像/圖像進行編碼,來產生編碼輸出位元流的裝置。如圖15所示,影像編碼裝置5000包含有:轉換部5001、量化部5002、反量化部5003、反轉換部5004、區塊記憶體5005、訊框記憶體5006、內預測部5007、間預測部5008、熵編碼部5009、及區塊分割決定部5010。
輸入影像是輸入到加法器,且將加值輸入到轉換部5001。轉換部5001是根據藉區塊分割決定部5010所導出的區塊分割模式,來將加值轉換成頻率係數,並將頻率係數輸出到量化部5002。區塊分割模式可與區塊分割模式、區塊分割型式、或者區塊分割方向建立關聯。量化部5002是將輸入量化係數進行量化,且將量化值輸入到反量化部5003及熵編碼部5009。
反量化部5003是將從量化部5002所輸出的量化值進行反量化,且將頻率係數輸出至反轉換部5004。反轉換部5004是根據藉區塊分割決定部5010所導出的區塊分割模式,而對頻率係數執行反頻率轉換,來將頻率係數轉換成位元流的樣本值,並將樣本值輸出到加法器。
加法器是將從反轉換部5004所輸出的位元流的樣本值加到從內/間預測部5007、5008所輸出的預測影像/圖像值,並為了更進一步的預測,將加值輸出到區塊記憶體5005或者訊框記憶體5006。區塊分割決定部5010是從區塊記憶體5005或者訊框記憶體5006收集區塊資訊,導出有關於區塊分割模式及區塊分割模式的參數。若使用所導出的區塊分割模式,區塊會被分割成複數個子區塊。內/間預測部5007、5008是從區塊記憶體5005所儲存的影像/圖像,或,藉由區塊分割決定部5010所導出的區塊分割模式再構成的訊框記憶體5006內的影像/圖像之中進行探索,估測例如與預測對象的輸入影像的輸入影像/圖像最類似的影像/圖像區域。
熵編碼部5009是將從量化部5002輸出的量化值進行編碼,將來自區塊分割決定部5010的參數進行編碼,並輸出位元流。
[解碼處理]
圖12是顯示實施形態2的影像解碼處理。
首先,在步驟S2001中,從位元流解讀第1參數,該第1參數是從複數個分割模式之中識別用以將第1區塊分割成子區塊的分割模式。若使用分割模式,則區塊被區割成子區塊,若使用不同的分割模式,則區塊會被分割成具有不同形狀、不同高度或者不同寬度的子區塊。
圖28是顯示在實施形態2中用於分割NxN像素的區塊的分割模式之例。在圖28中,(a)至(h)是顯示互相不同的分割模式。如圖28所示,若使用分割模式(a),NxN像素(例如16x16像素,以「N」的值來說,也可取得8至128之4的整數倍之任何值)的區塊,被分割成2個N/2xN像素(例如8x16像素)之子區塊。若使用分割模式(b),NxN像素的區塊會被分割成N/4xN像素(例如4x16像素)的子區塊、及3N/4xN像素(例如12x16像素)的子區塊。若使用分割模式(c),NxN像素的區塊會被分割成3N/4xN像素(例如12x16像素)的子區塊、及N/4xN像素(例如4x16像素)的子區塊。若使用分割模式(d),NxN像素的區塊會被分割成(N/4)xN像素(例如4x16像素)的子區塊、N/2xN像素(例如8x16像素)的子區塊、及N/4xN像素(例如4x16像素)的子區塊。若使用分割模式(e),NxN像素的區塊會被分割成2個NxN/2像素(例如16x8像素)的子區塊。若使用分割模式(f),NxN像素的區塊會被分割成NxN/4像素(例如16x4像素)的子區塊及Nx3N/4像素(例如16x12像素)的子區塊。若使用分割模式(g),NxN像素的區塊會被分割成Nx3N/4像素(例如16x12像素)的子區塊、及NxN/4像素(例如16x4像素)的子區塊。若使用分割模式(h),NxN像素的區塊會被分割成NxN/4像素(例如16x4像素)的子區塊、NxN/2像素(例如16x8像素)的子區塊、及NxN/4像素(例如16x4像素)的子區塊。
其次,在步驟S2002中,判斷第1參數是否已識別第1分割模式。
其次,在步驟S2003中,至少根據第1參數是否已識別第1分割模式的判斷,判斷是否不選擇第2分割模式作為用來分割第2區塊的候選。
2個不同的分割模式集或許會將區塊分割成相同形狀及尺寸的子區塊。例如,如圖31A所示,(1b)及(2c)的子區塊具有相同的形狀及尺寸。1個分割模式集可含有至少2個分割模式。例如,如圖31A的(1a)及(1b)所示,1個分割模式集,接在三元樹垂直分割之後,還可包括中間的子區塊的二元樹垂直分割及其他區塊的非分割。又例如,如圖31A的(2a)、(2b)及(2c)所示,其他分割模式集,接在二元樹垂直分割之後,還可包括兩邊的子區塊的二元樹垂直分割。任一種分割模式集也都成為相同的形狀及尺寸的子區塊。
從2個分割模式集之中選擇時,是選擇較少的二進位數或者較少的位元數的分割模式集,其中該等2個分割模式集是將區塊分割成相同的形狀及尺寸的子區塊,且在位元流內被進行編碼時為不同的二進位數或者不同的位元數。
從2個分割模式集之中選擇時,是選擇複數個分割模式集的以預定順序最先出現的分割模式集,其中該等2個分割模式集是將區塊分割成相同的形狀及尺寸的子區塊,且在位元流內被進行編碼時為相同的二進位數或者相同的位元數。預定順序,例如也可為基於各分割模式集內的分割模式的數目的順序。
圖31A及圖31B是顯示在分割模式的編碼中使用較少二進位數的分割模式集,來將區塊分割成子區塊之一例的圖。在該例中,在左側的NxN像素的區塊被垂直分割成2個子區塊時,在步驟(2c)中,不選擇右側的NxN像素的區塊之用的第2分割模式。這是因為在圖31B的分割模式的編碼方法中,第2分割模式集(2a、2b、2c)和第1分割模式集(1a、1b)比較,對分割模式的編碼會要求更多的二進位的緣故。
圖32A是顯示使用在複數個分割模式集的預定順序上最先出現的分割模式集,來將區塊切割成子區塊之一例的圖。在該例中,在2NxN/2像素的區塊被垂直地分割成3個子區塊時,在步驟(2c)中,下方的2NxN/2像素的區塊之用的第2分割模式不被選擇。這是因為在圖32B的分割模式的編碼方法中,第2分割模式集(2a、2b、2c)是和第1分割模式集(1a、1b、1c、1d)相同的二進位數,且,在圖32C所示的分割模式集的預定順序上,是出現在第1分割模式集(1a、1b、1c、1d)之後的緣故。複數個分割模式集的預定順序也可固定,也可為在位元流內進行訊號化。
圖20是顯示在實施形態2中,如步驟(2c)所示,為了2NxN像素的區塊的分割,第2分割模式不被選擇的一例。如圖20所示,使用第1分割方法(i),如步驟(1a),可以將2Nx2N像素(例如16x16像素)的區塊等分割成NxN像素(例如8x8像素)之4個子區塊。又,使用第2分割方法(ii),如步驟(2a),也可以將2Nx2N像素的區塊水平等分割成2NxN像素(例如16x8像素)的2個子區塊。在第2分割方法(ii)中,如步驟(2b),在藉由第1分割模式來將上側的2NxN像素之區塊(第1區塊)垂直分割成2個NxN像素的子區塊時,在步驟(2c)中,不選擇第2分割模式來作為可能的分割模式之候選,其中該第2分割模式為將下側的2NxN像素的區塊(第2區塊)垂直分割成2個NxN像素的子區塊之模式。這是因為,會產生與透過第1分割方法(i)的四分割所得到的子區塊尺寸相同的子區塊尺寸的緣故。
如上,在圖20中,若使用第1分割模式,則第1區塊於垂直方向被等分割成2個子區塊,且,若使用第2分割模式,則於垂直方向鄰接於第1區塊之第2區塊在垂直方向被等分割成2個子區塊時,第2分割模式不會被選擇作為候選。
圖21是顯示在實施形態2中,如步驟(2c)所示,為了Nx2N像素的區塊之分割,而不選擇第2分割模式的一例。如圖21所示,使用第1分割方法(i),如步驟(1a),可將2Nx2N像素的區塊等分割成NxN像素的4個子區塊。又,使用第2分割方法(ii),如步驟(2a),也可將2Nx2N像素的區塊垂直地等分割成2NxN像素(例如8x16像素)之2個子區塊。在第2分割方法(ii)中,如步驟(2b),在透過第1分割模式而使左側的Nx2N像素的區塊(第1區塊)水平地分割成2個NxN像素的子區塊時,在步驟(2c)中,不選擇第2分割模式來作為可能進行的分割模式的候選,其中該第2分割模式為將右側的Nx2N像素的區塊(第2區塊)水平分割成2個NxN像素的子區塊。這是因為會產生與透過第1分割方法(i)的四分割而得到的子區塊尺寸相同的子區塊尺寸的緣故。
如上,在圖21中,若使用第1分割模式,則第1區塊於水平方向被等分割成2個子區塊,且,若使用第2分割模式,則在於水平方向鄰接第1區塊之第2區塊於水平方向被等分割成2個子區塊時,第2分割模式就不被選擇作為候選。
圖22是顯示在實施形態2中,如步驟(2c)所示,為了NxN像素的區塊的分割,不選擇第2分割模式的一例。如圖22所示,使用第1分割方法(i),如步驟(1a),可將2NxN像素(例如16x8像素,以「N」值來說,也可取得8至128的4之整數倍的所有值)的區塊,垂直地分割成N/2xN像素的子區塊、NxN像素的子區塊、及N/2xN像素的子區塊(例如4x8像素的子區塊、8x8像素的子區塊、及4x8像素的子區塊)。又,使用第2分割方法(ii),如步驟(2a),也可將2NxN像素的區塊分割成2個NxN像素的子區塊。在第1分割方法(i)中,以步驟(1b),可將位於中央的NxN像素的區塊垂直地分割成2個N/2xN像素(例如4x8像素)之子區塊。在第2分割方法(ii)中,如步驟(2b),在左側的NxN像素的區塊(第1區塊)垂直地分割成2個N/2xN像素的子區塊時,在步驟(2c)中,將右側的NxN像素的區塊(第2區塊)垂直地分割成2個N/2xN像素的子區塊的分割模式不被選擇作為可能進行的分割模式的候選。這是因為產生與透過第1分割方法(i)而得到的子區塊尺寸相同的子區塊尺寸,即,4個N/2xN像素的子區塊的緣故。
如上,在圖22中,若使用第1分割模式,則第1區塊於垂直方向被等分割成2個子區塊,且,若使用第2分割模式,則在於水平方向鄰接第1區塊之第2區塊在垂直方向被等分割成2個子區塊時,第2分割模式就不被選擇作為候選。
圖23是顯示在實施形態2中,如步驟(2c)所示,為了NxN像素的區塊之分割,不選擇第2分割模式的一例。如圖23所示,使用第1分割方法(i),如步驟(1a),可將Nx2N像素(例如8x16像素,以「N」值來說,也可取得8至128的4之整數倍的所有值)的區塊,分割成NxN/2像素的子區塊、NxN像素的子區塊、及NxN/2像素的子區塊(例如8x4像素的子區塊、8x8像素的子區塊、及8x4像素的子區塊)。又,使用第2分割方法,如步驟(2a),也可分割成2個NxN像素的子區塊。在第1分割方法(i)中,如步驟(1b),可將位於中央的NxN像素的區塊分割成2個NxN/2像素之子區塊。在第2分割方法(ii)中,如步驟(2b),在上側的NxN像素的區塊(第1區塊)被水平分割成2個NxN/2像素的子區塊時,在步驟(2c)中,將下側的NxN像素的區塊(第2區塊)水平分割成2個NxN/2像素的子區塊的分割模式不被選擇作為可能進行的分割模式的候選。這是因為產生與透過第1分割方法(i)而得到的子區塊尺寸相同的子區塊尺寸,即,4個NxN/2像素的子區塊的緣故。
如上,在圖23中,若使用第1分割模式,則第1區塊於水平方向被等分割成2個子區塊,且,若使用第2分割模式,則在於垂直方向鄰接第1區塊之第2區塊於水平方向被等分割成2個子區塊時,第2分割模式就不被選擇作為候選。
若已判斷為第2分割模集被選擇作為用來分割第2區塊的候選時(S2003的N),在步驟S2004中,會從位元流解讀第2參數,從包括第2分割模式來作為候選的複數個分割模式選擇分割模式。
若已判斷為第2分割模式不被選擇作為用來分割第2區塊的候選時(S2003的是),在步驟S2005中,與第2分割模式不同的分割模式就被選擇用來分割第2區塊。在此被選擇的分割模式將區塊分割成具有與藉第2分割模式而產生的子區塊比較而不同的形狀或者不同的尺寸的子區塊。
圖24是顯示在實施形態2中,如步驟(3)所示,在第2分割模式不被選擇時,使用已被選擇的分割模式來分割2NxN像素的區塊的一例。如圖24所示,已被選擇的分割模式,如圖24的(c)及(f)所示,可將2NxN像素的當前區塊(在該例中為下區塊)分割成3個子區塊。3個子區塊的尺寸也可不同。例如,在3個子區塊中,大子區塊也可具有小子區塊2倍的寬度/高度。又例如,已被選擇的分割模式,如圖24的(a)、(b)、(d)及(e)所示,也可將當前區塊分割成尺寸不同的2個子區塊(非對稱二元樹)。例如,在使用非對稱二元樹時,大子區塊可具有小子區塊3倍的寬度/高度。
圖25是顯示在實施形態2中,如步驟(3)所示,在第2分割模式不被選擇時,使用已選擇的分割模式來分割Nx2N像素的區塊的一例。如圖25所示,已選擇的分割模式可將Nx2N像素的當前區塊(在該例中為右區塊),如圖25的(c)及(f)所示,分割成3個子區塊。3個子區塊的尺寸也可不同。例如,在3個子區塊中,大子區塊也可具有小子區塊2倍的寬度/高度。又例如,已選擇的分割模式也可將當前區塊,如圖25的(a)、(b)、(d)及(e)所示,分割成尺寸不同的2個子區塊(非對稱二元樹)。例如,在使用非對稱二元樹時,大子區塊可具有小子區塊3倍的寬度/高度。
圖26是顯示在實施形態2中,如步驟(3)所示,在第2分割模式不被選擇時,使用已選擇的分割模式來分割NxN像素的區塊的一例。如圖26所示,在步驟(1)中,2NxN像素的區塊是垂直地分割成2個NxN像素的子區塊,在步驟(2)中,左側的NxN像素的區塊被垂直地分割成2個N/2xN像素的子區塊。在步驟(3)中,使用為了NxN像素的當前區塊(在該例中為左區塊)之已選擇的分割模式,如圖26的(c)及(f)所示,可將當前區塊分割成3個子區塊。3個子區塊的尺寸也可不同。例如,在3個子區塊中,大子區塊也可具有小子區塊2倍的寬度/高度。又例如,已選擇的分割模式也可將當前區塊,如圖26的(a)、(b)、(d)及(e)所示,分割成尺寸不同的2個子區塊(非對稱二元樹)。例如,在使用非對稱二元樹時,大子區塊可具有小子區塊3倍的寬度/高度。
圖27是顯示在實施形態2中,如步驟(3)所示,在第2分割模式不被選擇時,使用已選擇的分割模式來分割NxN像素的區塊的一例。如圖27所示,在步驟(1)中,Nx2N像素的區塊是水平地分割成2個NxN像素的子區塊,在步驟(2)中,上側的NxN像素的區塊被水平地分割成2個NxN/2像素的子區塊。在步驟(3)中,使用為了NxN像素的當前區塊(在該例中為下區塊)之已選擇的分割模式,如圖27的(c)及(f)所示,可將當前區塊分割成3個子區塊。3個子區塊的尺寸也可不同。例如,在3個子區塊中,大子區塊也可具有小子區塊2倍的寬度/高度。又例如,已選擇的分割模式也可將當前區塊,如圖27的(a)、(b)、(d)及(e)所示,分割成尺寸不同的2個子區塊(非對稱二元樹)。例如,在使用非對稱二元樹時,大子區塊可具有小子區塊3倍的寬度/高度。
圖17是顯示壓縮影像串流內的第1參數之可想到的位置。如圖17所示,第1參數可配置在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。第1參數是可顯示將區塊分割成複數個子區塊的方法。例如,第1參數可含有旗標(flag),該旗標是顯示是否於水平方向或者垂直方向來分割區塊。第1參數也可包括顯示是否將區塊分割成2以上的子區塊的參數。
圖18是顯示壓縮影像串流內的第2參數之可想到的位置。如圖18所示,第2參數可配置在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。第2參數是可顯示將區塊分割成複數個子區塊的方法。例如,第2參數可含有旗標(flag),該旗標是顯示是否於水平方向或者垂直方向來分割區塊。第2參數也可包括顯示是否將區塊分割成2以上的子區塊的參數。第2參數,如圖19所示,是配置在位元流內接在第1參數之後。
第1區塊及第2區塊為不同的區塊。第1區塊及第2區塊也可包含在同一訊框。例如,第1區塊也可為鄰接於第2區塊的上邊的區塊。又,例如,第1區塊也可為鄰接於第2區塊的左邊的區塊。
在步驟S2006中,第2區塊是使用已選擇的分割模式,而被分割成子區塊。在步驟S2007中,已被分割的區塊會被解碼。
[解碼裝置]
圖16是顯示實施形態2或3的影像/圖像解碼裝置的構造的方塊圖。
影像解碼裝置6000,是用來依每個區塊將輸入編碼位元流進行解碼,且將影像/圖像輸出的裝置。如圖16所示,影像解碼裝置6000包含有:熵解碼部6001、反量化部6002、反轉換部6003、區塊記憶體6004、訊框記憶體6005、內預測部6006、間預測部6007、及區塊分割決定部6008。
輸入編碼位元流是被輸入到熵解碼部6001。在輸入編碼位元流被輸入到熵解碼部6001之後,熵解碼部6001是將輸入編碼位元流進行解碼,且將參數輸出至區塊分割決定部6008,將解碼值輸出至反量化部6002。
反量化部6002是將解碼值進行反量化,且將頻率係數輸出至反轉換部6003。反轉換部6003是根據透過區塊分割決定部6008所導出的區塊分割模式,而對頻率係數執行反頻率轉換,且將頻率係數轉換成樣本值,並將樣本值輸出至加法器。區塊分割模式可與區塊分割模式、區塊分割型式、或者區塊分割方向建立關聯。加法器是將樣本值加到從內/間預測部6006、6007所輸出的預測影像/圖像值,將加值輸出至顯示器,並為了更進一步的預測,將加值輸出到區塊記憶體6004或者訊框記憶體6005。區塊分割決定部6008是從區塊記憶體6004或者訊框記憶體6005收集區塊資訊,利用藉熵解碼部6001所解碼的參數,導出區塊分割模式。若使用已被導出的區塊分割模式,區塊就會被分割成複數個子區塊。進而,內/間預測部6006、6007是從區塊記憶體6004所儲存的影像/圖像,或,藉由區塊分割決定部6008所導出的區塊分割模式再構成的訊框記憶體6005內的影像/圖像之中,預測解碼對象區塊的影像/圖像區域。
[效果等]
如上,本實施形態之影像編碼裝置5000是一種將圖像的區塊進行編碼的圖像編碼裝置,包含有處理器及記憶體,前述處理器是使用前述記憶體,進行以下步驟:將第1參數寫入位元流,其中該第1參數是從複數個分割模式之中,識別用來將第1區塊分割成子區塊的分割模式;判斷前述第1參數是否已識別第1分割模式;至少根據前述第1參數是否已識別前述第1分割模式的判斷,來判斷是否不選擇第2分割模式,來作為用來分割與前述第1區塊不同的第2區塊的候選;當已判斷選擇前述第2分割模式,來作為用來分割前述第2區塊的候選時,從包括前述第2分割模式來作為候選的複數個分割模式之中選擇分割模式,並將顯示選擇結果的第2參數寫入位元流;當已判斷不選擇前述第2分割模式,來作為用來分割前述第2區塊的候選時,選擇與前述第2分割模式不同的分割模式,且該分割模式是將區塊分割成子區塊,該子區塊為與藉前述第2分割模式所產生的子區塊比較而不同的形狀或者不同尺寸的子區塊;使用已被選擇的前述分割模式,將前述第2區塊分割成子區塊;以及將已被分割的前述區塊進行編碼。
依此,在已判斷不選擇第2分割模式來作為用來分割第2區塊的候選時,可選擇與第2分割模式不同的分割模式。因此,可減少能選擇的分割模式,降低分割模式的編碼量,能提昇壓縮效率。
又,在本實施形態之影像編碼裝置5000中,與前述第2分割模式不同的已被選擇的前述分割模式也可將區塊分割成較前述第2分割模式更多的子區塊,或者,將前述區塊分割成與前述第2分割模式相同數目且不同尺寸的子區塊。
依此,在不選擇第2分割模式來作為候選時,可分割成與藉第2分割模式所得到的子區塊不同的子區塊。
又,在本實施形態之影像編碼裝置5000中,在是否不選擇前述第2分割模式的判斷中,當前述第1參數已識別第1分割模式時,根據包括前述第1分割模式及前述第2分割模式的第1分割模式集的第1編碼量、及與前述第1分割模式集不同的第2分割模式集的第2編碼量,來判斷是否不選擇前述第2分割模式來作為前述候選,前述第2分割模式集也可至少含有1種分割模式,前述至少1種分割模式是用來將區塊分割成:與使用前述第1分割模式及前述第2分割模式分割前述第1區塊及前述第2區塊而得到的子區塊的形狀及尺寸相同的子區塊的形狀及尺寸。
依此,根據分割模式集的編碼量,可判斷是否不選擇第2分割模式作為候選,因此可降低分割模式的編碼量,可提昇壓縮效率。
又,在本實施形態之影像編碼裝置5000中,也可在是否不選擇前述第2分割模式的判斷上,當前述第1編碼量大於前述第2編碼量時,判斷不選擇前述第2分割模式。
依此,可防止選擇編碼量較多的分割模式集,可減少分割模式的編碼量並提昇壓縮效率。
又,在本實施形態之影像編碼裝置5000中,也可在是否不選擇前述第2分割模式的判斷上,當前述第1編碼量等於前述第2編碼量時,在包括前述第1分割模式集及前述第2分割模式集的複數個分割模式集的預定順序中,若前述第2分割模式集比前述第1分割模式集還先出現時,就判斷為不選擇前述第2分割模式。
依此,在2個分割模式集的編碼量相等時,可根據預定的順序,來選擇分割模式集。
如上,本實施形態之影像解碼裝置6000是一種將圖像的區塊進行解碼的圖像解碼裝置,包含有處理器及記憶體,前述處理器是使用前述記憶體,進行以下步驟:從位元流解讀第1參數,其中該第1參數是從複數個分割模式之中識別用來將第1區塊分割成子區塊的分割模式;判斷前述第1參數是否已識別第1分割模式;至少根據前述第1參數是否已識別第1分割模式的判斷,判斷是否不選擇第2分割模式,來作為用來分割與前述第1區塊不同的第2區塊的候選;在已判斷為選擇前述第2分割模式,來作為用來分割前述第2區塊的候選時,從位元流解讀第2參數,其中該第2參數是用來從包括前述第2分割模式來作為候選的複數個分割模式之中,選擇用來分割前述第2區塊的分割模式;在已判斷為不選擇前述第2分割模式,作為用來分割前述第2區塊的候選時,選擇與前述第2分割模式不同的分割模式,且該分割模式是將區塊分割成和藉前述第2分割模式所產生的子區塊比較,為不同形狀或者不同尺寸的子區塊;使用已選擇的前述分割模式,將前述第2區塊分割成子區塊;以及將已被分割的前述區塊進行解碼。
依此,當已判斷不選擇第2分割模式作為用來分割第2區塊的候選時,可選擇與第2分割模式不同的分割模式。因此,可減少能選擇的分割模式,可減少分割模式的編碼量並提昇壓縮效率。
又,本實施形態之影像解碼裝置6000中,與前述第2分割模式不同之已選擇的前述分割模式也可將區塊分割成較前述第2分割模式更多的子區塊,或者,將前述區塊分割成與前述第2分割模式相同數量且不同尺寸的子區塊。
依此,在第2分割模式不被選擇作為候選時,可分割成與藉第2分割模式所得到的子區塊不同的子區塊。
又,本實施形態之影像解碼裝置6000中,在是否不選擇前述第2分割模式的判斷上,當前述第1參數已識別第1分割模式時,根據包括前述第1分割模式及前述第2分割模式的第1分割模式集的第1編碼量、及與前述第1分割模式集不同的第2分割模式集的第2編碼量,判斷是否不選擇前述第2分割模式作為前述候選,前述第2分割模式集也可包含至少1個分割模式,前述至少1個分割模式是用來將區塊分割成:與使用前述第1分割模式及前述第2分割模式分割前述第1區塊及前述第2區塊而得到的子區塊的形狀及尺寸相同的子區塊的形狀及尺寸。
依此,根據分割模式集的編碼量,可判斷是否不選擇第2分割模式作為候選,可減少分割模式的編碼量並提昇壓縮效率。
又,在本實施形態之影像解碼裝置6000中,也可在是否不選擇前述第2分割模式的判斷上,當前述第1編碼量大於前述第2編碼量時,判斷不選擇前述第2分割模式。
依此,可防止選擇較多編碼量的分割模式集,可減少分割模式的編碼量並提昇壓縮效率。
又,在本實施形態之影像解碼裝置6000中,也可在是否不選擇前述第2分割模式的判斷上,當前述第1編碼量等於前述第2編碼量時,在包括前述第1分割模式集及前述第2分割模式集的複數個分割模式集的預定順序上,若前述第2分割模式集較前述第1分割模式集還先出現時,判斷為不選擇前述第2分割模式。
依此,在2個分割模式集的編碼量相等時,可根據預定的順序,選擇分割模式集。
也可以將本態樣與本揭示中的其他態樣之至少一部分組合來實施。又,也可以將本態樣的流程圖所記載的一部分處理、裝置的一部分構成、語法(syntax)的一部分等與其他態樣組合來實施。
(實施形態3)
一邊參考圖13及圖14,一邊具體地說明實施形態3之編碼處理及解碼處理。一邊參考圖15及圖16,一邊具體地說明實施形態3之編碼裝置及解碼裝置。
[編碼處理]
圖13是顯示實施形態3的影像編碼處理。
首先,在步驟S3001中,將第1參數寫入位元流,其中該第1參數是從複數個分割型式之中識別用來將第1區塊分割成子區塊的分割型式。
在接下來的步驟S3002中,將顯示分割方向的第2參數寫入位元流。第2參數是配置在位元流內接在第1參數之後。分割型式也可和分割方向配在一起,來構成分割模式。分割型式是顯示用來分割區塊的子區塊的數目及分割比。
圖29是顯示實施形態3中用來分割NxN像素之區塊的分割型式及分割方向之一例之圖。在圖29中,(1)、(2)、(3)及(4)是不同的分割型式,(1a)、(2a)、(3a)及(4a)是垂直方向的分割方向且分割型式不同之分割模式,(1b)、(2b)、(3b)及(4b)是水平方向的分割方向且分割型式不同的分割模式。如圖29所示,在以分割比為1:1且在垂直方向以對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(1a)來被分割。在以分割比為1:1且在水平方向以對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(1b)來被分割。在以分割比為1:3且在垂直方向以非對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(2a)來被分割。在以分割比為1:3且在水平方向以非對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(2b)來被分割。在以分割比為3:1且在垂直方向以非對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(3a)來被分割。在以分割比為3:1且在水平方向以非對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(3b)來被分割。在以分割比為1:2:1且在垂直方向以三元樹(即,3個子區塊)切割時,NxN像素的區塊是使用分割模式(4a)來被分割。在以分割比為1:2:1且在水平方向以三元樹(即,3個子區塊)切割時,NxN像素的區塊是使用分割模式(4b)來被分割。
圖17是顯示壓縮影像串流內的第1參數之可想到的位置。如圖17所示,第1參數可配置在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。第1參數是可顯示將區塊分割成複數個子區塊的方法。例如,第1參數可含有旗標(flag),該旗標是顯示是否於水平方向或者垂直方向來分割區塊。第1參數也可包括顯示是否將區塊分割成2以上的子區塊的參數。
圖18是顯示壓縮影像串流內的第2參數之可想到的位置。如圖18所示,第2參數可配置在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。第2參數是可顯示將區塊分割成複數個子區塊的方法。例如,第2參數可含有旗標(flag),該旗標是顯示是否於水平方向或者垂直方向來分割區塊。第2參數也可包括顯示是否將區塊分割成2以上的子區塊的參數。第2參數,如圖19所示,是配置在位元流內接在第1參數之後。
圖30是顯示與在分割型式之前將分割方向進行編碼的情況做比較,在分割方向之前將分割型式進行編碼所得到的優點。在該例中,為了未被支援的尺寸(16x2像素),在水平方向的分割方向失效時,不需要將分割方向進行編碼。在該例中,分割方向是被決定作為垂直方向的分割方向,水平方向的分割方向無效。在分割方向之前將分割型式進行編碼一事,和在分割型式之前將分割方向進行編碼的情況相比,較能抑制經由分割方向的編碼所得到的編碼位元。
如此,也可根據已事先訂定的區塊分割可行或者不可行的條件,來判定是否在水平方向及垂直方向之各個來對區塊進行分割。接著,當已判定為只有水平方向及垂直方向之其中一者可分割時,也可略過分割方向之對位元流的寫入。進而,當已判定為水平方向及垂直方向之兩者都不能分割時,除了分割方向外,還可略過分割型式之對位元流的寫入。
已事先訂定的區塊分割可行或者不可行的條件,例如是藉尺寸(像素數)或者分割次數等來下定義。該區塊分割可行或者不可行的條件也可事先於標準規格被定義。又,區塊分割可行或者不可行的條件亦可包括在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。區塊分割可行或者不可行的條件也可在所有的區塊是固定的,也可因應區塊的特性(例如亮度及色差區塊)或者圖片的特性(例如I、P、B圖片)等,來動態地切換。
在步驟S3003中,區塊是使用已識別的分割型式及已顯示的分割方向,來分割成子區塊。在步驟S3004中,已被分割的區塊是被進行編碼。
[編碼裝置]
圖15是顯示實施形態2或3的影像/圖像編碼裝置的構造的方塊圖。
影像編碼裝置5000是用來依每個區塊來將輸入影像/圖像進行編碼,且產生編碼輸出位元流的裝置。如圖15所示,影像編碼裝置5000包含有:轉換部5001、量化部5002、反量化部5003、反轉換部5004、區塊記憶體5005、訊框記憶體5006、內預測部5007、間預測部5008、熵編碼部5009、及區塊分割決定部5010。
輸入影像是輸入到加法器,且將加值輸出到轉換部5001。轉換部5001是根據藉區塊分割決定部5010所導出的區塊分割型式及方向,來將加值轉換成頻率係數,並將頻率係數輸出到量化部5002。區塊分割型式及方向可與區塊分割模式、區塊分割型式、或者區塊分割方向建立關聯。量化部5002是將輸入量化係數進行量化,且將量化值輸出到反量化部5003及熵編碼部5009。
反量化部5003是將從量化部5002所輸出的量化值進行反量化,且將頻率係數輸出至反轉換部5004。反轉換部5004是根據藉區塊分割決定部5010所導出的區塊分割型式,對頻率係數執行反頻率轉換,將頻率係數轉換成位元流的樣本值,將樣本值輸出到加法器。
加法器是將從反轉換部5004所輸出的位元流的樣本值加到從內/間預測部5007、5008所輸出的預測影像/圖像值,並為了更進一步的預測,將加值輸出到區塊記憶體5005或者訊框記憶體5006。區塊分割決定部5010是從區塊記憶體5005或者訊框記憶體5006收集區塊資訊,導出有關於區塊分割型式及方向、以及區塊分割型式及方向的參數。若使用所導出的區塊分割型式及方向,區塊會被分割成複數個子區塊。內/間預測部5007、5008是從區塊記憶體5005所儲存的影像/圖像,或,藉由區塊分割決定部5010所導出的區塊分割型式及方向再構成的訊框記憶體5006內的影像/圖像之中進行探索,估測例如與預測對象的輸入影像的輸入影像/圖像最類似的影像/圖像區域。
熵編碼部5009是將從量化部5002輸出的量化值進行編碼,將來自區塊分割決定部5010的參數進行編碼,並輸出位元流。
[解碼處理]
圖14是顯示實施形態3的影像解碼處理。
首先,在步驟S4001中,從位元流解讀第1參數,該第1參數是從複數個分割型式之中識別用以將第1區塊分割成子區塊的分割型式。
在接下來的步驟S4002中,從位元流解讀顯示分割方向的第2參數。第2參數是在位元流內接在第1參數之後。分割型式也可和分割方向配在一起,來構成分割模式。分割型式是顯示用來分割區塊的子區塊的數目及分割比。
圖29是顯示實施形態3中用來分割NxN像素之區塊的分割型式及分割方向之一例。在圖29中,(1)、(2)、(3)及(4)是不同的分割型式,(1a)、(2a)、(3a)及(4a)是垂直方向的分割方向且分割型式不同之分割模式,(1b)、(2b)、(3b)及(4b)是水平方向的分割方向且分割型式不同的分割模式。如圖29所示,在以分割比為1:1且在垂直方向以對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(1a)來被分割。在以分割比為1:1且在水平方向以對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(1b)來被分割。在以分割比為1:3且在垂直方向以非對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(2a)來被分割。在以分割比為1:3且在水平方向以非對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(2b)來被分割。在以分割比為3:1且在垂直方向以非對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(3a)來被分割。在以分割比為3:1且在水平方向以非對稱二元樹(即,2個子區塊)切割時,NxN像素的區塊是使用分割模式(3b)來被分割。在以分割比為1:2:1且在垂直方向以三元樹(即,3個子區塊)切割時,NxN像素的區塊是使用分割模式(4a)來被分割。在以分割比為1:2:1且在水平方向以三元樹(即,3個子區塊)切割時,NxN像素的區塊是使用分割模式(4b)來被分割。
圖17是顯示壓縮影像串流內的第1參數之可想到的位置。如圖17所示,第1參數可配置在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。第1參數可顯示將區塊分割成複數個子區塊的方法。例如,第1參數可包括上述之分割型式的識別子。例如,第1參數可含有旗標(flag),該旗標是顯示是否於水平方向或者垂直方向來分割區塊。第1參數也可包括顯示是否將區塊分割成2以上的子區塊的參數。
圖18是顯示壓縮影像串流內的第2參數之可想到的位置。如圖18所示,第2參數可配置在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。第2參數可顯示將區塊分割成複數個子區塊的方法。例如,第2參數可含有旗標(flag),該旗標是顯示是否於水平方向或者垂直方向來分割區塊。即,第2參數可包括顯示分割方向的參數。第2參數也可包括顯示是否將區塊分割成2以上的子區塊的參數。第2參數,如圖19所示,是配置在位元流內接在第1參數之後。
圖30是顯示與在分割型式之前將分割方向進行編碼的情況做比較,在分割方向之前將分割型式進行編碼所得到的優點。在該例中,為了未被支援的尺寸(16x2像素),在水平方向的分割方向失效時,不需要將分割方向進行編碼。在該例中,分割方向是被決定作為垂直方向的分割方向,水平方向的分割方向無效。在分割方向之前將分割型式進行編碼一事,和在分割型式之前將分割方向進行編碼的情況相比,較能抑制經由分割方向的編碼所得到的編碼位元。
如此,也可根據已事先訂定的區塊分割可行或者不可行的條件,來判定是否在水平方向及垂直方向之各個來對區塊進行分割。接著,當已判定為只有水平方向及垂直方向之其中一者可分割時,也可略過分割方向之來自位元流的解讀。進而,當已判定為水平方向及垂直方向之兩者都不能分割時,除了分割方向外,還可略過分割型式之來自位元流的解讀。
已事先訂定的區塊分割可行或者不可行的條件,例如是藉尺寸(像素數)或者分割次數等來下定義。該區塊分割可行或者不可行的條件也可事先於標準規格被定義。又,區塊分割可行或者不可行的條件亦可包括在視訊參數集、序列參數集、圖片參數集、切片標頭、或者編碼樹單元內。區塊分割可行或者不可行的條件也可在所有的區塊是固定的,也可因應區塊的特性(例如亮度及色差區塊)或者圖片的特性(例如I、P、B圖片)等,來動態地切換。
在步驟S4003中,區塊是使用已識別的分割型式及已顯示的分割方向,來分割成子區塊。在步驟S4004中,已被分割的區塊是被進行解碼。
[解碼裝置]
圖16是顯示實施形態2或3的影像/圖像解碼裝置的構造的方塊圖。
影像解碼裝置6000,是用來依每個區塊而將輸入編碼位元流進行解碼,且將影像/圖像輸出的裝置。影像解碼裝置6000,如圖16所示,包含有:熵解碼部6001、反量化部6002、反轉換部6003、區塊記憶體6004、訊框記憶體6005、內預測部6006、間預測部6007、及區塊分割決定部6008。
輸入編碼位元流是輸入於熵解碼部6001。在輸入編碼位元流被輸入到熵解碼部6001之後,熵解碼部6001是將輸入編碼位元流進行解碼,且將參數輸出至區塊分割決定部6008,將解碼值輸出至反量化部6002。
反量化部6002是將解碼值進行反量化,且將頻率係數輸出至反轉換部6003。反轉換部6003是根據透過區塊分割決定部6008所導出的區塊分割型式及方向,來對頻率係數執行反頻率轉換,且將頻率係數轉換成樣本值,將樣本值輸出至加法器。區塊分割型式及方向可與區塊分割模式、區塊分割型式、或者區塊分割方向建立關聯。加法器是將樣本值加到從內/間預測部6006、6007所輸出的預測影像/圖像值,將加值輸出至顯示器,並為了更進一步的預測,將加值輸出到區塊記憶體6004或者訊框記憶體6005。區塊分割決定部6008是從區塊記憶體6004或者訊框記憶體6005收集區塊資訊,利用藉熵解碼部6001所解碼的參數,導出區塊分割型式及方向。若使用已被導出的區塊分割型式及方向,區塊就會被分割成複數個子區塊。進而,內/間預測部6006、6007是從區塊記憶體6004所儲存的影像/圖像,或,藉由區塊分割決定部6008所導出的區塊分割型式及方向再構成的訊框記憶體6005內的影像/圖像之中,預測解碼對象區塊的影像/圖像區域。
[效果等]
如上,本實施形態之影像編碼裝置5000是一種將圖像的區塊進行編碼的圖像編碼裝置,包含有處理器及記憶體,前述處理器是使用前述記憶體,進行以下處理:將第1參數寫入位元流,其中該第1參數是從複數個分割型式之中識別分割型式,該分割型式是用來將區塊分割成2以上的子區塊;將第2參數寫入位元流,其中前述第2參數是顯示分割方向,且在位元流內接在前述第1參數之後;使用已識別的前述分割型式及已顯示的前述分割方向,將前述區塊分割成子區塊;以及將已被分割的前述區塊進行編碼。
依此,可在識別分割型式的第1參數之後寫入顯示分割方向的第2參數。因此,在不需要顯示分割方向時,可省略第2參數,可減少分割模式的編碼量並提昇壓縮效率。
又,在本實施形態的影像編碼裝置5000中,也可以是:若將分割型式與已識別的分割方向一起使用時,區塊會被以已識別的前述分割方向分割成子區塊,若將不同的分割型式與分割方向一起使用時,區塊會被分割成不同形狀、不同高度或者不同寬度的子區塊。
依此,藉分割型式及分割方向,就能控制子區塊的形狀、高度或者寬度。
又,本實施形態之影像編碼裝置5000中,前述處理器也可進一步利用藉前述第1參數所識別的前述分割型式,判定是否能於水平方向及垂直方向之各個分割前述區塊,在已判定為只有前述水平方向及前述垂直方向之其中一者可分割時,略過前述第2參數之朝位元流的寫入,並使用已識別的前述分割型式、及前述水平方向及前述垂直方向之另一者,來將前述區塊分割成子區塊。
依此,在於水平方向及垂直方向的其中一者不能進行區塊的分割時,可略過顯示分割方向的第2參數的寫入。即,在位元流內可省略第2參數,可減少區塊分割方法的編碼量並提昇壓縮效率。
如上,本實施形態之影像解碼裝置6000是一種將圖像的區塊進行解碼的圖像解碼裝置,包含有處理器及記憶體,前述處理器是使用前述記憶體,進行以下處理:從位元流解讀第1參數,其中該第1參數是從複數個分割型式之中識別分割型式,該分割型式是用來將區塊分割成2以上的子區塊;從位元流解讀第2參數,其中前述第2參數是顯示分割方向,且在位元流內接在前述第1參數之後;使用已識別的前述分割型式及已顯示的前述分割方向,將前述區塊分割成子區塊;以及將已被分割的前述區塊進行解碼。
依此,可在識別分割型式的第1參數之後寫入顯示分割方向的第2參數。因此,在不需要顯示分割方向時,可省略第2參數,可減少分割模式的編碼量並提昇壓縮效率。
又,本實施形態之影像解碼裝置6000中,也可以是:若將分割型式與已識別的分割方向一起使用時,區塊會被以已識別的前述分割方向分割成子區塊,若將不同的分割型式與分割方向一起使用時,區塊會被分割成不同形狀、不同高度或者不同寬度的子區塊。
依此,藉分割型式及分割方向,就能控制子區塊的形狀、高度或者寬度。
又,本實施形態之影像解碼裝置6000中,前述處理器也可進一步利用藉前述第1參數所識別的前述分割型式,判定是否能於水平方向及垂直方向之各個分割前述區塊,當已判定為可於前述水平方向及前述垂直方向之其中一者進行分割時,略過前述第2參數之來自位元流的解讀,利用已識別的前述分割型式、及以前述水平方向及前述垂直方向之另一者作為前述分割方向,將前述區塊分割成子區塊。
依此,在於水平方向及垂直方向的其中一者不能進行區塊的分割時,就能略過顯示分割方向的第2參數的解讀。即,在位元流內可省略第2參數,可減少區塊分割方法的編碼量並提昇壓縮效率。
也可以將本態樣與本揭示中的其他態樣之至少一部分組合來實施。又,也可以將本態樣的流程圖所記載的一部分處理、裝置的一部分構成、語法(syntax)的一部分等與其他態樣組合來實施。
[實施形態4]
在以上之各實施形態中,功能區塊每一個通常可藉MPU及記憶體等來實現。又,藉功能區塊每一個所進行的處理通常可以經由處理器等之程式執行部讀出ROM等之記錄媒體所記錄的軟體(程式)來執行,而予以實現。該軟體也可藉下載等來分發,也可記錄在半導體記憶體等之記錄媒體來分發。另,當然也可以將各功能區塊透過硬體(專用電路)來實現。
又,在各實施形態中所說明的處理也可以使用單一裝置(系統)進行集中處理來實現,或者也可以使用複數個裝置進行分散處理來實現。又,執行上述程式的處理器也可為單數個,也可為複數個。即,可進行集中處理,或者也可進行分散處理。
本揭示的態樣並不限於以上的實施例,可做各種變更,其等變更也包括在本揭示的態樣之範圍內。
進而在此,說明在上述各實施形態中所示之動態圖像編碼方法(圖像編碼方法)或動態圖像解碼方法(圖像解碼方法)之應用例及使用該方法之系統。該系統是以具有使用圖像編碼方法之圖像編碼裝置、使用圖像解碼方法之圖像解碼裝置、及具有兩者之圖像編碼解碼裝置為特徵所在。針對系統中的其他構成,配合情況的需要,可適當地變更。
[使用例]
圖33是顯示實現內容分發服務之內容供給系統ex100之整體構成圖。將通訊服務之提供領域分割成所期望之大小,在各胞元內分別設置有為固定無線台之基地台ex106、ex107、ex108、ex109、ex110。
在該內容供給系統ex100中,經由網際網路服務提供者ex102或通訊網ex104、及基地台ex106至ex110,而將電腦ex111、遊戲機ex112、攝像機ex113、家電ex114、及智慧型手機ex115等各機器連接於網際網路ex101。該內容供給系統ex100可構成為組合上述任意要素而連接。也可不經過為固定無線台之基地台ex106至ex110,而是使各機器經由電話網路或者近距離無線等直接或間接地互相連接。又,串流伺服器ex103是經由網際網路ex101等而與電腦ex111、遊戲機ex112、攝像機ex113、家電ex114、及智慧型手機ex115等之各機器連接。又,串流伺服器ex103是經由衛星ex116而與飛機ex117內之熱點內的終端機等連接。
另,也可利用無線存取點或熱點等,來替代基地台ex106至ex110。又,串流伺服器ex103也可以不經由網際網路ex101或者網際網路服務提供者ex102,而直接與通訊網ex104連接,也可不經由衛星ex116,而直接與飛機ex117連接。
攝像機ex113是數位相機等可進行靜態圖像攝影及動態圖像攝影之機器。又,智慧型手機ex115一般是指對應於2G、3G、3.9G、4G、以及今後被稱為5G之行動通訊系統的方式之智慧型話機、行動電話機、或者PHS(Personal Handyphone System)等。
家電ex118是包括在冰箱、或者家用燃料電池熱電共生系統之機器等。
在內容供給系統ex100中,讓具有攝影功能的終端機經由基地台ex106等而連接到串流伺服器ex103,以此可進行現場直播等。在現場直播中,終端機(電腦ex111、遊戲機ex112、攝像機ex113、家電ex114、智慧型手機ex115、及飛機ex117内之終端機等)是將如下所得到的資料發送到串流伺服器ex103,該資料是對使用者使用該終端機所攝影的靜態圖像或者動態圖像內容進行在上述各實施形態所說明的編碼處理,且對藉編碼所得到的影像資料、及已將對應於影像的聲音編碼後的聲音資料進行多工而所得到者。即,各終端機是作為本揭示一態樣的圖像編碼裝置而發揮功能。
另一方面,串流伺服器ex103是對於有了請求的客戶端將被發送的內容資料進行串流分發。客戶端是指可將上述經過編碼處理的資料進行解碼之電腦ex111、遊戲機ex112、攝像機ex113、家電ex114、智慧型手機ex115、或者飛機ex117內的終端機等。已接收到所分發的資料的各機器將所接收的資料進行解碼處理後進行播放。即,各機器是作為本揭示一態樣之圖像解碼裝置而發揮功能。
[分散處理]
又,串流伺服器ex103也可為複數個伺服器或者是複數個電腦,將資料分散處理或記錄分發者。例如,串流伺服器ex103也可藉由CDN(Contents Delivery Network)來實現,透過連接分散在世界各地的多數邊緣伺服器(edge server)與邊緣伺服器之間的網路來實現內容分發。在CDN中,因應客戶端而動態地分配實體上接近的邊緣伺服器。然後,內容被該邊緣伺服器快取及分發,以此可減少延遲的情況。又,在發生有任何錯誤時或者因流量增加等而使通訊狀態改變時,可以複數個邊緣伺服器分散處理,或者將分發主體切換到其他邊緣伺服器,而對已發生障礙的網路部分進行迂迴,來繼續進行分發,因此可實現高速且穩定的分發。
又,不只是分發自身的分散處理,也可將所攝影的資料的編碼處理在各終端機進行,也可在伺服器側進行,也可互相分擔來進行。舉一例來說,一般在編碼處理中,進行處理循環2次。第1次的循環,會檢測以訊框或者場景單位的圖像之複雜度、或者編碼量。又,在第2次的循環,會進行維持畫質並使編碼效率提高的處理。例如,終端機進行第1次的編碼處理,已收到內容的伺服器側進行第2次的編碼處理,以此可一邊減少在各終端機的處理負擔,又能一邊提高內容的品質及效率。此時,若有幾乎以實時接收而要解碼的請求時,也可將終端機已進行過第1次的編碼完畢資料在其他終端機接收且進行播放,因此能達到更柔軟的實時分發。
舉另一例來說,攝像機ex113等是從圖像進行特徵量擷取,將有關於特徵量的資料作為詮釋(meta)資料進行壓縮,而發送到伺服器。伺服器是例如從特徵量來判斷目標的重要性,而切換量化精度等因應圖像的意義來進行壓縮。特徵量資料對於伺服器上之再次壓縮時的移動向量預測之精度及效率提昇特別有效。又,也可在終端機進行VLC(可變長度編碼)等之簡易性編碼,在伺服器進行CABAC(Context適應型二值算術編碼方式)等處理負荷大的編碼。
進而,以其他例來說,在體育場、購物商場、或者工廠等之中,會有經由複數個終端機而拍攝到幾乎相同的場景的複數個影像資料存在的情況。在該情況下,使用進行過拍攝的複數個終端機、及因應需要而未進行拍攝的其他終端機及伺服器,以例如GOP(Group of Picture)單位、圖片單位、或者將圖片分割之方塊單位等,分別分配編碼處理,來進行分散處理。藉此,可減少延遲,並實現更佳的實時性。
又,由於複數個影像資料為幾乎相同的場景,因此也可在伺服器進行管理及/或指示,將在各終端機所拍攝的影像資料相互參考。或者,也可使伺服器接收來自各終端機的編碼完畢資料,在複數個資料之間變更參考關係,或者將圖片本身進行補正或更換,來重新進行編碼。藉此,可產生將一個一個資料的品質及效率提高的串流。
又,伺服器也可先進行將影像資料的編碼方式變更的轉碼,再分發影像資料。例如,伺服器也可將MPEG系的編碼方式轉換成VP系,也可將H.264轉換成H.265。
如此,編碼處理可透過終端機或者是1個以上的伺服器來進行。藉此,在下文中,作為進行處理的主體是採用「伺服器」或者是「終端機」等的記述,但也可讓以伺服器所進行的處理的一部分或者全部在終端機來進行,也可讓以終端機所進行的處理的一部分或者全部在伺服器來進行。又,有關於該等部分,針對解碼處理也是同樣。
[3D、多視角]
近年來,將幾乎互相同步的複數個攝像機ex113及/或智慧型手機ex115等之終端機所攝影的不同場景、或者是相同場景以不同的視角拍攝的圖像或影像整合來利用的情形也變多了。以各終端機所拍攝的影像是根據另外取得的終端機間之相對的位置關係、或者影像所含的特徵點一致的區域等來整合。
伺服器不只將2維的動態圖像進行編碼,還可根據動態圖像的場景解析等,而自動或者是在使用者所指定的時刻,將靜態圖像進行編碼,再發送到接收終端機。伺服器進而在可取得攝影終端機之間的相對的位置關係時,不只是2維的動態圖像,還可根據從不同視角對相同場景拍攝的影像,來產生該場景的3維形狀。另,伺服器也可另外將透過點雲(point cloud)等所產生的3維的資料進行編碼,也可根據使用3維資料來辨識或者追蹤人物或目標的結果,從以複數個終端機拍攝的影像中選擇、或再構成,以產生要發送到接收終端機的影像。
如此進行後,使用者要任意選擇對應於各攝影終端機的各影像來觀賞場景也可,要觀賞從使用複數個圖像或者影像而再構成的3維資料剪出任意視點的影像的內容也可。進而,與影像同樣,也可從複數個不同視角收取聲音,令伺服器配合影像,與來自特定視角或空間的聲音和影像進行多工而發送。
又,近年來, Virtual Reality(VR/虛擬實境)及Augmented Reality(AR/擴增實境)等對現實世界與虛擬世界建立對應關係的內容也漸漸普及了。在VR的圖像的情況,也可使伺服器分別作出右眼用及左眼用的視點圖像,透過Multi-View Coding(MVC/多視角編碼)等,進行在各視點影像之間容許參考的編碼,也可不互相參考而作為不同串流來進行編碼。在解碼不同串流時,宜以因應使用者的視點而將虛擬的3維空間重現的方式,使其互相同步且播放。
在AR的圖像的情況,伺服器會根據3維上的位置或者使用者的視點的移動,而將虛擬空間上的虛擬物體資訊重疊在現實空間的攝像機資訊。解碼裝置也可取得或者保持虛擬物體資訊及3維資料,並因應使用者的視點的移動來產生2維圖像,而順利地接續,以此作成重疊資料。或者,解碼裝置也可除了虛擬物體資訊的請求指令外,將使用者的視點的移動也發送到伺服器,伺服器配合接收的視點的移動而從保持在伺服器的3維資料來作成重疊資料,且將重疊資料進行編碼,再分發到解碼裝置。另,也可以是:重疊資料除了RGB以外還具有顯示穿透度的α值,伺服器將從3維資料所作成的目標以外的部分之α值設定為0等,且使該部分為穿透的狀態下進行編碼。或者,伺服器也可如同色鍵(Chroma key)產生資料,該資料為將預定的值之RGB值設定為背景,目標以外的部份則設定為背景色。
同樣,被進行分發的資料的解碼處理也可在客戶端的各終端機進行,或是也可在伺服器側進行,或者也可相互分擔進行。以一例來說,某終端機也可先將接收請求送到伺服器,以其他終端機接收因應該請求的內容,進行解碼處理,並將已解碼完畢的訊號發送到具有顯示器的裝置。能在不依賴可通訊的終端機本身的性能之狀態下,將處理分散而選擇適合的內容,以此可播放畫質佳的資料。又,以另一例來說,也可一邊在TV等接收大尺寸的圖像資料,一邊將圖片分割後的方塊等一部分的區域在觀眾的個人終端進行解碼而顯示。藉此,可共享整體圖像,並可在身邊確認本身的負責領域或者想更加詳細確認的區域。
又,今後不管是室內或室外,在可使用近距離、中距離、或者長距離之數種無線通訊的狀況下,利用MPEG-DASH等之分發系統規格,一邊對於連線中的通訊切換適合的資料,一邊無縫地接收內容,這是可預想得到的。藉此,使用者不只是本身的終端機,也可一邊自由地選擇設在室內或室外之顯示器等之解碼裝置或者顯示裝置,一邊實時地進行切換。又,根據本身的位置資訊等,可一邊切換解碼的終端機及顯示的終端機,一邊進行解碼。藉此,使得如下方式也可變得可行,即:在往目的地的移動中,一邊讓埋設有可進行顯示的設備之旁邊的建築物的壁面或者是地面的一部分顯示地圖資訊,一邊移動。又,也可以基於網路上之對編碼資料的存取容易性,諸如有編碼資料會被可在短時間內從接收終端機進行存取的伺服器快取、或者是被複製到內容分發服務(Contents Delivery Service)中的邊緣伺服器等,來切換接收資料的位元率。
[可調式編碼]
有關於內容的切換,是利用顯示於圖34之可調式之串流來說明,該串流是應用在上述各實施形態所示的動態圖像編碼方法而被壓縮編碼的串流。伺服器雖然具有作為個別的串流,為內容相同但品質不同的複數個串流也無妨,但也可為如下構成,即:靈活運用時間型/空間型可調式的串流之特徵,來切換內容,其中該時間型/空間型可調式的串流是如圖所示藉由分層來進行編碼而實現。即,解碼側因應例如性能的內在因素及通訊頻帶的狀態等之外在因素,來決定要解碼到哪一層,以此解碼側可自由地切換低影像解析度的內容及高影像解析度的內容,而進行解碼。例如想要把曾在移動中於智慧型手機ex115收看的影像的後續部分放到回家後以網路TV等的機器收看時,該機器只要將相同的串流進行解碼到不同層即可,因此可減輕伺服器側的負擔。
進而,如上述,在每層將圖片進行編碼,且在基本層的上位有加強層存在之實現可調性(scalability)之構成以外,也可為加強層含有基於圖像的統計資訊等之詮釋資訊,解碼側根據詮釋資訊,將基本層的圖片進行超影像解析,以此產生已高畫質化的內容。所謂超影像解析也可是同一解析度下的SN比的提昇、以及解析度的擴大之任一者。詮釋資訊是包括用來特定超影像解析處理所使用的線性或者是非線性的濾波係數的資訊、或者、用來特定超影像解析處理所使用的濾波處理、機械學習或者是最小平方運算中的參數值的資訊等。
或者,也可為如下構成,即:因應圖像內的目標(object)等的意涵,將圖片分割成方塊等,解碼側選擇要解碼的方塊,以此只將一部分的區域進行解碼。又,把目標的屬性(人物、車、球等)與影像內的位置(同一圖像中的座標位置等),當做為詮釋資訊來儲存,以此,解碼側可根據詮釋資訊來特定所希望的目標的位置,並決定包含該目標的方塊。例如,如圖35所示,詮釋資訊是使用HEVC中的SEI訊息等與像素資料不同之資料儲存構造來儲存。該詮釋資訊是例如顯示主目標的位置、尺寸、或者色彩等。
又,也可以串流、序列或者隨機存取單位等由複數個圖片所構成的單位來儲存詮釋資訊。藉此,解碼側可取得特定人物出現在影像內的時刻等,配合圖片單位的資訊,以此便可特定目標存在的圖片、及在圖片內之目標的位置。
[網頁的最適化]
圖36是顯示電腦ex111等之中網頁(web page)的顯示畫面例之圖。圖37是顯示智慧型手機ex115等之網頁的顯示畫面例之圖。如圖36及圖37所示,網頁有包括複數個鏈接圖像的情況,其中該等鏈接圖像為朝圖像內容的鏈接,該等鏈接圖像的看到方式會依據閱覽的設備而有所不同。在於畫面上看得到複數個鏈接圖像時,迄至使用者明白表示選擇鏈接圖像為止,或者是迄至鏈接圖像靠近畫面的中央附近或者鏈接圖像整體進入畫面內為止,顯示裝置(解碼裝置)是顯示各內容所具有的靜態圖像或I圖片來作為鏈接圖像,或以複數個靜態圖像或I圖片等顯示像gif動畫般的影像,或只有接收基本層而將影像進行解碼及顯示。
在由使用者選擇了鏈接圖像時,顯示裝置會將基本層視為最優先,來進行解碼。另,若在構成網頁的HTML中,有顯示可調式的內容的資訊時,顯示裝置也可進行解碼迄至加強層為止。又,為了保證實時性,在被選擇之前或者通訊頻帶極窄時,顯示裝置只對參考前方的圖片(I圖片、P圖片、僅只參考前方的B圖片)進行解碼及顯示,以此可減少前頭圖片的解碼時刻與顯示時刻間的延遲(從內容的解碼開始迄至顯示開始之延遲)。又,顯示裝置也可硬是忽視圖片的參考關係,而使全部的B圖片及P圖片為參考前方,先粗略地進行解碼,然後經過一段時間,隨著所接收的圖片的增加,再進行正常的解碼。
[自動行駛]
又,為了汽車的自動行駛或者支援行駛,而發送及接收2維或者3維的地圖資訊等之靜態圖像或者是影像資料時,接收終端機除了屬於1層以上的層級之圖像資料以外,也可接收天氣或者施工的資訊等來作為詮釋資訊,並對該等資訊建立對應關係而進行解碼。另,詮釋資訊也可屬於層,也可只單純地與圖像資料進行多工。
此時,由於含有接收終端機的汽車、空拍機或者飛機等會移動,因此接收終端機會在請求接收時,發送該接收終端機的位置資訊,以此可一邊切換基地台ex106至ex110,一邊實現無縫的接收及解碼。又,接收終端機可因應使用者的選擇、使用者的狀況或者通訊頻帶的狀態,而動態地切換將詮釋資訊接收到哪一程度,或者將地圖資訊更新到何種程度。
如上進行,在內容供給系統ex100中,可讓客戶端實時接收使用者所發送的已編碼的資訊並將其解碼,且進行播放。
[個人內容的分發]
又,在內容供給系統ex100中,不只以透過影像分發業者所進行的高畫質進行長時間的內容,還能以透過個人所進行的低畫質進行短時間的內容的單點傳播(unicast)、或者多點傳播(multicast)進行分發。又,像這樣的個人的內容,認為今後也會增加。為了將個人內容做成更優異的內容,伺服器也可進行編輯處理,之後再進行編碼處理。這是例如可以如下的構成來實現。
在攝影時實時或者先儲存後於攝影後,伺服器從原圖或者編碼完畢資料,進行攝影錯誤、場景搜尋、意義的解析、及目標檢測等之辨識處理。接著,伺服器根據辨識結果,而以手動或者自動地進行:補正失焦或手震等、或者是刪除亮度比其他圖片低或未對焦的場景等重要性低的場景、或者是強調目標的邊緣、或者是變化色調等之編輯。伺服器根據編輯結果,而將編輯後的資料進行編碼。又,已知道攝影時間太長時,收視率會下降,伺服器也可根據圖像處理結果,不只是對如上述般重要性低的場景,亦對動作少的場景等自動地進行剪輯,以因應撮影時間而成為特定的時間範圍內的內容。或者,伺服器也可根據場景的意義解析的結果,來產生摘要(digest),且進行編碼。
另,在個人內容中,若保持原狀,也有成為著作權、著作人格權、或者肖像權等侵害的東西被拍進去的事例,也有共享的範圍超過所意圖的範圍等,對個人來說是不宜的情況。因此,例如,伺服器也可刻意地將畫面的周邊部的人臉或者是家裡等,變更成不對焦的圖像,來進行編碼。又,伺服器也可辨識在編碼對象圖像內是否有拍到與事先登錄的人物不同之人物的臉,若有拍到時,對臉的部分進行加上馬賽克等之處理。或者,在編碼的前處理或者後處理上,從著作權等的觀點來看,使用者對圖像指定想要加工的人物或者背景區域,伺服器將所指定的區域替換成別的影像,或者進行模糊焦點等的處理也可。若是人物時,在動態圖像中,可一邊追蹤人物,一邊將臉的部分影像替換。
又,由於資料量小的個人內容的收看在實時性的要求高,因此雖然依頻帶寬度有所差異,但解碼裝置首先是以基本層最優先地接收,並進行解碼及播放。解碼裝置也可在這期間接收加強層,在有循環播放的情況等有播放2次以上的時候,連同加強層在內將高畫質的影像播放。若是已如此地進行有可調的編碼之串流的話,就能提供如下體驗,即,雖然在未選擇時或者剛開始看的階段,是粗糙的動畫,但會漸漸地串流變精緻、圖像變好。除了可調式編碼以外,以在第1次播放的粗糙的串流、及參考第1次動畫來編碼的第2次的串流,當做為1個串流來構成,也可提供同樣的體驗。
[其他使用例]
又,該等編碼或者解碼處理,一般來說是在各終端機所具有的LSIex500中來處理。LSIex500可以是單晶片,也可以是由複數個晶片所構成。另,也可將動態圖像編碼或者解碼用的軟體裝入能以電腦ex111等讀取的某些記錄媒體(CD-ROM、軟碟、或者硬碟等),並使用該軟體來進行編碼或者解碼處理。進而,智慧型手機ex115是附有攝像機時,也可發送以該攝像機取得的動畫資料。此時的動畫資料是已經透過智慧型手機ex115所具有的LSIex500進行編碼處理的資料。
另,LSIex500也可為下載應用軟體程式來啟動之構成。此時,首先,終端機要判定該終端機是否支援內容的編碼方式,或者是否具有特定服務的執行能力。在終端機未支援內容的編碼方式時,或者不具有特定服務的執行能力時,終端機要下載編解碼器或者應用軟體程式,之後進行內容的取得及播放。
又,不限於經由網際網路ex101的內容供給系統ex100,在數位式廣播用系統也可裝入上述各實施形態之至少動態圖像編碼裝置(圖像編碼裝置)或者動態圖像解碼裝置(圖像解碼裝置)之任一者。由於是利用衛星等而在廣播用的電波乘載已將影像與聲音進行多工處理的多工資料,來進行傳送接收,所以相對於內容供給系統ex100的易於進行單點傳播的構成,數位式廣播用系統雖有利於多點播送的差異,但有關於編碼處理及解碼處理,仍可做同樣的應用。
[硬體構成]
圖38是顯示智慧型手機ex115的圖。又,圖39是顯示智慧型手機ex115的構成例之圖。智慧型手機ex115包含有:天線ex450,是用來於與基地台ex110之間收發電波;攝像機部ex465,是可拍攝影像及靜態圖像;以及顯示部ex458,是顯示已將以攝像機部ex465所拍攝的影像、及以天線ex450所接收的影像等進行解碼之資料。智慧型手機ex115更包含有:操作部ex466,為觸控面板等;聲音輸出部ex457,為用來輸出聲音或者音響的揚聲器等;聲音輸入部ex456,為用來輸入聲音之麥克風等;記憶部ex467,可保存所拍攝的影像或者靜態圖像、已錄取的聲音、已接收的影像或者靜態圖像、郵件等的已編碼的資料、或者已解碼的資料;及插槽部ex464,為與SIMex468之間的介面部,其中SIMex468為用來特定使用者,並以網路為首,實行對各種資料進行存取的認證。另,也可使用外接式記憶體代替記憶部ex467。
又,將顯示部ex458及操作部ex466等統合性地控制的主控制部ex460,與電源電路部ex461、操作輸入控制部ex462、影像訊號處理部ex455、攝像機介面部ex463、顯示器控制部ex459、調變/解調部ex452、多工/分離部ex453、聲音訊號處理部ex454、插槽部ex464、以及記憶部ex467是經由匯流排ex470來連接。
電源電路部ex461是藉由使用者的操作使電源開關成為開啟狀態時,從電池組對各部供應電力,藉此使智慧型手機ex115啟動成可動作的狀態。
智慧型手機ex115是基於具有CPU、ROM及RAM等之主控制部ex460的控制,進行通話及資料通訊等的處理。在通話時是將以聲音輸入部ex456所收音的聲音訊號在聲音訊號處理部ex454轉換成數位式聲音訊號,將該訊號在調變/解調部ex452進行頻譜擴散處理,在發送/接收部ex451實施數位類比轉換處理以及頻率轉換處理,之後再經由天線ex450進行發送。又,將接收資料放大,並實施頻率轉換處理以及類比數位轉換處理,在調變/解調部ex452進行頻譜反擴散處理,在聲音訊號處理部ex454轉換成類比聲音訊號,之後再將該訊號從聲音輸出部ex457進行輸出。在資料通訊模式時,透過本體部的操作部ex466等的操作,將正文、靜態圖像、或者影像資料經由操作輸入控制部ex462而送出至主控制部ex460,並同樣地被進行收發處理。在資料通訊模式時,於發送影像、靜態圖像、或者影像及聲音的情況,影像訊號處理部ex455是將記憶部ex467所保存的影像訊號、或者從攝像機部ex465所輸入的影像訊號透過上述各實施形態所示的動態圖像編碼方法進行壓縮編碼,且將業經編碼的影像資料送出至多工/分離部ex453。又,聲音訊號處理部ex454是將在以攝像機部ex465將影像或者靜態圖像等攝影中於聲音輸入部ex456所收音的聲音訊號進行編碼,且將業經編碼的聲音資料送出至多工/分離部ex453。多工/分離部ex453是將業經編碼完畢的影像資料及業經編碼完畢的聲音資料以預定的方式進行多工,且於調變/解調部(調變/解調電路部)ex452、及發送/接收部ex451實施調變處理及轉換處理,並經由天線ex450來發送。
在接收到電子郵件或者對話(chat)所附的影像、或者連結到網頁等的影像時,為了將經由天線ex450所接收到的多工資料進行解碼,多工/分離部ex453將多工資料進行分離,藉此把多工資料分成影像資料的位元串流及聲音資料的位元串流,經由同步匯流排ex470,而將業經編碼的影像資料供給至影像訊號處理部ex455,並將業經編碼的聲音資料供給至聲音訊號處理部ex454。影像訊號處理部ex455透過對應於上述各實施形態所示的動態圖像編碼方法之動態圖像解碼方法,而將影像訊號進行解碼,且透過顯示器控制部ex459,而從顯示部ex458,顯示被連結的動態圖像檔所含之影像或者靜態圖像。又,聲音訊號處理部ex454是將聲音訊號進行解碼,且從聲音輸出部ex457輸出聲音。另,由於實時串流傳輸(real-time streaming)已經普及了,依使用者的狀況,聲音的播放也可能會有對社會上不合適的場面發生。為此,作為初始值,聲音訊號不要播放,而只將影像資料播放的構成是較被希望的。也可以是只有在使用者進行了操作,如點選影像資料等的時候,將聲音同步地播放。
又,在此,是以智慧型手機ex115為例進行了說明,以終端機而言也可考慮如下3種安裝形式,除了具有編碼器及解碼器兩者的訊號收發型終端機之外,只具有編碼器的發訊終端機、及只具有解碼器的收訊終端機。進而,在數位廣播用系統中,是以接收或者發送在影像資料上已有聲音資料等進行多工處理之多工資料的情形來說明,但多工資料上除了聲音資料以外,也可有與影像有關聯的文字資料等進行多工處理,也可接收或者發送影像資料本身,而不是多工資料。
另,以含有CPU的主控制部ex460控制編碼處理或者解碼處理的情形來說明,但終端機具備GPU的情況也居多。因此,如後述構成也可,即,透過在CPU與GPU共通化的記憶體、或者有將位址加以管理以形成可以共通使用之狀態的記憶體,來靈活運用GPU的性能,並將廣大區域匯整來一起處理者。藉此,可縮短編碼時間,確保實時性,可實現低延遲。尤其,不是利用CPU,而是透過GPU,以圖片等的單位匯整來一起進行移動估測、解區塊濾波器、SAO(Sample Adaptive Offset)、及轉換、量化的處理時,是有效率的。
產業利用性
可使用於多工媒體資料的編碼/解碼,特別是使用區塊編碼/解碼之圖像及影像編碼/解碼。
100:編碼裝置
102:分割部
104:減法部
106,5001:轉換部
108,5002:量化部
110,5009:熵編碼部
112,5003,6002:反量化部
114,5004,6003:反轉換部
116:加法部
118,5005,6004:區塊記憶體
120:迴路濾波部
122,5006,6005:訊框記憶體
124,5007,6006:內預測部
126,5008,6007:間預測部
128:預測控制部
200:解碼裝置
202,6001:熵解碼部
204:反量化部
206:反轉換部
208:加法部
210:區塊記憶體
212:迴路濾波部
214:訊框記憶體
216:內預測部
218:間預測部
220:預測控制部
5000:影像編碼裝置
5010,6008:區塊分割決定部
6000:影像解碼裝置
ex100:內容供給系統
ex101:網際網路
ex102:網際網路服務提供者
ex103:串流伺服器
ex104:通訊網
ex106至ex110:基地台
ex111:電腦
ex112:遊戲機
ex113:攝像機
ex114:家電
ex115:智慧型手機
ex116:衛星
ex117:飛機
ex450:天線
ex451:發送/接收部
ex452:調變/解調部
ex453:多工/分離部
ex454:聲音訊號處理部
ex455:影像訊號處理部
ex456:聲音輸入部
ex457:聲音輸出部
ex458:顯示部
ex459:顯示器控制部
ex460:主控制部
ex461:電源電路部
ex462:操作輸入控制部
ex463:攝像機介面部
ex464:插槽部
ex465:攝像機部
ex466:操作部
ex467:記憶部
ex468:SIM
ex470:匯流排
圖1是顯示實施形態1之編碼裝置之功能構成的方塊圖。
圖2是顯示實施形態1之區塊分割之一例之圖。
圖3是顯示對應於各轉換型式之轉換基底函數之表格。
圖4A是顯示ALF所使用之濾波器之形狀一例之圖。
圖4B是顯示ALF所使用之濾波器的形狀另一例之圖。
圖4C是顯示ALF所使用之濾波器的形狀另一例之圖。
圖5A是顯示內預測中之67個內預測模式之圖。
圖5B是流程圖,用來說明藉OBMC處理之預測圖像補正處理之概要。
圖5C是概念圖,用來說明藉OBMC處理之預測圖像補正處理之概要。
圖5D是顯示FRUC一例之圖。
圖6是用來說明在沿著移動軌跡的2個區塊之間的圖案匹配(雙向匹配)之圖。
圖7是用來說明當前圖片內的模板與參考圖片內之區塊間的圖案匹配(模板匹配)之圖。
圖8是用來說明假設等速直線移動之模型的圖。
圖9A是用來說明子區塊單位的移動向量之導出之圖,該子區塊單位的移動向量是基於複數個鄰接區塊的移動向量。
圖9B是用來說明合併模式之移動向量導出處理之概要之圖。
圖9C是用來說明DMVR處理之概要之概念圖。
圖9D是用來說明預測圖像產生方法之概要之圖,該預測圖像產生方法是使用了LIC處理的亮度補正處理。
圖10是方塊圖,顯示實施形態1之解碼裝置的功能構成。
圖11是顯示實施形態2的影像編碼處理之流程圖。
圖12是顯示實施形態2之影像解碼處理的流程圖。
圖13是顯示實施形態3之影像編碼處理的流程圖。
圖14是顯示實施形態3之影像解碼處理的流程圖。
圖15是方塊圖,顯示實施形態2或3之影像/圖像解碼裝置的構造。
圖16是方塊圖,顯示實施形態2或3之影像/圖像解碼裝置的構造。
圖17是顯示實施形態2或3中的壓縮影像串流內的第1參數之可想到的位置之例之圖。
圖18是顯示實施形態2或3中的壓縮影像串流內的第2參數之可想到的位置之例之圖。
圖19是顯示在實施形態2或3中,接續在第1參數之後的第2參數之例之圖。
圖20是顯示在實施形態2中,如步驟(2c)所示,為了2NxN像素的區塊之分割而不選擇第2分割模式之一例的圖。
圖21是顯示在實施形態2中,如步驟(2c)所示,為了Nx2N像素的區塊之分割而不選擇第2分割模式之一例的圖。
圖22是顯示在實施形態2中,如步驟(2c)所示,為了NxN像素的區塊之分割而不選擇第2分割模式之一例的圖。
圖23是顯示在實施形態2中,如步驟(2c)所示,為了NxN像素的區塊之分割而不選擇第2分割模式之一例的圖。
圖24是顯示在實施形態2中,如步驟(3)所示,在不選擇第2分割模式時,使用已選擇的分割模式來分割2NxN像素的區塊之一例的圖。
圖25是顯示在實施形態2中,如步驟(3)所示,在不選擇第2分割模式時,使用已選擇的分割模式來分割Nx2N像素的區塊之一例的圖。
圖26是顯示在實施形態2中,如步驟(3)所示,在不選擇第2分割模式時,使用已被選擇的分割模式來將NxN像素的區塊分割之一例的圖。
圖27是顯示在實施形態2中,如步驟(3)所示,在不選擇第2分割模式時,使用所選擇的分割模式來將NxN像素的區塊分割之一例的圖。
圖28是顯示在實施形態2中用來分割NxN像素之區塊的分割模式之例之圖。(a)至(h)是顯示互為不同的分割模式之圖。
圖29是顯示實施形態3中用來分割NxN像素之區塊的分割型式及分割方向之一例之圖。(1)、(2)、(3)及(4)是不同的分割型式,(1a)、(2a)、(3a)及(4a)是垂直方向的分割方向且分割型式不同之分割模式,(1b)、(2b)、(3b)及(4b)是水平方向的分割方向且分割型式不同的分割模式。
圖30是顯示在實施形態3中,與在分割型式之前將分割方向進行編碼的情況相比,經由在分割方向之前將分割型式進行編碼所得到的優點之圖。
圖31A是顯示在分割模式的編碼之中,使用較少二進位數的分割模式集來將區塊分割成子區塊之一例的圖。
圖31B是顯示在分割模式的編碼之中,使用較少二進位數的分割模式集來將區塊分割成子區塊之一例的圖。
圖32A是顯示使用複數個分割模式集之預定順序上最先出現的分割模式集,來將區塊分割成子區塊之一例的圖。
圖32B是顯示使用複數個分割模式集之預定順序上最先出現的分割模式集,來將區塊分割成子區塊之一例的圖。
圖32C是顯示使用複數個分割模式集之預定順序上最先出現的分割模式集,來將區塊分割成子區塊之一例的圖。
圖33是實現內容分發服務之內容供給系統的整體構成圖。
圖34是顯示可調式編碼時之編碼構造一例之圖。
圖35是顯示可調式編碼時之編碼構造一例之圖。
圖36是顯示網頁的顯示畫面例之圖。
圖37是顯示網頁的顯示畫面例之圖。
圖38是顯示智慧型手機一例之圖。
圖39是顯示智慧型手機一例之圖。
S1001至S1008:步驟
Claims (3)
- 一種圖像編碼裝置,將圖像的區塊編碼,其具備: 電路;及 與前述電路結合的記憶體, 前述電路在動作中, 使用第1分割模式,於第1方向將圖片的區塊分割成複數個子區塊, 將前述複數個子區塊編碼, 在前述區塊的尺寸為Nx2N像素,且前述第1方向是沿著2N像素,並且N為整數的情況下,前述第1分割模式包含將前述區塊分割成包含至少1個N/4x2N像素尺寸的子區塊之複數個子區塊,並且排除將前述區塊分割成2個N/2x2N像素尺寸的子區塊。
- 一種編碼方法,使用第1分割模式,於第1方向將圖片的區塊分割成複數個子區塊, 將前述複數個子區塊編碼, 在前述區塊的尺寸為Nx2N像素,且前述第1方向是沿著2N像素,並且N為整數的情況下,前述第1分割模式包含將前述區塊分割成包含至少1個N/4x2N像素尺寸的子區塊之複數個子區塊,並且排除將前述區塊分割成2個N/2x2N像素尺寸的子區塊。
- 一種非暫時性記憶媒體,其保存位元流, 前述位元流包含用以使接收前述位元流的電腦進行解碼處理的資訊, 前述資訊包含用以使前述電腦執行解碼處理之至少關於第1分割模式的資訊, 前述解碼處理為前述電腦執行以下處理: 使用前述第1分割模式,於第1方向將圖片的區塊分割成複數個子區塊; 將前述複數個子區塊解碼;及 在前述區塊的尺寸為Nx2N像素,且前述第1方向是沿著2N像素,並且N為整數的情況下,前述第1分割模式包含將前述區塊分割成包含至少1個N/4x2N像素尺寸的子區塊之複數個子區塊,並且排除將前述區塊分割成2個N/2x2N像素尺寸的子區塊。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762479586P | 2017-03-31 | 2017-03-31 | |
US62/479,586 | 2017-03-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202408229A TW202408229A (zh) | 2024-02-16 |
TWI841500B true TWI841500B (zh) | 2024-05-01 |
Family
ID=
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9532058B2 (en) | 2011-06-03 | 2016-12-27 | Qualcomm Incorporated | Intra prediction mode coding with directional partitions |
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9532058B2 (en) | 2011-06-03 | 2016-12-27 | Qualcomm Incorporated | Intra prediction mode coding with directional partitions |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI820019B (zh) | 圖像解碼裝置及解碼方法 | |
KR102608008B1 (ko) | 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법 | |
KR102577599B1 (ko) | 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법 | |
TWI838914B (zh) | 編碼裝置、解碼裝置及非暫時性電腦可讀取媒體 | |
CN111684805B (zh) | 编码装置、解码装置、编码方法和解码方法 | |
TW201924338A (zh) | 編碼裝置、解碼裝置、編碼方法及解碼方法 | |
TW201909631A (zh) | 編碼裝置、解碼裝置、編碼方法及解碼方法 | |
TW201842781A (zh) | 編碼裝置、解碼裝置、編碼方法及解碼方法 | |
CN112136326B (zh) | 编码装置、解码装置、编码方法和解码方法 | |
WO2019146718A1 (ja) | 符号化装置、復号装置、符号化方法及び復号方法 | |
TWI841500B (zh) | 圖像編碼裝置、圖像編碼方法及非暫時性記憶媒體 | |
JP7496909B2 (ja) | 符号化装置及び符号化方法 | |
JP2024103570A (ja) | 送信装置、送信方法、送信プログラム及びそれを保存する非一時的記憶媒体 | |
TW202418802A (zh) | 編碼裝置、解碼裝置及非暫時性記憶媒體 | |
TW202420825A (zh) | 編碼裝置、解碼裝置、編碼方法、解碼方法及非暫時性記憶媒體 | |
TW202420826A (zh) | 編碼方法、解碼方法、及處理包含模式資訊與移動資訊的位元串流的方法 | |
TW202423115A (zh) | 編碼裝置、解碼裝置、電腦可讀取之非暫時性的媒體 |