TW202431840A - 影像編碼器、影像解碼器及非暫時性電腦可讀取媒體 - Google Patents
影像編碼器、影像解碼器及非暫時性電腦可讀取媒體 Download PDFInfo
- Publication number
- TW202431840A TW202431840A TW113114621A TW113114621A TW202431840A TW 202431840 A TW202431840 A TW 202431840A TW 113114621 A TW113114621 A TW 113114621A TW 113114621 A TW113114621 A TW 113114621A TW 202431840 A TW202431840 A TW 202431840A
- Authority
- TW
- Taiwan
- Prior art keywords
- partition
- motion vector
- block
- image
- prediction
- Prior art date
Links
- 238000005192 partition Methods 0.000 claims abstract description 572
- 230000015654 memory Effects 0.000 claims abstract description 69
- 230000033001 locomotion Effects 0.000 claims description 355
- 239000013598 vector Substances 0.000 claims description 284
- 238000000034 method Methods 0.000 claims description 175
- 230000011218 segmentation Effects 0.000 claims description 96
- 230000008569 process Effects 0.000 claims description 52
- 238000000638 solvent extraction Methods 0.000 claims description 17
- 238000009499 grossing Methods 0.000 abstract description 44
- 238000012545 processing Methods 0.000 description 68
- 230000009466 transformation Effects 0.000 description 32
- 230000006870 function Effects 0.000 description 21
- 238000013139 quantization Methods 0.000 description 19
- 238000011156 evaluation Methods 0.000 description 16
- 230000005236 sound signal Effects 0.000 description 14
- 238000012937 correction Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 241000023320 Luma <angiosperm> Species 0.000 description 8
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000003702 image correction Methods 0.000 description 5
- 101100537098 Mus musculus Alyref gene Proteins 0.000 description 4
- 101150095908 apex1 gene Proteins 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000011664 signaling Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000009849 deactivation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 1
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000002269 spontaneous effect Effects 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
Images
Abstract
本發明提供一種影像編碼器,其包括電路及耦接至該電路之一記憶體。該電路在操作時沿著具有一非矩形形狀(例如,一三角形形狀)之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑化操作,該第一分割區及該第二分割區係分裂自一影像區塊。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值;使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值;對該等第一值及該等第二值加權;以及使用該等經加權第一值及該等經加權第二值對該第一分割區編碼。
Description
發明領域
本發明係關於視訊寫碼,且特定言之係關於用於執行基於一參考圖框來建置一當前區塊的一框間預測功能或基於一當前圖框中之一經編碼/經解碼參考區塊來建置一當前區塊的一框內預測功能之視訊編碼及解碼系統、組件及方法。
發明背景
隨著視訊寫碼技術自H.261及MPEG-1至H.264/AVC (進階視訊寫碼)、MPEG-LA、H.265/HEVC (高效率視訊寫碼)以及H.266/VVC (通用視訊編解碼器,Versatile Video Codec)的進步,仍然存在的不變需求係提供對視訊寫碼技術之改良及最佳化以處理各種應用中的不斷增長量之數位視訊資料。本發明係關於視訊寫碼中之其他進步、改良及最佳化,具體來說,結合框間預測功能或框內預測功能,將一影像區塊分裂成複數個分割區,該等複數個分割區至少包括具有一非矩形形狀(例如,一三角形)之一第一分割區及一第二分割區。
發明概要
根據一個態樣,提供一種影像編碼器,其包括電路及耦接至該電路之一記憶體。該電路在操作時沿著具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑化操作,該第一分割區及該第二分割區係分裂自一影像區塊。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值;使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值;對該等第一值及該等第二值加權;以及使用該等經加權第一值及該等經加權第二值對該第一分割區編碼。
本發明之實施例的一些實施可改良編碼效率、可簡單地為編碼/解碼程序、可加快編碼/解碼程序速度、可高效地選擇編碼及解碼時所使用之適當組件/操作,諸如適當濾波器、區塊大小、運動向量、參考圖像、參考區塊等。
根據說明書及圖式,所揭示實施例之其他益處及優點將變得顯而易見。該等益處及/或優點可個別地藉由說明書及圖式之各種實施例及特徵來獲得,而不需要該等各種實施例及特徵全部被提供以便獲得此等益處及/或優點中之一或多者。
應注意的是,一般或具體實施例可實施為系統、方法、積體電路、電腦程式、儲存媒體或其任何選擇性組合。
較佳實施例之詳細說明
根據一個態樣,一種影像編碼器被提供,其包括電路及耦接至該電路之一記憶體。該電路在操作時執行:將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量;以及使用該第一運動向量對該第一分割區編碼且使用該第二運動向量對該第二分割區編碼。
根據一另外態樣,該第二分割區具有一非矩形形狀。根據另一態樣,該非矩形形狀係一三角形。根據一另外態樣,該非矩形形狀係選自由一三角形、一梯形及具有至少五條邊及五個角之一多邊形組成之一群組。
根據另一態樣,該預測包括自運動向量候選項之一第一集合選擇該第一運動向量及自運動向量候選項之一第二集合選擇該第二運動向量。舉例而言,運動向量候選項之該第一集合可包括鄰近該第一分割區之分割區的運動向量,且運動向量候選項之該第二集合可包括鄰近該第二分割區之分割區的運動向量。鄰近該第一分割區之該等分割區及鄰近該第二分割區之該等分割區可在分裂出該第一分割區及該第二分割區的該影像區塊之外。該等鄰近分割區可為空間上鄰近之分割區及時間上鄰近之分割區中之一種或兩種。運動向量候選項之該第一集合可與運動向量候選項之該第二集合相同或不同。
根據另一態樣,該預測包括自運動向量候選項之一第一集合選擇一第一運動向量候選項且藉由將一第一運動向量差加至該第一運動向量候選項來導出該第一運動向量,以及自運動向量候選項之一第二集合選擇一第二運動向量候選項且藉由將一第二運動向量差加至該第二運動向量候選項來導出該第二運動向量。
根據另一態樣,一種影像編碼器被提供,其包括:一分裂器,其在操作時接收一原始圖像且將該原始圖像分裂成區塊;一加法器,其在操作時接收來自該分裂器之該等區塊及來自一預測控制器之預測,且自其對應區塊減去各預測以輸出一殘餘部分;一變換器,其在操作時對自該加法器所輸出之該等殘餘部分執行一變換以輸出變換係數;一量化器,其在操作時將該等變換係數量化以產生量化變換係數;一熵編碼器,其在操作時對該等量化變換係數編碼以產生一位元串流;以及耦接至一框間預測器、一框內預測器、及一記憶體的該預測控制器,其中該框間預測器在操作時基於在一經編碼參考圖像中之一參考區塊來產生一當前區塊之一預測且該框內預測器在操作時基於一當前圖像中之一經編碼參考區塊來產生一當前區塊之一預測。該預測控制器在操作時將該等區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量;且使用該第一運動向量對該第一分割區編碼且使用該第二運動向量對該第二分割區編碼。
根據另一態樣,一種影像編碼方法被提供,其通常包括三個步驟:將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量;以及使用該第一運動向量對該第一分割區編碼且使用該第二運動向量對該第二分割區編碼。
根據另一態樣,一種影像解碼器被提供,其包括電路及耦接至該電路之一記憶體。該電路在操作時執行:將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量;以及使用該第一運動向量將該第一分割區解碼且使用該第二運動向量將該第二分割區解碼。
根據一另外態樣,該第二分割區具有一非矩形形狀。根據另一態樣,該非矩形形狀係一三角形。根據一另外態樣,該非矩形形狀係選自由一三角形、一梯形、及具有至少五條邊及五個角之一多邊形組成之一群組。
根據另一態樣,提供一種影像解碼器,其包括:一熵解碼器,其在操作時接收且解碼一經編碼位元串流以獲得量化變換係數;一反量化器及反變換器,其在操作時對該等量化變換係數進行反量化以獲得變換係數且對該等變換係數進行反變換以獲得殘餘部分;一加法器,其在操作時將自該反量化器及反變換器所輸出的該等殘餘部分與自一預測控制器所輸出的預測相加以重建區塊;以及耦接至一框間預測器、一框內預測器、及一記憶體的該預測控制器,其中該框間預測器在操作時基於在一經解碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且該框內預測器在操作時基於在一當前圖像中之一經解碼參考區塊來產生一當前區塊之一預測。該預測控制器在操作時將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量;以及使用該第一運動向量將該第一分割區解碼且使用該第二運動向量將該第二分割區解碼。
根據另一態樣,一種影像解碼方法被提供,其通常包括三個步驟:將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量;以及使用該第一運動向量將該第一分割區解碼且使用該第二運動向量將該第二分割區解碼。
根據一個態樣,一種影像編碼器被提供,其包括電路及耦接至該電路之一記憶體。該電路在操作時沿著具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑化操作,該第一及該第二分割區係分裂自一影像區塊。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值;使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值;對該等第一值及該等第二值加權;以及使用經加權之該等第一值及經加權之該等第二值對該第一分割區編碼。
根據一另外態樣,該非矩形形狀係一三角形。根據另一態樣,該非矩形形狀係選自由一三角形、一梯形、及具有至少五條邊及五個角之一多邊形組成之一群組。根據又一態樣,該第二分割區具有一非矩形形狀。
根據另一態樣,該第一預測及該第二預測中之至少一者係基於在一經編碼參考圖像中之一參考分割區來預測該等第一值及該等第二值的一框間預測程序。該框間預測程序可預測該第一分割區的包括像素之該集合之像素的第一值且可預測僅該第一分割區之像素之該集合的該等第二值。
根據另一態樣,該第一預測及該第二預測中之至少一者係基於在一當前圖像中之一經編碼參考分割區來預測該等第一值及該等第二值的一框內預測程序。
根據另一態樣,在該第一預測中所使用之一預測方法係不同於在該第二預測中所使用之一預測方法。
根據一另外態樣,各列或各行的將進行該等第一值及該等第二值預測之像素的該集合之一數目係一整數。舉例而言,當像素的該集合之各列或各行之該數目係四時,可將權重1/8、1/4、3/4以及7/8分別應用於該集合中之該四個像素之該等第一值,且可將權重7/8、3/4、1/4以及1/8分別應用於該集合中之該四個像素之該等第二值。作為另一實例,當像素之該集合的各列或各行之該數目係二時,可將權重1/3及2/3分別應用於該集合中之該兩個像素之該等第一值,且可將權重2/3及1/3分別應用於該集合中之該兩個像素之該等第二值。
根據另一態樣,該等權重可為整數值或可為小數值。
根據另一態樣,一種影像編碼器被提供,其包括:一分裂器,其在操作時接收一原始圖像且將該原始圖像分裂成區塊;一加法器,其在操作時接收來自該分裂器之該等區塊及來自一預測控制器之預測,且自其對應區塊減去各預測以輸出一殘餘部分;一變換器,其在操作時對自該加法器所輸出之該等殘餘部分執行一變換以輸出變換係數;一量化器,其在操作時將該等變換係數量化以產生量化變換係數;一熵編碼器,其在操作時對該等量化變換係數編碼以產生一位元串流;以及耦接至一框間預測器、一框內預測器、及一記憶體的該預測控制器,其中該框間預測器在操作時基於在一經編碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且該框內預測器在操作時基於在一當前圖像中之一經編碼參考區塊來產生一當前區塊之一預測。該預測控制器在操作時沿著具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑化操作,該第一及該第二分割區係分裂自一影像區塊。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值;使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值;對該等第一值及該等第二值加權;以及使用經加權之該等第一值及經加權之該等第二值對該第一分割區編碼。
根據另一態樣,一種影像編碼方法被提供以沿著具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑化操作,該第一及該第二分割區係分裂自一影像區塊。該方法通常包括四個步驟:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值;使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值;對該等第一值及該等第二值加權;以及使用經加權之該等第一值及經加權之該等第二值對該第一分割區編碼。
根據一另外態樣,一種影像解碼器被提供,其包括電路及耦接至該電路之一記憶體。該電路在操作時沿著具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑化操作,該第一及該第二分割區係分裂自一影像區塊。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值;使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值;將該等第一值及該等第二值加權;以及使用經加權之該等第一值及經加權之該等第二值將該第一分割區解碼。
根據另一態樣,該非矩形形狀係一三角形。根據一另外態樣,該非矩形形狀係選自由一三角形、一梯形、及具有至少五條邊及五個角之一多邊形組成之一群組。根據另一態樣,該第二分割區具有一非矩形形狀。
根據另一態樣,該第一預測及該第二預測中之至少一者係基於在一經編碼參考圖像中之一參考分割區來預測該等第一值及該等第二值的一框間預測程序。該框間預測程序可預測該第一分割區的包括像素之該集合之像素的第一值且可預測僅該第一分割區之像素之該集合的該等第二值。
根據另一態樣,該第一預測及該第二預測中之至少一者係基於在一當前圖像中之一經編碼參考分割區來預測該等第一值及該等第二值的一框內預測程序。
根據另一態樣,一種影像解碼器被提供,其包括:一熵解碼器,其在操作時接收且解碼一經編碼位元串流以獲得量化變換係數;一反量化器及反變換器,其在操作時對該等量化變換係數進行反量化以獲得變換係數且對該等變換係數進行反變換以獲得殘餘部分;一加法器,其在操作時將自該反量化器及反變換器所輸出的該等殘餘部分與自一預測控制器所輸出的預測相加以重建區塊;以及耦接至一框間預測器、一框內預測器、及一記憶體的該預測控制器,其中該框間預測器在操作時基於在一經解碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且該框內預測器在操作時基於在一當前圖像中之一經解碼參考區塊來產生一當前區塊之一預測。該預測控制器在操作時沿著具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑化操作,該第一及該第二分割區係分裂自一影像區塊。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值;使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值;將該等第一值及該等第二值加權;以及使用經加權之該等第一值及經加權之該等第二值將該第一分割區解碼。
根據另一態樣,一種影像解碼方法被提供以沿著具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑化操作,該第一及該第二分割區係分裂自一影像區塊。該方法通常包括四個步驟:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值;使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值;將該等第一值及該等第二值加權;以及使用經加權之該等第一值及經加權之該等第二值將該第一分割區解碼。
根據一個態樣,一種影像編碼器被提供,其包括電路及耦接至該電路之一記憶體。該電路在操作時執行一分割語法操作,該分割語法操作包括:基於指示分裂之一分割參數而將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;編碼該第一分割區及該第二分割區;以及將包括該分割參數之一或多個參數寫入至一位元串流中。
根據一另外態樣,該分割參數指示該第一分割區具有一三角形狀。
根據另一態樣,該分割參數指示該第二分割區具有一非矩形形狀。
根據另一態樣,該分割參數指示該非矩形形狀係一三角形、一梯形、及具有至少五條邊及五個角之一多邊形中的一種。
根據另一態樣,該分割參數聯合地編碼應用於將該影像區塊分裂成該等複數個分割區的一分裂方向。舉例而言,該分裂方向可包括:自該影像區塊之一左上角至該影像區塊之一右下角,及自該影像區塊之一右上角至該影像區塊之一左下角。該分割參數可至少聯合地編碼該第一分割區之一第一運動向量。
根據另一態樣,除該分割參數以外的該一或多個參數編碼應用於將該影像區塊分裂成該等複數個分割區的一分裂方向。編碼該分裂方向之該參數可至少聯合地編碼該第一分割區之一第一運動向量。
根據另一態樣,該分割參數可至少聯合地編碼該第一分割區之一第一運動向量。該分割參數可聯合地編碼該第二分割區之一第二運動向量。
根據另一態樣,除該分割參數以外的該一或多個參數可至少編碼該第一分割區之一第一運動向量。
根據另一態樣,依據一二進位化方案將該一或多個參數二進位化,該二進位化方案係取決於該一或多個參數中之至少一者的一值而被選擇。
根據一另外態樣,一種影像編碼器被提供,其包括:一分裂器,其在操作時接收一原始圖像且將該原始圖像分裂成區塊;一加法器,其在操作時接收來自該分裂器之該等區塊及來自一預測控制器之預測,且自其對應區塊減去各預測以輸出一殘餘部分;一變換器,其在操作時對自該加法器輸出之該等殘餘部分執行一變換以輸出變換係數;一量化器,其在操作時將該等變換係數量化以產生量化變換係數;一熵編碼器,其在操作時對該等量化變換係數編碼以產生一位元串流;以及耦接至一框間預測器、一框內預測器、及一記憶體的該預測控制器,其中該框間預測器在操作時基於在一經編碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且該框內預測器在操作時基於在一當前圖像中之一經編碼參考區塊來產生一當前區塊之一預測。該預測控制器在操作時基於指示該分裂之一分割參數而將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區,且編碼該第一分割區及該第二分割區。該熵編碼器在操作時將包括該分割參數之一或多個參數寫入至一位元串流中。
根據另一態樣,一種包括一分割語法操作之影像編碼方法被提供。該方法通常包括三個步驟:基於指示分裂之一分割參數而將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;編碼該第一分割區及該第二分割區;以及將包括該分割參數之一或多個參數寫入至一位元串流中。
根據另一態樣,一種影像解碼器被提供,其包括電路及耦接至該電路之一記憶體。該電路在操作時執行一分割語法操作,該分割語法操作包括:剖析來自一位元串流之一或多個參數,其中該一或多個參數包括一分割參數,該分割參數指示將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;基於該分割參數而將該影像區塊分裂成該等複數個分割區;以及解碼該第一分割區及該第二分割區。
根據一另外態樣,該分割參數指示該第一分割區具有一三角形狀。
根據另一態樣,該分割參數指示該第二分割區具有一非矩形形狀。
根據另一態樣,該分割參數指示該非矩形形狀係一三角形、一梯形、及具有至少五條邊及五個角之一多邊形中的一種。
根據另一態樣,該分割參數聯合地編碼應用於將該影像區塊分裂成該等複數個分割區的一分裂方向。舉例而言,該分裂方向包括:自該影像區塊之一左上角至該影像區塊之一右下角,及自該影像區塊之一右上角至該影像區塊之一左下角。該分割參數可至少聯合地編碼該第一分割區之一第一運動向量。
根據另一態樣,除該分割參數以外的該一或多個參數編碼應用於將該影像區塊分裂成該等複數個分割區的一分裂方向。編碼該分裂方向之該參數可至少聯合地編碼該第一分割區之一第一運動向量。
根據另一態樣,該分割參數可至少聯合地編碼該第一分割區之一第一運動向量。該分割參數可聯合地編碼該第二分割區之一第二運動向量。
根據另一態樣,除該分割參數以外的該一或多個參數可至少編碼該第一分割區之一第一運動向量。
根據另一態樣,依據一二進位化方案將該一或多個參數二進位化,該二進位化方案係取決於該一或多個參數中之至少一者的一值而被選擇。
根據一另外態樣,一種影像解碼器被提供,其包括:一熵解碼器,其在操作時接收且解碼一經編碼位元串流以獲得量化變換係數;一反量化器及反變換器,其在操作時對該等量化變換係數進行反量化以獲得變換係數且對該等變換係數進行反變換以獲得殘餘部分;一加法器,其在操作時將自該反量化器及反變換器所輸出的該等殘餘部分與自一預測控制器所輸出的預測相加以重建區塊;以及耦接至一框間預測器、一框內預測器、及一記憶體的該預測控制器,其中該框間預測器在操作時基於在一經解碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且該框內預測器在操作時基於在一當前圖像中之一經解碼參考區塊來產生一當前區塊之一預測。該熵解碼器在操作時:剖析來自一位元串流之一或多個參數,其中該一或多個參數包括一分割參數,該分割參數指示將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;基於該分割參數而將該影像區塊分裂成該等複數個分割區;以及解碼該第一分割區及該第二分割區。
根據另一態樣,一種包括一分割語法操作之影像解碼方法被提供。該方法通常包括三個步驟:剖析來自一位元串流之一或多個參數,其中該一或多個參數包括一分割參數,該分割參數指示將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區;基於該分割參數而將該影像區塊分裂成該等複數個分割區;以及解碼該第一分割區及該第二分割區。
在圖式中,相同元件符號識別類似元件。圖式中的元件之尺寸及相對位置未必按比例繪製。
在下文中,將參看圖式來描述實施例。應注意的是,下文所描述之實施例各自展示一般或特定實例。以下實施例中所指示的數值、形狀、材料、組件、組件之配置及連接、步驟、步驟之關係及次序等僅為實例,而不欲限制申請專利範圍之範疇。因此,揭示於以下實施例中但在界定最廣發明概念之獨立技術方案中之任一者中未列舉的彼等組件可被理解為可選組件。
編碼器及解碼器之實施例將在下文被描述。該等實施例係編碼器及解碼器之實例,在本發明之態樣之描述中所呈現的程序及/或組態適用於該等實例。該等程序及/或組態亦可實施於不同於根據該等實施例之編碼器及解碼器的編碼器及解碼器中。舉例而言,關於應用於該等實施例之程序及/或組態,可實施以下情況中之任一者:
(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。替代地,編碼器100可實現為對應於以下各者之一或多個專用電子電路:分裂器102、減法器104、變換器106、量化器108、熵編碼器110、反量化器112、反變換器114、加法器116、迴路濾波器120、框內預測器124、框間預測器126、以及預測控制器128。
在下文中,將描述包括於編碼器100中之各組件。
(分裂器)
分裂器102將包括於輸入動畫中之各圖像分裂成區塊,且將各區塊輸出至減法器104。舉例而言,分裂器102首先將圖像分裂成具固定大小(例如,128×128)之區塊。固定大小區塊亦可被稱為編碼樹單元(CTU)。分裂器102接著基於例如遞迴四元樹及/或二元樹區塊分裂而將各固定大小區塊分裂成可變大小(例如,64×64或更小)之區塊。可變大小區塊亦可被稱為寫碼單元(CU)、預測單元(PU)、或變換單元(TU)。在各種實施中,可能並不需要在CU、PU與TU之間做區分;圖像中之區塊之全部或一些可按照CU、PU或TU來處理。
圖2例示根據一實施例之區塊分裂之一個實例。在圖2中,實線表示按照四元樹區塊分裂之區塊分裂的區塊邊界,且虛線表示按照二元樹區塊分裂之區塊分裂的區塊邊界。
此處,區塊10係正方形的128×128像素區塊(128×128區塊)。此128×128區塊10首先分裂成四個正方形的64×64區塊(四元樹區塊分裂)。
左上方的64×64區塊被進一步垂直分裂成兩個矩形的32×64區塊,且左邊的32×64區塊被進一步垂直分裂成兩個矩形的16×64區塊(二元樹區塊分裂)。結果,左上方的64×64區塊分裂成兩個16×64區塊11及12以及一個32×64區塊13。
右上方的64×64區塊被水平地分裂成兩個矩形的64×32區塊14及15 (二元樹區塊分裂)。
左下方的64×64首先分裂成四個正方形的32×32區塊(四元樹區塊分裂)。四個32×32區塊中之左上方區塊及右下方區塊被進一步分裂。左上方的32×32區塊被垂直分裂成兩個矩形的16×32區塊,且右邊的16×32區塊被進一步水平分裂成兩個16×16區塊(二元樹區塊分裂)。右下方的32×32區塊被水平分裂成兩個32×16區塊(二元樹區塊分裂)。結果,左下方的64×64區塊被分裂成16×32區塊16、兩個16×16區塊17及18、兩個32×32區塊19及20、以及兩個32×16區塊21及22。
右下方的64×64區塊23未分裂。
如上所述,在圖2中,區塊10基於遞迴四元樹及二元樹區塊分裂而分裂成13個可變大小區塊11至23。此分裂類型亦被稱為四元樹加二元樹(QTBT)分裂。
雖然在圖2中,一個區塊被分裂成四個或兩個區塊(四元樹或二元樹區塊分裂),但分裂不限於此等實例。舉例而言,一個區塊可被分裂成三個區塊(三元區塊分裂)。包括此三元區塊分裂之分裂亦被稱為多類型樹(multi-type tree;MBT)分裂。
(減法器)
減法器104對藉由分裂器102分裂且自分裂器102輸入的每個區塊自一原始信號(原始樣本)減去一預測信號(將在下文所描述的自預測控制器128所輸入之預測樣本)。換言之,減法器104計算要被編碼之區塊(在下文中被稱為「當前區塊」)的預測誤差(亦被稱為「殘餘部分」)。減法器104接著將經計算的預測誤差(殘餘部分)輸出至變換器106。
原始信號係輸入至編碼器100中之信號,且為表示包括於動畫中之各圖像之影像的信號(例如,明度信號及兩個色度信號)。在下文中,表示影像之信號亦被稱為樣本。
(變換器)
變換器106將空間域預測誤差變換成頻域變換係數,且將該等變換係數輸出至量化器108。更具體言之,變換器106將例如預定義的離散餘弦變換(DCT)或離散正弦變換(DST)應用於空間域預測誤差。
應注意的是,變換器106可適應地自複數個變換類型中選擇一變換類型,且藉由使用對應於所選的變換類型之變換基底函數將預測誤差變換成變換係數。此種變換亦被稱為顯式多核變換(explicit multiple core transform;EMT)或適應性多重變換(adaptive multiple transform;AMT)。
變換類型包括例如DCT-II、DCT-V、DCT-VIII、DST-I以及DST-VII。圖3係指示各變換類型之變換基底函數的圖表。在圖3中,N指示輸入像素之數目。舉例而言,自複數個變換類型當中選擇一變換類型可取決於預測類型(框內預測及框間預測)以及框內預測模式。
指示是否應用EMT或AMT之資訊(被稱為例如EMT旗標或AMT旗標)及指示所選的變換類型之資訊通常在CU層級傳訊。應注意的是,此資訊之傳訊不需要在CU層級執行,且可在另一層級(例如,在位元序列層級、圖像層級、切片(slice)層級、方塊(tile)層級或CTU層級)執行。
此外,變換器106可將二次變換應用於變換係數(變換結果)。此二次變換亦被稱為適應性二次變換(adaptive secondary transform;AST)或不可分二次變換(non-separable secondary transform;NSST)。舉例而言,變換器106將二次變換應用於包括於對應於框內預測誤差之變換係數之區塊中的各子區塊(例如,各4×4子區塊)。指示是否應用NSST之資訊及與NSST中所使用的變換矩陣相關之資訊通常在CU層級傳訊。應注意的是,此資訊之傳訊不需要在CU層級執行,且可在另一層級(例如,在序列層級、圖像層級、切片層級、方塊層級或CTU層級)執行。
單獨變換或不可分變換可被應用在變換器106中。單獨變換係藉由根據維度輸入之數目對各方向單獨地執行變換來將變換執行複數次的方法。不可分變換係執行共同變換的方法,其中多維輸入中之兩個或多於兩個維度一起被視為單一維度。
在不可分變換之一個實例中,當輸入係4×4區塊時,4×4區塊被視為包括16個成分的單一陣列,且變換將16×16變換矩陣應用於該陣列。
在不可分變換之另一實例中,在輸入4×4區塊被視為包括16個成分的單一陣列之後,執行複數個吉文斯旋轉(Givens rotation)之變換(例如,超立方體吉文斯變換)可被應用於該陣列。
(量化器)
量化器108將自變換器106輸出之變換係數量化。更具體言之,量化器108按預定掃描次序掃描當前區塊之變換係數,且基於對應於該等變換係數之量化參數(QP)來量化經掃描之變換係數。量化器108接著將當前區塊之量化變換係數(在下文中被稱為量化係數)輸出至熵編碼器110及反量化器112。
預定掃描次序係用於對變換係數進行量化/反量化之次序。舉例而言,預定掃描次序係定義為頻率之升序(自低頻率至高頻率)或頻率之降序(自高頻率至低頻率)。
量化參數(QP)係定義量化步長(量化寬度)之參數。舉例而言,若量化參數之值增大,則量化步長亦增大。換言之,若量化參數之值增大,則量化誤差增大。
(熵編碼器)
熵編碼器110基於自量化器108所輸入之量化係數來產生一經編碼信號(經編碼之位元串流)。更具體言之,例如,熵編碼器110將量化係數二進位化且對二進位信號進行算術編碼,以輸出壓縮位元串流或序列。
(反量化器)
反量化器112對自量化器108所輸入之量化係數進行反量化。更具體言之,反量化器112按預定掃描次序對當前區塊之量化係數進行反量化。反量化器112接著將當前區塊之反量化變換係數輸出至反變換器114。
(反變換器)
反變換器114藉由對自反量化器112所輸入之變換係數進行反變換來恢復預測誤差(殘餘部分)。更具體言之,反變換器114藉由對變換係數應用對應於由變換器106所應用之變換的反變換來恢復當前區塊之預測誤差。反變換器114接著將恢復的預測誤差輸出至加法器116。
應注意的是,由於資訊在量化時通常丟失,因此恢復的預測誤差並不匹配藉由減法器104所計算的預測誤差。換言之,恢復的預測誤差通常包括量化誤差。
(加法器)
加法器116藉由對自反變換器114所輸入之預測誤差及自預測控制器128所輸入之預測樣本求和來重建當前區塊。加法器116接著將重建區塊輸出至區塊記憶體118及迴路濾波器120。重建區塊亦被稱為區域解碼區塊。
(區塊記憶體)
區塊記憶體118係用於儲存在要被編碼之圖像(被稱為「當前圖像」)中之區塊以供例如在框內預測時參考的儲存器。更具體言之,區塊記憶體118儲存自加法器116所輸出之重建區塊。
(迴路濾波器)
迴路濾波器120將迴路濾波器應用於由加法器116所重建之區塊,且將經濾波的重建區塊輸出至圖框記憶體122。迴路濾波器係用於編碼迴路中之濾波器(迴路內濾波器),且包括例如解塊濾波器(DF)、取樣自適應偏移(SAO)及適應性迴路濾波器(ALF)。
在ALF中,用於移除壓縮假影之最小平方誤差濾波器被應用。舉例而言,來自複數個濾波器當中的一個濾波器基於區域梯度之方向及活動性為當前區塊中之各2×2子區塊而被選擇,且被應用。
更具體言之,首先,將各子區塊(例如,各2×2子區塊)分類成複數個類別(例如,15或25個類別)中的一個。子區塊之分類係基於梯度方向性及活動性。舉例而言,分類索引C係基於梯度方向性D (例如,0至2或0至4)及梯度活動性A (例如,0至4)而導出(例如,C = 5D + A)。接著,基於分類索引C,將各子區塊分類成複數個類別中的一個。
舉例而言,梯度方向性D係藉由比較複數個方向(例如,水平、垂直及兩個對角線方向)之梯度來計算。此外,舉例而言,梯度活動性A係藉由對複數個方向之梯度求和且將總和量化來計算。
要被使用於各子區塊之濾波器係基於此分類之結果自複數個濾波器中而判定。
要被使用於ALF中之濾波器形狀為例如圓形對稱濾波器形狀。圖4A、圖4B及圖4C例示用於ALF中之濾波器形狀之實例。圖4A例示5×5菱形形狀濾波器,圖4B例示7×7菱形形狀濾波器,且圖4C例示9×9菱形形狀濾波器。指示濾波器形狀之資訊通常在圖像層級傳訊。應注意的是,指示濾波器形狀之資訊之傳訊不需要在圖像層級執行,而可在另一層級(例如,在序列層級、切片層級、方塊層級、CTU層級或CU層級)執行。
ALF之啟用或停用可在圖像層級或CU層級被判定。舉例而言,針對明度,是否應用ALF之決策可在CU層級被完成,而針對色度,是否應用ALF之決策可在圖像層級被完成。指示ALF是否被啟用或停用之資訊通常在圖像層級或CU層級傳訊。應注意的是,指示ALF是否被啟用或停用之資訊之傳訊不需要在圖像層級或CU層級執行,且可在另一層級(例如,在序列層級、切片層級、方塊層級或CTU層級)執行。
用於複數個可選擇濾波器(例如,15或25個濾波器)之係數集合通常在圖像層級傳訊。應注意的是,係數集合之傳訊不需要在圖像層級執行,而可在另一層級(例如,在序列層級、切片層級、方塊層級、CTU層級、CU層級或子區塊層級)執行。
(圖框記憶體)
圖框記憶體122係用於儲存例如框間預測中所使用之參考圖像的儲存器,且亦被稱為圖框緩衝器。更具體言之,圖框記憶體122儲存藉由迴路濾波器120所濾波之重建區塊。
(框內預測器)
框內預測器124藉由參考在儲存於區塊記憶體118中之當前圖像中的一區塊或多個區塊來框內預測當前區塊(亦被稱為框內圖框預測)而產生預測信號(框內預測信號)。更具體言之,框內預測器124藉由參考鄰近當前區塊之一區塊或多個區塊的樣本(例如,明度值及/或色度值)進行框內預測來產生框內預測信號,且接著將該框內預測信號輸出至預測控制器128。
舉例而言,框內預測器124藉由使用來自複數個預定義框內預測模式中的一個模式來執行框內預測。該等框內預測模式通常包括一或多個非方向預測模式及複數個方向預測模式。
該一或多個非方向預測模式包括例如界定於H.265/HEVC標準中之平面預測模式及DC預測模式。
複數個方向預測模式包括例如界定於H.265/HEVC標準中的33種方向預測模式。應注意的是,除了33種方向預測模式之外,複數個方向預測模式可進一步包括32種方向預測模式(總共65種方向預測模式)。
圖5A例示用於框內預測中的總共67種框內預測模式(兩種非方向預測模式及65種方向預測模式)。實箭頭表示界定於H.265/HEVC標準中的33個方向,且虛箭頭表示額外32個方向。(兩種「非方向性」預測模式在圖5A中未例示。)
在各種實施中,可在色度區塊框內預測中參考明度區塊。亦即,可基於當前區塊之明度成分來預測當前區塊之色度成分。此框內預測亦被稱為交叉成分線性模型(cross-component linear model;CCLM)預測。參考明度區塊之色度區塊框內預測模式(被稱為例如CCLM模式)可被添加作為色度區塊框內預測模式中之一者。
框內預測器124可基於水平/垂直參考像素梯度來校正框內預測後像素值。此種校正所伴隨之框內預測亦被稱為位置相依框內預測組合(position dependent intra prediction combination;PDPC)。指示是否應用PDPC之資訊(被稱為例如PDPC旗標)通常在CU層級傳訊。應注意的是,此資訊之傳訊不需要在CU層級執行,且可在另一層級(例如,在序列層級、圖像層級、切片層級、方塊層級或CTU層級)執行。
(框間預測器)
框間預測器126藉由參考一參考圖像中之一區塊或多個區塊來框間預測當前區塊而產生預測信號(框間預測信號),該參考圖像不同於當前圖像且儲存於圖框記憶體122中(亦被稱為框間圖框預測)。對每個當前區塊或對當前區塊中之每個當前子區塊(例如,每個4×4區塊)執行框間預測。舉例而言,框間預測器126執行對用於當前區塊或當前子區塊之參考圖像的運動估計,以尋找參考圖像中最佳匹配當前區塊或子區塊之參考區塊或子區塊,以及獲得補償(或預測)自參考區塊或子區塊至當前區塊或子區塊之移動或變化的運動資訊(例如,運動向量)。框間預測器126接著基於該運動資訊來執行運動補償(或運動預測),且基於該運動資訊來產生當前區塊或子區塊之框間預測信號。框間預測器126接著將產生的框間預測信號輸出至預測控制器128。
運動補償中所使用之運動資訊可以各種形式作為框間預測信號來被傳訊。舉例而言,運動向量可被傳訊。作為另一實例,運動向量與運動向量預測器之間的差可被傳訊。
應注意的是,除了針對自運動估計所獲得的當前區塊之運動資訊之外,亦可使用鄰近區塊之運動資訊來產生框間預測信號。更具體言之,可藉由計算基於自運動估計所獲得之運動資訊的預測信號(在參考圖像中)與基於鄰近區塊之運動資訊的預測信號(在當前圖像中)的加權和來產生當前區塊中之每個子區塊的框間預測信號。此框間預測(運動補償)亦被稱為重疊區塊運動補償(OBMC)。
在OBMC模式下,指示用於OBMC之子區塊大小之資訊(被稱為例如OBMC區塊大小)可在序列層級傳訊。此外,指示是否應用OBMC模式之資訊(被稱為例如OBMC旗標)可在CU層級傳訊。應注意的是,此資訊之傳訊不需要在序列層級及CU層級執行,而可在另一層級(例如,在圖像層級、切片層級、方塊層級、CTU層級或子區塊層級)執行。
在下文中,將更詳細地描述OBMC模式。圖5B係流程圖且圖5C係例示藉由OBMC處理所執行之預測影像校正程序的概念圖。
參看圖5C,首先,預測影像(Pred)係使用指派給目標(當前)區塊之運動向量(MV)來經由典型運動補償所獲得。在圖5C中,箭頭「MV」指向參考圖像,以指示當前圖像中之哪個當前區塊正被參考以便獲得預測影像。
接下來,預測影像(Pred_L)係藉由將已針對經編碼的鄰近左區塊所導出的運動向量(MV_L)應用(再使用)於由源自當前區塊且指向參考圖像之箭頭「MV_L」所指示的目標(當前)區塊以獲得預測影像Pred_L而被獲得。接著,將兩個預測影像Pred及Pred_L疊加以執行預測影像之校正之第一階段(pass),在一個態樣中,該第一階段具有摻混鄰近區塊之間的邊界之效應。
類似地,預測影像(Pred_U)係藉由將已針對經編碼的鄰近上部區塊所導出的運動向量(MV_U)應用(再使用)於由源自當前區塊且指向參考圖像之箭頭「MV_U」所指示的目標(當前)區塊以獲得預測影像Pred_U而被獲得。接著,將預測影像Pred_U與由該第一階段導致之預測影像(即,Pred及Pred_L)疊加以執行預測影像之校正之第二階段,在一個態樣中,該第二階段具有摻混鄰近區塊之間的邊界之效應。第二階段之結果係針對當前區塊之最終預測影像,與其鄰近區塊具有摻合(光滑)邊界。
應注意的是,以上實例係使用鄰近左區塊及上部區塊之兩階段校正方法,但方法可為亦使用鄰近右區塊及/或下部區塊的三階段或更高階段之校正方法。
應注意的是,經受疊加之區域可為區塊的整個像素區域,且替代地,可為部分區塊邊界區域。
應注意的是,此處,OBMC之預測影像校正程序係描述為基於單一參考圖像以導出額外預測影像Pred_L及Pred_U將疊加至的單一預測影像Pred,但當基於複數個參考圖像來校正預測影像時,相同程序可應用於複數個參考圖像中之每一者。在此情況下,在藉由分別基於複數個參考圖像來執行OBMC之影像校正而獲得複數個經校正預測影像之後,進一步疊加所獲得的複數個經校正預測影像以獲得最終預測影像。
應注意的是,在OBMC中,目標區塊之單位可為預測區塊,且替代地,可為藉由進一步分割預測區塊所獲得之子區塊。
用以判定是否實施OBMC處理之方法的一個實例係要使用obmc_flag,obmc_flag係指示是否實施OBMC處理之信號。作為一個特定實例,編碼器可判定目標區塊是否屬於包括複雜運動之區域。編碼器在區塊屬於包括複雜運動之區域時將obmc_flag設定為「1」之值且在編碼期間實施OBMC處理,並且在區塊不屬於包括複雜運動之區域時將obmc_flag設定為「0」之值且在不實施OBMC處理之情況下對區塊編碼。解碼器藉由解碼寫入串流(即,壓縮序列)中之obmc_flag及根據旗標值執行解碼而在實施OBMC處理或不實施OBMC處理之間切換。
應注意的是,運動資訊可在不從編碼器側所傳訊之情況下在解碼器側被導出。舉例而言,可使用界定於H.265/HEVC標準中之合併模式。此外,舉例而言,運動資訊可藉由在解碼器側執行運動估計而被導出。在此情況下,解碼器側可在不使用當前區塊之像素值的情況下執行運動估計。
此處,將描述用於在解碼器側執行運動估計之模式。用於在解碼器側執行運動估計之模式亦被稱為圖案匹配之運動向量導出(PMMVD)模式或圖框速率向上轉換(FRUC)模式。
在圖5D中例示了FRUC處理之一個實例。首先,參考在空間上或在時間上鄰近當前區塊之經編碼區塊的運動向量來產生各自包括預測運動向量(MV)之候選項的候選清單(候選清單可為合併清單)。接下來,自候選清單中所登錄之複數個候選MV中選擇最佳候選MV。舉例而言,計算包括於候選清單中之候選MV的評估值且基於計算的評估值來選擇一個候選MV。
接下來,自選定候選項之運動向量導出用於當前區塊之運動向量。更具體言之,舉例而言,按現狀,將用於當前區塊之運動向量計算為選定候選項之運動向量(最佳候選MV)。替代地,可藉由在參考圖像中之位置附近所執行的對應於選定候選項之運動向量之圖案匹配來導出用於當前區塊之運動向量。換言之,當使用參考圖像中之圖案匹配及評估值來搜尋最佳候選MV的附近,且發現具有較佳評估值之MV時,可將最佳候選MV更新為具有較佳評估值的MV,且可將具有較佳評估值的MV用作用於當前區塊之最終MV。用以更新具有較佳評估值的MV之處理未被實施之組態亦為可接受的。
相同程序可在以子區塊為單位執行處理之情況下被執行。
評估值可被以各種方式來計算。舉例而言,對應於運動向量的參考圖像中之區域之重建影像可被與預定區域之重建影像(其可在另一參考圖像中或在當前圖像中之鄰近區塊中,例如,如下所述)進行比較,而在兩個重建影像之間的像素值之差可被計算且用作為運動向量之評估值。應注意的是,評估值可藉由使用除了該差以外的某一其他資訊來被計算。
接下來,圖案匹配將詳細地被描述。首先,選擇包括於候選清單(例如,合併清單)中之一個候選MV作為根據圖案匹配之搜尋的開始點。所使用之圖案匹配為第一圖案匹配或第二圖案匹配。第一圖案匹配及第二圖案匹配亦分別被稱為兩側匹配及模板匹配。
在第一圖案匹配中,在均沿著當前區塊之運動軌跡的兩個不同參考圖像中之兩個區塊之間執行圖案匹配。因此,在第一圖案匹配中,對於參考圖像中之一區域,將符合當前區塊之運動軌跡的另一參考圖像中之一區域用作為用於候選項之評估值的上述計算之預定區域。
圖6例示沿著運動軌跡之兩個參考圖像中之兩個區塊之間的第一圖案匹配(兩側匹配)之一個實例。如圖6中所例示,在第一圖案匹配中,藉由發現沿著當前區塊(Cur區塊)之運動軌跡的兩個不同參考圖像(Ref0、Ref1)中之兩個區塊之間的最佳匹配來導出兩個運動向量(MV0、MV1)。更具體言之,可在(i)第一經編碼參考圖像(Ref0)中的藉由候選MV所規定之位置處之重建影像與(ii)第二經編碼參考圖像(Ref1)中的藉由候選MV所規定之位置處之重建影像(其根據顯示時間間隔對稱地按比例縮放)之間獲得一差。接著,該差可被使用以導出用於當前區塊之評估值。複數個候選MV中具有最佳評估值之候選MV可被選擇作為最終MV。
在連續運動軌跡之假設下,指向兩個參考區塊之運動向量(MV0、MV1)與在當前圖像(Cur Pic)與兩個參考圖像(Ref0、Ref1)之間的時間距離(TD0、TD1)成比例。舉例而言,在當前圖像在時間上處於兩個參考圖像之間,且從當前圖像至兩個參考圖像之時間距離相同時,第一圖案匹配導出兩個鏡像雙向運動向量。
在第二圖案匹配(模板匹配)中,圖案匹配在當前圖像中之模板(當前圖像中的鄰近當前區塊之區塊;例如,頂部及/或左鄰近區塊)與參考圖像中之區塊之間被執行。因此,在第二圖案匹配中,在當前圖像中的鄰近當前區塊之區塊被使用作為用於候選項評估值的上述計算之預定區域。
圖7例示在當前圖像中之模板與參考圖像中之區塊之間的圖案匹配(模板匹配)之一個實例。如圖7中所例示,在第二圖案匹配中,藉由在參考圖像(Ref0)中搜尋以尋找最佳匹配當前圖像(Cur Pic)中之當前區塊(Cur區塊)之鄰近區塊的區塊來導出當前區塊之運動向量。更具體言之,可在(i)相對於當前區塊的經編碼鄰近上部及左區域中之一者或兩者之重建影像與(ii)相對於由經編碼的參考圖像(Ref0)中之候選MV所規定之區塊位置的相同區域之重建影像之間獲得一差。接著,該差可被使用以導出用於當前區塊之評估值。複數個候選MV中具有最佳評估值之候選MV可被選擇作為最佳候選MV。
指示是否應用FRUC模式之資訊(被稱為例如FRUC旗標)可在CU層級傳訊。此外,當應用FRUC模式時(例如,當將FRUC旗標被設定為真時),指示圖案適用匹配方法之資訊(例如,第一圖案匹配或第二圖案匹配)可在CU層級傳訊。應注意的是,此資訊之傳訊不需要在CU層級執行,而可在另一層級(例如,在序列層級、圖像層級、切片層級、方塊層級、CTU層級或子區塊層級)執行。
接下來,描述導出運動向量之方法。首先,給定對用於基於採用均勻線性運動之模型來導出運動向量之模式的描述。此模式亦被稱為雙向光流(BIO)模式。
圖8例示採用均勻線性運動之模型。在圖8中,(v
x, v
y)表示速度向量,且τ
0及τ
1分別表示在當前圖像(Cur Pic)與兩個參考圖像(Ref
0、Ref
1)之間的時間距離。(MVx
0, MVy
0)表示對應於參考圖像Ref
0之運動向量,且(MVx
1, MVy
1)表示對應於參考圖像Ref
1之運動向量。
此處,在藉由速度向量(v
x, v
y)所展現的均勻線性運動之假設下,(MVx
0, MVy
0)及(MVx
1, MVy
1)分別被表示為(v
xτ
0, v
yτ
0)及(-v
xτ
1, -v
yτ
1),且給定以下光流方程式(方程式1)。
[數學公式1]
(1)
此處,I
(k)表示在運動補償之後來自參考圖像k (k = 0, 1)的明度值。該光流方程式展示以下各項之總和等於零:(i)明度值之時間導數、(ii)水平速度與參考圖像之空間梯度的水平分量之乘積以及(iii)垂直速度與參考圖像之空間梯度的垂直分量之乘積。可基於該光流方程式與厄米特(Hermite)內插之組合來逐像素地對自例如合併清單所獲得之各區塊的運動向量進行校正。
應注意的是,運動向量可在解碼器側使用除了基於採用均勻線性運動之模型來導出運動向量以外的方法所導出。舉例而言,運動向量可基於鄰近區塊之運動向量針對各子區塊導出。
接下來,給定對基於鄰近區塊之運動向量針對各子區塊所導出的運動向量所用之模式的描述。此模式亦被稱為仿射運動補償預測模式。
圖9A例示基於鄰近區塊之運動向量來導出各子區塊之運動向量的一個實例。在圖9A中,當前區塊包括16 (4×4)個子區塊。此處,在當前區塊中之左上角控制點之運動向量v
0係基於鄰近子區塊之運動向量所導出。類似地,在當前區塊中之右上角控制點之運動向量v
1係基於鄰近區塊之運動向量所導出。接著,使用兩個運動向量v
0及v
1,使用下面的方程式2導出在當前區塊中之各子區塊之運動向量(v
x, v
y)。
[數學式2]
(2)
此處,x及y分別為子區塊之水平位置及垂直位置,且w係預定加權係數。
仿射運動補償預測模式可包括導出左上角及右上角控制點之運動向量的不同方法之許多模式。指示仿射運動補償預測模式之資訊(被稱為例如仿射旗標)可在CU層級傳訊。應注意的是,指示仿射運動補償預測模式之資訊之傳訊不需要在CU層級執行,而可在另一層級(例如,在序列層級、圖像層級、切片層級、方塊層級、CTU層級或子區塊層級)執行。
(預測控制器)
預測控制器128選擇框內預測信號(自框內預測器124所輸出)或框間預測信號(自框間預測器126所輸出),且將所選的預測信號輸出至減法器104及加法器116。
如圖1中所例示,在各種實施中,預測控制器128可輸出預測參數,該等預測參數將輸入至熵編碼器110。熵編碼器110可基於自預測控制器128所輸入之該等預測參數及自量化器108所輸入之該等量化係數來產生經編碼位元串流(或序列)。該等預測參數可由接收且解碼經編碼位元串流之解碼器所使用,以實行與框內預測器124、框間預測器126、及預測控制器128中所執行之預測處理相同的預測處理。該等預測參數可包括所選的預測信號(例如,運動向量、預測類型或在框內預測器124或框間預測器126中所採用之預測模式),或基於或指示在框內預測器124、框間預測器126以及預測控制器128中所執行之預測處理的任何索引、旗標或值。
圖9B例示用於在合併模式下導出當前圖像中之運動向量之程序的一個實例。
首先,產生一預測MV清單,預測MV候選項被登記在該預測MV清單。預測MV候選項之實例包括:空間上鄰近之預測MV,其係定位在目標區塊之空間附近的經編碼區塊之MV;時間上鄰近之預測MV,其係經編碼參考圖像中的鄰近與目標區塊處於相同位置之區塊的區塊之MV;耦合預測MV,其係自藉由組合空間上鄰近之預測MV及時間上鄰近之預測MV的MV值而產生之MV;以及零預測MV,其係值為零的MV。
接下來,藉由自登記在預測MV清單中之複數個預測MV當中選擇一個預測MV來判定目標區塊之MV。
此外,在可變長度編碼器中,指示哪個預測MV被選擇之信號merge_idx被寫入及編碼至串流中。
應注意的是,圖9B中所例示的登記在預測MV清單中之預測MV構成一個實例。登記在預測MV清單中之預測MV之數目可不同於圖9B中所例示的數目,且登記在預測MV清單中之預測MV可省略圖9B中之實例所給定的預測MV之類型中之一或多者,且登記在預測MV清單中之預測MV可包括除了圖9B中之實例中所給定的類型之外或不同於該類型的一或多個類型之預測MV。
最終MV可藉由使用在合併模式下所導出的目標區塊之MV而由執行DMVR (動態運動向量再新)處理(稍後將描述)來判定。
圖9C係例示用以判定MV之DMVR處理之一實例的概念圖。
首先,將針對當前區塊所設定(例如,在合併模式下)之最適當MV視為候選MV。接著,根據候選MV (L0),在第一參考圖像(L0)中識別參考像素,第一參考圖像係在L0方向上之經編碼圖像。類似地,根據候選MV (L1),在第二參考圖像(L1)中識別參考像素,第二參考圖像係在L1方向上之經編碼圖像。接著對該等參考像素求平均以形成一模板。
接下來,使用該模板,搜尋第一及第二參考圖像(L0)及(L1)之候選MV的周圍區域,且判定具有最小成本之MV為最終MV。成本值可例如使用模板中的各像素值與使用候選MV所搜尋之區域中的各像素值之間的差等來計算。
應注意的是,此處所描述之程序的組態及操作在下文所描述之編碼器側及解碼器側兩者中係根本上相同的。
除上文所述之處理外的任何處理可被使用,只要該處理能夠藉由搜尋候選MV之周圍來導出最終MV。
接下來,給定對使用LIC (局部照明補償)處理來產生預測影像(預測)之模式之一實例的描述。
圖9D例示使用藉由LIC處理所執行之明度校正程序的預測影像產生方法之一個實例。
首先,自一經編碼參考圖像導出一MV,以獲得對應於當前區塊之參考影像。
接下來,針對當前區塊,基於當前圖像中的經編碼鄰近左參考區域及經編碼鄰近上部參考區域之明度像素值,且基於如由MV所規定之參考圖像中的相同位置中之明度像素值,而獲得指示明度值在參考圖像與當前圖像之間如何變化的資訊。指示明度值如何變化的資訊被使用來計算一明度校正參數。
藉由執行一明度校正程序來產生當前區塊之預測影像,該明度校正程序對由MV所規定之參考圖像中的參考影像應用明度校正參數。
應注意的是,圖9D中所例示之周圍參考區域之形狀僅為一個實例;周圍參考區域可具有不同形狀。
此外,雖然預測影像在此實例中係自單一參考圖像所產生,但在預測影像係自複數個參考圖像所產生之情況下,預測影像可在對自參考圖像所獲得之參考影像執行如上所述的明度校正程序之後被產生。
用於判定是否實施LIC處理之方法的一個實例為使用lic_flag,其係指示是否實施LIC處理之信號。作為一個特定實例,編碼器判定當前區塊是否屬於具有明度變化之區域。編碼器在區塊屬於具有明度變化之區域時將lic_flag設定至「1」之值,且在編碼時實施LIC處理。編碼器在區塊不屬於具有明度變化之區域時將lic_flag設定至「0」之值,且實施LIC處理來執行編碼。解碼器可藉由解碼寫入串流中之lic_flag及根據旗標值執行解碼而在實施與不實施LIC處理之間切換。
判定是否實施LIC處理之一不同方法之一個實例包括辨別LIC處理是否被判定要針對周圍區塊所實施。在一個特定實例中,當對當前區塊使用合併模式時,判定在編碼周圍經編碼區塊時是否應用LIC處理,周圍經編碼區塊係於在合併模式下導出MV時所選擇。接著,該判定被使用來進一步判定針對當前區塊是否實施LIC處理。應注意的是,在此實例中亦然,相同情況適用於在解碼器側所執行之處理。
(解碼器)
接下來,將描述能夠解碼自編碼器100輸出之經編碼信號(經編碼位元串流)之解碼器。圖10係例示根據一實施例之解碼器200之功能組態的方塊圖。解碼器200係逐區塊解碼動畫之動畫解碼器。
如圖10中所例示,解碼器200包括熵解碼器202、反量化器204、反變換器206、加法器208、區塊記憶體210、迴路濾波器212、圖框記憶體214、框內預測器216、框間預測器218、以及預測控制器220。
解碼器200係實現為例如通用處理器及記憶體。在此情況下,當儲存於記憶體中之軟體程式由處理器所執行時,處理器作用為熵解碼器202、反量化器204、反變換器206、加法器208、迴路濾波器212、框內預測器216、框間預測器218、以及預測控制器220。替代地,解碼器200可實現為對應於熵解碼器202、反量化器204、反變換器206、加法器208、迴路濾波器212、框內預測器216、框間預測器218、以及預測控制器220的一或多個專用電子電路。
在下文中,將描述包括於解碼器200中之各組件。
(熵解碼器)
熵解碼器202對經編碼位元串流進行熵解碼。更具體言之,舉例而言,熵解碼器202將經編碼位元串流算術解碼成二進位信號。熵解碼器202接著對二進位信號去二進位化。熵解碼器202將各區塊之量化係數輸出至反量化器204。熵解碼器202亦可將可包括於經編碼位元串流中(參見圖1)之預測參數輸出至框內預測器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之啟用或停用之資訊指示經啟用時,基於局部梯度之方向及活動性來選擇複數個濾波器中的一個濾波器,且將所選的濾波器應用於重建區塊。
(圖框記憶體)
圖框記憶體214係用於儲存框間預測中所使用之參考圖像的儲存器,且亦被稱為圖框緩衝器。更具體言之,圖框記憶體214儲存藉由迴路濾波器212所濾波之重建區塊。
(框內預測器)
框內預測器216藉由參考儲存於區塊記憶體210中之當前圖像中的一區塊或多個區塊進行框內預測來產生預測信號(框內預測信號)。更具體言之,框內預測器216藉由參考鄰近當前區塊之一區塊或多個區塊的樣本(例如,明度值及/或色度值)進行框內預測來產生框內預測信號,並接著將該框內預測信號輸出至預測控制器220。
應注意的是,當自明度區塊所框內預測之色度區塊的框內預測模式被選擇時,框內預測器216可基於當前區塊之明度成分來預測當前區塊之色度成分。
此外,當指示PDPC之應用的資訊係自經編碼位元串流所剖析(舉例而言,在自熵解碼器202所輸出之預測參數中)時,框內預測器216基於水平/垂直參考像素梯度來校正框內預測後像素值。
(框間預測器)
框間預測器218參看儲存於圖框記憶體214中之參考圖像來預測當前區塊。對每個當前區塊或對當前區塊中之每個子區塊(例如,每個4×4區塊)執行框間預測。舉例而言,框間預測器218基於使用自經編碼位元串流所剖析之運動資訊(例如,運動向量) (舉例而言,在自熵解碼器202所輸出之預測參數中)的運動補償來產生當前區塊或子區塊之一框間預測信號,且將該框間預測信號輸出至預測控制器220。
當自經編碼位元串流所剖析之該資訊指示OBMC模式之應用時,框間預測器218使用除了用於自運動估計所獲得的當前區塊之運動資訊以外的鄰近區塊之運動資訊來產生框間預測信號。
此外,當自經編碼位元串流所剖析之該資訊指示FRUC模式之應用時,框間預測器218藉由根據自經編碼位元串流所剖析的圖案匹配方法(兩側匹配或模板匹配)而執行運動估計來導出運動資訊。框間預測器218接著使用導出之運動資訊來執行運動補償(預測)。
此外,當BIO模式係要被應用時,框間預測器218基於採用均勻線性運動之模型來導出運動向量。此外,當自經編碼位元串流所剖析之該資訊指示仿射運動補償預測模式係要被應用時,框間預測器218基於鄰近區塊之運動向量來導出各子區塊之運動向量。
(預測控制器)
預測控制器220選擇框內預測信號或框間預測信號,且將所選的預測信號輸出至加法器208。一般而言,解碼器側上之預測控制器220、框間預測器218以及框內預測器216的組態、功能以及操作可對應於編碼器側上之預測控制器128、框間預測器126以及框內預測器124的組態、功能以及操作。
(非矩形分割)
在編碼器側上的耦接至框內預測器124及框間預測器126之預測控制器128中(參見圖1)以及在解碼器側上的耦接至框內預測器216及框間預測器218之預測控制器220中(參見圖10),迄今為止,自分裂運動資訊(例如,運動向量)經獲得之各區塊所獲得的分割區(可變大小區塊或子區塊)總是矩形的,如圖2中所示。發明人已發現,產生具有諸如三角形形狀的非矩形形狀之分割區導致取決於各種實施中的圖像中之影像之內容而定的影像品質及編碼效率之改良。在下文中,將描述各種實施例,其中自影像區塊分裂出的用於預測之目的之至少一個分割區具有非矩形形狀。應注意的是,此等實施例在編碼器側(耦接至框內預測器124及框間預測器126之預測控制器128)及解碼器側(耦接至框內預測器216及框間預測器218之預測控制器220)同樣適用,且可被實施於圖1的編碼器或其類似者中,或圖10的解碼器或其類似者中。
圖11係例示將影像區塊分裂成至少包括具有非矩形形狀(例如,三角形)之第一分割區及第二分割區的分割區,以及執行包括將作為第一及第二分割區之重建組合之影像區塊編碼(或解碼)的其他處理之程序的一個實例的流程圖。
在步驟S1001中,將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及可能或可能不具有一非矩形形狀之一第二分割區的分割區。舉例而言,如圖12中所示,一影像區塊可自該影像區塊之左上角被分裂至該影像區塊之右下角,以形成均具有非矩形形狀(例如,三角形)之第一分割區及第二分割區,或一影像區塊可自該影像區塊之右上角被分裂至該影像區塊之左下角,以形成均具有非矩形形狀(例如,三角形)之第一分割區及第二分割區。非矩形分割之各種實例將在下文參看圖12及圖17至圖19來被描述。
在步驟S1002中,該程序預測用於該第一分割區之一第一運動向量且預測用於該第二分割區之一第二運動向量。舉例而言,該第一及該第二運動向量之預測可包括自運動向量候選項之一第一集合選擇該第一運動向量及自運動向量候選項之一第二集合選擇該第二運動向量。
在步驟S1003中,執行一運動補償程序以使用上文在步驟S1002中所導出的該第一運動向量來獲得該第一分割區,且使用上文在步驟S1002中所導出的該第二運動向量來獲得該第二分割區。
在步驟S1004中,針對作為第一分割區及第二分割區之(重建)組合之影像區塊執行預測程序。該預測程序可包括一邊界平滑化程序以使在第一分割區與第二分割區之間的邊界平滑化。舉例而言,該邊界平滑化程序可涉及對基於第一分割區所預測的邊界像素之第一值加權及對基於第二分割區所預測的邊界像素之第二值加權。邊界平滑化程序之各種實施將在下文參看圖13、圖14、圖20以及圖21A至圖21D來描述。
在步驟S1005中,該程序使用包括一分割參數之一或多個參數對影像區塊編碼或解碼,該分割參數指示影像區塊分裂成具有非矩形形狀之第一分割區及第二分割區。如圖15之表中所概述,舉例而言,分割參數(「第一索引值」)可將例如分裂中所應用之分裂方向(例如,自左上至右下或自右上至左下,如圖12中所示)及上文在步驟S1002中所導出的第一及第二運動向量聯合地編碼。涉及包括分割參數之一或多個參數的此分割語法操作之細節將在下文參看圖15、圖16以及圖22至圖25來詳細地描述。
圖17係例示分裂影像區塊之程序2000之流程圖。在步驟S2001中,該程序將一影像分裂成包括具有非矩形形狀之第一分割區及可能或可能不具有非矩形形狀之第二分割區的複數個分割區。如圖12中所示,影像區塊可被分裂成具有三角形形狀之第一分割區及亦具有三角形形狀之第二分割區。存在影像區塊被分裂成包括第一分割區及第二分割區(其中至少第一分割區具有非矩形形狀)的複數個分割區之眾多其他實例。非矩形形狀可為三角形、梯形、以及具有至少五條邊及五個角之多邊形。
舉例而言,如圖18中所示,一影像區塊可被分裂成兩個三角形形狀分割區;一影像區塊可被分裂成多於兩個的三角形形狀分割區(例如,三個三角形形狀分割區);一影像區塊可被分裂成三角形形狀分割區與矩形形狀分割區之組合;或一影像區塊可被分裂成三角形形狀分割區與多邊形形狀分割區之組合。
如圖19中進一步所展示,一影像區塊可被分裂成L形(多邊形形狀)分割區及矩形形狀分割區;一影像區塊可被分裂成五邊形(多邊形)形狀分割區及三角形形狀分割區;一影像區塊可被分裂成六邊形(多邊形)形狀分割區及五邊形(多邊形)形狀分割區;或一影像區塊可被分裂成多個多邊形形狀分割區。
返回參看圖17,在步驟S2002中,該程序例如藉由自運動向量候選項之第一集合選擇第一分割區來預測用於第一分割區之第一運動向量,且例如藉由自運動向量候選項之第二集合選擇第二分割區來預測用於第二分割區之第二運動向量。舉例而言,運動向量候選項之該第一集合可包括鄰近該第一分割區之分割區的運動向量,且運動向量候選項之該第二集合可包括鄰近該第二分割區之分割區的運動向量。該等鄰近分割區可為空間上鄰近之分割區及時間上鄰近之分割區中之一種或兩種。空間上鄰近之分割區的一些實例包括位於正在處理中之分割區的左邊、左下方、底部、右下方、右邊、右上方、頂部或左上方之分割區。暫時鄰近之分割區的實例係影像區塊之參考圖像中之共置分割區。
在各種實施中,鄰近該第一分割區之該等分割區及鄰近該第二分割區之該等分割區可在分裂出該第一分割區及該第二分割區的該影像區塊之外。運動向量候選項之該第一集合可與運動向量候選項之該第二集合相同或不同。此外,運動向量候選項之該第一集合及運動向量候選項之該第二集合中之至少一者可與為該影像區塊所準備的運動向量候選項之另一第三集合相同。
在一些實施中,在步驟S2002中,回應於判定該第二分割區類似於該第一分割區亦具有非矩形形狀(例如,三角形),程序2000產生運動向量候選項之第二集合(針對非矩形形狀第二分割區),該第二集合包括除了第一分割區以外的鄰近第二分割區之分割區的運動向量(即,第一分割區之運動向量除外)。另一方面,回應於判定第二分割區不同於第一分割區而具有矩形形狀,程序2000產生運動向量候選項之第二集合(針對矩形形狀第二分割區),該第二集合包括包含第一分割區的鄰近第二分割區之分割區之運動向量。
在步驟S2003中,該程序使用上文在步驟S2002中所導出的第一運動向量對該第一分割區編碼或解碼,且使用上文在步驟S2002中所導出的第二運動向量對該第二分割區編碼或解碼。
如同圖17之程序2000,影像區塊分裂程序可藉由例如如圖1中所示之影像編碼器而被執行,該影像編碼器包括電路及耦接至該電路之一記憶體。該電路在操作時執行:將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區(步驟S2001);預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量(步驟S2002);以及使用該第一運動向量對該第一分割區編碼且使用該第二運動向量對該第二分割區編碼(步驟S2003)。
根據另一實施例,如圖1中所示,一影像編碼器被提供,其包括:分裂器102,其在操作時接收一原始圖像且將該原始圖像分裂成區塊;加法器104,其在操作時接收來自該分裂器之該等區塊及來自預測控制器128之預測,且自對應區塊減去各預測以輸出一殘餘部分;變換器106,其在操作時對自加法器104所輸出之該等殘餘部分執行一變換以輸出變換係數;量化器108,其在操作時將該等變換係數量化以產生量化變換係數;熵編碼器110,其在操作時將該等量化變換係數編碼以產生一位元串流;以及耦接至框間預測器126、框內預測器124、及記憶體118、122的預測控制器128,其中框間預測器126在操作時基於在一經編碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且框內預測器124在操作時基於在一當前圖像中之一經編碼參考區塊來產生一當前區塊之一預測。預測控制器128在操作時將該等區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區(圖17,步驟S2001);預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量(步驟S2002);以及使用該第一運動向量將該第一分割區編碼且使用該第二運動向量將該第二分割區編碼(步驟S2003)。
根據另一實施例,提供一影像解碼器,如例如圖10中所示,該影像解碼器被提供,其包括電路及耦接至該電路之一記憶體。該電路在操作時執行:將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區(圖17,步驟S2001);預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量(步驟S2002);且使用該第一運動向量將該第一分割區解碼且使用該第二運動向量將該第二分割區解碼(步驟S2003)。
根據另一實施例,如圖10中所示之一影像解碼器被提供,其包括:熵解碼器202,其在操作時接收且解碼一經編碼位元串流以獲得量化變換係數;反量化器204及反變換器206,其在操作時對該等量化變換係數進行反量化以獲得變換係數且對該等變換係數進行反變換以獲得殘餘部分;加法器208,其在操作時將自反量化器204及反變換器206所輸出的該等殘餘部分與自預測控制器220所輸出的預測相加以重建區塊;以及耦接至框間預測器218、框內預測器216、及記憶體210、214的預測控制器220,其中框間預測器218在操作時基於在一經解碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且框內預測器216在操作時基於在一當前圖像中之一經解碼參考區塊來產生一當前區塊之一預測。預測控制器220在操作時將一影像區塊分割成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區(圖17, 步驟S2001);預測用於該第一分割區之一第一運動向量及用於該第二分割區之一第二運動向量 (步驟S2002);且使用該第一運動向量將該第一分割區解碼且使用該第二運動向量將該第二分割區解碼(步驟S2003)。
(邊界平滑化)
如上文在圖11中所描述,根據各種實施例的執行針對作為具有非矩形形狀之第一分割區與第二分割區之(重建)組合的影像區塊之預測程序之步驟S1004可涉及沿著在第一分割區與第二分割區之間的邊界之邊界平滑化程序的應用。
舉例而言,圖21B例示邊界平滑化程序之一個實例,該邊界平滑化程序涉及將基於第一分割區所第一預測的邊界像素之第一值及基於第二分割區所第二預測的邊界像素之第二值加權。
圖20係例示根據一個實施例的總體邊界平滑化程序3000之流程圖,總體邊界平滑化程序涉及對基於第一分割區所第一預測的邊界像素之第一值及對基於第二分割區所第二預測的邊界像素之第二值加權。在步驟S3001中,沿著一邊界將一影像區塊分裂成一第一分割區及一第二分割區,其中至少該第一分割區具有一非矩形形狀,如上文所述的圖21A或圖12、圖18以及圖19中所示。
在步驟S3002中,沿著邊界的第一分割區之像素(圖21A中之「邊界像素」)之一集合的第一值(例如,色彩、明度、透明度等)被第一預測,其中該等第一值使用第一分割區之資訊來被第一預測。在步驟S3003中,沿著邊界的第一分割區之像素之(相同)集合的第二值被第二預測,其中該等第二值使用第二分割區之資訊來被第二預測。在某一實施中,該第一預測及該第二預測中之至少一者係基於在一經編碼參考圖像中之一參考分割區來預測該等第一值及該等第二值的一框間預測程序。參看圖21D,在一些實施中,預測程序預測包括第一分割區與第二分割區重疊所在的像素之集合的第一分割區之所有像素(「樣本之第一集合」)的第一值,且預測第一分割區與第二分割區重疊所在的僅像素之集合(「樣本之第二集合」)的第二值。在另一實施中,該第一預測及該第二預測中之至少一者係基於在一當前圖像中之一經編碼參考分割區來預測該等第一值及該等第二值的一框內預測程序。在一些實施中,該第一預測中所使用之一預測方法不同於該第二預測中所使用之一預測方法。舉例而言,該第一預測可包括一框間預測程序且該第二預測可包括一框內預測程序。用以第一預測該等第一值或用以第二預測該等第二值之資訊可為第一或第二分割區之運動向量、框內預測方向等。
在步驟S3004中,對使用第一分割區預測之該等第一值及使用第二分割區預測之該等第二值加權。在步驟S3005中,使用該等經加權的第一值及第二值來編碼或解碼第一分割區。
圖21B例示邊界平滑化操作之一實例,其中第一分割區與第二分割區在各列或各行重疊五個像素(最大程度)。亦即,各列或各行之像素之集合的數目最多為五,針對該數目,基於第一分割區來預測該等第一值且基於第二分割區來預測該等第二值。圖21C例示邊界平滑化操作之另一實例,其中第一分割區與第二分割區在各列或各行重疊三個像素(最大程度)。亦即,各列或各行之像素之集合的數目最多為三,針對該數目,基於第一分割區來預測該等第一值且基於第二分割區來預測該等第二值。
圖13例示邊界平滑化操作之另一實例,其中第一分割區與第二分割區在各列或各行重疊四個像素(最大程度)。亦即,各列或各行之像素之集合的數目最多為四,針對該數目,基於第一分割區來預測該等第一值且基於第二分割區來預測該等第二值。在所例示實例中,權重1/8、1/4、3/4以及7/8可分別被應用於集合中之四個像素的第一值,且權重7/8、3/4、1/4以及1/8可分別被應用於集合中之四個像素的第二值。
圖14例示邊界平滑化操作之又一實例,其中第一分割區與第二分割區分別地在各列或各行重疊零個像素(即,該等分割區並不重疊),在各列或各行重疊一個像素(最大程度),在各列或各行重疊兩個像素(最大程度)。在其中第一分割區與第二分割區並不重疊的實例中,零權重被應用。在其中第一分割區與第二分割區在各列或各行重疊一個像素的實例中,權重1/2可被應用於基於第一分割區所預測的集合中之像素之第一值,且權重1/2可被應用於基於第二分割區所預測的集合中之像素之第二值。在其中第一分割區與第二分割區在各列或各行重疊兩個像素的實例中,權重1/3及2/3可被應用於基於第一分割區所預測的集合中之兩個像素之第一值,且權重2/3及1/3可被應用於基於第二分割區所預測的集合中之兩個像素之第二值。
根據上文所述之實施例,第一分割區與第二分割區重疊所在的像素之集合中之像素的數目係整數。在其他實施中,集合中之重疊像素之數目可為非整數且可為例如小數。此外,應用於像素集合之第一值及第二值之權重可取決於各應用而為小數或整數。
如同圖20之程序3000的邊界平滑化程序可藉由一影像編碼器所執行,如圖1中所示,舉例而言,該影像編碼器包括電路及耦接至該電路之一記憶體。該電路在操作時沿著在具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑操作,該第一及該第二分割區係分裂自一影像區塊(圖20,步驟S3001)。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值(步驟S3002);使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值(步驟S3003);將該等第一值及該等第二值加權(步驟S3004);以及使用該等經加權第一值及該等經加權第二值將該第一分割區編碼(步驟S3005)。
根據另一實施例,如圖1中所示,一影像編碼器 被提供,其包括:分裂器102,其在操作時接收一原始圖像且將該原始圖像分裂成區塊;加法器104,其在操作時接收來自該分裂器之該等區塊及來自預測控制器128之預測,且自對應區塊減去各預測以輸出一殘餘部分;變換器106,其在操作時對自加法器104所輸出之該等殘餘部分執行一變換以輸出變換係數;量化器108,其在操作時將該等變換係數量化以產生量化變換係數;熵編碼器110,其在操作時將該等量化變換係數編碼以產生一位元串流;以及耦接至框間預測器126、框內預測器124、及記憶體118、122的預測控制器128,其中框間預測器126在操作時基於在一經編碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且框內預測器124在操作時基於在一當前圖像中之一經編碼參考區塊來產生一當前區塊之一預測。預測控制器128在操作時沿著在具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑操作,該第一及該第二分割區係分裂自一影像區塊(圖20,步驟S3001)。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值(步驟S3002);使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值(步驟S3003);將該等第一值及該等第二值加權(步驟S3004);以及使用該等經加權第一值及該等經加權第二值將該第一分割區編碼(步驟S3005)。
根據另一實施例,一影像解碼器被提供,如例如圖10中所示,該影像解碼器包括電路及耦接至該電路之一記憶體。該電路在操作時沿著在具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑操作,該第一及該第二分割區係分裂自一影像區塊(圖20,步驟S3001)。該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值(步驟S3002);使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值(步驟S3003);將該等第一值及該等第二值加權(步驟S3004);以及使用該等經加權第一值及該等經加權第二值將該第一分割區解碼(步驟S3005)。
根據另一實施例,如圖10中所示之一影像解碼器被提供,其包括:熵解碼器202,其在操作時接收且解碼一經編碼位元串流以獲得量化變換係數;反量化器204及反變換器206,其在操作時對該等量化變換係數進行反量化以獲得變換係數且對該等變換係數進行反變換以獲得殘餘部分;加法器208,其在操作時將自反量化器204及反變換器206所輸出的該等殘餘部分與自預測控制器220所輸出的預測相加以重建區塊;以及耦接至框間預測器218、框內預測器216、及記憶體210、214的預測控制器220,其中框間預測器218在操作時基於在一經解碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且框內預測器216在操作時基於在一當前圖像中之一經解碼參考區塊來產生一當前區塊之一預測。預測控制器220在操作時沿著在具有一非矩形形狀之一第一分割區與一第二分割區之間的一邊界執行一邊界平滑操作,該第一及該第二分割區係分裂自一影像區塊。(圖20,步驟S3001)該邊界平滑化操作包括:使用該第一分割區之資訊來第一預測沿著該邊界的該第一分割區之像素之一集合的第一值(步驟S3002);使用該第二分割區之資訊來第二預測沿著該邊界的該第一分割區之像素之該集合的第二值(步驟S3003);將該等第一值及該等第二值加權(步驟S3004);以及使用該等經加權第一值及該等經加權第二值將該第一分割區解碼(步驟S3005)。
(使用分割參數語法之熵編碼及解碼)
如圖11中所描述,步驟S1005,根據各種實施例,分裂成具有非矩形形狀之第一分割區及第二分割區的影像區塊可使用包括指示影像區塊之非矩形分裂之分割參數的一或多個參數來被編碼或解碼。在各種實施例中,此分割參數可聯合地編碼例如應用於分裂之分裂方向(例如,自左上至右下或自右上至左下,參見圖12)及在步驟S1002中所預測的第一及第二運動向量,如下文將更全面地描述。
圖15係樣本分割參數(「第一索引值」)及分別藉由該等分割參數所聯合地編碼的資訊之集合的表。該等分割參數(「第一索引值」)在0至6之範圍內且聯合地編碼:將影像區塊分裂成均為三角形(參見圖12)之第一分割區及第二分割區的方向,針對第一分割區所預測之第一運動向量(圖11,步驟S1002),以及針對第二分割區所預測的第二運動向量(圖11,步驟S1002)。具體言之,分割參數0編碼自左上角至右下角之分裂方向,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第2」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第1」運動向量。
分割參數1編碼自右上角至左下角之分裂方向,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第1」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第2」運動向量。分割參數2編碼自右上角至左下角之分裂方向,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第2」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第1」運動向量。分割參數3編碼自左上角至右下角之分裂方向,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第2」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第2」運動向量。分割參數4編碼自右上角至左下角之分裂方向,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第2」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第3」運動向量。分割參數5編碼自左上角至右下角之分裂方向,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第3」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第1」運動向量。分割參數6編碼自左上角至右下角之分裂方向,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第4」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第1」運動向量。
圖22係例示在編碼器側所執行之方法4000的流程圖。在步驟S4001中,該程序基於指示分裂之一分割參數而將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區。舉例而言,如上述之圖15中所示,分割參數可指示分裂影像區塊之方向(例如,自右上角至左下角或自左上角至右下角)。在步驟S4002中,該程序編碼該第一分割區及該第二分割區。在步驟S4003中,該程序將包括該分割參數之一或多個參數寫入至一位元串流中,解碼器側能夠接收且解碼該位元串流以獲得該一或多個參數,從而在解碼器側針對該第一及該第二分割區執行相同的預測程序(如在編碼器側所執行的)。包括該分割參數之該一或多個參數可聯合地或單獨地編碼資訊之各種片段,諸如第一分割區之非矩形形狀、第二分割區之形狀、使用來分裂影像區塊以獲得第一及第二分割區的分裂方向、第一分割區之第一運動向量、第二分割區之第二運動向量等。
圖23係例示在解碼器側所執行之方法5000的流程圖。在步驟S5001中,該程序剖析來自一位元串流之一或多個參數,其中該一或多個參數包括指示將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區之一分割參數。包括自該位元串流所剖析出之分割參數的一或多個參數可聯合地或單獨地編碼針對解碼器側要執行與在編碼器側所執行的預測程序相同的預測程序所需的資訊之各種片段,諸如第一分割區之非矩形形狀、第二分割區之形狀、用以分裂影像區塊以獲得第一及第二分割區的分裂方向、第一分割區之第一運動向量、第二分割區之第二運動向量等。在步驟S5002中,程序5000基於自該位元串流所剖析出之分割參數而將該影像區塊分裂成複數個分割區。在步驟S5003中,程序解碼自該影像區塊分裂之該第一分割區及該第二分割區。
圖24係樣本分割參數(「第一索引值」)及分別藉由該等分割參數所聯合地編碼的資訊之集合的表,其在本質上類似於圖15中的上文所述之樣本表。在圖24中,該等分割參數(「第一索引值」)在0至6之範圍內且聯合地編碼:自影像區塊分裂之第一分割區及第二分割區的形狀,將影像區塊分裂成第一分割區及第二分割區的方向,針對第一分割區所預測之第一運動向量(圖11,步驟S1002),以及針對第二分割區所預測的第二運動向量(圖11,步驟S1002)。具體言之,分割參數0編碼第一及第二分割區均不具有三角形形狀,且因此分裂方向資訊係「N/A」,第一運動向量資訊係「N/A」,且第二運動向量資訊係「N/A」。
分割參數1編碼第一及第二分割區係三角形,分裂方向係自左上角至右下角,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第2」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第1」運動向量。分割參數2編碼第一及第二分割區係三角形,分裂方向係自右上角至左下角,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第1」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第2」運動向量。分割參數3編碼第一及第二分割區係三角形,分裂方向係自右上角至左下角,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第2」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第1」運動向量。分割參數4編碼第一及第二分割區係三角形,分裂方向係自左上角至右下角,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第2」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第2」運動向量。分割參數5編碼第一及第二分割區係三角形,分裂方向係自右上角至左下角,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第2」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第3」運動向量。分割參數6編碼第一及第二分割區係三角形,分裂方向係自左上角至右下角,第一運動向量係用於第一分割區之運動向量候選項之第一集合中所列出的「第3」運動向量,且第二運動向量係用於第二分割區之運動向量候選項之第二集合中所列出的「第1」運動向量。
根據一些實施,該等分割參數(索引值)可依照二進位化方案來二進位化,該二進位化方案視至少一個或一或多個參數之值來選擇。圖16例示二進制化索引值(分割參數值)之樣本二進位化方案。
圖25係第一參數及第二參數之樣本組合的表,其中第一參數及第二參數中之一者係指示將一影像區塊分裂成包括具有非矩形形狀之第一分割區及第二分割區的複數個分割區之分割參數。在此實例中,該分割參數可用以指示在不聯合地編碼其他資訊之情況下來分裂一影像區塊,其他資訊係藉由其他參數中之一或多者所編碼。
在圖25中之第一實例中,第一參數係用以指示影像區塊大小,且第二參數係使用作為用以指示自影像區塊分裂的複數個分割區中之至少一者具有三角形形狀的分割參數(旗標)。第一參數與第二參數之此組合可被使用以指示例如:1)當影像區塊大小係大於64×64時,不存在三角形形狀分割區;或2)當影像區塊之寬度與高度的比係大於4(例如,64x4)時,不存在三角形形狀分割區。
在圖25中之第二實例中,第一參數係用以指示預測模式,且第二參數係使用作為用以指示自影像區塊分裂的複數個分割區中之至少一者具有三角形形狀的分割參數(旗標)。第一參數與第二參數之此組合可被使用以指示例如1)當影像區塊被以框內模式寫碼時,不存在三角形分割區。
在圖25中之第三實例中,第一參數係使用作為用以指示自影像區塊分裂的複數個分割區中之至少一者具有三角形形狀的分割參數(旗標),且第二參數係用以指示預測模式。第一參數與第二參數之此組合可被使用以指示例如1)當自影像區塊分裂之複數個分割區中之至少一者具有三角形形狀時,影像區塊必須經框間寫碼。
在圖25之第四實例中,第一參數指示鄰近區塊之運動向量,且第二參數係使用作為指示將影像區塊分裂成兩個三角形之方向的分割參數。第一參數與第二參數之此組合可被使用以指示例如1)當鄰近區塊之運動向量係對角線方向時,將影像區塊分裂成兩個三角形之方向係自左上角至右下角。
在圖25之第五實例中,第一參數指示鄰近區塊之框內預測方向,且第二參數係使用作為指示將影像區塊分裂成兩個三角形之方向的分割參數。第一參數與第二參數之此組合可被使用以指示例如1)當鄰近區塊之框內預測方向係逆對角線方向時,將影像區塊分裂成兩個三角形之方向係自右上角至左下角。
應理解的是,如圖15、圖24及圖25中所示,包括分割參數之一或多個參數及何資訊被聯合地或單獨地編碼的表僅作為實例來呈現,且聯合地或單獨地編碼作為上文所述的分割語法操作之部分之各種資訊的眾多其他方式在本發明之範疇內。舉例而言,分割參數可指示第一分割區係三角形、梯形、或具有至少五條邊及五個角之多邊形。分割參數可指示第二分割區具有非矩形形狀,諸如三角形、梯形、及具有至少五條邊及五個角之多邊形。分割參數可指示關於分裂之資訊的一或多個片段,諸如第一分割區之非矩形形狀、第二分割區之形狀(其可為非矩形或矩形)、將影像區塊分裂成複數個分割區所應用的分裂方向(例如,自影像區塊之左上角至影像區塊之右下角,及自影像區塊之右上角至影像區塊之左下角)。分割參數可聯合地編碼其他資訊,諸如第一分割區之第一運動向量、第二分割區之第二運動向量、影像區塊大小、預測模式、鄰近區塊的運動向量、鄰近區塊的框內預測方向等。替代地,其他資訊中之任一者可藉由除了分割參數以外的一或多個參數而被單獨地編碼。
如同圖22之程序4000,分割語法操作可藉由如例如圖1中所示之影像編碼器所執行,該影像編碼器包括電路及耦接至該電路之一記憶體。該電路在操作時執行一分割語法操作,該分割語法操作包括:基於指示分裂之一分割參數而將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區(圖22,步驟S4001);編碼該第一分割區及該第二分割區(S4002);以及將包括該分割參數之一或多個參數寫入至一位元串流中(S4003)。
根據另一實施例,如圖1中所示,一影像編碼器被提供,其包括:分裂器102,其在操作時接收一原始圖像且將該原始圖像分裂成區塊;加法器104,其在操作時接收來自該分裂器之該等區塊及來自預測控制器128之預測,且自對應區塊減去各預測以輸出一殘餘部分;變換器106,其在操作時對自加法器104所輸出之該等殘餘部分執行一變換以輸出變換係數;量化器108,其在操作時將該等變換係數量化以產生量化變換係數;熵編碼器110,其在操作時將該等量化變換係數編碼以產生一位元串流;以及耦接至框間預測器126、框內預測器124、及記憶體118、122的預測控制器128,其中框間預測器126在操作時基於在一經編碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且框內預測器124在操作時基於在一當前圖像中之一經編碼參考區塊來產生一當前區塊之一預測。預測控制器128在操作時基於指示分裂之分割參數而將一影像區塊分裂成包括具有非矩形形狀之第一分割區及第二分割區的複數個分割區(圖22,步驟S4001),且編碼第一分割區及第二分割區(步驟S4002)。熵編碼器110在操作時將包括該分割參數之一或多個參數寫入至一位元串流中(步驟S4003)。
根據另一實施例,一影像解碼器被提供,如例如圖10中所示,該影像解碼器包括電路及耦接至該電路之一記憶體。該電路在操作時執行一分割語法操作,該分割語法操作包括:剖析來自一位元串流之一或多個參數,其中該一或多個參數包括指示將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區之一分割參數(圖23,步驟S5001);基於該分割參數而將該影像區塊分裂成該等複數個分割區(S5002);以及解碼該第一分割區及該第二分割區(S5003)。
根據另一實施例,如圖10中所示之一影像解碼器被提供,其包括:熵解碼器202,其在操作時接收且解碼一經編碼位元串流以獲得量化變換係數;反量化器204及反變換器206,其在操作時對該等量化變換係數進行反量化以獲得變換係數且對該等變換係數進行反變換以獲得殘餘部分;加法器208,其在操作時將自反量化器204及反變換器206所輸出的該等殘餘部分與自預測控制器220所輸出的預測相加以重建區塊;以及耦接至框間預測器218、框內預測器216及記憶體210、214的預測控制器220,其中框間預測器218在操作時基於在一經解碼參考圖像中之一參考區塊來產生一當前區塊之一預測,且框內預測器216在操作時基於在一當前圖像中之一經解碼參考區塊來產生一當前區塊之一預測。熵解碼器202在操作時:剖析來自一位元串流之一或多個參數,其中該一或多個參數包括指示將一影像區塊分裂成包括具有一非矩形形狀之一第一分割區及一第二分割區的複數個分割區之一分割參數(圖23,步驟S5001);基於該分割參數而將該影像區塊分裂成該等複數個分割區(S5002);且在一些實施中協同預測控制器220解碼該第一分割區及該第二分割區(S5003)。
(實施及應用)
如以上實施例之每一者中所描述,每一功能或操作區塊通常能夠實現為例如微型處理單元(micro processing unit;MPU)及記憶體。此外,藉由功能區塊中之每一者所執行之程序可被實現為程式執行單元,諸如讀取且執行記錄在諸如ROM的記錄媒體上之軟體(程式)之處理器。軟體可以被分散。軟體可被記錄在諸如半導體記憶體之多種記錄媒體上。應注意的是,每一功能區塊亦能夠被實現為硬體(專用電路)。
實施例中之每一者中所描述之處理可使用單一設備(系統)經由整合式處理來被實現,且替代地,可使用複數個設備經由分散式處理來被實現。此外,執行上述程式之處理器可為單一處理器或複數個處理器。換言之,整合式處理可被執行,且替代地,分散式處理可被執行。
本發明之實施例係不限於以上例示性實施例;可對例示性實施例進行各種修改,修改之結果亦包括於本發明之實施例的範疇內。
接下來,將描述以上實施例之每一者中所描述的動畫編碼方法(影像編碼方法)及動畫解碼方法(影像解碼方法)之應用實例,以及實施該等應用實例的各種系統。此系統之特性可在於包括使用該影像編碼方法之一影像編碼器、使用該影像解碼方法之一影像解碼器、或包括該影像編碼器及該影像解碼器兩者的一影像編碼器解碼器。此系統之其他組態可基於情況來被修改。
(使用實例)
圖26例示適合於實施內容分配服務之內容提供系統ex100之總體組態。提供通訊服務之區域係劃分成具有所要大小的小區,且在所例示實例中為固定無線台之基地台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可被直接地連接至通信網路ex104而非經由網際網路ex101或網際網路服務提供者ex102連接,且可被直接地連接至飛機ex117而非經由衛星ex116連接。
攝影機ex113係能夠擷取靜態影像及視訊之裝置,諸如數位攝影機。智慧型電話ex115係能夠根據2G、3G、3.9G及4G系統以及下一代5G系統之行動通訊系統標準來操作的智慧型電話裝置、行動電話或個人手機系統(PHS)。
家用電器ex114係例如冰箱或包括於家用燃料電池共生型系統中之裝置。
在內容提供系統ex100中,包括影像及/或視訊擷取功能之一終端係能夠例如藉由經由例如基地台ex106連接至串流伺服器ex103而進行實時串流傳輸。當實時串流傳輸時,一終端(例如,電腦ex111、遊戲裝置ex112、攝影機ex113、家用電器ex114、智慧型電話ex115或飛機ex117)可對由使用者經由該終端所擷取之靜態影像或視訊內容執行以上實施例中所描述的編碼處理,可對經由編碼所獲得之視訊資料及藉由編碼對應於視訊的音訊所獲得之音訊資料進行多工處理,且可將所獲得資料傳輸至串流伺服器ex103。換言之,該終端作用為根據本發明之一個態樣的影像編碼器。
串流伺服器ex103將傳輸之內容資料串流傳輸至請求該串流之用戶端。用戶端實例包括電腦ex111、遊戲裝置ex112、攝影機ex113、家用電器ex114、智慧型電話ex115以及飛機ex117內部之終端,該等終端能夠解碼上述經編碼資料。接收串流傳輸之資料的裝置解碼且再現接收之資料。換言之,根據本發明之一個態樣,該等裝置可各自作用為影像解碼器。
(分散化處理)
串流伺服器ex103可被實現為複數個伺服器或電腦,諸如資料之處理、記錄及串流傳輸的任務被分割在該等複數個伺服器或電腦之間。舉例而言,串流伺服器ex103可被實現為內容遞送網路(CDN),其經由連接位於全世界之多個邊緣伺服器的網路來串流傳輸內容。在CDN中,實體地靠近用戶端之邊緣伺服器被動態地指派給用戶端。快取內容且將內容串流傳輸至邊緣伺服器以減少載入時間。在例如由例如訊務中之尖峰引起的連接性中之某一類型之錯誤或變化的情況下,有可能以高速度穩定地串流傳輸資料,此係因為有可能藉由例如將處理分割在複數個邊緣伺服器之間或將串流工作切換至不同邊緣伺服器且繼續串流傳輸來避開網路之受影響部分。
分散化係不限於僅分割針對串流傳輸之處理;所擷取資料之編碼可在終端之間被分割且由終端所執行、在伺服器側所執行、或兩種情況皆可。在一個實例中,在典型編碼中,處理係在兩個迴路中所執行。第一迴路係用於偵測影像基於逐圖框或逐場景來看的複雜程度,或偵測編碼負載。第二迴路係用於維持影像品質且改良編碼效率之處理。舉例而言,有可能藉由使終端執行編碼之第一迴路且使接收內容的伺服器側執行編碼之第二迴路來減小終端之處理負載及改良內容的品質及編碼效率。在此情況下,在接收到解碼請求後,有可能由藉由一個終端所執行之第一迴路而產生的經編碼資料要被接收且近乎即時地在另一終端上再現。此使得有可能實現平滑的即時串流傳輸。
在另一實例中,攝影機ex113或其類似物自影像提取特徵量,將與特徵量相關之資料壓縮為後設資料,且將壓縮的後設資料傳輸至伺服器。舉例而言,伺服器基於特徵量來判定物件之重要性,且相應地改變量化準確度以執行適合於影像之意義(或內容重要性)的壓縮。特徵量資料對於改良在藉由伺服器所執行之第二壓縮階段期間的運動向量預測之精度及效率係特別地有效。此外,諸如可變長度寫碼(VLC)之具有相對低處理負載之編碼可藉由終端來被處置,且諸如上下文適應性二進位算術寫碼(CABAC)之具有相對高處理負載之編碼可藉由伺服器來被處置。
在又一實例中,存在近似相同場景之複數個視訊係藉由在例如體育場、購物中心或工廠中之複數個終端所擷取的個例。在此情況下,舉例而言,編碼可藉由基於每個單位而將處理任務在擷取視訊之複數個終端與在必要時不擷取視訊之其他終端以及伺服器之間做分割而被分散。該等單位可為例如圖像群組(GOP)、圖像、或由分割圖像產生之方塊。此使得有可能減少載入時間及達成更接近即時之串流傳輸。
由於視訊係關於近似相同的場景,因此可藉由伺服器來實現管理及/或指令,使得由終端所擷取之視訊能夠被交叉引用。此外,伺服器可自終端接收經編碼資料,改變資料項目之間的參考關係,或校正或替換圖像本身,並接著執行編碼。此使得有可能產生具有經增加的資料之個別項目的品質及效率之串流。
此外,伺服器可在執行轉換視訊資料之編碼格式的轉碼之後串流傳輸視訊資料。舉例而言,伺服器可將編碼格式自MPEG轉換至VP (例如,VP9),且可將H.264轉換至H.265。
以此方式,編碼能夠藉由終端或一或多個伺服器來被執行。因此,在以下描述中儘管執行編碼之裝置被稱為「伺服器」或「終端」,但藉由伺服器所執行之程序之一些或全部可藉由終端來被執行,且同樣地,藉由終端所執行之程序之一些或全部可藉由伺服器來執行。此亦適用於解碼程序。
(3D,多角度)
自藉由諸如攝影機ex113及/或智慧型電話ex115之複數個終端所同時地擷取的不同場景或從不同角度所擷取的同一場景之影像或視訊所組合的影像或視訊之使用已增加。藉由終端所擷取之視訊係基於例如終端之間的單獨地獲得之相對位置關係或視訊中之具有匹配特徵點之區域而組合。
除了二維動畫之編碼之外,伺服器亦可基於對動畫之場景分析來編碼靜態影像(自動地或在由使用者所指定之時間點),且將經編碼靜態影像傳輸至接收終端。此外,當伺服器能夠獲得在視訊擷取終端之間的相對位置關係時,除了二維動畫之外,伺服器亦能夠基於自不同角度所擷取的同一場景之視訊來產生場景之三維幾何形狀。伺服器可單獨地編碼自例如點雲所產生之三維資料,且基於使用三維資料來辨識或追蹤個人或物件的結果,可自藉由複數個終端所擷取之視訊選擇或重建且產生要被傳輸至接收終端之視訊。
此允許使用者藉由自由地選擇對應於視訊擷取終端之視訊來享用場景,且允許使用者享用藉由在選定視角自根據複數個影像或視訊所重建之三維資料提取視訊所獲得的內容。此外,如同視訊,聲音可自相對不同角度來被記錄,且伺服器可多工處理來自具有對應視訊的特定之角度或空間之音訊,且傳輸經多工處理之視訊及音訊。
近年來,作為真實世界與虛擬世界之複合物的內容(諸如虛擬實境(VR)及擴增實境(AR)內容)亦變得風行。在VR影像之情況下,伺服器可自左眼以及右眼兩者之視角來建立影像,且執行包容在兩視角影像之間的參考之編碼,諸如多視圖寫碼(MVC),且替代地,可不用參考而將影像編碼為單獨串流。當影像被解碼為單獨串流時,該等串流在再現時可被同步,以便根據使用者之視角重建虛擬的三維空間。
在AR影像之情況下,伺服器基於三維位置或出於使用者視角之移動而將存在於虛擬空間中之虛擬物件資訊疊加至表示真實世界空間之攝影機資訊上。解碼器可獲得或儲存虛擬物件資訊及三維資料,基於出於使用者視角之移動而產生二維影像,並接著藉由無縫地連接影像來產生疊加資料。替代地,除了針對虛擬物件資訊之請求之外,解碼器亦可將出於使用者視角之運動傳輸至伺服器。伺服器可基於根據接收之運動而儲存於伺服器中之三維資料來產生疊加資料,並編碼所產生之疊加資料且將其串流傳輸至解碼器。應注意的是,除了RGB值之外,疊加資料亦包括指示透明度之α值,且伺服器將除了從三維資料所產生之物件以外的區段之α值設定為例如0,且可在彼等區段為透明時執行編碼。替代地,伺服器可將背景設定至諸如色度鍵之預定RGB值,且產生資料,其中除了物件以外的區域被設定為背景。
類似地經串流傳輸的資料之解碼可藉由用戶端(即,終端)被執行、在伺服器側被執行、或在兩者之間被分割。在一個實例中,一個終端可將接收請求傳輸至伺服器,所請求之內容可被由另一終端所接收及解碼,且經解碼信號可被傳輸至具有顯示器之裝置。有可能藉由分散處理及適當地選擇內容來再現高影像品質資料,此與通訊終端本身之處理能力無關。在又一實例中,舉例而言,當TV在接收大小較大的影像資料時,諸如藉由分割圖像所獲得之方塊的圖像之區域可被解碼並顯示於TV之一觀看者或多個觀看者之一個人終端或多個終端上。此使得觀看者有可能共享全景圖,且使得每一觀看者有可能檢查其指派區域,或更詳細地靠近查看一區域。
在複數個無線連接係可能在近距離、中間距離、及遠距離、在室內或在室外的情形中,有可能使用諸如MPEG-DASH之串流傳輸系統標準來無縫地接收內容。使用者可在自由地選擇包括使用者之終端的解碼器或顯示設備、配置在室內或在室外之顯示器等時即時地在資料之間切換。此外,使用例如關於使用者之位置的資訊,可在切換哪個終端處置解碼及哪個終端處置內容之顯示的同時執行解碼。此使得有可能在使用者在移動前往目的地之路途中同時,映射且顯示資訊在嵌有能夠顯示內容之裝置的附近建築物之牆壁上、在地面之部分上。此外,亦有可能基於在網路上之經編碼資料的可存取性來切換接收到資料之位元速率,諸如當經編碼資料在可自接收終端快速地存取之伺服器上被快取時,或當經編碼資料被複製至內容遞送服務中之邊緣伺服器時。
(可調式編碼)
內容之切換將參考圖27中所例示的可調式串流來被描述,該可調式串流經由以上實施例中所描述之動畫編碼方法的實施來被壓縮寫碼。伺服器可具有一組態,其中內容係在利用串流之時間及/或空間可縮放性時被切換,其藉由劃分成多個層及編碼該等層來被達成,如圖27中所例示。應注意的是,可存在內容相同但品質不同的複數個個別串流。換言之,藉由基於諸如解碼器側上之處理能力的內部因數及諸如通訊頻寬的外部因數來判定哪個層要解碼,解碼器側可在解碼時自由地在低解析度內容與高解析度內容之間切換。舉例而言,在使用者想要繼續例如在家中在諸如連接至網際網路之TV的裝置上觀看使用者先前在移動時在智慧型電話ex115上觀看之視訊的情況下,裝置可簡單地解碼同一串流直至一不同層,此減小伺服器側負載。
此外,除了上文所述之組態(其中可縮放性係作為按每個層來被編碼的圖像之結果而被達成)以外,在增強層在基礎層之上的情況下,增強層可包括基於例如關於影像之統計資訊的後設資料。解碼器側可藉由基於後設資料而對基礎層中之圖像執行超解析度成像來產生高影像品質內容。超解析度成像可改良SN比,同時維持解析度及/或增大解析度。後設資料包括如在超解析度處理中所使用的用於識別線性或非線性濾波器係數之資訊,或識別在超解析度處理中所使用的濾波器處理、機器學習、或最小平方方法中之參數值之資訊。
替代地,一組態可被提供,其中圖像係根據例如影像中之物件之含義而被劃分成例如方塊。在解碼器側,僅部分區域係藉由選擇要解碼之方塊而被解碼。此外,藉由儲存物件之屬性(人、汽車、球等)及視訊中之物件的位置(在相同影像中之座標)作為後設資料,解碼器側可基於該後設資料來識別所要物件之位置且判定哪個或哪些方塊包括彼物件。舉例而言,如圖28中所例示,後設資料可使用不同於像素資料之資料儲存結構來被儲存,諸如HEVC中之輔助增強資訊(supplemental enhancement information;SEI)訊息。此後設資料指示例如主要物件之位置、大小、或色彩。
後設資料可以複數個圖像為單位來儲存,諸如串流、序列或隨機存取單元。解碼器側可獲得例如特定人在視訊中出現的時間,且藉由使時間資訊與圖像單元資訊配合,可識別存在該物件之圖像,且可判定圖像中之物件的位置。
(網頁最佳化)
圖29例示網頁在例如電腦ex111上之顯示螢幕的實例。圖30例示網頁在例如智慧型電話ex115上之顯示螢幕的實例。如圖29及圖30中所例示,網頁可包括鏈接至影像內容之複數個影像鏈接,且網頁之外觀取決於用以查看網頁之裝置而不同。當複數個影像鏈接係可在螢幕上看到時,直至使用者明確地選擇一影像連結、或直至影像連結係處於螢幕之近似中心、或整個影像鏈接適合於該螢幕,顯示設備(解碼器)可顯示包括於內容或I圖像中之靜態影像作為影像鏈接;可使用複數個靜態影像或I圖像來顯示諸如動畫gif之視訊;或可僅接收基礎層,且解碼及顯示視訊。
當一影像鏈接係由使用者所選擇時,顯示設備執行解碼,同時給予基礎層最高優先權。應注意的是,若網頁之HTML碼中存在指示內容係可調式的之資訊,則顯示設備可解碼直至增強層。此外,為了保證即時再現,在做出選擇之前或在頻寬嚴重受限時,顯示設備可藉由僅解碼及顯示前向參考圖像(I圖像、P圖像、前向參考B圖像)來減小在解碼前導圖像時的時間點與顯示經解碼圖像時的時間點之間的延遲(亦即,在內容解碼開始至內容顯示之間的延遲)。更進一步,顯示設備可故意地忽略圖像之間的參考關係,且粗略地解碼所有B及P圖像以作為前向參考圖像,並接著執行正常解碼,此係因為隨時間推移所接收之圖像的數目增大。
(自發驅動)
當傳輸及接收諸如用於汽車之自發驅動或輔助驅動之二維或三維地圖資訊的靜態影像或視訊資料時,除了屬於一或多個層之影像資料以外,接收終端亦可接收關於例如天氣或道路構造的資訊作為後設資料,且在解碼後立即將該後設資料與影像資料相關聯。應注意的是,後設資料可按每個層來被指派,且替代地,可簡單地用影像資料被多工處理。
在此情況下,由於含有接收終端之汽車、無人機、飛機等係行動的,因此接收終端可藉由傳輸指示接收終端之位置之資訊而在基地台ex106至ex110中的基地台之間切換時無縫地接收且執行解碼。此外,根據由使用者所做出之選擇、使用者之情形、及/或連接之頻寬,接收終端可動態地選擇接收後設資料之範圍,或例如更新地圖資訊之範圍。
在內容提供系統ex100中,用戶端可即時地接收、解碼且再現藉由使用者所傳輸之經編碼資訊。
(個別內容之串流傳輸)
在內容提供系統ex100中,除了高影像品質以外,藉由視訊分佈實體所分布的長內容、低影像品質之單播或多播串流傳輸、及來自個人之短內容亦係可能的。來自個人之此類內容很可能在風行性上進一步增加。伺服器可在編碼處理之前首先對內容執行編輯處理,以便優化個別內容。舉例而言,此處理可使用以下組態來被達成。
即時地,當擷取視訊或影像內容的同時,或在已被擷取且累積內容之後,伺服器執行基於原始資料或經編碼資料之辨識處理,諸如擷取誤差處理、場景搜尋處理、含義分析、及/或物件偵測處理。接著,基於辨識處理之結果,伺服器—當經提示時或自動地—編輯內容,內容之實例包括:諸如焦點及/或運動模糊校正的校正;移除低優先權場景,諸如與其他圖像相比亮度較低或離焦的場景;物件邊緣調整;以及色調調整。伺服器基於編輯之結果來編碼經編輯資料。眾所周知,過長的視訊傾向於接收較少視圖。因此,為了將內容保持在隨原始視訊之長度縮放的特定長度內,除了上文所述的低優先權場景以外,伺服器亦可基於影像處理結果而自動地剪除具有低移動的場景。替代地,伺服器可基於對場景含義之分析結果來產生且編碼視訊摘要。
可存在個別內容可包括侵犯版權、道德權、肖像權等之內容的個例。此類個例可導致對創建者不利的情形,諸如當內容係超出由創建者所預期之範疇而共用時。因此,在編碼之前,伺服器可例如編輯影像,以便例如使在螢幕周邊之人的面部模糊或使房子之內部模糊。此外,伺服器可被組配以辨識除了在要被編碼之影像中之經登記人員以外的人之面部,且當此等面部出現在影像中時,可將馬賽克濾波器應用於例如人員之面部。替代地,作為針對編碼之預處理或後處理,使用者可出於版權原因而指定包括人之影像的區域或背景之區域要被處理。伺服器可藉由例如用不同影像替換指定區域或使指定區域模糊來處理該指定區域。若該區域包括人,則該人可在動畫中被追蹤,且該人之頭部區域可在該人移動時用另一影像來被替換。
由於存在針對即時地觀看由個人所製作之內容(其傾向在資料大小上較小)的需求,解碼器首先接收基礎層作為最高優先權,並執行解碼及再現,儘管此操作可能取決於頻寬而不同。當內容被再現兩次或多於兩次時,諸如當解碼器在基礎層之解碼及再現期間接收增強層,且使再現循環時,解碼器可再現包括增強層之高影像品質視訊。若串流係使用此可調式編碼進行編碼,則視訊在處於未選擇狀態時或在視訊之開始時可為低品質的,但視訊可提供體驗,其中串流之影像品質以智慧型方式逐漸地增強。此不限於僅可調式編碼;相同體驗可藉由組配來自用於第一次再現之低品質串流之單一串流及使用第一串流編碼為參考的第二串流而被提供。
(其他實施及應用實例)
編碼及解碼係可藉由通常包括於各終端中之大規模積體電路(large scale integration circuitry;LSI) ex500 (參見圖26)所執行。LSI ex500係可由單一晶片或複數個晶片所組配。用於編碼及解碼動畫之軟體可被整合於可由例如電腦ex111讀取的某一類型之記錄媒體(諸如CD-ROM、可撓性磁碟、或硬碟)中,且編碼及解碼係可使用軟體所執行。此外,當智慧型電話ex115被配備有攝影機時,藉由該攝影機所獲得之視訊資料可被傳輸。在此情況下,該視訊資料係藉由包括於智慧型電話ex115中之LSI ex500所寫碼。
應注意的是,LSI ex500可被組配以下載且啟動一應用程式。在此情況下,終端首先判定其與用以編碼內容之方案是否相容,或其是否能夠執行一特定服務。當終端與內容之編碼方案係不相容時,或當終端係不能夠執行一特定服務時,該終端首先下載編解碼器或應用軟體並接著獲得且再現內容。
除了使用網際網路ex101之內容提供系統ex100之實例以外,至少在以上實施例中所描述的動畫編碼器(影像編碼器)或動畫解碼器(影像解碼器)可在數位廣播系統中被實施。相同的編碼處理及解碼處理可被應用以使用例如衛星來傳輸且接收與經多工處理之音訊及視訊資料所疊加的廣播無線電波,即使此係針對多播所調整,然而單播對於內容提供系統ex100而言更容易。
(硬體組態)
圖31例示圖26中所示之智慧型電話ex115之其他細節。圖32例示智慧型電話ex115之組態實例。智慧型電話ex115包括用於傳輸無線電波至基地台ex110及自基地台ex110接收無線電波的天線ex450、能夠擷取視訊及靜態影像的攝影機ex465、以及顯示經解碼資料(諸如由攝影機ex465所擷取之視訊及由天線ex450所接收之視訊)的顯示器ex458。智慧型電話ex115進一步包括:使用者介面ex466,諸如觸控面板;音訊輸出單元ex457,諸如用於輸出話音或其他音訊之揚聲器;音訊輸入單元ex456,諸如用於音訊輸入之麥克風;記憶體ex467,其能夠儲存經解碼資料,諸如擷取之視訊或靜態影像、記錄之音訊、接收之視訊或靜態影像及郵件以及經解碼資料;以及槽ex464,其係用於授權對網路及各種資料之存取之SIM ex468的介面。應注意的是,外部記憶體可替代記憶體ex467來被使用。
主控制器ex460 (其全面地控制顯示器ex458及使用者介面ex466)、電力供應電路ex461、使用者介面輸入控制器ex462、視訊信號處理器ex455、攝影機介面ex463、顯示器控制器ex459、調變器/解調變器ex452、多工器/解多工器ex453、音訊信號處理器ex454、槽ex464、以及記憶體 ex467係經由匯流排ex470所連接。
當使用者打開電力供應電路ex461之電源按鈕時,智慧型電話ex115被通電成為可操作狀態,且各組件被供應來自電池組之電力。
智慧型電話ex115基於由包括CPU、ROM、及RAM之主控制器ex460所執行的控制來執行用於例如呼叫及資料傳輸的處理。當進行呼叫時,由音訊輸入單元ex456所記錄之音訊信號係由音訊信號處理器ex454來被轉換成數位音訊信號,藉由調變器/解調變器ex452及數位至類比轉換對數位音訊信號應用展頻處理,且藉由傳輸器/接收器ex451應用頻率轉換處理,且經由天線ex450來傳輸所得信號。經接收之資料係藉由調變器/解調變器ex452而被放大、頻率轉換、及類比至數位轉換、反展頻處理,藉由音訊信號處理器ex454而被轉換成類比音訊信號,並接著自音訊輸出單元ex457所輸出。在資料傳輸模式下,舉例而言,文字、靜態影像或視訊資料係基於主體之使用者介面ex466的操作藉由主控制器ex460經由使用者介面輸入控制器ex462所傳輸。類似之傳輸及接收處理被執行。在資料傳輸模式下,當發送視訊、靜態影像、或視訊及音訊時,視訊信號處理器ex455經由在以上實施例中所描述之動畫編碼方法來對儲存於記憶體ex467中的視訊信號或自攝影機ex465輸入的視訊信號進行壓縮編碼,且將經編碼視訊資料傳輸至多工器/解多工器ex453。音訊信號處理器ex454在攝影機ex465在擷取視訊或靜態影像之同時對藉由音訊輸入單元ex456所記錄之音訊信號編碼,且將經編碼音訊資料傳輸至多工器/解多工器ex453。多工器/解多工器ex453使用預定方案來對經編碼視訊資料及經編碼音訊資料進行多工處理、使用調變器/解調變器(調變器/解調變器電路) ex452及傳輸器/接收器ex451來調變及轉換該資料,且經由天線ex450傳輸結果。
當隨附在電子郵件或聊天中之視訊或自網頁所鏈接之視訊被接收例如為了要解碼經由天線ex450所接收的經多工資料時,多工器/解多工器ex453對經多工資料解多工處理以將經多工資料劃分成視訊資料之位元串流及音訊資料之位元串流,經由同步匯流排ex470將經編碼視訊資料供應至視訊信號處理器ex455,且經由同步匯流排ex470將經編碼音訊資料供應至音訊信號處理器ex454。視訊信號處理器ex455使用對應於以上實施例中所描述之動畫編碼方法的動畫解碼方法來解碼視訊信號,且經由顯示器控制器ex459在顯示器ex458上顯示包括於鏈接動畫檔案中之視訊或靜態影像。音訊信號處理器ex454解碼音訊信號且自音訊輸出單元ex457輸出音訊。由於即時串流變得愈來愈風行,可能存在音訊之再現可能取決於使用者之環境而社會上不恰當的個例。因此,作為初始值,僅再現視訊資料,亦即,不再現音訊信號的組態係較佳的;音訊可能僅在接收到輸入時,諸如當使用者點選視訊資料時,被同步及再現。
儘管在以上實例中使用了智慧型電話ex115,但三個其他實施係可設想的:包括編碼器及解碼器兩者之收發器終端;僅包括編碼器之傳輸器終端;以及僅包括解碼器之接收器終端。在數位廣播系統之描述中,給定一實例,其中作為視訊資料係用音訊資料所多工處理之結果所獲得的經多工資料被接收或傳輸。然而,經多工資料可為用除了音訊資料以外的資料所多工處理之視訊資料,諸如與視訊相關之文字資料。此外,本身並非經多工資料之視訊資料可被接收或傳輸。
儘管包括CPU之主控制器ex460係描述為控制編碼或解碼程序,但各種終端常常包括GPU。因此,藉由經由藉由CPU及GPU所共用的記憶體或包括經管理以便允許由CPU及GPU共同使用之位址的記憶體而利用GPU之執行能力來同時處理大區域的組態係可接受的。此使得有可能縮短編碼時間、保持串流之即時性質、以及減少延遲。詳言之,與運動估計、解塊濾波、取樣自適應偏移(SAO)以及變換/量化相關之處理能夠藉由GPU替代CPU以圖像為單位(例如,全部同時)來有效地進行。
由上述討論,將可理解,本發明可以多種實例形式體現,包含但不限於下列:
範例1,一種影像編碼器,其包含:電路;及耦接至該電路之一記憶體;其中該電路在操作時,判定框間預測是否被應用於一當前區塊,當框間預測被應用於該當前區塊時,沿著在該當前區塊中之一第一分割區與一第二分割區之間的一邊界執行一分割程序,該第一分割區具有一非矩形形狀,該分割程序包括:從運動向量候選項之一第一集合來選擇用於該第一分割區之一第一運動向量;使用該第一運動向量來計算沿著該邊界的該第一分割區之一像素之集合的第一值;使用用於該第二分割區之一第二運動向量來計算該像素之集合的第二值;對該等第一值及該等第二值加權;以及使用經加權之該等第一值及經加權之該等第二值對該第一分割區編碼,且當框間預測不被應用至該當前區塊時,該電路在操作時停用該分割程序。
範例2,一種影像解碼器,其包含:電路;及耦接至該電路之一記憶體;其中該電路在操作時,判定框間預測是否被應用於一當前區塊,當框間預測被應用於該當前區塊時,沿著在該當前區塊中之一第一分割區與一第二分割區之間的一邊界執行一分割程序,該第一分割區具有一非矩形形狀,該分割程序包括:從運動向量候選項之一第一集合來選擇用於該第一分割區之一第一運動向量;使用該第一運動向量來計算沿著該邊界的該第一分割區之一像素之集合的第一值;使用用於該第二分割區之一第二運動向量來計算該像素之集合的第二值;對該等第一值及該等第二值加權;以及使用經加權之該等第一值及經加權之該等第二值對該第一分割區解碼,且當框間預測不被應用至該當前區塊時,該電路在操作時停用該分割程序。
範例3,一種非暫時性電腦可讀取媒體,其儲存有一位元串流,該位元串流包括資訊,其中一解碼器依據該資訊沿著在一當前區塊中之一第一分割區與一第二分割區之間的一邊界執行一分割程序,該第一分割區具有一非矩形形狀,該資訊指示該當前區塊的一預測模式,在該分割程序中:用於該第一分割區之一第一運動向量係從運動向量候選項之一第一集合而被選擇出;沿著該邊界的該第一分割區之一像素之集合的第一值係使用該第一運動向量而被計算出;該像素之集合的第二值係使用用於該第二分割區之一第二運動向量而被計算出;以及該像素之集合的第三值係藉由對該等第一值及該等第二值加權而被計算出,其中當框間預測不被應用至該當前區塊時,該解碼器停用該分割程序。
100:編碼器
102:分裂器
104:減法器
106:變換器
108:量化器
110:熵編碼器
112、204:反量化器
114、206:反變換器
116、208:加法器
118、210:區塊記憶體
120、212:迴路濾波器
122、214:圖框記憶體
124、216:框內預測器
126、218:框間預測器
128、220:預測控制器
10、11、12、13、14、15、16、17、18、19、20、21、22、23:區塊
Pred、Pred_L、Pred_U:預測影像
MV:參考影像
MV_L、MV_U、V
0、V
1、MV0、MV1:運動向量
Ref0、Ref1:參考圖像
TD0、TD1、τ
0、τ
1:時間距離
200:解碼器
202:熵解碼器
S1001、S1002、S1003、S1004、S1005、S2001、S2002、S2003、S3001、S3002、S3003、S3004、S3005、S4001、S4002、S4003、S5001、S5002、S5003:步驟
2000:分裂影像區塊之程序
3000:邊界平滑化程序
4000、5000:方法
ex100:內容提供系統
ex101:網際網路
ex102:網際網路服務提供者
ex103:串流伺服器
ex104:通訊網路
ex106、ex107、ex108、ex109、ex110:基地台
ex111:電腦
ex112:遊戲裝置
ex113、ex465:攝影機
ex114:家用電器
ex115:智慧型電話
ex116:衛星
ex117:飛機
ex500:大規模積體電路(LSI)
ex450:天線
ex451:傳輸器/接收器
ex452:調變器/解調變器
ex453:多工器/解多工器
ex454:音訊信號處理器
ex455:視訊信號處理器
ex456:音訊輸入單元
ex457:音訊輸出單元
ex458:顯示器
ex459:顯示器控制器
ex460:主控制器
ex461:電力供應電路
ex462:使用者介面輸入控制器
ex463:攝影機介面
ex464:槽
ex466:使用者介面
ex467:記憶體
ex468:SIM
ex470:匯流排
[圖1] 圖1係例示根據一實施例之編碼器之功能組態的方塊圖。
[圖2] 圖2例示區塊分裂之一個實例。
[圖3] 圖3係指示各種變換類型之變換基底函數的表。
[圖4A] 圖4A例示用於適應性迴路濾波器(adaptive loop filter;ALF)中之濾波器形狀的一個實例。
[圖4B] 圖4B例示用於ALF中之濾波器形狀的另一實例。
[圖4C] 圖4C例示用於ALF中之濾波器形狀的另一實例。
[圖5A] 圖5A例示用於框內預測之一實例中的67種框內預測模式。
[圖5B] 圖5B係例示在重疊區塊運動補償(overlapped block motion compensation;OBMC)處理中執行的預測影像校正程序之一個實例的流程圖。
[圖5C] 圖5C係例示在OBMC處理中執行的預測影像校正程序之一個實例的概念圖。
[圖5D] 圖5D係例示圖框速率升頻轉換(frame rate up conversion;FRUC)處理之一個實例的流程圖。
[圖6] 圖6例示沿著運動軌跡之兩個區塊之間的圖案匹配(兩側匹配)之一個實例。
[圖7] 圖7例示當前圖像中之模板與參考圖像中之區塊之間的圖案匹配(模板匹配)之一個實例。
[圖8] 圖8例示採用均勻線性運動之模型。
[圖9A] 圖9A例示基於鄰近區塊之運動向量來導出各子區塊之運動向量的一個實例。
[圖9B] 圖9B例示用於在合併模式下導出運動向量之程序的一個實例。
[圖9C] 圖9C係例示動態運動向量再新(dynamic motion vector refreshing;DMVR)處理之一實例的概念圖。
[圖9D] 圖9D例示使用藉由局部照明補償(local illumination compensation;LIC)處理執行之明度校正程序的預測影像產生方法之一個實例。
[圖10] 圖10係例示根據一實施例之解碼器之功能組態的方塊圖。
[圖11] 圖11係例示根據一個實施例的將影像區塊分裂成至少包括具有非矩形形狀(例如,三角形)之第一分割區及第二分割區的複數個分割區及執行其他處理之總體程序流程的流程圖。
[圖12] 圖12例示將影像區塊分裂成具有非矩形形狀(例如,三角形)之第一分割區及第二分割區(在所說明實例中亦具有非矩形形狀)的兩種例示性方法。
[圖13] 圖13例示邊界平滑化程序之一個實例,該邊界平滑化程序涉及對基於第一分割區預測的邊界像素之第一值加權及對基於第二分割區預測的邊界像素之第二值加權。
[圖14] 圖14例示邊界平滑化程序之三個另外樣本,該邊界平滑化程序涉及對基於第一分割區預測的邊界像素之第一值加權及對基於第二分割區預測的邊界像素之第二值加權。
[圖15] 圖15係樣本參數(「第一索引值」)及分別藉由該等參數編碼的資訊之集合的表。
[圖16] 圖16係例示參數(索引值)之二進位化的表。
[圖17] 圖17係例示將影像區塊分裂成包括具有非矩形形狀之第一分割區及第二分割區的複數個分割區之程序的流程圖。
[圖18] 圖18例示將影像區塊分裂成包括具有非矩形形狀(在所說明實例中為三角形)之第一分割區及第二分割區的複數個分割區之實例。
[圖19] 圖19例示將影像區塊分裂成包括具有非矩形形狀(在所說明實例中為具有至少五條邊及五個角之多邊形)之第一分割區及第二分割區的複數個分割區之另外實例。
[圖20] 圖20例示邊界平滑化程序之流程圖,該邊界平滑化程序涉及對基於第一分割區預測的邊界像素之第一值加權及對基於第二分割區預測的邊界像素之第二值加權。
[圖21A] 圖21A例示邊界平滑化程序之一實例,其中邊界像素的待加權之第一值係基於第一分割區來預測且待加權之第二值係基於第二分割區來預測。
[圖21B] 圖21B例示邊界平滑化程序之一實例,其中邊界像素的待加權之第一值係基於第一分割區來預測且待加權之第二值係基於第二分割區來預測。
[圖21C] 圖21C例示邊界平滑化程序之一實例,其中邊界像素的待加權之第一值係基於第一分割區來預測且待加權之第二值係基於第二分割區來預測。
[圖21D] 圖21D例示邊界平滑化程序之一實例,其中邊界像素的待加權之第一值係基於第一分割區來預測且待加權之第二值係基於第二分割區來預測。
[圖22] 圖22係例示在編碼器側執行之方法的流程圖,該方法包括基於指示分裂之分割參數而將影像區塊分裂成包括具有非矩形形狀之第一分割區及第二分割區的複數個分割區,及以熵編碼將包括分割參數之一或多個參數寫入至位元串流中。
[圖23] 圖23係例示在解碼器側執行之方法的流程圖,該方法包括:剖析來自位元串流之一或多個參數,該一或多個參數包括指示將影像區塊分裂成包括具有非矩形形狀之第一分割區及第二分割區的複數個分割區之分割參數;及基於分割參數而將影像區塊分裂成複數個分割區;以及解碼第一分割區及第二分割區。
[圖24] 圖24係樣本分割參數(「第一索引值」)之表,該等樣本分割參數分別地指示:將影像區塊分裂成包括具有非矩形形狀之第一分割區及第二分割區的複數個分割區;以及可分別地藉由分割參數聯合編碼的資訊之集合。
[圖25] 圖25係第一參數及第二參數之樣本組合的表,第一參數及第二參數中之一者係指示將影像區塊分裂成包括具有非矩形形狀之第一分割區及第二分割區的複數個分割區之分割參數。
[圖26] 圖26例示用於實施內容分配服務之內容提供系統之總體組態。
[圖27] 圖27例示可調編碼中之編碼結構之一個實例。
[圖28] 圖28例示可調編碼中之編碼結構之一個實例。
[圖29] 圖29例示網頁之顯示螢幕之一實例。
[圖30] 圖30例示網頁之顯示螢幕之一實例。
[圖31] 圖31例示智慧型電話之一個實例。
[圖32] 圖32係例示智慧型電話之組態實例之方塊圖。
3000:邊界平滑化程序
S3001、S3002、S3003、S3004、S3005:步驟
Claims (3)
- 一種影像編碼器,其包含: 電路;及 耦接至該電路之一記憶體; 其中該電路在操作時, 自一編碼樹單元(CTU) 獲得一當前區塊, 判定框間預測是否被應用於該當前區塊, 當框間預測被應用於該當前區塊時,沿著在該當前區塊中之一第一分割區與一第二分割區之間的一邊界執行一分割程序,該第一分割區具有一非矩形形狀,該分割程序包括: 從運動向量候選項之一第一集合來選擇用於該第一分割區之一第一運動向量; 使用該第一運動向量來計算沿著該邊界的該第一分割區之一像素之集合的第一值; 從運動向量候選項之一第二集合來選擇用於該第二分割區之一第二運動向量; 使用用於該第二分割區之該第二運動向量來計算該像素之集合的第二值; 對該等第一值及該等第二值加權;以及 使用經加權之該等第一值及經加權之該等第二值對該第一分割區編碼,且 當框間預測不被應用至該當前區塊時,該電路在操作時停用該分割程序。
- 一種影像解碼器,其包含: 電路;及 耦接至該電路之一記憶體; 其中該電路在操作時, 自一編碼樹單元(CTU) 獲得一當前區塊, 判定框間預測是否被應用於該當前區塊, 當框間預測被應用於該當前區塊時,沿著在該當前區塊中之一第一分割區與一第二分割區之間的一邊界執行一分割程序,該第一分割區具有一非矩形形狀,該分割程序包括: 從運動向量候選項之一第一集合來選擇用於該第一分割區之一第一運動向量; 使用該第一運動向量來計算沿著該邊界的該第一分割區之一像素之集合的第一值; 從運動向量候選項之一第二集合來選擇用於該第二分割區之一第二運動向量; 使用用於該第二分割區之該第二運動向量來計算該像素之集合的第二值; 對該等第一值及該等第二值加權;以及 使用經加權之該等第一值及經加權之該等第二值對該第一分割區解碼,且 當框間預測不被應用至該當前區塊時,該電路在操作時停用該分割程序。
- 一種非暫時性電腦可讀取媒體,其儲存有一位元串流,該位元串流包括資訊,其中一解碼器依據該資訊沿著在一當前區塊中之一第一分割區與一第二分割區之間的一邊界執行一分割程序,該第一分割區具有一非矩形形狀,該資訊指示該當前區塊的一預測模式, 在該分割程序中: 該當前區塊自一編碼樹單元(CTU)所獲得; 用於該第一分割區之一第一運動向量係從運動向量候選項之一第一集合而被選擇出; 沿著該邊界的該第一分割區之一像素之集合的第一值係使用該第一運動向量而被計算出; 用於該第二分割區之一第二運動向量係從運動向量候選項之一第二集合而被選擇出; 該像素之集合的第二值係使用用於該第二分割區之該第二運動向量而被計算出;以及 該像素之集合的第三值係藉由對該等第一值及該等第二值加權而被計算出,其中 當框間預測不被應用至該當前區塊時,該解碼器停用該分割程序。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US62/548,684 | 2017-08-22 | ||
US62/698,810 | 2018-07-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202431840A true TW202431840A (zh) | 2024-08-01 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI842652B (zh) | 影像編碼器、影像解碼器及非暫時性電腦可讀取媒體 | |
TWI836681B (zh) | 影像編碼方法、影像解碼方法及非暫時性電腦可讀取媒體 | |
TWI790273B (zh) | 影像編碼器、影像解碼器、影像編碼方法及影像解碼方法(二) | |
TW202431840A (zh) | 影像編碼器、影像解碼器及非暫時性電腦可讀取媒體 |