本發(fā)明涉及通信網(wǎng)絡(luò),尤其涉及一種基于深度學(xué)習(xí)的hevc幀內(nèi)cu劃分方法、裝置及編碼方法。
背景技術(shù):
1、隨著寬帶互聯(lián)網(wǎng)服務(wù)覆蓋范圍和速度的大幅提升,視頻在全球數(shù)據(jù)流量中的份額已經(jīng)達(dá)到80%左右,并且該數(shù)據(jù)還在繼續(xù)增長。為了高效的存儲和傳輸視頻,視頻編碼技術(shù)研究顯得尤為重要。
2、2013年國際電信聯(lián)盟遠(yuǎn)程通信標(biāo)準(zhǔn)化組織(international?tele-communications?union?for?telecommunications?standardization?sector,itu-t)和國際標(biāo)準(zhǔn)化組織/國際電工委員會(international?standardization?organization/inter-national?electrotechnical?commission,iso/iec)組織聯(lián)合共同推出了新一代視頻編碼標(biāo)準(zhǔn)h.265/high?efficiency?video?coding(hevc)。與其前身h.264/advanced?videocoding(avc)相比,hevc標(biāo)準(zhǔn)在相似的視頻質(zhì)量下節(jié)省了大約50%的比特率。
3、這得益于hevc標(biāo)準(zhǔn)采用更先進(jìn)的編解碼算法技術(shù)。其中,在預(yù)測編碼階段的幀內(nèi)預(yù)測模式下,為了更好地消除一幀圖像中的空間冗余,首先將每幀圖像依據(jù)相鄰像素的相關(guān)性,劃分為大小不同的塊,以塊為單位進(jìn)行幀內(nèi)編碼。其中,針對每一幀圖像,依據(jù)率失真最優(yōu)化(rate?distortion?optimization,rdo)準(zhǔn)則,判斷是否需要將一幀圖像進(jìn)行塊劃分,以及劃分為多大的塊能夠使空間冗余最小,這使得編碼時(shí)間大大增加。
4、究其本質(zhì),視頻編碼利用的是自然視頻信號中幀內(nèi)圖像的紋理高度相關(guān)性。近年來,深度神經(jīng)網(wǎng)絡(luò)由于其強(qiáng)大的非線性特征表達(dá)能力,可以從大數(shù)據(jù)中有效學(xué)習(xí)從底層至高層的視覺特征,并且擁有了一整套相當(dāng)成熟的訓(xùn)練和測試體系,在計(jì)算機(jī)視覺領(lǐng)域中的底層任務(wù)如去噪、超分辨,以及高層語義任務(wù),如分類、檢測上都取得了巨大成功。
5、高效視頻編碼hevc大大降低了之前h.264標(biāo)準(zhǔn)的比特率,但代價(jià)是極高的編碼復(fù)雜度。在hevc中,編碼單元的四叉樹劃分(code?unit,cu)由于對率失真優(yōu)化的暴力搜索,占據(jù)了編碼時(shí)間的80%,消耗了很大一部分hevc編碼復(fù)雜度。
6、為了提高視頻編解碼的性能,研究人員需要找到更有效的特征作為輸入,而這通常是相當(dāng)困難的,另一方面,每個(gè)cu深度通常需要一個(gè)或多個(gè)分類器,導(dǎo)致更大的工作量和更長的訓(xùn)練時(shí)間。現(xiàn)有技術(shù)通過幀內(nèi)塊劃分rdo決策算法來改進(jìn)cu(codingunit)劃分方法,以提升編解碼效率。但該rdo算法通常只考慮每個(gè)塊的編碼優(yōu)化,缺乏全局視野和信息交互,容易陷入局部最優(yōu)解而無法達(dá)到全局最優(yōu)編碼效果,另外該rdo算法往往依賴于啟發(fā)式規(guī)則來輔助決策制定,規(guī)則的設(shè)計(jì)與參數(shù)的選擇需要經(jīng)驗(yàn)和調(diào)優(yōu),不一定能夠達(dá)到最佳性能,還有,該rdo算法的設(shè)計(jì)比較固定,無法靈活適應(yīng)不同類型的視頻內(nèi)容和編碼場景。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明所要解決的技術(shù)問題是針對現(xiàn)有技術(shù)的上述不足,提出一種基于深度學(xué)習(xí)的hevc幀內(nèi)cu劃分方法、裝置及編碼方法,該方法能夠有效提高視頻編解碼的全局性能、且能靈活適應(yīng)不同類型的視頻內(nèi)容和編碼場景。
2、第一方面,本發(fā)明提供一種基于深度學(xué)習(xí)的hevc幀內(nèi)cu劃分方法,所述方法包括如下步驟:
3、步驟s1:獲取待劃分編碼單元的視頻或圖像信息;
4、步驟s2:將所述視頻或圖像信息進(jìn)行標(biāo)準(zhǔn)化處理,得到待編碼的ctu圖像;
5、步驟s3:將所述ctu圖像輸入cpac-i模型,得到cu劃分決策;
6、其中,所述cpac-i模型為基于sknet的注意力機(jī)制和卷積技術(shù)結(jié)合的神經(jīng)網(wǎng)絡(luò)模型;
7、步驟s4:根據(jù)所述cu劃分決策,對hevc幀進(jìn)行劃分,以完成基于深度學(xué)習(xí)的hevc幀內(nèi)cu劃分。
8、進(jìn)一步地,所述步驟s3之前,所述方法包括步驟s0;
9、步驟s0:構(gòu)建cpac-i模型;
10、所述步驟s0,具體包括如下步驟:
11、步驟s01:根據(jù)歷史視頻或圖像信息,制作數(shù)據(jù)集,以及將數(shù)據(jù)集分為訓(xùn)練集、測試集和驗(yàn)證集;以及設(shè)計(jì)損失函數(shù);
12、步驟s02:基于損失函數(shù),根據(jù)所述訓(xùn)練集對cu劃分cpac-i網(wǎng)絡(luò)進(jìn)行訓(xùn)練;以及,根據(jù)所述測試集測試訓(xùn)練后的cu劃分cpac-i網(wǎng)絡(luò)的效果;以及,根據(jù)驗(yàn)證集調(diào)整訓(xùn)練后的cu劃分cpac-i網(wǎng)絡(luò)中的參數(shù),從而得到cpac-i模型;
13、其中,所述cu劃分cpac-i網(wǎng)絡(luò)為預(yù)先構(gòu)建的神經(jīng)網(wǎng)絡(luò),所述cu劃分cpac-i網(wǎng)絡(luò)包括特征提取單元和分裂決策單元,所述特征提取單元用于對圖像關(guān)鍵特征進(jìn)行學(xué)習(xí)提取,所述分裂決策單元用于根據(jù)學(xué)習(xí)提取的所述圖像關(guān)鍵特征進(jìn)行決策劃分;所述圖像關(guān)鍵特征為影響ctu圖像劃分決策或影響編碼結(jié)構(gòu)的圖像特征。
14、進(jìn)一步地,所述步驟s02之前,所述方法還包括步驟a:
15、步驟a:構(gòu)建cu劃分cpac-i網(wǎng)絡(luò);
16、所述步驟a,具體包括如下步驟:
17、步驟a1:以亮度分量l作為神經(jīng)網(wǎng)絡(luò)的輸入,分別輸入到神經(jīng)網(wǎng)絡(luò)的三個(gè)并行分支中,得到第一支路圖像特征量第二支路圖像特征量第三支路圖像特征量
18、步驟a2:將一支路圖像特征量、第二支路圖像特征量、第三支路圖像特征量進(jìn)行融合,得到未篩選融合特征總量gs;
19、
20、其中,
21、表示第一支路圖像特征量,表示第二支路圖像特征量,表示第三支路圖像特征量;
22、步驟a3:根據(jù)所述未篩選融合特征總量gs,基于不同核的注意力權(quán)重,得到三個(gè)分支的最終特征圖v(1),v(2)和v(3);
23、步驟a4:根據(jù)三個(gè)分支的最終特征圖v(1),v(2)和v(3),得到分裂決策以進(jìn)行cu劃分,從而構(gòu)建出cu劃分cpac-i網(wǎng)絡(luò)。
24、進(jìn)一步地,所述步驟a3,具體包括如下步驟:
25、步驟a31:根據(jù)所述未篩選融合特征總量gs,生成信道統(tǒng)計(jì)向量s中第c個(gè)元素的特征量sc;
26、
27、其中,gs(i,j)表示第(i,j)位置中的未篩選融合特征總量;
28、h和w分別表示特征圖的高和寬;
29、步驟a32:將特征量sc送入全連接層,得到緊密的特征向量z;
30、z=δ(b(wsc));
31、其中δ表示relu函數(shù),b()函數(shù)表示批量歸一化,權(quán)重
32、d的取值公式如下:
33、
34、其中,r表示還原率;
35、dl表示d的最小值;
36、步驟a33:對特征向量z應(yīng)用softmax算子,得到軟注意向量
37、
38、其中,u1,u2,u3分別表示u1,u2,u3的軟注意向量,表示a的第c行,表示b的第c行,表示d的第c行,分別表示u1,u2,u3中第c個(gè)元素;
39、步驟a34:根據(jù)軟注意向量得到三個(gè)分支的最終特征圖v(1),v(2)和v(3);
40、
41、其中第l層特征圖
42、進(jìn)一步地,步驟s01中,所述根據(jù)歷史視頻或圖像信息,制作數(shù)據(jù)集,具體包括如下步驟:
43、步驟b1:對歷史視頻或圖像信息中的圖像幀進(jìn)行隨機(jī)打亂,之后按照4:1:1的比例劃分為訓(xùn)練集、測試集和驗(yàn)證集;
44、步驟b2:將劃分好的訓(xùn)練集、測試集和驗(yàn)證集中的圖像拼接并轉(zhuǎn)換為不同分辨率的yuv格式數(shù)據(jù)子集;
45、步驟b3:使用hevc視頻編碼對yuv格式數(shù)據(jù)子集進(jìn)行標(biāo)簽制作,得到帶網(wǎng)絡(luò)訓(xùn)練標(biāo)簽的數(shù)據(jù)集,從而完成數(shù)據(jù)集的制作;
46、其中,所述網(wǎng)絡(luò)訓(xùn)練標(biāo)簽共三層:第一層為64x64cu是否可以劃分為32x32cu的網(wǎng)絡(luò)訓(xùn)練標(biāo)簽;第二層為32x32cu是否可以劃分為16x16cu的網(wǎng)絡(luò)訓(xùn)練標(biāo)簽;第三層為16x16cu是否可以劃分為8x8cu的網(wǎng)絡(luò)訓(xùn)練標(biāo)簽。
47、進(jìn)一步地,步驟b3中,所述網(wǎng)絡(luò)訓(xùn)練標(biāo)簽,為不同量化參數(shù)下的數(shù)據(jù)集真實(shí)標(biāo)簽;其中,所述量化參數(shù)包括四個(gè)量化等級,分別為22、27、32和37;
48、所述量化參數(shù)的歸一化處理公式如下:
49、
50、其中,q為原始量化參數(shù)qp值,為歸一化后的量化參數(shù)qp值。
51、進(jìn)一步地,步驟s01中,所述設(shè)計(jì)損失函數(shù),包括如下步驟:
52、步驟c1:根據(jù)各分支的損失,計(jì)算各分支損失之和losssum;
53、其中,第λ支路的損失公式如下:
54、
55、loss(λ)為第λ層的損失,χ為歸一化常數(shù),y(λ)(gi,j)表示第λ層真實(shí)值標(biāo)簽,表示第λ層預(yù)測值,h(·)表示交叉熵?fù)p失函數(shù),h和w分別表示特征圖的高和寬;
56、各分支損失之和losssum的計(jì)算公式如下:
57、
58、步驟c2:根據(jù)rd成本的損失函數(shù),計(jì)算每層的交叉熵?fù)p失函數(shù)具體公式如下:
59、
60、為歸一化的rd成本;
61、ζ表示劃分模式;
62、rξ表示當(dāng)前ctu第n個(gè)cu在劃分模式ζ下的rd成本;
63、rmin表示cu在所有可能的分割模式中的最小rd成本;
64、步驟c3:根據(jù)losssum和得到神經(jīng)網(wǎng)絡(luò)的總體損失函數(shù),從而完成損失函數(shù)的設(shè)計(jì);
65、
66、其中,lcpac-i為神經(jīng)網(wǎng)絡(luò)的總體設(shè)計(jì)函數(shù)。
67、第二方面,本發(fā)明提供一種hevc視頻幀內(nèi)編碼方法,所述方法包括如下步驟:
68、步驟k1:采用第一方面所述的基于深度學(xué)習(xí)的hevc幀內(nèi)cu劃分方法,對hevc幀進(jìn)行劃分;
69、步驟k2:對劃分后的hevc幀進(jìn)行變換、量化及熵編碼處理,得到編碼預(yù)處理數(shù)據(jù);
70、步驟k3:對編碼預(yù)處理數(shù)據(jù)進(jìn)行打包,得到視頻編碼碼流,從而完成hevc視頻幀內(nèi)編碼。
71、第三方面,本發(fā)明提供一種基于深度學(xué)習(xí)的hevc幀內(nèi)cu劃分裝置,所述裝置包括:
72、獲取單元,用于獲取待劃分編碼單元的視頻或圖像信息;
73、第一處理單元,與所述獲取單元連接,用于將所述視頻或圖像信息進(jìn)行標(biāo)準(zhǔn)化處理,得到待編碼的ctu圖像;
74、第二處理單元,與所述第一處理單元連接,用于將所述ctu圖像輸入cpac-i模型,得到cu劃分決策;
75、其中,所述cpac-i模型為基于sknet的注意力機(jī)制和卷積技術(shù)結(jié)合的神經(jīng)網(wǎng)絡(luò)模型;
76、第三處理單元,與所述第二處理單元連接,用于根據(jù)所述cu劃分決策,對hevc幀進(jìn)行劃分,以完成基于深度學(xué)習(xí)的hevc幀內(nèi)cu劃分。
77、進(jìn)一步地,所述裝置還包括:
78、構(gòu)建單元,用于構(gòu)建cpac-i模型;
79、所述構(gòu)建單元包括:
80、處理模塊,用于根據(jù)歷史視頻或圖像信息,制作數(shù)據(jù)集,以及將數(shù)據(jù)集分為訓(xùn)練集、測試集和驗(yàn)證集;以及,用于設(shè)計(jì)損失函數(shù);
81、設(shè)計(jì)模塊,與所述處理模塊連接,用于基于損失函數(shù),根據(jù)所述訓(xùn)練集對cu劃分cpac-i網(wǎng)絡(luò)進(jìn)行訓(xùn)練;以及,根據(jù)所述測試集測試訓(xùn)練后的cu劃分cpac-i網(wǎng)絡(luò)的效果;以及,根據(jù)驗(yàn)證集調(diào)整訓(xùn)練后的cu劃分cpac-i網(wǎng)絡(luò)中的參數(shù),從而得到cpac-i模型;
82、其中,所述cu劃分cpac-i網(wǎng)絡(luò)為預(yù)先構(gòu)建的神經(jīng)網(wǎng)絡(luò),所述cu劃分cpac-i網(wǎng)絡(luò)包括特征提取單元和分裂決策單元,所述特征提取單元用于對圖像關(guān)鍵特征進(jìn)行學(xué)習(xí)提取,所述分裂決策單元用于根據(jù)學(xué)習(xí)提取的所述圖像關(guān)鍵特征進(jìn)行決策劃分;所述圖像關(guān)鍵特征為影響ctu圖像劃分決策或影響編碼結(jié)構(gòu)的圖像特征。
83、本發(fā)明的有益效果:
84、1.提高視頻編解碼的全局性能
85、本發(fā)明cu劃分方法通過整合注意力機(jī)制,能夠更好地考慮全局信息,達(dá)到全局最優(yōu),提高視頻編解碼的全局性能。這種全局視角有助于在視頻幀的不同區(qū)域之間進(jìn)行更合理的決策,提高整體的編碼效率和質(zhì)量,避免局部最優(yōu)問題。
86、2.具有更高的靈活性和更強(qiáng)的適應(yīng)性
87、本發(fā)明的深度學(xué)習(xí)模型cpac-i模型具有高度的靈活性和適應(yīng)性。通過大量的視頻數(shù)據(jù)訓(xùn)練后,能夠根據(jù)具體情況動(dòng)態(tài)調(diào)整,保證編碼的效果。
88、3.提高特征學(xué)習(xí)的效率
89、本發(fā)明是基于cpac-i模型,cpac-i模型通過結(jié)合sknet的注意力機(jī)制和卷積技術(shù),從而能夠從輸入的ctu圖像中高效地學(xué)習(xí)到重要的特征。這種特征學(xué)習(xí)是自動(dòng)且動(dòng)態(tài)的,能夠根據(jù)不同的視頻內(nèi)容自適應(yīng)調(diào)整特征提取過程,極大地提高了對復(fù)雜視頻內(nèi)容的理解能力,從而優(yōu)化cu劃分決策。
90、4.提高計(jì)算效率
91、本發(fā)明能夠快速地對ctu進(jìn)行cu劃分,提高了編碼速度和實(shí)時(shí)性能。
92、5.降低人工干預(yù)
93、本發(fā)明通過大規(guī)模數(shù)據(jù)訓(xùn)練,能夠自動(dòng)學(xué)習(xí)并優(yōu)化這些規(guī)則和參數(shù),減少了對人工干預(yù)的依賴。這不僅加快了算法的部署和應(yīng)用速度,還使得模型可以不斷地通過新數(shù)據(jù)進(jìn)行自我改進(jìn)和優(yōu)化。
94、6.提升編碼質(zhì)量
95、本發(fā)明通過高效的特征學(xué)習(xí)和全局優(yōu)化,能夠更精確地捕捉視頻內(nèi)容的細(xì)節(jié)和結(jié)構(gòu)信息,從而優(yōu)化編碼決策。這種優(yōu)化不僅提高了壓縮效率,還在相同碼率下提升了視頻的主觀和客觀質(zhì)量,為用戶提供了更好的觀看體驗(yàn)。