[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

TWI805085B - 基於機器學習的圖像解碼中色度子採樣格式的處理方法 - Google Patents

基於機器學習的圖像解碼中色度子採樣格式的處理方法 Download PDF

Info

Publication number
TWI805085B
TWI805085B TW110143122A TW110143122A TWI805085B TW I805085 B TWI805085 B TW I805085B TW 110143122 A TW110143122 A TW 110143122A TW 110143122 A TW110143122 A TW 110143122A TW I805085 B TWI805085 B TW I805085B
Authority
TW
Taiwan
Prior art keywords
chroma
component
luma
image
original
Prior art date
Application number
TW110143122A
Other languages
English (en)
Other versions
TW202228440A (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 TW202228440A publication Critical patent/TW202228440A/zh
Application granted granted Critical
Publication of TWI805085B publication Critical patent/TWI805085B/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution

Landscapes

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

Abstract

本發明涉及視訊編碼和解碼,具體涉及基於機器學習的視訊解碼中色度子採樣格式的處理。對應的裝置和方法能夠對包括亮度分量和解析度低於所述亮度分量的解析度的色度分量的相應圖像部分進行編碼和解碼處理。為了處理這種不同大小的亮度-色度通道,對所述色度分量進行上採樣,使得所獲得的上採樣色度分量具有與一個所述亮度分量的所述解析度匹配的解析度。然後,所述亮度分量和所述上採樣色度分量被編碼到碼流中。為了重建所述圖像部分,從所述碼流解碼所述亮度分量和解析度與所述亮度分量的所述解析度匹配的中間色度分量,然後對所述中間色度分量進行下採樣。因此,子採樣色度格式可以由自動編碼器/自動解碼器框架處理,同時保留亮度通道。

Description

基於機器學習的圖像解碼中色度子採樣格式的處理方法
本發明的實施例大體上涉及圖像或視訊編碼和解碼領域,具體涉及根據經訓練的網路對視訊解碼中具有子採樣色度的顏色格式進行處理。
視訊解碼(視訊編碼和解碼)廣泛用於數位視訊應用,例如廣播數位電視、基於互聯網和移動網路的視訊傳輸、視訊聊天、視訊會議等即時會話應用、DVD和藍光光碟、視訊內容採集和編輯系統以及安全應用的可攜式攝像機。
即使視訊相對較短,也需要大量的視訊資料來描述,當資料要在頻寬容量受限的通信網路中進行資料流或以其它方式傳輸時,這樣可能會造成困難。因此,視訊資料通常要先壓縮然後在現代電信網路中傳輸。由於記憶體資源可能有限,當在存放裝置中儲存視訊時,視訊的大小也可能成為問題。視訊壓縮設備通常在信源側使用軟體和/或硬體,以在發送或儲存之前對視訊資料進行編碼,從而減少用來表示數位視訊圖像所需的資料量。然後,對視訊資料進行解碼的視訊解壓縮設備在目的地側接收壓縮資料。在網路資源有限以及對更高視訊品質的需求不斷增長的情況下,需要改進壓縮和解壓縮技術,這些改進的技術在幾乎不影響圖像品質的情況下能夠提高壓縮比。
最近,機器學習(machine learning,ML)已應用於圖像和視訊解碼。通常,機器學習可以以各種不同的方式應用於圖像和視訊解碼。例如,已經討論了一些端到端優化的圖像或視訊解碼方案。更廣泛地說,機器學習是人工智慧的一個子集,在機器學習中,模型(通常是網路模型)是基於樣本資料(通常稱為訓練資料)構建的。在訓練後,這類基於ML的方法會根據可能尚未用作訓練資料的輸入資料做出預測或決策。這表示在訓練後,ML網路被訓練,稱為經訓練的網路。
存在大量基於ML方法的網路模型,僅舉幾個例子,包括支援向量機(support vector machine,SVM)、神經網路(neural network,NN)、人工神經網路(artificial neural network,ANN)、全連接神經網路(full connected neural network,FCN)、卷積神經網路(convolutional neural network,CNN)等。這類網路通常有共同之處,即它們的網路結構需要多個(即至少一個)網路節點層。因此,一個層的一些節點或所有節點可以連接到在所述一個層之前或之後的一個或多個層的所有節點或一些節點。 希望進一步提高基於經訓練的網路的這種圖像解碼(視訊解碼或靜止圖像解碼)的效率。
本發明的一些實施例提供了以亮度分量和下採樣色度分量作為輸入對圖像部分進行編碼和解碼的方法和裝置。因此,對色度分量進行上採樣以匹配亮度分量,並且經訓練的網路對具有匹配大小的分量進行編碼。這可以使編碼和解碼更高效,因為可以應用具有類似設計(輸入尺寸、解析度)的經訓練的網路。也可以以這種方式保留亮度與色度之間的空間相關性。
上述和其它目的通過獨立申請專利範圍的主題來實現。其它實現方式在從屬申請專利範圍、說明書和附圖中顯而易見。
根據本發明的一個方面,提供了一種用於對圖像部分進行編碼的方法,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述方法包括:對所述色度分量進行上採樣,以獲得解析度與所述亮度分量的所述解析度匹配的上採樣色度分量;將所述亮度分量和所述上採樣色度分量編碼到碼流中。
這提供了大小相等的亮度-色度輸出作為輸出。因此,所述輸出然後可以由具有類似結構,特別是相同輸入解析度的經訓練的網路(例如在機器學習框架內)處理。如果所有顏色分量的解析度相同,則機器學習框架能夠在所有樣本位置以相同的方式利用交叉顏色相關性。在該過程中,亮度通道可以不受影響,在這種情況下,不會出現品質損失。
在一些示例性實現方式中,對色度分量進行上採樣基於亮度分量的樣本。這可以支援基於亮度分量的內容進行上採樣。
根據所述方法的一種示例性實現方式,上採樣還包括通過經訓練的網路對色度分量進行處理。基於經訓練的網路的解碼可以提高性能,這要歸功於可能用所需資料訓練這種網路。
在一種實現方式示例中,通過經訓練的網路進行處理包括向經訓練的網路輸入亮度分量和色度分量,並從經訓練的網路輸出上採樣色度分量。使用亮度分量作為此經訓練的網路的輸入可以保留亮度通道與色度通道之間的交叉分量資訊。
根據一個示例,經訓練的網路包括至少兩個處理層,至少兩個處理層中的第一層根據輸入色度分量進行上採樣,至少兩個處理層中的第二層對所述第一層的輸出連同亮度分量進行處理。組合處理可以改進方式利用亮度與色度之間的相關性,並可以對多個分量進行公共網路設計。
在所述方法的一種實現方式示例中,對第一層的輸出連同亮度分量進行處理包括逐元素添加亮度分量和上採樣色度分量。因此,可以高效地進行使用亮度作為側資訊的色度上採樣,因為亮度包含更多的資訊,例如關於物件形狀的資訊。另外,可能存在於原始解析度較高的亮度中的細節可以在原始子採樣色度中恢復。
在一個示例中,上採樣包括在色度分量的每n排樣本之後插入一排樣本,其中,排為行和/或列,n為等於或大於1的整數。該示例性實現方式可以通過低複雜性和高效的方式每兩行或每兩列上採樣插入某個預定義值。
根據一個示例,上採樣包括在色度分量的每n排樣本之後插入一排值為零的樣本,其中,排為行和/或列,n為等於或大於1的整數。這是一種簡單的上採樣方式,只需將相應的排樣本設置為零。
根據所述方法的另一個實現方式示例,上採樣包括在色度分量的每n排樣本之後插入值等於色度分量中相應最近鄰樣本的值的一排樣本,其中,排為行和/或列,n為等於或大於1的整數。這支持通過考慮特定行和/或列處的相鄰樣本的內容來進一步調整色度上採樣。此外,使用參考色度的最近鄰樣本的插入排樣本的值可以提高色度上採樣的精度,因為使用了參考原始色度的相鄰資訊(由相鄰色度樣本值反映)。
根據一個示例,編碼由變分自動編碼器(variational autoencoder,VAE)執行。VAE可以有利於以非常高效的方式執行與圖像編碼和解碼相關的任務,並且在所需的碼率與重建圖像的品質之間實現良好折衷。
根據本發明的一個方面,提供了一種用於從碼流解碼圖像部分的方法,所述圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量,所述方法包括:從碼流解碼亮度分量和解析度與色度分量的解析度匹配的中間色度分量;對中間色度分量進行下採樣,以獲得所述圖像部分的色度分量。因此,可以根據中間色度分量重建原始色度分量(即子採樣色度)。具體地,具有原始亮度-色度格式的圖像部分可以以高品質重建。因此,解碼器能夠以色度格式提供重建圖像部分作為輸出,色度的解析度(即大小)低於亮度。此外,由於亮度沒有被下採樣,因此Y的亮度資訊和空間資訊大部分得以保留。通常,在解碼側提供的優點可以類似於通過相應編碼方法的對應附加特徵在編碼側提供的優點。
根據一種示例性實現方式,下採樣還包括通過經訓練的網路對中間色度分量進行處理。通過提供基於上採樣色度的碼流,解碼側可以以更高品質和/或更低速率重建圖像(靜止或視訊圖像)。經訓練的網路可以提供自我調整和高效的解碼,從而在相同速率下提供提高的品質或在相同品質下提供提高的速率。
例如,通過經訓練的網路進行處理包括向經訓練的網路輸入中間色度分量,並從經訓練的網路輸出色度分量。因此,經訓練的網路可以在亮度和色度的輸入處以相似的解析度設計,從而降低複雜性,並可以提供低處理開銷。例如,在一些實施例中,可能沒有必要使用亮度作為側資訊以恢復色度。
根據所述方法的一個實現方式示例,經訓練的網路包括至少兩個處理層,其中,至少兩個處理層中的第一層對輸入中間色度分量進行處理;至少兩個處理層中的第二層對第一層的輸出進行下採樣。該示例性網路架構可以根據使用上採樣色度生成的碼流獲得原始解析度。
在另一個示例中,對中間色度分量進行下採樣基於亮度分量的樣本。因此,對色度通道進行下採樣可以考慮亮度通道的內容。
根據所述方法的一個實現方式示例,通過經訓練的網路進行處理包括向經訓練的網路輸入亮度分量。
例如,第一層對中間色度分量連同亮度分量進行處理。因此,一個或多個亮度通道與色度通道之間的交叉分量資訊得以保留。
在所述方法的另一個示例中,下採樣包括在中間色度分量的每n排樣本之後去除一排樣本,其中,排為行和/或列,n為等於或大於1的整數。因此,可以通過簡單地去除相應的排樣本來快速執行中間色度的下採樣。
例如,解碼由變分自動編碼器(variational autoencoder,VAE)執行。因此,可以進行高效解碼,在所需的碼率和/或重建圖像的品質之間實現良好折衷。
根據本發明的一個方面,提供了一種用於對圖像部分進行編碼的編碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述編碼器包括處理電路,所述處理電路用於執行上述或本文中提及的任一編碼方法的步驟。
根據本發明的一個方面,提供了一種用於從碼流解碼圖像部分的解碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的所述解析度的色度分量,所述解碼器包括處理電路,所述處理電路用於執行上文提及或本文所述的任一解碼方法的步驟。
根據本發明的一個方面,提供了一種儲存在非暫態性介質上的電腦程式,所述電腦程式包括代碼,當所述代碼在一個或多個處理器上執行時執行上文提及和本文所述的任一方法的步驟。
根據本發明的一個方面,提供了一種用於對圖像部分進行編碼的編碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述編碼器包括:一個或多個處理器;非暫態性電腦可讀儲存介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,所述一個或多個處理器執行所述程式時,所述程式使所述編碼器執行上文提及和本文所述的任一種編碼方法。
根據本發明的一個方面,提供了一種用於從碼流解碼圖像部分的解碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述解碼器包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,所述一個或多個處理器執行所述程式時,所述程式使所述解碼器執行上文提及和本文所述的任一種解碼方法。
根據本發明的一個方面,提供了一種用於對圖像部分進行編碼的編碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述編碼器包括:上採樣模組,用於對色度分量進行上採樣,以獲得解析度與亮度分量的解析度匹配的上採樣色度分量;編碼模組,將亮度分量和上採樣色度分量編碼到碼流中。
根據本發明的一個方面,提供了一種用於從碼流解碼圖像部分的解碼器,所述圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量,所述解碼器包括:解碼模組,用於從碼流解碼亮度分量和解析度與色度分量的解析度匹配的中間色度分量;下採樣模組,用於對中間色度分量進行下採樣,以獲得所述圖像部分的色度分量。
這些實施例可以對具有亮度分量和上採樣色度分量的圖像部分進行高效編碼和/或解碼。換句話說,待編碼和/或解碼的圖像部分可以具有不同的亮度-色度格式,即亮度通道和色度通道的大小不同。
需要說明的是,本發明不限於特定框架。此外,本發明不限於圖像或視訊壓縮,並且也可以應用於物件檢測、圖像生成和識別系統。
本發明可以在硬體和/或軟體中實現。
為了清楚起見,任一上述實施例可以與上述其它任何一個或多個實施例組合以創建在本發明範圍內的新實施例。
附圖及以下說明中將詳細描述一個或多個實施例。其它特徵、目的和優點在說明書、附圖和申請專利範圍中是顯而易見的。
以下描述中,參考形成本發明一部分並以說明的方式示出本發明的實施例的具體方面或可以使用本發明的實施例的具體方面的附圖。應理解,本發明的實施例可在其它方面中使用,並且可以包括附圖中未描繪的結構變化或邏輯變化。因此,以下詳細描述不應以限制性的意義來理解,本發明的範圍由所附權利要求書界定。
例如,可以理解的是,與描述方法有關的公開內容可以對用於執行所述方法的對應設備或系統也同樣適用,反之亦然。例如,如果描述一個或多個具體方法步驟,則對應的設備可以包括一個或多個單元(例如,功能單元)來執行所描述的一個或多個方法步驟(例如,一個單元執行一個或多個步驟,或多個單元各自執行多個步驟中的一個或多個步驟),即使附圖中未明確描述或示出這種一個或多個單元。另一方面,例如,如果根據一個或多個單元(例如,功能單元)來描述具體裝置,則對應的方法可以包括一個步驟來執行一個或多個單元的功能(例如,一個步驟執行一個或多個單元的功能,或多個步驟各自執行多個單元中的一個或多個單元的功能),即使附圖中未明確描述或示出這種一個或多個單元。此外,可以理解的是,除非另外明確說明,否則本文中所描述的各個示例性實施例和/或方面的特徵可以相互組合。
下文簡要概述了整個本發明中使用的一些技術術語。
視訊序列的顏色格式:顏色格式描述視訊序列中顏色的具體組織。通常,顏色格式表示為描述顏色表示方式的數學模型,例如,表示為數字元組。例如,RGB格式描述幀(圖像)與紅色(red,R)、綠色(green,G)和藍色(blue,B)顏色分量組合。接著,YUV格式描述幀與一個亮度分量(Y)和兩個色度分量(U、V)組合。因此,亮度是指樣本、圖元或一組樣本/圖元(如圖像或圖像部分)的亮度分量。通常,顏色格式可以具有一個或多個顏色分量。
RGB:RGB顏色格式是加色模型,包含紅色(R)、綠色(G)和藍色(B)分量。RGB顏色空間中的圖像通常具有在相應寬度和高度方面具有相同大小的分量,例如,幀的寬度和高度對應於樣本或圖元數,從而對應於解析度。這些RGB分量可以通過各種方式添加,以表示廣泛的顏色陣列。
YUV:YUV顏色格式包含三個分量,其中,亮度分量Y是指亮度資訊(即亮度),色度分量U(藍色投影)和V(紅色投影)是指色度或顏色資訊。在顏色資訊的數位編碼中,YUV可以通過線性矩陣直接從RGB轉換,如下所示。
Figure 02_image001
換句話說,每個YUV分量可以由RGB分量的線性組合寫入。因此,在這種轉換之後,YUV的三個分量也具有相同的大小(寬度和高度)。
色度子採樣:色度子採樣是通過實現色度資訊(U、V)的解析度低於亮度資訊(Y)的解析度來編碼圖像的實踐。對色度分量進行子採樣的原因在於利用人類視覺系統對顏色差異的敏銳度低於對亮度的敏銳度。因此,就亮度視覺系統而言,當使用YUV(或YCbCr)格式時,亮度分量可以視為最重要的通道。
色度子採樣可以顯著減少色度分量信號。常用的色度子採樣格式簡要介紹如下:
YUV 4:4:4(或簡稱為YUV444)是指不進行色度子採樣,即Y、U和V分量具有相同的大小(寬度和高度),如圖1(a)所示。
YUV 4:2:2(或簡稱為YUV422)是指沿水準方向對色度分量(U和V)進行因數2的子採樣,如圖1(b)所示。例如,當亮度分量的大小為w × h時,其中,w表示亮度分量的寬度,h表示亮度分量的高度,YUV 4:2:2中的色度分量U和V各自的大小為w/2 × h(寬度變為亮度分量的一半,即w/2,與亮度分量的高度h相同,例如,就樣本或圖元的數量而言)。在這種情況下,每個色度分量都為矩形。
YUV 4:2:0(或簡稱為YUV420)是指沿水準方向和垂直方向都對色度分量(U和V)進行因數2的子採樣,如圖1(c)所示。例如,當亮度分量的大小為w × h時,其中,w表示亮度分量的寬度,h表示亮度分量的高度,YUV 4:2:0的色度分量各自的大小為w/2 × h/2(寬度變為亮度分量的一半,即w/2,高度變為亮度分量的一半,即h/2,例如,就樣本或圖元的數量而言)。在這種情況下,每個色度分量都為正方形。
需要說明的是,YUV 4:2:0色度子採樣是視訊解碼中最常用的色度子採樣方法。通常,子採樣可以是捕獲圖像的圖像感測器的構建結果。例如,一些感測器提供了更多的圖元來捕獲某些顏色分量。但是,子採樣也可以是進一步處理捕獲圖像的結果。
上述YUV格式在本發明中用作亮度-色度分量(通道)的示例,其中,相應色度具有與亮度通道不同的解析度(即不同的大小)。需要說明的是,通常,僅對兩個色度分量中的一個進行子採樣,而另一個則保持其大小。此外,可以沿垂直方向對色度分量進行子採樣,代替圖1(b)所示僅沿水準方向對色度分量進行子採樣。
人工神經網路
人工神經網路(artificial neural network,ANN)或連接主義系統是一類計算系統,大致受到構成動物大腦的生物神經網路的啟發。這些系統通過考慮示例來“學習”執行任務,通常不使用任務特定規則進行程式設計。例如,在圖像識別中,這些系統可以通過分析手動標記為“貓”或“無貓”的示例性圖像,並使用結果識別其它圖像中的貓來學習識別包含貓的圖像。這些系統如此做時沒有對貓的任何先驗知識,例如,關於貓有毛皮、尾巴、鬍鬚和貓樣臉的先驗知識。而是會從處理的示例中自動生成識別特徵。
ANN是基於稱為人工神經元的連接單元或節點的集合,這些單元或節點以鬆散方式建模生物大腦中的神經元。每個連接如同生物大腦中的突觸一樣,可以向其它神經元傳輸信號。接收信號的人工神經元然後處理該信號,並可以向與該人工神經元連接的神經元傳遞信號。
在ANN實現方式中,連接處的“信號”是實數,每個神經元的輸出通過其輸入之和的某個非線性函數計算。這些連接稱為邊。神經元和邊通常具有隨著學習進行調整的權重。權重增加或減少連接處信號的強度。神經元可以具有閾值,使得只有在聚合信號超過該閾值時才會發送信號。通常,神經元被聚集成層。不同的層可以對其輸入進行不同的變換。信號可能在多次遍歷各層之後從第一層(輸入層)傳輸到最後一層(輸出層)。
ANN方法的最初目標是以與人腦相同的方式解決問題。隨著時間的推移,關注點轉移到執行特定任務上,導致偏離生物學。ANN已經用於各種任務,包括電腦視覺、語音辨識、機器翻譯、社交網路過濾、棋盤和視訊遊戲、醫學診斷,甚至在傳統上被認為是為人類保留的活動,如繪畫。
卷積神經網路
“卷積神經網路”(convolutional neural network,CNN)的名稱表明該網路採用了一種稱為卷積的數學運算。卷積是一種專門的線性運算。卷積網路是簡單的神經網路,在其至少一個層中使用卷積代替一般矩陣乘法。
圖2A示意性地示出了神經網路(如CNN)的處理的一般概念。卷積神經網路由輸入層和輸出層以及多個隱藏層組成。輸入層是提供輸入(例如圖2A所示的圖像的一部分)進行處理的層。CNN的隱藏層通常由一系列卷積層組成,這些卷積層與乘法或其它點積進行卷積。層的結果是一個或多個特徵圖(圖2A中為f.maps),有時也稱為通道。一些或所有層中可能涉及子採樣。因此,特徵圖可能會變小,如圖2A所示。CNN中的啟動函數通常是修正線性單元(rectified linear unit,RELU)層,隨後是附加卷積,例如池化層、全連接層和歸一化層,稱為隱藏層,因為它們的輸入和輸出被啟動函數和最終卷積掩蓋。雖然層被通俗地稱為卷積,但這只是根據慣例。從數學上講,它在技術上是滑動點積或互相關。這對矩陣中的索引具有重要意義,因為它會影響在特定索引點確定權重的方式。
當對CNN進行程式設計以處理圖像時,如圖2A所示,輸入是形狀(圖像數量)×(圖像寬度)×(圖像高度)×(圖像深度)的張量。然後,在通過卷積層後,圖像被抽象為特徵圖,具有形狀(圖像數量)×(特徵圖寬度)×(特徵圖高度)×(特徵圖通道)。神經網路內的卷積層應具有以下屬性:由寬度和高度定義的卷積核(超參數);輸入通道和輸出通道的數量(超參數);卷積濾波器(輸入通道)的深度應等於輸入特徵圖的數量通道(深度)。
在過去,使用傳統的多層感知器(multilayer perceptron,MLP)模型進行圖像識別。MLP也稱為全連接神經網路(fully connected neural network,FCN)。但是,由於節點之間的完全連接,它們受到了高維度的影響,並且在高解析度圖像中無法充分擴展。具有RGB顏色通道的1000×1000圖元圖像具有300萬個權重,權重太高,無法在完全連接的情況下高效地進行大規模處理。因此,MLP/FCN往往容易對資料進行過擬合。由於層的每個節點(感知器)將相鄰層的所有節點的輸出作為輸入,因此FCN的網路架構不考慮資料的空間結構(例如,跨越層的節點),以與靠近的圖元相同的方式處理相距較遠的輸入圖元。這忽略了圖像資料中的參考局部性,無論是在計算上還是在語義上。因此,神經元的完全連接對於由空間局部輸入模式主導的圖像識別等目的是浪費的。
卷積神經網路是多層感知器的生物學啟發變體,專門用於類比視覺皮層的行為。這些模型通過利用自然圖像中存在的強空間局部相關性,減少了MLP架構帶來的挑戰。卷積層是CNN的核心構建塊。該層的參數由一組可學習濾波器(上述核)組成,這些濾波器具有一個小的接受視野,但擴展到輸入卷的整個深度。在前向傳遞期間,每個濾波器在輸入卷的寬度和高度上卷積,計算濾波器的條目與輸入之間的點積,並生成該濾波器的二維啟動圖。因此,網路學習濾波器,這些濾波器在輸入中的某個空間位置處檢測到某個特定類型的特徵時啟動。
沿深度維度堆疊所有濾波器的啟動圖形成卷積層的完整輸出卷。因此,輸出卷中的每個條目也可以解釋為神經元的輸出,該神經元查看輸入中的小區域,並與同一啟動圖中的神經元共用參數。特徵圖或啟動圖是給定濾波器的輸出啟動。特徵圖和啟動圖含義相同。在一些論文中,它被稱為啟動圖,因為它是對應於圖像不同部分的啟動的圖,也是特徵圖,因為它也是圖像中找到某種特徵的映射。高啟動表示找到了某個特徵。
CNN的另一個重要概念是池化,這是非線性下採樣的一種形式。有幾個非線性函數來實現池化,其中最常見的是最大池化。它將輸入圖像劃分為一組非重疊矩形,並對於每個這種子區域輸出最大值。
直觀地講,特徵的確切位置不如其相對於其它特徵的粗略位置重要。這就是在卷積神經網路中使用池化的想法。池化層用於逐步減小表示的空間大小,減少網路中的參數數量、記憶體佔用和計算量,從而也控制過擬合。在CNN架構中,通常在連續的卷積層之間週期性插入池化層。池化操作提供了另一種形式的平移不變性。
池化層在輸入的每個深度切片上獨立運行,並調整其空間大小。最常見的形式是池化層,應用大小為2×2的濾波器,步幅為在輸入中每個深度切片處2個下採樣樣本,沿寬度和高度均為2個樣本,捨棄75%的啟動。在這種情況下,每個最大值操作都超過4個數字。深度維度保持不變。
除了最大池化之外,池化單元還可以使用其它函數,例如平均池化或ℓ2-norm池化。平均池化在過去經常使用,但與最大池化相比,最近已經鮮少使用,實際上後者表現更好。由於表示大小的大幅減少,最近有一種趨勢是使用較小的濾波器或完全捨棄池化層。“感興趣區域”池化(也稱為ROI池化)是最大池化的變體,其中,輸出大小是固定的,輸入矩形是參數。池化是卷積神經網路基於Fast R-CNN架構進行目標檢測的重要組成部分。
上述ReLU是修正線性單元的縮寫,它應用非飽和啟動函數。它通過將負值設置為零,有效地從啟動圖中去除這些負值。它增加了決策函數和整體網路的非線性屬性,而不影響卷積層的接受視野。其它函數也用於增加非線性,例如飽和雙曲正切和sigmoid函數。ReLU通常比其它函數更受歡迎,因為它訓練神經網路的速度快幾倍,而不會對泛化精度造成重大影響。
在經過幾個卷積層和最大池化層之後,神經網路中的高階推理通過全連接層完成。全連接層中的神經元與前一層中的所有啟動都有連接,如常規(非卷積)人工神經網路中所示。因此,它們的啟動可以作為仿射變換計算,矩陣乘法之後跟偏置偏移(學習或固定偏置項的向量加法)。
“損失層”指定訓練如何懲罰預測(輸出)標籤與真實標籤之間的偏差,通常是神經網路的最後一層。可以使用適合不同任務的各種損失函數。Softmax損失用於預測K個互斥類的單個類。Sigmoid交叉熵損失用於預測[0, 1]中的K個獨立概率值。歐氏損失(Euclidean loss)用於回歸到實值標籤。
自動編碼器和無監督學習
自動編碼器是人工神經網路的一種,用於以無監督的方式學習高效的資料解碼。其示意圖如圖2B所示。自動編碼器旨在通過訓練網路忽略信號“雜訊”來學習一組資料的表示(編碼),通常用於降維。與簡化側一起,學習重建側,其中,自動編碼器嘗試從簡化的編碼中生成盡可能接近其原始輸入的表示,因此得名。在最簡單的情況下,給定一個隱藏層,自動編碼器的編碼器級獲取輸入
Figure 02_image003
並將其映射到
Figure 02_image005
Figure 02_image007
此圖像
Figure 02_image005
通常稱為代碼、潛在變數或潛在表示。此處,
Figure 02_image009
是逐元素啟動函數,例如sigmoid函數或修正線性單元。
Figure 02_image011
是權重矩陣,
Figure 02_image013
是偏置向量。權重和偏置通常經隨機初始化,然後在訓練期間通過反向傳播反覆運算更新。之後,自動編碼器的解碼器級將h映射到與
Figure 02_image003
相同的形狀的重建
Figure 02_image015
Figure 02_image017
其中,解碼器的
Figure 02_image019
Figure 02_image021
Figure 02_image023
可以與編碼器的對應
Figure 02_image009
Figure 02_image011
Figure 02_image013
無關。
變分自動編碼器模型對潛在變數的分佈做出了強假設。這些模型使用變分方法進行潛在表示學習,這產生了額外的損失分量和用於訓練演算法的特定估計器,稱為隨機梯度變分貝葉斯(stochastic gradient variational Bayes,SGVB)估計器。假設資料由有向圖模型
Figure 02_image025
生成,並且編碼器正在學習後驗分佈
Figure 02_image027
的近似
Figure 02_image029
,其中,
Figure 02_image031
Figure 02_image033
分別表示編碼器(識別模型)和解碼器(生成模型)的參數。VAE的潛在向量的概率分佈通常比標準自動編碼器更接近匹配訓練資料的概率分佈。VAE的目標具有以下形式:
Figure 02_image035
此處,
Figure 02_image037
表示KL散度(Kullback-Leibler divergence)。潛在變數的先驗通常設置為中心各向同性多變數高斯(centered isotropic multivariate Gaussian)
Figure 02_image039
。通常,對變分和似然分佈的形狀進行選擇,使得它們為因數化高斯:
Figure 02_image041
Figure 02_image043
其中,
Figure 02_image045
是編碼器輸出,而
Figure 02_image047
Figure 02_image049
)是解碼器輸出。
人工神經網路領域,尤其是卷積神經網路的最新進展使研究人員有興趣將基於神經網路的技術應用於圖像和視訊壓縮任務。例如,提出了端到端優化的圖像壓縮,使用基於變分自動編碼器的網路。因此,資料壓縮被認為是工程中一個基本且充分研究的問題,通常是為了為給定的離散資料集設計具有最小熵的代碼。該方案在很大程度上依賴於對資料概率結構的瞭解,因此該問題與概率源建模密切相關。但是,由於所有實用代碼都必須具有有限熵,因此連續值資料(例如圖像圖元強度的向量)必須量化為離散值的有限集,這引入了誤差。在這種情況下,即失真壓縮問題,必須權衡兩個相互矛盾的成本:離散化表示的熵(速率)和量化引起的誤差(失真)。不同的壓縮應用,例如資料儲存或通過有限容量通道的傳輸,需要不同的速率-失真權衡。速率和失真的聯合優化較困難。如果沒有進一步的約束,高維空間中最優量化的一般問題就難以解決。因此,大多數現有的圖像壓縮方法通過如下方式來操作:將資料向量線性變換為合適的連續值表示,獨立量化其元素,然後使用無損熵編碼編碼生成的離散表示。由於變換的核心作用,此方案稱為變換解碼。例如,JPEG對區塊使用離散余弦變換,JPEG 2000使用多尺度正交小波分解。通常,變換解碼方法的三個組成部分(變換、量化器和熵編碼)分別進行優化(通常通過手動參數調整)。如HEVC、VVC和EVC等現代視訊壓縮標準也使用變換表示對預測後的殘差信號進行解碼。這幾個變換用於此目的,例如離散余弦變換(discrete cosine transform,DCT)和離散正弦變換(discrete sine transform,DST),以及低頻不可分離手動優化變換(low frequency non-separable manually optimized transform,LFNST)。
在上述類型的網路中,已證明CNN有利於視訊/圖像編(解)碼,並在變分自動編碼器(variational autoencoder,VAE)中實現,如J. Balle在“利用尺度超優先順序的變分圖像壓縮(Variational image compression with a scale hyperior)”(arXiv preprint arXiv:1802.01436 (2018))中所述。在下文中,我們參考了“J.Balle”的這一文獻。
VAE結構是為基於深度學習的圖像壓縮而設計的,構成了一個相當高效的結構。由於輸入到VAE的圖像的顏色格式通常是RGB,不進行子採樣,因此三個分量/通道具有相同的大小(寬度和高度)。因此,可以直接處理和重建作為VAE結構的輸入提供的RGB顏色格式圖像。
在J.Balle中,描述了一種基於變分自動編碼器(variational autoencoder,VAE)的端到端可訓練圖像壓縮模型。該模型包含了超先驗,以高效地捕獲潛在表示中的空間依賴關係。這種超先驗涉及也發送到解碼側的側資訊,這是一個對幾乎所有現代圖像轉碼器都通用的概念,但在使用ANN的圖像壓縮中基本上沒有經過探索。與現有的自動編碼器壓縮方法不同,該模型與底層自動編碼器聯合訓練複雜的先驗。
VAE框架可以認為是一個非線性變換解碼模型。變換過程主要可分為四個部分。這在示出VAE框架的圖2C中進行了例示。
圖2C示出了包括超先驗模型的網路架構。左側(ga、gs)示出了圖像自動編碼器架構(VAE),右側(ha、hs)對應於實現超優先順序的自動編碼器。因數化先驗模型使用相同的架構進行分析和合成變換ga和gs。Q表示量化,AE、AD分別表示算術編碼器和算術解碼器。
編碼器使輸入圖像x進行ga,產生具有空間變化標準差的回應y(潛在表示)。編碼ga包括多個卷積層,具有子採樣和作為啟動函數的廣義除法歸一化(generalized divisive normalization,GDN)。具體而言,編碼器ga(1)通過函數y = f (x)將圖像x映射到潛在表示y中。量化器Q(2)將潛在表示變換為離散值
Figure 02_image051
= Q(y)。
將回應饋送到ha中,總結z中的標準差分佈。然後量化、壓縮,並作為側資訊傳輸z。熵模型,或超編碼器/解碼器ha(也稱為超先驗)(3)估計
Figure 02_image051
的分佈,以獲得無損熵源解碼可實現的最小速率。超先驗的另一個邊資訊定義為z = ha (y),其量化為
Figure 02_image053
= Q(z)。然後,編碼器使用量化向量
Figure 02_image053
來估計
Figure 02_image055
,即標準差的空間分佈,用於獲得算術解碼(arithmetic coding,AE)的概率值(或頻率值),並使用它來壓縮和傳輸量化圖像表示
Figure 02_image051
(或潛在表示)。使用算術解碼(arithmetic coding,AE)將超先驗的
Figure 02_image051
和側信息
Figure 02_image053
包括在碼流中。
在VAE結構的解碼側,即圖2C所示的gs和hs,解碼器首先通過算術解碼器從碼流解析
Figure 02_image053
來從壓縮信號中恢復
Figure 02_image053
。然後,用於算術解碼器(arithmetic decoder,AD)作為VAE中的參數的
Figure 02_image055
重建為
Figure 02_image055
= hs (
Figure 02_image053
)。類似地,算術解碼器使用
Figure 02_image055
作為算術解碼器參數從碼流解析
Figure 02_image051
,以便為其提供正確的概率估計,從而確保
Figure 02_image051
的成功恢復。最後,重建圖像
Figure 02_image057
通過
Figure 02_image057
= gs (
Figure 02_image051
)生成。
大多數基於深度學習的圖像/視訊壓縮系統在將信號轉換為二進位數字字(位元)之前會降低信號的維度。例如,在VAE框架中,進行非線性變換的編碼器將輸入圖像x映射到y中,其中,y的寬度和高度小於x。由於y的寬度和高度較小,因此大小較小,從而減小了信號的維度。因此,壓縮信號y更容易。壓縮的一般原理在圖2C中進行了例示。潛在空間
Figure 02_image051
是編碼器ga的輸出和解碼器gs的輸入,表示壓縮資料。需要說明的是,潛在空間的大小通常遠小於輸入信號大小。
輸入信號大小的減小在圖2C中例示,該圖2C表示基於深度學習的編碼器和解碼器。如上所述,輸入圖像x對應於輸入資料,該資料是圖2C所示編碼器的輸入。經變換的信號y對應於潛在空間
Figure 02_image051
,該潛在空間的維度小於輸入信號。每個圓列分別表示編碼器或解碼器處理鏈中的一個層。每個層中的圓數表示該層信號的大小或維度。
從圖2C中可以明顯看出,編碼操作對應於輸入信號大小的減小,而解碼操作對應於圖像原始大小的重建。
在VAE結構的輸入處,使用一個卷積網路層(conv N×5×5/2↓)。需要說明的是,“N×5×5/2↓”是指用於指定層(此處為CNN)的標記法。在該示例中,定義了具有5×5卷積層的CNN,具有N個通道作為輸出。輸出在兩個維度上都按2因數下採樣,如向下箭頭所示。由於這個卷積層,輸入圖像的所有三個分量的大小相同(例如RGB或YUV444)。否則,該示例中的卷積網路層不會將具有不同大小的圖像(或圖像部分)作為輸入,例如,對於YUV422或YUV 420格式通常如此。
類似地,如圖2C所示,由於VAE結構末尾的最後一個反卷積網路層(conv 3×5×5/2↑),輸出圖像(重建圖像)的三個分量的大小相同。
因此,當使用現有的VAE結構壓縮視訊序列中的幀時會存在問題。例如,VAE結構可能不會直接處理色度子採樣的顏色格式視訊幀(例如,YUV 422、YUV420),因為三個分量的大小不相同。如上所述,在某些情況下,輸入卷積網路層可能不會處理輸入圖像,導致輸出圖像的大小可能與輸入圖像不同。
MPEG提案(Ankitesh K. Singh等人“M55267: [DNNVC]處理基於DNN的視訊解碼的YUV420輸入格式的研究(M55267: [DNNVC] A study of handling YUV420 input format for DNN-based video coding)”)討論了針對視訊序列的YUV 420顏色格式幀的特定情況部分解決上述問題的方法。
圖3示出了MPEG提案的一種方法。在編碼側,使用卷積網路層conv N×5×5/2↓(即卷積核為5×5,輸出通道為N,輸出在兩個維度上都按2下採樣)沿水準和垂直方向對亮度分量按因數2進行下採樣。色度分量由卷積網路層conv N×5×5/1↓處理,而不進行下採樣(就CNN標記法而言,這由“/1”表示,即除以1)。使輸出Y、U和V的大小相同,並可以由VAE結構處理。在解碼側,使用conv 1×5×5/2↑沿水準和垂直方向按因數2對亮度輸出Y分量進行上採樣。繼而,色度分量通過conv 2×5×5/1↑處理,而不進行上採樣。因此,最終重建圖像的大小與原始輸入YUV420圖像相同。
從上述處理可以明顯看出,圖3的方法通過對亮度分量進行下採樣,提供了大小相同的亮度分量和色度分量。換句話說,處理了對人類視覺系統最重要並攜帶視訊幀的最詳細資訊的分量。這會導致重要的亮度資訊被捨棄,從而可能導致品質損失。
但是,一旦幀的分量和/或通道具有不同的解析度(即大小),VAE結構就不能再壓縮視訊序列的這一幀。特別是,VAE結構不能直接處理色度子採樣的顏色格式視訊幀(例如,YUV 422、YUV420),因為三個分量的大小不相同。如上所述,輸入圖像(包括其圖像部分)不能由輸入卷積網路層處理,輸出圖像的大小與輸入圖像不相同。
第一實施例
本發明的一些實施例可以提供處理子採樣色度分量的上述問題的方案,適用于現有ANN或VAE框架結構。
根據本發明的一個實施例,提供了一種用於對圖像部分進行編碼的方法,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量。
圖像部分是指圖像(圖像)的多個數量的樣本,其中所述數量(量)小於所述圖像的樣本總數。需要說明的是,本文的術語“圖像(picture)”和“圖像(image)”具有相同的含義。圖像部分可以包括圖像的一些(一個或多個)或所有樣本。本文的術語“樣本”和“圖元”具有相同的含義。圖像可以是靜止圖像或視訊圖像,例如對應於視訊序列的幀(運動圖像)。
圖像部分可以包括一個或多個顏色分量,例如亮度分量和一個或多個色度分量。例如,亮度-色度格式YUV420的圖像部分包括兩個色度分量U和V(也稱為色度通道),如上所述。相對於整個圖像,圖像部分的色度解析度可以低於亮度通道的解析度。或者,參考圖像的一部分,色度解析度可以低於亮度通道的解析度。換句話說,在表示圖像中捕獲的一部分場景時,亮度樣本的數量可以多於色度樣本(相同色度)。解析度可以由二維(two-dimensional,2D)亮度通道的大小(尺寸)或2D色度通道的大小給出。這通常通過2D圖像內亮度樣本或色度樣本沿x-y方向的樣本數或樣本總數給出。相對解析度可以指定為亮度樣本和色度樣本的數量之間的比率,如上所述,例如4:2:0或4:2:2等。需要說明的是,儘管本文描述了亮度通道和色度通道的一些示例性實施例,但本發明並不限於此。通常,除了或代替一個或多個顏色分量,可以如本發明中所述處理如深度等其它通道。
該方法在圖13中示出,包括步驟1310:對色度分量進行上採樣,以獲得解析度與亮度分量的解析度匹配的上採樣色度分量。上採樣色度分量也稱為中間色度分量。解析度的匹配可以對應於亮度分量的尺寸匹配。該方法還包括步驟1320:將亮度分量和上採樣色度分量編碼到碼流中。
在上採樣之前,可以獲得亮度分量的解析度。可以通過從記憶體或輸入圖像的碼流等讀取解析度來確定解析度,從而獲得亮度分量的解析度。色度分量的解析度可以通過類似的方式獲得。包括亮度通道和色度通道的相應圖像部分的解析度可以與記憶體中或通常任何類型的存儲介質中的相應通道一起指示。相應通道的解析度可以根據樣本數提供。或者或另外,通道解析度可以根據參考圖像大小(可以在碼流中指示或以另一種方式獲得)(即所述圖像的所有樣本)的比率提供。
上述編碼可以由變分自動編碼器(variational autoencoder,VAE)執行。本領域已知VAE可以以高效的方式執行與圖像編碼和解碼相關的任務,並且在所需的碼率與重建圖像的品質之間實現良好折衷。通過對子採樣色度分量(即解析度低於亮度通道的解析度的色度)進行上採樣,使得調整大小的色度具有與亮度相同的解析度,原始子採樣的YUV顏色格式可以由VAE編碼。圖2C所示的VAE的編碼器部分然後可以以上文參考圖2C所述的方式處理相應的大小相等的三通道輸入。在該過程中,亮度通道保持不受影響,因此可以保留亮度提供的可能重要的圖像資訊。
但是,需要說明的是,VAE的編碼只是可能的有利實現方式之一。這並不是為了限制本發明,本發明也可以有效地與其它類型的自動編碼器一起工作,例如具有圖2B所示結構的自動編碼器。此外,本發明不限於自動編碼器,可以應用於任何基於ANN的網路,或通常應用於任何經訓練的網路。原則上,本發明可應用於任何類型的編碼器或解碼器。
在所述方法的一種示例性實現方式中,對色度分量進行上採樣基於亮度分量的樣本。這表示所述上採樣基於亮度樣本的值,因此是內容自我調整的。亮度樣本可以指一個或多個亮度樣本。這包括使用所有亮度樣本進行上採樣。
色度上採樣還可以包括通過經訓練的網路處理色度分量。大小均衡可以包括將亮度分量和色度分量輸入經訓練的網路,並從經訓練的網路輸出上採樣色度分量。使用亮度分量作為此經訓練的網路的輸入可以保留亮度通道與色度通道之間的交叉分量資訊。
編碼側的經訓練的網路可以是適合上採樣的任何類型的網路。例如,這包括人工神經網路(artificial neural network,ANN),例如全連接或稀疏神經網路、卷積神經網路(convolutional neural network,CNN)等。特別是,CNN已成功應用於圖像處理任務以進行圖像編碼和解碼。用於色度上採樣的經訓練的網路也可以稱為大小均衡網路,因為它提供了解析度與亮度通道的解析度匹配的調整大小的色度分量(即中間色度分量)作為輸出。換句話說,在大小均衡網路處理之後,所有輸出的亮度-色度通道具有相同的解析度(即大小)。但是,本發明不限於這種上採樣。如稍後所示,上採樣有幾種可能的有利實現方式。術語“經訓練網路”是指通過機器學習預先訓練的一種網路類型。這種網路也可以是利用輸入進行機器學習(有監督或無監督)的可訓練網路。但是,經訓練的網路可以通過配置權重而不對同一網路進行訓練來提供,例如通過從存儲介質獲得權重。權重可以通過訓練類似的網路預先獲得並儲存。或者,權重(也稱為係數)可以通過使用數學濾波器(例如維納濾波器(Wiener filter)或卡爾曼濾波器(Kalman filter)等)來推導。另一種選擇是通過使用變換層,例如離散余弦變換(discrete cosine transform,DCT)或離散正弦變換(discrete sine transform,DST)推導權重。雖然變換層可以包括在經訓練的網路中,但相應的權重可以是固定係數,並可以視為參數。需要說明的是,DCT和DST僅僅是示例,通常可以應用正交酉變換等任何合適的已知變換,例如阿達馬變換(Hadamard transformation)、快速傅裡葉變換(fast Fourier transformation,FFT)、離散傅裡葉變換(discrete Fourier transformation,DFT),或通過修改上述變換以符合一些實現約束(例如數字表示和位元深度)獲得的變換,或K-L變換(Karhunen-Loève transformation)等。
如下文進一步討論的,可以在經訓練的網路的第一層(或其它地方)中進行的上採樣可以使用雙線性濾波器或另一種線性或非線性插值濾波器,而不是基於最近鄰的濾波方法。最近鄰濾波可以視為插值濾波器的簡化版本。可以另外或替代使用其它超解析度方法。
例如,在編碼側,使用大小均衡網路層將子採樣的顏色格式視訊幀(例如YUV420、YUV422等)的色度分量均衡為亮度分量的大小。
在一種示例性實現方式中,經訓練的網路包括至少兩個處理層。在兩個處理層中,第一層用於根據輸入色度分量進行上採樣,第二層用於對所述第一層的輸出連同亮度分量進行處理。此處的術語“第一”和“第二”僅僅是標籤,不一定對應於層序列中網路的第一層和第二層。在所述第一層與第二層之間可以存在一些其它的一個或多個層。
在一種實現方式示例中,對第一層的輸出連同亮度分量進行處理包括逐元素添加亮度分量和上採樣色度分量。因此,可以高效地執行使用亮度作為側資訊的色度上採樣,因為“添加操作”複雜性較低。亮度分量和色度分量的基於“連接”的處理可以不限於添加操作。在該示例中保留交叉分量資訊。術語“保留”表示在色度上採樣操作中使用亮度資訊,該亮度資訊包括關於高頻資訊和銳邊的細節。與現有技術相比,色度分量以這種方式得到了深度增強。
或者,色度可以與亮度級聯。這通常會產生級聯的亮度-色度複合物,大小大於亮度分量和色度分量的大小。可以使用其它類型的“聯合”類操作代替和/或與添加或級聯結合,通過這類操作,大小均衡網路利用亮度的資訊,對子採樣色度進行上採樣和/或處理。
上述處理可以由圖4至圖8來例示,圖4至圖8示出了本發明的一些實施例,涵蓋編碼側和編碼側。
在圖4頂部所示的編碼側,包括亮度分量Y和色度分量U和V的輸入。具體地,色度分量U和V被輸入到大小均衡網路層410中,將(子採樣的-與亮度分量Y相比)色度分量上轉換為亮度分量的大小。術語“上轉換”也可以稱為上採樣。如上所述,所述上轉換或上採樣也可以使用亮度分量作為大小均衡網路的輸入資訊(即側資訊)來進行,在圖4中,該輸入資訊通過對NN大小均衡模組410的第三輸入來表示。NN大小均衡模組410的輸出是尺寸與亮度分量Y的尺寸匹配的中間色度分量U和V。亮度分量和中間色度分量都輸入到VAE編碼器420中。VAE編碼器可以是如圖2B或圖2C等所示的編碼器。VAE編碼器420輸出碼流,該碼流中包括(例如壓縮)中間色度分量U、V和亮度分量Y。
相應地,圖4的底部示出了示例性解碼側。具體地,經編碼碼流(例如由VAE 420編碼的碼流)被輸入到VAE解碼器470。VAE解碼器470可以是如圖2B或圖2C等所示的解碼器。VAE解碼器470輸出亮度分量Y和中間色度分量U和V。這些經解碼的亮度分量Y和中間色度分量U和V不一定與編碼側的亮度分量和中間色度分量相同。這是因為在一些實施例中,VAE編碼器420可能以有損方式壓縮輸入。然後,將解析度匹配的解碼分量Y、U、V輸入到下採樣網路480,該下採樣網路480將NN大小轉換回輸入大小(解析度)。中間色度分量U和V被下採樣到色度分量的尺寸。在下採樣過程中,可以使用亮度分量Y。
圖5示出了本發明的編碼器側大小均衡網路410的實現方式示例。在該示例中,各個層屬於卷積神經網路(convolutional neural network,CNN)。參考圖5,卷積網路層定義如下: Conv N×K×K:表示卷積網路層,卷積核為K×K,K為正整數。K的典型數為3或5。但是,K並不限於這些數位,並且可以採用任何其它正整數。特別是,K的值可能較大。N是正整數,表示卷積神經網路的輸出通道的數量。N的典型數為128或192。但是,根據輸出的需要,可以使用任何其它數位。具體地,N可以為1或2,即對應於具有一個或兩個輸出通道的CNN層的conv 1×K×K或conv 2×K×K。 Act:指啟動層,它可以是非線性啟動函數,例如上文討論的修正線性單元(rectified linear unit,ReLU)或GDN。所述函數用於啟動卷積層。在沒有啟動的情況下,卷積層將僅僅是一個線性組合,與沒有卷積運算相同。 Conv N×K×K/2↑:表示與Conv N×K×K相同,但進一步沿水準和垂直方向按因數2對輸出進行上採樣(上轉換)(在該示例中)。這由“2”和向上箭頭表示。 Conv. N×K×K, Act:表示卷積層加啟動層。
圖5示出了對於顏色格式YUV420的情況編碼側的示例。這表示涉及三個通道Y、U和V,因此N = 3。
例如,當亮度大小為w × h,色度大小為w/2 × h/2,顏色格式為YUV 420時,大小均衡網路層沿水準和垂直方向按因數2對色度分量U和V進行上採樣。此處,w表示亮度分量的寬度,h表示亮度分量的高度,例如,以(整數)樣本計數。conv N×K×K/2↑層沿水準和垂直方向按因數2分別對U分量和V分量進行上採樣。該層的輸出有N個通道。
從圖5中可以看出,Y分量用conv N×K×K層處理,而不進行上採樣,因此保留了亮度分量的解析度(尺寸)。該層的輸出也有N個通道作為大小均衡層conv N×K×K/2↑。層conv N×K×K/2↑和conv N×K×K的兩個輸出信號都用輸出特徵圖的相應啟動層(即,非線性啟動函數,例如ReLU或GDN)處理,然後添加(求和)。在該示例中,使用了簡單的信號和。這表示相應的輸出是逐元素添加的(對特徵圖的元素求和)。可以如此做的原因是卷積(conv)層的輸出的大小(尺寸)在寬度和高度方面是相同的。
其它類型的操作也可以用於色度與亮度的基於合併的操作(組合)。例如,可以進行亮度和色度輸出的級聯。添加可能是最簡單的方案之一,在所得幀中只有N個通道。這表示求和操作保留通道數量。相比之下,級聯引入了帶有2N個通道的潛在表示。因此,求和操作使利用亮度對色度進行上採樣處理的複雜性較低,而不進一步增加通道。
然後,組合信號由一個或多個卷積層和啟動層處理,提供兩個色度通道(對應於上採樣色度分量的調整大小的U、V)作為輸出。原始Y信號也提供給下一步驟,即編碼(420)到碼流中。上採樣色度也稱為中間色度分量/通道。然後,這些大小相等的輸出(信號)用作VAE結構的輸入。
在圖5的示例中,Y和上採樣色度U和V的添加操作置於第一層之後。但是,所述操作(以及就此而言,用於級聯和/或合併信號的任何其它合適操作)也可以置於任何其它層之後。這種設計的好處是,Y特徵主要由排列在添加操作之後的卷積層提取。
在另一個示例中,當亮度大小為w × h,色度大小為w/2 × h,顏色格式為YUV422時,大小均衡網路層沿水準方向按因數2對色度分量U和V進行上採樣。在這種情況下,上採樣色度分量為矩形。在任何一種情況下,大小均衡網路層輸出的上採樣色度分量U和V的大小與原始Y分量相同。因此,所述大小均衡網路層的輸出可以用作VAE結構的輸入。
在一種示例性實現方式中,上採樣包括在色度分量的每n排樣本之後插入一排附加樣本。排是指行和/或列,n是等於或大於1的整數。例如,這表示每個奇數行是添加行。另外或或者,例如,所得上採樣分量中的每個奇數列是添加列。可以添加每個偶數行和/或列,而不是奇數行和/或列。這些示例適用於n=1 – 在每一行之後(或之前),插入附加行。這種上採樣是按2上採樣。但是,本發明不限於該特定示例。而是n可能更大,表示在整數行之後,插入附加樣本行。類似的方法也適用於列。行和列的n可能不同。此外,這支持通過在特定行和/或列插入排樣本來進一步調整色度上採樣。
此外,上採樣可以通過在色度分量的每n排樣本之後插入一排值為零的樣本來執行。這可以稱為零填充。這是一種簡單的上採樣方式,只需將相應的排樣本設置為零。因此,不需要進一步指示或處理開銷。這種方法在圖9中例示,示出了上採樣色度的4×4樣本。實心圓形符號是指原始色度的樣本。空心圓是指具有零值的樣本。在該示例中,在色度分量的每行和每列之後插入零值樣本排。此外,在該示例中,大小均衡網路簡化為單層網路(M=1),在圖5的“添加”操作之後沒有進一步的層。在圖9(編碼側)中,U和V的上採樣簡化為在YUV420顏色格式的情況下在每行和每列中填充零。在YUV422格式的情況下,零的填充是針對每列的。在這種情況下,網路不是卷積神經網路,而是可以理解為全連接神經網路(fully-connected neural network,FCNN)的一個層。因此,該網路本身不一定是可訓練的。但是,它可以與VAE結構聯合訓練,以獲得更好的解碼性能。因此,相應的FCNN也可以指經訓練的網路。
在另一種實現方式中,色度上採樣可以通過在色度分量的每n排樣本之後插入值等於色度分量中相應的最近鄰樣本的一排樣本來執行。例如,可以通過將色度值複製到相應的相鄰樣本來插入值。與上述零填充的情況一樣,這支援通過在特定行和/或列插入排樣本來進一步調整色度上採樣。此外,使用參考色度的最近鄰樣本的插入排樣本的值,色度上採樣的精度更高,因為使用了參考原始色度的相鄰資訊(由相鄰色度樣本值反映)。
這在圖11中例示,示出了上採樣色度的4×4樣本。同樣,實心圓形符號是指原始色度的樣本。空心圓現在是指具有與其相應的色度相鄰樣本一致的值的樣本。在圖11中,將色度值插入到其相應的相鄰樣本中由箭頭表示。在該示例中,在色度分量的每一行和列之後插入樣本值。此外,在該示例中,大小均衡網路簡化為單層網路(M=1),在圖5的“添加”操作之後,沒有進一步的層,其中,從亮度到色度的交叉分量資訊通過“加法”操作保留。例如,如果亮度包括更多資訊(因為它具有更高的原始解析度),則當亮度和色度具有相同尺寸時,將附加資訊添加到正確位置的色度樣本中。在圖11(編碼側)中,U和V的上採樣簡化為每行和每列中的最近鄰樣本上採樣,如圖11中的YUV420格式所示。在YUV422格式的情況下,最近鄰樣本上採樣是針對每列的。在上文色度上採樣示例中,網路不是卷積神經網路,但可以理解為全連接網路的一個層。因此,該網路本身不是可訓練的,但是可以與VAE結構聯合訓練,以獲得更好的解碼性能。因此,相應的FCNN也可以指經訓練的網路。此處的最近相鄰樣本上採樣表示將最近樣本的值(在預定義的方向上)複製到新添加的樣本中。在圖11中,取左側和頂部最近的相鄰樣本。這是一條不限制本發明的公約。最近的相鄰樣本可以從右手側和底部複製。可能涉及插值(例如,相鄰樣本值的平均值)或其它類型的上採樣。
上述上採樣網路僅僅是具有一個層的用於大小均衡的經訓練的網路的示例。對於本領域技術人員來說,清楚的是,大小均衡層可以具有一個以上的層,如整個圖5和圖7所示。在這種情況下,可以訓練大小均衡網路以進行色度上採樣。
在上文的討論中,亮度分量用作側資訊輸入到大小均衡層,以便對子採樣色度通道進行上採樣。在圖7所示的大小均衡網路的另一個實現方式示例中,可以在不進一步使用亮度的情況下進行上採樣。換句話說,亮度通道不輸入到編碼側的大小均衡網路。否則,編碼器對子採樣色度的處理與已經討論的亮度用作用於色度上採樣的側資訊的情況相同。這可以簡化大小均衡網路的設計,因為它只將(一個或多個)色度分量作為輸入。
根據本發明的一個實施例,提供了一種用於從碼流解碼圖像部分的方法,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量。圖像部分是指圖像的一定數量的樣本,其中所述數量小於所述圖像的樣本總數。圖像部分還可以包括圖像的所有樣本。術語“樣本”也可以指圖元。圖像可以是靜止圖像或視訊圖像。圖像部分可以包括一個或多個色度分量。例如,亮度-色度格式YUV420的圖像部分包括兩個色度分量U和V(也稱為色度通道)。相對於整個圖像,圖像部分的色度解析度可以低於亮度通道的解析度。或者,參考圖像的一部分,色度解析度可以低於亮度通道的解析度。在這種“部分”亮度解析度情況下,亮度通道和色度通道與圖像的同一部分相關。圖像的同一部分也可以稱為圖像的區域。
該方法在圖14中示出,並包括步驟1410:解碼亮度分量和解析度與來自碼流的色度分量的解析度匹配的中間色度分量。中間色度分量也稱為上採樣色度分量,反映出所述中間分量是通過對色度分量進行上採樣生成/獲得的。解析度是根據二維(two-dimensional,2D)亮度或色度通道的大小(即尺寸)給出的。這通常通過2D亮度樣本或色度樣本沿x-y方向的樣本數或樣本總數給出。該方法還包括步驟1420:對中間色度分量進行下採樣,以便獲得所述圖像部分的色度分量。上述解碼可以由變分自動編碼器(variational autoencoder,VAE)執行。本領域已知VAE可以以非常高效的方式執行與圖像編碼/解碼相關的任務,並且在所需的碼率與重建圖像的品質之間實現良好折衷。圖2C所示的VAE的編碼部分然後可以以上文參考圖2C所述的方式處理相應的大小相等的通道輸入,包括亮度色度和中間色度。在該過程中,亮度通道保持不受影響,因此,當從碼流解碼亮度分量時,亮度提供的最重要的圖像資訊得以保留。
通過對中間色度分量(即解析度與亮度通道相同的色度)進行下採樣,可以重建原始色度分量(即子採樣色度)。具體地,具有原始亮度-色度格式的圖像部分可以以高品質重建。因此,解碼器能夠以色度格式提供圖像部分作為輸出,色度的解析度(即大小)低於亮度。
在所述方法的一個示例性實現方式中,下採樣還包括通過經訓練的網路對中間色度分量進行處理。該網路可以稱為大小轉換網路,反映了將輸入中間色度(大小與亮度相同)轉換為解析度比亮度更低(即,尺寸更小)的原始色度的大小的目的。
解碼側的經訓練的網路可以是適合下採樣的任何類型的網路。例如,這包括人工神經網路(artificial neural network,ANN),例如神經網路、卷積神經網路(convolutional neural network,CNN)等。特別是,CNN已成功應用於圖像處理任務以進行圖像編碼和解碼。用於色度下採樣的經訓練的網路也可以稱為大小轉換網路,因為它提供了解析度低於亮度通道的解析度的調整大小的色度分量(即原始子採樣色度分量)作為輸出。換句話說,在大小轉換網路處理之後,所有輸出的亮度-色度通道具有不同的解析度(即大小)。
在所述方法的第一示例性實現方式中,通過經訓練的網路進行處理包括向經訓練的網路輸入中間色度分量,並從經訓練的網路輸出色度分量。這表示經訓練的網路僅使用中間色度作為輸入對中間色度進行下採樣。因此,在該示例中,大小轉換網路層不使用關於亮度的側資訊。因此,經訓練的網路可以設計為低複雜性,並且因為沒有亮度用作側資訊提供低處理開銷。
這在圖8中例示,圖8示出了亮度分量可以不作為解碼器處大小轉換網路的輸入。在該示例中,兩個色度分量U和V表示顏色格式YUV444,其中,U和V的大小與亮度Y相同。否則,解碼器對中間色度的處理與已經參考圖4討論的相同。在經訓練的網路的示例性實現方式中,經訓練的網路包括至少兩個處理層。在這至少兩個層中,第一層對輸入中間色度分量進行處理;至少兩個處理層中的第二層對所述第一層的輸出進行下採樣。
在圖8的示例中,解碼側的大小轉換網路由多個卷積層和啟動層Conv. N×K×K, act.構建。左側的第一個Conv. N×K×K, Act.將中間色度分量U和V作為輸入。網路的最後一層(Conv. 2×K×K/2↓)沿水準和垂直方向按因數2對信號進行下採樣,並輸出兩個通道。這兩個通道用作YUV420格式的重建U和V信號。當所有中間Conv. N×K×K, Act.層都去除時,最後一個Conv. 2×K×K/2↓表示第二層。
在該示例中,與J. Balle的方法相比,沒有對Y資訊進行下採樣。因此,Y的亮度資訊和空間資訊大部分得以保留。如上所述,可以在不利用亮度資訊作為側資訊的情況下進行色度下採樣。
在另一個示例性實現方式中,對中間色度分量進行下採樣基於亮度分量的樣本。這表示所述下採樣不是基於大小,而是基於亮度通道的內容,即亮度樣本的相應值。亮度樣本可以指一個或多個亮度樣本。這包括使用所有亮度樣本進行上採樣。
當色度通過經訓練的網路處理時,通過經訓練的網路進行處理包括向經訓練的網路輸入亮度分量。在一個示例性實現方式中,經訓練的網路的第一層對中間色度分量連同亮度分量進行處理。換句話說,亮度用作用於色度下採樣處理的側資訊。這會保留亮度通道與色度通道之間的交叉分量資訊。特別是,亮度分量可以包括比子採樣(原始)色度分量更多的詳細資訊。使用亮度作為側資訊,可以基於亮度分量恢復色度的一些細節。上採樣網路可以專門訓練用於這種上採樣。
需要說明的是,對於解碼側,大小轉換網路的第一處理層與編碼側相比可以不需要執行“添加操作”,其中,這類操作可以如圖5所示執行(至少可以對編碼器處的大小均衡網路採用某種顯式組合操作)。這是因為解碼器的大小轉換網路的第一層的輸入(包括亮度Y和中間色度U、V)已經具有相同大小,如圖6所示。而是三個大小相等的通道可以直接輸入到所述第一CNN層,而不需要單獨的添加操作。對於圖5所示的編碼器的大小均衡網路的第一層的輸入,情況並非如此。在這種情況下,首先對色度進行上採樣,然後添加上採樣色度和亮度。然後饋送到CNN層。
圖6示出了VAE結構的解碼側的實現方式示例,將VAE結構的上述編碼側的輸出作為其輸入。如上所述,大小轉換網路的相應輸入現在有3個大小相同的分量(即,YUV444)。第一通道直接用作重建的亮度分量,與YUV420格式中的原始亮度分量相同。Conv. 2×K×K/2↓表示與Conv N×K×K相同,但進一步沿水準和垂直方向按因數2對輸出進行下採樣(下轉換)。這由“2”和向下箭頭表示。如上所述,這種佈置可以有利於保留交叉分量資訊,例如,用來自亮度的更多細節增強色度,所述亮度最初具有比色度更高的解析度(尺寸)。
通常,在VAE結構的解碼側使用亮度的經訓練的網路可以以與不使用亮度相同的方式構建,不同之處在於將附加亮度作為輸入。這在圖6中例示,其中,大小轉換網路也設計有多個卷積層和啟動層Conv. N×K×K, Act。同樣,網路的最後一層(Conv. 2×K×K/2↓)沿水準和垂直方向按因數2對信號進行下採樣,並輸出兩個通道。這兩個通道用作YUV420格式的重建U和V信號。
例如,當顏色格式為YUV 420時,大小轉換網路層沿水準和垂直方向按因數2對中間色度分量U和V進行下採樣。在另一個示例中,當顏色格式為YUV 422時,大小轉換網路層沿水準方向按因數2對中間色度分量U和V進行下採樣。在任一種情況下,最終輸出的大小分別與顏色格式為YUV420或YUV422的輸入幀的原始分量相同。
在所述方法的一種示例性實現方式中,下採樣包括在中間色度分量的每n排樣本之後去除一排樣本。排是行和/或列,n是等於或大於1的整數。例如,這表示在每一個(n=1)或兩個(n=2)行和/或列之後,可以去除或刪除所述排樣本。因此,可以通過簡單地去除相應的排樣本來快速執行中間色度的下採樣。或者,下採樣可以通過對最接近的相鄰色度樣本的樣本值進行(可能加權)平均等方式來進行。
圖10和圖12示出了排樣本去除的示例。需要說明的是,圖10和圖12的樣本配置分別對應於圖9和圖11的樣本配置,結果是編碼側對色度分量進行上採樣處理。
具體而言,圖10和圖12示出了中間色度的4×4樣本。實心圓形符號是指原始色度的樣本。交叉空心圓是指可以為非零值的樣本,從而由編碼側的大小均衡網路進行色度上採樣處理(使用和不使用亮度作為側資訊)和/或通過解碼側的大小轉換網路的一個或多個第一層進行色度處理。
在圖10和圖12所示的示例中,大小轉換網路簡化為單層網路(M=1)。在圖10和圖12中(解碼側),簡化了U和V的下採樣,以便在YUV420顏色格式的情況下捨棄奇數行和奇數列樣本。對於YUV422,去除奇數列樣本。在圖10和圖12所示的這些情況中的任一種情況下,相應網路不是卷積神經網路,而是可以理解為全連接神經網路(fully-connected neural network,FCNN)的一個層。因此,該網路本身不是可訓練的。但是,它可以與VAE結構聯合訓練,以獲得更好的解碼性能。因此,相應的FCNN也可以指經訓練的網路。
但是,這僅僅是一個用於大小轉換的具有一個層的經訓練的網路的示例。對於本領域技術人員來說,清楚的是,大小轉換層可以具有一個以上的層,如整個圖6和圖8所示。在這種情況下,可以訓練大小轉換網路以進行色度上採樣。
需要說明的是,圖5所示的編碼側的大小均衡網路和圖6所示的解碼側的大小轉換網路可以與VAE結構聯合訓練。這可以進一步改進子採樣色度分量的編碼-解碼處理,特別是在VAE框架內。例如,這包括編碼-解碼性能和/或重建圖像的品質。
或者,這些網路可以單獨訓練並用作經預訓練的VAE網路。在任一種情況下,相應的網路都是指經訓練的網路。需要說明的是,按因數2(採樣因數)進行上/下採樣是一個非限制性示例,但是為使用的典型值之一。通常,採樣因數可以是等於或大於1的任何整數。或者,採樣因數可以是分數採樣因數,給出為例如兩個正整數p和q的比值p/q。
總結本實施例的這一部分,大小均衡網路(用於上採樣)和大小轉換網路(用於下採樣)用於調整子採樣色度通道的大小,使得YUV420的三個分量大小相同。然後,這些分量可以由現有的VAE結構處理。
此外,如上所述,本發明還提供了用於執行上述方法的步驟的設備。
圖15示出了用於對圖像部分進行編碼的編碼器1500,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量。所述編碼器包括上採樣模組1510,用於對色度分量進行上採樣,以獲得解析度與亮度分量的解析度匹配的上採樣色度分量;以及編碼模組1520,用於將亮度分量和上採樣色度分量編碼到碼流中。
在一個實現方式示例中,編碼器可以包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,當所述一個或多個處理器執行所述程式時,所述程式使所述編碼器執行上文提及的方法。
圖16示出了用於從碼流解碼圖像部分的解碼器1600,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量。解碼器包括解碼模組1610,用於從碼流解碼亮度分量和解析度與色度分量的解析度匹配的中間色度分量;以及下採樣模組1620,用於對中間色度分量進行下採樣,以獲得所述圖像部分的色度分量。
具體地,解碼器可以包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,當所述一個或多個處理器執行所述程式時,所述程式使所述解碼器執行上文提及的方法。
根據本發明的一個實施例,提供了一種儲存在非暫態性介質上的電腦程式,所述電腦程式包括代碼,當所述代碼在一個或多個處理器上執行時執行上文提及的任一方法的步驟。
本發明的一些實施例可以提供以下優點,總結如下: 亮度的樣本資訊被完全保留。 亮度的空間資訊被完全保留。 用於大小均衡和大小轉換的網路(即經訓練的網路)(兩個經訓練的網路都可以是CNN)可以與VAE網路結構聯合訓練。這具有進一步改進結果的優勢。 VAE網路結構可以靈活處理各種其它色度子採樣格式,例如YUV422。 可以保留交叉分量資訊。
第二實施例
第二實施例可以與第一實施例的任何示例性實施例組合。如上所述,第一實施例是針對處理相對於亮度分量子採樣的色度分量。色度分量的上採樣使這種調整大小的色度分量以及亮度分量適合在基於可訓練網路的框架(例如ANN或VAE)中進一步處理。因此,亮度分量可以保持大部分不受影響,因此可以保留樣本資訊以及亮度的空間資訊。需要高品質重建圖像(或其部分)的許多應用都需要實現這一點。這表示應保持高解析度,因此編碼-解碼處理不應篡改亮度。
但是,在其它應用中,高解析度不一定是最重要的目標,而是更快地執行編碼-解碼過程。此外,所需的目標可以是低碼率,導致解析度較低,例如由亮度下採樣提供。因此,可能需要在提供低解析度或高解析度圖像的編碼-解碼處理中進行選擇。
該問題可以通過第二實施例解決,該第二實施例旨在在調整兩個或更多個輸入通道的解析度以匹配時,在亮度的下採樣與色度的上採樣之間進行自我調整切換。亮度下採樣和色度上採樣也可以稱為採樣模式。根據亮度和色度通道確定兩種採樣模式中的哪一種可以在編碼側執行,並向解碼側指示和/或由解碼側確定。
特別是,如下文結合本發明的各種示例性實現方式和方面進一步討論的,與色度的大小(解析度)匹配的亮度下採樣和與亮度的大小(解析度)匹配的色度上採樣由編碼器自我調整選擇。編碼器選擇哪一種採樣模式可以以各種方式指示,如下文將進一步詳細說明,並且可以包括通過接收的碼流指示和/或從接收的碼流確定。根據指示採樣模式之一(即亮度下採樣或色度上採樣)的方式,解碼側然後進行亮度上採樣或色度下採樣,以產生與輸入到編碼器的圖像部分具有相同解析度的重建圖像部分(即,與輸入幀相同的子採樣格式)。
根據本發明的實施例,提供了一種用於對圖像部分進行編碼的方法。圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量。圖像部分是指圖像的一定數量的樣本,其中所述數量小於所述圖像的樣本總數。圖像部分還可以包括圖像的所有樣本。術語“樣本”也可以指圖元。圖像部分可以是靜止圖像或視訊圖像。術語“圖像”和“圖像部分”可以同義使用。圖像部分可以包括一個或多個色度分量。例如,亮度-色度格式YUV420的圖像部分包括兩個色度分量U和V(也稱為色度通道)。相對於整個圖像,圖像部分的色度解析度可以低於亮度通道的解析度。或者,參考圖像的一部分,色度解析度可以低於亮度通道的解析度。在這種“部分”亮度解析度情況下,亮度通道和色度通道與圖像的同一部分相關。圖像的所述部分也可以稱為圖像的區域。
下採樣亮度有利於實現低解析度以節省碼率,而上採樣色度有利於實現高解析度以保留亮度資訊。因此,自我調整切換可以根據對碼率或圖像品質的要求和/或限制選擇採樣模式。由於在圖像部分的所選擇圖像處理的任何一種情況下,所處理的亮度-色度分量都具有匹配的解析度,因此輸出可以在VAE框架或支援高效編碼的另一個框架內處理。
該方法在圖31中示出,並包括步驟3110:選擇以下步驟之一作為圖像部分的圖像處理: 對亮度分量進行下採樣,以便獲得解析度與色度分量的解析度匹配的下採樣亮度分量; 對色度分量進行上採樣,以便獲得解析度與亮度分量的解析度匹配的上採樣色度分量。
解析度是根據二維(two-dimensional,2D)亮度通道的大小(即尺寸)給出的。但是,需要說明的是,解析度也可以通過不同於亮度的通道的尺寸給出,例如色度通道或其它類型的通道(例如深度通道)等。解析度通常通過沿x-y方向2D亮度通道和/或色度通道的樣本數給出,或通過在一個時刻通道中的樣本總數(圖像中的樣本總數)給出。
在亮度下採樣和/或色度上採樣之前,例如,亮度分量和/或色度分量的解析度可以從記憶體(memory/storage)獲得,在記憶體中,該解析度可以與待編碼的圖像部分一起儲存。圖像部分可以是圖像的一部分,也可以是整個圖像。因此,圖像部分可以包括一個或多個亮度樣本和一個或多個色度樣本。在一些實施例中,圖像部分可以是構成圖像的多個圖像部分中的一個。這些圖像部分可以通過將圖像細分為圖像部分來獲得。通常,圖像部分的大小(尺寸)可以相同,也可以不同。
圖像可以是視訊的一部分(運動圖像)。相應通道的解析度可以根據樣本數提供。或者,通道解析度可以根據相對於圖像大小(即所述圖像的所有樣本)的比率來提供。
圖31的方法還包括步驟3120:根據所選擇的圖像處理處理圖像部分。換句話說,所選擇的圖像處理可以是下採樣亮度或上採樣色度中的一種。此外,該方法包括步驟3130:根據所選擇的圖像處理生成碼流,其中,生成包括對經處理的圖像部分進行編碼。圖像部分的編碼可以由自動編碼器執行,例如由變分自動編碼器(variational autoencoder,VAE)或另一種類型的自動編碼器執行。本領域已知VAE可以以高效的方式執行與圖像編碼和解碼相關的任務,並且在所需的碼率與重建圖像的品質之間實現良好折衷。
選擇亮度下採樣和色度上採樣之一的圖像處理在任何一種情況下都提供具有相同解析度(例如,相同尺寸)的調整大小的亮度分量和色度分量。因此,無論所選擇的圖像處理如何,大小相等的亮度-色度通道都可以在公共框架(例如ANN框架,例如VAE)內處理。
這特別包括子採樣色度格式,例如YUV422、YUV420。顏色格式還可以包括任何其它亮度-色度格式,其中任何通道可以具有不同的大小。圖2A-2C所示的VAE的編碼器部分然後可以以上文參考圖2A-2C所述的方式處理相應的大小相等的三通道輸入。此外,圖像處理的選擇支持在亮度下採樣和色度上採樣之間自我調整切換。因此,可以選擇低解析度或高解析度圖像處理。
圖17通過YUV420顏色格式的示例來說明編碼側,在這種情況下,色度輸入U、V的解析度低於亮度分量Y的解析度。如圖15所示,在編碼側,YUV輸入進行大小均衡處理。這一方面包括對亮度分量進行下採樣1710,如圖17的上分支所示。該示例中的輸出是大小相同的三個YUV分量。此處,相同的大小是指色度分量U和V的大小(尺寸)。另一方面,通過在圖17的下分支中執行的尺寸均衡處理對色度分量進行上採樣1720。同樣,輸出是大小相同的三個YUV分量。現在,相同的大小是指亮度分量。在通過例如VAE對上分支和下分支的大小均衡YUV進行編碼之後,根據成本函數確定成本。例如,這可以基於率失真優化(rate-distortion-optimization,RDO)1730。最終使用哪種採樣模式(即色度上採樣或亮度下採樣)取決於上分支還是下分支的處理提供了更低的成本。在圖17的示例中,最低成本採樣模式由標誌(指示符)指示,編碼到碼流中或單獨向解碼器指示。下文將詳細討論如何根據成本選擇採樣模式的各種方法。
在RDO中,優化了速率和失真的加權和。但是,本發明並不限於基於速率和失真的成本最小化。例如,除了速率和/或失真之外或替代速率和/或失真,還可以在成本函數中考慮複雜性。可以添加或使用其它成本參數來代替上述參數。
在所述方法的一種實現方式中,上採樣和/或下採樣通過經訓練的網路執行。
如實施例1中已經提到的,編碼側的經訓練的網路可以是適合下採樣或上採樣的任何類型的網路。例如,這包括人工神經網路(artificial neural network,ANN),例如神經網路、卷積神經網路(convolutional neural network,CNN)等。用於亮度下採樣和/或色度上採樣的經訓練的網路也可以稱為大小均衡網路,因為這兩個網路都提供了解析度與色度通道的解析度匹配(即亮度下採樣1710)或與亮度通道的解析度匹配(即色度上採樣1720)的調整大小的顏色(亮度、色度)分量作為輸出。換句話說,在大小均衡網路處理之後,輸出的Y、U和V通道具有相同的解析度(即大小)。
圖19和圖20示出了在YUV420顏色格式的情況下,編碼側的大小均衡網路的實現方式示例。圖19示出了進行亮度下採樣(上分支)的大小均衡網路,圖20示出了對兩個色度U和V進行上採樣的大小均衡網路。在該示例中,相應層屬於卷積神經網路(convolutional neural network,CNN)。
圖19和圖20所示的卷積網路層以與實施例1(例如圖5至圖8)類似的方式定義。概括而言: Conv N×K×K:表示卷積網路層,卷積核為K×K,K為正整數。K的典型數為3或5。但是,K並不限於這些數位,並且可以設置為其它正整數。特別是,K的值可以為2或更大。N是正整數,表示卷積神經網路的輸出通道的數量。 Act:指啟動層,它可以是非線性啟動函數,例如上述ReLU或GDN。 Conv N×K×K/2↑:表示與Conv N×K×K相同,但該層進一步沿水準和垂直方向按因數2對輸出進行上採樣(上轉換)。這由“2”和向上箭頭表示。 Conv. 2×K×K/2↓:表示與Conv N×K×K相同,但進一步沿水準和垂直方向按因數2對輸出進行下採樣(下轉換)。這由“2”和向下箭頭表示。 Conv. N×K×K, Act:表示卷積層加啟動層。
如圖19和圖20所述,待編碼的圖像部分的顏色格式為YUV420。這表示亮度大小為w × h,色度大小為w/2 × h/2。但是,如本領域技術人員所瞭解的,可以採用其它格式(色度子採樣的類型),例如YUV422等。
亮度處理:圖19中用於亮度處理的大小均衡網路包括第一層Conv. N×K×K/2↓,具有K×K核和作為輸出的N個通道。該層沿水準和垂直方向按因數2對亮度分量進行下採樣。該層之後是一系列啟動層Act.和伴隨啟動的卷積層Conv. N×K×K, Act.。大小均衡網路由最後一層(是卷積層Conv. 1×K×K)終止,因此具有一個通道作為輸出,即下採樣亮度分量Y。亮度分量的大小(解析度)現在經調整為與色度分量U和V相同。該處理在圖17的上分支(1710)中執行。
色度處理:圖20中用於色度分量處理的大小均衡網路包括第一層Conv. N×K×K/2↑,具有K×K核和作為輸出的N個通道。該層沿水準和垂直方向按因數2對兩個色度分量U和V進行上採樣。該層之後是一系列啟動層Act.和伴隨啟動的卷積層Conv. N×K×K, Act.。大小均衡網路由最後一層(是卷積層Conv. 2×K×K)終止,因此具有兩個通道作為輸出,即上採樣色度分量U和V。色度分量U和V的大小(解析度)現在經調整為與亮度分量Y相同。該處理在圖17的下分支(1720)中執行。需要說明的是,在這種情況下,亮度分量被保留,具有第一實施例中討論的所有優點。
從圖19和圖20中可以明顯看出,在任何一種情況下,相應卷積層Conv. N×K×K/2↓和Conv N×K×K/2↑的輸出具有N個通道,並進一步用啟動層(即非線性啟動函數,例如ReLU或GDN)處理。調整大小的亮度和色度也可以分別稱為中間亮度和中間色度。然後,相應的大小相等的輸出亮度-色度用作上分支和下分支的相應VAE的輸入。上分支和下分支的VAE作為結果傳送編碼碼流,然後可以重建編碼碼流以獲得品質(損失)。然後,可以在RDO 1730中使用品質(與失真成反比)和速率(例如,通過碼流中的比特量測量)來選擇可以執行RDO之後的VAE的適當處理。
上述大小均衡處理不限於YUV420顏色格式,而是可以應用於其它子採樣色度格式,例如YUV422等。
在第一實施例中,描述了編碼側的色度上採樣可以利用亮度分量作為側資訊。這可以與上述第二實施例的色度分量的處理結合。此外,同樣的過程也可以應用於編碼側對亮度的下採樣,因為色度用作側資訊。
圖23進一步示出了編碼側的這一點,示出了與圖17中類似的編碼器結構,以及對於圖像部分的圖像處理的選擇可以由編碼到編碼碼流中的標誌(指示符)指示的示例性情況。如圖23所示,與圖17的示意圖的區別在於亮度下採樣(上分支)利用關於色度分量U和V的資訊。同樣,色度上採樣(下分支)利用關於亮度Y的資訊。否則,亮度和色度的相應採樣處理以與上文參考圖17討論的相同的方式執行。
因此,無論是否進行亮度下採樣和/或色度上採樣,在任何一種情況下,交叉資訊都用於相應的採樣。這表示亮度和一個或多個色度之間的相關性被保留。
圖25和圖26分別示出了編碼側的亮度下採樣和色度上採樣的大小均衡網路的示例性實現方式。如圖25和圖26所示,相應的大小均衡網路在卷積層和啟動層的排列順序方面的設計與圖19和圖20所示的設計相同。區別在於,添加了附加層,以便將圖25中的一個或多個色度或圖26中的亮度提供給相應的大小均衡網路。在圖25的情況下,所述添加層是色度分量的卷積層Conv N×K×K/1↑,具有K×K核和作為輸出的N個通道,這N個通道輸入到啟動層Act.。在圖26的情況下,所述添加層是亮度的卷積層Conv N×K×K/1↓,具有K×K核和作為輸出的N個通道,這N個通道輸入到啟動層Act.。在圖25和圖26所示的示例中,相應的輸出信號添加到大小均衡網路的第一卷積層(分別為Conv. N×K×K/2↓和Conv N×K×K/2↑)之後的啟動層Act.的輸出。
例如,相應的添加可以是逐元素添加一個或多個色度分量和下採樣亮度分量,以及分別逐元素添加亮度分量和一個或多個上採樣色度分量。因此,可以高效地執行使用亮度作為側資訊的色度上採樣以及使用色度作為側資訊的亮度下採樣。另外,可能存在於原始解析度較高的亮度中的細節可以在原始子採樣色度中恢復。類似地,可能存在於原始解析度較低的色度中的細節可以在原始亮度內恢復。
亮度分量和色度分量的聯合(組合)處理(在亮度下採樣和/或色度上採樣處理中)可以不限於添加操作。或者,色度和亮度可以級聯。這通常會產生級聯的亮度-色度複合物,大小大於亮度分量和色度分量的大小。可以使用其它類型的組合操作代替添加或級聯和/或與添加或級聯組合。因此,相應的大小均衡網路採用亮度和色度的資訊進行色度上採樣和/或亮度下採樣。
如上所述,可以通過各種方式確定在編碼側執行的一種圖像處理。下文對此進行討論。
在所述方法的一種示例性實現方式中,選擇包括對速率和失真的成本函數進行評估。根據(編碼)方法的實現方式,選擇還包括根據所述成本函數確定中間下採樣亮度分量和色度分量的成本,以及分別亮度分量和中間上採樣色度分量的成本。此外,在選擇中,選擇所確定的成本較低的圖像部分的圖像處理。因此,亮度分量和子採樣色度分量的整體編碼通過使用成本最低的採樣模式(即亮度下採樣或色度上採樣)高效地執行。
例如,成本可以是根據重建圖像部分和原始圖像部分與碼率之間的失真指定的損失。在這種情況下,損失可以表述為:
Figure 02_image059
Figure 02_image061
此處,
Figure 02_image063
表示拉格朗日(Lagrange)乘數,它是一個可以預定義的數字。該數位可以基於所需的應用和/或結果按經驗確定。如上所述,可以使用成本函數的替代或附加參數。此外,需要說明的是,本發明不一定包括RDO。例如,選擇可以由預先為這種選擇訓練的經訓練的網路(例如,ANN)執行。也可能有各種其它方法。
選擇還可以包括對亮度分量進行下採樣,從而獲得中間下採樣亮度分量;並且對色度分量進行上採樣,從而獲得中間上採樣色度分量。在圖17中,在RDO 1730之後,VAE應用於亮度下採樣或色度上採樣之後大小匹配的顏色分量。但是,情況不一定非得如此。而是可以採取由所選擇的上分支(1710)或下分支(1720)的VAE生成的碼流,而不是再次使用VAE。換句話說,編碼部分可以重複使用,從而節省一些複雜性。
圖17示出了三個VAE。應用三次VAE可能複雜且耗時。因此,為了降低複雜性,在一些示例性實現方式中,上分支和下分支中的VAE不是完整的網路。而是,它們可以由模型所取代,這些模型並不真正生成碼流,而是估計速率和失真。在估計/選擇更好的分支之後,在RDO 1730之後使用真實VAE來生成將發送(傳送)到解碼器的碼流。如果分支中模型VAE對速率和失真的估計比RDO之後的VAE更快,這可能是有利的。在編碼側,這兩種情況都可能存在(兩個VAE相對三個VAE)。
在一種示例性實現方式中,確定成本包括將中間下採樣亮度分量和色度分量編碼到第一碼流中;並且將亮度分量和中間上採樣色度分量編碼到第二碼流中。在此之後根據所述成本函數確定第一碼流和第二碼流的成本。因此,實際成本可以準確地確定,因為它是基於經編碼的第一碼流和第二碼流。但是,如上所述,本發明並不限於這種方法。而是可以通過估計函數估計成本,代替編碼到碼流中。此外,為了獲得速率而進行的編碼不必通過實際生成碼流來執行。例如,成本可以根據量化資料的數量和/或量化資料的分佈,或通過應用為這種估計訓練的經訓練的網路,或通過任何可想像的方式來估計。
根據一個實現方式實施例,生成用於攜帶編碼圖像或視訊資料的碼流包括將指示所選擇的圖像處理的選擇指示符編碼到碼流中。這使已經對碼流執行的圖像處理的指示的複雜性較低。例如,選擇指示符可以具有一個比特的長度,並且能夠在兩個值之間區分,一個值表示亮度下採樣,另一個值表示色度上採樣。
這在圖17中示出。如上所述,對於具有亮度分量和子採樣色度分量的圖像部分,進行亮度下採樣(上分支)和色度上採樣(下分支)的採樣處理。在任何一種情況下,都提供大小相等的亮度-色度分量,並且例如分別輸入到上分支和下分支的VAE。兩個VAE為其相應的亮度-色度輸入計算成本,該成本可以基於碼率和失真(RDO)。根據哪種成本較低,選擇相應的圖像處理。根據所選擇的圖像處理,生成碼流,但不將指示符編碼到碼流中。所述圖像處理(即編碼側的亮度下採樣或色度上採樣)的選擇可以通過選擇指示符指示。例如,所述指示符可以是標誌。通過將標誌插入(可以包括編碼)到碼流中,可以在碼流中向解碼器指示在編碼側執行的所選擇的圖像處理。然後,解碼器從碼流解析指示符,並根據指示符確定待執行的圖像處理。特別地,這種選擇指示符可以取第一值和第二值。這種選擇指示符的第一值可以表示亮度已經在編碼器處被下採樣(1710),因此將在解碼器處被上採樣。這種選擇指示符的第二值可以表示色度已經在編碼器處被上採樣(1720),因此將在解碼器處被下採樣。在圖17中,功能塊“上或下”1740表示將選擇指示符插入碼流中。
或者,可以在沒有編碼到碼流中的顯式指示符(例如,一比特標誌)的情況下指示所選擇的圖像處理。
根據另一個實現方式示例,生成碼流包括將亮度分量的寬度W和/或高度H的指示編碼到碼流中。因此,原始圖像部分的寬度和高度可以指示給編碼器。這種指示可以指定亮度分量的解析度。如果亮度分量和色度分量的解析度之間的比率是已知的,則可以根據指示的W和H相應地確定色度解析度。該指示可以是圖像或視訊解碼的一部分。通常,編碼圖像或視訊的碼流包括圖像或視訊尺寸的指示。
圖29示出了示例性實現方式。類似於圖17所示的示例,對於具有亮度分量和解析度低於亮度分量的解析度的色度分量(因此相對於亮度分量進行“子採樣”)的圖像部分,進行亮度下採樣(上分支)2910和色度上採樣(下分支)2920的採樣處理。上分支和下分支的大小相等的亮度-色度分量分別輸入到VAE。兩個VAE為其相應的亮度-色度輸入計算成本,該成本可以基於碼率和失真(RDO)2930。根據哪種成本較低,選擇相應的圖像處理。根據所選擇的圖像處理生成碼流。在該示例性實現方式中,與圖17的不同之處在於將選擇指示符(例如標誌)編碼到碼流中。然後,解碼器可以基於碼流,例如,基於編碼到碼流中的亮度的寬度和高度,確定待執行的圖像處理。或者或另外,在碼流中指示的其它參數,例如用於解碼目的的參數,可以用於在解碼器處推導待應用的處理(亮度上採樣或色度下採樣)。這些參數可以在編碼器和解碼器處預定義和已知,以便編碼器和解碼器一致地使用這些參數來選擇處理。
根據本發明的一個實施例,提供了一種用於從碼流重建圖像部分的方法。這種方法可以應用於解碼側。如上文參考實施例1所述,圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量。圖像部分是指圖像的一定數量的樣本,其中所述數量小於所述圖像的樣本總數。圖像部分還可以包括圖像的所有樣本。圖像可以靜止圖像或視訊(圖像序列)。圖像部分可以包括一個或多個色度分量。例如,亮度-色度格式YUV420的圖像部分包括兩個色度分量U和V(也稱為色度通道)。色度解析度可能低於亮度通道的解析度(在圖像部分或整個圖像中)。圖像部分的亮度分量和色度分量通常是空間相關的,因為它們參考同一圖像區域。
該方法在圖32中示出,並包括步驟S3210:從碼流解碼解析度相同的亮度分量和色度分量。如上所述,解析度可以通過二維(two-dimensional,2D)亮度通道的大小(即尺寸)給出。可以由變分自動編碼器(variational autoencoder,VAE)等自動編碼器從碼流對經處理的圖像部分進行解碼。本領域已知VAE可以以非常高效的方式執行與圖像編碼和解碼相關的任務,並且在所需的碼率與重建圖像的品質之間實現良好折衷。但是,本發明不限於應用自動編碼器。通常,可以應用任何編碼器,包括例如,僅對某些解碼器操作或功能使用經訓練的網路(例如,ANN或任何基於ML/DL的網路)的編碼器。
該方法還包括步驟S3220:基於碼流確定以下之一作為圖像處理: 對經解碼的亮度分量進行上採樣,並獲得包括所述經解碼的色度分量和上採樣亮度分量的重建圖像部分; 對經解碼的色度分量進行下採樣,並獲得包括所述經解碼的亮度分量和下採樣色度分量的重建圖像部分。
可以通過從碼流解析用於指示待應用的處理的選擇指示符來進行確定。但是,如上所述,在一些實施例中,選擇指示不必顯式地指示。而是可以從碼流中與編碼圖像或視訊資料相關的其它參數推導。
此外,該方法包括步驟S3230:根據確定的圖像處理獲得所述圖像部分。因此,編碼到碼流中的圖像部分可以由相同類型的經訓練的網路的解碼器部分處理,例如圖2所示的VAE,因為經編碼的亮度分量和色度分量大小相同。此外,亮度上採樣和色度下採樣之一的圖像處理確定在任何情況下都提供了調整大小的亮度分量或色度分量,使得它們具有對應於用於編碼的分量輸入(原始圖像分量)的不同大小。這表示圖像部分被重建為其原始顏色格式,色度的解析度低於亮度。因此,無論所確定的圖像處理如何,經編碼的大小相等的亮度-色度通道都可以在公共VAE框架內處理。此外,圖像處理的確定支持在亮度上採樣和色度下採樣之間自我調整切換。這確保可以在任何情況下都重建具有原始顏色格式的圖像部分。因此,自我調整切換可以例如根據一些優化標準(例如RDO等)選擇低解析度或高解析度圖像處理。
圖18示出了解碼側及其操作。參考圖17的示例,其中,採樣模式由編碼到碼流中的標誌(指示符)指示,該標誌在解碼側從碼流解析出來。取決於功能塊1840中的標誌的值(即,它是表示編碼側的下轉換(亮度)還是上轉換(色度)),在相應的上分支和下分支中,亮度被上轉換1810或色度被下轉換1820。這表示,根據標誌的指示,輸入碼流的亮度-色度分量具有原始編碼圖像的一個或多個色度的大小或亮度的大小。在這兩種情況下,相應的上採樣和/或下採樣處理可以通過大小轉換處理執行,並以其原始格式提供重建幀作為輸出。但是,如圖18所示,上分支1810進行亮度上採樣,下分支1820進行色度分量(U和/或V)下採樣。相應的大小轉換可以由相應的大小轉換網路執行。與圖17的情況一樣,通過編碼標誌指示採樣模式是支援解碼器確定為重建原始圖像部分所執行的採樣模式的示例。如何在解碼側確定待執行的採樣模式的各種方法可以通過以下討論的其它方式執行。此外,需要說明的是,在這些示例中,調整大小的顏色分量(通道)與原始編碼圖像的大小匹配。但是,這並不限制本發明。對於某些應用,提供尺寸與原始編碼圖像的尺寸不同的顏色分量可能是有益的。
在一個實現方式示例中,上採樣和/或下採樣通過經訓練的網路執行。編碼側的經訓練的網路可以是適合下採樣或上採樣的任何類型的網路。例如,這包括人工神經網路(artificial neural network,ANN),例如神經網路、卷積神經網路(convolutional neural network,CNN)等。解碼器處的經訓練的網路可以是根據所需解析度調整輸入到該解碼器的通道的大小的任何大小調整網路。可以獲得具有相互不同的尺寸(大小),例如原始編碼圖像的尺寸或其它所需尺寸的通道。
圖21和圖22示出了在YUV444顏色格式的情況下解碼側的大小轉換網路的實現示例,亮度分量和色度分量U和V的大小相同。圖21示出了進行亮度上採樣的大小轉換網路(對應於1810的上分支)。圖22(對應於1820)示出了對兩個色度U和V進行下採樣的大小轉換網路。在該示例中,相應的層可以視為卷積神經網路的層。
參考圖5,圖21和圖22所示的卷積網路層以類似的方式定義。因此,相同的術語和/或標記法在此也適用。如圖21和圖22所述,待從碼流解碼的圖像部分的輸入顏色格式為YUV444。這表示從碼流解碼的亮度分量和色度分量的大小(即解析度)相同。
亮度處理(圖18和圖21中的上分支1810):用於亮度處理的大小轉換網路由一系列卷積層加上啟動層對Conv. N×K×K, Act組成。大小轉換網路由最後一層終止,該最後一層是卷積層Conv 1×K×K/2↑,沿水準和垂直方向按因數2對亮度分量進行上採樣。輸出是一個通道,即大小與原始亮度相同的重建亮度分量。
色度處理(圖18和圖22中的下分支1820):用於色度處理的大小轉換網路類似地由一系列卷積層加上啟動層Conv. N×K×K, Act組成。大小轉換網路由最後一層終止,該最後一層是卷積層Conv. 2×K×K/2↓,沿水準和垂直方向按因數2對兩個色度分量進行下採樣。輸出是兩個通道,即大小與其原始色度分量相同的重建的兩個色度分量。需要說明的是,在這種情況下,亮度分量可以被保留,具有第一實施例中討論的所有優點。
由於解碼側的大小轉換網路的輸入亮度-色度分量具有相同的解析度(即大小),因此這些輸入亮度-色度分量可以在現有的相同框架(例如具有相同輸入大小的ANN架構)內高效地處理。因此,可以使用與應用於亮度相同的網路架構重建具有一個或多個子採樣色度的任何顏色格式的圖像部分。因此,還能夠在處理不同分量(通道)時保留交叉分量相關性資訊。
在第一實施例中,描述了解碼側的色度下採樣可以利用亮度分量作為側資訊。這可以與上述第二實施例的色度分量的處理結合。此外,同樣的過程也可以應用於解碼側對亮度的上採樣,因為色度用作側資訊。
圖24進一步示出了解碼側的這一點,示出了與圖18中類似的解碼器結構,以及對於圖像部分的圖像處理的選擇可以由編碼到編碼碼流中的標誌(指示符)指示的示例性情況。如圖24所示,與圖18的示意圖的區別在於亮度上採樣(上分支)利用關於色度分量U和V的資訊。同樣,色度下採樣(下分支)利用關於亮度Y的資訊。否則,亮度和色度的相應採樣處理以與上文參考圖18討論的相同的方式執行。
因此,無論是否進行亮度上採樣和/或色度下採樣,在任何一種情況下,交叉資訊都用於相應的採樣。這表示可以利用亮度與一個或多個色度之間的相關性來重建通道。同樣的方法可以應用於其它顏色空間的通道,或者通常應用於不限於顏色通道的任何通道,例如深度或運動或與圖像相關的其它附加資訊。
圖27和圖28分別示出了解碼側的亮度上採樣和色度下採樣的大小轉換網路的示例性實現方式。如圖27和圖28所示,大小轉換網路在卷積層和啟動層的排列順序方面的設計與圖21和圖22所示的設計相同。對於圖27的情況,區別在於色度分量U和V連同下採樣亮度直接輸入到第一卷積層Conv. N×K×K, Act.。類似地,對於圖28的情況,亮度連同上採樣色度分量U和V直接輸入到第一卷積層Conv. N×K×K, Act.。
這表示,對於解碼側,大小轉換網路的第一處理層與編碼側相比可以不需要執行添加操作,其中,這種操作可以如圖25和圖26所示執行。編碼器處的大小均衡網路中的組合(連接或聯合處理)用於利用交叉分量相關性。在解碼側不需要反轉這種處理,因為解碼器的大小轉換網路的第一層的輸入(包括亮度分量和色度分量)已經具有如圖24所示在編碼器處獲得的相同大小。
如上所述,可以通過各種方式確定在解碼側執行的一種圖像處理。下文對此進行討論。
在一種示例性實現方式中,確定待應用的處理還包括從碼流解碼指示圖像處理的選擇指示符;並將由選擇指示符指示的處理確定為所述圖像處理。這支持對圖像處理進行高效指示。因此,解碼側可以根據碼流中包括的簡單指示符快速確定編碼側所使用的圖像處理(即亮度下採樣或色度上採樣)。上文參考編碼側描述了選擇指示符。如上所述,該選擇指示符可以是至少可以取第一值和第二值的指示符,其中,第一值指示亮度的上採樣(在解碼側,這對應於編碼側亮度的下採樣),第二值指示一個或多個色度的下採樣(在解碼側,對應於編碼側一個或多個色度的上採樣)。需要說明的是,選擇指示符通常可以取兩個以上值中的一個。例如,該選擇指示符可以取指示不調整大小的第三值和/或指示將調整一個以上分量的大小,或者甚至進一步指定調整大小應採取的方式(按何種比例或調整到所需解析度)的第四值。這適用於編碼側和解碼側,因為編碼器和解碼器應對選擇指示符具有相同的理解(解釋或語義)。另一方面,提供只能取兩個值(第一值和第二值)中的一個的一比特標誌(指示符)可能是高效的,因為它不會引入額外的高指示開銷。
解碼側操作如圖18所示。如上所述,解碼器接收具有相同大小的亮度分量和色度分量的碼流。該碼流由編碼側的圖像處理產生。在選擇指示符(標誌,例如RDO)編碼到碼流中的情況下,解碼器解析碼流並根據選擇指示符確定待執行的圖像處理。然後,如果標誌指示亮度已在編碼側進行下採樣,則解碼器對亮度分量進行上採樣。反過來,如果標誌指示色度分量已在編碼側進行上採樣,則解碼器對色度分量進行下採樣。在任何一種情況下,都會重建其原始大小的圖像部分。
在一些實施例中,(除了其它示例性實現方式或替代其它示例性實現方式)確定可以包括從碼流解碼圖像部分的亮度分量的寬度W和/或高度H。這支援根據圖像部分的亮度通道的寬度和高度確定圖像處理。換句話說,攜帶圖像部分的重要資訊的通道用作所述確定的參考。
此外,根據一種示例性實現方式,確定還可以包括確定寬度W和高度H是否與經解碼的亮度分量的相應寬度
Figure 02_image065
和高度
Figure 02_image067
相同。如果確定W和H與
Figure 02_image065
Figure 02_image067
相同,則對經解碼的色度分量進行下採樣。“相同”表示W和H以及相應的
Figure 02_image065
Figure 02_image067
具有相同的尺寸,例如在寬度方向(即沿著水準x)和高度方向(即沿著垂直y)上的樣本數。換句話說,W和H各自與其相應的對應寬度
Figure 02_image065
和高度
Figure 02_image067
匹配。在這種示例性情況下,色度已經在編碼側進行上採樣(高解析度結果)。但是,如上所述,匹配也可以通過在編碼器處對亮度進行下採樣來實現。然後,解碼器執行反向操作,例如,對亮度進行上採樣或對色度進行下採樣,以獲得在編碼前圖像的原始解析度。通過從寬度和高度推導待應用的處理,可以通過不包括顯式選擇指示符來節省速率。圖像或圖像部分的寬度和高度通常已經在用於配置圖像或圖像部分的編碼/解碼的參數集內指示。
需要說明的是,編碼側和解碼側對圖像部分的這種圖像處理,即色度上採樣(編碼器)和色度下採樣(解碼器)就採樣處理(上/下)而言對應於第一實施例的處理。
在上述示例中,如果原始圖像的W和H分別與從碼流解碼的圖像的
Figure 02_image065
Figure 02_image067
不匹配,則對色度進行下採樣,因為假設編碼器對色度進行了上採樣。這可能是默認功能。
但是,本發明並不限於此。默認功能可以包括在解碼側對亮度進行上採樣,假設編碼器對亮度進行下採樣。
因此,如果確定W和H中的任何一個都與
Figure 02_image065
和/或
Figure 02_image067
不相同,則對經解碼的亮度分量進行上採樣。“不相同”表示W和/或H以及相應的
Figure 02_image065
和/或
Figure 02_image067
在寬度方向(即沿水準x)和/或高度方向(即沿垂直y)上具有不同的樣本數。換句話說,W和H中的任何一個都不與其相應的對應寬度
Figure 02_image065
和/或高度
Figure 02_image067
對應。在這種情況下,亮度已在編碼側進行下採樣(低解析度結果)。
因此,通過將亮度的W和H與解碼亮度的相應寬度
Figure 02_image065
和高度
Figure 02_image067
進行簡單比較,可以很容易地在編碼側確定圖像處理。可以不使用關於(解碼)色度的資訊。這減少了在確定圖像處理時的開銷。
需要說明的是,上述色度下採樣或亮度上採樣都可以適用於解碼器。例如,解碼器和編碼器可以具有規則,根據該規則決定使用兩種處理類型中的哪一種。該規則可以是基於某些條件的決策,這些條件取決於某些語法元素(編碼參數),例如寬度和高度和/或品質參數或其它參數。
在另一種示例性實現方式中,確定待應用的處理包括確定碼流的大小S。大小S可以呈任何單位,例如比特、位元組、字等。確定還包括從碼流解碼圖像部分的潛在表示
Figure 02_image051
,其中,潛在表示具有寬度
Figure 02_image070
和/或高度
Figure 02_image072
。此外,通過將碼流的大小以及寬度
Figure 02_image070
和高度
Figure 02_image072
的函數與預定義的閾值T進行比較來確定圖像處理。這支援根據潛在表示
Figure 02_image051
來確定圖像處理。潛在表示可以基於特徵圖。因此,圖像處理確定更準確,因為它利用了潛在表示和特徵圖。根據一個實現方式示例,確定包括確定大小S與
Figure 02_image074
的比率是否等於或大於預定義閾值(此處的“*”是指乘法)。如果確定比率等於或大於預定義閾值,則對經解碼的色度分量進行下採樣。在這種情況下,色度已經在編碼側進行上採樣(高解析度結果)。需要說明的是,編碼側和解碼側對圖像部分的這種圖像處理,即色度上採樣(編碼器)和色度下採樣(解碼器)就採樣處理(上/下)而言可以對應於第一實施例的處理。
如果確定待應用的處理,比率小於預定義閾值,則在一種示例性實現方式中,對經解碼的亮度分量進行上採樣。在這種情況下,亮度已在編碼側進行下採樣(低解析度結果)。
因此,通過簡單地對碼流大小與潛在空間大小
Figure 02_image074
的比率設定閾值,可以很容易地在編碼側確定圖像處理。這使圖像處理確定更高效和快速,因為只使用碼流和潛在空間。這進一步減少了在確定圖像處理時的開銷。
這在圖30中示出。在這種情況下,解碼器從碼流確定待執行的圖像處理。例如,所述確定可以由分析碼流的決策模組執行。例如,當圖像部分的亮度分量的寬度W和高度H被編碼到碼流中時,解碼器從碼流解析W和H。此外,亮度分量和色度分量從碼流解碼。因此,經解碼的亮度分量的寬度
Figure 02_image065
和高度
Figure 02_image067
是已知的,或者可以在解碼側確定。例如,這也可以由決策模組執行。然後,所述模組將W和H與經解碼的亮度分量的相應寬度
Figure 02_image065
和高度
Figure 02_image067
進行比較(例如,逐樣本)。如果W =
Figure 02_image065
且H =
Figure 02_image067
,則對經解碼的色度分量進行下採樣。否則,如果這些等式中的任何一個都不成立,則對經解碼的亮度分量進行上採樣。
或者或另外,確定模組可以根據碼流的大小S和潛在空間表示
Figure 02_image051
確定圖像處理。然後,決策模組可以使用比較函數結合預定義閾值將大小S與寬度
Figure 02_image070
和/高度
Figure 02_image072
進行比較。例如,比較函數可以包括取比率R = S /
Figure 02_image074
,並確定R是否等於或大於預定義閾值。
如果是,即R >= T,則對經解碼的色度分量進行下採樣。在這種情況下,色度已經在編碼側進行上採樣(高解析度結果)。如果不是(即R > T),則對經解碼的亮度分量進行上採樣。在這種情況下,亮度已在編碼側進行下採樣(低解析度結果)。根據一個實現方式示例,確定包括從碼流解碼潛在表示
Figure 02_image051
。此外,圖像處理被確定為分類神經網路的輸出,該神經網路被饋送經解碼的潛在表示。輸出是第一類別和第二類別中的一種,第一類別表示經解碼的亮度分量的上採樣,第二類別表示經解碼的色度分量的下採樣。這支援通過使用神經網路,採用分類,以靈活的方式進行圖像處理確定。此外,該神經網路可以與用於所述確定的特徵分類相結合,因此可以更準確地確定圖像處理。此外,解碼側的上採樣或下採樣可以在不從碼流解析任何側資訊的情況下執行,這降低了碼率成本。
這種基於神經網路的確定也可以由決策模組執行,在這種情況下,所述模組根據分類結果決定圖像處理。例如,分類可以通過殘差神經網路(residual neural network,ResNet)使用重建的潛在空間
Figure 02_image051
作為輸入來執行。採樣處理,即編碼側的色度上採樣和解碼側的色度下採樣,可以以與第一實施例中已經討論的類似的方式執行。為了完整性重複此操作。
例如,色度上採樣(編碼側)可以包括在色度分量的每n排樣本之後插入一排樣本。排是指行和/或列,n是等於或大於1的整數。例如,這表示在每一個(n=1)或兩個(n=2)行和/或列之後,可以插入所述排樣本。這支持通過在特定行和/或列插入排樣本來進一步調整色度上採樣。類似的處理可以應用於解碼側的亮度。
或者,色度上採樣(編碼側)可以包括在色度分量的每n排樣本之後插入一排值為零的樣本。這可以稱為零填充。這是一種簡單的上採樣方式,只需將相應的排樣本設置為零。因此,不需要進一步指示和/或處理開銷。類似的處理可以應用於解碼側的亮度。
這在圖9中例示,示出了上採樣色度的4×4樣本。實心圓形符號是指原始色度的樣本。空心圓是指具有零值的樣本。在該示例中,各自在色度分量的第一行和第一列之後插入零值樣本。此外,在該示例中,大小均衡網路簡化為單層網路(M=1),在圖5的“添加”操作之後沒有進一步的層。在圖9(編碼側)中,U和V的上採樣簡化為在YUV420顏色格式的情況下在每行和每列中填充零。在YUV422格式的情況下,零的填充是針對每列的。在這種情況下,網路不是卷積神經網路,而是可以理解為全連接神經網路(fully-connected neural network,FCNN)的一個層。因此,該網路本身不是可訓練的。但是,它可以與VAE結構聯合訓練,以獲得更好的解碼性能。因此,相應的FCNN也可以指經訓練的網路。
在另一種實現方式中,色度上採樣可以通過在色度分量的每n排樣本之後插入值等於色度分量中相應的最近鄰樣本的一排樣本來執行。例如,可以通過將色度值複製到相應的相鄰樣本來插入值。與上述零填充的情況一樣,這支援通過在特定行和/或列插入排樣本來進一步調整色度上採樣。此外,使用參考色度的最近鄰樣本的插入排樣本的值,色度上採樣的精度更高,因為使用了參考原始色度的相鄰資訊(由相鄰色度樣本值反映)。
這在圖11中例示,示出了上採樣色度的4×4樣本。同樣,實心圓形符號是指原始色度的樣本。空心圓現在是指具有與其相應的色度相鄰樣本一致的值的樣本。在圖11中,將色度值插入到其相應的相鄰樣本中由箭頭表示。在該示例中,各自在色度分量的第一行和第一列之後插入樣本值。此外,在該示例中,大小均衡網路簡化為單層網路(M=1),在圖5的“添加”操作之後沒有進一步的層。在圖11(編碼側)中,U和V的上採樣簡化為每行和每列中的最近鄰樣本上採樣,如圖11中的YUV420格式所示。在YUV422格式的情況下,最近鄰樣本上採樣是針對每列的。在上文色度上採樣示例中,網路不是卷積神經網路,但可以理解為全連接網路的一個層。因此,該網路本身不是可訓練的,但是可以與VAE結構聯合訓練,以獲得更好的解碼性能。因此,相應的FCNN也可以指經訓練的網路。
但是,這僅僅是一個用於大小均衡的具有一個層的經訓練的網路的示例。對於本領域技術人員來說,清楚的是,大小均衡層可以具有一個以上的層,如整個圖5和圖7所示。在這種情況下,可以訓練大小均衡網路以進行色度上採樣。
同樣,可以進行在解碼側對亮度進行上採樣的圖像處理,至少通過每n排填充一些附加樣本。但是,通過使用插值濾波器進行亮度上採樣可以是有利的,即根據相鄰樣本(例如平均值或加權平均值等)確定添加的亮度樣本的值。通過使用經訓練的(經預訓練的)網路(例如基於ML/CL的網路等)進行亮度上採樣可以是有利的。
例如,色度下採樣(解碼側)可以通過在中間色度分量的每n排樣本之後移除一排樣本來進行。排是行和/或列,n是等於或大於1的整數。例如,這表示在每一個(n=1)或兩個(n=2)行和/或列之後,可以去除(刪除)所述排(行和/或列)。因此,可以通過簡單地去除相應的排樣本來快速執行中間色度的下採樣。
圖10和圖12示出了排樣本去除的示例。需要說明的是,圖10和圖12的樣本配置分別對應於圖9和圖11的樣本配置,結果是編碼側對色度分量進行上採樣處理。具體而言,圖10和圖12示出了中間色度的4×4樣本。實心圓形符號是指原始色度的樣本。交叉空心圓是指可以為非零值的樣本,從而由編碼側的大小均衡網路進行色度上採樣處理(使用和不使用亮度作為側資訊)和/或通過解碼側的大小轉換網路的一個或多個第一層進行色度處理。
在圖10和圖12所示的示例中,大小轉換網路簡化為單層網路(M=1)。在圖10和圖12中(解碼側),簡化了U和V的下採樣,以便在YUV420顏色格式的情況下捨棄奇數行和奇數列樣本。對於YUV422,去除奇數列樣本。在圖10和圖12所示的這些情況中的任一種情況下,相應網路不是卷積神經網路,而是可以理解為全連接神經網路(fully-connected neural network,FCNN)的一個層。因此,在該示例中,該網路本身是不可訓練的。但是,該網路可以與VAE結構聯合訓練,以獲得更好的解碼性能。因此,相應的FCNN也可以指經訓練的網路。
但是,這僅僅是一個用於大小轉換的具有一個層的經訓練的網路的示例。對於本領域技術人員來說,清楚的是,大小轉換層可以具有一個以上的層,如整個圖6和圖8所示。在這種情況下,可以訓練大小轉換網路以進行色度上採樣。
需要說明的是,圖5所示的編碼側的大小均衡網路和圖6所示的解碼側的大小轉換網路可以與VAE結構聯合訓練。這可以進一步改進子採樣色度分量的編碼-解碼處理,特別是在VAE框架內。例如,這包括編碼-解碼性能和/或重建圖像的品質。
或者,這些網路可以單獨訓練並用作經預訓練的VAE網路。在任何一種情況下,相應的網路都是指經訓練的網路或經預訓練的網路。同樣,可以進行在編碼側對亮度進行下採樣的圖像處理。通常,訓練可以事先進行,即在網路在推理階段用於編碼、上採樣、解碼等之前進行。
此外,如上所述,本發明還提供了用於執行上述方法的步驟的設備。
圖33示出了用於對圖像部分進行編碼的編碼器3300。圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量。編碼器包括選擇模組3310,用於選擇以下之一作為圖像部分的圖像處理:對亮度分量進行下採樣以獲得解析度與色度分量的解析度匹配的下採樣亮度分量;以及對色度分量進行上採樣,以獲得解析度與亮度分量的解析度匹配的上採樣色度分量。此外,編碼器包括處理模組3320,用於根據所選擇的圖像處理處理圖像部分。編碼器還包括生成模組3330,用於根據所選擇的圖像處理生成碼流,其中,生成包括對經處理的圖像部分進行編碼。
在一個實現方式示例中,編碼器可以包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,當所述一個或多個處理器執行所述程式時,所述程式使所述編碼器執行上文提及的方法。
圖34示出了用於從碼流重建圖像部分的解碼器3400。圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量。解碼器包括解碼模組3410,用於從碼流解碼解析度相同的亮度分量和色度分量。此外,解碼器包括確定模組3420,用於從碼流確定以下之一作為圖像處理:對經解碼的亮度分量進行上採樣,並獲得包括所述經解碼的色度分量和上採樣亮度分量的重建圖像部分;以及對經解碼的色度分量進行下採樣,並獲得包括所述經解碼的亮度分量和下採樣色度分量的重建圖像部分。解碼器還包括獲取模組3430,用於根據確定的圖像處理獲得所述圖像部分。
在一個實現方式示例中,解碼器可以包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,當所述一個或多個處理器執行所述程式時,所述程式使所述解碼器執行上文提及的方法。
根據本發明的一個實施例,提供了一種儲存在非暫態性介質上的電腦程式,所述電腦程式包括代碼,當所述代碼在一個或多個處理器上執行時執行上文提及的任一方法的步驟。
本發明的一些實施例可以提供優點,這些優點可以總結如下: 亮度樣本資訊被完全保留。 亮度空間資訊被完全保留。 大小均衡CNN和大小轉換CNN可以與VAE網路結構聯合訓練。聯合訓練可以進一步改善結果。或者,大小均衡CNN和大小轉換CNN也可以與VAE分開訓練。 其它類型的色度子採樣格式(例如YUV422)可以由VAE網路結構處理。 可以保留交叉分量亮度-色度資訊。 實現低解析度以節省碼率的亮度下採樣與實現高解析度以保留亮度資訊的色度上採樣之間自我調整切換。
硬體和軟體中的一些示例性實現方式
圖35示出了可以部署上述編碼器-解碼器處理鏈的對應系統。圖35為示例性解碼系統的示意性框圖,例如可以利用本申請技術的視訊、圖像、音訊和/或其它解碼系統(或簡稱為解碼系統)。視訊解碼系統10的視訊編碼器20(或簡稱為編碼器20)和視訊解碼器30(或簡稱為解碼器30)代表可用於根據本申請中描述的各種示例執行各技術的設備的示例。例如,視訊編碼和解碼可以使用如圖2A至圖2C所示的神經網路,該神經網路可以被分佈,並且可以包括在色度上採樣之前(實施例1)或評估是對色度上採樣還是對亮度下採樣之前編碼的上述碼流(實施例2)。
如圖35所示,解碼系統10包括源設備12,該源設備12用於將經編碼的圖像資料21提供給目的地設備14等,以對經編碼的圖像資料13進行解碼。
源設備12包括編碼器20,並且可以另外(即可選地)包括圖像源16、前置處理器(或預處理單元)18(例如圖像前置處理器18)和通信介面或通信單元22。
需要說明的是,本發明的實施例1和2以及上述與編碼有關的它們的示例性實現方式可以作為編碼器20的一部分執行。但是,或者,可以想像執行這些實施例是由前置處理器18執行的。類似地,在解碼側,本發明的實施例1和2以及上述與解碼有關的它們的示例性實現方式可以作為解碼器30的一部分執行。但是,或者,可以想像執行這些實施例是由後處理器32執行的。
圖像源16可以包括或可以是任何類型的圖像擷取裝置,例如用於捕獲真實世界圖像的攝像機,和/或任何類型的圖像生成設備,例如用於生成電腦動畫圖像的電腦圖形處理器,或用於獲取和/或提供真實世界圖像、電腦生成圖像(例如,螢幕內容、虛擬實境(virtual reality,VR)圖像)和/或其任何組合(例如,增強現實(augmented reality,AR)圖像)的任何類型的其它設備。圖像源可以為儲存任一上述圖像的任何類型的記憶體(memory/storage)。
為了與前置處理器18和預處理單元18執行的處理區分,圖像或圖像資料17也可以稱為原始圖像或原始圖像資料17。
前置處理器18用於接收(原始)圖像資料17,對圖像資料17進行預處理,以獲得經預處理的圖像19或經預處理的圖像資料19。前置處理器18執行的預處理可包括修剪(trimming)、顏色格式轉換(例如從RGB轉換為YCbCr)、調色或去噪等。可以理解的是,預處理單元18可以為可選元件。需要說明的是,預處理還可以使用神經網路(例如圖1(a)-1(c)至圖7中的任何一個)。如上所述,預處理可以包括神經網路(經訓練的網路)對色度上採樣(實施例1和/或實施例2)或對亮度下採樣(實施例2)的處理。
視訊編碼器20用於接收經預處理的圖像資料19並提供經編碼的圖像資料21。
源設備12的通信介面22可以用於接收經編碼的圖像資料21,並通過通信通道13將經編碼的圖像資料21(或其任何其它經處理版本)發送到另一設備(例如目的地設備14)或任何其它設備,以便進行儲存或直接重建。
目的地設備14包括解碼器30(例如,視訊解碼器30),並且可以另外(即,可選地)包括通信介面或通信單元28、後處理器32(或後處理單元32)和顯示裝置34。
目的地設備14的通信介面28用於接收經編碼的圖像資料21(或其任何其它經處理版本),例如,直接從源設備12或任何其它源(例如,編碼圖像資料存放裝置等存放裝置)接收,並將經編碼的圖像資料21提供給解碼器30。
通信介面22和通信介面28可以用於通過源設備12與目的地設備14之間的直接通信鏈路(例如,直接有線或無線連接),或通過任何類型的網路(例如,有線或無線網路或其任何組合,或任何類型的專用和公共網路),或其任何類型的組合發送或接收經編碼的圖像資料21或編碼資料13。
例如,通信介面22可用於將經編碼的圖像資料21封裝為資料包等合適的格式,和/或使用任何類型的傳輸編碼或處理來處理所述經編碼的圖像資料,以便通過通信鏈路或通信網路進行發送。
例如,與通信介面22對應的通信介面28可用於接收傳輸資料,並使用任何類型的對應傳輸解碼或處理和/或解封裝對傳輸資料進行處理,以獲得經編碼的圖像資料21。
通信介面22和通信介面28均可配置為圖35中從源設備12指向目的地設備14的通信通道13的箭頭所表示的單向通信介面,或者配置為雙向通信介面,並且可以用於發送和接收消息等,以建立連接、確認並交換與通信鏈路和/或資料傳輸(例如經編碼的圖像資料傳輸)相關的任何其它資訊等。解碼器30用於接收經編碼的圖像資料21並提供經解碼的圖像資料31或經解碼的圖像31(例如,使用基於圖1(a)-1(c)至圖7中的一個或多個的神經網路)。
目的地設備14的後處理器32用於對經解碼的圖像資料31(也稱為重建圖像資料)(例如,經解碼的圖像31)進行後處理,以獲得經後處理的圖像資料33(例如,後處理圖像33)。例如,由後處理單元32執行的後處理可以包括顏色格式轉換(例如,從YCbCr轉換為RGB)、調色、修剪或重採樣,或任何其它處理,例如,用於提供經解碼的圖像資料31以供顯示裝置34等顯示。
目的地設備14的顯示裝置34用於接收經後處理的圖像資料33,以向使用者或觀看者等顯示圖像。顯示裝置34可以是或包括用於顯示重建圖像的任何類型的顯示器,例如,集成或外部的顯示器或監視器。例如,顯示器可以包括液晶顯示器(liquid crystal display,LCD)、有機發光二極體(organic light emitting diode,OLED)顯示器、等離子顯示器、投影儀、微型LED顯示器、矽基液晶顯示器(liquid crystal on silicon,LCoS)、數位光處理器(digital light processor,DLP)或任何類型的其它顯示器。
儘管圖35將源設備12和目的地設備14作為單獨的設備進行描述,但是設備實施例還可以包括兩種設備或兩種功能,即源設備12或對應功能以及目的地設備14或對應功能。在這些實施例中,可以使用相同的硬體和/或軟體或使用單獨的硬體和/或軟體或其任何組合來實現源設備12或對應功能以及目的地設備14或對應功能。
根據描述,技術人員顯而易見的是,圖35所示的源設備12和/或目的地設備14中的不同單元或功能的存在和(精確)劃分可以根據實際設備和應用而不同。
編碼器20(例如視訊編碼器20)或解碼器30(例如視訊解碼器30),或編碼器20和解碼器30兩者都可通過處理電路實現,例如一個或多個微處理器、數位訊號處理器(digital signal processor,DSP)、專用積體電路(application-specific integrated circuit,ASIC)、現場可程式設計閘陣列(field-programmable gate array,FPGA)、離散邏輯、硬體、視訊解碼專用處理器或其任何組合。編碼器20可以通過處理電路46實現,以體現包括神經網路的各種模組,例如圖2A至圖2C中任何一個所示的模組或其部件。解碼器30可以由處理電路46實現,以體現結合圖2A至圖2C討論的各種模組和/或本文描述的任何其它解碼器系統或子系統。處理電路可以用於執行下文討論的各種操作。如果上述技術部分在軟體中實現,則設備可以將該軟體的指令儲存在合適的非暫態性電腦可讀存儲介質中,並且可以使用一個或多個處理器在硬體中執行這些指令,以執行本發明技術。視訊編碼器20或視訊解碼器30可以作為組合轉碼器(encoder/decoder,CODEC)的一部分集成在單個設備中,如圖36所示。
源設備12和目的地設備14可以包括多種設備中的任一種,包括任何類型的手持或固定設備,例如,筆記型電腦或膝上型電腦、手機、智慧手機、平板電腦(tablet/tablet computer)、攝像機、臺式電腦、機上盒、電視、顯示裝置、數位媒體播放機、視訊遊戲機、視訊流設備(例如內容服務伺服器或內容分佈伺服器)、廣播接收器設備、廣播發射器設備等,並且可以不使用或使用任何類型的作業系統。在某些情況下,可以配備源設備12和目的地設備14以用於無線通訊。因此,源設備12和目的地設備14可以是無線通訊設備。
在某些情況下,圖35所示的視訊解碼系統10僅僅是示例,本申請的技術可適用於在編碼設備與解碼設備之間不一定包括任何資料通信的視訊解碼設置(例如,視訊編碼或視訊解碼)。在其它示例中,資料從本機存放區器中檢索,通過網路傳輸,等等。視訊編碼設備可以對資料進行編碼並將資料儲存到記憶體中,和/或視訊解碼設備可以從記憶體檢索資料並對資料進行解碼。在一些示例中,編碼和解碼由相互不通信而只是將資料編碼到記憶體和/或從記憶體檢索資料並對資料進行解碼的設備來執行。
圖37為本發明實施例提供的視訊解碼設備1000的示意圖。視訊解碼設備1000適用于實現本文描述的公開實施例。在一個實施例中,視訊解碼設備1000可以是解碼器(如圖35的視訊解碼器30)或編碼器(如圖35的視訊編碼器20)。
視訊解碼設備1000包括:用於接收資料的入埠1010(或輸入埠1010)和接收單元(Rx)1020;用於處理資料的處理器、邏輯單元或中央處理單元(central processing unit,CPU)1030;用於發送資料的發送單元(Tx)1040和出埠1050(或輸出埠1050);以及用於儲存資料的記憶體1060。視訊解碼設備1000還可以包括與入埠1010、接收單元1020、發送單元1040和出埠1050耦合的光電(optical-to-electrical,OE)組件和電光(electrical-to-optical,EO)元件,用作光訊號或電訊號的出口或入口。
處理器1030通過硬體和軟體實現。處理器1030可以實現為一個或多個CPU晶片、核(例如,多核處理器)、FPGA、ASIC和DSP。處理器1030與入埠1010、接收單元1020、發送單元1040、出埠1050和記憶體1060通信。處理器1030包括解碼模組1070。解碼模組1070實現上文描述的公開實施例。例如,解碼模組1070執行、處理、準備或提供各種解碼操作。因此,將解碼模組1070包括在內使得視訊解碼設備1000的功能得到了顯著改進,並且實現了視訊解碼設備1000到不同狀態的轉換。或者,以儲存在記憶體1060中並由處理器1030執行的指令來實現解碼模組1070。
記憶體1060可以包括一個或多個磁片、磁帶機或固態硬碟,並且可以用作溢出資料存放裝置,以在選擇程式來執行時儲存這些程式以及儲存在執行程式過程中讀取的指令和資料。例如,記憶體1060可以是易失性的和/或非易失性的,可以是唯讀記憶體(read-only memory,ROM)、隨機存取記憶體(random-access memory,RAM)、三態內容定址記憶體(ternary content-addressable memory,TCAM)和/或靜態隨機存取記憶體(static random-access memory,SRAM)。
圖38為示例性實施例提供的裝置800的簡化框圖,裝置800可用作圖35中的源設備12和目的地設備14中的任一個或兩個。
裝置1100中的處理器1102可以是中央處理單元。或者,處理器1102可以是現有的或今後將開發出的能夠操控或處理資訊的任何其它類型的設備或多個設備。雖然可以使用如圖所示的處理器1102等單個處理器來實現所公開的實現方式,但使用一個以上處理器可以提高速度和效率。
在一種實現方式中,裝置1100中的記憶體1104可以是唯讀記憶體(read only memory,ROM)設備或隨機存取記憶體(random access memory,RAM)設備。任何其它合適類型的存放裝置都可以用作記憶體1104。記憶體1104可以包括處理器1102通過匯流排1112訪問的代碼和資料1106。記憶體1104還可包括作業系統1108和應用程式1110,其中,應用程式1110包括支援處理器1102執行本文所述方法的至少一個程式。例如,應用程式1110可以包括應用1至N,還可以包括執行本文所述方法的視訊解碼應用。
裝置1100還可以包括一個或多個輸出設備,例如顯示器1118。在一個示例中,顯示器1118可以是將顯示器與觸敏元件組合的觸敏顯示器,該觸敏元件能夠用於感測觸摸輸入。顯示器1118可以通過匯流排1112與處理器1102耦合。
儘管裝置1100的匯流排1112在本文中描述為單個匯流排,但是匯流排1112可以包括多個匯流排。此外,次要存放裝置可以直接與裝置1100的其它元件耦合或可以通過網路訪問,並且可以包括單個集成單元(例如一個記憶卡)或多個單元(例如多個記憶卡)。因此,裝置1100可以通過多種配置實現。
一些示例性實施例的概述
本發明的一些實施例提供了以亮度分量和子採樣色度分量作為輸入對圖像部分進行編碼和解碼的方法和裝置。亮度分量可以通過下採樣來處理,使得編碼-解碼處理可以以低碼率更快地執行,從而獲得較低的解析度。色度分量可以通過色度上採樣處理,從而提供高解析度結果。也可以以這種方式保留亮度與色度之間的空間相關性。在任何一種情況下,調整大小的亮度-色度分量都具有匹配的解析度,並且經訓練的網路進行的編碼應用於匹配的分量。編碼器可以在亮度下採樣與色度上採樣之間自我調整地選擇,解碼器執行亮度上採樣和色度下採樣的反向圖像處理。因此,編碼-解碼處理可以根據所選擇的圖像處理提供低解析度或高解析度圖像。
根據本發明的一個方面,一種用於對圖像部分進行編碼的方法,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述方法包括:選擇以下之一作為所述圖像部分的處理:對亮度分量進行下採樣,以便獲得解析度與色度分量的解析度匹配的下採樣亮度分量;對色度分量進行上採樣,以便獲得解析度與亮度分量的解析度匹配的上採樣色度分量;根據所選擇的處理處理圖像部分;以及根據所選擇的處理生成碼流,其中,所述生成包括對經處理的圖像部分進行編碼。
這提供了大小相等的亮度-色度輸出作為輸出,無論是對亮度分量進行下採樣還是對色度分量進行上採樣。因此,所述輸出然後可以由具有類似結構,特別是相同輸入解析度的經訓練的網路(例如在機器學習框架內)處理。如果所有顏色分量的解析度相同,則機器學習框架能夠在所有樣本位置以相同的方式利用交叉顏色相關性。在其中一個圖像過程中,亮度通道可以不受影響,在這種情況下,不會出現品質損失。
下採樣亮度有利於實現低解析度以節省碼率,而上採樣色度有利於實現高解析度以保留亮度資訊。因此,自我調整切換可以根據對碼率或圖像品質的要求和/或限制選擇採樣模式。由於在圖像部分的所選擇圖像處理的任何一種情況下,所處理的亮度-色度分量都具有匹配的解析度,因此輸出可以在VAE框架或支援高效編碼的另一個框架內處理。
在一些示例性實現方式中,選擇包括對速率和失真的成本函數進行評估。因此,採樣模式(即亮度下採樣和色度上採樣)的選擇是基於成本的。
根據所述方法的一種示例性實現方式,選擇包括:對亮度分量進行下採樣,從而獲得中間下採樣亮度分量;並且對色度分量進行上採樣,從而獲得中間上採樣色度分量。採樣模式(包括亮度下採樣和色度上採樣)的選擇在任何情況下都提供了中間亮度分量和中間色度分量,每個分量都具有匹配的解析度(即大小)。然後,例如,大小相等的亮度-色度分量可以通過VAE進行進一步處理。
在所述方法的另一個實現方式示例中,選擇包括:根據所述成本函數確定中間下採樣亮度分量和色度分量的成本,以及分別亮度分量和中間上採樣色度分量的成本;其中,在選擇中,選擇所確定的成本較低的圖像部分的圖像處理。因此,亮度分量和子採樣色度分量的整體編碼通過使用成本最低的採樣模式(即亮度下採樣或色度上採樣)高效地執行。
根據所述方法的一個實現方式示例,所述確定包括:將中間下採樣亮度分量和色度分量編碼到第一碼流中;將亮度分量和中間上採樣色度分量編碼到第二碼流中;以及根據所述成本函數確定第一碼流和第二碼流的成本。因此,實際成本可以準確地確定,因為它是基於實際的經編碼的第一碼流和第二碼流。
在所述方法的一個示例中,生成碼流包括將指示所選擇的圖像處理的選擇指示符編碼到碼流中。這使已經對碼流執行的圖像處理的指示的複雜性較低。
在另一個示例中,生成碼流包括將亮度分量的寬度W和/或高度H的指示編碼到碼流中。因此,原始圖像部分的寬度和高度可以指示給編碼器。
根據所述方法的一種示例性實現方式,上採樣和/或下採樣通過經訓練的網路執行。基於經訓練的網路的解碼可以提高性能,這要歸功於可能用所需資料訓練這種網路。
根據一個示例,編碼經處理的圖像部分由變分自動編碼器(variational autoencoder,VAE)執行。VAE可以有利於以非常高效的方式執行與圖像編碼和/或解碼相關的任務,並且在所需的碼率與重建圖像的品質之間實現良好折衷。
根據本發明的一個方面,提供了一種用於從碼流重建圖像部分的方法,所述圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量,所述方法包括:從碼流解碼解析度相同的亮度分量和色度分量;從碼流確定以下之一作為圖像處理:對經解碼的亮度分量進行上採樣,並獲得包括所述經解碼的色度分量和上採樣亮度分量的重建圖像部分;以及對經解碼的色度分量進行下採樣,並獲得包括所述經解碼的亮度分量和下採樣色度分量的重建圖像部分;根據確定的圖像處理獲得所述圖像部分。
因此,亮度上採樣和色度下採樣之一的確定的圖像處理在任何情況下都提供了調整大小的亮度分量或色度分量,使得它們具有對應于已經作為用於編碼的輸入的分量(原始圖像分量)的不同大小。因此,圖像部分被重建為其原始顏色格式,色度的解析度低於亮度。因此,經編碼的大小相等的亮度-色度通道可以在公共VAE框架內處理,而不管確定的圖像處理如何。通常,在解碼側提供的優點可以類似於通過相應編碼方法的對應附加特徵在編碼側提供的優點。
根據所述方法的一種實現方式,確定還包括:從碼流解碼指示圖像處理的選擇指示符;並將由選擇指示符指示的處理確定為所述圖像處理。這支持對圖像處理進行高效指示。因此,解碼側可以根據碼流中包括的簡單指示符快速確定編碼側所使用的圖像處理(即亮度下採樣或色度上採樣)。
根據另一種示例性實現方式,確定還包括從碼流解碼圖像部分的亮度分量的寬度W和/或高度H。這支援根據圖像部分的亮度通道的寬度和高度確定圖像處理。換句話說,攜帶圖像部分的重要資訊的通道用作所述確定的參考。
在一個示例中,確定還包括:確定寬度W和高度H是否與經解碼的亮度分量的相應寬度
Figure 02_image065
和高度
Figure 02_image067
相同;如果確定W和H與
Figure 02_image065
Figure 02_image067
相同,則對經解碼的色度分量進行下採樣;如果確定W和H中的任何一個與
Figure 02_image065
和/或
Figure 02_image067
不相同,則對經解碼的亮度分量進行上採樣。通過從寬度和高度推導待應用的處理,可以通過不包括顯式選擇指示符來節省速率。此外,通過將亮度的W和H與解碼亮度的相應寬度
Figure 02_image065
和高度
Figure 02_image067
進行簡單比較,可以很容易地在編碼側確定圖像處理。可以使用關於(解碼)色度的資訊,因此減少了確定圖像處理時的開銷。
根據另一個實現方式示例,確定包括:確定碼流的大小S;從碼流解碼圖像部分的潛在表示
Figure 02_image051
,所述潛在表示具有寬度
Figure 02_image070
和/或高度
Figure 02_image072
;通過將碼流的大小和寬度
Figure 02_image070
和/高度
Figure 02_image072
的函數與預定義的閾值T進行比較,確定圖像處理。這可以根據潛在表示
Figure 02_image051
確定圖像處理。潛在表示可以基於特徵圖。因此,圖像處理確定更準確,因為它利用了潛在表示和特徵圖。
在一種示例性實現方式中,確定包括:確定大小S與
Figure 02_image074
的比率是否等於或大於預定義閾值;如果確定比率等於或大於預定義閾值,則對經解碼的色度分量進行下採樣;如果確定比率小於預定義閾值,則對經解碼的亮度分量進行上採樣。因此,解碼器待執行的圖像處理可以簡單地使用碼流大小S和潛在空間大小
Figure 02_image074
的比率來確定。此外,通過簡單地對碼流大小與潛在空間大小
Figure 02_image074
的比率設定閾值,有助於快速確定圖像處理。這使圖像處理確定更高效,因為只使用碼流和潛在空間。這進一步減少了在確定圖像處理時的開銷。
根據另一個實現方式示例,確定包括:從碼流解碼潛在表示
Figure 02_image051
;將圖像處理確定為饋送有經解碼的潛在表示的分類神經網路的輸出,其中,所述輸出是第一類別和第二類別中的一種,第一類別表示經解碼的亮度分量的上採樣,第二類別表示經解碼的色度分量的下採樣。這支援利用神經網路來確定圖像處理確定。這使圖像處理確定更加靈活。此外,它可以與特徵的分類相結合用於所述確定,因為潛在空間可以基於特徵圖。因此,可以更準確地執行圖像處理的確定。此外,上採樣或下採樣方法可以在不從碼流解析任何側資訊的情況下在解碼側獲得,這降低了碼率成本。
根據一種示例性實現方式,上採樣和/或下採樣通過經訓練的網路執行。通過提供基於下採樣亮度或上採樣色度的碼流,解碼側可以以更高品質和/或更低速率重建圖像(靜止或視訊)。經訓練的網路可以提供自我調整和高效的解碼,從而在相同速率下提供提高的品質或在相同品質下提供提高的速率。
例如,解碼經處理的圖像部分由變分自動編碼器(variational auto encoder,VAE)執行。因此,可以進行高效解碼,在所需的碼率和/或重建圖像的品質之間實現良好折衷。
根據本發明的一個方面,提供了一種儲存在非暫態性介質上的電腦程式,所述電腦程式包括代碼,當所述代碼在一個或多個處理器上執行時執行上文提及的任一方法的步驟。
根據本發明的一個方面,提供了一種用於對圖像部分進行編碼的編碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述編碼器包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,所述一個或多個處理器執行所述程式時,所述程式使所述編碼器執行上文提及的編碼方法。
根據本發明的一個方面,提供了一種用於從碼流重建圖像部分的解碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述解碼器包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,所述一個或多個處理器執行所述程式時,所述程式使所述解碼器執行上文提及的解碼方法。
根據本發明的一個方面,提供了一種用於對圖像部分進行編碼的編碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述編碼器包括處理電路,所述處理電路用於執行上文提及的編碼方法的步驟。
根據本發明的一個方面,提供了一種用於從碼流重建圖像部分的解碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述解碼器包括處理電路,所述處理電路用於執行上文提及的解碼方法的步驟。
根據本發明的一個方面,提供了一種用於對圖像部分進行編碼的編碼器,所述圖像部分包括亮度分量和解析度低於所述亮度分量的解析度的色度分量,所述編碼器包括:選擇模組,用於選擇以下之一作為所述圖像部分的圖像處理:對亮度分量進行下採樣,以便獲得解析度與色度分量的解析度匹配的下採樣亮度分量;對色度分量進行上採樣,以便獲得解析度與亮度分量的解析度匹配的上採樣色度分量;處理模組,用於根據所選擇的圖像處理處理圖像部分;以及生成模組,用於根據所選擇的圖像處理生成碼流,其中,所述生成包括對經處理的圖像部分進行編碼。
根據本發明的一個方面,提供了一種用於從碼流重建圖像部分的解碼器,所述圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量,所述解碼器包括:解碼模組,用於從碼流解碼解析度相同的亮度分量和色度分量;確定模組,用於從碼流確定以下之一作為圖像處理:對經解碼的亮度分量進行上採樣,並獲得包括所述經解碼的色度分量和上採樣亮度分量的重建圖像部分;以及對經解碼的色度分量進行下採樣,並獲得包括所述經解碼的亮度分量和下採樣色度分量的重建圖像部分;獲取模組,用於根據確定的圖像處理獲得所述圖像部分。
這些實施例能夠根據所需應用在輸入圖像部分的色度上採樣與亮度下採樣之間自我調整切換。例如,一些應用可能旨在降低複雜性或碼率,在這種情況下,亮度下採樣可能更有利,而其它應用可能旨在獲得更高品質,在這種情況下,色度上採樣可能更有利。因此,具有亮度分量和子採樣色度分量的圖像部分可以在圖像處理的任何採樣模式(包括亮度下採樣和色度上採樣)中高效編碼和/或解碼。
需要說明的是,本發明不限於特定框架。此外,本發明不限於圖像或視訊壓縮,並且也可以應用於物件檢測、圖像生成和識別系統。
本發明可以在硬體和/或軟體中實現。
為了清楚起見,任一上述實施例可以與上述其它任何一個或多個實施例組合以創建在本發明範圍內的新實施例。
總而言之,本發明涉及視訊編碼和解碼,具體涉及基於深度學習的視訊(解碼)編碼中色度子採樣格式的處理。對應的裝置和方法能夠對包括亮度分量和解析度低於所述亮度分量的解析度的色度分量的相應圖像部分進行編碼和解碼處理。為了處理這種不同大小的亮度-色度通道,對所述色度分量進行上採樣,使得所獲得的上採樣色度分量具有與一個所述亮度分量的所述解析度匹配的解析度。然後,亮度分量和上採樣色度分量被編碼到碼流中。為了重建所述圖像部分,從所述碼流解碼所述亮度分量和解析度與所述亮度分量的所述解析度匹配的中間色度分量,然後對所述中間色度分量進行下採樣。因此,子採樣色度格式可以由自動編碼器/自動解碼器框架處理,同時保留亮度通道。
此外,本發明涉及圖像或視訊編碼和解碼。圖像部分包括亮度分量和解析度低於亮度分量的解析度的色度分量。為了獲得亮度分量和色度分量的匹配解析度,在亮度分量的下採樣處理與色度分量的上採樣處理之間進行選擇。然後,將所選擇的處理應用於圖像部分。然後,根據所選擇的處理生成碼流,並包括對經處理的圖像部分進行編碼。色度上採樣與亮度下採樣之間的選擇支援為所需應用調整輸入圖像部分。例如,一些應用可能旨在降低複雜性或碼率,在這種情況下,亮度下採樣可能更有利,而其它應用可能旨在獲得更高品質,在這種情況下,色度上採樣可能更有利。
410:NN大小均衡、NN大小均衡模組 420:VAE編碼器 470:VAE解碼器 480:下採樣網路、NN大小轉換以匹配輸入大小 S1310、S1320、S1410、S1420、S3110、S3120、S3130、S3210、S3220、S3230:步驟 1500:編碼器 1510:上採樣模組 1520:編碼模組 1600:解碼器 1610:解碼模組 1620:下採樣模組 1710、2910、2920:NN大小均衡 1720:NN大小均衡 1730、2930:RDO 1740、1840:上或下 1810、1820:NN大小轉換 3310:選擇模組 3314、3424:上採樣器 3312、3422:下採樣器 3320:處理模組 3330:生成模組 3332:編碼模組 3400:解碼器 3410:解碼模組 3420:確定模組 3430:獲取模組 10:解碼系統 12:源設備 13:通信通道 14:目的地設備 16:圖像源 17:圖像資料 18:預處理器 19:預處理圖像資料 20:編碼器、視訊編碼器 22:通信介面 21:經編碼圖像資料 28:通信介面 30:解碼器、視頻解碼器 31:經解碼的圖像資料 32:後處理器 33:經後處理的圖像資料 34:顯示設備 40:視訊解碼系統 41:一個或多個成像設備 42:天線 43:一個或多個處理器 44:一個或多個記憶體 45:顯示設備 46:處理電路 1000:視頻解碼設備 1010:入埠、輸入埠 1030:處理器 1020、1040:Tx/Rx 1050:出埠、輸出埠 1060:記憶體 1100:裝置 1102:處理器 1104:記憶體 1106:資料 1108:作業系統 1110:應用程式 1112:匯流排 1118:顯示器
下文結合附圖對本發明的實施例進行詳細描述。在附圖中: 圖1(a)-1(c)示出了亮度-色度YUV格式的示例,包括(a)YUV444、(b)YUV422和(c)YUV420; 圖2A是人工神經網路中層處理的輸入和輸出的示意圖; 圖2B是示例性自動編碼器的部分的框圖; 圖2C是包括超先驗模型的變分自動編碼器架構的示意圖; 圖3示出了包括超先驗模型的VAE結構的示意圖,在該VAE結構中,進行亮度分量的下採樣; 圖4示出了本發明的基於VAE的編碼器-解碼器架構的示意圖,使用亮度分量作為側資訊進行色度通道的上採樣和下採樣; 圖5示出了使用亮度分量作為側資訊,在VAE架構的編碼側進行色度上採樣的大小均衡網路的示意圖; 圖6示出了使用亮度分量作為側資訊,在VAE架構的解碼側進行(中間)色度下採樣的大小轉換網路的示意圖; 圖7示出了不使用亮度分量作為側資訊,在VAE架構的編碼側進行色度上採樣的大小均衡網路的示意圖; 圖8示出了不使用亮度分量作為側資訊,在VAE架構的解碼側進行(中間)色度下採樣的大小轉換網路的示意圖; 圖9示出了通過在奇數行和奇數列插入零來進行色度上採樣的示例; 圖10示出了通過在奇數行和奇數列去除零來進行色度下採樣的示例; 圖11示出了通過在值等於色度分量中相應的最近鄰樣本的奇數行和奇數列插入零來進行色度上採樣的另一個示例; 圖12示出了通過去除對應於色度分量中最近鄰樣本的奇數行和奇數列的樣本值來進行色度下採樣的另一個示例; 圖13示出了編碼方法的流程圖,包括將子採樣色度上採樣到大小與亮度相同的中間色度; 圖14示出了解碼方法的流程圖,包括從碼流解碼中間色度,並將中間色度下採樣到大小與亮度不同的子採樣色度; 圖15示出了編碼器的框圖,包括上採樣模組和編碼模組; 圖16示出了解碼器的框圖,包括解碼模組和下採樣模組; 圖17示出了編碼器在不使用色度分量的情況下進行亮度下採樣(上分支)和在不使用亮度分量的情況下進行色度上採樣(下分支),以根據率失真優化(rate distortion optimization,RDO)及其碼流中的指示(signaling)確定成本的示意圖; 圖18示出了解碼器根據從經編碼碼流解析的指示符,在不使用色度分量的情況下進行亮度上採樣(上分支),或在不使用亮度分量的情況下進行色度下採樣(下分支)的示意圖; 圖19示出了不使用色度分量作為側資訊,在VAE架構的編碼側進行亮度下採樣的大小均衡網路的示意圖; 圖20示出了不使用亮度分量作為側資訊,在VAE架構的編碼側進行色度上採樣的大小均衡網路的示意圖; 圖21示出了不使用色度分量作為側資訊,在VAE架構的解碼側進行(中間)亮度上採樣的大小轉換網路的示意圖; 圖22示出了不使用亮度分量作為側資訊,在VAE架構的解碼側進行(中間)色度下採樣的大小轉換網路的示意圖; 圖23示出了編碼器使用色度分量進行亮度下採樣(上分支)和使用亮度分量進行色度上採樣(下分支),以根據率失真優化(rate distortion optimization,RDO)及其碼流中的指示確定成本的示意圖; 圖24示出了解碼器根據從經編碼碼流解析的指示符,使用色度分量進行亮度上採樣(上分支),或使用亮度分量進行色度下採樣(下分支)的示意圖; 圖25示出了使用色度分量作為側資訊,在VAE架構的編碼側進行亮度下採樣的大小均衡網路的示意圖; 圖26示出了使用亮度分量作為側資訊,在VAE架構的編碼側進行色度上採樣的大小均衡網路的示意圖; 圖27示出了使用色度分量作為輸入網路的側資訊,在VAE架構的解碼側進行(中間)亮度上採樣的大小轉換網路的示意圖; 圖28示出了使用亮度分量作為輸入網路的側資訊,在VAE架構的解碼側進行(中間)色度下採樣的大小轉換網路的示意圖; 圖29示出了在不在碼流中指示指示符的情況下,編碼器在不使用色度分量的情況下進行亮度下採樣(上分支)和在不使用亮度分量的情況下進行色度上採樣(下分支),以根據率失真優化(rate distortion optimization,RDO)確定成本的示意圖; 圖30示出了解碼器根據決策模組對採樣模式的決策結果,在不使用色度分量的情況下進行亮度上採樣(上分支),或在不使用亮度分量的情況下進行色度下採樣(下分支)的示意圖; 圖31示出了編碼方法的流程圖,包括根據最低成本選擇一種圖像處理(亮度下採樣或色度上採樣),並由經處理的圖像部分生成碼流; 圖32示出了解碼方法的流程圖,包括從碼流解碼亮度-色度,並確定一種圖像處理(亮度上採樣或色度下採樣),以由經處理的圖像部分重建原始圖像部分; 圖33示出了編碼器的框圖,包括選擇模組、處理模組和生成模組;選擇模組還可以包括下採樣器(亮度)和上採樣器(色度); 圖34示出了解碼器的框圖,包括解碼模組、確定模組和獲取模組;確定模組還可以包括下採樣器(色度)和上採樣器(亮度); 圖35為用於實現本發明的實施例的視訊解碼系統示例的框圖; 圖36為用於實現本發明的實施例的視訊解碼系統示例的框圖; 圖37為編碼裝置或解碼裝置的一個示例的框圖; 圖38為編碼裝置或解碼裝置的另一個示例的框圖。
410:NN大小均衡、NN大小均衡模組
420:VAE編碼器
470:VAE解碼器
480:下採樣網路、NN大小轉換以匹配輸入大小

Claims (22)

  1. 一種用於對圖像部分進行編碼的方法,其中,所述圖像部分包括原始亮度分量和解析度低於所述原始亮度分量的解析度的原始色度分量,所述方法包括:基於下述圖像處理相應的成本選擇下述圖像處理中之一作為對所述圖像部分的圖像處理:對所述原始亮度分量進行下採樣,以便獲得解析度與所述原始色度分量的解析度匹配的下採樣亮度分量;以及對所述原始色度分量進行上採樣,以獲得解析度與所述原始亮度分量的解析度匹配的上採樣色度分量;根據所選擇的圖像處理,將所述下採樣亮度分量和所述原始色度分量編碼到碼流中,或將所述原始亮度分量和所述上採樣色度分量編碼到碼流中。
  2. 如請求項1所述的方法,其中,所述對所述原始色度分量進行上採樣基於所述原始亮度分量的樣本。
  3. 如請求項1所述的方法,其中,所述上採樣還包括通過經訓練的網路對所述原始色度分量進行處理。
  4. 如請求項3所述的方法,其中,所述通過所述經訓練的網路進行處理包括向所述經訓練的網路輸入所述原始亮度分量和所述原始色度分量,並從所述經訓練的網路輸出所述上採樣色度分量。
  5. 如請求項4所述的方法,其中,所述經訓練的網路包括至少兩個處理層, 所述至少兩個處理層中的第一層根據所述輸入色度分量進行上採樣;所述至少兩個處理層中的第二層對所述第一層的輸出連同所述原始亮度分量進行處理。
  6. 如請求項5所述的方法,其中,所述對所述第一層的所述輸出連同所述原始亮度分量進行處理包括逐元素添加所述原始亮度分量和所述上採樣色度分量。
  7. 如請求項1所述的方法,其中,所述上採樣包括在所述原始色度分量的每n排樣本之後插入一排樣本,其中,排為行和/或列,n為等於或大於1的整數。
  8. 如請求項1所述的方法,其中,所述上採樣包括在所述原始色度分量的每n排樣本之後插入一排值為零的樣本,其中,排為行和/或列,n為等於或大於1的整數。
  9. 如請求項1所述的方法,其中,所述上採樣包括在所述原始色度分量的每n排樣本之後插入值等於所述原始色度分量中相應最近鄰樣本的值的一排樣本,其中,排為行和/或列,n為等於或大於1的整數。
  10. 如請求項1至9中任一項所述的方法,其中,所述編碼由變分自動編碼器(variational autoencoder,VAE)執行。
  11. 一種用於從碼流解碼圖像部分的方法,其中,所述圖像部分包括原始亮度分量和解析度低於所述原始亮度分量的解析度的原始色度分量,所述方法包括: 從所述碼流解碼所述原始色度分量和解析度與所述原始色度分量的解析度匹配的中間亮度分量,或從所述碼流解碼所述原始亮度分量和解析度與所述原始亮度分量的所述解析度匹配的中間色度分量;基于選擇指示執行以下圖像處理之一:對所述中間亮度分量進行上採樣,以獲得所述圖像部分的所述原始亮度分量;以及對所述中間色度分量進行下採樣,以獲得所述圖像部分的所述原始色度分量。
  12. 如請求項11所述的方法,其中,所述上採樣還包括通過經訓練的網路對所述中間色度分量進行處理。
  13. 如請求項12所述的方法,其中,所述通過所述經訓練的網路進行處理包括向所述經訓練的網路輸入所述中間色度分量,並從所述經訓練的網路輸出所述原始色度分量。
  14. 如請求項13所述的方法,其中,所述經訓練的網路包括至少兩個處理層,其中,所述至少兩個處理層中的第一層對所述輸入中間色度分量進行處理;所述至少兩個處理層中的第二層對所述第一層的輸出進行下採樣。
  15. 如請求項11所述的方法,其中,所述對所述中間色度分量進行下採樣基於所述原始亮度分量的樣本。
  16. 如請求項12所述的方法,其中,所述通過所述經訓練的網路進行處理包括向所述經訓練的網路輸入所述原始亮度分量。
  17. 如請求項14所述的方法,其中,所述第一層對所述中間色度分量連同所述原始亮度分量進行處理。
  18. 如請求項11所述的方法,其中,所述下採樣包括在所述中間色度分量的每n排樣本之後去除一排樣本,其中,排為行和/或列,n為等於或大於1的整數。
  19. 如請求項11至18中任一項所述的方法,其中,所述解碼由變分自動編碼器(variational autoencoder,VAE)執行。
  20. 一種儲存在非暫態性介質上的電腦程式,其中,包括代碼,當所述代碼在一個或多個處理器上執行時執行方法1至19中任一項的步驟。
  21. 一種用於對圖像部分進行編碼的編碼器,其中,所述圖像部分包括原始亮度分量和解析度低於所述原始亮度分量的解析度的原始色度分量,所述編碼器包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,所述一個或多個處理器執行所述程式時,所述程式使所述編碼器執行如請求項1至10中任一項所述的方法。
  22. 一種用於從碼流解碼圖像部分的解碼器,其中,所述圖像部分包括原始亮度分量和解析度低於所述原始亮度分量的解析度的原始色度分量,所述解碼器包括:一個或多個處理器;非暫態性電腦可讀存儲介質,與所述一個或多個處理器耦合並儲存由所述一個或多個處理器執行的程式,其中,所述一個或多個處理器執行所述程式時,所述程式使所述解碼器執行如請求項11至19中任一項所述的方法。
TW110143122A 2020-11-19 2021-11-19 基於機器學習的圖像解碼中色度子採樣格式的處理方法 TWI805085B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
PCT/EP2020/082768 WO2022106013A1 (en) 2020-11-19 2020-11-19 Method for chroma subsampled formats handling in machine-learning-based picture coding
WOPCT/EP2020/082768 2020-11-19

Publications (2)

Publication Number Publication Date
TW202228440A TW202228440A (zh) 2022-07-16
TWI805085B true TWI805085B (zh) 2023-06-11

Family

ID=73598827

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110143122A TWI805085B (zh) 2020-11-19 2021-11-19 基於機器學習的圖像解碼中色度子採樣格式的處理方法

Country Status (5)

Country Link
US (1) US20230336776A1 (zh)
EP (1) EP4193601A1 (zh)
CN (1) CN116547969A (zh)
TW (1) TWI805085B (zh)
WO (1) WO2022106013A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113840144B (zh) * 2019-03-25 2023-06-02 Oppo广东移动通信有限公司 图像分量的预测方法、编码器、解码器及计算机存储介质
WO2022119333A1 (ko) * 2020-12-02 2022-06-09 현대자동차주식회사 블록 기반 딥러닝 모델을 이용하는 비디오 코덱
US20230186435A1 (en) * 2021-12-14 2023-06-15 Netflix, Inc. Techniques for component-based image preprocessing
CN117294854A (zh) * 2022-06-20 2023-12-26 华为技术有限公司 一种图像编码、解码方法及编码、解码装置
WO2024078635A1 (en) * 2022-10-14 2024-04-18 Douyin Vision Co., Ltd. Down-sampling methods and ratios for super-resolution based video coding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104574277A (zh) * 2015-01-30 2015-04-29 京东方科技集团股份有限公司 图像插值方法和图像插值装置
TW201945988A (zh) * 2018-04-17 2019-12-01 聯發科技股份有限公司 視訊編解碼的神經網路方法和裝置
CN111784571A (zh) * 2020-04-13 2020-10-16 北京京东尚科信息技术有限公司 一种提高图像分辨率的方法、装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8175158B2 (en) * 2008-01-04 2012-05-08 Sharp Laboratories Of America, Inc. Methods and systems for inter-layer image prediction parameter determination
EP3104608B1 (en) * 2014-03-06 2020-09-09 Samsung Electronics Co., Ltd. Image decoding method and device therefor, and image encoding method and device therefor
US11363302B2 (en) * 2017-10-12 2022-06-14 Mediatek Inc. Method and apparatus of neural network for video coding
KR102361987B1 (ko) * 2018-04-09 2022-02-14 돌비 레버러토리즈 라이쎈싱 코오포레이션 신경망 매핑을 사용하는 hdr 이미지 표현
US20220012858A1 (en) * 2020-07-08 2022-01-13 Nvidia Corporation Image generation using one or more neural networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104574277A (zh) * 2015-01-30 2015-04-29 京东方科技集团股份有限公司 图像插值方法和图像插值装置
TW201945988A (zh) * 2018-04-17 2019-12-01 聯發科技股份有限公司 視訊編解碼的神經網路方法和裝置
CN111784571A (zh) * 2020-04-13 2020-10-16 北京京东尚科信息技术有限公司 一种提高图像分辨率的方法、装置

Also Published As

Publication number Publication date
TW202228440A (zh) 2022-07-16
EP4193601A1 (en) 2023-06-14
WO2022106013A1 (en) 2022-05-27
JP2023543520A (ja) 2023-10-16
CN116547969A (zh) 2023-08-04
US20230336776A1 (en) 2023-10-19

Similar Documents

Publication Publication Date Title
TWI805085B (zh) 基於機器學習的圖像解碼中色度子採樣格式的處理方法
TWI834087B (zh) 用於從位元流重建圖像及用於將圖像編碼到位元流中的方法及裝置、電腦程式產品
TWI830107B (zh) 通過指示特徵圖資料進行編碼
TWI807491B (zh) 基於機器學習的圖像編解碼中的色度子採樣格式處理方法
US20240037802A1 (en) Configurable positions for auxiliary information input into a picture data processing neural network
WO2022139616A1 (en) Decoding with signaling of feature map data
US20240296593A1 (en) Conditional Image Compression
TWI850806B (zh) 基於注意力的圖像和視訊壓縮上下文建模
EP4445609A1 (en) Method of video coding by multi-modal processing
US20240161488A1 (en) Independent positioning of auxiliary information in neural network based picture processing
TW202420815A (zh) 使用神經網路進行圖像區域的並行處理-解碼、後濾波和rdoq
EP4423721A1 (en) Spatial frequency transform based image modification using inter-channel correlation information
JP7583926B2 (ja) 機械学習を基にしたピクチャコーディングにおけるクロマサブサンプリングフォーマット取り扱いのための方法
KR20230072491A (ko) 신경망을 사용하여 픽처를 인코딩 또는 디코딩하는 방법 및 장치
WO2024193709A1 (en) Method, apparatus, and medium for visual data processing
TW202416712A (zh) 使用神經網路進行圖像區域的並行處理-解碼、後濾波和rdoq
WO2024083405A1 (en) Neural network with a variable number of channels and method of operating the same