[go: up one dir, main page]

TWI848026B - 編碼裝置、解碼裝置、編碼方法及解碼方法 - Google Patents

編碼裝置、解碼裝置、編碼方法及解碼方法 Download PDF

Info

Publication number
TWI848026B
TWI848026B TW108144786A TW108144786A TWI848026B TW I848026 B TWI848026 B TW I848026B TW 108144786 A TW108144786 A TW 108144786A TW 108144786 A TW108144786 A TW 108144786A TW I848026 B TWI848026 B TW I848026B
Authority
TW
Taiwan
Prior art keywords
block
picture
information
slice
decoding
Prior art date
Application number
TW108144786A
Other languages
English (en)
Other versions
TW202029764A (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 TW202029764A publication Critical patent/TW202029764A/zh
Application granted granted Critical
Publication of TWI848026B publication Critical patent/TWI848026B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

編碼裝置具備電路及連接於電路的記憶體,電路在動作中,將編碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行編碼,藉此來編碼前述圖片,在編碼前述圖片之際,不會將位於前述圖片之右下角的切片所占的區域之相關資訊包含於標頭資訊。

Description

編碼裝置、解碼裝置、編碼方法及解碼方法
本揭示是關於一種視訊編碼,例如是關於一種動態圖像的編碼及解碼的系統、構成要素以及方法等。
視訊編碼技術從H.261及MPEG-1進步到H.264/AVC(Advanced Video Coding:高階視訊編碼)、MPEG-LA、H.265/HEVC(High Efficiency Video Coding:高效率視訊編碼)、及H.266/VVC(Versatile Video Codec:多功能視訊編碼)。伴隨此進步,為了處理在各式各樣的用途中持續增加的數位視訊資料量,經常需要提供視訊編碼技術的改良及最佳化。
先行技術文獻 非專利文獻 非專利文獻1:H.265(ISO/IEC 23008-2 HEVC(High Efficiency Video Coding))
發明概要 發明欲解決之課題 關於如上述之編碼方式,為了編碼效率的改善、畫質的改善、處理量的刪減、電路規模的刪減,或為了適當地選擇濾波器、區塊、尺寸、移動向量、參考圖片或參考區塊等之要素或動作等,期望能提案新的方式。
本揭示提供一種構成或方法,其可貢獻例如編碼效率的改善、畫質的改善、處理量的刪減、電路規模的刪減、處理速度的改善、以及適當地選擇要素或動作等當中的1項以上。再者,本揭示可包含可貢獻上述以外的益處之構成或方法。
用以解決課題之手段 本揭示之一態樣的編碼裝置是編碼動態圖像的編碼裝置,具備電路及連接於前述電路的記憶體,前述電路在動作中,將編碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行編碼,藉此來編碼前述圖片,在編碼前述圖片之際,不會將位於前述圖片之右下角的切片所占的區域之相關資訊包含於標頭資訊。
本揭示之一態樣的解碼裝置是解碼動態圖像的解碼裝置,具備電路及連接於前述電路的記憶體,前述電路在動作中,將解碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行解碼,藉此來解碼前述圖片,在解碼前述圖片之際,會以不使用標頭資訊之預定的方法,來設定位於前述圖片之右下角的切片所占的區域之相關資訊,前述區域的相關資訊不包含於前述標頭資訊。
本揭示中之實施形態的多種安裝,既可改善編碼效率,亦可簡化編碼/解碼處理,亦可令編碼/解碼處理速度加快,亦可有效率地選擇諸如適當的濾波器、區塊尺寸、移動向量、參考圖片、參考尺寸等於編碼及解碼中使用的適當的構成要素/動作。
本揭示之一態樣的更進一步的優點及效果,從說明書及圖式可明顯知曉。該等優點及/或效果可分別藉由多個實施形態以及說明書及圖式所記載的特徵來獲得,但不必為了獲得1個或1個以上的優點及/或效果而非得要全部提供。
再者,該等全面的或具體的態樣亦可藉由系統、方法、積體電路、電腦程式、記錄媒體、或這些的任意組合來實現。
發明效果 本揭示之一態樣的構成或方法可貢獻例如編碼效率的改善、畫質的改善、處理量的刪減、電路規模的刪減、處理速度的改善、及適當地選擇要素或動作等當中的1項以上。再者,本揭示之一態樣的構成或方法亦可貢獻上述以外的益處。
用以實施發明之形態 例如,本揭示之一態樣的編碼裝置是編碼動態圖像的編碼裝置,具備電路及連接於前述電路的記憶體,前述電路在動作中,將編碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行編碼,藉此來編碼前述圖片,在編碼前述圖片之際,不會將位於前述圖片之右下角的切片所占的區域之相關資訊包含於標頭資訊。
據此,編碼裝置可使切片的設定方法之相關資訊的一部分不包含於圖片參數集而省略,因此有可能可以刪減編碼量。
又,例如,前述區域之相關資訊是表示前述切片之右下角的位置的資訊。
又,例如,前述區域之相關資訊是表示前述切片之左上角的位置及右下角的位置的資訊。
又,例如,前述區域之相關資訊是以語法來表示的資訊。
又,例如,前述電路在前述動作中,在編碼前述圖片之際,將位於前述圖片之開頭的切片之左上角的位置資訊,當作表示前述圖片之左上角的位置的資訊來包含於標頭資訊。
又,本揭示之一態樣的解碼裝置是解碼動態圖像的解碼裝置,具備電路及連接於前述電路的記憶體,前述電路在動作中,將解碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行解碼,藉此來解碼前述圖片,在解碼前述圖片之際,會以不使用標頭資訊之預定的方法,來設定位於前述圖片之右下角的切片所占的區域之相關資訊,前述區域的相關資訊不包含於前述標頭資訊。
據此,即使切片的設定方法之相關資訊的一部分不包含於圖片參數集,也能進行解碼處理。故,解碼裝置有可能可以刪減取得之位元串流的編碼量。
又,例如,前述區域之相關資訊是表示前述切片之右下角的位置的資訊。
又,例如,前述區域之相關資訊是表示前述切片之左上角的位置及右下角的位置的資訊。
又,例如,前述區域之相關資訊是以語法來表示的資訊。
又,例如,前述電路在前述動作中,在解碼前述圖片之際,從包含於標頭資訊之表示前述圖片的左上角之位置的資訊,解碼出位於前述圖片之開頭的切片之左上角的位置資訊。
又,例如,本揭示之一態樣的編碼方法是編碼動態圖像的編碼方法,其將編碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行編碼,藉此來編碼前述圖片,在編碼前述圖片之際,不會將位於前述圖片之右下角的切片所占的區域之相關資訊包含於標頭資訊。
據此,該編碼方法可使切片的設定方法之相關資訊的一部分不包含於圖片參數集而省略,因此有可能可以刪減編碼量。
又,例如,本揭示之一態樣的解碼方法是解碼動態圖像的解碼方法,其將解碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行解碼,藉此來解碼前述圖片,在解碼前述圖片之際,會以不使用標頭資訊之預定的方法,來設定位於前述圖片之右下角的切片所占的區域之相關資訊,前述區域的相關資訊不包含於前述標頭資訊。
據此,即使切片的設定方法之相關資訊的一部分不包含於圖片參數集,也能進行解碼處理。故,該解碼方法有可能可以刪減取得之位元串流的編碼量。
進而,該等概括的或具體的態樣能夠以系統、裝置、方法、積體電路、電腦程式或電腦可讀取的CD-ROM等非暫時性的記錄媒體來實現,也能夠以系統、裝置、方法、積體電路、電腦程式及記錄媒體的任意組合來實現。
以下,一邊參考圖式一邊具體地說明實施形態。再者,以下說明的實施形態均表示概括的或具體的例子。以下實施形態所示數值、形狀、材料、構成要素、構成要素的配置位置及連接形態、步驟、步驟的關係及順序等是一例,其主旨不在於限定申請專利範圍。
以下,說明編碼裝置及解碼裝置的實施形態。實施形態為可套用本揭示之各態樣中所說明的處理及/或構成的編碼裝置及解碼裝置的例子。處理及/或構成在與實施形態不同的編碼裝置及解碼裝置中亦可實施。例如,關於對實施形態套用的處理及/或構成,亦可實施例如以下任一項。
(1)本揭示之各態樣中所說明的實施形態之編碼裝置或解碼裝置的複數個構成要素當中的任一構成要素,亦可與本揭示之各態樣的任一態樣中所說明的其他構成要素置換或組合。
(2)在實施形態之編碼裝置或解碼裝置中,亦可對藉由該編碼裝置或解碼裝置的複數個構成要素當中一部分的構成要素所進行的功能或處理,進行功能或處理的追加、置換、刪除等任意的變更。例如,任一功能或處理,亦可與本揭示之各態樣的任一態樣中所說明的其他功能或處理置換或組合。
(3)在實施形態之編碼裝置或解碼裝置所實施的方法中,亦可針對該方法所包含的複數個處理當中一部分的處理,進行追加、置換及刪除等任意的變更。例如,方法中的任一處理,亦可與本揭示之各態樣的任一態樣中所說明的其他處理置換或組合。
(4)構成實施形態之編碼裝置或解碼裝置的複數個構成要素當中一部分的構成要素,亦可與本揭示之各態樣的任一態樣中所說明的構成要素組合,亦可與具備有本揭示之各態樣的任一態樣中所說明的功能的一部分的構成要素組合,亦可與實施本揭示之各態樣中所說明的構成要素所實施的處理的一部分的構成要素組合。
(5)具備有實施形態之編碼裝置或解碼裝置的功能的一部分的構成要素、或實施實施形態之編碼裝置或解碼裝置的處理的一部分的構成要素,亦可與本揭示之各態樣的任一態樣中所說明的構成要素、具備有本揭示之各態樣的任一態樣中所說明的功能的一部分的構成要素、或實施本揭示之各態樣的任一態樣中所說明的處理的一部分的構成要素組合或置換。
(6)在實施形態之編碼裝置或解碼裝置所實施的方法中,亦可讓該方法所包含的複數個處理之任一處理,與本揭示之各態樣的任一態樣中所說明的處理、或同樣的任一處理置換或組合。
(7)實施形態之編碼裝置或解碼裝置所實施的方法所包含的複數個處理當中一部分的處理,亦可與本揭示之各態樣的任一態樣中所說明的處理組合。
(8)本揭示之各態樣中所說明的處理及/或構成的實施方法,並不限定於實施形態之編碼裝置或解碼裝置。例如,處理及/或構成亦可實施於與實施形態中所揭示的動態圖像編碼或動態圖像解碼以不同目的來利用的裝置中。
[編碼裝置] 首先,說明實施形態之編碼裝置。圖1是顯示實施形態之編碼裝置100的功能構成的方塊圖。編碼裝置100是以區塊單位來編碼動態圖像的動態圖像編碼裝置。
如圖1所示,編碼裝置100是以區塊單位來編碼圖像的裝置,具備分割部102、減算部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加算部116、區塊記憶體118、迴路濾波部120、幀記憶體122、幀內預測部124、幀間預測部126、及預測控制部128。
編碼裝置100可藉由例如通用處理器及記憶體來實現。此情況下,由處理器執行儲存於記憶體的軟體程式時,處理器是作為分割部102、減算部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加算部116、迴路濾波部120、幀內預測部124、幀間預測部126、及預測控制部128而發揮功能。又,亦可利用專用之1個以上的電子電路來實現編碼裝置100,且前述專用之1個以上的電子電路對應於分割部102、減算部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加算部116、迴路濾波部120、幀內預測部124、幀間預測部126、及預測控制部128。
以下說明編碼裝置100整體的處理流程,之後再說明編碼裝置100包含的各構成要素。
[編碼處理的整體流程] 圖2是顯示編碼裝置100所進行之整體的編碼處理的一例之流程圖。
首先,編碼裝置100的分割部102將動態圖像即輸入圖像所包含的各圖片分割成複數個固定尺寸的區塊(例如128×128像素)(步驟Sa_1)。接著,分割部102對該固定尺寸的區塊選擇分割樣式(又稱作區塊形狀)(步驟Sa_2)。也就是說,分割部102進一步將固定尺寸的區塊分割成:構成該已選擇之分割樣式的複數個區塊。接著,編碼裝置100針對該等複數個區塊的各區塊,對該區塊(亦即編碼對象區塊)進行步驟Sa_3~Sa_9的處理。
也就是說,由幀內預測部124、幀間預測部126及預測控制部128的全部或一部分所構成的預測處理部,會生成編碼對象區塊(又稱作當前區塊)的預測訊號(又稱作預測區塊)(步驟Sa_3)。
其次,減算部104生成編碼對象區塊與預測區塊的差分,來作為預測殘差(又稱作差分區塊)(步驟Sa_4)。
其次,轉換部106及量化部108對該差分區塊進行轉換及量化,藉此生成複數個量化係數(步驟Sa_5)。再者,由複數個量化係數所構成的區塊又稱作係數區塊。
其次,熵編碼部110對該係數區塊與有關預測訊號之生成的預測參數進行編碼(具體而言是熵編碼),藉此生成編碼訊號(步驟Sa_6)。再者,編碼訊號又稱作編碼位元串流、壓縮位元串流或串流。
其次,反量化部112及反轉換部114對係數區塊進行反量化及反轉換,藉此復原複數個預測殘差(亦即差分區塊)(步驟Sa_7)。
其次,加算部116對該已復原之差分區塊加上預測區塊,藉此將當前區塊重構成重構圖像(又稱作重構區塊或解碼圖像區塊)(步驟Sa_8)。藉此,重構圖像生成。
當此重構圖像生成後,迴路濾波部120因應需要而對該重構圖像進行濾波(步驟Sa_9)。
接著,編碼裝置100判定圖片整體的編碼是否已結束(步驟Sa_10),當判定尚未結束時(步驟Sa_10的否),重複執行從步驟Sa_2開始的處理。
再者,於上述的例子,編碼裝置100雖然對固定尺寸的區塊選擇1個分割樣式,並依照該分割樣式進行各區塊的編碼,但亦可依照複數種分割樣式的各樣式來進行各區塊的編碼。在此情況下,編碼裝置100亦可評價對於複數種分割樣式的各樣式的成本,並選擇依據例如最小成本之分割樣式進行編碼所得的編碼訊號,來作為要輸出的編碼訊號。
如圖示,該等步驟Sa_1~Sa_10之處理是藉由編碼裝置100依序進行。或,亦可並列地進行該等處理當中一部分的複數個處理,亦可進行該等處理之順序的替換等。
[分割部] 分割部102將輸入動態圖像所包含的各圖片分割成複數個區塊,並將各區塊輸出至減算部104。例如,分割部102首先將圖片分割成固定尺寸(例如128x128)的區塊。亦可採用其他的固定區塊尺寸。此固定尺寸的區塊有時稱為編碼樹單元(CTU)。接著,分割部102根據例如遞迴的四元樹(quadtree)及/或二元樹(binary tree)區塊分割,將固定尺寸的各個區塊分割成可變尺寸(例如64×64以下)的區塊。亦即,分割部102選擇分割樣式。此可變尺寸的區塊有時稱為編碼單元(CU)、預測單元(PU)或轉換單元(TU)。再者,於各種處理例,亦可不必區分CU、PU及TU,而使圖片內的一部分或全部區塊成為CU、PU、TU的處理單位。
圖3是顯示實施形態之區塊分割的一例的概念圖。於圖3,實線表示四元樹區塊分割的區塊邊界,虛線表示二元樹區塊分割的區塊邊界。
在此,區塊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區塊分割成16×32區塊16,2個16×16區塊17、18,2個32×32區塊19、20,及2個32×16區塊21、22。
右下64×64區塊23不分割。
如以上,於圖3,區塊10根據遞迴的四元樹及二元樹區塊分割,分割成13個可變尺寸的區塊11~23。這樣的分割有時稱為QTBT(quad-tree plus binary tree:四元樹加二元樹)分割。
再者,於圖3,1個區塊雖分割成4個或2個區塊(四元樹或二元樹區塊分割),但分割不限定於該等分割。例如1個區塊亦可分割成3個區塊(三元樹區塊分割)。這種包含三元樹區塊分割的分割,有時稱為MBT(multi type tree:多類型樹)分割。
[圖片的構成 切片/圖塊] 為了並列地解碼圖片,圖片有時以切片(slice)單位或圖塊(tile)單位構成。由切片單位或圖塊單位構成的圖片亦可藉由分割部102來構成。
切片是構成圖片之基本的編碼單位。圖片是由例如1個以上的切片所構成。又,切片是由1個以上之連續的CTU(Coding Tree Unit)所構成。
圖4A是顯示切片之構成的一例的概念圖。例如,圖片包含11×8個CTU,且被分割成4個切片(切片1-4)。切片1由16個CTU構成,切片2由21個CTU構成,切片3由29個CTU構成,切片4由22個CTU構成。在此,圖片內的各CTU屬於任一切片。切片的形狀成為朝水平方向分割圖片後的形狀。切片的邊界不必在畫面端,在畫面內的CTU的邊界當中的何處皆可。切片之中的CTU的處理順序(編碼順序或解碼順序)例如是逐線掃描(Raster scan)順序。又,切片包含標頭資訊與編碼資料。標頭資訊中亦可記述切片開頭的CTU位址、切片類型等該切片的特徵。
圖塊是構成圖片之矩形區域的單位。各圖塊亦可依逐線掃描順序而被分配稱作TileId的號碼。
圖4B是顯示圖塊之構成的一例的概念圖。例如,圖片包含11×8個CTU,且被分割成4個矩形區域的圖塊(圖塊1-4)。當使用圖塊時,相較於不使用圖塊的情況, CTU的處理順序會變更。當不使用圖塊時,圖片內的複數個CTU依逐線掃描順序處理。當使用圖塊時,在複數個圖塊的各圖塊中,至少1個CTU會依逐線掃描順序處理。例如,如圖4B所示,圖塊1包含的複數個CTU的處理順序是以下順序:從圖塊1的第1列左端起朝向圖塊1的第1列右端為止,接下來,從圖塊1的第2列左端起朝向圖塊1的第2列右端為止。
再者,1個圖塊有時包含1個以上的切片,1個切片有時包含1個以上的圖塊。
[減算部] 減算部104以從分割部102輸入且藉由分割部102分割而成的區塊為單位,從原訊號(原樣本)減去預測訊號(從以下所示之預測控制部128輸入的預測樣本)。也就是說,減算部104會算出編碼對象區塊(以下稱作當前區塊)的預測誤差(亦稱作殘差)。接著,減算部104將算出的預測誤差(殘差)輸出至轉換部106。
原訊號為編碼裝置100的輸入訊號,且為表示構成動態圖像之各圖片的圖像之訊號(例如亮度(luma)訊號及2個色差(chroma)訊號)。以下有時亦將表示圖像的訊號稱為樣本。
[轉換部] 轉換部106將空間域的預測誤差轉換成頻率域的轉換係數,並將轉換係數輸出至量化部108。具體而言,轉換部106是對例如空間域的預測誤差進行預定的離散餘弦轉換(DCT)或離散正弦轉換(DST)。預定的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。圖5A顯示對應於轉換類型例之轉換基底函數的表。於圖5A,N表示輸入像素數。從該等複數種轉換類型中選擇轉換類型時,可取決於例如預測的種類(幀內預測及幀間預測),或取決於幀內預測模式。
這種表示是否套用EMT或AMT的資訊(例如稱為EMT旗標或AMT旗標)、及表示已選擇之轉換類型的資訊,通常是以CU級別來訊號化。再者,該等資訊的訊號化不必限定在CU級別,亦可為其他級別(例如位元序列(bit sequence)級別、圖片(picture)級別、切片(slice)級別、圖塊(tile)級別或CTU級別)。
又,轉換部106亦可將轉換係數(轉換結果)進行再轉換。這樣的再轉換有時稱為AST(adaptive secondary transform:適應性二次轉換)或NSST(non-separable secondary transform:不可分離二次轉換)。例如,轉換部106將對應於幀內預測誤差的轉換係數之區塊所包含的每個子區塊(例如4×4子區塊)進行再轉換。表示是否套用NSST的資訊、及有關於用於NSST之轉換矩陣的資訊,通常是以CU級別來訊號化。再者,該等資訊的訊號化不必限定在CU級別,亦可為其他級別(例如序列級別、圖片級別、切片級別、圖塊級別或CTU級別)。
轉換部106亦可套用可分離(Separable)轉換與不可分離(Non-Separable)轉換。可分離轉換是指就輸入之維度的數目而按每個方向分離來進行複數次轉換的方式,不可分離轉換是指在輸入為多維之際,將2個以上的維度統整視為1維而一次進行轉換的方式。
例如,可舉以下例來作為不可分離轉換的一例:在輸入為4×4區塊時,將前述區塊視為具有16個要素的一個陣列,且以16×16的轉換矩陣對前述陣列進行轉換處理。
又,在不可分離轉換之更進一步的例子中,亦可在將4×4輸入區塊視為具有16個要素的一個陣列後,進行如對該陣列進行複數次吉文斯旋轉之轉換(Hypercube Givens Transform:超立方體吉文斯轉換)。
於轉換部106的轉換中,也可因應於CU內的區域來切換轉換成頻率域的基底之類型。舉一例來說,有SVT(Spatially Varying Transform:空間變化轉換)。在SVT中,如圖5B所示,沿水平或垂直方向將CU分成2等分,只對其中一邊的區域進行往頻率域的轉換。轉換基底的類型可依每個區域設定,例如可使用DST7與DCT8。於本例,在CU內的2個區域中,只進行其中一邊的轉換,另一邊則不進行轉換,但也可2個區域都轉換。又,分割方法也不只有2等分,亦可為4等分,或採用更靈活的方法,將表示分割的資訊另外編碼再與CU分割同樣地傳訊等。再者,SVT有時也稱為SBT(Sub-block Transform:子區塊轉換)。
[量化部] 量化部108將從轉換部106輸出的轉換係數進行量化。具體而言,量化部108以預定的掃描順序掃描當前區塊的轉換係數,根據對應於經掃描的轉換係數之量化參數(QP)來量化該轉換係數。然後,量化部108將當前區塊之經量化的轉換係數(以下稱為量化係數)輸出至熵編碼部110及反量化部112。預定的掃描順序亦可事先決定。
預定的掃描順序是轉換係數之量化/反量化用的順序。例如,預定的掃描順序亦可是以頻率的升序(從低頻往高頻的順序)或降序(從高頻往低頻的順序)來定義。
量化參數(QP)是定義量化步距(量化寬度)的參數。例如,若增加量化參數之值,則量化步距亦增加。也就是說,若量化參數之值增加,則量化誤差增大。
又,量化有時會使用量化矩陣。例如,有時會對應於4×4及8×8等之頻率轉換尺寸、幀內預測及幀間預測等之預測模式、亮度及色差等之像素成分,來使用數種類的量化矩陣。再者,量化是指讓以預定的間隔取樣的值與預定的級別相對應並進行數位化,在本技術領域中,既可使用取整、捨入(rounding)、縮放(scaling)之類的其他表現方式來參考,亦可採用取整、捨入、縮放。預定的間隔及級別亦可事先決定。
作為使用量化矩陣的方法,有使用在編碼裝置側直接設定的量化矩陣之方法、及使用預設的量化矩陣(預設矩陣:default matrix)之方法。藉由在編碼裝置側直接設定量化矩陣,可設定因應於圖像的特徵之量化矩陣。然而此情況下,有因為量化矩陣之編碼而造成編碼量增加的缺點。
另一方面,也有不使用量化矩陣而將高頻成分的係數及低頻成分的係數都同樣進行量化的方法。再者,此方法等同於使用係數全部為相同值的量化矩陣(平面的矩陣)之方法。
也可利用例如SPS(序列參數集:Sequence Parameter Set)或PPS(圖片參數集:Picture Parameter Set)來指定量化矩陣。SPS包含可對序列使用的參數,PPS包含可對圖片使用的參數。SPS及PPS有時單純稱作參數集。
[熵編碼部] 熵編碼部110根據從量化部108輸入的量化係數來生成編碼訊號(編碼位元串流)。具體而言,熵編碼部110例如將量化係數二值化,將二值訊號予以算術編碼,並輸出經壓縮的位元串流或序列。
[反量化部] 反量化部112將從量化部108輸入的量化係數反量化。具體而言,反量化部112以預定的掃描順序來將當前區塊的量化係數反量化。接著,反量化部112將當前區塊之經反量化的轉換係數輸出至反轉換部114。預定的掃描順序亦可事先決定。
[反轉換部] 反轉換部114將從反量化部112輸入的轉換係數反轉換,藉此復原預測誤差(殘差)。具體而言,反轉換部114藉由對轉換係數進行與轉換部106的轉換相對應的反轉換,來復原當前區塊的預測誤差。接著,反轉換部114將經復原的預測誤差輸出至加算部116。
再者,由於經復原的預測誤差通常會因為量化而失去資訊,因此不會與減算部104所算出的預測誤差一致。亦即,經復原的預測誤差通常包含有量化誤差。
[加算部] 加算部116將從反轉換部114輸入的預測誤差與從預測控制部128輸入的預測樣本相加,藉此來重構當前區塊。接著,加算部116將重構的區塊輸出至區塊記憶體118及迴路濾波部120。重構區塊有時亦稱為局部(local)解碼區塊。
[區塊記憶體] 區塊記憶體118是用以儲存例如以下區塊的記憶部:在幀內預測中參考的區塊,並且是編碼對象圖片(稱為當前圖片)內的區塊。具體而言,區塊記憶體118儲存從加算部116輸出的重構區塊。
[幀記憶體] 幀記憶體122例如是用於儲存在幀間預測中使用的參考圖片之記憶部,有時也稱作幀緩衝器。具體而言,幀記憶體122儲存已藉由迴路濾波部120濾波的重構區塊。
[迴路濾波部] 迴路濾波部120對藉由加算部116重構的區塊施加迴路濾波,將經濾波的重構區塊輸出至幀記憶體122。迴路濾波是在編碼迴路內使用的濾波器(迴路內濾波器:In-loop filter),包含有例如解區塊濾波器(DF或DBF)、樣本適應性偏移(SAO:Sample Adaptive Offset)、及適應性迴路濾波器(ALF:Adaptive Loop Filter)等。
在ALF中是套用用以去除編碼失真的最小平方誤差濾波器,來對例如當前區塊內的每個2×2子區塊,套用根據局部梯度(gradient)之方向及活性度(activity)而從複數個濾波器中選擇的1個濾波器。
具體而言,首先將子區塊(例如2×2子區塊)分類成複數個組別(例如15或25組)。子區塊的分類是根據梯度的方向及活性度來進行。例如,使用梯度的方向值D(例如0~2或0~4)及梯度的活性值A(例如0~4)來算出分類值C(例如C=5D+A)。接著,根據分類值C將子區塊分類成複數個組別。
梯度的方向值D例如是藉由比較複數個方向(例如水平、垂直及2個對角方向)的梯度而導出。又,梯度的活性值A例如是對複數個方向的梯度進行加算,再將加算結果藉由量化來導出。
根據這樣的分類結果,從複數個濾波器中決定子區塊用的濾波器。
作為在ALF使用的濾波器形狀,可利用例如圓對稱形狀。圖6A~圖6C是顯示在ALF使用的濾波器形狀的複數個例子之圖。圖6A顯示5×5菱形形狀濾波器,圖6B顯示7×7菱形形狀濾波器,圖6C顯示9×9菱形形狀濾波器。顯示濾波器形狀的資訊通常是以圖片級別訊號化。再者,顯示濾波器形狀的資訊之訊號化不必限定在圖片級別,亦可為其他級別(例如序列級別、切片級別、圖塊級別、CTU級別或CU級別)。
ALF的開啟/關閉亦可以例如圖片級別或CU級別來決定。例如,針對亮度亦可以CU級別決定是否套用ALF,針對色差亦可以圖片級別決定是否套用ALF。顯示ALF之開啟/關閉的資訊通常是以圖片級別或CU級別來訊號化。再者,表示ALF之開啟/關閉的資訊之訊號化不必限定在圖片級別或CU級別,亦可為其他級別(例如序列級別、切片級別、圖塊級別或CTU級別)。
可選擇的複數個濾波器(例如到15個或25個的濾波器)之係數集通常是以圖片級別訊號化。再者,係數集之訊號化不必限定在圖片級別,亦可為其他級別(例如序列級別、切片級別、圖塊級別、CTU級別、CU級別或子區塊級別)。
[迴路濾波部>解區塊濾波器] 在解區塊濾波器中,迴路濾波部120對重構圖像的區塊邊界進行濾波處理,藉此減少該區塊邊界產生的失真。
圖7是顯示作為解區塊濾波器來發揮功能的迴路濾波部120的詳細構成的一例之方塊圖。
迴路濾波部120具備:邊界判定部1201、濾波判定部1203、濾波處理部1205、處理判定部1208、濾波特性決定部1207、開關1202、1204及1206。
邊界判定部1201判定欲進行解區塊濾波處理的像素(即對象像素)是否存在於區塊邊界附近。接著,邊界判定部1201將其判定結果輸出至開關1202及處理判定部1208。
在已藉由邊界判定部1201判定對象像素存在於區塊邊界附近時,開關1202將濾波處理前的圖像輸出至開關1204。反之,在已藉由邊界判定部1201判定對象像素不存在於區塊邊界附近時,開關1202將濾波處理前的圖像輸出至開關1206。
濾波器判定部1203根據位在對象像素的周邊之至少1個周邊像素的像素值,來判定是否對對象像素進行解區塊濾波處理。接著,濾波判定部1203將其判定結果輸出至開關1204及處理判定部1208。
在已藉由濾波判定部1203判定對對象像素進行解區塊濾波處理時,開關1204將已透過開關1202取得的濾波處理前的圖像輸出至濾波處理部1205。反之,在已藉由濾波判定部1203判定不對對象像素進行解區塊濾波處理時,開關1204將已透過開關1202取得的濾波處理前的圖像輸出至開關1206。
在已透過開關1202及1204取得濾波處理前的圖像時,濾波處理部1205對對象像素執行解區塊濾波處理,其中前述解區塊濾波處理具有已藉由濾波特性決定部1207所決定的濾波特性。接著,濾波處理部1205將該濾波處理後的像素輸出至開關1206。
開關1206因應於處理判定部1208的控制,選擇性地輸出未被解區塊濾波處理的像素、與已藉由濾波處理部1205解區塊濾波處理過的像素。
處理判定部1208根據邊界判定部1201及濾波判定部1203各自的判定結果來控制開關1206。也就是說,在已藉由邊界判定部1201判定對象像素存在於區塊邊界附近,且,已藉由濾波判定部1203判定對對象像素進行解區塊濾波處理時,處理判定部1208使經解區塊濾波處理的像素從開關1206輸出。又,於上述的情形以外,處理判定部1208則使未經解區塊濾波處理的像素從開關1206輸出。藉由重複進行這樣的像素之輸出,而從開關1206輸出濾波處理後的圖像。
圖8是顯示對區塊邊界具有對稱的濾波特性之解區塊濾波器的例子之概念圖。
在解區塊濾波處理中,例如使用像素值與量化參數來選擇特性相異的2個解區塊濾波器,即選擇強濾波器及弱濾波器中之任一種濾波器。在強濾波器中,如圖8所示,當隔著區塊邊界存在有像素p0~p2及像素q0~q2時,藉由進行例如以下數式所示的運算,來將像素q0~q2之各自的像素值變更成像素值q’0~q’2。 q’0=(p1+2×p0+2×q0+2×q1+q2+4)/8 q’1=(p0+q0+q1+q2+2)/4 q’2=(p0+q0+q1+3×q2+2×q3+4)/8
再者,在上述數式中,p0~p2及q0~q2是像素p0~p2及像素q0~q2各自的像素值。又,q3是在區塊邊界的相反側鄰接於像素q2的像素q3之像素值。又,在上述各數式的右邊,與解區塊濾波處理中使用的各像素的像素值相乘的係數為濾波係數。
進而,在解區塊濾波處理中,為了不讓運算後的像素值設定成超過閾值,也可進行剪裁(clip)處理。在此剪裁處理中,依上述數式進行之運算後的像素值是使用由量化參數決定的閾值,來剪裁成「運算對象像素值±2×閾值」。藉此,可防止過度的平滑化。
圖9是用以說明進行解區塊濾波處理之區塊邊界的概念圖。圖10是顯示Bs值之一例的概念圖。
進行解區塊濾波處理的區塊邊界例如是如圖9所示之8×8像素區塊的PU(Prediction Unit:預測單元)或TU(Transform Unit:轉換單元)的邊界。解區塊濾波處理可以4列或4行為單位來進行。首先,對圖9所示之區塊P及區塊Q,如圖10所示地決定Bs(Boundary Strength:邊界強度)值。
依照圖10的Bs值,就算是屬於同一圖像的區塊邊界,也會決定是否進行不同強度的解區塊濾波處理。對色差訊號的解區塊濾波處理是在Bs值為2的時候進行。對亮度訊號的解區塊濾波處理是在Bs值為1以上且滿足預定條件的時候進行。預定條件亦可事先決定。再者,Bs值的判定條件不限定於圖10所示者,亦可根據其他參數來決定。
[預測處理部(幀內預測部、幀間預測部、預測控制部)] 圖11是顯示在編碼裝置100之預測處理部進行的處理之一例的流程圖。再者,預測處理部是由幀內預測部124、幀間預測部126及預測控制部128的全部或一部分的構成要素所構成。
預測處理部生成當前區塊的預測圖像(步驟Sb_1)。此預測圖像也稱作預測訊號或預測區塊。再者,預測訊號有例如幀內預測訊號或幀間預測訊號。具體而言,預測處理部使用已得到的重構圖像來生成當前區塊的預測圖像,其中前述重構圖像是藉由進行預測區塊的生成、差分區塊的生成、係數區塊的生成、差分區塊的復原及解碼圖像區塊的生成而得到。
重構圖像例如可為參考圖片之圖像,也可為包含有當前區塊的圖片即當前圖片內的編碼完畢的區塊之圖像。當前圖片內的編碼完畢的區塊例如為當前區塊的鄰接區塊。
圖12是顯示在編碼裝置100之預測處理部進行的處理之其他例的流程圖。
預測處理部以第1方式生成預測圖像(步驟Sc_1a),以第2方式生成預測圖像(步驟Sc_1b),以第3方式生成預測圖像(步驟Sc_1c)。第1方式、第2方式及第3方式為用於生成預測圖像之互相不同的方式,分別也可為例如幀間預測方式、幀內預測方式、及該等以外的預測方式。在這些預測方式中,亦可使用上述之重構圖像。
其次,預測處理部選擇步驟Sc_1a、Sc_1b及Sc_1c所生成的複數個預測圖像中的任一個(步驟Sc_2)。此預測圖像之選擇,亦即用於得到最終的預測圖像的方式或模式之選擇,亦可是算出對於已生成的各預測圖像的成本,並根據其成本來進行。或,該預測圖像之選擇亦可根據在編碼處理中使用的參數來進行。編碼裝置100亦可將用以特定出該已選擇的預測圖像、方式或模式之資訊,訊號化成編碼訊號(也稱作編碼位元串流)。該資訊亦可為例如旗標等。藉此,解碼裝置可根據該資訊,按照已在編碼裝置100中選擇的方式或模式來生成預測圖像。再者,在圖12所示的例子中,預測處理部是以各方式生成預測圖像後,選擇任一個預測圖像。然而,預測處理部亦可在生成該等預測圖像之前,根據在上述之編碼處理中使用的參數來選擇方式或模式,並依照該方式或模式來生成預測圖像。
例如,第1方式及第2方式亦可分別為幀內預測及幀間預測,且預測處理部從依照該等預測方式所生成的預測圖像中,來選擇對於當前區塊之最終的預測圖像。
圖13是顯示在編碼裝置100之預測處理部進行的處理之其他例的流程圖。
首先,預測處理部藉由幀內預測來生成預測圖像(步驟Sd_1a),且藉由幀間預測來生成預測圖像(步驟Sd_1b)。再者,藉由幀內預測所生成的預測圖像也稱作幀內預測圖像,藉由幀間預測所生成的預測圖像也稱作幀間預測圖像。
其次,預測處理部分別評價幀內預測圖像及幀間預測圖像(步驟Sd_2)。在此評價中亦可使用成本。也就是說,預測處理部算出幀內預測圖像及幀間預測圖像各自的成本C。此成本C可藉由R-D最佳化模型的數式,例如C=D+λ×R來算出。在此數式中,D為預測圖像的編碼失真,且藉由例如當前區塊的像素值與預測圖像的像素值之絕對差值和等來表示。又,R為預測圖像的產生編碼量,具體而言為用以生成預測圖像的移動資訊等編碼所需要的編碼量等。又,λ例如為拉格朗日(Lagrange)乘數。
接著,預測處理部從幀內預測圖像及幀間預測圖像,選擇算出了最小成本C的預測圖像,來作為當前區塊之最終的預測圖像(步驟Sd_3)。也就是說,選擇用以生成當前區塊的預測圖像之預測方式或模式。
[幀內預測部] 幀內預測部124參考已儲存於區塊記憶體118的當前圖片內之區塊,進行當前區塊的幀內預測(也稱作畫面內預測),藉此生成預測訊號(幀內預測訊號)。具體而言,幀內預測部124參考鄰接於當前區塊之區塊的樣本(例如亮度值、色差值)來進行幀內預測,藉此生成幀內預測訊號,且將幀內預測訊號輸出至預測控制部128。
例如,幀內預測部124使用規定之複數個幀內預測模式中的1個來進行幀內預測。複數個幀內預測模式通常包含1個以上的非方向性預測模式與複數個方向性預測模式。規定的複數個模式亦可事先規定。
1個以上的非方向性預測模式包含有例如以H.265/HEVC標準所規定的平面(Planar)預測模式及直流(DC)預測模式。
複數個方向性預測模式例如包含以H.265/ HEVC標準所規定之33個方向的預測模式。再者,複數個方向性預測模式除了33個方向外,亦可進一步包含32個方向的預測模式(合計65個方向性預測模式)。圖14是顯示幀內預測中可使用之共67個的幀內預測模式(2個非方向性預測模式及65個方向性預測模式)之概念圖。實線箭頭表示以H.265/HEVC標準規定的33個方向,虛線箭頭表示追加的32個方向(2個非方向性預測模式未圖示於圖14)。
於各種處理例,亦可在色差區塊的幀內預測中參考亮度區塊。也就是說,亦可根據當前區塊的亮度成分,預測當前區塊的色差成分。這種幀內預測有時也被稱作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根據該移動資訊進行移動補償(或移動預測),來生成當前區塊或子區塊的幀間預測訊號。幀間預測部126將已生成的幀間預測訊號輸出至預測控制部128。
使用於移動補償的移動資訊亦可以多種形態予以訊號化,來作為幀間預測訊號。例如,移動向量亦可被訊號化。舉其他例來說,移動向量與移動向量預測子(motion vector predictor)之差分亦可被訊號化。
[幀間預測的基本流程] 圖15是顯示幀間預測的基本流程之一例的流程圖。
首先,幀間預測部126生成預測圖像(步驟Se_1~Se_3)。其次,減算部104生成當前區塊與預測圖像之差分來作為預測殘差(步驟Se_4)。
在此,幀間預測部126在預測圖像的生成中,是藉由進行當前區塊的移動向量(MV)之決定(步驟Se_1及Se_2)及移動補償(步驟Se_3),來生成該預測圖像。又,幀間預測部126在MV的決定中,是藉由進行候選移動向量(候選MV)的選擇(步驟Se_1)及MV的導出(步驟Se_2),來決定該MV。候選MV的選擇例如是藉由從候選MV清單選擇至少1個候選MV來進行。又,在MV的導出中,幀間預測部126亦可從至少1個候選MV,進一步選擇至少1個候選MV,藉此決定該已選擇的至少1個候選MV來作為當前區塊的MV。或,幀間預測部126亦可針對該已選擇的至少1個候選MV之各個,估測以該候選MV所指示的參考圖片的區域,藉此決定當前區塊的MV。再者,亦可將此估測參考圖片的區域之情形稱作移動估測(motion estimation)。
又,在上述的例子中,步驟Se_1~Se_3雖是藉由幀間預測部126來進行,但例如步驟Se_1或步驟Se_2等之處理,亦可藉由編碼裝置100包含的其他構成要素來進行。
[移動向量的導出流程] 圖16是顯示移動向量導出之一例的流程圖。
幀間預測部126以將移動資訊(例如MV)編碼的模式來導出當前區塊的MV。在此情況下,例如移動資訊作為預測參數被編碼,並被訊號化。也就是說,已被編碼的移動資訊包含於編碼訊號(也稱作編碼位元串流)。
或,幀間預測部126以不將移動資訊編碼的模式來導出MV。在此情況下,編碼訊號不包含移動資訊。
在此,在導出MV的模式中,亦可有後述的一般幀間模式、合併模式、FRUC模式及仿射模式等。該等模式中,將移動資訊編碼的模式有一般幀間模式、合併模式及仿射模式(具體而言是仿射幀間模式及仿射合併模式)等。再者,移動資訊不只包含有MV,亦可包含有後述的移動向量預測子選擇資訊。又,不將移動資訊編碼的模式有FRUC模式等。幀間預測部126從該等複數個模式選擇用於導出當前區塊的MV的模式,並使用該已選擇的模式來導出當前區塊的MV。
圖17是顯示移動向量導出之其他例的流程圖。
幀間預測部126以將差分MV編碼的模式來導出當前區塊的MV。在此情況下,例如差分MV作為預測參數被編碼,並被訊號化。也就是說,已編碼的差分MV包含於編碼訊號。此差分MV為當前區塊的MV與其預測MV之差。
或,幀間預測部126以不將差分MV編碼的模式來導出MV。在此情況下,編碼訊號不包含已編碼的差分MV。
在此,如上述,導出MV的模式有後述的一般幀間、合併模式、FRUC模式及仿射模式等。該等模式中,將差分MV編碼的模式有一般幀間模式及仿射模式(具體而言是仿射幀間模式)等。又,不將差分MV編碼的模式有FRUC模式、合併模式及仿射模式(具體而言是仿射合併模式)等。幀間預測部126從該等複數個模式選擇用於導出當前區塊的MV的模式,並使用該已選擇的模式來導出當前區塊的MV。
[移動向量的導出流程] 圖18是顯示移動向量導出之其他例的流程圖。導出MV的模式即幀間預測模式有複數種模式,大致上分成有:將差分MV編碼的模式、不將差分移動向量編碼的模式。不將差分MV編碼的模式有合併模式、FRUC模式及仿射模式(具體而言是仿射合併模式)。這些模式的詳情於後敘述,簡而言之,合併模式是藉由從周邊的編碼完畢區塊選擇移動向量來導出當前區塊的MV的模式,FRUC模式是藉由在編碼完畢區域間進行估測來導出當前區塊的MV的模式。又,仿射模式是設想仿射轉換而導出構成當前區塊的複數個子區塊各自的移動向量,來作為當前區塊的MV的模式。
具體而言,如圖示,在幀間預測模式資訊顯示0時(在Sf_1為0),幀間預測部126藉由合併模式來導出移動向量(Sf_2)。又,在幀間預測模式資訊顯示1時(在Sf_1為1),幀間預測部126藉由FRUC模式來導出移動向量(Sf_3)。又,在幀間預測模式資訊顯示2時(在Sf_1為2),幀間預測部126藉由仿射模式(具體而言是仿射合併模式)來導出移動向量(Sf_4)。又,在幀間預測模式資訊顯示3時(在Sf_1為3),幀間預測部126藉由將差分MV編碼的模式(例如一般幀間模式)來導出移動向量(Sf_5)。
[MV導出>一般幀間模式] 一般幀間模式是如下的幀間預測模式:從候選MV所示的參考圖片之區域,根據類似於當前區塊的圖像之區塊,導出當前區塊的MV。又,在此一般幀間模式中,差分MV會被編碼。
圖19是顯示一般幀間模式所進行之幀間預測的例子的流程圖。
幀間預測部126首先根據時間上或空間上位於當前區塊周圍的複數個編碼完畢區塊的MV等之資訊,對該當前區塊取得複數個候選MV(步驟Sg_1)。也就是說,幀間預測部126製作候選MV清單。
其次,幀間預測部126從在步驟Sg_1取得的複數個候選MV中,依照預定的優先順序擷取N個(N為2以上的整數)候選MV,將各個候選MV當作移動向量預測子候選(也稱作預測MV候選)(步驟Sg_2)。再者,該優先順序亦可是對N個候選MV之各個事先決定好的順序。
其次,幀間預測部126從該N個移動向量預測子候選中選擇1個移動向量預測子候選,來作為當前區塊的移動向量預測子(也稱作預測MV)(步驟Sg_3)。此時,幀間預測部126將用於識別已選擇的移動向量預測子之移動向量預測子選擇資訊編碼成串流。再者,串流為上述的編碼訊號或編碼位元串流。
其次,幀間預測部126參考編碼完畢參考圖片來導出當前區塊的MV(步驟Sg_4)。此時,幀間預測部126進一步將該已導出的MV與移動向量預測子之差分值作為差分MV而編碼於串流。再者,編碼完畢參考圖片是由編碼後重構的複數個區塊所構成的圖片。
最後,幀間預測部126使用該已導出的MV及編碼完畢參考圖片,對當前區塊進行移動補償,藉此生成該當前區塊的預測圖像(步驟Sg_5)。再者,預測圖像為上述的幀間預測訊號。
又,顯示編碼訊號所包含的在預測圖像之生成中使用的幀間預測模式(在上述例中是一般幀間模式)之資訊,是作為例如預測參數而被編碼。
再者,候選MV清單亦可和其他模式使用的清單共通使用。又,亦可將與候選MV清單有關的處理套用於與其他模式使用的清單有關的處理。此與候選MV清單有關的處理例如為:從候選MV清單擷取或選擇候選MV、重新排列候選MV、或刪除候選MV等。
[MV導出>合併模式] 合併模式是如下的幀間預測模式:從候選MV清單選擇候選MV來作為當前區塊的MV,藉此導出該MV。
圖20是顯示合併模式所進行之幀間預測的例子的流程圖。
幀間預測部126首先根據時間上或空間上位於當前區塊周圍的複數個編碼完畢區塊的MV等之資訊,對該當前區塊取得複數個候選MV(步驟Sh_1)。也就是說,幀間預測部126製作候選MV清單。
其次,幀間預測部126從在步驟Sh_1取得的複數個候選MV中選擇1個候選MV,藉此導出當前區塊的MV(步驟Sh_2)。此時,幀間預測部126將用於識別已選擇的候選MV之MV選擇資訊編碼於串流。
最後,幀間預測部126使用該已導出的MV及編碼完畢參考圖片,對當前區塊進行移動補償,藉此生成該當前區塊的預測圖像(步驟Sh_3)。
又,顯示編碼訊號所包含的在預測圖像之生成中使用的幀間預測模式(在上述例中是合併模式)之資訊,是作為例如預測參數而被編碼。
圖21是用以說明合併模式所進行之當前圖片的移動向量導出處理之一例的概念圖。
首先,生成已登錄有預測MV的候選之預測MV清單。作為預測MV的候選,有如下MV等:空間鄰接預測MV,空間上位於對象區塊周邊的複數個編碼完畢區塊所具有的MV;時間鄰接預測MV,編碼完畢參考圖片中投影了對象區塊的位置之附近的區塊所具有的MV;結合預測MV,組合空間鄰接預測MV與時間鄰接預測MV的MV值所生成的MV;及零預測MV,值為零的MV。
其次,從已登錄在預測MV清單的複數個預測MV中選擇1個預測MV,藉此決定其為對象區塊的MV。
進而,在可變長度編碼部中,將表示已選擇哪一個預測MV的訊號即merge_idx記述在串流中並編碼。
再者,登錄於圖21所說明的預測MV清單之預測MV僅為一例,亦可與圖中的個數為不同的個數,或構成為不包含圖中的預測MV的一部分種類,或構成為追加圖中的預測MV的種類以外的預測MV。
亦可使用藉由合併模式導出的對象區塊的MV,來進行後述的DMVR(decoder motion vector refinement:解碼器側移動向量細化)處理,藉此決定最終的MV。
再者,預測MV的候選為上述之候選MV,預測MV清單為上述之候選MV清單。又,候選MV清單亦可稱作候選清單。又,merge_idx為MV選擇資訊。
[MV導出>FRUC模式] 移動資訊亦可不由編碼裝置側進行訊號化並在解碼裝置側導出。再者,如上述,亦可使用以H.265/ HEVC標準規定的合併模式。又,例如亦可在解碼裝置側進行移動估測,藉此導出移動資訊。在實施形態中,在解碼裝置側,不使用當前區塊的像素值而進行移動估測。
在此,針對在解碼裝置側進行移動估測的模式加以說明。此在解碼裝置側進行移動估測的模式有時稱作PMMVD(pattern matched motion vector derivation:樣式匹配移動向量導出)模式或FRUC(frame rate up-conversion:幀更新率提升轉換)模式。
用流程圖的形式將FRUC處理的一例顯示於圖22。首先,參考空間上或時間上鄰接於當前區塊的編碼完畢區塊的移動向量,生成分別具有移動向量預測子(MV)的複數個候選清單(亦即候選MV清單,且亦可與合併清單共通)(步驟Si_1)。其次,從登錄於候選MV清單的複數個候選MV中選擇最佳候選MV(步驟Si_2)。例如,算出候選MV清單所包含之各候選MV的評價值,根據評價值選擇1個候選MV。接著,根據選擇的候選移動向量,導出當前區塊用的移動向量(步驟Si_4)。具體而言,例如將選擇的候選移動向量(最佳候選MV)直接導出,來作為當前區塊用的移動向量。又,例如亦可在與選擇的候選移動向量對應的參考圖片內的位置的周邊區域進行樣式匹配(pattern matching),藉此導出當前區塊用的移動向量。亦即,亦可對最佳候選MV的周邊區域,使用參考圖片中之樣式匹配及評價值來進行估測,若有評價值為更佳之值的MV,則將最佳候選MV更新為前述MV,並將其當作當前區塊的最終MV。亦可構成為不實施更新處理之構成,而不進行具有更佳評價值的MV之更新。
最後,幀間預測部126使用該已導出的MV及編碼完畢參考圖片,對當前區塊進行移動補償,藉此生成該當前區塊的預測圖像(步驟Si_5)。
以子區塊單位進行處理時,亦可進行完全同樣的處理。
評價值亦可藉由各種方法算出。例如,比較對應於移動向量的參考圖片內的區域之重構圖像與預定的區域(該區域例如以下所示,亦可為其他參考圖片的區域、或當前圖片的鄰接區塊的區域)之重構圖像。預定的區域亦可事先決定。
且,亦可算出2個重構圖像的像素值的差分,並使用於移動向量之評價值。再者,除了差分值,亦可使用其以外的資訊來算出評價值。
其次,針對樣式匹配的例子詳細說明。首先,選擇候選MV清單(例如合併清單)所包含的1個候選MV,來作為樣式匹配之估測的起始點。例如,作為樣式匹配,可使用第1樣式匹配或第2樣式匹配。第1樣式匹配及第2樣式匹配有時分別被稱為雙向匹配(bilateral matching)及模板匹配(template matching)。
[MV導出>FRUC>雙向匹配] 第1樣式匹配是在以下2個區塊間進行樣式匹配:不同的2個參考圖片內的2個區塊,且是沿著當前區塊之移動軌跡(motion trajectory)的2個區塊。因此,在第1樣式匹配中,作為用以算出上述之候選的評價值之預定的區域,使用的是沿著當前區塊的移動軌跡之其他參考圖片內的區域。預定的區域亦可事先決定。
圖23是用以說明在沿著移動軌跡的2個參考圖片中之2個區塊間的第1樣式匹配(雙向匹配)之一例的概念圖。如圖23所示,在第1樣式匹配中,是藉由估測沿著當前區塊(Cur block)之移動軌跡的2個區塊並且是不同的2個參考圖片(Ref0、Ref1)內的2個區塊之配對(pair)中最匹配的配對,來導出2個移動向量(MV0、MV1)。具體而言,對當前區塊導出第1編碼完畢參考圖片(Ref0)內之指定位置的重構圖像與第2編碼完畢參考圖片(Ref1)內之指定位置的重構圖像之差分,並使用得到的差分值來算出評價值,其中前述第1編碼完畢參考圖片是被候選MV指定的圖片,前述第2編碼完畢參考圖片是被將前述候選MV利用顯示時間間隔進行縮放(scaling)後之對稱MV指定的圖片。能夠在複數個候選MV中選擇評價值為最佳值的候選MV來作為最終MV,可帶來好的結果。
在連續的移動軌跡之假設下,指示出2個參考區塊的移動向量(MV0、MV1)是相對於當前圖片(Cur Pic)與2個參考圖片(Ref0、Ref1)之間的時間上的距離(TD0、TD1)成比例。例如,當前圖片在時間上是位於2個參考圖片之間,若從當前圖片往2個參考圖片之時間上的距離相等,則在第1樣式匹配中,會導出鏡射對稱之雙向的移動向量。
[MV導出>FRUC>模板匹配] 在第2樣式匹配(模板匹配)中,是在當前圖片內的模板(在當前圖片內鄰接於當前區塊的區塊(例如上及/或左鄰接區塊))與參考圖片內的區塊之間進行樣式匹配。因此,在第2樣式匹配中,作為用以算出上述之候選的評價值的預定區域,使用的是與當前圖片內之當前區塊鄰接的區塊。
圖24是用以說明在當前圖片內的模板與參考圖片內的區塊之間的樣式匹配(模板匹配)之一例的概念圖。如圖24所示,在第2樣式匹配中,是藉由在參考圖片(Ref0)內估測與當前圖片(Cur Pic)內鄰接於當前區塊(Cur block)之區塊最匹配的區塊,來導出當前區塊的移動向量。具體而言,可對當前區塊,導出左鄰接及上鄰接雙方或其中一方之編碼完畢區域的重構圖像、與被候選MV指定之編碼完畢參考圖片(Ref0)內的同等位置的重構圖像之差分,使用得到的差分值來算出評價值,並在複數個候選MV之中選擇評價值為最佳值的候選MV來作為最佳候選MV。
表示是否套用這種FRUC模式的資訊(例如稱為FRUC旗標)亦可以CU級別來訊號化。又,當套用FRUC模式時(例如FRUC旗標為真時),表示可套用的樣式匹配的方法(第1樣式匹配或第2樣式匹配)之資訊(例如稱為FRUC模式旗標)亦可以CU級別來訊號化。再者,該等資訊的訊號化不必限定在CU級別,亦可為其他級別(例如序列級別、圖片級別、切片級別、圖塊級別、CTU級別或子區塊級別)。
[MV導出>仿射模式] 其次,針對根據複數個鄰接區塊之移動向量而以子區塊單位來導出移動向量的仿射模式加以說明。此模式有時稱作仿射移動補償預測(affine motion compensation prediction)模式。
圖25A是用以說明以複數個鄰接區塊的移動向量為基準之子區塊單位的移動向量的導出之一例的概念圖。在圖25A,當前區塊包含有16個4×4子區塊。在此是根據鄰接區塊的移動向量,導出當前區塊的左上角控制點的移動向量v0,同樣地,根據鄰接子區塊的移動向量,導出當前區塊的右上角控制點的移動向量v1。接著,可藉由以下的式(1A)來投影2個移動向量v0及v1,亦可導出當前區塊內的各子區塊的移動向量(vx,vy)。 [數1]
在此,x及y分別表示子區塊的水平位置及垂直位置,w表示預定的加權係數。預定的加權係數亦可事先決定。
表示這種仿射模式的資訊(例如稱作仿射旗標) 亦可以CU級別來訊號化。再者,此表示仿射模式的資訊之訊號化不必限定在CU級別,亦可為其他級別(例如序列級別、圖片級別、切片級別、圖塊級別、CTU級別或子區塊級別)。
又,在這種仿射模式中,亦可包含有左上角及右上角控制點的移動向量導出方法相異的幾個模式。例如,在仿射模式中有仿射幀間(也稱作仿射一般幀間)模式、及仿射合併模式2種模式。
[MV導出>仿射模式] 圖25B是用以說明具有3個控制點之仿射模式中的子區塊單位的移動向量的導出之一例的概念圖。在圖25B中,當前區塊包含有16個4×4子區塊。在此,根據鄰接區塊的移動向量,導出當前區塊的左上角控制點的移動向量v0,同樣地,根據鄰接區塊的移動向量,導出當前區塊的右上角控制點的移動向量v1,根據鄰接區塊的移動向量,導出當前區塊的左下角控制點的移動向量v2。接著,可藉由以下的式(1B)來投影3個移動向量v0、v1及v2,亦可導出當前區塊內的各子區塊的移動向量(vx,vy)。 [數2]
在此,x及y分別表示子區塊中心的水平位置及垂直位置,w表示當前區塊的寬度,h表示當前區塊的高度。
控制點數目不同(例如2個及3個)的仿射模式亦可以CU級別來切換並被訊號化。再者,表示在CU級別下使用的仿射模式的控制點數目之資訊,亦可以其他級別(例如序列級別、圖片級別、切片級別、圖塊級別、CTU級別或子區塊級別)來訊號化。
又,在這種具有3個控制點的仿射模式中,亦可包含有與左上、右上及左下角控制點之移動向量導出方法不同的幾個模式。例如,在仿射模式中有仿射幀間(也稱作仿射一般幀間)模式及仿射合併模式2種模式。
[MV導出>仿射合併模式] 圖26A、圖26B及圖26C是用以說明仿射合併模式的概念圖。
在仿射合併模式中,如圖26A所示,例如在鄰接於當前區塊的編碼完畢區塊A(左)、區塊B(上)、區塊C(右上)、區塊D(左下)及區塊E(左上)之中,根據對應於以仿射模式編碼的區塊之複數個移動向量,來算出當前區塊的控制點各自的移動向量預測子。具體而言,以編碼完畢區塊A(左)、區塊B(上)、區塊C(右上)、區塊D(左下)及區塊E(左上)之順序來檢查該等區塊,特定出以仿射模式編碼之最初的有效的區塊。根據對應於此特定出的區塊之複數個移動向量,來算出當前區塊的控制點的移動向量預測子。
例如,如圖26B所示,在以鄰接於當前區塊的左邊之區塊A具有2個控制點的仿射模式進行編碼時,會導出投影在包含有區塊A之編碼完畢區塊的左上角及右上角的位置之移動向量v3及v4。接著,從導出的移動向量v3及v4,算出當前區塊之左上角的控制點的移動向量預測子v0、及右上角的控制點的移動向量預測子v1。
例如,如圖26C所示,在以鄰接於當前區塊的左邊之區塊A具有3個控制點的仿射模式進行編碼時,會導出投影在包含有區塊A之編碼完畢區塊的左上角、右上角及左下角的位置之移動向量v3、v4及v5。接著,從導出的移動向量v3、v4及v5,算出當前區塊之左上角的控制點的移動向量預測子v0、右上角的控制點的移動向量預測子v1及左下角的控制點的移動向量預測子v2。
再者,後述圖29之步驟Sj_1中之當前區塊的控制點各自的移動向量預測子之導出,亦可使用此移動向量預測子導出方法。
圖27是顯示仿射合併模式之一例的流程圖。
在仿射合併模式中,如圖示,首先,幀間預測部126導出當前區塊的控制點各自的預測MV(步驟Sk_1)。控制點如圖25A所示,為當前區塊的左上角及右上角的點,或如圖25B所示,為當前區塊的左上角、右上角及左下角的點。
也就是說,如圖26A所示,幀間預測部126按照編碼完畢區塊A(左)、區塊B(上)、區塊C(右上)、區塊D(左下)及區塊E(左上)之順序來檢查該等區塊,特定出以仿射模式編碼的最初的有效的區塊。
接著,在區塊A已被特定且區塊A具有2個控制點時,如圖26B所示,幀間預測部126從包含有區塊A之編碼完畢區塊的左上角及右上角的移動向量v3及v4,算出當前區塊的左上角的控制點的移動向量v0、及右上角的控制點的移動向量v1。例如,幀間預測部126將編碼完畢區塊的左上角及右上角的移動向量v3及v4投影到當前區塊,藉此算出當前區塊的左上角的控制點的移動向量預測子v0及右上角的控制點的移動向量預測子v1。
或,在區塊A已被特定且區塊A具有3個控制點時,如圖26C所示,幀間預測部126從包含有區塊A之編碼完畢區塊的左上角、右上角及左下角的移動向量v3、v4及v5,算出當前區塊的左上角的控制點的移動向量v0、右上角的控制點的移動向量v1、左下角的控制點的移動向量v2。例如,幀間預測部126將編碼完畢區塊的左上角、右上角及左下角的移動向量v3、v4及v5投影到當前區塊,藉此算出當前區塊的左上角的控制點的移動向量預測子v0、右上角的控制點的移動向量預測子v1及左下角的控制點的移動向量v2。
其次,幀間預測部126針對當前區塊所包含之複數個子區塊的各個進行移動補償。亦即,幀間預測部126針對該等複數個子區塊的各個,使用2個移動向量預測子v0及v1與上述之式(1A)、或3個移動向量預測子v0、v1及v2與上述之式(1B),算出該等子區塊的移動向量來作為仿射MV(步驟Sk_2)。接著,幀間預測部126使用該等仿射MV及編碼完畢參考圖片,對該等子區塊進行移動補償(步驟Sk_3)。其結果,對當前區塊進行移動補償,並生成該當前區塊的預測圖像。
[MV導出>仿射幀間模式] 圖28A是用以說明具有2個控制點之仿射幀間模式的概念圖。
在此仿射幀間模式中,如圖28A所示,從鄰接於當前區塊的編碼完畢區塊A、區塊B及區塊C之移動向量所選擇的移動向量,會作為當前區塊的左上角的控制點的移動向量預測子v0來使用。同樣地,從鄰接於當前區塊的編碼完畢區塊D及區塊E之移動向量所選擇的移動向量,會作為當前區塊的右上角的控制點的移動向量預測子v1來使用。
圖28B是用以說明具有3個控制點之仿射幀間模式的概念圖。
在此仿射幀間模式中,如圖28B所示,從鄰接於當前區塊的編碼完畢區塊A、區塊B及區塊C之移動向量所選擇的移動向量,會作為當前區塊的左上角的控制點的移動向量預測子v0來使用。同樣地,從鄰接於當前區塊的編碼完畢區塊D及區塊E之移動向量所選擇的移動向量,會作為當前區塊的右上角的控制點的移動向量預測子v1來使用。進而,從鄰接於當前區塊的編碼完畢區塊F及區塊G之移動向量所選擇的移動向量,會作為當前區塊的左下角的控制點的移動向量預測子v2來使用。
圖29是顯示仿射幀間模式之一例的流程圖。
如圖示,在仿射幀間模式中,首先,幀間預測部126導出當前區塊的2個或3個控制點各自的預測MV(v0,v1)或(v0,v1,v2)(步驟Sj_1)。如圖25A或圖25B所示,控制點為當前區塊的左上角、右上角或左下角的點。
也就是說,幀間預測部126選擇圖28A或圖28B所示的當前區塊的各控制點附近的編碼完畢區塊之中任一個區塊的移動向量,藉此導出當前區塊的控制點的移動向量預測子(v0,v1)或(v0,v1,v2)。此時,幀間預測部126將用於識別已選擇的2個移動向量之移動向量預測子選擇資訊編碼於串流。
例如,幀間預測部126亦可使用成本評價等來決定要從鄰接於當前區塊的編碼完畢區塊,選擇哪一個區塊的移動向量來作為控制點的移動向量預測子,並將表示選擇了哪一個移動向量預測子的旗標記述於位元串流。
其次,幀間預測部126一邊更新在步驟Sj_1選擇或導出的各個移動向量預測子(步驟Sj_2),一邊進行移動估測(步驟Sj_3及Sj_4)。也就是說,幀間預測部126使用上述之式(1A)或式(1B),算出對應於更新的移動向量預測子之各子區塊的移動向量,來作為仿射MV(步驟Sj_3)。接著,幀間預測部126使用該等仿射MV及編碼完畢參考圖片,對各子區塊進行移動補償(步驟Sj_4)。其結果,幀間預測部126在移動估測迴路中,將例如可得到最小成本的移動向量預測子,決定為控制點的移動向量(步驟Sj_5)。此時,幀間預測部126進一步將該已決定的MV與移動向量預測子各自的差分值編碼於串流,來作為差分MV。
最後,幀間預測部126使用該已決定的MV及編碼完畢參考圖片,對當前區塊進行移動補償,藉此生成該當前區塊的預測圖像(步驟Sj_6)。
[MV導出>仿射幀間模式] 以CU級別切換不同控制點數目(例如2個及3個)的仿射模式並訊號化時,有在編碼完畢區塊與當前區塊中控制點的數目不同的情況。圖30A及圖30B是用以說明在編碼完畢區塊與當前區塊中控制點的數目不同時的控制點之預測向量導出方法的概念圖。
例如,如圖30A所示,在以當前區塊具有左上角、右上角及左下角3個控制點,且鄰接於當前區塊的左邊的區塊A具有2個控制點之仿射模式進行編碼時,會導出投影到包含有區塊A之編碼完畢區塊的左上角及右上角的位置之移動向量v3及v4。接著,從已導出的移動向量v3及v4,算出當前區塊的左上角的控制點的移動向量預測子v0、及右上角的控制點的移動向量預測子v1。進而,從已導出的移動向量v0及v1,算出左下角的控制點的移動向量預測子v2。
例如,如圖30B所示,在以當前區塊具有左上角及右上角2個控制點,且鄰接於當前區塊的左邊的區塊A具有3個控制點之仿射模式進行編碼時,會導出投影到包含有區塊A之編碼完畢區塊的左上角、右上角及左下角的位置之移動向量v3、v4及v5。接著,從已導出的移動向量v3、v4及v5,算出當前區塊的左上角的控制點的移動向量預測子v0、及右上角的控制點的移動向量預測子v1。
圖29的步驟Sj_1中之當前區塊的控制點各自的移動向量預測子之導出,亦可使用此移動向量預測子導出方法。
[MV導出>DMVR] 圖31A是顯示合併模式及DMVR之關係的流程圖。
幀間預測部126以合併模式來導出當前區塊的移動向量(步驟Sl_1)。其次,幀間預測部126判定是否進行移動向量之估測,亦即判定是否進行移動估測(步驟Sl_2)。在此,幀間預測部126在判定不進行移動估測時(步驟Sl_2的否),將步驟Sl_1所導出的移動向量決定為對於當前區塊的最終移動向量(步驟Sl_4)。亦即,在此情況下是以合併模式來決定當前區塊的移動向量。
另一方面,在步驟Sl_1判定進行移動估測時(步驟Sl_2的是),幀間預測部126藉由估測步驟Sl_1所導出之移動向量所示的參考圖片的周邊區域,對當前區塊導出最終移動向量(步驟Sl_3)。亦即,在此情況下是以DMVR來決定當前區塊的移動向量。
圖31B是用以說明用來決定MV的DMVR處理之一例的概念圖。
首先,(例如在合併模式中)令設定於當前區塊的最適MVP為候選MV。接著,依照候選MV(L0),從L0方向的編碼完畢圖片即第1參考圖片(L0)特定出參考像素。同樣地,依照候選MV(L1),從L1方向的編碼完畢圖片即第2參考圖片(L1)特定出參考像素。藉由取該等參考像素的平均來生成模板。
其次,使用前述模板,分別估測第1參考圖片(L0)及第2參考圖片(L1)之候選MV的周邊區域,將成本為最小的MV決定為最終MV。再者,亦可使用例如模板的各像素值與估測區域的各像素值之差分值及候選MV值等來算出成本值。
再者,典型來說,在編碼裝置及後述之解碼裝置中,此處所說明的處理之構成及動作基本上是共通的。
就算並非此處所說明的處理例本身,只要是能估測候選MV的周邊來導出最終MV的處理,使用何種處理皆可。
[移動補償>BIO/OBMC] 在移動補償中,有生成預測圖像且修正該預測圖像的模式。該模式例如為後述的BIO及OBMC。
圖32是顯示預測圖像的生成之一例的流程圖。
幀間預測部126生成預測圖像(步驟Sm_1),且藉由例如上述任一種模式來修正該預測圖像(步驟Sm_2)。
圖33是顯示預測圖像的生成之其他例的流程圖。
幀間預測部126決定當前區塊的移動向量(步驟Sn_1)。其次,幀間預測部126生成預測圖像(步驟Sn_2),並判定是否進行修正處理(步驟Sn_3)。在此,幀間預測部126在判定進行修正處理時(步驟Sn_3的是),修正該預測圖像,藉此生成最終預測圖像(步驟Sn_4)。另一方面,幀間預測部126在判定不進行修正處理時(步驟Sn_3的否),不進行修正,將該預測圖像作為最終預測圖像來輸出(步驟Sn_5)。
又,在移動補償中,有在生成預測圖像時修正亮度的模式。該模式例如為後述的LIC。
圖34是顯示預測圖像的生成之其他例的流程圖。
幀間預測部126導出當前區塊的移動向量(步驟So_1)。其次,幀間預測部126判定是否進行亮度修正處理(步驟So_2)。在此,幀間預測部126在判定進行亮度修正處理時(步驟So_2的是),一邊進行亮度修正一邊生成預測圖像(步驟So_3)。也就是說,藉LIC來生成預測圖像。另一方面,幀間預測部126在判定不進行亮度修正處理時(步驟So_2的否),不進行亮度修正而藉由通常的移動補償來生成預測圖像(步驟So_4)。
[移動補償>OBMC] 亦可不僅使用藉由移動估測所得到的當前區塊的移動資訊,還使用鄰接區塊的移動資訊來生成幀間預測訊號。具體而言,亦可將基於藉由(參考圖片內的)移動估測所得到的移動資訊之預測訊號、與基於(當前圖片內的)鄰接區塊的移動資訊之預測訊號進行加權相加,藉此以當前區塊內的子區塊單位來生成幀間預測訊號。這種幀間預測(移動補償)有時稱作OBMC(overlapped block motion compensation:重疊區塊移動補償)。
在OBMC模式中,顯示OBMC用的子區塊的尺寸之資訊(例如稱作OBMC區塊尺寸)亦可以序列級別來訊號化。進而,顯示是否套用OBMC模式之資訊(例如稱作OBMC旗標)亦可以CU級別來訊號化。再者,該等資訊之訊號化之級別不必限定在序列級別及CU級別,亦可為其他級別(例如圖片級別、切片級別、圖塊級別、CTU級別或子區塊級別)。
針對OBMC模式之例更具體地加以說明。圖35及圖36是用以說明OBMC處理所進行的預測圖像修正處理之概要的流程圖及概念圖。
首先,如圖36所示,使用被分配到處理對象(當前)區塊之移動向量(MV),來取得通常的移動補償之預測圖像(Pred)。在圖36中,箭頭「MV」指向參考圖片,表示為了得到預測圖像,當前圖片的當前區塊正在參考何者。
其次,將已對編碼完畢的左鄰接區塊導出的移動向量(MV_L)套用(重新利用)於編碼對象區塊而取得預測圖像(Pred_L)。移動向量(MV_L)是由從當前區塊指向參考圖片的箭頭「MV_L」來表示。接著,將2個預測圖像Pred與Pred_L重疊,藉此進行預測圖像的第1次修正。這具有將鄰接區塊間的邊界混合的效果。
同樣地,將已對編碼完畢的上鄰接區塊導出的移動向量(MV_U)套用(重新利用)於編碼對象區塊而取得預測圖像(Pred_U)。移動向量(MV_U)是由從當前區塊指向參考圖片的箭頭「MV_U」來表示。接著,將預測圖像Pred_U重疊於已進行第1次修正的預測圖像(例如Pred及Pred_L),藉此進行預測圖像的第2次修正。這具有將鄰接區塊間的邊界混合的效果。藉由第2次修正所得到的預測圖像,為與鄰接區塊的邊界已被混合(已平滑化)之當前區塊的最終預測圖像。
再者,上述之例雖是使用左鄰接及上鄰接的區塊之2階段的修正方法,但該修正方法亦可為連右鄰接及/或下鄰接的區塊都使用的3階段或3階段以上的修正方法。
再者,進行重疊的區域亦可不是區塊整體的像素區域,而是僅區塊邊界附近之一部分的區域。
再者,在此針對為了從1張參考圖片將追加的預測圖像Pred_L及Pred_U相重疊並藉此得到1張預測圖像Pred而使用的OBMC預測圖像修正處理進行了說明。然而當根據複數個參考圖像來修正預測圖像時,亦可於複數個參考圖片之各個套用同樣的處理。在這種情況下,藉由進行基於複數個參考圖片的OBMC之圖像修正,而從各個參考圖片取得已修正的預測圖像,之後將該等取得的複數個修正預測圖像進一步重疊,藉此取得最終預測圖像。
再者,在OBMC中,對象區塊的單位可為預測區塊單位,亦可為將預測區塊進一步分割後的子區塊單位。
作為判定是否套用OBMC處理的方法,例如有使用obmc_flag的方法,前述obmc_flag是顯示是否套用OBMC處理的訊號。舉一具體例來說,編碼裝置亦可判定對象區塊是否屬於移動複雜的區域。屬於移動複雜的區域時,編碼裝置設定值1來作為obmc_flag,套用OBMC處理來進行編碼,不屬於移動複雜的區域時,設定值0來作為obmc_flag,不套用OBMC處理而進行區塊的編碼。另一方面,在解碼裝置中,則是將記述於串流(例如壓縮序列)的obmc_flag解碼,藉此因應該值來切換是否套用OBMC處理並進行解碼。
幀間預測部126在上述之例中是對矩形的當前區塊生成1個矩形的預測圖像。然而,幀間預測部126亦可對該矩形的當前區塊生成與矩形不同形狀的複數個預測圖像,並將該等複數個預測圖像結合,藉此生成最終的矩形之預測圖像。與矩形不同的形狀例如亦可為三角形。
圖37是用以說明2個三角形的預測圖像之生成的概念圖。
幀間預測部126對當前區塊內的三角形之第1分區使用該第1分區的第1MV來進行移動補償,藉此生成三角形的預測圖像。同樣地,幀間預測部126對當前區塊內的三角形之第2分區,使用該第2分區的第2MV來進行移動補償,藉此生成三角形的預測圖像。接著,幀間預測部126藉由結合該等預測圖像,來生成與當前區塊為相同矩形的預測圖像。
再者,在圖37所示之例中,第1分區及第2分區雖分別為三角形,但亦可為梯形,亦可分別為互相不同的形狀。進而,在圖37所示之例中,當前區塊雖是由2個分區所構成,但亦可由3個以上的分區所構成。
又,第1分區及第2分區亦可重複。亦即,第1分區及第2分區亦可包含有相同的像素區域。在此情況下,亦可使用第1分區之預測圖像及第2分區之預測圖像來生成當前區塊的預測圖像。
又,本例所示的是2個分區皆以幀間預測來生成預測圖像的例子,但亦可針對至少1個分區,藉由幀內預測來生成預測圖像。
[移動補償>BIO] 其次,針對導出移動向量的方法加以說明。首先,針對根據模型來導出移動向量的模式加以說明,且前述模型為假設等速直線運動之模型。此模式有時稱作BIO (bi-directional optical flow:雙向光流)模式。
圖38是用以說明假設等速直線運動的模型的概念圖。在圖38中,(vx,vy)表示速度向量,τ0、τ1各表示當前圖片(Cur Pic)與2個參考圖片(Ref0,Ref1)之間的時間上的距離。(MVx0,MVy0)表示對應於參考圖片Ref0的移動向量,(MVx1,MVy1)表示對應於參考圖片Ref1的移動向量。
此時在速度向量(vx,vy)為等速直線運動的假設下,(MVx0,MVy0)及(MVx1,MVy1)分別表示成(vxτ0,vyτ0)及(-vxτ1,-vyτ1),亦可採用以下的光流等式(2)。 [數3]
在此,I(k)表示移動補償後之參考圖像k(k=0,1)的亮度值。此光流等式表示(i)亮度值的時間微分、(ii)水平方向的速度及參考圖像的空間梯度之水平成分的積、(iii)垂直方向的速度及參考圖像的空間梯度之垂直成分的積之和等於零。亦可根據此光流等式與赫米特內插法(Hermite interpolation)之組合,將從合併清單等所得到的區塊單位之移動向量以像素單位進行修正。
再者,亦可利用與根據假設等速直線運動之模型來導出移動向量的方法不同的方法,在解碼裝置側導出移動向量。例如,亦可根據複數個鄰接區塊的移動向量,以子區塊單位導出移動向量。
[移動補償>LIC] 其次,針對使用LIC(local illumination compensation:局部亮度補償)處理來生成預測圖像(預測)的模式之一例加以說明。
圖39是用以說明使用了LIC處理的亮度修正處理的預測圖像生成方法之一例的概念圖。
首先,從編碼完畢的參考圖片導出MV,取得對應於當前區塊的參考圖像。
其次,對當前區塊擷取表示亮度值在參考圖片與當前圖片中如何變化的資訊。此擷取是根據當前圖片中的編碼完畢左鄰接參考區域(周邊參考區域)及編碼完畢上鄰參考區域(周邊參考區域)的亮度像素值、與以導出的MV所指定的參考圖片內之同等位置的亮度像素值來進行。接著,使用表示亮度值如何變化的資訊,算出亮度修正參數。
對以MV指定的參考圖片內的參考圖像,進行套用前述亮度修正參數的亮度修正處理,藉此生成對於當前區塊的預測圖像。
再者,圖39中的前述周邊參考區域之形狀僅為一例,亦可使用除此之外的形狀。
又,在此雖針對從1張參考圖片生成預測圖像的處理加以說明,但從複數張參考圖片生成預測圖像的情況也一樣,亦可先以與上述同樣的方法對從各個參考圖片取得的參考圖像進行亮度修正處理後,再生成預測圖像。
作為判定是否套用LIC處理的方法,例如有使用lic_flag的方法,前述lic_flag為表示是否套用LIC處理的訊號。舉一具體例來說,在編碼裝置中,判定當前區塊是否屬於產生亮度變化之區域,若屬於產生亮度變化之區域,則設定值1來作為lic_flag並套用LIC處理來進行編碼,若不屬於產生亮度變化之區域,則設定值0來作為lic_flag且不套用LIC處理而進行編碼。另一方面,在解碼裝置中,亦可藉由將記述於串流之lic_flag解碼,而因應其值來切換是否套用LIC處理並進行解碼。
作為判定是否套用LIC處理之別的方法,例如還有依照周邊區塊是否套用了LIC處理來判定的方法。舉一具體例來說,在當前區塊為合併模式時,判定在合併模式處理中的MV導出之際選擇的周邊編碼完畢區塊是否套用了LIC處理且已編碼。因應其結果來切換是否套用LIC處理並進行編碼。再者,在本例的情況下,也是相同處理可套用於解碼裝置側的處理。
針對LIC處理(亮度修正處理)之態樣,已使用圖39加以說明,以下,說明其詳細。
首先,幀間預測部126從編碼完畢圖片即參考圖片,導出用於取得對應於編碼對象區塊之參考圖像的移動向量。
其次,幀間預測部126對編碼對象區塊使用左鄰接及上鄰接之編碼完畢周邊參考區域的亮度像素值、及以移動向量指定的參考圖片內之同等位置的亮度像素值,來擷取表示亮度值在參考圖片與編碼對象圖片中如何變化的資訊,而算出亮度修正參數。例如,令編碼對象圖片內之周邊參考區域內的某像素的亮度像素值為p0,且令與該像素同等位置之參考圖片內的周邊參考區域內的像素的亮度像素值為p1。幀間預測部126對周邊參考區域內的複數個像素算出將A×p1+B=p0最佳化的係數A及B,來作為亮度修正參數。
其次,幀間預測部126對以移動向量指定的參考圖片內的參考圖像使用亮度修正參數來進行亮度修正處理,藉此生成對於編碼對象區塊的預測圖像。例如,令參考圖像內的亮度像素值為p2,且令亮度修正處理後的預測圖像的亮度像素值為p3。幀間預測部126對參考圖像內的各像素算出A×p2+B=p3,藉此生成亮度修正處理後的預測圖像。
再者,圖39中之周邊參考區域的形狀僅為一例,亦可使用除此之外的形狀。又,亦可使用圖39所示之周邊參考區域的一部分。例如,亦可使用包含有從上鄰接像素及左鄰接像素分別間隔預定數的像素之區域來作為周邊參考區域。又,周邊參考區域不限於和編碼對象區塊鄰接的區域,亦可為和編碼對象區塊不鄰接的區域。關於像素的預定數亦可事先決定。
又,在圖39所示之例中,參考圖片內的周邊參考區域為以編碼對象圖片之移動向量從編碼對象圖片內的周邊參考區域來指定的區域,但亦可為以其他移動向量來指定的區域。例如,該其他移動向量亦可為編碼對象圖片內的周邊參考區域的移動向量。
再者,在此說明的雖然是編碼裝置100中的動作,但解碼裝置200中的動作,典型來說也是同樣的。
再者,LIC處理不只可套用於亮度,亦可套用於色差。此時,可分別對Y、Cb及Cr個別地導出修正參數,亦可對任一者使用共通的修正參數。
又,LIC處理亦可在子區塊單位下套用。例如,亦可使用當前子區塊的周邊參考區域、及以當前子區塊的MV來指定的參考圖片內的參考子區塊的周邊參考區域,來導出修正參數。
[預測控制部] 預測控制部128選擇幀內預測訊號(從幀內預測部124輸出的訊號)及幀間預測訊號(從幀間預測部126輸出的訊號)之任一者,將選擇的訊號作為預測訊號來輸出至減算部104及加算部116。
如圖1所示,在各種編碼裝置例中,預測控制部128亦可將輸入至熵編碼部110的預測參數輸出。熵編碼部110亦可根據從預測控制部128輸入的該預測參數、及從量化部108輸入的量化係數,來生成編碼位元串流(或序列)。預測參數亦可使用於解碼裝置。解碼裝置亦可接收編碼位元串流後解碼,並進行與幀內預測部124、幀間預測部126及預測控制部128中所進行的預測處理相同的處理。預測參數亦可包含有:選擇預測訊號(例如移動向量、預測類型、或在幀內預測部124或幀間預測部126中使用的預測模式);或,以幀內預測部124、幀間預測部126及預測控制部128中所進行的預測處理為基準或者表示該預測處理之任意的索引、旗標或值。
[編碼裝置的安裝例] 圖40是顯示編碼裝置100之安裝例的方塊圖。編碼裝置100具備處理器a1及記憶體a2。例如,圖1所示的編碼裝置100的複數個構成要素是藉由圖40所示的處理器a1及記憶體a2來安裝。
處理器a1為進行資訊處理的電路,且為可對記憶體a2進行存取的電路。例如,處理器a1是將動態圖像編碼之專用或通用的電子電路。處理器a1亦可為如CPU之處理器。又,處理器a1亦可為複數個電子電路的集合體。又,例如處理器a1亦可發揮圖1等所示之編碼裝置100之複數個構成要素中的複數個構成要素的功能。
記憶體a2是記憶有處理器a1用來將動態圖像編碼的資訊之專用或通用的記憶體。記憶體a2可為電子電路,亦可連接於處理器a1。又,記憶體a2亦可包含於處理器a1。又,記憶體a2亦可為複數個電子電路的集合體。又,記憶體a2可為磁碟或光碟等,亦可呈現為儲存裝置(storage)或記錄媒體等。又,記憶體a2可為非揮發性記憶體,亦可為揮發性記憶體。
例如,記憶體a2可記憶要編碼的動態圖像,亦可記憶對應於已編碼的動態圖像之位元列。又,記憶體a2亦可記憶處理器a1用來將動態圖像編碼的程式。
又,例如,記憶體a2亦可發揮圖1等所示之編碼裝置100的複數個構成要素中用來記憶資訊之構成要素的功能。例如,記憶體a2亦可發揮圖1所示之區塊記憶體118及幀記憶體122的功能。更具體而言,記憶體a2亦可記憶重構完畢區塊及重構完畢圖片等。
再者,在編碼裝置100中,可不安裝圖1等所示之複數個構成要素的全部,亦可不進行上述之複數個處理的全部。圖1等所示之複數個構成要素的一部分亦可包含於其他裝置,上述之複數個處理的一部分亦可藉其他裝置來執行。
[解碼裝置] 其次,針對可將例如從上述之編碼裝置100輸出之編碼訊號(編碼位元串流)解碼的解碼裝置加以說明。圖41是顯示實施形態之解碼裝置200的功能構成的方塊圖。解碼裝置200是以區塊單位來解碼動態圖像的動態圖像解碼裝置。
如圖41所示,解碼裝置200具備熵解碼部202、反量化部204、反轉換部206、加算部208、區塊記憶體210、迴路濾波部212、幀記憶體214、幀內預測部216、幀間預測部218、及預測控制部220。
解碼裝置200可藉由例如通用處理器及記憶體來實現。此情況下,當記憶體儲存的軟體程式藉由處理器來執行時,處理器是作為熵解碼部202、反量化部204、反轉換部206、加算部208、迴路濾波部212、幀內預測部216、幀間預測部218及預測控制部220來發揮功能。又,解碼裝置200亦可作為對應於熵解碼部202、反量化部204、反轉換部206、加算部208、迴路濾波部212、幀內預測部216、幀間預測部218及預測控制部220之專用的1個以上的電子電路來實現。
以下,在說明解碼裝置200整體的處理流程之後,再針對解碼裝置200包含的各構成要素加以說明。
[解碼處理的整體流程] 圖42是顯示解碼裝置200所進行之整體的解碼處理之一例的流程圖。
首先,解碼裝置200的熵解碼部202特定出固定尺寸的區塊(例如128×128像素)的分割樣式(步驟Sp_1)。此分割樣式為藉由編碼裝置100所選擇的分割樣式。接著,解碼裝置200對構成該分割樣式的複數個區塊分別進行步驟Sp_2~Sp_6的處理。
也就是說,熵解碼部202將解碼對象區塊(也稱作當前區塊)之被編碼的量化係數及預測參數進行解碼(具體而言是熵解碼)(步驟Sp_2)。
其次,反量化部204及反轉換部206對複數個量化係數進行反量化及反轉換,藉此將複數個預測殘差(亦即差分區塊)復原(步驟Sp_3)。
其次,由幀內預測部216、幀間預測部218及預測控制部220的全部或一部分所構成的預測處理部會生成當前區塊的預測訊號(也稱作預測區塊)(步驟Sp_4)。
其次,加算部208對差分區塊加上預測區塊,藉此將當前區塊重構成重構圖像(也稱作解碼圖像區塊)(步驟Sp_5)。
接著,生成此重構圖像後,迴路濾波部212對該重構圖像進行濾波(步驟Sp_6)。
接著,解碼裝置200判定圖片整體的解碼是否已完成(步驟Sp_7),當判定未完成時(步驟Sp_7的否),重複執行從步驟Sp_1開始的處理。
如圖示,步驟Sp_1~Sp_7的處理是藉由解碼裝置200依序地進行。或,該等處理中之一部分的複數個處理亦可並列進行,亦可進行順序之替換。
[熵解碼部] 熵解碼部202將編碼位元串流熵解碼。具體而言,熵解碼部202例如從編碼位元串流算術解碼成二值訊號。接著,熵解碼部202將二值訊號多值化(debinarize)。熵解碼部202以區塊單位將量化係數輸出至反量化部204。熵解碼部202亦可將編碼位元串流(參考圖1)所包含的預測參數輸出至實施形態之幀內預測部216、幀間預測部218及預測控制部220。幀內預測部216、幀間預測部218及預測控制部220可執行與編碼裝置側之幀內預測部124、幀間預測部126及預測控制部128所進行的處理相同的預測處理。
[反量化部] 反量化部204將從熵解碼部202輸入的解碼對象區塊(以下稱為當前區塊)之量化係數反量化。具體而言,反量化部204針對當前區塊的各個量化係數,根據對應於該量化係數的量化參數,將該量化係數反量化。接著,反量化部204將當前區塊之經反量化的量化係數(亦即轉換係數)輸出至反轉換部206。
[反轉換部] 反轉換部206將從反量化部204輸入的轉換係數反轉換,藉此復原預測誤差。
例如當從編碼位元串流解讀的資訊表示套用EMT或AMT時(例如AMT旗標為真),反轉換部206根據已解讀之表示轉換類型的資訊,將當前區塊的轉換係數反轉換。
又例如,當從編碼位元串流解讀的資訊表示套用NSST時,反轉換部206對轉換係數套用反再轉換。
[加算部] 加算部208藉由將從反轉換部206輸入的預測誤差與從預測控制部220輸入的預測樣本相加來重構當前區塊。接著,加算部208將已重構的區塊輸出至區塊記憶體210及迴路濾波部212。
[區塊記憶體] 區塊記憶體210是用以儲存以下區塊的記憶部:在幀內預測中參考的區塊,且是解碼對象圖片(以下稱為當前圖片)內的區塊。具體而言,區塊記憶體210儲存從加算部208輸出的重構區塊。
[迴路濾波部] 迴路濾波部212對藉由加算部208重構後的區塊施加迴路濾波,並將濾波後的重構區塊輸出至幀記憶體214及顯示裝置等。
當從編碼位元串流解讀的表示ALF之開啟/關閉的資訊表示ALF開啟時,根據局部的梯度之方向及活性度來從複數個濾波器中選擇1個濾波器,將選擇的濾波器套用於重構區塊。
[幀記憶體] 幀記憶體214是用以儲存幀間預測中使用的參考圖片之記憶部,有時也稱作幀緩衝器。具體而言,幀記憶體214儲存藉由迴路濾波部212濾波後的重構區塊。
[預測處理部(幀內預測部、幀間預測部、預測控制部)] 圖43是顯示在解碼裝置200之預測處理部進行的處理之一例的流程圖。再者,預測處理部是由幀內預測部216、幀間預測部218及預測控制部220的全部或一部分的構成要素所構成。
預測處理部生成當前區塊的預測圖像(步驟Sq_1)。此預測圖像也稱作預測訊號或預測區塊。再者,預測訊號例如有幀內預測訊號或幀間預測訊號。具體而言,預測處理部使用藉由進行預測區塊之生成、差分區塊之生成、係數區塊之生成、差分區塊之復原、及解碼圖像區塊之生成而得到的重構圖像,來生成當前區塊的預測圖像。
重構圖像例如可為參考圖片之圖像,亦可為包含有當前區塊的圖片即當前圖片內的解碼完畢的區塊之圖像。當前圖片內的解碼完畢的區塊例如為當前區塊的鄰接區塊。
圖44是顯示在解碼裝置200之預測處理部進行的處理之其他例的流程圖。
預測處理部判定用以生成預測圖像的方式或模式(步驟Sr_1)。例如,此方式或模式亦可根據例如預測參數等來判定。
預測處理部在判定出用以生成預測圖像的模式為第1方式時,依照該第1方式來生成預測圖像(步驟Sr_2a)。又,預測處理部在判定出用以生成預測圖像的模式為第2方式時,依照該第2方式來生成預測圖像(步驟Sr_2b)。又,預測處理部在判定出用以生成預測圖像的模式為第3方式時,依照該第3方式來生成預測圖像(步驟Sr_2c)。
第1方式、第2方式及第3方式為用以生成預測圖像之互異的方式,且亦可分別為例如幀間預測方式、幀內預測方式及這些以外的預測方式。在該等預測方式中,亦可使用上述之重構圖像。
[幀內預測部] 幀內預測部216根據從編碼位元串流解讀的幀內預測模式,參考儲存於區塊記憶體210之當前圖片內的區塊來進行幀內預測,藉此生成預測訊號(幀內預測訊號)。具體而言,幀內預測部216參考鄰接於當前區塊的區塊之樣本(例如亮度值、色差值)來進行幀內預測,藉此生成幀內預測訊號,並將幀內預測訊號輸出至預測控制部220。
再者,當在色差區塊的幀內預測中選擇了參考亮度區塊的幀內預測模式時,幀內預測部216亦可根據當前區塊的亮度成分來預測當前區塊的色差成分。
又,當從編碼位元串流解讀的資訊表示套用PDPC時,幀內預測部216根據水平/垂直方向的參考像素的梯度來修正幀內預測後的像素值。
[幀間預測部] 幀間預測部218參考儲存於幀記憶體214的參考圖片來預測當前區塊。預測是以當前區塊或當前區塊內的子區塊(例如4×4區塊)之單位來進行。例如,幀間預測部218使用從編碼位元串流(例如從熵解碼部202輸出的預測參數)解讀的移動資訊(例如移動向量)來進行移動補償,藉此生成當前區塊或子區塊的幀間預測訊號,並將幀間預測訊號輸出至預測控制部220。
當從編碼位元串流解讀的資訊表示套用OBMC模式時,幀間預測部218不僅可使用藉由移動估測所得到的當前區塊的移動資訊,還可使用鄰接區塊的移動資訊來生成幀間預測訊號。
又,當從編碼位元串流解讀的資訊表示套用FRUC模式時,幀間預測部218依照從編碼位元串流解讀的樣式匹配的方法(雙向匹配或模板匹配)來進行移動估測,藉此導出移動資訊。接著,幀間預測部218使用導出的移動資訊來進行移動補償(預測)。
又,當套用BIO模式時,幀間預測部218根據假設等速直線運動的模型來導出移動向量。又,當從編碼位元串流解讀的資訊表示套用仿射移動補償預測模式時,幀間預測部218根據複數個鄰接區塊的移動向量,以子區塊單位來導出移動向量。
[MV導出>一般幀間模式] 當從編碼位元串流解讀的資訊表示套用一般幀間模式時,幀間預測部218根據從編碼串流解讀的資訊來導出MV,並使用該MV來進行移動補償(預測)。
圖45是顯示解碼裝置200中之一般幀間模式所進行的幀間預測的例子的流程圖。
解碼裝置200的幀間預測部218依每個區塊,對該區塊進行移動補償。幀間預測部218根據時間上或空間上位於當前區塊的周圍之複數個解碼完畢區塊的MV等之資訊,對該當前區塊取得複數個候選MV(步驟Ss_1)。也就是說,幀間預測部218製作候選MV清單。
其次,幀間預測部218從在步驟Ss_1取得的複數個候選MV之中,依照預定的優先順序擷取N個(N為2以上的整數)候選MV之各個,來作為移動向量預測子候選(也稱作預測MV候選)(步驟Ss_2)。再者,該優先順序亦可對N個預測MV候選之各個事先決定。
其次,幀間預測部218從已輸入的串流(亦即編碼位元串流)將移動向量預測子選擇資訊解碼,使用該已解碼的移動向量預測子選擇資訊,從該N個預測MV候選之中選擇1個預測MV候選,來作為當前區塊的移動向量預測子(也稱作預測MV)(步驟Ss_3)。
其次,幀間預測部218從已輸入的串流將差分MV解碼,將該已解碼的差分MV即差分值,與已選擇的移動向量預測子相加,藉此導出當前區塊的MV(步驟Ss_4)。
最後,幀間預測部218使用該已導出的MV及解碼完畢參考圖片對當前區塊進行移動補償,藉此生成該當前區塊的預測圖像(步驟Ss_5)。
[預測控制部] 預測控制部220選擇幀內預測訊號及幀間預測訊號之任一者,將已選擇的訊號作為預測訊號輸出至加算部208。整體上,解碼裝置側的預測控制部220、幀內預測部216及幀間預測部218的構成、功能及處理亦可與編碼裝置側的預測控制部128、幀內預測部124及幀間預測部126的構成、功能及處理相對應。
[解碼裝置的安裝例] 圖46是顯示解碼裝置200之安裝例的方塊圖。解碼裝置200具備處理器b1及記憶體b2。例如,圖41所示的解碼裝置200的複數個構成要素是藉由圖46所示的處理器b1及記憶體b2來安裝。
處理器b1是進行資訊處理的電路,且為可對記憶體b2進行存取的電路。例如,處理器b1是將已編碼之動態圖像(亦即編碼位元串流)解碼之專用或通用的電子電路。處理器b1亦可為如CPU之處理器。又,處理器b1亦可為複數個電子電路的集合體。又,例如處理器b1亦可發揮圖41等所示之解碼裝置200之複數個構成要素中的複數個構成要素的功能。
記憶體b2是記憶有處理器b1用來將編碼位元串流解碼的資訊之專用或通用的記憶體。記憶體b2可為電子電路,亦可連接於處理器b1。又,記憶體b2亦可包含於處理器b1。又,記憶體b2亦可為複數個電子電路的集合體。又,記憶體b2可為磁碟或光碟等,亦可呈現為儲存裝置或記錄媒體等。又,記憶體b2可為非揮發性記憶體,亦可為揮發性記憶體。
例如,記憶體b2可記憶動態圖像,亦可記憶編碼位元串流。又,記憶體b2亦可記憶處理器b1用來將編碼位元串流解碼的程式。
又,例如,記憶體b2亦可發揮在圖41等所示之解碼裝置200之複數個構成要素中用來記憶資訊之構成要素的功能。具體而言,記憶體b2亦可發揮圖41所示之區塊記憶體210及幀記憶體214的功能。更具體而言,記憶體b2亦可記憶重構完畢區塊及重構完畢圖片等。
再者,在解碼裝置200中,亦可不安裝圖41等所示之複數個構成要素的全部,亦可不進行上述之複數個處理的全部。圖41等所示之複數個構成要素的一部分亦可包含於其他裝置,上述之複數個處理的一部分亦可藉由其他裝置來執行。
[各用語的定義] 舉一例來說,各用語亦可為如下的定義。
圖片為單色(monochrome)格式之複數個亮度樣本的陣列,或4:2:0、4:2:2及4:4:4的彩色格式之複數個亮度樣本的陣列及複數個色差樣本的2個對應陣列。圖片亦可為幀(frame)或場(field)。
幀是複數個樣本列0、2、4...所產生的上場(top field)以及複數個樣本列1、3、5...所產生的下場(bottom field)的組成物。
切片是1個獨立切片區段(slice segment)、及(如果有)相同存取單元內的(如果有)下一個獨立切片區段之前的所有後續之附屬切片區段所包含的整數個編碼樹單元。
圖塊是圖片中之特定的圖塊行及特定的圖塊列內的複數個編碼樹區塊的矩形區域。圖塊仍然可套用跨越圖塊的邊緣的迴路濾波,但亦可為刻意令其可獨立地解碼及編碼之幀的矩形區域。
區塊是複數個樣本的M×N(N列M行)陣列,或複數個轉換係數的M×N陣列。區塊亦可為由1個亮度及2個色差的複數個矩陣所構成之複數個像素的正方形或矩形的區域。
CTU(編碼樹單元)可為具有3個樣本陣列的圖片之複數個亮度樣本的編碼樹區塊,亦可為複數個色差樣本的2個對應編碼樹區塊。或,CTU亦可為單色圖片與使用語法(syntax)構造來編碼的圖片之任一種圖片的複數個樣本的編碼樹區塊,其中前述語法構造使用於3個分離的彩色平面及複數個樣本的編碼中。
超級區塊構成1個或2個模式資訊區塊,或,亦可為遞迴地分割成4個32×32區塊且可進一步分割的64×64像素的正方形區塊。
[第1態樣] 以下,說明編碼裝置100或解碼裝置200的動作來作為代表,但解碼裝置200或編碼裝置100的動作也是同樣的。
在本實施形態之第1態樣中,編碼裝置100(或解碼裝置200)將圖片分割成2個以上的圖塊,再依由1個以上的圖塊所構成的圖塊群組逐一編碼(或解碼),藉此進行圖片的編碼(或解碼)。
圖47A~圖47D是顯示實施形態1的第1態樣之以圖塊邊界為基準來分割成1個以上的圖塊集之圖片構成的一例的圖。在圖47A~圖47D中,顯示出將圖片朝橫方向分割成4個且朝縱方向分割成3個之12個的矩形區域各自為1個圖塊。各圖塊如上所述是由1個以上之連續的CTU所構成。如此的圖片之構成亦可藉由分割部102來構成。
在圖47A中,顯示了圖片被分割成具有圖塊群組A~C的圖塊集1之例。在此,圖47A所示的圖塊群組A包含於圖塊集1,且由以圓圈1及圓圈2所示之基本編碼順序為連續的2個圖塊所構成。圖47A所示的圖塊群組B包含於圖塊集1,且由以圓圈3~圓圈9所示之基本編碼順序為連續的7個圖塊所構成。同樣地,圖47A所示的圖塊群組C包含於圖塊集1,且由以圓圈10~圓圈12所示之基本編碼順序為連續的3個圖塊所構成。也就是說,圖塊群組包含於圖塊集,並且由基本編碼順序為連續的1個以上的圖塊所構成。又,基本編碼順序意指編碼之際掃描圖塊的順序,且為逐線(raster)順序。例如,圖塊的基本編碼順序意指編碼之際掃描圖塊的順序為逐線順序。
在圖47B中,顯示了圖片被分割成具有圖塊群組A的圖塊集1與具有圖塊群組B~D的圖塊集2之例。圖47B所示的圖塊群組A包含於圖塊集1,且由以圓圈1~圓圈4所示之基本編碼順序為連續的4個圖塊所構成。圖47B所示的圖塊群組B包含於圖塊集2,且由以圓圈5~圓圈8所示之基本編碼順序為連續的4個圖塊所構成。圖47B所示的圖塊群組C及D包含於圖塊集2,且由以圓圈9、10及圓圈11~圓圈12所示之基本編碼順序為連續的2個圖塊所構成。
在圖47C中,顯示了圖片被分割成具有圖塊群組A、B的圖塊集1,具有圖塊群組C、D的圖塊集2,及具有圖塊群組E的圖塊集2之例。圖47C所示的圖塊群組A包含於圖塊集1,且由以圓圈1、2所示之基本編碼順序為連續的2個圖塊所構成。圖47C所示的圖塊群組B包含於圖塊集1,且由以圓圈3所示的1個圖塊所構成。圖47C所示的圖塊群組C包含於圖塊集2,且由以圓圈4~圓圈6所示之基本編碼順序為連續的3個圖塊所構成。圖47C所示的圖塊群組D包含於圖塊集2,且由以圓圈7~9所示之基本編碼順序為連續的3個圖塊所構成。同樣地,圖47C所示的圖塊群組E包含於圖塊集3,且由以圓圈10~圓圈12所示之基本編碼順序為連續的3個圖塊所構成。
在圖47D中,顯示了圖片被分割成具有圖塊群組A、B的圖塊集1,具有圖塊群組C的圖塊集2,具有圖塊群組D、E的圖塊集3,及具有圖塊群組F的圖塊集4之例。圖47D所示的圖塊群組A包含於圖塊集1,且由以圓圈1、2所示之基本編碼順序為連續的2個圖塊所構成。圖47C所示的圖塊群組B包含於圖塊集1,且由以圓圈3~圓圈6所示的4個圖塊所構成。圖47D所示的圖塊群組C包含於圖塊集2,且由以圓圈7、8所示之基本編碼順序為連續的3個圖塊所構成。圖47D所示的圖塊群組D包含於圖塊集3,且由以圓圈9所示的1個圖塊所構成。圖47D所示的圖塊群組E包含於圖塊集3,且由以圓圈10、11所示之基本編碼順序為連續的2個圖塊所構成。圖47D所示的圖塊群組F包含於圖塊集4,且由以圓圈12所示的1個圖塊所構成。
像這樣,1個圖塊集有包含1個以上的圖塊群組的情況,1個圖塊群組有包含1個以上的圖塊的情況。再者,圖塊群組亦可稱作切片。
圖48A是顯示實施形態1的第1態樣之在編碼圖片之際,用來編碼構成圖片之圖塊群組的語法之一例的圖。於圖48A,顯示了用來編碼以圖47A~圖47D的方式分割的圖塊群組之語法的一例。在本態樣中是以圖塊群組單位來進行NAL單元化。在此,NAL為Network Abstraction Layer(網路抽象層)的縮寫,且顯示將原始的串流適當地劃分的處理階層。在本態樣中,圖片被分割成複數個NAL單元、封裝,且依每NAL單元進行編碼。
在圖片是以複數個圖塊群組來構成的情況下,編碼裝置100亦可將圖塊群組分類成獨立圖塊群組(Independent Tile Group)與相依圖塊群組(Dependent Tile Group),並以語法來通知。此時,亦可由1個獨立圖塊群組與0個以上的相依圖塊群組來構成圖塊群組序列。在此,獨立圖塊群組是可獨立解碼的圖塊群組,相依圖塊群組是可利用所屬圖塊群組序列中之獨立圖塊群組的資訊來解碼的圖塊群組。
在本態樣中,編碼裝置100亦可將相依圖塊群組識別資訊(在圖48A所示的語法例中為dependent_tile_group_flag等)包含於圖塊群組標頭。藉此,編碼裝置100便可通知該圖塊群組為獨立圖塊群組或相依圖塊群組。
又,編碼裝置100在圖片是以複數個圖塊群組來構成的情況下,亦可將圖塊群組序列識別資訊(例如,在圖48A所示的語法例中為tile_group_seq_id等)包含於圖塊群組標頭。藉此,編碼裝置100便可通知該圖塊群組所屬的圖塊群組序列ID。進而,編碼裝置100可使用圖塊群組序列識別資訊,來通知圖塊群組序列是由1個獨立圖塊群組與0個以上的相依圖塊群組藉由圖塊群組序列而構成。
且,編碼裝置100亦可構成為將獨立圖塊群組編碼在圖塊群組序列的開頭。藉此,編碼裝置100可使解碼裝置200在解碼相依圖塊群組之際,重複利用具有相同的圖塊群組序列識別資訊之獨立圖塊群組的標頭資訊(參數值)。進而,由於編碼裝置100可使其在該圖塊群組為相依圖塊群組時,重複利用具有相同的圖塊群組序列ID之獨立圖塊群組的參數值,因此可省略通知相依圖塊群組的參數值。
再者,編碼裝置100亦可因應於圖塊群組所包含之圖塊的數目(以下稱作圖塊數)或圖塊的資料尺寸等,來決定各個圖塊群組的大小。
又,編碼裝置100亦可總是將該圖塊群組所屬圖片的時刻資訊(在圖48A所示的語法例中為tile_group_pic_order_cnt_lsb等)包含於圖塊群組標頭。也就是說,編碼裝置100亦可不取決於該圖塊群組為獨立圖塊群組或相依圖塊群組,而是總是通知該圖塊群組所屬圖片的時刻資訊。藉此,解碼裝置200可藉由參考圖塊群組標頭的時刻資訊,而偵測到下一個圖片的圖塊群組已到達,因此可檢測出有未到達的圖塊群組。故,解碼裝置200亦可在檢測出構成現在的圖片之圖塊群組當中有未到達的圖塊群組之情況下,判斷為錯誤(error)。
因此,即使在編碼裝置100以任意之順序來編碼圖塊群組的情況下,也有可能可以使解碼裝置200容易地偵測到通訊錯誤等所造成的資料欠缺。
圖48B是顯示實施形態1的第1態樣之與圖塊群組相關的語法之一例的圖。
於圖48B,顯示了編碼裝置100以圖塊單位將1個以上之連續的CTU編碼時的語法之例。又,於圖48B,顯示了編碼裝置100直到圖塊群組末端識別資訊(例如,在圖48B所示的語法例中為end_of_tile_group_flag等)為真為止,皆以圖塊單位重複進行編碼的情況的語法例。
再者,編碼裝置100亦可因應於圖塊群組所包含之圖塊數或圖塊群組所包含之圖塊的資料尺寸等來決定各個圖塊群組的大小,並且設定圖塊群組末端識別資訊的真偽。
又,圖塊群組末端識別資訊亦可不必是CABAC編碼。在此情況下,編碼裝置100亦可省略圖塊末端的1位元(例如,在圖48B所示的語法例中為end_of_tile_one_bit等)來進行編碼。
圖49A是顯示實施形態1的第1態樣之構成圖片的圖塊集之一例與基本編碼順序的圖。在圖49A中,顯示了圖片被分割成具有圖塊群組A~C的圖塊集1與具有圖塊群組D~F的圖塊集2之例。圖塊群組A~F各自由2個圖塊所構成。
圖49B是顯示在與圖48A相同的圖塊集之中替換圖塊群組的編碼順序之例的圖。也就是說,編碼裝置100亦可如圖49B所示地,在將包含於圖塊集1的圖塊群組A編碼之後,將包含於圖塊集2的圖塊群組D編碼等,在圖塊集1與2之間交錯地(interleave)編碼。藉此,當編碼裝置100以圖塊集單位並列地進行編碼處理時,有可能可以縮短從編碼到送出資料為止的延遲時間。
再者,圖49B所示之在圖塊集間交錯地編碼圖塊群組之編碼順序僅為一例。也就是說,編碼裝置100既可以任意之順序來編碼圖塊群組,亦可以獨立圖塊群組序列在圖塊群組序列中必定成為最初的順序來編碼。
又,編碼裝置100亦可將替換編碼順序的單位設成圖塊群組序列或圖塊集單位。且,在此情況下,編碼裝置100亦可省略圖塊群組序列識別資訊的編碼。
圖50A是顯示實施形態1的第1態樣之解碼裝置200所進行的圖塊群組之解碼處理的流程圖。
首先,解碼裝置200取得以圖塊群組單位來編碼之位元串流的圖塊群組標頭,並進行已取得的圖塊群組標頭之資訊解析(S10)。
其次,解碼裝置200根據在步驟S10的資訊解析結果,判定解碼對象之圖塊群組是否為相依圖塊群組(S11)。在本態樣中,解碼裝置200可藉由解析包含於圖塊群組標頭的相依圖塊群組識別資訊(例如,圖48A所示之dependent_tile_group_flag等的語法),來判定該圖塊群組是否為相依圖塊群組。
於步驟S11,當解碼對象之圖塊群組不是相依圖塊群組時(步驟S11的獨立),解碼裝置200將已解析之圖塊群組標頭的資訊儲存於預定的記憶體區域(S12)。在本態樣中,當解碼對象之圖塊群組為獨立圖塊群組時,解碼裝置200將已解析之圖塊群組標頭的資訊,儲存於因應於圖塊群組序列識別資訊(例如,圖48A所示之tile_group_seq_id等的語法)而決定的記憶體區域。
另一方面,於步驟S11,當解碼對象之圖塊群組為相依圖塊群組時(步驟S11的相依),解碼裝置200從預定的記憶體區域取得圖塊群組標頭的資訊(S13)。在本態樣中,當解碼對象之圖塊群組為相依圖塊群組時,解碼裝置200會從因應於圖塊群組序列識別資訊而決定的記憶體區域,取得圖塊群組標頭的資訊。取得之圖塊群組標頭的資訊,是解碼對象之相依圖塊群組所屬之圖塊群組序列中的獨立圖塊群組之圖塊群組標頭的資訊,並且被儲存於因應於圖塊群組序列識別資訊而決定之預定的記憶體區域。藉此,便可重複利用獨立圖塊群組之圖塊群組標頭的資訊。
其次,解碼裝置200使用已解析或取得之圖塊群組標頭的資訊,來進行圖塊群組所包含之所有圖塊的解碼處理(S14)。
圖50B是顯示實施形態1的第1態樣之解碼裝置200在進行圖塊群組的解碼處理之際的錯誤檢測處理及隱藏處理之一例的流程圖。
首先,解碼裝置200取得以圖塊群組單位來編碼之位元串流的圖塊群組標頭,並進行已取得的圖塊群組標頭之資訊解析(S20)。在本態樣中,解碼裝置200是解析圖塊群組標頭的時刻資訊(例如,圖48A所示之tile_group_pic_order_cnt_lsb等的語法)。
其次,解碼裝置200根據在步驟S20的資訊解析結果,判定解碼對象之圖塊群組所屬的圖片的時刻是否已前進(S21)。在本態樣中,解碼裝置200藉由確認圖塊群組標頭的時刻資訊,來判定解碼對象之圖塊群組所屬的圖片的時刻(例如,時刻T)是否已前進。
於步驟S21,當圖片的時刻已前進時(步驟S21的是),解碼裝置200判定是否有未接收的圖塊群組(S22)。在本態樣中,當解碼對象之圖塊群組所屬的圖片的時刻成為例如時刻T+1而為已前進時,解碼裝置200會判定在之前的時刻(時刻T)的圖片中是否有未接收的圖塊群組。
於步驟S22,當有未接收的圖塊群組時(S22的是),解碼裝置200對未接收的圖塊群組進行錯誤隱藏處理(S23)。在本態樣中,當在之前的時刻(時刻T)的圖片中有未接收的圖塊群組時,解碼裝置200會判斷為通訊錯誤等在該未接收的圖塊群組產生了錯誤,並對該未接收的圖塊群組進行錯誤隱藏處理。
其次,解碼裝置200根據已解析之圖塊群組標頭的資訊,來進行圖塊群組所包含之所有圖塊的解碼處理(S24)。於步驟S24,亦可因應於圖塊群組標頭所包含之相依圖塊群組識別資訊所示的內容來切換處理。切換處理之際的處理已於圖50A說明,因此省略此處的說明。
再者,當在步驟S21中圖片的時刻為未前進時(步驟S21的否),以及在步驟S22中為沒有未接收的圖塊群組時(S22的否),只要開始迴圈並執行步驟S24即可。
其次,針對將與擷取對象之圖塊被儲存的位元串流位置相關之資訊作為圖塊擷取資訊SEI來編碼時的例子進行說明。在此,SEI為Supplemental Enhancement Information(補充增強資訊)的縮寫,且是提供對編碼而言不必要但有用的資訊之NAL單元。再者,圖塊擷取資訊SEI也是用以擷取已編碼之圖塊當中的一部分圖塊來進行處理的資訊。又,圖塊擷取資訊SEI亦可編碼於圖塊集、圖塊群組序列或圖塊群組的前或後。擷取對象之圖塊是指不解碼整個圖片而僅解碼圖片的一部分區域時,例如構成該一部分區域的圖塊。又,擷取對象之圖塊是指在進行圖片的解碼之並列處理的情況下,為了並列處理而分割圖片時之構成分割切口的圖塊等。
圖51A是顯示實施形態1的第1態樣之將圖塊擷取資訊SEI編碼於圖片的後面時之一例的圖。圖51B是顯示實施形態1的第1態樣之將圖塊擷取資訊SEI編碼於圖片的前面時之一例的圖。
在此,編碼裝置100如圖51A所示之例,將圖塊擷取資訊SEI編碼於圖片的後面。在此情況下,編碼裝置100可在將圖塊群組資料編碼之後,將圖塊擷取資訊SEI編碼,因此圖塊群組資料的編碼一完成,便可發送或累積圖塊群組資料。藉此,編碼裝置100有可能可以刪減暫時地保持圖塊群組資料用的記憶體量。
又,編碼裝置100如圖51B所示之例,將圖塊擷取資訊SEI編碼於圖片的前面。在此情況下,解碼裝置200可在解析圖塊群組資料之前取得圖塊擷取資訊SEI。藉此,編碼裝置100有可能可以讓解碼裝置200所進行之期望的圖塊資料擷取手續變得簡單。
再者,編碼裝置100在以MPEG-2 TS或MMT、MP4等進行系統多工處理之際,亦可將上述之圖塊擷取資訊SEI從對應的圖塊群組資料的後面移動到前面,再進行多工處理。
圖52是顯示實施形態1的第1態樣之用以編碼圖塊擷取資訊SEI的語法之一例的圖。
編碼裝置100亦可將圖塊群組所包含之圖塊數、表示擷取單位即圖塊之資料的開頭的位元組位置之開頭位元組位置資訊,以語法的形式包含於圖塊擷取資訊SEI來進行編碼。在圖52所示之例中,表示圖塊群組所包含之圖塊數的語法為num_tiles_in_tile_group_minus1[i]等。又,表示開頭位元組位置資訊的語法為entry_point_offset_minus1[i][j]等。
像這樣,編碼裝置100藉由將圖塊擷取資訊SEI編碼,便可通知圖塊群組所包含之圖塊數、擷取單位即圖塊的資料的開頭的位元組位置。
再者,編碼裝置100亦可將表示擷取單位即圖塊的位元精度之語法(在圖52所示之例中為offset_len_minus1等)進一步包含於圖塊擷取資訊SEI來進行編碼。藉此,編碼裝置100可進一步通知擷取單位即圖塊的位元精度。
又,編碼裝置100亦可將圖塊群組所包含之圖塊數、表示擷取單位即圖塊的資料的開頭的位元組位置之開頭位元組位置資訊,以語法的形式包含於圖塊擷取資訊SEI來進行編碼。
又,編碼裝置100亦可將表示與該圖塊擷取資訊SEI建立關聯之圖塊群組的數目之資訊,以語法的形式包含於圖塊擷取資訊SEI來進行編碼。又,編碼裝置100亦可使圖片、圖塊集或圖塊群組序列所包含之所有的圖塊群組等與複數個圖塊群組建立關聯,或與各個圖塊群組個別地建立關聯。在此情況下,編碼裝置100亦可將表示已建立關聯之內容的語法包含於圖塊擷取資訊SEI來進行編碼。
又,編碼裝置100亦可將表示圖塊群組資料有無排序的資訊包含於圖塊擷取資訊SEI來進行編碼。在表示圖塊群組資料有無排序的資訊中,包含有例如基本編碼順序。除了圖塊群組資料有無排序以外,編碼裝置100亦可將包含有表示資料之排序單位(圖塊集、圖塊群組序列等)的資訊等之資訊,包含於圖塊擷取資訊SEI來進行編碼。再者,在圖52所示之例中,表示圖塊群組資料有無排序的語法為arbitrary_tile_group_order_flag等。
進而,編碼裝置100亦可將圖塊群組序列識別資訊、圖塊群組的開頭圖塊的圖塊位址資訊、及相依圖塊群組識別資訊,包含於圖塊擷取資訊SEI來進行編碼。在圖52所示之例中,表示圖塊群組序列識別資訊的語法為例如tile_group_seq_id[i]等。又,表示圖塊群組的開頭圖塊的圖塊位址資訊的語法為tile_group_address[i]等。又,表示相依圖塊群組識別資訊的語法為dependent_tile_group_flag[i]等。藉此,編碼裝置100藉由將圖塊擷取資訊SEI編碼,便可通知圖塊群組序列識別資訊、圖塊群組的開頭圖塊的圖塊位址資訊、及相依圖塊群組識別資訊。
再者,編碼裝置100亦可將開頭位元組位置及圖塊群組所包含之圖塊之位元組數的相關資訊,當作包含VCL NAL單元之仿真防止位元組(Emulation Prevention bytes)的酬載部分中之位元組位置及位元組數的相關資訊。進而,編碼裝置100亦可將各個圖塊群組標頭的開頭位元組位置當作位元組位置的基準。
又,編碼裝置100亦可依圖塊群組的數目來編碼複數個僅指定1個圖塊群組的圖塊擷取資訊SEI,藉以取代以1個圖塊擷取資訊SEI來指定複數個圖塊群組。
[第1態樣的效果] 根據第1態樣,編碼裝置100是以圖塊群組標頭來通知圖塊群組序列識別資訊。藉此,即使在已藉由編碼裝置100來替換圖塊群組之編碼順序並編碼圖片的情況下,解碼裝置200也有可能可以正確地取得相依圖塊群組之圖塊群組標頭的資訊。
又,由於編碼裝置100一直將圖塊群組所屬圖片的時刻資訊包含於圖塊群組標頭,因此會以圖塊群組標頭來通知圖片的時刻資訊。藉此,即使在已藉由編碼裝置100來替換圖塊群組之編碼順序的情況下,解碼裝置200也有可能可以容易地偵測到因封包遺失等所造成之圖塊群組資料的欠缺。
進而,根據第1態樣,由於解碼裝置200可在解析圖塊群組資料之前取得圖塊擷取資訊SEI,因此有可能可以使期望的圖塊資料擷取手續變得簡單。又,根據第1態樣,編碼裝置100亦可在將圖塊群組資料編碼之後,將圖塊擷取資訊SEI編碼。藉此,圖塊群組資料的編碼一完成,編碼裝置100便可發送或累積圖塊群組資料,有可能可以刪減暫時地保持圖塊群組資料用的記憶體量。
[與其他態樣的組合] 再者,本態樣亦可與本揭示中之其他態樣的至少一部分組合並實施。又,本態樣之流程圖中記載的一部分處理、本態樣之裝置的一部分構成、本態樣之語法的一部分等亦可與其他態樣組合並實施。
又,解碼裝置200中之圖塊群組解碼處理,在編碼裝置100的圖塊群組編碼處理中也可同樣地實施。
又,本態樣中記載的構成要素不一定全部需要,亦可僅具備第1態樣之構成要素的一部分。
又,解碼裝置200不限定於利用圖塊群組標頭之資訊來進行相依圖塊群組之解碼處理的情況。解碼裝置200亦可利用:與解碼對象之圖塊群組具有相同的圖塊群組序列識別資訊之解碼完畢的獨立圖塊群組、解碼完畢之相依圖塊群組的重構圖像、或參數,來進行相依圖塊群組的解碼處理。在此,參數例如是:與移動向量相關之資訊或索引、幀間預測模式、參考圖片清單、參考圖片索引、幀內預測模式、量化參數、算術編碼之內部參數等當中的至少1個參數。又,相依圖塊群組之解碼處理包含有例如幀間預測、幀內預測、反量化、算術解碼、濾波處理等當中的至少1個處理。
[第2態樣] 在第1態樣中,已針對以圖塊群組單位進行NAL單元化時的例子加以說明。在第2態樣中,會針對以圖塊單位進行NAL單元化時的例子加以說明。
圖53是顯示實施形態1的第2態樣之在編碼圖片之際,用來編碼構成圖片之圖塊的語法之一例的圖。於圖53,顯示了用來編碼以圖47A~圖47D的方式分割的圖塊之語法的一例。在本態樣中,如上述,是以圖塊單位來進行NAL單元化。
在構成圖片的圖塊群組是以複數個圖塊來構成的情況下,編碼裝置100亦可將圖塊分類成獨立圖塊(Independent Tile)與相依圖塊(Dependent Tile),並以語法來通知。在此,獨立圖塊是可獨立解碼的圖塊,相依圖塊是可利用所屬圖塊群組中之獨立圖塊的資訊來解碼的圖塊。
在本態樣中,編碼裝置100亦可將相依圖塊識別資訊(在圖53所示的語法例中為dependent_tile_flag等)包含於圖塊標頭。藉此,編碼裝置100便可通知該圖塊為獨立或相依圖塊。
又,編碼裝置100在圖塊群組是以複數個圖塊來構成的情況下,亦可將圖塊群組識別資訊(例如,在圖53所示的語法例中為tile_group_id等)包含於圖塊標頭。藉此,編碼裝置100便可通知該圖塊所屬的圖塊群組ID。進而,編碼裝置100可使用圖塊群組識別資訊,來通知圖塊群組是由1個獨立圖塊與0個以上的相依圖塊所構成。
且,編碼裝置100亦可構成為將獨立圖塊編碼在圖塊群組的開頭。藉此,編碼裝置100可使解碼裝置200在解碼相依圖塊之際,重複利用具有相同的圖塊群組識別資訊之獨立圖塊的標頭資訊(參數值)。進而,由於編碼裝置100可使其在該圖塊為相依圖塊時,重複利用具有相同的圖塊群組ID之獨立圖塊的參數值,因此可省略通知相依圖塊的參數值。
又,編碼裝置100亦可總是將該圖塊所屬圖片的時刻資訊(在圖53所示的語法例中為tile_pic_order_cnt_lsb等)包含於圖塊標頭。也就是說,編碼裝置100亦可不取決於該圖塊為獨立圖塊或相依圖塊,而是總是通知該圖塊所屬圖片的時刻資訊。藉此,解碼裝置200可藉由參考圖塊標頭的時刻資訊,而偵測到下一個圖片的圖塊已到達,因此可檢測出有未到達的圖塊。解碼裝置200亦可在檢測出構成現在的圖片之圖塊當中有未到達的圖塊之情況下,判斷為錯誤。
因此,即使在編碼裝置100以任意之順序來編碼圖塊的情況下,也有可能可以使解碼裝置200容易地偵測到通訊錯誤等所造成的資料欠缺。
圖54A是顯示實施形態1的第2態樣之構成圖片的圖塊集之一例與基本編碼順序的圖。圖54A是與圖49A相同的圖,且和在圖49A說明的內容相同,因此省略對圖54A的說明,圖54A所示之圓圈1~圓圈12是顯示編碼順序。
圖54B是顯示在以與圖54A相同的圖塊群組所構成的圖塊集之中替換圖塊的編碼順序之例的圖。圖54B所示之圓圈1~圓圈12是顯示編碼順序。
例如,編碼裝置100在將包含於圖塊集1的圖塊群組A之以圓圈1所示的圖塊編碼後,將包含於圖塊集2的圖塊群組D之以圓圈2所示的圖塊編碼,之後,將包含於圖塊集1的圖塊群組A之以圓圈3所示的圖塊編碼等。也就是說,編碼裝置100亦可如圖54B所示,在圖塊集1與2之間交錯地編碼。藉此,當編碼裝置100以圖塊集單位並列地進行編碼處理時,有可能可以縮短從編碼到送出資料為止的延遲時間。
再者,圖54B所示之在圖塊集間交錯地編碼圖塊之編碼順序僅為一例。也就是說,編碼裝置100既可以任意之順序來編碼圖塊,亦可以獨立圖塊在圖塊群組中必定成為最初的順序來編碼。
又,編碼裝置100亦可將替換編碼順序的單位設成圖塊群組或圖塊集單位。且,在此情況下,編碼裝置100亦可省略圖塊群組識別資訊的編碼。
圖55A是顯示實施形態1的第2態樣之解碼裝置200所進行的圖塊之解碼處理的流程圖。
首先,解碼裝置200取得以圖塊單位來編碼之位元串流的圖塊標頭,並進行已取得的圖塊標頭之資訊解析(S30)。
其次,解碼裝置200根據在步驟S30的資訊解析結果,判定解碼對象之圖塊是否為相依圖塊(S31)。在本態樣中,解碼裝置200可藉由解析包含於圖塊標頭的相依圖塊識別資訊(例如,圖53所示之dependent_tile_flag等的語法),來判定解碼對象之圖塊是否為相依圖塊。
於步驟S31,當解碼對象之圖塊不是相依圖塊時(步驟S31的獨立),解碼裝置200將已解析之圖塊標頭的資訊儲存於預定的記憶體區域(S32)。在本態樣中,當解碼對象之圖塊為獨立圖塊時,解碼裝置200將已解析之圖塊標頭的資訊,儲存於因應於圖塊群組識別資訊(例如,圖53所示之tile_group_id等的語法)而決定的記憶體區域。
另一方面,於步驟S31,當解碼對象之圖塊為相依圖塊時(步驟S31的相依),解碼裝置200從預定的記憶體區域取得圖塊標頭的資訊(S33)。在本態樣中,當解碼對象之圖塊為相依圖塊時,解碼裝置200會從因應於圖塊群組識別資訊而決定的記憶體區域,取得圖塊標頭的資訊。取得之圖塊標頭的資訊,是解碼對象之相依圖塊所屬之圖塊群組中的獨立圖塊之圖塊標頭的資訊,並且被儲存於因應於圖塊群組識別資訊而決定之預定的記憶體區域。藉此,便可重複利用獨立圖塊之圖塊標頭的資訊。
其次,解碼裝置200使用已解析或取得之圖塊標頭的資訊,來進行解碼對象之圖塊的解碼處理(S34)。
圖55B是顯示實施形態1的第2態樣之解碼裝置200在進行圖塊的解碼處理之際的錯誤檢測處理及隱藏處理之一例的流程圖。
首先,解碼裝置200取得以圖塊單位來編碼之位元串流的圖塊標頭,並進行已取得的圖塊標頭之資訊解析(S40)。在本態樣中,解碼裝置200解析圖塊標頭的時刻資訊(例如,圖53所示之tile_pic_order_cnt_lsb等的語法)。
其次,解碼裝置200根據在步驟S40的資訊解析結果,判定解碼對象之圖塊所屬的圖片之時刻是否已前進(S41)。在本態樣中,解碼裝置200藉由確認圖塊標頭的時刻資訊,來判定解碼對象之圖塊所屬的圖片之時刻(例如,時刻T)是否已前進。
於步驟S41,當圖片的時刻已前進時(步驟S41的是),解碼裝置200判定是否有未接收的圖塊(S42)。在本態樣中,當解碼對象之圖塊所屬的圖片之時刻成為例如時刻T+1而為已前進時,解碼裝置200會判定在之前的時刻(時刻T)的圖片中是否有未接收的圖塊。
於步驟S42,當有未接收的圖塊時(S42的是),解碼裝置200對未接收的圖塊進行錯誤隱藏處理(S43)。在本態樣中,當在之前的時刻(時刻T)的圖片中有未接收的圖塊時,解碼裝置200會判斷為通訊錯誤等該未接收的圖塊產生了錯誤,並對該未接收的圖塊進行錯誤隱藏處理。
其次,解碼裝置200根據已解析之圖塊標頭的資訊,來進行解碼對象之圖塊的解碼處理(S44)。於步驟S44,亦可因應於圖塊標頭所包含之相依圖塊識別資訊所示的內容來切換處理。切換處理之際的處理已於圖55A說明,因此省略此處的說明。
再者,當在步驟S41中圖片的時刻為未前進時(步驟S41的否),以及在步驟S42中為沒有未接收的圖塊時(S42的否),只要前進到步驟S44並執行處理即可。
其次,說明將儲存有擷取對象之圖塊的位元串流位置之相關資訊作為圖塊擷取資訊SEI來編碼時的例子。再者,圖塊擷取資訊SEI亦可編碼於圖塊集或圖塊群組的前或後。
圖56A是顯示實施形態1的第2態樣之將圖塊擷取資訊SEI編碼於圖片的後面時之一例的圖。圖56B是顯示實施形態1的第2態樣之將圖塊擷取資訊SEI編碼於圖片的前面時之一例的圖。
在此,編碼裝置100如圖56A所示之例,將圖塊擷取資訊SEI編碼於圖片的後面。在此情況下,編碼裝置100可在將圖塊資料編碼之後,將圖塊擷取資訊SEI編碼,因此圖塊資料的編碼一完成,便可發送或累積圖塊資料。藉此,編碼裝置100有可能可以刪減暫時地保持圖塊資料用的記憶體量。
又,編碼裝置100如圖56B所示之例,將圖塊擷取資訊SEI編碼於圖片的前面。在此情況下,解碼裝置200可在解析圖塊資料之前取得圖塊擷取資訊SEI。藉此,編碼裝置100有可能可以讓解碼裝置200所進行之期望的圖塊資料擷取手續變得簡單。
再者,編碼裝置100在以MPEG-2 TS或MMT、MP4等進行系統多工處理之際,亦可將上述之圖塊擷取資訊SEI從對應的圖塊資料的後面移動到前面之後,再進行多工處理。
圖57是顯示實施形態1的第2態樣之用以編碼圖塊擷取資訊SEI的語法之一例的圖。
編碼裝置100亦可將與圖塊擷取資訊SEI建立關聯的圖塊群組數、圖塊資料之排序的相關資訊、圖塊群組識別資訊、表示圖塊群組之開頭圖塊的位址的圖塊位址資訊,以語法的形式包含於圖塊擷取資訊SEI來進行編碼。又,編碼裝置100亦可將表示圖塊群組所包含之圖塊數的資訊,以語法的形式包含於圖塊擷取資訊SEI來進行編碼。
表示圖塊群組數的語法為圖57所示的num_tile_groups_minus1[i]等。又,與資料之排序相關的資訊,有表示圖塊資料有無排序的資訊、表示資料之排序單位(圖塊集、圖塊群組等)的資訊等。又,圖57所示之例中,表示圖塊資料有無排序的語法為arbitrary_tile_order_flag等。表示圖塊群組識別資訊的語法為tile_group_id[i]等。表示圖塊位址資訊的語法為tile_group_address[i]等。表示圖塊群組所包含之圖塊數的語法為num_tiles_in_tile_group_minus1[i]等。
像這樣,編碼裝置100藉由將圖塊擷取資訊SEI編碼,便可通知圖塊群組數、與圖塊資料之排序相關的資訊、圖塊群組識別資訊、圖塊位址資訊、及圖塊群組所包含之圖塊數等。
藉此,編碼裝置100可利用圖塊擷取資訊SEI來將與圖片內之各圖塊所屬的圖塊群組有關的資訊進行編碼,因此有可能可以使解碼裝置200在解碼期望的圖塊之際所需要的資料之擷取變得簡單。
再者,編碼裝置100亦可使圖片、圖塊集或圖塊群組序列所包含之所有的圖塊群組等與複數個圖塊群組建立關聯,或與各個圖塊群組個別地建立關聯。在此情況下,編碼裝置100亦可將表示已建立關聯之內容的語法包含於圖塊擷取資訊SEI來進行編碼。
[第2態樣的效果] 根據第2態樣的構成,編碼裝置100是以圖塊標頭來通知圖塊群組識別資訊。藉此,即使在已藉由編碼裝置100來替換圖塊之編碼順序並編碼圖片的情況下,解碼裝置200也有可能可以正確地取得相依圖塊之圖塊標頭的資訊。
又,由於編碼裝置100一直將圖塊所屬圖片的時刻資訊包含於圖塊標頭,因此會以圖塊標頭來通知圖片的時刻資訊。藉此,即使在已藉由編碼裝置100來替換圖塊之編碼順序的情況下,解碼裝置200也有可能可以容易地偵測到因封包遺失等所造成之圖塊資料的欠缺。
進而,根據第2態樣,由於解碼裝置200可在解析圖塊資料之前取得圖塊擷取資訊SEI,因此有可能可以使期望的圖塊資料擷取手續變得簡單。又,根據第2態樣,編碼裝置100亦可在將圖塊資料編碼之後,將圖塊擷取資訊SEI編碼。藉此,圖塊資料的編碼一完成,編碼裝置100便可發送或累積圖塊資料,因此有可能可以刪減暫時地保持圖塊資料用的記憶體量。
[與其他態樣的組合] 再者,本態樣亦可與本揭示中之其他態樣的至少一部分組合並實施。又,本態樣之流程圖中記載的一部分處理、本態樣之裝置的一部分構成、本態樣之語法的一部分等亦可與其他態樣組合並實施。
又,解碼裝置200中之圖塊解碼處理,在編碼裝置100的圖塊編碼處理中也可同樣地實施。
又,本態樣中記載的構成要素不一定全部需要,亦可僅具備本態樣之構成要素的一部分。
又,圖片所包含之圖塊的單位,不限定於如在本揭示中定義的圖塊集、圖塊群組及圖塊。圖片只要包含有至少1個以上的圖塊即可,圖塊集或圖塊群組的其中一者也可以不被定義。換言之,圖片只要至少包含以下的區域即可:包含1個以上的CTU之區域A(例如圖塊或圖塊群組)、包含1個以上的區域A之區域B(例如圖塊群組或圖塊集)。在此情況下,亦可將能夠以第1順序(例如逐線順序)連續地掃描之1個以上的區域A定義為區域B。此時,將以與第1順序不同的第2順序來編碼區域A之位元串流輸出或解碼即可。
又,在本態樣中,雖已說明以圖片單位來編碼圖塊擷取資訊SEI的例子,但不限於此。亦可以序列單位來編碼圖塊擷取資訊SEI。
又,編碼裝置100亦可以圖片單位來切換用以識別擷取對象之圖塊群組的圖塊擷取資訊、及用以識別擷取對象之圖塊的圖塊擷取資訊,並予以編碼。
再者,解碼裝置200不限定於利用圖塊標頭之資訊來進行相依圖塊之解碼處理的情況。解碼裝置200亦可利用:與解碼對象之圖塊具有相同的圖塊群組識別資訊之解碼完畢的獨立圖塊、解碼完畢之相依圖塊的重構圖像、或參數,來進行相依圖塊的解碼處理。在此,參數例如是:與移動向量相關之資訊或索引、幀間預測模式、參考圖片清單、參考圖片索引、幀內預測模式、量化參數、算術編碼之內部參數等當中的至少1個參數。又,相依圖塊之解碼處理包含有例如幀間預測、幀內預測、反量化、算術解碼、濾波處理等當中的至少1個處理。
[第3態樣] 將圖片分割之圖塊有時可進一步分割。在以下的第3態樣中,針對如下情況進行說明:編碼裝置100(或解碼裝置200)將圖片分割成2個以上的圖塊,再對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行編碼(或解碼)。
圖58A及圖58B是顯示實施形態1的第3態樣之將圖片分割成矩形區域來編碼之際的圖片構成之一例的圖。
在圖58A中,顯示了圖片朝橫方向分割成4個且朝縱方向分割成3個之被分割成12個矩形區域的例子。以圓圈1~圓圈12所示之矩形區域既可是圖塊,亦可是磚(brick)。也就是說,亦可將圖片分割成以圓圈1~圓圈12來表示的圖塊,並將已分割之圖塊進一步分割成1個磚。在此,磚是將圖塊分割的單位,且是將圖塊分割成1個以上的矩形區域的單位。圖塊或磚是由1個以上之連續的CTU所構成。如此的圖片構成亦可藉由分割部102來構成。圓圈1~圓圈12的數字顯示了編碼裝置100編碼圖塊或磚的順序。
在圖58B中,顯示了圖片被分割成6個矩形區域的例子。更具體而言,在圖58B中,顯示了圖片首先被分割成3個圖塊(以粗框框著的3個矩形區域),進而,3個圖塊分別被分割成1個以上的磚(以細框框著的1個以上的矩形區域)的例子。左側的圖塊被分割成以圓圈1及圓圈2表示的2個磚,中央的圖塊被分割成以圓圈3~圓圈6表示的3個磚。右側的圖塊可被分割成以圓圈6表示的1個磚,亦可為原本的圖塊。如此的圖片構成亦可藉由分割部102來構成。圓圈1~圓圈6的數字顯示了編碼裝置100編碼圖塊或磚的順序。
再者,磚可與圖塊同樣地構成切片。也就是說,1個以上的圖塊或1個以上的磚可構成1個切片,且作為1個切片來統整地編碼。
於本態樣,切片的設定方法有逐線掃描切片模式(Raster Scan Slice Mode)或矩形切片模式(Rectangular Slice Mode)等。在逐線掃描切片模式中,是按逐線順序來掃描圖塊或磚而統整成切片。在矩形切片模式中,是以所有切片的形狀皆成為矩形的方式來將圖塊或磚統整成切片。
於圖58A,顯示了以逐線掃描切片模式來設定切片的例子。亦即,在圖58A中,圓圈1及圓圈2的圖塊(或磚)被統整成切片A,圓圈3~圓圈9的圖塊(或磚)被統整成切片B。且,圓圈10~圓圈12的圖塊(或磚)被統整成切片C。
另一方面,於圖58B,顯示了以矩形切片模式來設定切片的例子。亦即,在圖58B中,圓圈1的磚被統整成切片A,圓圈2的磚被統整成切片B。又,圓圈3及圓圈4的磚被統整成切片C,圓圈5的磚被統整成切片D。且,圓圈6的圖塊(或磚)被統整成切片E。
圖59是顯示實施形態1的第3態樣之在編碼圖片之際用來分割圖片並加以編碼的圖片參數集(PPS)之語法的一例的圖。於圖59,顯示了像圖58A或圖58B一樣地分割圖片並加以編碼所用的PPS之語法的一例。PPS是Picture Parameter Set的縮寫,為寫有關於圖片整體的編碼之資訊的標頭資訊。
在本態樣中,當圖片被分割成複數個圖塊時,編碼裝置100只要通知圖片之分割方法的相關資訊及切片之設定方法的相關資訊即可。更具體而言,編碼裝置100將對象之圖片是否由單一圖塊所構成的相關資訊(在圖59所示的語法例中為single_tile_in_pic_flag等)包含於PPS。且,當圖片是由複數個圖塊所構成時,編碼裝置100將由圖塊或磚所構成的圖片之分割方法的相關資訊、及切片之設定方法的相關資訊包含於PPS。藉此,編碼裝置100可因應於對象之圖片是否由單一圖塊所構成的相關資訊,來通知由圖塊或磚所構成的圖片之分割方法的相關資訊、及切片之設定方法的相關資訊。
作為切片之設定方法的相關資訊,例如有:表示切片內的磚數是否必定為1個的資訊、及切片模式的相關資訊。在此,在圖59所示之例中,表示切片內的磚數是否必定為1個的語法,為single_brick_per_slice_flag等。表示切片模式的相關資訊的語法,為rect_slice_flag等。藉此,編碼裝置100藉由將表示切片模式的相關資訊的語法包含於PPS,便可通知對象之圖片中的切片之設定方法為矩形切片模式或逐線掃描切片模式。
再者,編碼裝置100亦可根據表示切片內的磚數是否必定為1個的資訊及切片模式的相關資訊中之至少一個資訊,來切換是否進一步將用以特定出各切片所包含之區域的資訊包含於PPS以進行通知。編碼裝置100亦可不將切片模式的相關資訊包含於PPS。在此情況下,由於切片模式的相關資訊沒有被通知,因此解碼裝置200亦可使切片模式的相關資訊總是為1,且視作對象之圖片中的切片之設定方法為矩形切片模式。
當對象之圖片中的切片之設定方法為矩形切片模式時,編碼裝置100可將用以特定出各切片所包含之矩形區域的資訊當作切片之設定方法的相關資訊來包含於PPS,藉此進行通知。
在本態樣中,用以特定出各切片所包含之矩形區域的資訊有:圖片內之切片數的相關資訊、各切片之左上角及右下角的位置資訊。在圖59所示之例中,表示圖片內之切片數的語法為num_slices_in_pic_minus1等。又,表示各切片之左上角及右下角的位置的語法,如圖59所示為top_left_brick_idx及bottom_right_brick_idx_delta等。也就是說,亦可為左上角的位置以磚索引來表示,右下角的位置以磚索引或其差分值來表示。
如此,編碼裝置100可將用以特定出各切片所包含之矩形區域的資訊作為語法來包含於PPS,藉此通知圖片內的切片數、各切片之左上角與右下角的位置。
再者,編碼裝置100在對象之圖片中的切片之設定方法為矩形切片模式的情況下,亦可省略圖片開頭的切片之左上角的位置資訊、圖片末尾的切片之左上角及右下角的位置資訊(亦可不包含於PPS)。在此情況下,解碼裝置200只要以預定的方法來設定值即可。以下,具體地進行說明。
例如,解碼裝置200針對圖片開頭的切片之左上角的位置,只要設定成0(零)即可。又,解碼裝置200針對圖片末尾的切片之左上角的位置,亦可以如下的方式來設定。該末尾的切片相當於從相同的PPS中所包含之切片設定方法的相關資訊所得知之未設定切片的區域。因此,解碼裝置200亦可將占據該未設定之區域的磚索引當中值最小的磚索引,設定成圖片末尾的切片之左上角的位置。
又,針對圖片末尾的切片之右下角的位置,解碼裝置200亦可設定圖片末尾的切片之左上角的位置的偏移(offset)值等。例如,解碼裝置200亦可將圖片末尾的切片之右下角的位置設定成NumBricksInPic-1-top_left_brick_idx[num_slices_in_pic_minus1]。在此,令圖片內的磚數為NumBricksInPic。又,令圖片末尾的切片之左上角的位置為top_left_brick_idx[num_slices_in_pic_minus1]。
像這樣,編碼裝置100在對象之圖片中的切片之設定方法為矩形切片模式的情況下,會將各切片之左上角及右下角的位置資訊等用以特定出各切片所包含之矩形區域的資訊包含於PPS以進行通知。惟,編碼裝置100亦可省略通知圖片開頭的切片之左上角的位置資訊、圖片末尾的切片之左上角及右下角的位置資訊。
圖60是顯示實施形態1的第3態樣之解碼裝置200所進行的矩形切片模式下的矩形切片設定處理之一例的流程圖。在圖60中,顯示了解碼裝置200在以矩形切片模式進行解碼處理之際,是進行如下的處理來作為矩形切片設定處理:一邊參考PPS所通知的切片之設定方法的相關資訊,一邊特定出各切片所包含的矩形區域。
首先,解碼裝置200取得位元串流的圖片參數集(PPS),並解析已取得的PPS(S51)。
其次,解碼裝置200將迴圈次數設定成比圖片內的切片數少1次(S52)。在本態樣中,解碼裝置200會解析PPS,並確認圖片內的切片數的相關資訊。在圖59所示之例中,解碼裝置200可藉由解析包含於PPS之num_slices_in_pic_minus1等的語法,來確認圖片內的切片數的相關資訊。
其次,解碼裝置200執行已設定之次數的迴圈處理,亦即次數比圖片內之切片數少1次的迴圈處理。
亦即,迴圈處理中,首先,解碼裝置200判定解碼對象之切片是否為圖片開頭的切片(S53)。
當解碼對象之切片為開頭以外的切片時(步驟S53的開頭以外),解碼裝置200將PPS所通知之值設定為解碼對象之切片之左上角的位置資訊(S54)。在本態樣中,解碼裝置200亦可將包含於PPS之磚索引設定為解碼對象之切片之左上角的位置資訊,並將磚索引或其差分值設定為右下角的位置資訊。例如,解碼裝置200亦可將各切片之左上角的位置資訊與右下角的位置資訊,設定成圖59所示的top_left_brick_idx與bottom_right_brick_idx_delta等。藉此,解碼裝置200可特定出各切片所包含之矩形區域。
另一方面,當解碼對象之切片為開頭的切片時(步驟S53的開頭),解碼裝置200以第1預定方法來設定解碼對象之切片之左上角的位置資訊(S55)。在圖60所示的處理例中,針對圖片開頭的切片之左上角的位置資訊,是設成並未以PPS通知。因此,解碼裝置200只要將圖片開頭的切片之左上角的位置資訊,設定成例如0(零)等表示圖片之左上角的資訊即可。
其次,解碼裝置200結束迴圈處理,以第2預定方法來設定解碼對象之切片之左上角的位置資訊(S56)。由於迴圈處理已結束,因此這裡的解碼對象之切片是圖片末尾的切片。又,圖片末尾的切片之左上角的位置資訊並未以PPS通知。因此,解碼裝置200只要將解碼對象之切片之左上角的位置資訊,設定成從PPS中所包含之切片設定方法的相關資訊所得知之未設定切片的區域中值最小的磚索引即可。例如,解碼裝置200只要將圖片末尾的切片之左上角的位置資訊,設定成圖59所示的top_left_brick_idx[num_slices_in_pic_minus1]等即可。
其次,解碼裝置200以第3預定方法來設定解碼對象之切片之右下角的位置資訊(S57)。在圖60所示的處理例中,解碼對象即圖片末尾的切片之右下角的位置資訊也是設成並未以PPS通知。因此,解碼裝置200亦可將左上角的位置的偏移值,設定為解碼對象即圖片末尾的切片之右下角的位置資訊。例如,解碼裝置200只要將NumBricksInPic-1-top_left_brick_idx[num_slices_in_pic_minus1]等設定成圖片末尾的切片之右下角的位置資訊即可。在此,令圖片內的磚數為NumBricksInPic。又,令圖片末尾的切片之左上角的位置為top_left_brick_idx[num_slices_in_pic_minus1]。
[第3態樣的效果] 根據第3態樣,編碼裝置100可使切片的設定方法之相關資訊的一部分不包含於圖片參數集而省略,因此有可能可以刪減編碼量。
[與其他態樣的組合] 再者,本態樣亦可與本揭示中之其他態樣的至少一部分組合並實施。又,本態樣之流程圖中記載的一部分處理、本態樣之裝置的一部分構成、本態樣之語法的一部分等亦可與其他態樣組合並實施。
又,解碼裝置200中之矩形切片設定處理,在編碼裝置100的矩形切片設定處理中也可同樣地實施。
又,本態樣中記載的構成要素不一定全部需要,亦可僅具備本態樣之構成要素的一部分。
[第4態樣] 在以下的第4態樣中,針對第3態樣中已說明過的可省略之資訊(切片之設定方法的相關資訊的一部分)為不同時的例子進行說明。
圖61是顯示實施形態1的第4態樣之在編碼圖片之際用來分割圖片並加以編碼的圖片參數集(PPS)之語法的一例的圖。於圖61,顯示了像圖58A或圖58B一樣地分割圖片並加以編碼所用的PPS之語法的一例。
在本態樣中,當圖片被分割成複數個圖塊時,編碼裝置100也是只要通知圖片之分割方法的相關資訊及切片之設定方法的相關資訊即可。更具體而言,編碼裝置100將對象之圖片是否由單一圖塊所構成的相關資訊(例如,在圖61所示的語法例中也是single_tile_in_pic_flag等)包含於PPS。且,當圖片是由複數個圖塊所構成時,編碼裝置100將由圖塊或磚所構成的圖片之分割方法的相關資訊、及切片之設定方法的相關資訊包含於PPS。藉此,編碼裝置100可因應於對象之圖片是否由單一圖塊所構成的相關資訊,來通知由圖塊或磚所構成的圖片之分割方法的相關資訊、及切片之設定方法的相關資訊。
作為切片之設定方法的相關資訊,例如有:表示切片內的磚數是否必定為1個的資訊、及切片模式的相關資訊。在此,在圖61所示之例中,表示切片內的磚數是否必定為1個的語法,也是single_brick_per_slice_flag等。表示切片模式的相關資訊的語法,為rect_slice_flag等。藉此,編碼裝置100藉由將表示切片模式的相關資訊的語法包含於PPS,便可通知對象之圖片中的切片之設定方法為矩形切片模式或逐線掃描切片模式。
再者,編碼裝置100亦可根據表示切片內的磚數是否必定為1個的資訊及切片模式的相關資訊中之至少一個資訊,來切換是否進一步將用以特定出各切片所包含之區域的資訊包含於PPS以進行通知。編碼裝置100亦可不將切片模式的相關資訊包含於PPS。在此情況下,由於切片模式的相關資訊沒有被通知,因此解碼裝置200亦可使切片模式的相關資訊總是為1,且視作對象之圖片中的切片之設定方法為矩形切片模式。
當對象之圖片中的切片之設定方法為矩形切片模式時,編碼裝置100可將用以特定出各切片所包含之矩形區域的資訊當作切片之設定方法的相關資訊來包含於PPS,藉此進行通知。
在本態樣中,用以特定出各切片所包含之矩形區域的資訊也是有:圖片內之切片數的相關資訊、各切片之左上角及右下角的位置資訊。在圖59所示之例中,表示圖片內之切片數的語法為num_slices_in_pic_minus1等。又,表示各切片之左上角及右下角的位置的語法,如圖59所示為top_left_brick_idx及bottom_right_brick_idx_delta等。亦可為左上角的位置以磚索引來表示,右下角的位置以磚索引或其差分值來表示。
如此,編碼裝置100可將用以特定出各切片所包含之矩形區域的資訊作為語法來包含於PPS,藉此通知圖片內的切片數、各切片之左上角及右下角的位置。
再者,編碼裝置100在對象之圖片中的切片之設定方法為矩形切片模式的情況下,亦可省略圖片開頭的切片之左上角的位置資訊、及圖片末尾的切片之右下角的位置資訊(亦可不包含於PPS)。在此情況下,解碼裝置200只要以預定的方法來設定值即可。
例如,解碼裝置200針對圖片開頭的切片之左上角的位置,只要設定成0(零)即可。又,解碼裝置200針對圖片末尾的切片之右下角的位置,亦可設定圖片末尾的切片之左上角的位置的偏移值等。例如,解碼裝置200亦可將圖片末尾的切片之右下角的位置設定成NumBricksInPic-1-top_left_brick_idx[num_slices_in_pic_minus1]。在此,令圖片內的磚數為NumBricksInPic。又,令圖片末尾的切片之左上角的位置為top_left_brick_idx[num_slices_in_pic_minus1]。
像這樣,編碼裝置100在對象之圖片中的切片之設定方法為矩形切片模式的情況下,會將各切片之左上角及右下角的位置資訊等用以特定出各切片所包含之矩形區域的資訊包含於PPS以進行通知。惟,編碼裝置100亦可省略通知圖片開頭的切片之左上角的位置資訊、圖片末尾的切片之右下角的位置資訊。
圖62是顯示實施形態1的第4態樣之解碼裝置200所進行的矩形切片模式下的矩形切片設定處理之一例的流程圖。在圖62中,顯示了解碼裝置200在以矩形切片模式進行解碼處理之際,是進行如下的處理來作為矩形切片設定處理:一邊參考PPS所通知的切片之設定方法的相關資訊,一邊特定出各切片所包含的矩形區域。
首先,解碼裝置200取得位元串流的圖片參數集(PPS),並解析已取得的PPS(S61)。
其次,解碼裝置200因應於圖片內的切片數來設定迴圈次數(S62)。在本態樣中,解碼裝置200會解析PPS,並確認圖片內的切片數的相關資訊。在圖62所示之例中,解碼裝置200可藉由解析包含於PPS之num_slices_in_pic_minus1等的語法,來確認圖片內的切片數的相關資訊。接著,解碼裝置200因應於已確認之圖片內的切片數,來設定以降的迴圈處理的次數。
其次,解碼裝置200執行已設定之迴圈次數的迴圈處理,亦即次數相當於圖片內之切片數的迴圈處理。
亦即,迴圈處理中,首先,解碼裝置200判定解碼對象之切片是否為圖片開頭的切片(S63)。
當解碼對象之切片為開頭以外的切片時(步驟S63的開頭以外),解碼裝置200將PPS所通知之值設定為解碼對象之切片之左上角的位置資訊(S64)。在本態樣中,解碼裝置200亦可將包含於PPS之磚索引設定為解碼對象之切片之左上角的位置資訊,並將磚索引或其差分值設定為右下角的位置資訊。例如,解碼裝置200只要將各切片之左上角的位置資訊及右下角的位置資訊,設定成圖61所示的top_left_brick_idx及bottom_right_brick_idx_delta等即可。藉此,解碼裝置200可特定出各切片所包含之矩形區域。
另一方面,當解碼對象之切片為開頭的切片時(步驟S63的開頭),解碼裝置以第1預定方法來設定解碼對象之切片之左上角的位置資訊(S65)。在圖62所示的處理例中,針對圖片開頭的切片之左上角的位置資訊,也是設成並未以PPS通知。因此,解碼裝置200只要將圖片開頭的切片之左上角的位置資訊,設定成例如0(零)等表示圖片之左上角的資訊即可。
其次,解碼裝置200判定解碼對象之切片是否為圖片末尾的切片(S66)。
當解碼對象之切片為末尾以外的切片時(步驟S66的末尾以外),解碼裝置200將PPS所通知之值設定為解碼對象之切片之右下角的位置資訊(S67)。在本態樣中,解碼裝置200亦可將包含於PPS之磚索引或其差分值設定為解碼對象之切片之右下角的位置資訊。例如,解碼裝置200只要將解碼對象之切片之右下角的位置資訊,設定成圖61所示的bottom_right_brick_idx_delta等即可。
另一方面,當解碼對象之切片為末尾的切片時(步驟S66的末尾),解碼裝置以第3預定方法來設定解碼對象之切片之右下角的位置資訊(S68)。在此,圖片末尾的切片之右下角的位置資訊也是設成並未以PPS通知。因此,解碼裝置200亦可將左上角的位置的偏移值,設定為解碼對象即圖片末尾的切片之右下角的位置資訊。例如,解碼裝置200只要將圖片末尾的切片之右下角的位置資訊設定成NumBricksInPic-1-top_left_brick_idx[num_slices_in_pic_minus1]等即可。在此,令圖片內的磚數為NumBricksInPic。又,令圖片末尾的切片之左上角的位置為top_left_brick_idx[num_slices_in_pic_minus1]。
如此,解碼裝置200可特定出各切片所包含之矩形區域。
[第4態樣的效果] 根據第4態樣,編碼裝置100可使切片的設定方法之相關資訊的一部分不包含於圖片參數集而省略,因此有可能可以刪減編碼量。
[與其他態樣的組合] 再者,本態樣亦可與本揭示中之其他態樣的至少一部分組合並實施。又,本態樣之流程圖中記載的一部分處理、本態樣之裝置的一部分構成、本態樣之語法的一部分等亦可與其他態樣組合並實施。
又,解碼裝置200中之矩形切片設定處理,在編碼裝置100的矩形切片設定處理中也可同樣地實施。
又,本態樣中記載的構成要素不一定全部需要,亦可僅具備本態樣之構成要素的一部分。
[第5態樣] 在以下的第5態樣中,針對與第3態樣及第4態樣中所說明的例子不同的例子進行說明。
圖63是顯示實施形態1的第5態樣之在編碼圖片之際用來分割圖片並加以編碼的圖片參數集(PPS)之語法的一例的圖。於圖63,顯示了像圖58A或圖58B一樣地分割圖片並加以編碼所用的PPS之語法的一例。相較於例如圖61所示之PPS的語法,圖63所示之PPS的語法追加了藉由磚所進行之圖塊分割方法的相關資訊。
在本態樣中,當圖片被分割成複數個圖塊時,編碼裝置100也是只要通知圖片之分割方法的相關資訊及切片之設定方法的相關資訊即可。更具體而言,編碼裝置100將對象之圖片是否由單一圖塊所構成的相關資訊(例如,在圖63所示的語法例中也是single_tile_in_pic_flag等)包含於PPS。且,當圖片是由複數個圖塊所構成時,編碼裝置100將由圖塊或磚所構成的圖片之分割方法的相關資訊、及切片之設定方法的相關資訊包含於PPS。藉此,編碼裝置100可因應於對象之圖片是否由單一圖塊所構成的相關資訊,來通知由圖塊或磚所構成的圖片之分割方法的相關資訊、及切片之設定方法的相關資訊。
再者,以下,在矩形切片模式中,是設成可選擇是否將圖塊分割成磚。另一方面,在逐線掃描切片模式中,是設成一直不將圖塊分割成磚。
又,在本態樣中,編碼裝置100亦可將藉由磚所進行之圖塊分割方法的相關資訊包含於PPS。在此,作為藉由磚所進行之圖塊分割方法的相關資訊,例如有:表示是否允許以磚來分割圖片內之圖塊的資訊、及表示切片內之磚數是否必定為1個的資訊。在圖63所示之例中,表示是否允許以磚來分割圖片內之圖塊的語法,例如為brick_splitting_present_flag等。表示切片內之磚數是否必定為1個的語法,例如為single_brick_per_slice_flag等。
編碼裝置100在表示是否允許以磚來分割圖片內之圖塊的資訊表示允許的情況下,將表示每個圖塊中之藉由磚所進行的分割方法之資訊包含於PPS來進行通知。
再者,令表示是否允許以磚來分割圖片內之圖塊的資訊表示不允許。且,進而,當表示切片內的磚數是否必定為1個的資訊表示不一定為1個時,編碼裝置100將切片模式的相關資訊當作切片之設定方法的相關資訊來包含於PPS而進行通知。表示切片模式的相關資訊的語法為例如圖63所示的rect_slice_flag等。切片模式的相關資訊是表示對象之圖片中的切片之設定方法為矩形切片模式或逐線掃描切片模式。
另一方面,不滿足條件時,亦即,表示切片內的磚數是否必定為1個的資訊表示必定為1個時,編碼裝置100亦可省略切片模式的相關資訊(不包含於PPS),並且省略通知。解碼裝置200在切片模式的相關資訊沒有被通知的情況下,亦可使切片模式的相關資訊總是為1,且視作對象之圖片中的切片之設定方法為矩形切片模式。
如此,編碼裝置100可無誤地實施在矩形切片模式下以磚來分割圖塊的處理與逐線掃描切片模式的處理之互斥控制。
圖64是顯示實施形態1的第5態樣之解碼裝置200在進行切片資料的解碼處理之際的切片模式設定處理之一例的流程圖。在圖64中,解碼裝置200是進行如下的處理來作為切片模式設定處理:一邊參考PPS所通知的切片或圖塊之設定方法的相關資訊、或磚之設定方法的相關資訊,一邊特定出切片模式(矩形切片模式或逐線掃描切片模式)。
首先,解碼裝置200取得位元串流的圖片參數集(PPS),並解析已取得的PPS(S71)。
其次,解碼裝置200判定是否允許以磚來分割圖片內的圖塊(S72)。在本態樣中,解碼裝置200會解析PPS,並對表示是否允許以磚來分割圖片內之圖塊的資訊進行確認。在圖63所示之例中,解碼裝置200可藉由解析包含於PPS之brick_splitting_present_flag等的語法,來確認是否允許以磚來分割圖片內的圖塊。
於步驟S72,若不允許以磚來分割圖片內的圖塊(步驟S72的不允許),解碼裝置200會判定切片內的磚數是否必定為1個(S73)。在本態樣中,在包含於PPS之表示是否允許以磚來分割圖片內之圖塊的語法不是1的情況下,解碼裝置200對包含於PPS之表示切片內的磚數是否必定為1個的語法進行確認。在圖63所示之例中,解碼裝置200可藉由解析包含於PPS之single_brick_per_slice_flag等的語法,來確認切片內的磚數是否必定為1個。
於步驟S73,若切片內的磚數不一定為1個(步驟S73的否),解碼裝置200因應於PPS之切片模式的相關資訊來設定切片模式(S74)。在本態樣中,當包含於PPS之表示切片內的磚數是否必定為1個的語法不是1時,解碼裝置200將切片模式設定成逐線掃描切片模式。
再者,於步驟S72,若允許以磚來分割圖片內的圖塊(步驟S72的允許),解碼裝置200將切片模式設定成矩形切片模式(S75)。在本態樣中,解碼裝置200當包含於PPS之表示是否允許以磚來分割圖片內之圖塊的語法為1時,解碼裝置200將切片模式設定成矩形切片模式。
又,於步驟S73,當切片內的磚數必定為1個時(步驟S73的是),解碼裝置200將切片模式設定成矩形切片模式(S75)。在本態樣中,解碼裝置200當包含於PPS之表示切片內的磚數是否必定為1個的語法為1時,解碼裝置200將切片模式設定成矩形切片模式。
再者,在將切片模式設定成矩形切片模式的情況下,解碼裝置200有時也會省略而不通知例如圖63的rect_slice_flag等PPS中之切片模式的相關資訊。
[第5態樣的效果] 根據第5態樣,編碼裝置100可使切片模式之相關資訊的一部分不包含於圖片參數集而省略,因此有可能可以刪減編碼量。
[與其他態樣的組合] 再者,本態樣亦可與本揭示中之其他態樣的至少一部分組合並實施。又,本態樣之流程圖中記載的一部分處理、本態樣之裝置的一部分構成、本態樣之語法的一部分等亦可與其他態樣組合並實施。
又,解碼裝置200中之矩形切片設定處理,在編碼裝置100的矩形切片設定處理中也可同樣地實施。
又,本態樣中記載的構成要素不一定全部需要,亦可僅具備本態樣之構成要素的一部分。
[第6態樣] 在以下的第6態樣中,針對與第5態樣中所說明的例子不同的例子進行說明。
圖65是顯示實施形態1的第6態樣之在編碼圖片之際用來分割圖片並加以編碼的圖片參數集(PPS)之語法的一例的圖。於圖65,顯示了像圖58A或圖58B一樣地分割圖片並加以編碼所用的PPS之語法的一例。
在本態樣中,當圖片被分割成複數個圖塊時,編碼裝置100也是只要通知圖片之分割方法的相關資訊及切片之設定方法的相關資訊即可。更具體而言,編碼裝置100將對象之圖片是否由單一圖塊所構成的相關資訊(例如,在圖65所示的語法例中也是single_tile_in_pic_flag等)包含於PPS。且,當圖片是由複數個圖塊所構成時,編碼裝置100將由圖塊或磚所構成的圖片之分割方法的相關資訊、及切片之設定方法的相關資訊包含於PPS。藉此,編碼裝置100可因應於對象之圖片是否由單一圖塊所構成的相關資訊,來通知由圖塊或磚所構成的圖片之分割方法的相關資訊、及切片之設定方法的相關資訊。
再者,以下,在矩形切片模式中,也是設成可選擇是否將圖塊分割成磚。另一方面,在逐線掃描切片模式中,是設成一直不將圖塊分割成磚。
在本態樣中,如圖65所示,在對象之圖片是否由單一圖塊所構成的相關資訊之後,與切片模式有關係的資訊包含於PPS,在與切片模式有關係的資訊之後,磚的分割相關資訊包含於PPS。也就是說,編碼裝置100為了切換是否將磚的分割相關資訊包含於PPS來進行通知,會比磚的分割相關資訊更早地,將與切片模式有關係的資訊包含於PPS來進行通知。
在此,作為與切片模式有關係的資訊,有表示切片內的磚數是否必定為1個的資訊、及切片模式的相關資訊。
例如,表示切片內的磚數是否必定為1個的語法,為圖65所示的single_brick_per_slice_flag等。表示切片模式之相關資訊的語法,為例如圖65所示的rect_slice_flag等。切片模式的相關資訊是表示對象之圖片中的切片之設定方法為矩形切片模式或逐線掃描切片模式。
再者,編碼裝置100亦可省略切片模式的相關資訊(不包含於PPS),並且省略通知。解碼裝置200在切片模式的相關資訊沒有被通知的情況下,亦可使切片模式的相關資訊總是為1,且視作對象之圖片中的切片之設定方法為矩形切片模式。
又,亦可只有在對象之圖片中的切片之設定方法為矩形切片模式時,編碼裝置100才將表示是否允許以磚來分割圖片內之圖塊的資訊當作磚的分割相關資訊來包含於PPS以進行通知。換言之,在對象之圖片中的切片之設定方法不是矩形切片(是逐線掃描切片模式時,編碼裝置100亦可省略表示是否允許以磚來分割圖片內之圖塊的資訊(不包含於PPS),並且省略通知。再者,在對象之圖片中的切片之設定方法不是矩形切片時,編碼裝置100亦可將表示不允許磚分割的資訊包含於PPS。藉此,於解碼裝置200,能夠以不允許磚分割的方式來進行解碼處理。也就是說,解碼裝置200設定成不允許磚分割的磚分割動作,且進行解碼處理。
在本態樣中,作為磚的分割相關資訊,有表示是否允許以磚來分割圖片內之圖塊的資訊、及表示如何以磚來分割各圖塊的資訊。在圖65所示之例中,表示是否允許以磚來分割圖片內之圖塊的語法為brick_splitting_present_flag等。表示如何以磚來分割各圖塊的資訊例如有:各圖塊有無分割及分割尺寸等之各圖塊的磚分割方法。
再者,如上述,亦可只有在矩形切片模式時,編碼裝置100才將表示是否允許以磚來分割圖片內之圖塊的資訊包含於PPS來進行通知,在逐線掃描模式時則省略(不包含於PPS)而不通知。在表示是否允許以磚來分割圖片內之圖塊的資訊沒有被通知的情況下,解碼裝置200亦可使該資訊一直為0,且視作圖片內沒有以磚來分割的圖塊。
像這樣,在本態樣中,編碼裝置100在將編碼對象之圖片分割成2個以上的圖塊並編碼該圖片之際,是對由已分割之圖塊的一部分或1個以上的圖塊所構成的每個切片進行編碼,並且將用以特定出該切片是否為矩形形狀之表示切片模式的資訊包含於標頭資訊。又,編碼裝置100在對矩形形狀的每個切片進行編碼而藉此編碼該圖片之際,亦可將表示矩形形狀切片模式的資訊、及構成矩形形狀的切片之圖塊的一部分或1個以上的圖塊之設定方法的相關資訊,當作切片模式來包含於標頭資訊。又,編碼裝置100在對矩形形狀的每個切片進行編碼而藉此編碼該圖片之際,亦可將表示矩形形狀切片模式的資訊、允許已分割之圖塊進一步被分割成複數個矩形區域的資訊、及構成矩形形狀的切片之圖塊的一部分或1個以上的圖塊之設定方法的相關資訊,當作切片模式來包含於標頭資訊,且圖塊的一部分是由1個以上的矩形區域所構成。又,編碼裝置100在以逐線順序來掃描已分割之2個以上的圖塊而將之統整成切片,並對已統整的每個切片進行編碼而藉此編碼該圖片之際,亦可將表示對已統整的每個切片進行編碼之切片模式的資訊包含於標頭資訊。
圖66是顯示實施形態1的第6態樣之解碼裝置200在進行磚資料的解碼處理之際的磚設定處理之一例的流程圖。在圖66中,解碼裝置200是進行如下的處理來作為磚設定處理:一邊參考PPS所通知的切片或圖塊之設定方法的相關資訊、或磚之設定方法的相關資訊,一邊特定出各磚所包含的矩形區域。
首先,解碼裝置200取得位元串流的圖片參數集(PPS),並解析已取得的PPS(S81)。
其次,解碼裝置200確認解碼對象之圖片的切片模式(S82)。在本態樣中,解碼裝置200會解析PPS並確認切片模式的相關資訊。解碼裝置200可藉由解析例如包含於PPS之rect_slice_flag等的語法,來確認解碼對象之圖片的切片模式為矩形切片模式或逐線掃描切片模式。
於步驟S82,當解碼對象之圖片的切片模式為逐線掃描切片模式時(步驟S82的逐線掃描),解碼裝置200將全部的圖塊設定成無磚分割(1圖塊=1磚)(S83)。
另一方面,於步驟S82,當解碼對象之圖片的切片模式為矩形切片模式時(步驟S82的矩形),解碼裝置200確認是否允許以磚來分割圖片內的圖塊(S84)。在本態樣中,解碼裝置200可藉由解析包含於PPS之brick_splitting_present_flag等的語法,來確認是否允許以磚來分割圖片內的圖塊。
於步驟S84,當不允許以磚來分割圖片內的圖塊時(步驟S84的不允許),前進到步驟S83,解碼裝置200將全部的圖塊設定成無磚分割(1圖塊=1磚)。在本態樣中,解碼裝置200會解析PPS,且在包含於PPS之brick_splitting_present_flag等的語法為0的情況下,解釋為不允許以磚來分割圖片內的圖塊,並將全部的圖塊設定成無磚分割(1圖塊=1磚)。
另一方面,於步驟S84,當允許以磚來分割圖片內的圖塊時(步驟S84的允許),解碼裝置200因應於圖片內的圖塊數的相關資訊,來設定迴圈處理的次數(迴圈次數)(S85)。在本態樣中,解碼裝置200會解析PPS,且在包含於PPS之brick_splitting_present_flag等的語法為1的情況下,解釋為允許以磚來分割圖片內的圖塊。接著,解碼裝置200因應於例如水平方向的圖塊分割數與垂直方向的圖塊分割數之積等的圖片內之圖塊數的相關資訊來設定迴圈次數,並執行迴圈處理。
其次,在迴圈處理中,解碼裝置200因應於磚的分割相關資訊來設定各圖塊的磚分割方法(S86)。在本態樣中,解碼裝置200會設定例如各圖塊有無分割及分割尺寸等之各圖塊的磚分割方法。
[第6態樣的效果] 根據第6態樣,編碼裝置100可使磚之設定方法的相關資訊的一部分不包含於圖片參數集而省略,因此有可能可以刪減編碼量。
[與其他態樣的組合] 再者,本態樣亦可與本揭示中之其他態樣的至少一部分組合並實施。又,本態樣之流程圖中記載的一部分處理、本態樣之裝置的一部分構成、本態樣之語法的一部分等亦可與其他態樣組合並實施。
又,解碼裝置200中之磚設定處理,在編碼裝置100的磚設定處理中也可同樣地實施。
又,本態樣中記載的構成要素不一定全部需要,亦可僅具備本態樣之構成要素的一部分。
[編碼裝置的安裝例] 圖67是顯示實施形態1之編碼裝置100的安裝例的方塊圖。編碼裝置100具備電路160及記憶體162。例如,圖1所示之編碼裝置100的複數個構成要素,是藉由圖67所示之電路160及記憶體162來安裝。
電路160是進行資訊處理的電路,且是可對記憶體162進行存取的電路。例如,電路160是將動態圖像編碼之專用或通用的電子電路。電路160亦可為如CPU之處理器。又,電路160亦可為複數個電子電路的集合體。又,例如,電路160亦可發揮圖1等所示之編碼裝置100的複數個構成要素中,用以記憶資訊的構成要素以外的複數個構成要素的功能。
記憶體162是記憶有電路160用來將動態圖像編碼的資訊之專用或通用的記憶體。記憶體162可為電子電路,亦可連接於電路160。又,記憶體162亦可包含於電路160。又,記憶體162亦可為複數個電子電路的集合體。又,記憶體162可為磁碟或光碟等,亦可呈現為儲存裝置或記錄媒體等。又,記憶體162可為非揮發性記憶體,亦可為揮發性記憶體。
例如,記憶體162可記憶要編碼的動態圖像,亦可記憶對應於已編碼之動態圖像的位元列。又,記憶體162亦可記憶電路160用來將動態圖像編碼的程式。
又,例如,記憶體162亦可發揮圖1等所示之編碼裝置100的複數個構成要素中,用來記憶資訊之構成要素的功能。具體而言,記憶體162亦可發揮圖1所示之區塊記憶體118及幀記憶體122的功能。更具體而言,記憶體162亦可記憶重構完畢區塊及重構完畢圖片等。
再者,在編碼裝置100中,可不安裝圖1等所示之複數個構成要素的全部,亦可不進行上述之複數個處理的全部。圖1等所示之複數個構成要素的一部分亦可包含於其他裝置,上述之複數個處理的一部分亦可藉其他裝置來執行。且,藉由在編碼裝置100中安裝圖1等所示之複數個構成要素中的一部分,並且進行上述之複數個處理的一部分,可有效率地進行幀間預測模式中的預測處理。
以下,顯示圖67所示之編碼裝置100的動作例。圖68是顯示圖67所示之編碼裝置100的動作例的流程圖。例如,圖67所示之編碼裝置100在編碼動態圖像之際,會進行圖68所示之動作。
具體而言,編碼裝置100的電路160在動作中是進行以下的處理。亦即,首先,電路160將編碼對象之圖片分割成2個以上的圖塊(S311)。其次,電路160對由已在步驟S311中分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行編碼,藉此編碼圖片,電路160在編碼圖片之際,不會將位於前述圖片之右下角的切片所占的區域之相關資訊包含於標頭資訊(S312)。再者,電路160在編碼圖片之際,會將其他區域的相關資訊包含於標頭資訊。又,已在步驟S311中分割之圖塊的一部分,意指包含於已分割之2個以上的圖塊之圖塊的一部分。
藉此,編碼裝置100可使切片之設定方法的相關資訊的一部分不包含於圖片參數集而省略,因此有可能可以刪減編碼量。
[解碼裝置的安裝例] 圖69是顯示實施形態1之解碼裝置200的安裝例的方塊圖。解碼裝置200具備電路260及記憶體262。例如,圖41所示之解碼裝置200的複數個構成要素,是藉由圖69所示之電路260及記憶體262來安裝。
電路260是進行資訊處理的電路,且是可對記憶體262進行存取的電路。例如,電路260是將動態圖像解碼之專用或通用的電子電路。電路260亦可為如CPU之處理器。又,電路260亦可為複數個電子電路的集合體。又,例如,電路260亦可發揮圖41等所示之解碼裝置200的複數個構成要素中,用以記憶資訊的構成要素以外的複數個構成要素的功能。
記憶體262是記憶有電路260用來將動態圖像解碼的資訊之專用或通用的記憶體。記憶體262可為電子電路,亦可連接於電路260。又,記憶體262亦可包含於電路260。又,記憶體262亦可為複數個電子電路的集合體。又,記憶體262可為磁碟或光碟等,亦可呈現為儲存裝置或記錄媒體等。又,記憶體262可為非揮發性記憶體,亦可為揮發性記憶體。
例如,記憶體262可記憶對應於已編碼之動態圖像的位元列,亦可記憶對應於已解碼之位元列的動態圖像。又,記憶體262亦可記憶電路260用來將動態圖像解碼的程式。
又,例如,記憶體262亦可發揮圖41等所示之解碼裝置200的複數個構成要素中,用來記憶資訊之構成要素的功能。具體而言,記憶體262亦可發揮圖41所示之區塊記憶體210及幀記憶體214的功能。更具體而言,記憶體262亦可記憶重構完畢區塊及重構完畢圖片等。
再者,在解碼裝置200中,可不安裝圖41等所示之複數個構成要素的全部,亦可不進行上述之複數個處理的全部。圖41等所示之複數個構成要素的一部分亦可包含於其他裝置,上述之複數個處理的一部分亦可藉其他裝置來執行。且,藉由在解碼裝置200中安裝圖41等所示之複數個構成要素中的一部分,並且進行上述之複數個處理的一部分,可有效率地進行移動補償。
以下,顯示圖69所示之解碼裝置200的動作例。圖70是顯示圖69所示之解碼裝置200的動作例的流程圖。例如,圖69所示之解碼裝置200在解碼動態圖像之際,會進行圖70所示之動作。
具體而言,解碼裝置200的電路260在動作中是進行以下的處理。亦即,首先,電路260將解碼對象之圖片分割成2個以上的圖塊(S411)。其次,電路260對由已在步驟S411中分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行解碼,藉此解碼該圖片,電路260在解碼該圖片之際,會以不使用標頭資訊之預定的方法,來設定位於該圖片之右下角的切片所占的區域之相關資訊,該區域的相關資訊不包含於標頭資訊(S412)。再者,在電路260編碼圖片之際,標頭資訊中包含有其他區域的相關資訊。
像這樣,即使切片之設定方法的相關資訊的一部分不包含於圖片參數集,解碼裝置200仍可以進行解碼處理。故,解碼裝置200有可能可以刪減要取得的位元串流的編碼量。
[補充] 又,本實施形態中之編碼裝置100及解碼裝置200分別可作為圖像編碼裝置及圖像解碼裝置來利用,亦可作為動態圖像編碼裝置及動態圖像解碼裝置來利用。
又,在本實施形態中,各構成要素亦可由專用的硬體構成,或藉由執行適合各構成要素的軟體程式來實現。亦可藉由使CPU或處理器等程式執行部讀出並執行記錄於硬碟或半導體記憶體等記錄媒體的軟體程式,來實現各構成要素。
具體而言,編碼裝置100及解碼裝置200亦可各自具備有處理電路(Processing Circuitry)、及電連接於該處理電路之可從該處理電路進行存取的記憶裝置(Storage)。例如,處理電路對應於電路160或260,記憶裝置對應於記憶體162或262。
處理電路包含專用的硬體及程式執行部之至少一者,且使用記憶裝置來執行處理。又,記憶裝置在處理電路包含有程式執行部的情況下,會記憶藉由該程式執行部執行的軟體程式。
在此,實現本實施形態之編碼裝置100或解碼裝置200等的軟體是如下的程式。
亦即,該程式亦可使電腦執行一種編碼方法,前述編碼方法是編碼動態圖像的編碼方法,將編碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行編碼,藉此來編碼圖片,在編碼圖片之際,不會將位於圖片之右下角的切片所占的區域之相關資訊包含於標頭資訊。
或,該程式亦可使電腦執行一種解碼方法,前述解碼方法是解碼動態圖像的解碼方法,將解碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行解碼,藉此來解碼圖片,在解碼該圖片之際,會以不使用標頭資訊之預定的方法,來設定位於前述圖片之右下角的切片所占的區域之相關資訊,該區域的相關資訊不包含於標頭資訊。
又,各構成要素亦可如上述為電路。該等電路可整體構成為1個電路,亦可各自為個別的電路。又,各構成要素可以通用的處理器來實現,亦可以專用的處理器來實現。
又,亦可由別的構成要素來執行特定之構成要素所執行的處理。又,可變更執行處理的順序,亦可並行地執行複數個處理。又,編碼解碼裝置亦可具備編碼裝置100及解碼裝置200。
亦可適宜地更換說明中所使用的第1及第2等序數。又,對構成要素等,可重新給予序數,亦可去除序數。
以上,雖已根據實施形態來說明編碼裝置100及解碼裝置200的態樣,但編碼裝置100及解碼裝置200的態樣並非限定於本實施形態。只要不脫離本揭示之宗旨,將本發明技術領域中具有通常知識者想得到的各種變形施加於本實施形態者、或組合不同實施形態中的構成要素來建構的形態,均可包含於編碼裝置100及解碼裝置200的態樣的範圍內。
亦可將在此揭示的1個以上的態樣與本揭示中之其他態樣的至少一部分組合並實施。又,亦可將在此揭示的1個以上的態樣之流程圖所記載的一部分處理、裝置的一部分構成、語法的一部分等與其他態樣組合並實施。
(實施形態2) 於以上之各實施形態,各個功能性或作用性的方塊通常可藉由MPU(micro processing unit:微處理單元)及記憶體等來實現。又,各個功能方塊所進行的處理,亦可以讀出並執行記錄於ROM等記錄媒體的軟體(程式)之處理器等程式執行部來實現。該軟體亦可分發。該軟體亦可記錄於半導體記憶體等各式各樣的記錄媒體。再者,也可藉由硬體(專用電路)來實現各功能方塊。可採用硬體及軟體之各式各樣的組合。
於各實施形態所說明的處理,可藉由使用單一的裝置(系統)進行集中處理來實現,或,亦可藉由使用複數個裝置進行分散處理來實現。又,執行上述程式的處理器為單數個或複數個均可。亦即,進行集中處理或進行分散處理均可。
本揭示的態樣不限定於以上的實施例,可進行各種變更,該等變更亦包含在本揭示的態樣的範圍內。
進一步在此說明上述各實施形態所示之動態圖像編碼方法(圖像編碼方法)或動態圖像解碼方法(圖像解碼方法)的應用例、及實施該應用例的各種系統。這種系統的特徵亦可在於具有使用圖像編碼方法的圖像編碼裝置、使用圖像解碼方法的圖像解碼裝置、或具備雙方的圖像編碼解碼裝置。針對這種系統的其他構成,可因應情況適當地變更。
[使用例] 圖71是顯示實現內容(contents)發布服務之適當的內容供給系統ex100之整體構成的圖。將通訊服務之提供區域(area)分割成期望的大小,並於各細胞(cell)內分別設置圖示例中的固定無線台即基地台ex106、ex107、ex108、ex109、ex110。
在此內容供給系統ex100中,電腦ex111、遊戲機ex112、相機ex113、家電ex114及智慧型手機ex115等各機器是透過網際網路服務提供者ex102或通訊網ex104、及基地台ex106~ex110而連接到網際網路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 Handy-phone System:個人手持電話系統)等。
家電ex114為冰箱或家庭用燃料電池汽電共生系統所包含的機器等。
在內容供給系統ex100中,具有攝影功能的終端可透過基地台ex106等而連接於串流伺服器ex103,藉此實現實況發布等。在實況發布中,終端(電腦ex111、遊戲機ex112、相機ex113、家電ex114、智慧型手機ex115及飛機ex117內的終端等)可對使用者使用該終端所拍攝的靜止圖或動態圖內容,進行上述各實施形態所說明的編碼處理,亦可將藉由編碼所獲得的影像資料、及對應於影像的聲音被編碼後的聲音資料進行多工,亦可將獲得的資料發送至串流伺服器ex103。亦即,各終端是作為本揭示之一態樣的圖像編碼裝置來發揮功能。
另一方面,串流伺服器ex103將發送給有要求的客戶端的內容資料進行串流發布。客戶端為可將上述編碼處理後的資料解碼的電腦ex111、遊戲機ex112、相機ex113、家電ex114、智慧型手機ex115、或飛機ex117內的終端等。接收到已發布之資料的各機器亦可將接收到的資料進行解碼處理並播放。亦即,各機器亦可作為本揭示之一態樣的圖像解碼裝置來發揮功能。
[分散處理] 又,串流伺服器ex103亦可為複數台伺服器或複數台電腦,且將資料分散處理、記錄、發布。例如,亦可藉由CDN(Contents Delivery Network:內容傳遞網路)來實現串流伺服器ex103,藉由將分散在全世界的眾多邊緣伺服器彼此之間加以連繫的網際網路來實現內容發布。在CDN中,可因應於客戶端而動態地分配物理上較接近的邊緣伺服器。且,藉由在該邊緣伺服器快取及發布內容,可減少延遲。又,在發生多種類型的錯誤時或通訊狀態因流量增加等而改變時,由於能以複數台邊緣伺服器來分散處理、或將發布主體切換成其他邊緣伺服器、或繞過發生障礙的網路部分來持續發布,因此可實現高速且穩定的發布。
又,不僅止於發布本身的分散處理,已拍攝之資料的編碼處理亦可在各終端進行,亦可在伺服器側進行,亦可互相分擔進行。舉一例而言,一般在編碼處理中是進行2次處理迴路。在第1次的迴路中,檢測出以幀或場景為單位的圖像之複雜度或編碼量。又,在第2次的迴路中,進行維持畫質並且提升編碼效率的處理。例如,終端進行第1次的編碼處理,收到內容的伺服器側進行第2次的編碼處理,藉此可減少在各終端的處理負載,並且可提升內容的品質及效率。此情況下,若有幾乎即時接收並解碼的要求,亦可由其他終端接收並播放終端進行過的第一次的編碼完畢資料,因此更靈活的即時發布也是可能的。
舉其他例而言,相機ex113等從圖像擷取特徵量(特徵或特性的量),將有關特徵量的資料壓縮成元資料(metadata)並發送至伺服器。伺服器例如從特徵量來判斷目標(object)的重要性並切換量化精度等,因應圖像的意義(或內容的重要性)來進行壓縮。特徵量資料對於在伺服器再度壓縮時的移動向量預測之精度及效率提升尤其有效。又,亦可在終端進行VLC(可變長度編碼)等簡易的編碼,在伺服器進行CABAC(前文參考之適應性二值算術編碼方式)等處理負載大的編碼。
進一步舉其他例而言,在體育場、購物中心或工廠等,有時會有藉由複數個終端拍攝幾乎相同的場景而存在複數個影像資料的情況。此情況下,是使用進行攝影的複數個終端、因應需要而未拍攝的其他終端及伺服器,以例如GOP(Group of Picture:圖片群組)單位、圖片單位或圖片分割後的圖塊單位等,將編碼處理各自分配來進行分散處理。藉此,可減少延遲,更實現即時性。
由於複數個影像資料是幾乎相同的場景,因此亦可由伺服器來管理及/或指示互相參考各終端所拍攝的影像資料。又,亦可讓伺服器接收來自各終端的編碼完畢資料,在複數個資料間變更參考關係或修正、替換圖片本身後,再重新編碼。藉此,可生成提高一個個資料的品質及效率的串流。
進而,伺服器亦可在進行變更影像資料的編碼方式之轉碼(transcode)後,再發布影像資料。例如,伺服器可將MPEG系統的編碼方式轉換成VP系統(例如VP9),亦可將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值,並生成目標以外的部分皆設為背景色的資料。預定之值的RGB值亦可事先決定。
同樣地,已發布之資料的解碼處理可在客戶端(例如終端)進行,亦可在伺服器側進行,亦可互相分擔進行。舉一例而言,亦可是某終端先對伺服器送出接收要求,再由其他終端接收因應於其要求的內容並進行解碼處理,且對具有顯示器的裝置發送解碼完畢的訊號。藉由不依賴可通訊的終端本身的性能而是將處理分散並選擇適當的內容,可播放畫質佳的資料。又,舉其他例而言,亦可由電視等接收大尺寸的圖像資料,並且在鑑賞者的個人終端將圖片經分割後的圖塊等一部分區域解碼顯示。藉此,可共享整體圖像,並且可在手邊確認自己的負責領域或想更詳細確認的區域。
在屋內外之近距離、中距離或長距離的無線通訊可使用複數個的狀況下,利用MPEG-DASH等發布系統規格無縫地(seamless)接收內容也許是可能的。使用者亦可一邊自由地選擇使用者的終端、配置於屋內外的顯示器等解碼裝置或顯示裝置,一邊即時地切換。又,可使用自身的位置資訊等,一邊切換要解碼的終端及要顯示的終端一邊進行解碼。藉此,在使用者往目的地移動的期間,變得可在內嵌有可顯示的組件之一旁的建築物之壁面或地面的一部分映射及顯示資訊。又,亦可根據在網路上之對編碼資料的存取容易性,來切換接收資料的位元率(bit rate),前述對編碼資料的存取容易性是指編碼資料被快取到可在短時間內從接收終端存取的伺服器、或被複製到內容傳遞服務(Contents Delivery Service)中的邊緣伺服器等。
[可適性編碼] 關於內容之切換,使用圖72所示之應用上述各實施形態所示的動態圖像編碼方法而進行壓縮編碼的可適性串流來加以說明。伺服器若具有複數個內容相同、質不同的串流來作為個別串流雖然無妨,但亦可如圖示般構成為分層進行編碼,藉此實現時間的/空間的可適性串流,並活用該可適性串流的特徵來切換內容。也就是說,解碼側因應於性能這種內在要因與通訊頻帶狀態等之外在要因,來決定解碼哪個層,藉此,解碼側可自由地切換低解析度的內容與高解析度的內容並解碼。例如,使用者在移動中以智慧型手機ex115收看的影像之後續,例如回家後想在網際網路電視等機器上收看時,該機器只要將相同的串流解碼到不同的層即可,因此可減輕伺服器側的負擔。
進而,如上述,除了依每層將圖片編碼且以基本層的上位之增強層來實現可適性(scalability)的構成以外,增強層亦可包含有以圖像之統計資訊等為基準的元資訊。解碼側亦可根據元資訊來將基本層的圖片進行超解析,藉此生成高畫質化的內容。超解析亦可為維持及/或擴大解析度,並提升SN比。元資訊包含有用以特定出類似超解析處理中使用的線性或非線性濾波係數的資訊,或特定出超解析處理中使用的濾波處理、機械學習、或最小平方運算中之參數值的資訊等。
或,亦可提供因應於圖像內的目標等的意義來將圖片分割成圖塊等之構成。解碼側藉由選擇要解碼的圖塊來解碼僅一部分的區域。進而,藉由將目標的屬性(人物、車輛、球等)及影像內的位置(同一圖像中之座標位置等)儲存成元資訊,解碼側可根據元資訊特定出期望的目標的位置,且決定包含有該目標的圖塊。例如,如圖73所示,亦可使用HEVC中之SEI(supplemental enhancement information:補充增強資訊)訊息等與像素資料不同的資料儲存構造來儲存元資訊。此元資訊用來表示例如主目標的位置、尺寸或色彩等。
亦可以串流、序列或隨機存取單位等由複數個圖片所構成的單位來儲存元資訊。解碼側可取得特定人物出現在影像內的時刻等,藉由對照圖片單位的資訊與時間資訊,可特定出目標存在的圖片,且可決定目標在圖片內的位置。
[網頁最佳化] 圖74是顯示電腦ex111等中之網頁的顯示畫面例的圖。圖75是顯示智慧型手機ex115等中之網頁的顯示畫面例的圖。如圖74及圖75所示,網頁有時包含有複數個連結至圖像內容的連結(link)圖像,依瀏覽的組件,其觀看方式亦會不同。當畫面上可看到複數個連結圖像時,直到使用者明確地選擇連結圖像為止,或直到連結圖像靠近畫面中央附近或連結圖像整體進入畫面內為止,顯示裝置(解碼裝置)可顯示各內容所具有的靜止圖或I圖片來作為連結圖像,亦可以複數個靜止圖或I圖片等來顯示像gif動畫一樣的影像,亦可僅接收基本層並解碼及顯示影像。
在由使用者選擇了連結圖像時,顯示裝置例如將基本層設為最優先同時進行解碼。再者,當構成網頁的HTML中有表示其為可適性內容的資訊時,顯示裝置亦可解碼至增強層。進而,為了保證即時性,在被選擇前或通訊頻帶非常吃緊時,顯示裝置僅解碼及顯示參考前方的圖片(I圖片、P圖片、僅參考前方的B圖片),藉此,可減低開頭圖片的解碼時刻與顯示時刻之間的延遲(從內容之解碼開始到顯示開始為止的延遲)。又進而,顯示裝置亦可刻意忽視圖片的參考關係,令全部的B圖片及P圖片參考前方並粗略地解碼,隨著時間經過且接收到的圖片增加,再進行正常的解碼。
[自動行駛] 又,為了車輛之自動行駛或支援行駛而發送、接收類似2維或3維的地圖資訊等靜止圖或影像資料時,接收終端除了接收屬於1個以上的層之圖像資料,亦可接收天氣或施工資訊等來作為元資訊,並使該等相對應來予以解碼。再者,元資訊可屬於層,亦可單純與圖像資料進行多工。
在此情況下,由於包含有接收終端的車輛、無人機(drone)或飛機等會移動,因此接收終端藉由發送該接收終端的位置資訊,可一邊切換基地台ex106~ex110一邊實現無縫的接收及解碼之執行。又,接收終端可因應使用者的選擇、使用者的狀況及/或通訊頻帶的狀態,來動態地切換元資訊要接收到何種程度、或地圖資訊要逐漸更新到何種程度。
在內容供給系統ex100中,客戶端可即時地接收使用者所發送之已編碼的資訊來解碼並播放。
[個人內容的發布] 又,在內容供給系統ex100中,不僅是來自影像發布業者之高畫質且長時間的內容,來自個人之低畫質且短時間的內容亦可進行單播或多播發布。可想成這樣的個人內容今後也會逐漸增加。為了將個人內容做成更優良的內容,伺服器亦可進行編輯處理後再進行編碼處理。此可使用例如以下構成來實現。
在攝影時即時或累積到攝影後,伺服器從原圖資料或編碼完畢資料進行攝影錯誤、場景估測、意義分析及目標檢測等辨識處理。接著,伺服器根據辨識結果,手動或自動地進行以下編輯:修正模糊或手震等、刪除亮度比其他圖片低或焦點未對準的場景等重要性低的場景、強調目標的邊緣、變化色調等。伺服器根據編輯結果來編碼編輯後的資料。又,已知若攝影時刻過長收視率會下降,伺服器亦可如上述般,除了重要性低的場景,還將動態較少的場景等根據圖像處理結果自動地剪輯,以因應攝影時間而成為特定的時間範圍內的內容。或,伺服器亦可根據場景的意義分析的結果來生成摘要(digest)並編碼。
個人內容有直接播送會拍到侵害著作權、著作人格權或肖像權等物的案例,也有共享的範圍超過了意圖的範圍等對個人而言較不便的情況。所以,伺服器例如亦可將畫面周邊部的人臉或家中等刻意變更成焦點不對準的圖像再編碼。進而,伺服器亦可辨識編碼對象圖像內是否顯現與事先登錄的人物不同的人物的臉,並在顯現的情況下,進行對臉的部分加上馬賽克等的處理。或,使用者亦可基於著作權等的觀點,指定圖像中想加工的人物或背景區域,來作為編碼的前處理或後處理。伺服器亦可進行將指定的區域置換成別的影像或模糊焦點等處理。若是人物,則可在動態圖像中追蹤人物並置換人物的臉的部分的影像。
資料量較小的個人內容之收看由於非常要求即時性,因此雖然視頻帶寬而定,但解碼裝置首先亦可最優先接收基本層,進行解碼及播放。解碼裝置亦可在此期間中接收增強層,且於循環播放等播放2次以上的情況下,包含增強層在內播放高畫質的影像。只要是像這樣進行可適性編碼的串流,便可提供如下體驗:在未選擇時或剛開始觀看的階段雖然是粗略的動態圖,但串流慢慢地智慧化(smart)且圖像受到改善。除了可適性編碼以外,將第1次播放的粗略串流與參考第1次動態圖來編碼的第2次串流構成為1個串流,亦可提供相同的體驗。
[其他實施應用例] 又,該等編碼或解碼處理一般而言是在各終端所具有的LSIex500中處理。LSI(large scale integration circuitry:大型積體電路)ex500(參考圖71)是單晶片或由複數個晶片組成的構成均可。再者,亦可將動態圖像編碼或解碼用的軟體裝入能以電腦ex111等讀取的某種記錄媒體(CD-ROM、軟性磁碟或硬碟等),並使用該軟體進行編碼或解碼處理。進而,在智慧型手機ex115附帶相機的情況下,亦可發送以該相機取得的動態圖資料。此時的動態圖資料亦可為在智慧型手機ex115所具有的LSIex500中進行過編碼處理的資料。
再者,LSIex500亦可為下載應用軟體並啟用(activate)的構成。此情況下,終端首先判定該終端是否對應於內容的編碼方式、或是否具有特定服務的執行能力。當終端不對應於內容的編碼方式時,或不具有特定服務的執行能力時,終端亦可下載編解碼器(codec)或應用軟體,之後再取得內容及播放。
又,不限於透過網際網路ex101的內容供給系統ex100,在數位廣播用系統中,亦可裝入上述各實施形態的動態圖像編碼裝置(圖像編碼裝置)或動態圖像解碼裝置(圖像解碼裝置)之至少任一者。由於是利用衛星等讓廣播用的電波承載已將影像與聲音進行多工的多工資料來進行發送、接收,因此相對於內容供給系統ex100是容易進行單播的構成,其差異在於適合多播,但關於編碼處理及解碼處理,則可進行同樣的應用。
[硬體構成] 圖76是更詳細顯示圖71所示之智慧型手機ex115的圖。又,圖77是顯示智慧型手機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起動成可動作的狀態,並從電池組(battery pack)對各部供給電力。
智慧型手機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發送。預定的方式亦可事先決定。
在接收附加於電子郵件或聊天室的影像、或接收連結到網頁的影像時等,為了解碼透過天線ex450接收到的多工資料,多工/分離部ex453藉由分離多工資料來將多工資料分成影像資料之位元串流及聲音資料之位元串流,且透過同步匯流排ex470將編碼後的影像資料供給至影像訊號處理部ex455,並且將編碼後的聲音資料供給至聲音訊號處理部ex454。影像訊號處理部ex455藉由對應於上述各實施形態所示之動態圖像編碼方法的動態圖像解碼方法來將影像訊號解碼,並透過顯示器控制部ex459,從顯示部ex458顯示連結到的動態圖像檔案所包含的影像或靜止圖。聲音訊號處理部ex454將聲音訊號解碼,從聲音輸出部ex457輸出聲音。由於即時串流越來越普及,因此依使用者的狀況,聲音的播放也有可能不合乎社會禮儀。因此,作為初始值,僅播放影像資料而不播放聲音訊號的構成較理想,亦可只在使用者進行點擊影像資料等操作時,才同步播放聲音。
又,在此雖以智慧型手機ex115為例加以說明,但作為終端,除了具有編碼器及解碼器雙方的發送接收型終端以外,亦可想成僅具有編碼器的發送終端、及僅具有解碼器的接收終端這些其他的安裝形式。已說明在數位廣播用系統中接收或發送影像資料中多工有聲音資料之多工資料的情況。然而除了聲音資料以外,亦可將與影像相關聯的文字資料等多工於多工資料中。又,亦可接收或發送影像資料本身,而不是多工資料。
再者,雖已說明包含CPU的主控制部ex460控制編碼或解碼處理的情況,但各種終端具備GPU的情況也很多。所以,亦可為如下之構成:藉由在CPU與GPU之間共通化的記憶體、或位址受管理以便共通地使用的記憶體,來活用GPU的性能,一次性地處理廣大的區域。藉此,可縮短編碼時間,確保即時性,實現低延遲。特別是不利用CPU而利用GPU,以圖片等為單位一次性地進行移動估測、去區塊濾波、SAO(Sample Adaptive Offset:樣本適應性偏移)及轉換/量化的處理時,是有效率的。
產業上之可利用性 本揭示可利用於例如電視機、數位視訊錄影機、汽車導航、行動電話、數位相機、數位攝影機、視訊會議系統或電子鏡等。
10~23:區塊 100:編碼裝置 102:分割部 104:減算部 106:轉換部 108:量化部 110:熵編碼部 112,204:反量化部 114,206:反轉換部 116,208:加算部 118,210:區塊記憶體 120,212:迴路濾波部 122,214:幀記憶體 124,216:幀內預測部 126,218:幀間預測部 128,220:預測控制部 160,260:電路 162,262:記憶體 200:解碼裝置 202:熵解碼部 1201:邊界判定部 1202,1204,1206:開關 1203:濾波判定部 1205:濾波處理部 1207:濾波特性決定部 1208:處理判定部 a1,b1:處理器 a2,b2:記憶體 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:同步匯流排 ex500:LSI Sa_1~Sa_10,Sb_1,Sc_1a~Sc_1c,Sc_2,Sd_1a~Sd_1b,Sd_2~Sd_3,Se_1~Se_4,Sf_1~Sf_5,Sg_1~Sg_5,Sh_1~Sh_3,Si_1~Si_5,Sk_1~Sk_3,Sj_1~Sj_6,Sl_1~Sl_4,Sm_1~Sm_2,Sn_1~Sn_5,So_1~So_4,Sp_1~Sp_7,Sq_1,Sr_1,Sr_2a~Sr_2c,Ss_1~Ss_5,S10~S14,S20~S24,S30~S34,S40~S44,S51~S57,S61~S68,S71~S75,S81~S86,S311~S312,S411~S412:步驟 T:時刻
圖1是顯示實施形態之編碼裝置的功能構成的方塊圖。
圖2是顯示編碼裝置所進行之整體的編碼處理的一例的流程圖。
圖3是顯示區塊分割之一例的概念圖。
圖4A是顯示切片之構成的一例的概念圖。
圖4B是顯示圖塊之構成的一例的概念圖。
圖5A是顯示對應於各式各樣的轉換類型之轉換基底函數的表。
圖5B是顯示SVT(Spatially Varying Transform:空間變化轉換)之一例的概念圖。
圖6A是顯示在ALF(adaptive loop filter:適應性迴路濾波)使用的濾波器形狀之一例的概念圖。
圖6B是顯示在ALF使用的濾波器形狀之另外一例的概念圖。
圖6C是顯示在ALF使用的濾波器形狀之另外一例的概念圖。
圖7是顯示作為DBF(deblocking filter:解區塊濾波器)發揮功能的迴路濾波部之詳細的構成的一例的方塊圖。
圖8是顯示對區塊邊界具有對稱的濾波器特性之解區塊濾波器的例子的概念圖。
圖9是用以說明進行解區塊濾波處理之區塊邊界的概念圖。
圖10是顯示Bs值之一例的概念圖。
圖11是顯示在編碼裝置之預測處理部進行的處理之一例的流程圖。
圖12是顯示在編碼裝置之預測處理部進行的處理之其他例的流程圖。
圖13是顯示在編碼裝置之預測處理部進行的處理之其他例的流程圖。
圖14是顯示實施形態之幀內預測中的67個幀內預測模式之一例的概念圖。
圖15是顯示幀間預測的基本處理的流程之一例的流程圖。
圖16是顯示移動向量導出之一例的流程圖。
圖17是顯示移動向量導出之其他例的流程圖。
圖18是顯示移動向量導出之其他例的流程圖。
圖19是顯示一般幀間模式所進行之幀間預測的例子的流程圖。
圖20是顯示合併模式所進行之幀間預測的例子的流程圖。
圖21是用以說明合併模式所進行之移動向量導出處理之一例的概念圖。
圖22是顯示FRUC(frame rate up conversion:幀更新率提升轉換)處理之一例的流程圖。
圖23是用以說明在沿著移動軌跡的2個區塊間的樣式匹配(雙向匹配)之一例的概念圖。
圖24是用以說明在當前圖片內的模板與參考圖片內的區塊之間的樣式匹配(模板匹配)之一例的概念圖。
圖25A是用以說明以複數個鄰接區塊的移動向量為基準的子區塊單位的移動向量的導出之一例的概念圖。
圖25B是用以說明具有3個控制點之仿射模式中的子區塊單位的移動向量的導出之一例的概念圖。
圖26A是用以說明仿射合併模式的概念圖。
圖26B是用以說明具有2個控制點之仿射合併模式的概念圖。
圖26C是用以說明具有3個控制點之仿射合併模式的概念圖。
圖27是顯示仿射合併模式的處理之一例的流程圖。
圖28A是用以說明具有2個控制點之仿射幀間模式的概念圖。
圖28B是用以說明具有3個控制點之仿射幀間模式的概念圖。
圖29是顯示仿射幀間模式的處理之一例的流程圖。
圖30A是用以說明當前區塊具有3個控制點且鄰接區塊具有2個控制點之仿射幀間模式的概念圖。
圖30B是用以說明當前區塊具有2個控制點且鄰接區塊具有3個控制點之仿射幀間模式的概念圖。
圖31A是顯示包含有DMVR(decoder motion vector refinement:解碼器側移動向量細化)的合併模式的流程圖。
圖31B是用以說明DMVR處理之一例的概念圖。
圖32是顯示預測圖像的生成之一例的流程圖。
圖33是顯示預測圖像的生成之其他例的流程圖。
圖34是顯示預測圖像的生成之其他例的流程圖。
圖35是用以說明OBMC(overlapped block motion compensation:重疊區塊移動補償)處理所進行的預測圖像修正處理之一例的流程圖。
圖36是用以說明OBMC處理所進行的預測圖像修正處理之一例的概念圖。
圖37是用以說明2個三角形的預測圖像之生成的概念圖。
圖38是用以說明假設為等速直線運動的模型的概念圖。
圖39是用以說明使用了LIC(local illumination compensation:局部亮度補償)處理的亮度修正處理之預測圖像生成方法的一例的概念圖。
圖40是顯示編碼裝置之安裝例的方塊圖。
圖41是顯示實施形態之解碼裝置的功能構成的方塊圖。
圖42是顯示解碼裝置所進行之整體的解碼處理之一例的流程圖。
圖43是顯示在解碼裝置之預測處理部進行的處理之一例的流程圖。
圖44是顯示在解碼裝置之預測處理部進行的處理之其他例的流程圖。
圖45是顯示解碼裝置中之一般幀間模式所進行的幀間預測的例子的流程圖。
圖46是顯示解碼裝置之安裝例的方塊圖。
圖47A是顯示實施形態1的第1態樣之以圖塊邊界為基準來分割成1個以上的圖塊集之圖片構成的一例的圖。
圖47B是顯示實施形態1的第1態樣之以圖塊邊界為基準來分割成1個以上的圖塊集之圖片構成的一例的圖。
圖47C是顯示實施形態1的第1態樣之以圖塊邊界為基準來分割成1個以上的圖塊集之圖片構成的一例的圖。
圖47D是顯示實施形態1的第1態樣之以圖塊邊界為基準來分割成1個以上的圖塊集之圖片構成的一例的圖。
圖48A是顯示實施形態1的第1態樣之在編碼圖片之際,用來編碼構成圖片之圖塊群組的語法之一例的圖。
圖48B是顯示實施形態1的第1態樣之與圖塊群組相關的語法之一例的圖。
圖49A是顯示實施形態1的第1態樣之構成圖片的圖塊集之一例與基本編碼順序的圖。
圖49B是顯示在與圖48A相同的圖塊集之中替換圖塊群組的編碼順序之例的圖。
圖50A是顯示實施形態1的第1態樣之解碼裝置所進行的圖塊群組之解碼處理的流程圖。
圖50B是顯示實施形態1的第1態樣之解碼裝置在進行圖塊群組的解碼處理之際的錯誤檢測處理及隱藏處理之一例的流程圖。
圖51A是顯示實施形態1的第1態樣之將圖塊擷取資訊SEI編碼於圖片的後面時之一例的圖。
圖51B是顯示實施形態1的第1態樣之將圖塊擷取資訊SEI編碼於圖片的前面時之一例的圖。
圖52是顯示實施形態1的第1態樣之用以編碼圖塊擷取資訊SEI的語法之一例的圖。
圖53是顯示實施形態1的第2態樣之在編碼圖片之際,用來編碼構成圖片之圖塊的語法之一例的圖。
圖54A是顯示實施形態1的第2態樣之構成圖片的圖塊集之一例與基本編碼順序的圖。
圖54B是顯示在以與圖54A相同的圖塊群組所構成的圖塊集之中替換圖塊的編碼順序之例的圖。
圖55A是顯示實施形態1的第2態樣之解碼裝置所進行的圖塊之解碼處理的流程圖。
圖55B是顯示實施形態1的第2態樣之解碼裝置在進行圖塊的解碼處理之際的錯誤檢測處理及隱藏處理之一例的流程圖。
圖56A是顯示實施形態1的第2態樣之將圖塊擷取資訊SEI編碼於圖片的後面時之一例的圖。
圖56B是顯示實施形態1的第2態樣之將圖塊擷取資訊SEI編碼於圖片的前面時之一例的圖。
圖57是顯示實施形態1的第2態樣之用以編碼圖塊擷取資訊SEI的語法之一例的圖。
圖58A是顯示實施形態1的第3態樣之將圖片分割成矩形區域來編碼之際的圖片構成之一例的圖。
圖58B是顯示實施形態1的第3態樣之將圖片分割成矩形區域來編碼之際的圖片構成之一例的圖。
圖59是顯示實施形態1的第3態樣之在編碼圖片之際用來分割圖片並加以編碼的圖片參數集(PPS)之語法的一例的圖。
圖60是顯示實施形態1的第3態樣之解碼裝置所進行的矩形切片模式下的矩形切片設定處理之一例的流程圖。
圖61是顯示實施形態1的第4態樣之在編碼圖片之際用來分割圖片並加以編碼的圖片參數集(PPS)之語法的一例的圖。
圖62是顯示實施形態1的第4態樣之解碼裝置所進行的矩形切片模式下的矩形切片設定處理之一例的流程圖。
圖63是顯示實施形態1的第5態樣之在編碼圖片之際用來分割圖片並加以編碼的圖片參數集(PPS)之語法的一例的圖。
圖64是顯示實施形態1的第5態樣之解碼裝置在進行切片資料的解碼處理之際的切片模式設定處理之一例的流程圖。
圖65是顯示實施形態1的第6態樣之在編碼圖片之際用來分割圖片並加以編碼的圖片參數集(PPS)之語法的一例的圖。
圖66是顯示實施形態1的第6態樣之解碼裝置在進行磚資料的解碼處理之際的磚設定處理之一例的流程圖。
圖67是顯示實施形態1之編碼裝置的安裝例的方塊圖。
圖68是顯示圖67所示之編碼裝置的動作例的流程圖。
圖69是顯示實施形態1之解碼裝置的安裝例的方塊圖。
圖70是顯示圖69所示之解碼裝置的動作例的流程圖。
圖71是顯示實現內容(contents)發布服務之內容供給系統的整體構成的方塊圖。
圖72是顯示可適性(scalable)編碼時的編碼構造之一例的概念圖。
圖73是顯示可適性編碼時的編碼構造之一例的概念圖。
圖74是顯示網頁之顯示畫面例的概念圖。
圖75是顯示網頁之顯示畫面例的概念圖。
圖76是顯示智慧型手機之一例的方塊圖。
圖77是顯示智慧型手機之構成例的方塊圖。
S311~S312:步驟

Claims (7)

  1. 一種解碼裝置,是解碼動態圖像的解碼裝置,具備:電路;及連接於前述電路的記憶體,前述電路在動作中,將解碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行解碼,藉此來解碼前述圖片,在解碼前述圖片之際,不從標頭資訊讀出與位於前述圖片之右下角的切片所占的區域相關的第1資訊,而以預定的方法來設定前述第1資訊,前述第1資訊不包含於前述標頭資訊,前述第1資訊是表示前述切片之右下角的位置的資訊。
  2. 如請求項1之解碼裝置,其中前述第1資訊是以語法來表示的資訊。
  3. 如請求項1之解碼裝置,其中前述電路在前述動作中,在解碼前述圖片之際,從包含於標頭資訊之表示前述圖片的左上角之位置的資訊,解碼出位於前述圖片之開頭的切片之左上角的位置資訊。
  4. 如請求項1之解碼裝置,其中前述預定的方法是:使用包含於前述標頭資訊並且與前述第1資訊不同的第2資訊來算出前述第1資訊。
  5. 如請求項4之解碼裝置,其中前述第2資訊是包含於前述標頭資訊的圖塊索引或前述圖塊索引之差。
  6. 如請求項5之解碼裝置,其中前述圖塊索引之差是前述切片之左上角之圖塊的圖塊索引、與前述切片之右下角之圖塊的圖塊索引之差。
  7. 一種解碼方法,是解碼動態圖像的解碼方法, 其將解碼對象之圖片分割成2個以上的圖塊,並對由已分割之圖塊的一部分或1個以上的圖塊所構成之矩形形狀的每個切片進行解碼,藉此來解碼前述圖片,在解碼前述圖片之際,不從標頭資訊讀出與位於前述圖片之右下角的切片所占的區域相關的第1資訊,而以預定的方法來設定前述第1資訊,前述第1資訊不包含於前述標頭資訊,前述第1資訊是表示前述切片之右下角的位置的資訊。
TW108144786A 2018-12-07 2019-12-06 編碼裝置、解碼裝置、編碼方法及解碼方法 TWI848026B (zh)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US201862776780P 2018-12-07 2018-12-07
US201862776792P 2018-12-07 2018-12-07
US62/776,792 2018-12-07
US62/776,780 2018-12-07
US201962808540P 2019-02-21 2019-02-21
US62/808,540 2019-02-21
US201962839033P 2019-04-26 2019-04-26
US62/839,033 2019-04-26

Publications (2)

Publication Number Publication Date
TW202029764A TW202029764A (zh) 2020-08-01
TWI848026B true TWI848026B (zh) 2024-07-11

Family

ID=70973918

Family Applications (3)

Application Number Title Priority Date Filing Date
TW113124036A TWI891419B (zh) 2018-12-07 2019-12-06 編碼裝置、解碼裝置、編碼方法及解碼方法
TW114123264A TW202541499A (zh) 2018-12-07 2019-12-06 編碼裝置、解碼裝置及電腦可讀取之非暫時性媒體
TW108144786A TWI848026B (zh) 2018-12-07 2019-12-06 編碼裝置、解碼裝置、編碼方法及解碼方法

Family Applications Before (2)

Application Number Title Priority Date Filing Date
TW113124036A TWI891419B (zh) 2018-12-07 2019-12-06 編碼裝置、解碼裝置、編碼方法及解碼方法
TW114123264A TW202541499A (zh) 2018-12-07 2019-12-06 編碼裝置、解碼裝置及電腦可讀取之非暫時性媒體

Country Status (7)

Country Link
US (4) US11388429B2 (zh)
JP (3) JPWO2020116630A1 (zh)
CN (6) CN112997502B (zh)
BR (1) BR112021005443A2 (zh)
MX (6) MX2024008042A (zh)
TW (3) TWI891419B (zh)
WO (1) WO2020116630A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118118693A (zh) * 2018-11-30 2024-05-31 夏普株式会社 用于对视频数据进行解码或编码的方法和设备
WO2020124016A1 (en) * 2018-12-14 2020-06-18 Futurewei Technologies, Inc. Arbitrary and wrap-around tile grouping
GB2580326A (en) * 2018-12-28 2020-07-22 British Broadcasting Corp Video encoding and video decoding
CN119484871A (zh) * 2019-03-11 2025-02-18 交互数字Vc控股公司 用于图片和/或视频编解码的方法和装置
WO2020213963A1 (ko) 2019-04-17 2020-10-22 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치
US12192471B2 (en) * 2019-12-17 2025-01-07 Apple Inc. Method for encoding/decoding image signal, and device for same
JPWO2022064700A1 (zh) * 2020-09-28 2022-03-31
CN112572796B (zh) * 2020-12-23 2022-10-18 南京拓恒无人系统研究院有限公司 一种基于互联网水利用可多处水源取样的无人机

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130202051A1 (en) * 2012-02-02 2013-08-08 Texas Instruments Incorporated Sub-Pictures for Pixel Rate Balancing on Multi-Core Platforms
US20160255354A1 (en) * 2013-10-08 2016-09-01 Sharp Kabushiki Kaisha Image decoder, image encoder, and encoded data converter
US20170289557A1 (en) * 2012-07-02 2017-10-05 Canon Kabushiki Kaisha Method of generating media file and storage medium storing media file generation program

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102223526B (zh) * 2010-04-15 2013-09-11 华为技术有限公司 图像编解码方法及相关装置
US8891889B2 (en) * 2011-04-13 2014-11-18 Huawei Technologies Co., Ltd. Image encoding and decoding methods and related devices
US9584819B2 (en) * 2011-10-24 2017-02-28 Qualcomm Incorporated Grouping of tiles for video coding
KR102063239B1 (ko) * 2012-09-26 2020-01-07 벨로스 미디어 인터내셔널 리미티드 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
HUE071344T2 (hu) * 2012-09-26 2025-09-28 Sun Patent Trust Képkódoló számítógépes program, képvisszafejtõ számítógépes program
US9930353B2 (en) * 2013-03-29 2018-03-27 Sony Corporation Image decoding device and method
US9998739B2 (en) * 2015-03-06 2018-06-12 Qualcomm Incorporated Optimization for encoding video data using non-square partitions
US10542258B2 (en) * 2016-01-25 2020-01-21 Google Llc Tile copying for video compression
CN108510441B (zh) * 2018-03-19 2022-03-08 东南大学 一种基于交错网格的影像多分辨率显示方法
WO2020141904A1 (ko) * 2019-01-02 2020-07-09 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20200115322A (ko) * 2019-03-26 2020-10-07 인텔렉추얼디스커버리 주식회사 영상 부호화/복호화 방법 및 장치
WO2020213963A1 (ko) * 2019-04-17 2020-10-22 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130202051A1 (en) * 2012-02-02 2013-08-08 Texas Instruments Incorporated Sub-Pictures for Pixel Rate Balancing on Multi-Core Platforms
US20170289557A1 (en) * 2012-07-02 2017-10-05 Canon Kabushiki Kaisha Method of generating media file and storage medium storing media file generation program
US20160255354A1 (en) * 2013-10-08 2016-09-01 Sharp Kabushiki Kaisha Image decoder, image encoder, and encoded data converter

Also Published As

Publication number Publication date
US12149723B2 (en) 2024-11-19
TWI891419B (zh) 2025-07-21
MX2024008042A (es) 2024-07-10
CN118200563A (zh) 2024-06-14
MX2024008044A (es) 2024-07-10
CN118200566A (zh) 2024-06-14
MX2021004194A (es) 2021-05-27
TW202541499A (zh) 2025-10-16
CN118200565A (zh) 2024-06-14
US20220312025A1 (en) 2022-09-29
JP2023168625A (ja) 2023-11-24
JP7626817B2 (ja) 2025-02-04
JPWO2020116630A1 (ja) 2021-10-07
US11812045B2 (en) 2023-11-07
MX2024008040A (es) 2024-07-10
CN118200564A (zh) 2024-06-14
CN118200562A (zh) 2024-06-14
US11388429B2 (en) 2022-07-12
BR112021005443A2 (pt) 2021-06-15
CN112997502A (zh) 2021-06-18
JP2025061768A (ja) 2025-04-11
TW202441962A (zh) 2024-10-16
CN112997502B (zh) 2024-04-26
MX2024008041A (es) 2024-07-10
US20240007661A1 (en) 2024-01-04
MX2024008046A (es) 2024-07-10
US20210250598A1 (en) 2021-08-12
TW202029764A (zh) 2020-08-01
KR20210093877A (ko) 2021-07-28
US20250039421A1 (en) 2025-01-30
WO2020116630A1 (ja) 2020-06-11

Similar Documents

Publication Publication Date Title
TWI860273B (zh) 編碼裝置、解碼裝置及非暫時性電腦可讀取之媒體
TWI844624B (zh) 編碼裝置
TWI848026B (zh) 編碼裝置、解碼裝置、編碼方法及解碼方法
TW202415076A (zh) 編碼裝置、解碼裝置及位元串流
TWI840475B (zh) 編碼裝置、解碼裝置、編碼方法及解碼方法
JP7590477B2 (ja) 符号化装置及び符号化方法
TWI812414B (zh) 編碼裝置、解碼裝置及記錄媒體
JP7625537B2 (ja) 符号化装置、復号装置、符号化方法、および復号方法
TW202515188A (zh) 解碼裝置及非暫時性電腦可讀取媒體
TW202415073A (zh) 編碼裝置、解碼裝置及電腦可讀取之非暫時性媒體
WO2021261536A1 (ja) 符号化装置、復号装置、符号化方法、および復号方法
TW202446066A (zh) 編碼裝置、解碼裝置及電腦可讀取之非暫時性媒體
TW202450298A (zh) 編碼裝置及解碼裝置
JP7479436B2 (ja) 復号装置及び復号方法
TW202508287A (zh) 編碼方法、解碼方法及非暫時性電腦可讀取媒體
JP2025137543A (ja) 符号化装置、復号装置、符号化方法、復号方法及びビットストリーム生成装置
TW202441955A (zh) 編碼裝置及解碼裝置
JP7627803B2 (ja) 符号化装置、符号化方法、復号装置、および復号方法
KR102927348B1 (ko) 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
WO2021261537A1 (ja) 符号化装置、復号装置、符号化方法、および復号方法
KR20260022495A (ko) 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법