黃杰 夏遠(yuǎn)洋 楊曉杰 王思潔 田佩 劉濤
基金項(xiàng)目:2022年度重慶對(duì)外經(jīng)貿(mào)學(xué)院科研項(xiàng)目(KYKJ202201)
第一作者簡(jiǎn)介:黃杰(2000-),男,助理實(shí)驗(yàn)師。研究方向?yàn)橛?jì)算機(jī)技術(shù)與圖形處理。
DOI:10.19981/j.CN23-1581/G3.2024.15.010
摘? 要:圖像修復(fù)和視頻修復(fù)是計(jì)算機(jī)視覺(jué)的一項(xiàng)重要任務(wù),其中圖像修復(fù)又是視頻修復(fù)的基礎(chǔ)。為此,如何有效提升圖像質(zhì)量是實(shí)現(xiàn)視頻質(zhì)量提升的關(guān)鍵。傳統(tǒng)的圖像修復(fù)算法主要以樣本信息為基礎(chǔ),通過(guò)對(duì)樣本內(nèi)容的擴(kuò)撒來(lái)實(shí)現(xiàn)對(duì)破損區(qū)域的修復(fù);由于這種方式對(duì)于圖像樣本有一定要求,從而制約傳統(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ǔ),通過(guò)對(duì)音頻視頻數(shù)據(jù)的隔離處理以及相同幀數(shù)據(jù)的優(yōu)化和標(biāo)記,構(gòu)建視頻修復(fù)處理流程。通過(guò)對(duì)隨機(jī)視頻樣本的測(cè)試,并通過(guò)對(duì)單幀圖片質(zhì)量和視頻數(shù)據(jù)流暢性與協(xié)調(diào)性的評(píng)估,該視頻處理方法表現(xiàn)出較好的系統(tǒng)性能。
關(guān)鍵詞:圖像分割;神經(jīng)網(wǎng)絡(luò);視頻修復(fù);Real ESRGAN;圖像修復(fù)
中圖分類號(hào):TP301.6? ? ? 文獻(xiàn)標(biāo)志碼:A? ? ? ? ? 文章編號(hào):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)容更加豐富的圖片和視頻。人們?cè)絹?lái)越喜歡通過(guò)圖片和視頻內(nèi)容來(lái)分享自己日常的生活,但也因此需要對(duì)前期拍攝的內(nèi)容進(jìn)行大量的編輯和處理。此外,老照片、舊影像的內(nèi)容因原始采集技術(shù)限制、介質(zhì)老化以及保存不當(dāng)?shù)仍?,出現(xiàn)斑點(diǎn)、劃痕、模糊等問(wèn)題,而這些內(nèi)容往往都極具價(jià)值。因此,如何利用現(xiàn)有的技術(shù)對(duì)其進(jìn)行增強(qiáng)、修復(fù)在計(jì)算機(jī)視覺(jué)領(lǐng)域極具價(jià)值。
圖像修復(fù)和視頻修復(fù),主要是指利用圖像或視頻周圍區(qū)域的信息,對(duì)圖像或視頻中的破損內(nèi)容進(jìn)行處理,以提升圖像或視頻原有的品質(zhì)。其作為計(jì)算機(jī)視覺(jué)的一項(xiàng)重要任務(wù),研究由來(lái)已久。最早的圖像修復(fù)是將物理學(xué)熱傳導(dǎo)原理應(yīng)用到圖像環(huán)境中,通過(guò)將局部源信息(這里指未破損區(qū)域)平滑地傳播到破損的孔區(qū)域并進(jìn)行內(nèi)容填充來(lái)實(shí)現(xiàn)[1]。后來(lái),逐步發(fā)展為基于擴(kuò)散、基于塊和全局優(yōu)化等相關(guān)方法[2-4]。這些傳統(tǒng)的修復(fù)方法在一些紋理簡(jiǎn)單、內(nèi)容復(fù)雜的圖片和視頻上能表現(xiàn)出較好的效果,但在面對(duì)復(fù)雜紋理時(shí)則不盡人意。主要原有在于:
1)傳統(tǒng)圖像和視頻的修復(fù)方法缺乏自主生成未知的新內(nèi)容的能力,導(dǎo)致原始內(nèi)容出現(xiàn)大面積破損時(shí),修復(fù)效果不佳;
2)傳統(tǒng)圖像和視頻的修復(fù)方法缺乏泛化性,致使每次修復(fù)都需要重新實(shí)踐一次。
因此,面對(duì)當(dāng)前復(fù)雜的圖像和視頻的修復(fù)需要,傳統(tǒng)的修復(fù)方法很難適用[5]。伴隨著深度學(xué)習(xí)的興起,神經(jīng)網(wǎng)絡(luò)模型在計(jì)算機(jī)視覺(jué)領(lǐng)域表現(xiàn)出了優(yōu)異的效果[6-7],特別是如CNN、GAN等網(wǎng)絡(luò)模型能夠生成以假亂真的內(nèi)容,給圖像和視頻修復(fù)領(lǐng)域帶來(lái)了廣泛的研究前景。本文主要基于Real ESRGAN神經(jīng)網(wǎng)絡(luò)模型,展開對(duì)視頻修復(fù)內(nèi)容的研究。
1? 理論基礎(chǔ)
Real ESRGAN神經(jīng)網(wǎng)絡(luò)是一種盲圖像超分辨率模型,是在ESRGAN、SRGAN、GAN等網(wǎng)絡(luò)模型的基礎(chǔ)上發(fā)展而來(lái),通過(guò)純合成數(shù)據(jù)來(lái)進(jìn)行訓(xùn)練,模擬出高分辨率圖像變低分辯率過(guò)程,以低清圖倒推出它的高清圖的算法。為了更好了解該算法的原理,分別針對(duì)ESRGAN、SRGAN、GAN及CNN等網(wǎng)絡(luò)模型進(jìn)行了系統(tǒng)性的研究。
1.1? 基于 CNN 的圖像修復(fù)理論
從低維像素信息抽取到高維特征信息呈現(xiàn)的過(guò)程是CNN網(wǎng)絡(luò)實(shí)現(xiàn)特征提取的主要特征[8],而這種抽取特征的能力正是深度學(xué)習(xí)中圖像和視頻修復(fù)的理論基礎(chǔ)。CNN特征提取編碼器的功能主要借助多層隱含層來(lái)實(shí)現(xiàn),具體如圖1所示。在將整幅圖像的像素信息傳入網(wǎng)絡(luò)后,為了逐步獲取到較高維的邊緣信息、輪廓信息等信息,CNN網(wǎng)絡(luò)構(gòu)建了3層隱藏層,第一層進(jìn)行邊特征提取,第二層實(shí)現(xiàn)角和輪廓特征提取,第三層構(gòu)建對(duì)象特征提取,通過(guò)多層隱層之間的卷積和池化操作最終獲取到圖像中的高維對(duì)象信息,從而實(shí)現(xiàn)了對(duì)整幅圖的抽象理解。
隨后,Krizhevsky等[9]根據(jù)CNN的特征提取能力提出了 Context Encoders 網(wǎng)絡(luò),該網(wǎng)絡(luò)通過(guò)將圖像分類 中流行的 AlexNet 網(wǎng)絡(luò)[10]和圖像修復(fù)過(guò)程中的編碼和解碼相結(jié)合,構(gòu)建了深度學(xué)習(xí)中經(jīng)典的編解碼圖像修復(fù)方法,相關(guān)結(jié)構(gòu)如圖2所示。通過(guò)前側(cè)嵌入5 層 AlexNet 結(jié)構(gòu)實(shí)現(xiàn)特征提取編碼器功能,后側(cè)再使用 5 層AlexNet 結(jié)構(gòu)生成特征解碼器功能,從而實(shí)現(xiàn)圖像從特征提取到特征還原的整個(gè)過(guò)程。
圖1? 基于CNN的圖像特征提取示意圖
圖2? 基于CNN的Context Encoders網(wǎng)絡(luò)結(jié)構(gòu)
1.2? 基于 GAN 的圖像修復(fù)理論
Context Encoders 網(wǎng)絡(luò)有效解決了特征提取和特征還原的問(wèn)題,但其嚴(yán)重依賴于圖像內(nèi)容本身,圖像修復(fù)中關(guān)于的生成未知內(nèi)容的能力一直沒(méi)有得到很好的提升,因此能夠生成未知圖像內(nèi)容的網(wǎng)絡(luò)成為了當(dāng)前圖像修復(fù)亟待探索的問(wèn)題。
2014 年 Salimans等[11]創(chuàng)新性地提出了具有強(qiáng)大內(nèi)容生成能力的GAN網(wǎng)絡(luò),瞬間引起了國(guó)內(nèi)外學(xué)者的廣泛關(guān)注。GAN網(wǎng)絡(luò)原理圖如圖3 所示。GAN網(wǎng)絡(luò)主要由2部分構(gòu)成,分別是生成器G和鑒別器 D 2個(gè)部分,其中生成器G采用了編解碼結(jié)構(gòu),通過(guò)對(duì)輸入樣本數(shù)據(jù)潛在概率分布的學(xué)習(xí),輸入隨機(jī)噪聲以生成偽造的樣本數(shù)據(jù);鑒別器D則是是一個(gè)特征提取的二分網(wǎng)絡(luò),用于判定輸出的樣本的狀態(tài),如果狀態(tài)為真則判定標(biāo)簽為 1;否則判定標(biāo)簽為 0。鑒別器的主要目標(biāo)是盡可能地區(qū)分樣本狀態(tài),并通過(guò)結(jié)果反饋進(jìn)行不斷地優(yōu)化調(diào)整,最終達(dá)到動(dòng)態(tài)平衡的過(guò)程。
雖然GAN效果很好,但是常常面臨著訓(xùn)練困難、梯度消失等問(wèn)題,后續(xù)學(xué)者又在此基礎(chǔ)上提出了 DCGAN、條件GAN、Wasserstein GAN、PatchGAN等改良版的 GAN網(wǎng)絡(luò)[12],這些都在一定程度上對(duì) GAN 難收斂、梯度消失等訓(xùn)練問(wèn)題進(jìn)行了改進(jìn),能夠生成更高質(zhì)量的圖像。其中以Real ESRGAN、ESRGAN和SRGAN 等最為典型。
圖3? GAN網(wǎng)絡(luò)原理
為了解決一個(gè)很大的上采樣因子進(jìn)行超分時(shí),如何恢復(fù)出更精細(xì)的紋理細(xì)節(jié)問(wèn)題,SRGAN提出了一個(gè)包含對(duì)抗adversarial loss和content loss的感知loss取代了MSE loss的方法。而ESRGAN網(wǎng)絡(luò)則是針對(duì)SRGAN的一些改進(jìn),ESRGAN網(wǎng)絡(luò)結(jié)構(gòu)圖如圖4所示。其首先對(duì)生成器網(wǎng)絡(luò)引入了一個(gè)殘差密集連接模塊Residual-in-Residual Dense Block (RDDB), 并且去掉了網(wǎng)絡(luò)中所有的BN層,并且加入一個(gè)殘差scaling操作使能夠訓(xùn)練更深的網(wǎng)絡(luò)結(jié)構(gòu);其次對(duì)判別器進(jìn)行改進(jìn),由“這張圖是真的還是假的”修改為“這張圖是否比假的更真實(shí)一點(diǎn)”;最后對(duì)感知loss做了改進(jìn),使用VGG激活前的特征修訂而不是SRGAN內(nèi)的特征。
而Real ESRGAN是一個(gè)完全使用純合成數(shù)據(jù)去盡可能貼近真實(shí)數(shù)據(jù),然后去對(duì)現(xiàn)實(shí)生活中數(shù)據(jù)進(jìn)行超分的一個(gè)方法。其生成器的結(jié)構(gòu)和ESRGAN幾乎一致,不同在于輸入時(shí)不僅需要進(jìn)行4倍下采樣,還有1倍和2倍的下采樣操作,同時(shí)為了減小計(jì)算量,還做了一個(gè)Pixel Unshuffle的操作,即將輸入分辨率減小,通道增加。
2? 視頻修復(fù)算法的設(shè)計(jì)
基于Real ESRGAN 的視頻修復(fù)研究主要從3個(gè)階段進(jìn)行,第一階段是圖像的分割,通過(guò)對(duì)視頻的分割處理,降低運(yùn)算過(guò)程;第二階段是視頻相關(guān)幀的預(yù)測(cè),通過(guò)第一階段分割的圖形來(lái)有效去除圖形中的相同像素信息;第三個(gè)是使用Real ESRGAN對(duì)圖像進(jìn)行超分率或者對(duì)視頻的細(xì)節(jié)進(jìn)行增強(qiáng)。具體流程如圖5所示。
首先,加載原始視頻數(shù)據(jù),然后利用FFmpeg工具(FFmpeg是一套可以用來(lái)記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為數(shù)據(jù)流的一種工具)對(duì)視頻進(jìn)行處理,這里主要是將音頻內(nèi)容和視頻內(nèi)容進(jìn)行分離和切割。通過(guò)對(duì)分離的音頻數(shù)據(jù)的分離,可以有效避免音頻數(shù)據(jù)對(duì)視頻數(shù)據(jù)內(nèi)容的污染,通過(guò)對(duì)視頻數(shù)據(jù)的切割,可以有效調(diào)節(jié)視頻幀的間隔指數(shù),從而有效調(diào)整圖像運(yùn)算的計(jì)算量。圖像幀越多,對(duì)于圖像計(jì)算的尺度就越大。
然后,加載切割后保存的圖像幀,并針對(duì)相鄰圖像幀進(jìn)行圖像內(nèi)容檢測(cè)分析,若相鄰幀之間的圖像無(wú)明顯差異,則會(huì)被視為相同的圖像幀予以標(biāo)記,并將重復(fù)圖像幀進(jìn)行刪除,通過(guò)對(duì)所有圖像幀進(jìn)行檢測(cè)分析,最終得到目標(biāo)圖像幀。在這個(gè)過(guò)程中,進(jìn)行重復(fù)幀檢測(cè)的目的亦是為了降低后續(xù)Real ESRGAN網(wǎng)絡(luò)的運(yùn)算壓力,而圖像幀標(biāo)記的目的則是為了后期進(jìn)行視頻合成時(shí),針對(duì)刪除的圖像幀進(jìn)行內(nèi)容替換,從而確保視頻內(nèi)容的完整性。
最后是利用Real ESRGAN 網(wǎng)絡(luò)進(jìn)行視頻內(nèi)容修復(fù),通過(guò)網(wǎng)絡(luò)擁有生成新內(nèi)容的特性,并以目標(biāo)圖像幀為參考基準(zhǔn),針對(duì)生成的圖像內(nèi)容進(jìn)行檢測(cè)和評(píng)估,如果生成的圖像幀內(nèi)容達(dá)到評(píng)估要求,對(duì)其進(jìn)行保存并參與下一輪圖像內(nèi)容的生成和評(píng)估,如此循環(huán)往復(fù),從而得到最符合要求的圖像幀。在經(jīng)過(guò)Real ESRGAN 網(wǎng)絡(luò)判定后,生成的圖像內(nèi)容需要首先還原成視頻,然后才能將視頻內(nèi)容與音頻內(nèi)容進(jìn)行合并,為了簡(jiǎn)化這一過(guò)程,依然借助FFmpeg來(lái)實(shí)現(xiàn)。
以上便是視頻修復(fù)算法的完整過(guò)程,其中較難的點(diǎn)在于文件中音視和視頻的合并和分割,以及視頻內(nèi)容的檢測(cè)。而這2個(gè)過(guò)程主要通過(guò)FFmpeg工具和高斯混合模型GMM實(shí)現(xiàn)。
3實(shí)驗(yàn)分析與驗(yàn)證
本次課題研究主要以Real ESRGAN神經(jīng)網(wǎng)絡(luò)模型為基礎(chǔ),通過(guò)Python程序語(yǔ)言來(lái)實(shí)現(xiàn)算法流程。實(shí)驗(yàn)實(shí)踐平臺(tái)在Win10操作系統(tǒng)上,硬件參數(shù):CPU為intelCorei5-6300HQ,2.30 GHz;內(nèi)存為12.00 GB,實(shí)驗(yàn)中的數(shù)據(jù)來(lái)源于嗶哩嗶哩網(wǎng)絡(luò)視頻《羅小黑戰(zhàn)記》數(shù)據(jù),片長(zhǎng)3 min19 s,屏幕分辨為450×360像素,經(jīng)過(guò)本算法進(jìn)行修復(fù),視頻像素分辨為提升為1 800×1 400,在人為對(duì)比觀測(cè)下,視頻內(nèi)容有了顯著的提升。
在實(shí)際的驗(yàn)證過(guò)程中,主要通過(guò)2個(gè)階段來(lái)進(jìn)行。第一階段是對(duì)單幀圖片內(nèi)容進(jìn)行評(píng)估,利用局部細(xì)節(jié)來(lái)觀測(cè)生成的圖片質(zhì)量;第二階段是針對(duì)合成后的視頻進(jìn)行評(píng)估,利用視頻內(nèi)容的流暢性和音頻視頻內(nèi)容的協(xié)調(diào)性來(lái)觀測(cè)合成后的視頻質(zhì)量。
這里以第389幀為例,來(lái)進(jìn)行第一階段的評(píng)估。相關(guān)內(nèi)容如圖6所示,左側(cè)圖像是處理前,右側(cè)是圖像處理后。
通過(guò)對(duì)389幀圖像處理前后的對(duì)比,可以明顯觀測(cè)到處理前,圖片的整體色彩偏淡,局部輪廓不清晰,總體效果模糊;而處理后的圖片,色彩明亮,局部輪廓明顯,總體效果清晰。因此可以有效判定處理后的圖像質(zhì)量更好。
(a)? 第389幀處理前? ? ? (b)? 第389幀處理后
圖6? 圖片質(zhì)量評(píng)估
同時(shí)在對(duì)合成前后的視頻進(jìn)行對(duì)比分析發(fā)現(xiàn),視頻前后的時(shí)長(zhǎng)為發(fā)送變化,視頻質(zhì)量有明顯提升;其次視頻和音樂(lè)對(duì)象同軌,未發(fā)現(xiàn)音頻和視頻不同步的問(wèn)題;因此可以判定合成后的視頻對(duì)原始視頻的修復(fù)有效。
4? 結(jié)束結(jié)
本課題在充分應(yīng)用Real ESRGAN神經(jīng)網(wǎng)絡(luò)的優(yōu)勢(shì)的同時(shí),采取將視頻內(nèi)容轉(zhuǎn)換成圖片內(nèi)容,并基于圖形層面來(lái)實(shí)現(xiàn)對(duì)每一幀畫面細(xì)節(jié)增強(qiáng)的做法較有效地解決了視頻數(shù)據(jù)計(jì)算量大的問(wèn)題,同時(shí)使用FFmpeg工具來(lái)實(shí)現(xiàn)音頻數(shù)據(jù)和視頻數(shù)據(jù)分離和合成的方式,有效實(shí)現(xiàn)了利用重新生成的內(nèi)容來(lái)重構(gòu)視頻內(nèi)容,從而達(dá)到視頻修復(fù)的目的。但視頻處理過(guò)程片長(zhǎng),這將是后期進(jìn)行該項(xiàng)研究改進(jìn)的一個(gè)主要方向之一。
參考文獻(xiàn):
[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.