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