黃杰 夏遠洋 楊曉杰 王思潔 田佩 劉濤
基金項目:2022年度重慶對外經(jīng)貿(mào)學(xué)院科研項目(KYKJ202201)
第一作者簡介:黃杰(2000-),男,助理實驗師。研究方向為計算機技術(shù)與圖形處理。
DOI:10.19981/j.CN23-1581/G3.2024.15.010
摘? 要:圖像修復(fù)和視頻修復(fù)是計算機視覺的一項重要任務(wù),其中圖像修復(fù)又是視頻修復(fù)的基礎(chǔ)。為此,如何有效提升圖像質(zhì)量是實現(xiàn)視頻質(zhì)量提升的關(guān)鍵。傳統(tǒng)的圖像修復(fù)算法主要以樣本信息為基礎(chǔ),通過對樣本內(nèi)容的擴撒來實現(xiàn)對破損區(qū)域的修復(fù);由于這種方式對于圖像樣本有一定要求,從而制約傳統(tǒng)圖像修復(fù)技術(shù)的發(fā)展。為此,以生成新圖像內(nèi)容為基礎(chǔ)的神經(jīng)網(wǎng)絡(luò)如GAN的出現(xiàn),為圖像修復(fù)技術(shù)轉(zhuǎn)向深度學(xué)習(xí)提供方向。該課題主要以Real ESRGAN網(wǎng)絡(luò)的圖像修復(fù)技術(shù)為基礎(chǔ),通過對音頻視頻數(shù)據(jù)的隔離處理以及相同幀數(shù)據(jù)的優(yōu)化和標(biāo)記,構(gòu)建視頻修復(fù)處理流程。通過對隨機視頻樣本的測試,并通過對單幀圖片質(zhì)量和視頻數(shù)據(jù)流暢性與協(xié)調(diào)性的評估,該視頻處理方法表現(xiàn)出較好的系統(tǒng)性能。
關(guān)鍵詞:圖像分割;神經(jīng)網(wǎng)絡(luò);視頻修復(fù);Real ESRGAN;圖像修復(fù)
中圖分類號:TP301.6? ? ? 文獻標(biāo)志碼:A? ? ? ? ? 文章編號:2095-2945(2024)15-0046-05
Abstract: Image repair and video repair is an important task of computer vision, in which image repair is the basis of video repair. Therefore, how to effectively improve the image quality is the key to improve the video quality. The traditional image restoration algorithm is mainly based on the sample information, through the expansion of the sample content to achieve the repair of the damaged area; because this method has certain requirements for image samples, which restricts the development of traditional image restoration technology. For this reason, the emergence of neural networks based on generating new image content, such as GAN, provides a direction for image restoration technology to turn to deep learning. This topic is mainly based on the image restoration technology of Real ESRGAN network. Through the isolation processing of audio and video data and the optimization and marking of the same frame data, the video restoration process is constructed. Through the test of random video samples and the evaluation of single-frame picture quality and video data fluency and coordination, the video processing method shows good system performance.
Keywords: image segmentation; neural network; video inpainting; Real ESRGAN; image inpainting
伴隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,人類的社交生活也產(chǎn)生了極大的變化,線上社交逐步成為當(dāng)前社交的主流,而社交媒介也從原始的文字逐步轉(zhuǎn)變成了內(nèi)容更加豐富的圖片和視頻。人們越來越喜歡通過圖片和視頻內(nèi)容來分享自己日常的生活,但也因此需要對前期拍攝的內(nèi)容進行大量的編輯和處理。此外,老照片、舊影像的內(nèi)容因原始采集技術(shù)限制、介質(zhì)老化以及保存不當(dāng)?shù)仍颍霈F(xiàn)斑點、劃痕、模糊等問題,而這些內(nèi)容往往都極具價值。因此,如何利用現(xiàn)有的技術(shù)對其進行增強、修復(fù)在計算機視覺領(lǐng)域極具價值。
圖像修復(fù)和視頻修復(fù),主要是指利用圖像或視頻周圍區(qū)域的信息,對圖像或視頻中的破損內(nèi)容進行處理,以提升圖像或視頻原有的品質(zhì)。其作為計算機視覺的一項重要任務(wù),研究由來已久。最早的圖像修復(fù)是將物理學(xué)熱傳導(dǎo)原理應(yīng)用到圖像環(huán)境中,通過將局部源信息(這里指未破損區(qū)域)平滑地傳播到破損的孔區(qū)域并進行內(nèi)容填充來實現(xiàn)[1]。后來,逐步發(fā)展為基于擴散、基于塊和全局優(yōu)化等相關(guān)方法[2-4]。這些傳統(tǒng)的修復(fù)方法在一些紋理簡單、內(nèi)容復(fù)雜的圖片和視頻上能表現(xiàn)出較好的效果,但在面對復(fù)雜紋理時則不盡人意。主要原有在于:
1)傳統(tǒng)圖像和視頻的修復(fù)方法缺乏自主生成未知的新內(nèi)容的能力,導(dǎo)致原始內(nèi)容出現(xiàn)大面積破損時,修復(fù)效果不佳;
2)傳統(tǒng)圖像和視頻的修復(fù)方法缺乏泛化性,致使每次修復(fù)都需要重新實踐一次。
因此,面對當(dāng)前復(fù)雜的圖像和視頻的修復(fù)需要,傳統(tǒng)的修復(fù)方法很難適用[5]。伴隨著深度學(xué)習(xí)的興起,神經(jīng)網(wǎng)絡(luò)模型在計算機視覺領(lǐng)域表現(xiàn)出了優(yōu)異的效果[6-7],特別是如CNN、GAN等網(wǎng)絡(luò)模型能夠生成以假亂真的內(nèi)容,給圖像和視頻修復(fù)領(lǐng)域帶來了廣泛的研究前景。本文主要基于Real ESRGAN神經(jīng)網(wǎng)絡(luò)模型,展開對視頻修復(fù)內(nèi)容的研究。
1? 理論基礎(chǔ)
Real ESRGAN神經(jīng)網(wǎng)絡(luò)是一種盲圖像超分辨率模型,是在ESRGAN、SRGAN、GAN等網(wǎng)絡(luò)模型的基礎(chǔ)上發(fā)展而來,通過純合成數(shù)據(jù)來進行訓(xùn)練,模擬出高分辨率圖像變低分辯率過程,以低清圖倒推出它的高清圖的算法。為了更好了解該算法的原理,分別針對ESRGAN、SRGAN、GAN及CNN等網(wǎng)絡(luò)模型進行了系統(tǒng)性的研究。
1.1? 基于 CNN 的圖像修復(fù)理論
從低維像素信息抽取到高維特征信息呈現(xiàn)的過程是CNN網(wǎng)絡(luò)實現(xiàn)特征提取的主要特征[8],而這種抽取特征的能力正是深度學(xué)習(xí)中圖像和視頻修復(fù)的理論基礎(chǔ)。CNN特征提取編碼器的功能主要借助多層隱含層來實現(xiàn),具體如圖1所示。在將整幅圖像的像素信息傳入網(wǎng)絡(luò)后,為了逐步獲取到較高維的邊緣信息、輪廓信息等信息,CNN網(wǎng)絡(luò)構(gòu)建了3層隱藏層,第一層進行邊特征提取,第二層實現(xiàn)角和輪廓特征提取,第三層構(gòu)建對象特征提取,通過多層隱層之間的卷積和池化操作最終獲取到圖像中的高維對象信息,從而實現(xiàn)了對整幅圖的抽象理解。
隨后,Krizhevsky等[9]根據(jù)CNN的特征提取能力提出了 Context Encoders 網(wǎng)絡(luò),該網(wǎng)絡(luò)通過將圖像分類 中流行的 AlexNet 網(wǎng)絡(luò)[10]和圖像修復(fù)過程中的編碼和解碼相結(jié)合,構(gòu)建了深度學(xué)習(xí)中經(jīng)典的編解碼圖像修復(fù)方法,相關(guān)結(jié)構(gòu)如圖2所示。通過前側(cè)嵌入5 層 AlexNet 結(jié)構(gòu)實現(xiàn)特征提取編碼器功能,后側(cè)再使用 5 層AlexNet 結(jié)構(gòu)生成特征解碼器功能,從而實現(xiàn)圖像從特征提取到特征還原的整個過程。
圖1? 基于CNN的圖像特征提取示意圖
圖2? 基于CNN的Context Encoders網(wǎng)絡(luò)結(jié)構(gòu)
1.2? 基于 GAN 的圖像修復(fù)理論
Context Encoders 網(wǎng)絡(luò)有效解決了特征提取和特征還原的問題,但其嚴重依賴于圖像內(nèi)容本身,圖像修復(fù)中關(guān)于的生成未知內(nèi)容的能力一直沒有得到很好的提升,因此能夠生成未知圖像內(nèi)容的網(wǎng)絡(luò)成為了當(dāng)前圖像修復(fù)亟待探索的問題。
2014 年 Salimans等[11]創(chuàng)新性地提出了具有強大內(nèi)容生成能力的GAN網(wǎng)絡(luò),瞬間引起了國內(nèi)外學(xué)者的廣泛關(guān)注。GAN網(wǎng)絡(luò)原理圖如圖3 所示。GAN網(wǎng)絡(luò)主要由2部分構(gòu)成,分別是生成器G和鑒別器 D 2個部分,其中生成器G采用了編解碼結(jié)構(gòu),通過對輸入樣本數(shù)據(jù)潛在概率分布的學(xué)習(xí),輸入隨機噪聲以生成偽造的樣本數(shù)據(jù);鑒別器D則是是一個特征提取的二分網(wǎng)絡(luò),用于判定輸出的樣本的狀態(tài),如果狀態(tài)為真則判定標(biāo)簽為 1;否則判定標(biāo)簽為 0。鑒別器的主要目標(biāo)是盡可能地區(qū)分樣本狀態(tài),并通過結(jié)果反饋進行不斷地優(yōu)化調(diào)整,最終達到動態(tài)平衡的過程。
雖然GAN效果很好,但是常常面臨著訓(xùn)練困難、梯度消失等問題,后續(xù)學(xué)者又在此基礎(chǔ)上提出了 DCGAN、條件GAN、Wasserstein GAN、PatchGAN等改良版的 GAN網(wǎng)絡(luò)[12],這些都在一定程度上對 GAN 難收斂、梯度消失等訓(xùn)練問題進行了改進,能夠生成更高質(zhì)量的圖像。其中以Real ESRGAN、ESRGAN和SRGAN 等最為典型。
圖3? GAN網(wǎng)絡(luò)原理
為了解決一個很大的上采樣因子進行超分時,如何恢復(fù)出更精細的紋理細節(jié)問題,SRGAN提出了一個包含對抗adversarial loss和content loss的感知loss取代了MSE loss的方法。而ESRGAN網(wǎng)絡(luò)則是針對SRGAN的一些改進,ESRGAN網(wǎng)絡(luò)結(jié)構(gòu)圖如圖4所示。其首先對生成器網(wǎng)絡(luò)引入了一個殘差密集連接模塊Residual-in-Residual Dense Block (RDDB), 并且去掉了網(wǎng)絡(luò)中所有的BN層,并且加入一個殘差scaling操作使能夠訓(xùn)練更深的網(wǎng)絡(luò)結(jié)構(gòu);其次對判別器進行改進,由“這張圖是真的還是假的”修改為“這張圖是否比假的更真實一點”;最后對感知loss做了改進,使用VGG激活前的特征修訂而不是SRGAN內(nèi)的特征。
而Real ESRGAN是一個完全使用純合成數(shù)據(jù)去盡可能貼近真實數(shù)據(jù),然后去對現(xiàn)實生活中數(shù)據(jù)進行超分的一個方法。其生成器的結(jié)構(gòu)和ESRGAN幾乎一致,不同在于輸入時不僅需要進行4倍下采樣,還有1倍和2倍的下采樣操作,同時為了減小計算量,還做了一個Pixel Unshuffle的操作,即將輸入分辨率減小,通道增加。
2? 視頻修復(fù)算法的設(shè)計
基于Real ESRGAN 的視頻修復(fù)研究主要從3個階段進行,第一階段是圖像的分割,通過對視頻的分割處理,降低運算過程;第二階段是視頻相關(guān)幀的預(yù)測,通過第一階段分割的圖形來有效去除圖形中的相同像素信息;第三個是使用Real ESRGAN對圖像進行超分率或者對視頻的細節(jié)進行增強。具體流程如圖5所示。
首先,加載原始視頻數(shù)據(jù),然后利用FFmpeg工具(FFmpeg是一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為數(shù)據(jù)流的一種工具)對視頻進行處理,這里主要是將音頻內(nèi)容和視頻內(nèi)容進行分離和切割。通過對分離的音頻數(shù)據(jù)的分離,可以有效避免音頻數(shù)據(jù)對視頻數(shù)據(jù)內(nèi)容的污染,通過對視頻數(shù)據(jù)的切割,可以有效調(diào)節(jié)視頻幀的間隔指數(shù),從而有效調(diào)整圖像運算的計算量。圖像幀越多,對于圖像計算的尺度就越大。
然后,加載切割后保存的圖像幀,并針對相鄰圖像幀進行圖像內(nèi)容檢測分析,若相鄰幀之間的圖像無明顯差異,則會被視為相同的圖像幀予以標(biāo)記,并將重復(fù)圖像幀進行刪除,通過對所有圖像幀進行檢測分析,最終得到目標(biāo)圖像幀。在這個過程中,進行重復(fù)幀檢測的目的亦是為了降低后續(xù)Real ESRGAN網(wǎng)絡(luò)的運算壓力,而圖像幀標(biāo)記的目的則是為了后期進行視頻合成時,針對刪除的圖像幀進行內(nèi)容替換,從而確保視頻內(nèi)容的完整性。
最后是利用Real ESRGAN 網(wǎng)絡(luò)進行視頻內(nèi)容修復(fù),通過網(wǎng)絡(luò)擁有生成新內(nèi)容的特性,并以目標(biāo)圖像幀為參考基準(zhǔn),針對生成的圖像內(nèi)容進行檢測和評估,如果生成的圖像幀內(nèi)容達到評估要求,對其進行保存并參與下一輪圖像內(nèi)容的生成和評估,如此循環(huán)往復(fù),從而得到最符合要求的圖像幀。在經(jīng)過Real ESRGAN 網(wǎng)絡(luò)判定后,生成的圖像內(nèi)容需要首先還原成視頻,然后才能將視頻內(nèi)容與音頻內(nèi)容進行合并,為了簡化這一過程,依然借助FFmpeg來實現(xiàn)。
以上便是視頻修復(fù)算法的完整過程,其中較難的點在于文件中音視和視頻的合并和分割,以及視頻內(nèi)容的檢測。而這2個過程主要通過FFmpeg工具和高斯混合模型GMM實現(xiàn)。
3實驗分析與驗證
本次課題研究主要以Real ESRGAN神經(jīng)網(wǎng)絡(luò)模型為基礎(chǔ),通過Python程序語言來實現(xiàn)算法流程。實驗實踐平臺在Win10操作系統(tǒng)上,硬件參數(shù):CPU為intelCorei5-6300HQ,2.30 GHz;內(nèi)存為12.00 GB,實驗中的數(shù)據(jù)來源于嗶哩嗶哩網(wǎng)絡(luò)視頻《羅小黑戰(zhàn)記》數(shù)據(jù),片長3 min19 s,屏幕分辨為450×360像素,經(jīng)過本算法進行修復(fù),視頻像素分辨為提升為1 800×1 400,在人為對比觀測下,視頻內(nèi)容有了顯著的提升。
在實際的驗證過程中,主要通過2個階段來進行。第一階段是對單幀圖片內(nèi)容進行評估,利用局部細節(jié)來觀測生成的圖片質(zhì)量;第二階段是針對合成后的視頻進行評估,利用視頻內(nèi)容的流暢性和音頻視頻內(nèi)容的協(xié)調(diào)性來觀測合成后的視頻質(zhì)量。
這里以第389幀為例,來進行第一階段的評估。相關(guān)內(nèi)容如圖6所示,左側(cè)圖像是處理前,右側(cè)是圖像處理后。
通過對389幀圖像處理前后的對比,可以明顯觀測到處理前,圖片的整體色彩偏淡,局部輪廓不清晰,總體效果模糊;而處理后的圖片,色彩明亮,局部輪廓明顯,總體效果清晰。因此可以有效判定處理后的圖像質(zhì)量更好。
(a)? 第389幀處理前? ? ? (b)? 第389幀處理后
圖6? 圖片質(zhì)量評估
同時在對合成前后的視頻進行對比分析發(fā)現(xiàn),視頻前后的時長為發(fā)送變化,視頻質(zhì)量有明顯提升;其次視頻和音樂對象同軌,未發(fā)現(xiàn)音頻和視頻不同步的問題;因此可以判定合成后的視頻對原始視頻的修復(fù)有效。
4? 結(jié)束結(jié)
本課題在充分應(yīng)用Real ESRGAN神經(jīng)網(wǎng)絡(luò)的優(yōu)勢的同時,采取將視頻內(nèi)容轉(zhuǎn)換成圖片內(nèi)容,并基于圖形層面來實現(xiàn)對每一幀畫面細節(jié)增強的做法較有效地解決了視頻數(shù)據(jù)計算量大的問題,同時使用FFmpeg工具來實現(xiàn)音頻數(shù)據(jù)和視頻數(shù)據(jù)分離和合成的方式,有效實現(xiàn)了利用重新生成的內(nèi)容來重構(gòu)視頻內(nèi)容,從而達到視頻修復(fù)的目的。但視頻處理過程片長,這將是后期進行該項研究改進的一個主要方向之一。
參考文獻:
[1] BERTALMIO M, SAPIRO G, CASELLES V, et al. Image inpainting[C]//International Conference on Computer Graphics and Interactive Techniques,2000:417-424.
[2] CRIMINISI A, PEREZ P, TOYAMA K. Region filling and object removal by exemplar-based image inpainting[J].IEEE Transactions on Image Processing,2004,13(9):1200-1212.
[3] AHIRE B A, DESHPANDE N A. Video inpainting of objects using modified patch based image inpainting algorithm[S].2014:1-5.
[4] 薄德智.基于深度學(xué)習(xí)的圖像和視頻修復(fù)方法的研究[D].上海:上海大學(xué),2021.
[5] XIE J, XU L, CHEN E. Image denoising and inpainting with deep neural networks[C]//Neural Information Processing Systems,2012:341-349.
[6] ZHENG C, CHAM TJ, CAI J. Pluralistic image completion[C]//Computer Vision and Pattern Recognition,2019:1438-1447.
[7] GOODFELLOW I, BENGIO Y, COURVILLE A. Deep learning[M].The MIT Press,2016.
[8] PATHAK D, KRAHENBUHL P, DONAHUE J, et al. Context Encoders: feature learning by inpainting[C]//Computer Vision and Pattern Recognition,2016:2536-2544.
[9] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[J]. Communications of The Acm,2017,60(6):84-90.
[10] GOODFELLOW I, POUGET-ABADIE J, MIRZA M, et al. Generative adversarial nets[C]//Neural Information Processing Systems,2014:2672-2680.
[11] SALIMANS T, GOODFELLOW I, ZAREMBA W, et al. Improved techniques for training GANs[C]//Neural Information Processing Systems,2016:2234-2242.
[12] ISOLA P, ZHU J-Y, ZHOU T, et al. Image-to-image translation with conditional adversarial networks[C]//Computer Vision and Pattern Recognition,2017:5967-5976.