TWI729378B - 視訊編解碼的神經網路方法和裝置 - Google Patents

視訊編解碼的神經網路方法和裝置 Download PDF

Info

Publication number
TWI729378B
TWI729378B TW108113357A TW108113357A TWI729378B TW I729378 B TWI729378 B TW I729378B TW 108113357 A TW108113357 A TW 108113357A TW 108113357 A TW108113357 A TW 108113357A TW I729378 B TWI729378 B TW I729378B
Authority
TW
Taiwan
Prior art keywords
frames
video
neural network
parameter set
random access
Prior art date
Application number
TW108113357A
Other languages
English (en)
Other versions
TW201945988A (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 TW201945988A publication Critical patent/TW201945988A/zh
Application granted granted Critical
Publication of TWI729378B publication Critical patent/TWI729378B/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Abstract

本發明一方面提供了一種使用神經網路(NN)對視訊編碼器或解碼器進行視訊編解碼的方法和裝置。依據該方法,視訊序列中的複數個訊框包括複數個片段,其中複數個片段中的每個片段包括一組訊框。使用用於目標片段的一個神經網絡參數集,神經網路處理應用於編碼器側的目標片段的一個或複數個編碼訊框中的目標訊號,或者應用於解碼器側中的目標片段一個或複數個編碼訊框中的目標訊號。目標訊號可以對應於重建殘差,重建輸出,解阻塞輸出,樣本自適應偏移輸出,自適應環路濾波器輸出,或其組合。在另一實施例中,神經網路處理僅在一個或複數個特定編碼或解碼訊框中應用於目標訊號。

Description

視訊編解碼的神經網路方法和裝置
本發明是有關於視訊編解碼。特别地,本發明涉及編碼系統中的神經網路(Neural Network, NN)應用於編碼或解碼訊框中的一個或複數個目標訊號,其中視訊序列被分成複數個片段,並且不同的NN參數集可以用於這些段。
神經網路(Neural Network, NN),也稱為“人工”神經網路('Artificial' Neural Network, ANN),是具有與生物神經網路共同的某些性能特徵的訊息處理系統。神經網路系統由許多簡單且高度互連的處理元件組成,透過對外部輸入的動態狀態響應來處理訊息。處理元件可以被認為是人腦中的神經元,其中每個感知器接受複數個輸入併計算複數個輸入的加權和。在神經網路領域,感知器被認為是生物神經元的數學模型。此外,這些互連的處理元件通常以層的形式組織。對於識別應用,外部輸入可以對應於呈現給網路的模式,該模式與一個或複數個中間層通信,也稱為“隱藏層”,其中實際處理是透過加權“連接”系統完成的。
人工神經網路可以使用不同的架構來指定網路中涉及哪些變量及其拓撲關係。例如,神經網路中涉及的變量可能是神經元之間連接的權重,以及神經元的活動。前饋網路是一種神經網路拓撲,其中每層中的節點被饋送到下一級,並且同一層中的節點之間存在連接。大多數人工神經網路包含某種形式的“學習規則”,它依據所呈現的輸入模式修改連接的權重。從某種意義上說,人工神經網路就像他們的生物對應物一樣透過實例來學習。後傳播神經網路是一種更先進的神經網路,允許權重調整的向後誤差傳播。因此,後向傳播神經網路能夠透過最小化向後饋送到神經網路的誤差來改善性能。
NN可以是深度神經網路(deep neural network, DNN),卷積神經網路(convolutional neural network, CNN),遞歸神經網路(recurrent neural network, RNN)或其他NN變體。深層多層神經網路或深度神經網路(deep neural networks, DNN)對應於具有多級互連節點的神經網路,允許它們緊湊地表示高度非線性和高度變化的功能。然而,DNN的計算複雜度隨著與大量層相關聯的節點​​數量而迅速增長。
CNN是一類前饋人工神經網路,其最常用於分析視覺圖像。遞歸神經網路(recurrent neural network, RNN)是一類人工神經網路,其中節點之間的連接形成沿序列的有向圖。與前饋神經網路不同,RNN可以使用其內部狀態(存儲器)來處理輸入序列。 RNN可以在其中具有循環以允許訊息持續存在。 RNN允許對矢量序列進行操作,例如輸入,輸出或兩者中的序列。
高效視訊編碼(High Efficiency Video Coding, HEVC)標準是在ITU-T視訊編碼專家組(VCEG)和ISO / IEC運動圖像專家組(Moving Picture Experts Group, MPEG)標準化組織的聯合視訊項目下開發的,尤其是與合作夥伴稱為視訊編解碼聯合協作組(JCT-VC)。
在HEVC中,一個切片被劃分為複數個編碼樹單元(multiple coding tree units, CTU)。 CTU進一步劃分為複數個編碼單元(coding units, CU)以適應各種本地特性。 HEVC支持複數個畫面內預測模式,並且對於畫面內編碼CU,發送所選擇的畫面內預測模式。除了編碼單元的概念之外,還在HEVC中引入了預測單元(prediction unit, PU)的概念。一旦完成CU分層樹的分割,則依據預測類型和PU分割將每個葉CU進一步分割成一個或複數個預測單元(PU)。在預測之後,將與CU相關聯的殘差劃分為變換塊,稱為變換單元(transform units, TU)用於變換過程。
第1A圖示出了基於HEVC的示例性自適應畫面內/畫面間視訊編碼器。當使用畫面間模式時,畫面內/畫面間預測單元110基於運動估計(Motion Estimation, ME)/運動補償(Motion Compensation,MC)生成畫面間預測。畫面內/畫面間預測單元110在使用畫面內模式時生成畫面內預測。透過從與輸入圖像相關聯的訊號中減去畫面內/畫面間預測訊號,將畫面內/畫面間預測資料(即,畫面內/畫面間預測訊號)提供給減法器116以形成預測誤差,也稱為殘差。產生畫面內/畫面間預測資料的過程被稱為本公開中的預測過程。然後透過變換(T)然後量化(Q)(T + Q,120)處理預測誤差(即,殘差)。然後,透過熵編碼單元122對經變換和量化的殘差進行編碼,以將其包括在與壓縮視訊資料相對應的視訊位元流中。然後,將與變換係數相關聯的位元流與輔助訊息(例如,運動,編碼模式和與圖像區域相關聯的其他訊息)一起封裝。還可以透過熵編碼來壓縮輔助訊息以減少所需帶寬。由於重建圖像可以用作用於畫面間預測的參考圖像,參考圖像也必須在編碼器端被重建。因此,透過逆量化(Inverse Quantization, IQ)和逆變換(Inverse Transformation, IT)(IQ + IT,124)處理變換和量化的殘基以恢復殘差。然後將重建的殘差加回到重建單元(Reconstruction unit, REC)128處的畫面內/畫面間預測資料以重建視訊資料。將重建的殘差添加到畫面內/畫面間預測訊號的過程稱為本公開中的重建過程。來自重建過程的輸出圖像被稱為重建圖像。為了減少重建圖像中的偽像,使用包括去塊濾波器(Deblocking Filter, DF)130和样本自適應偏移(Sample Adaptive Offset, SAO)132的環路濾波器。在本公開中,在所有濾波處理的輸出處的濾波的重構圖像被稱為解碼圖像。解碼圖像存儲在訊框緩衝器140中並用於預測其他訊框。
第1B圖示出了基於HEVC的示例性自適應畫面內/畫面間視訊解碼器。由於編碼器還包含用於重建視訊資料的本地解碼器,因此除了熵解碼器之外,在編碼器中已經使用了一些解碼器組件。在解碼器側,熵解碼單元160用於從位元流中恢復編碼的符號或語法。從輸入位元流生成重建殘差的過程在本公開中稱為殘差解碼過程。用於生成畫面內/畫面間預測資料的預測處理也在解碼器側應用,然而,畫面內/畫面間預測單元150與編碼器側的預測處理不同,因為畫面間預測僅需要使用自位元流導出的運動訊息來執行運動補償。此外,加法器114用於將重構的殘差添加到畫面內/畫面間預測資料。
在HEVC標準的開發期間,還公開了另一種稱為自適應環路濾波器(Adaptive Loop Filter, ALF)的環路濾波器,但未在主要標準中採用。 ALF可用於進一步改善視訊質量。例如,ALF 210可以在SAO 132之後使用,並且來自ALF 210的輸出存儲在訊框緩衝器140中,如用於編碼器側的第2A圖所示和解碼器側的第2B圖所示。對於解碼器側,來自ALF 210的輸出也可以用作解碼器輸出以用於顯示或其他處理。在本公開中,去塊濾波器,SAO和ALF都被稱為濾波處理。
在不同的圖像恢復或處理方法中,基於神經網路的方法(例如深度神經網路(DNN)或卷積神經網路(CNN))是近年來是很有前景的方法。它已經應用於各種圖像處理應用,例如圖像去噪,圖像超分辨率等,並且已經證明,與傳統的圖像處理方法相比,DNN或CNN可以實現更好的性能。因此,在下文中,我們提出在一個視訊編碼系統中利用CNN作為一種圖像恢復方法來提高主觀質量或編碼效率。期望利用NN作為視訊編碼系統中的圖像恢復方法,以改善新興視訊編碼標準(例如高效視訊編碼(HEVC))的主觀質量或編碼效率。
依據本發明的一實施方式,公開了一種使用神經網路(Neural Network,NN)對視訊編碼器或解碼器進行視訊編解碼的方法和裝置。依據該方法,視訊序列中的複數個訊框包括複數個片段,其中複數個片段中的每個片段包括一組訊框。使用用於目標片段的一個神經網絡參數集,神經網路處理應用於編碼器側的目標片段的一個或複數個編碼訊框中的目標訊號,或者應用於解碼器側中的目標片段的一個或複數個解碼訊框中的目標訊號。目標訊號可以對應於重建殘差,重建輸出,解阻塞(de-blocked)輸出,樣本自適應偏移輸出,自適應環路濾波器輸出或其組合。
複數個片段中的每一個可以對應於一個隨機存取段(random access segment,RAS)。複數個片段中的每個片段中的訊框集合可以對應於顯示順序中的連續訊框。複數個片段中的每個片段中的訊框集合還可以對應於解碼順序中的連續訊框。
如果NN處理未應用於目標段,則不需要發送目標片段的參數集的訊息。
在一個實施例中,複數個訊框包括在複數個訊框中的每個訊框中具有相同數量的訊框的複數個片段。
在一個實施例中,對於與複數個隨機存取段對應的視訊位元流,在解碼從視訊位元流的複數個隨機存取段的一個隨機存取段的一個隨機接入點之後,將用於複數個隨機存取段的隨機存取段的NN參數集切換到用於複數個隨機存取段的下一個隨機存取段的下一個NN參數集。在從視訊位元流解碼隨機存取段的隨機存取段的一個隨機接入點之後的隨機存取段。
在另一實施例中,當重置參考訊框緩衝器時,將用於複數個隨機存取段的隨機存取段的神經網路參數集切換到用於複數個隨機存取段的下一隨機存取段的下一神經網路參數集。可以針對複數個隨機存取段中的隨機接入點禁用神經網路處理。或者,可以使用一個或複數個預定義的神經網路參數集將神經網路處理應用於複數個隨機存取段中的隨機接入點。
在另一種方法中,神經網路處理僅在編碼器側的視訊序列的一個或複數個特定編碼訊框中應用於目標訊號,或者僅在在解碼器側的視訊序列的一個或複數個特定解碼訊框中應用於目標訊號。特定訊框可以被預定義。 在另一實施例中,特定訊框由在序列級別或圖像級別中發送的一個或複數個語法元素指示。 特定訊框可以對應於參考訊框或非參考訊框。 特定訊框可以對應於具有特定時間ID或時間ID範圍的一個或複數個訊框。 特定訊框可以對應於用特定量化參數(QP)範圍或目標切片類型編碼的訊框。特定訊框可以對應於I切片之後的畫面間訊框。
以下描述是實現本發明的最佳方案。進行該描述是為了說明本發明的一般原理,而不應被視為具有限制意義。透過參考所附請求項最好地確定本發明的範圍。
本發明的一實施方式公開了一種利用NN(例如,CNN)作為視訊編解碼系統中的圖像恢復方法的方法。例如,如第2A圖和第2B圖所示,NN作用於目標訊號, ALF輸出圖像並生成最終的解碼圖像。或者,在第2A圖和第2B圖中,NN可以與其他恢復方法一起,或者不需要其他恢復方法,直接地應用於在視訊編解碼系統中SAO,DF,或REC之後的目標訊號。在另一實施例中,NN可用於直接恢復量化誤差或僅用於改善預測子質量。在前一種情況下,在逆量化和變換之後應用NN以恢復重建的殘差。在後一種情況下,NN應用於由畫面間或畫面內預測生成的預測子。
當NN應用於視訊編解碼時,可以聯合或獨立地處理不同的顏色分量。例如,在一個實施例中,可以獨立地應用不同顏色分量的不同NN。因此,在一個視訊編解碼系統中,三個顏色分量總共可以有三個NN。在另一實施例中,在一個視訊編解碼系統中存在兩個NN,一個用於亮度分量,另一個用於色度分量。在為色度分量設計的NN中,U和V可以獨立或聯合處理。當獨立處理U和V時,NN一次輸出一個顏色分量,並且U和V分量共享NN參數。如果可以聯合處理U和V,則該NN的輸入包括U和V分量,並且該NN同時生成U和V資料。在另一個實施例中,在視訊編碼系統中只有一個NN,其中NN的輸入同時是三個顏色分量,並且輸出也是三個顏色分量。
在另一實施例中,為亮度分量設計的NN的輸入可以僅是亮度分量或者俱有對應的色度部分的亮度分量。為色度分量設計的NN的輸入可以僅是色度分量或具有相應亮度部分的色度分量。此外,如果YUV取樣率對於不同的顏色分量是不同的,則可以使用子取樣或上取樣濾波器來生成相應的部分。例如,當視訊格式是YUV420時,為亮度分量設計的NN的輸入包括亮度分量和上取樣的色度資料。或者,為亮度分量設計的NN的輸入包括下取樣的亮度資料和原始的色度資料。在為色度分量設計的NN中,輸入可以包括兩個色度分量和下取樣的亮度資料。
當一個NN同時處理多於一個顏色分量時,用於啟用或禁用不同顏色分量的NN的控制標誌可以由這些組件組合或共享。例如,如果NN同時處理兩個色度分量,則一個開/關標誌可以被U和V分量編碼和共享。在另一個實施例中,如果NN同時處理三個顏色分量,則一個開/關標記可以被編碼並由三個顏色分量共享。
當NN應用於視訊編碼時,一個顏色分量可以是NN的一個輸入分量。替代地,可以將一個顏色分量進一步劃分為複數個子塊,並且每個子塊是NN的一個輸入分量。例如,由NN處理的當前區域的大小是M×N像素。在一個實施例中,如果一個顏色分量是NN的一個輸入分量,則NN的輸入可以是具有M×N個像素的一個分量。在另一個實施例中,當前區域可以被劃分為大小等於(M / 2)×(N / 2)的四個子塊,其中這些子塊透過對四個不同相位進行二次取樣來生成。在NN過程中,每個子塊是一種輸入分量,因此NN的輸入包括四個分量,每個分量的大小僅為(M / 2)×(N / 2)個像素。
在一些NN架構中,為亮度分量設計的NN的輸入可以包括具有對應色度部分的亮度分量。為色度分量設計的NN的輸入可以包括具有相應亮度部分的色度分量。當YUV取樣率對於不同的顏色分量是不同的時,可以處理不同的顏色分量以使得不同輸入分量的塊大小相等。例如,當視訊格式是YUV420時,為亮度分量設計的NN的輸入可以包括亮度分量和色度分量。基於亮度和色度分量之間的取樣比率將亮度分量劃分為四個子塊。因此,具有與U或V分量相同大小的Y分量的一個子塊是NN的一個輸入分量。因此,對於四個亮度子塊有四個輸入分量,並且為亮度分量設計的NN中的U和V分量有兩個輸入分量。這六個輸入組件的大小是相同的。如果使用一種顏色分量中的多種類型的資料,則該提出的方法可以應用於所有類型的資料或其中之一。例如,對於一個顏色分量,預測子,殘差和重建像素可以用作NN的輸入。所提出的方法可以用於將所有類型的資料分別分成四個子塊,使得NN的輸入數量從具有大小等於MxN的一個組件的3個組件增加到每個組件大小等於(M/2 x N/2)的12個組件。在另一個例子中,只有一種類型資料的塊(例如,重建像素)被劃分為四個子塊,而另外兩種類型的資料在水平和垂直方向上被下取樣兩倍。然後,NN的輸入數量從每個組件中尺寸等於MxN的3個組件增加到每個組件中尺寸等於(M/2 x N/2)的六個組件。
在上述方法中,所提到的NN可以是任何NN變化,例如卷積神經網路(CNN),深度全連接前饋神經網路(DNN),遞歸神經網路(RNN)或GAN(生成對抗性網路)。
本發明中提出的方法是利用NN作為視訊編解碼系統中的圖像恢復方法。例如,如第2A圖和第2B圖所示,可以在ALF輸出圖像上應用NN以生成最終的解碼圖像。或者,如第1A圖和第1B圖,或第2A圖和第2B圖所示,和其他恢復方法一起,或者不需要其他恢復方法,NN可以直接應用於與REC,DF或SAO的輸出相對應的目標訊號。如前所述,NN可以是DNN,CNN,RNN或其他NN變體。
在一個實施例中,序列中的訊框被劃分為複數個組/段,並且每個組/段包括按照如第3圖所示顯示順序的K個連續訊框。為每個NN網路的參數進行訓練,以用於一個序列中的每個集合/分段,並且具有導出參數的NN被應用於集合/片段中的訊框。例如,序列中的訊框數是640,並且一個集合(或段)被定義為如第4圖所示的顯示順序中的64個連續訊框。然後第一集合/片段包括具有索引範圍從0到63的訊框,第二集合/片段包括具有索引範圍從64到127的訊框,第三集合/片段包括具有索引範圍從128到191的訊框,依此類推。對於每個集合/片段,導出一個NN參數集以適合該集合/片段中的訊框的特徵。利用用於目標片段的導出的NN參數集,具有導出參數集的NN被應用於編碼器側中的目標片段的一個或複數個編碼訊框中的目標訊號,並且發送導出的NN參數集。為了進一步提高編解碼效率,並非所有集合/片段都由NN處理。如果未在目標集合/片段上應用NN,則不需要發送相應的NN參數集。在另一實施例中,解碼順序中的K個連續訊框可用於將訊框分組成組(即,段)而不是顯示順序。在另一個實施例中,每個集合/片段是一個隨機存取段(random access segment, RAS),在該段中具有一個隨機存取點。
第5圖示出了使用NN處理的編解碼系統的編碼順序的示例。在該示例中,示出了具有等於16的圖像組(group of pictures, GOP)的序列的編碼順序。每64訊框插入隨機存取點。如第5圖所示,編碼器可以編碼從訊框0到訊框48的輸入訊框。編碼器然後跳轉以編碼下一個隨機存取點(即訊框64),然後編碼在訊框48到訊框64之間的訊框。在解碼器中側,解碼順序與編碼順序相同。依據一個實施例,在解碼一個隨機接入點(即,在該示例中為訊框64)之後切換NN參數集。如第6圖所示,在片段上使用NN參數集。如第6圖所示,NN參數集1應用於訊框0到48。NN參數集2應用於訊框49到訊框112。在該實施例中,在訊框0到48被編碼或解碼之後,由於訊框49到112使用NN參數集2,因此不再需要NN參數集1。類似地,訊框113到176使用NN參數集3。
視訊編碼器可以順序地逐訊框編碼訊框或者並行地編碼隨機存取段。如果使用並行編碼隨機存取段,則隨機存取點可能需要一個額外的特殊過程以保證順序過程中的編碼結果並且並行過程是相同的。例如,如果該集合被定義為一個隨機存取段(RAS),則在編碼隨機存取段時將需要兩個派生的CNN參數集。第7圖示出了使用NN處理的示例視訊編碼。編碼順序與第5圖中的編碼順序相同,其中圖像組等於16。依據該實施例,在對段進行編碼或解碼之後重置參考訊框緩衝器。在這種情況下,當重置參考訊框緩衝器時,切換NN參數集。因此,NN參數集1應用於訊框0至63,NN參數集2應用於訊框64至127,NN參數集3應用於訊框128至191,等等。在解碼第一RAS之後,但在重置參考訊框緩衝器之前,仍然需要第一RAS(特別是訊框49至63)的舊NN參數集(即,NN參數集1)。但是,下一個段(即訊框64)的隨機存取點不需要。可以針對隨機接入點禁用NN,或者可以將一個或複數個預定義的NN參數集用於隨機接入點而不是導出的NN參數集。因此,僅需要一個NN參數集。
在一個實施例中,NN僅可以應用於某些特定訊框中的目標訊號。例如,NN可以僅應用於某些特定訊框中的目標訊號,這些特定訊框可以在序列級或圖像級預定義或被發送。特定訊框的示例可包括: •參考訊框, •非參考訊框, •具有特定時間ID(時間層的索引)範圍的訊框(例如,小於預定閾值,大於預定閾值,或最小值和最大值之間的範圍), •用特定量化參數(QP)範圍編碼的訊框(例如,小於預定閾值,大於預定閾值,或最小值和最大值之間的範圍), •切片類型(畫面內切片,畫面間切片,雙向預測切片或單向預測切片), •I-slice之後的前幾個畫面間訊框,或 •上述編碼條件的任意組合。
此外,NN可以應用於視訊序列中的每k個訊框,或者從每個時間層或從每個量化參數設置中選擇的k個訊框。
在另一實施例中,一個序列中的訊框被劃分為複數個區域,並且每個區域包括N×M個像素,CTU,NxM CTU,一個或複數個CTU行或整個訊框。針對訊框中的每個區域訓練一個NN網路的參數,並且將具有導出參數的NN應用於一訊框中的區域。對於每個區域,導出一個NN參數集以適合該區域中訊框的特徵;應用具有導出參數集的NN,並且導出的NN參數集被發送。為了進一步提高編碼效率,並非所有區域都由NN處理。如果未在一個區域上應用NN,則相應的NN參數集不被發送。在一個實施例中,NN可以使用從一個區域導出的參數來處理另一個區域。
在一個實施例中,區域可以共享整個或部分NN參數集。例如,如果區域共享整個NN參數集,則可以從一個區域導出NN參數集,而其他區域可以使用相同的NN參數集。因此,僅需要發送一個導出的NN參數集。如果區域共享部分NN參數集,則可以從一個區域導出NN參數集,並且其他區域可以部分地使用從固定NN參數集導出的NN參數集。在這種情況下,一個NN參數集和不包括在部分NN參數集中的剩餘NN參數集被發送。在一些實施例中,部分NN參數集可以用於NN的上層,而固定NN參數集可以用於NN的下層或剩餘層。
在一個實施例中,區域的NN參數集可以與空間相鄰區域或時間並置區域共享。例如,CTU可以使用來自左CTU,頂部CTU,右CTU,底部CTU,左上CTU,右上CTU,左下CTU或右下CTU的NN參數集。又例如,CTU可以在另一訊框中使用並置CTU處的NN參數集,或者訊框可以使用諸如參考訊框,先前解碼訊框或具有相同時間層的訊框的另一訊框的NN參數集。
在一個實施例中,NN參數集可以存儲在大小為N的緩衝器中並且在以下區域中使用。例如,當導出/解碼針對區域的一個NN參數集時,可以將NN參數集存儲在緩衝器中。以下區域可以使用緩衝區中設置的NN參數,或者以下區域可以導出/解碼另一個NN參數集並將其存儲在緩衝區中。當緩衝區已滿時,它可以使用替換策略,例如FIFO(先進先出),LIFO(後進先出)或LRU(最近最少使用)等,來替換緩衝區中的NN參數集。在一些實施例中,當NN參數集是從一個區域導出而其他區域使用部分來自固定NN參數集的導出NN參數集時,固定NN參數集可以存儲在緩衝區或NN參數集中(包括固定的NN參數集)可以存儲在緩衝區中。
上面公開的所提出的方法可以在編碼器和/或解碼器中實現。例如,所提出的方法可以在編碼器的環路濾波器模組和/或解碼器的環路濾波器模組中實現。或者,任何所提出的方法可以實現為耦合到編碼器的環路濾波器模組和/或解碼器的環路濾波器模組的電路,以便提供環路濾波器模組所需的訊息。
第8圖示出了依據本發明一個實施例的包含神經網路(NN)的視訊編碼器或解碼器的視訊編解碼的示例性流程圖。流程圖中示出的步驟可以實現為在編碼器側或解碼器側的一個或複數個處理器(例如,一個或複數個CPU)上可執行的程式代碼。流程圖中示出的步驟還可以基於諸如被佈置為執行流程圖中的步驟的一個或複數個電子設備或處理器的硬件來實現。該方法在步驟810接收編碼器側的輸入資料或在解碼器側接收視訊位元流,其中輸入資料包括視訊序列中的複數個訊框,並且視訊位元流包括與視訊序列中的複數個訊框相關聯的壓縮資料,其中,視訊序列中的複數個訊框包括複數個片段,其中複數個片段中的每個包括一組訊框。在步驟830中,使用用於目標段的一個NN參數,神經網路(NN)處理應用於編碼器側的目標段的一個或複數個編碼訊框中的目標訊號,或者應用於解碼器側中的目標段的一個或複數個解碼訊框中的目標訊號。
第9圖示出了依據本發明另一實施例的包含神經網路(NN)的視訊編碼器或解碼器的視訊編碼的示例性流程圖。依據該方法,在步驟910中,接收編碼器側的輸入資料或者在解碼器側接收視訊位元流,其中輸入資料包括視訊序列中的複數個訊框,或者視訊位元流包括視訊序列中的複數個訊框相關聯的壓縮資料。在步驟920中,僅在編碼器側的視訊序列的一個或複數個特定編碼訊框中或僅在解碼器側的視訊序列的一個或複數個特定解碼訊框中,將神經網路處理應用於目標訊號。
呈現以上描述是為了使得本領域通常知識者能夠在特定應用及其要求的背景下實作本發明。對所描述的實施例的各種修改對於本領域通常知識者來說是顯而易見的,並且這裡定義的一般原理可以應用於其他實施例。因此,本發明不限於所示出和描述的特定實施例,而是與符合本文所公開的原理和新穎特徵的最寬範圍相一致。在以上詳細描述中,示出了各種具體細節以便提供對本發明的透徹理解。然而,本領域通常知識者將理解可以實作本發明。
如上所述的本發明的實施例可以以各種硬件,軟件代碼或兩者的組合來實現。例如,本發明的實施例可以是集成到視訊壓縮芯片中的一個或複數個電路電路或集成到視訊壓縮軟件中的程式代碼,以執行這裡描述的處理。本發明的實施例還可以是要在數字訊號處理器(DSP)上執行的程式代碼,以執行這裡描述的處理。本發明還可以涉及由計算機處理器,數字訊號處理器,微處理器或現場可編程門陣列(FPGA)執行的許多功能。這些處理器可以被配置為透過執行定義本發明所體現的特定方法的機器可讀軟件代碼或固件代碼來執行依據本發明的特定任務。軟件代碼或固件代碼可以用不同的編程語言和不同的格式或樣式開發。還可以針對不同的目標平台編譯軟件代碼。然而,軟件代碼的不同代碼格式,樣式和語言以及配置代碼以執行依據本發明的任務的其他裝置將不脫離本發明的精神和範圍。
在不脫離本發明的精神或基本特徵的情況下,本發明可以以其他特定形式實施。所描述的示例在所有方面都應被視為僅是說明性的而非限制性的。因此,本發明的範圍由請求項而不是前面的描述表示。在請求項的含義和等同範圍內的所有變化都包含在其範圍內。
110、150:畫面內/畫面間預測單元
114:加法器
116:減法器
120:量化
122:熵編碼單元
124:逆變換
128:重建單元
130:去塊濾波器
132:样本自適應偏移
140:訊框緩衝器
160:熵解碼單元
210:ALF
810~830、910~920:步驟
第1A圖示出了基於高效視訊編碼(HEVC)標準的示例性自適應畫面內/畫面間視訊編碼器。 第1B圖示出了基於高效視訊編碼(HEVC)標準的示例性自適應畫面內/畫面間視訊解碼器。 第2A圖示出了類似於第1A圖中的示例性的、具有附加的ALF過程的自適應畫面內/畫面間視訊編碼器。 第2B圖示出了類似於第1B圖中的示例性的、具有附加的ALF過程自適應畫面內/畫面間視訊解碼器。 第3圖示出了依據本發明實施例的神經網路(NN)處理,其中序列中的訊框被劃分為複數個集合,並且每個集合包括用於NN處理的顯示順序中的K個連續訊框。 第4圖示出了將訊框劃分為用於NN處理的段的示例,其中序列中的訊框數是640,並且一組被定義為顯示順序中的64個連續訊框。 第5圖示出了使用NN處理的編碼系統的編碼順序的示例,其中具有圖像組(group of pictures, GOP)的序列的編碼順序相等。 第6圖示出了NN處理的一個實施例,其中在解碼一個隨機接入點(即,在該示例中為訊框64)之後切換NN參數集。 第7圖示出了NN處理的另一實施例,其中在重置參考訊框緩衝器之後切換NN參數集。 第8圖示出了依據本發明一個實施例的包含神經網路(NN)的視訊編碼器或解碼器的視訊編解碼的示例性流程圖。 第9圖示出了依據本發明另一實施例的包含神經網路(NN)的視訊編碼器或解碼器的視訊編解碼的示例性流程圖。
810~830‧‧‧步驟

Claims (20)

  1. 一種視訊編解碼方法,用於視訊編碼器或解碼器,該方法包括:在解碼器側接收輸入資料或在解碼器側接收視訊位元流,其中該輸入資料包括視訊序列中的複數個訊框,並且該視訊位元流包括與該視訊序列中的複數個訊框相關聯的壓縮資料,其中在該視訊序列中的該複數個訊框包括複數個片段,並且複數個片段中的每個片段包括一組訊框;以及使用用於目標片段的一個神經網路參數集,應用神經網路處理至在該編碼器側的該目標片段的一個或複數個已編碼訊框中的目標訊號,或至在該解碼器側中的該目標片段的該一個或複數個已編碼訊框中的該目標訊號,其中該神經網絡參數集包含一從固定神經網路參數集導出的部分神經網路參數集以及一剩餘神經網路參數集,該剩餘神經網路參數集被發送。
  2. 如請求項1所述之視訊編解碼方法,其中該複數個片段中的每一個對應於一個隨機存取段。
  3. 如請求項1所述之視訊編解碼方法,其中該複數個片段中的每個中的該訊框集對應於顯示順序中的連續訊框。
  4. 如請求項1所述之視訊編解碼方法,其中該複數個片段中的每個中的該訊框集對應於解碼順序中的連續訊框。
  5. 如請求項1所述之視訊編解碼方法,其中如果神經網路處理未應用於該一個目標段,則用於該一個目標段的一個神經網路參數集的訊息不被發送。
  6. 如請求項1所述之視訊編解碼方法,其中,該複數個訊框包括在該複數個訊框中的每個訊框中具有相同訊框數的該複數個片段。
  7. 如請求項1所述之視訊編解碼方法,其中,對於與複數個隨機存 取段對應的該視訊位元流,在解碼從該視訊位元流的該複數個隨機存取段的該一個隨機存取段的一個隨機接入點之後,將用於複數個隨機存取段的一個隨機存取段的神經網路參數集切換到下一個神經網路參數集,以用於該複數個隨機存取段的下一個隨機存取段。
  8. 如請求項1所述之視訊編解碼方法,其中,對於與複數個隨機存取段對應的該視訊位元流,當重置參考訊框緩衝區時,將用於該複數個隨機存取段的一個隨機存取段的神經網路參數集切換到用於該複數個隨機存取段的下一隨機存取段的下一個神經網路參數集。
  9. 如請求項8所述之視訊編解碼方法,其中對該複數個隨機存取段中的複數個隨機接入點,該神經網路處理被禁用。
  10. 如請求項8所述之視訊編解碼方法,其中,使用一個或複數個預定義的NN參數集,將該神經網路處理應用於該複數個隨機存取段中的複數個隨機接入點。
  11. 如請求項1所述之視訊編解碼方法,其中,該目標訊號對應於重建的殘差,重建輸出,解阻塞輸出,樣本自適應偏移輸出,自適應環路濾波器輸出,或其組合。
  12. 一種視訊編解碼裝置,用於視訊編碼器或解碼器,該裝置包括一個或複數個電子器件或處理器,其被佈置成:在解碼器側接收輸入資料或在解碼器側接收視訊位元流,其中該輸入資料包括視訊序列中的複數個訊框,並且該視訊位元流包括與該視訊序列中的複數個訊框相關聯的壓縮資料,其中在該視訊序列中的該複數個訊框包括複數個片段;以及使用用於目標片段的一個神經網路參數集,應用神經網路處理至在該編碼器側的該目標片段的一個或複數個已編碼訊框中的目標訊號,或至在該解碼器 側中的該目標片段的該一個或複數個已解碼訊框中的該目標訊號,其中該神經網絡參數集包含一從固定神經網路參數集導出的部分神經網路參數集以及一剩餘神經網路參數集,該剩餘神經網路參數集被接收。
  13. 一種視訊編解碼方法,用於視訊編碼器或解碼器,該方法包括:在解碼器側接收輸入資料或在解碼器側接收視訊位元流,其中該輸入資料包括視訊序列中的複數個訊框,或者該視訊位元流包括與該視訊序列中的複數個訊框相關聯的壓縮資料;以及僅在該編碼器側的該視訊序列的一個或複數個特定編碼訊框中或僅在該解碼器側的該視訊序列的一個或複數個特定解碼訊框中,將神經網路處理應用於目標訊號,其中該一個或複數個特定編碼訊框或一個或複數個特定解碼訊框是依據是否為參考訊框、特定量化參數範圍或目標切片類型編碼決定。
  14. 如請求項13所述之視訊編解碼方法,其中該一個或複數個特定編碼訊框或該一個或複數個特定解碼訊框是預定義的。
  15. 如請求項13所述之視訊編解碼方法,其中該一個或複數個特定編碼訊框或該一個或複數個特定解碼訊框由在序列級或圖像級中發送一個或複數個語法元素指示。
  16. 如請求項13所述之視訊編解碼方法,其中該一個或複數個特定編碼訊框或該一個或複數個特定解碼訊框對應於一個或複數個參考訊框。
  17. 如請求項13所述之視訊編解碼方法,其中該一個或複數個特定編碼訊框或該一個或複數個特定解碼訊框對應於一個或複數個非參考訊框。
  18. 如請求項13所述之視訊編解碼方法,其中該一個或複數個特定編碼訊框或該一個或複數個特定解碼訊框對應於具有特定時間層或時間層 範圍的一個或複數個訊框。
  19. 如請求項13所述之視訊編解碼方法,其中該一個或複數個特定編碼訊框或該一個或複數個特定解碼訊框對應於緊接在畫面內訊框之後的一個或複數個畫面間訊框。
  20. 如請求項13所述之視訊編解碼方法,其中該目標訊號對應於重建殘差,重建輸出,解阻塞輸出,樣本自適應偏移輸出,自適應環路濾波器輸出,或其組合。
TW108113357A 2018-04-17 2019-04-17 視訊編解碼的神經網路方法和裝置 TWI729378B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201862658643P 2018-04-17 2018-04-17
US62/658,643 2018-04-17
US201862722231P 2018-08-24 2018-08-24
US62/722,231 2018-08-24
PCT/CN2019/082879 WO2019201239A1 (en) 2018-04-17 2019-04-16 Method and apparatus of neural network for video coding
WOPCT/CN2019/082879 2019-04-16

Publications (2)

Publication Number Publication Date
TW201945988A TW201945988A (zh) 2019-12-01
TWI729378B true TWI729378B (zh) 2021-06-01

Family

ID=68239973

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108113357A TWI729378B (zh) 2018-04-17 2019-04-17 視訊編解碼的神經網路方法和裝置

Country Status (4)

Country Link
US (1) US11470356B2 (zh)
CN (1) CN111937392A (zh)
TW (1) TWI729378B (zh)
WO (1) WO2019201239A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116547969A (zh) * 2020-11-19 2023-08-04 华为技术有限公司 基于机器学习的图像译码中色度子采样格式的处理方法
WO2022116165A1 (zh) * 2020-12-04 2022-06-09 深圳市大疆创新科技有限公司 视频编码方法、解码方法、编码器、解码器以及ai加速器
US11716469B2 (en) * 2020-12-10 2023-08-01 Lemon Inc. Model selection in neural network-based in-loop filter for video coding
US11785068B2 (en) 2020-12-31 2023-10-10 Synaptics Incorporated Artificial intelligence image frame processing systems and methods
US20220224924A1 (en) * 2021-01-11 2022-07-14 Tencent America LLC Hierarchical structure for neural network based tools in video coding
WO2024006167A1 (en) * 2022-06-29 2024-01-04 Dolby Laboratories Licensing Corporation Inter coding using deep learning in video compression

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI268710B (en) * 2003-06-26 2006-12-11 Ibm MPEG-2 decoder, method and buffer scheme for providing enhanced trick mode playback of a video stream
CN104768011A (zh) * 2015-03-31 2015-07-08 浙江大学 图像编解码方法和相关装置
US9479786B2 (en) * 2008-09-26 2016-10-25 Dolby Laboratories Licensing Corporation Complexity allocation for video and image coding applications
TWI569629B (zh) * 2014-02-18 2017-02-01 英特爾公司 用於在壓縮視訊資料中包括感興趣區域指示之技術
CN107736027A (zh) * 2015-06-12 2018-02-23 松下知识产权经营株式会社 图像编码方法、图像解码方法、图像编码装置及图像解码装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7034897B2 (en) * 2002-04-01 2006-04-25 Broadcom Corporation Method of operating a video decoding system
JP5768662B2 (ja) * 2011-10-31 2015-08-26 富士通株式会社 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム
US9736476B2 (en) * 2012-04-27 2017-08-15 Qualcomm Incorporated Full random access from clean random access pictures in video coding
US10474950B2 (en) * 2015-06-29 2019-11-12 Microsoft Technology Licensing, Llc Training and operation of computational models
EP3355578B1 (en) * 2015-09-24 2020-12-09 LG Electronics Inc. Motion vector predictor derivation and candidate list construction
EP3357245A4 (en) * 2015-11-05 2019-03-13 MediaTek Inc. METHOD AND DEVICE OF INTERPRESSATION USING AN AVERAGE MOTION VECTOR FOR VIDEO CODING
WO2017105097A1 (ko) * 2015-12-17 2017-06-22 삼성전자 주식회사 머지 후보 리스트를 이용한 비디오 복호화 방법 및 비디오 복호화 장치
US10402700B2 (en) * 2016-01-25 2019-09-03 Deepmind Technologies Limited Generating images using neural networks
EP3398114B1 (en) * 2016-02-05 2022-08-24 Deepmind Technologies Limited Compressing images using neural networks
EP3298783B1 (en) * 2016-04-15 2020-11-18 Magic Pony Technology Limited Motion compensation using temporal picture interpolation
GB201607879D0 (en) * 2016-05-05 2016-06-22 Magic Pony Technology Ltd Video encoding using hierarchical algorithms
WO2017222140A1 (ko) * 2016-06-24 2017-12-28 한국과학기술원 Cnn 기반 인루프 필터를 포함하는 부호화 방법과 장치 및 복호화 방법과 장치
US11113800B2 (en) * 2017-01-18 2021-09-07 Nvidia Corporation Filtering image data using a neural network
CN107197260B (zh) * 2017-06-12 2019-09-13 清华大学深圳研究生院 基于卷积神经网络的视频编码后置滤波方法
CN107396124B (zh) 2017-08-29 2019-09-20 南京大学 基于深度神经网络的视频压缩方法
US10341670B1 (en) * 2017-09-26 2019-07-02 Amazon Technologies, Inc. Video encoder bit rate stabilization
CN107820085B (zh) * 2017-10-31 2021-02-26 杭州电子科技大学 一种基于深度学习的提高视频压缩编码效率的方法
CN107767343B (zh) * 2017-11-09 2021-08-31 京东方科技集团股份有限公司 图像处理方法、处理装置和处理设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI268710B (en) * 2003-06-26 2006-12-11 Ibm MPEG-2 decoder, method and buffer scheme for providing enhanced trick mode playback of a video stream
US9479786B2 (en) * 2008-09-26 2016-10-25 Dolby Laboratories Licensing Corporation Complexity allocation for video and image coding applications
TWI569629B (zh) * 2014-02-18 2017-02-01 英特爾公司 用於在壓縮視訊資料中包括感興趣區域指示之技術
CN104768011A (zh) * 2015-03-31 2015-07-08 浙江大学 图像编解码方法和相关装置
CN107736027A (zh) * 2015-06-12 2018-02-23 松下知识产权经营株式会社 图像编码方法、图像解码方法、图像编码装置及图像解码装置

Also Published As

Publication number Publication date
US11470356B2 (en) 2022-10-11
CN111937392A (zh) 2020-11-13
WO2019201239A1 (en) 2019-10-24
US20210168405A1 (en) 2021-06-03
TW201945988A (zh) 2019-12-01

Similar Documents

Publication Publication Date Title
TWI709329B (zh) 用於視訊編碼的神經網絡方法和裝置
US11589041B2 (en) Method and apparatus of neural network based processing in video coding
TWI729378B (zh) 視訊編解碼的神經網路方法和裝置
JP7098805B2 (ja) ニューラルネットワークを利用したコーデック
JP5907941B2 (ja) ビデオ画像の刈り取り方法及び装置
TWI779161B (zh) 用於視訊編解碼的分組類神經網路的方法以及裝置
CN105306957B (zh) 自适应环路滤波方法和设备
KR20110014000A (ko) 영상 데이터의 디블록킹 필터링 장치 및 방법과 이를 이용한 영상 복호화 장치 및 방법
US20210400311A1 (en) Method and Apparatus of Line Buffer Reduction for Neural Network in Video Coding
CN110740319A (zh) 视频编解码方法、装置、电子设备及存储介质
CN110300302B (zh) 一种视频编码方法、装置和存储介质
CN114430904A (zh) 利用环内子图像级可控噪声生成进行的视频压缩
WO2023134731A1 (en) In-loop neural networks for video coding
CN113556567B (zh) 帧间预测的方法和装置
RU2765428C1 (ru) Устройство кодирования изображений, устройство декодирования изображений, способы управления ими и программа
WO2023197230A1 (zh) 滤波方法、编码器、解码器以及存储介质
WO2024077573A1 (zh) 编解码方法、编码器、解码器、码流以及存储介质