溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具

發(fā)布時(shí)間:2021-10-12 11:35:31 來源:億速云 閱讀:91 作者:柒染 欄目:云計(jì)算

今天就跟大家聊聊有關(guān)AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

近日,一段拍攝于 100 年前的老北京城影像被央視轉(zhuǎn)發(fā),在微博上火了。據(jù)了解,該視頻出自一位 B 站的 UP 主大谷的游戲創(chuàng)作小屋。作者大谷利用 AI 技術(shù),把一段拍攝于 1920 年的北京城黑白視頻,渲染成了高清流暢的彩色視頻,配以頗具地方特色的 BGM,還原了百年前老北京城的民風(fēng)民俗,頗有內(nèi)味。

AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具

據(jù)大谷介紹,這部拍攝于百年前的黑白視頻由于年代久遠(yuǎn),視頻畫質(zhì)有很多噪點(diǎn),幀數(shù)、分辨率都很低。于是他使用了三款開源的 AI 工具來對(duì)視頻進(jìn)行處理,分別是:

  • DAIN,對(duì)視頻進(jìn)行補(bǔ)幀處理,提高視頻流暢度

  • ESRGAN,對(duì)視頻進(jìn)行超分辨率處理,提高視頻清晰度

  • DeOldify,對(duì)視頻進(jìn)行上色處理

下面就讓我們來了解一下這三款視頻修復(fù)常用的 AI 工具,感興趣的朋友也可以學(xué)著用起來,自己處理老舊視頻哦。 

視頻補(bǔ)幀工具 DAIN

幀數(shù) (FPS)對(duì)于一部視頻的流暢度來說影響很大,在正常播放速度下,低于 30 FPS 的視頻會(huì)讓人覺得卡頓,高于 60 FPS 的話肉眼則分辨不出區(qū)別。幀數(shù)越高的視頻帶來的流暢度一定是更高的,尤其是在慢鏡頭下,差別尤為明顯:

AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具

上圖來自另一 AI 補(bǔ)幀工具 SUPER SLOMO 的示例,將原片 30 FPS 的汽車甩尾鏡頭放慢 8 倍后,實(shí)際 FPS 不足 4 FPS,肉眼可見的卡頓。而通過 AI 補(bǔ)幀技術(shù),能夠?qū)⒙藕蟮囊曨l維持在 240 FPS,流暢程度可見一斑。

通常來說,補(bǔ)幀的核心述求是在兩個(gè)連續(xù)幀之間插入中間幀,從而提高視頻的 FPS,而補(bǔ)幀工具需要解決的問題就是如何通過 AI 算法自動(dòng)生成中間幀。DAIN 全稱 Depth-Aware Video Frame Interpolation,即基于深度感知的視頻幀插值工具。DAIN 團(tuán)隊(duì)提出了深度感知幀內(nèi)插模型,開發(fā)了一個(gè)深度感知流投影層來生成中間幀。

AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具

測試環(huán)境

  • Ubuntu(Ubuntu =16.04.5 LTS )

  • Python:Anaconda3 = 4.1.1 & Python= 3.6.8 

  • Cuda 和 Cudnn:Cuda = 9.0 & Cudnn = 7.0 

  • Pythorch:定制的深度感知流投影和其他層需要 Pythorch 中的 ATen API =1.0.0

  • GCC:編譯 PyTorch 1.0.0 擴(kuò)展文件(.c/.cu)需要 GCC=4.9.1 和 nvcc=9.0 編譯器

  • GPU:NVIDIA GPU(作者使用的是 Titan X(Pascal)計(jì)算=6.1,支持 compute_50/52/60/61 設(shè)備)

安裝使用

下載資料庫:

$ git clone https://github.com/baowenbo/DAIN.git

在構(gòu)建Pytorch擴(kuò)展之前,請確保您具有pytorch >= 1.0.0

$ python -c "import torch; print(torch.__version__)"

生成 PyTorch 擴(kuò)展:

$ cd DAIN
$ cd my_package 
$ ./build.sh

生成 PWCNet 所需的 Correlation 包:

$ cd ../PWCNet/correlation_package_pytorch2_0
$ ./build.sh

測試預(yù)訓(xùn)練模型:

制作模型權(quán)重目錄和 Middlebury 數(shù)據(jù)集目錄:

$ cd DAIN
$ mkdir model_weights
$ mkdir MiddleBurySet

下載預(yù)訓(xùn)練的模型,

$ cd model_weights
$ wget http://vllab1.ucmerced.edu/~wenbobao/DAIN/best.pth

和 Middlebury 數(shù)據(jù)集:

$ cd ../MiddleBurySet
$ wget http://vision.middlebury.edu/flow/data/comp/zip/other-color-allframes.zip
$ unzip other-color-allframes.zip
$ wget http://vision.middlebury.edu/flow/data/comp/zip/other-gt-interp.zip
$ unzip other-gt-interp.zip
$ cd ..

預(yù)安裝:

$ cd PWCNet/correlation_package_pytorch2_0
$ sh build.sh
$ cd ../my_package
$ sh build.sh
$ cd ..

下載結(jié)果

用以下方法下載插值結(jié)果:

$ wget http://vllab1.ucmerced.edu/~wenbobao/DAIN/UCF101_DAIN.zip
$ wget http://vllab1.ucmerced.edu/~wenbobao/DAIN/Vimeo90K_interp_DAIN.zip
$ wget http://vllab1.ucmerced.edu/~wenbobao/DAIN/Middlebury_eval_DAIN.zip
$ wget http://vllab1.ucmerced.edu/~wenbobao/DAIN/Middlebury_other_DAIN.zip

慢動(dòng)作生成:

此模型完全有能力在對(duì)網(wǎng)絡(luò)體系結(jié)構(gòu)進(jìn)行少量修改的情況下產(chǎn)生慢動(dòng)作效果。通過指定time_step = 0.25以生成 x4 慢動(dòng)作效果來運(yùn)行以下代碼:

$ CUDA_VISIBLE_DEVICES=0 python demo_MiddleBury_slowmotion.py --netName DAIN_slowmotion --time_step 0.25

或設(shè)置time_step0.1250.1如下

$ CUDA_VISIBLE_DEVICES=0 python demo_MiddleBury_slowmotion.py --netName DAIN_slowmotion --time_step 0.125
$ CUDA_VISIBLE_DEVICES=0 python demo_MiddleBury_slowmotion.py --netName DAIN_slowmotion --time_step 0.1

分別生成 x8 和 x10 慢動(dòng)作。或者你想用 x100 慢動(dòng)作拍些好玩的東西也沒問題。

$ CUDA_VISIBLE_DEVICES=0 python demo_MiddleBury_slowmotion.py --netName DAIN_slowmotion --time_step 0.01

可通過以下方法創(chuàng)建gif動(dòng)畫:

$ cd MiddleBurySet/other-result-author/[random number]/Beanbags
$ convert -delay 1 *.png -loop 0 Beanbags.gif //1*10ms delay

祝玩得開心!

DAIN 的詳細(xì)介紹:點(diǎn)擊查看

DAIN 的下載地址:點(diǎn)擊下載

分辨率提升工具 ESRGAN

我們知道,分辨率對(duì)于圖像的清晰度將產(chǎn)生直接的影響。一張低分辨率的小圖片,如果我們直接放大的話很多細(xì)節(jié)將變成“馬賽克”,這點(diǎn)相信大家都很有經(jīng)驗(yàn)。因此,直接采用普通的插值算法進(jìn)行圖片放大的話,圖中物體的邊緣就會(huì)變得模糊,而超分辨率算法就是為了解決這種問題。

ESRGAN 是一種增強(qiáng)型超分辨率生成對(duì)抗網(wǎng)絡(luò),能通過 AI 在圖像超分辨率期間生成真實(shí)紋理,實(shí)現(xiàn)圖像分辨率的提升,效果如下圖所示: 

AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具

測試環(huán)境

  • Python 3

  • PyTorch> = 1.0(如果與 CUDA 一起安裝,CUDA 版本> = 7.5。更多詳細(xì)信息)

  • Python套件: pip install numpy opencv-python

安裝使用

1.克隆此 github 存儲(chǔ)庫。

git clone https://github.com/xinntao/ESRGAN
cd ESRGAN

2.將低分辨率圖像放置在./LR文件夾中。(有兩個(gè)示例圖像-狒狒和漫畫)。

3.從 Google 云端硬盤或百度云端硬盤下載經(jīng)過預(yù)訓(xùn)練的模型。將模型放在./models。

4.作者提供了兩種具有高感知質(zhì)量和高 PSNR 性能的模型。運(yùn)行測試:提供 ESRGAN模型和 RRDB_PSNR 模型,可以配置test.py。

python test.py

5.結(jié)果在./results文件夾中。

ESRGAN 的詳細(xì)介紹:點(diǎn)擊查看

ESRGAN 的下載地址:點(diǎn)擊下載

黑白圖像著色工具 DeOldify

DeOldify 是用于著色和恢復(fù)舊圖像及視頻的深度學(xué)習(xí)項(xiàng)目。它采用了 NoGAN 這樣一種新型的、高效的圖像到圖像的 GAN 訓(xùn)練方法,細(xì)節(jié)處理效果更好,渲染也更逼真:

AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具

NoGAN 是作者開發(fā)的一種新型 GAN 訓(xùn)練模型,用于解決之前 DeOldify 模型中的一些關(guān)鍵問題。NoGAN 訓(xùn)練結(jié)合了 GAN 訓(xùn)練的優(yōu)點(diǎn)(好看的色彩),同時(shí)消除了令人討厭的副作用(如視頻中的閃爍物體)。視頻由孤立的圖像生成,而不添加任何時(shí)間建模。該過程執(zhí)行 30-60 分鐘 “NoGAN” 訓(xùn)練的 GAN 部分,每次使用 1% 至 3% 的圖像網(wǎng)絡(luò)(imagenet)數(shù)據(jù)。然后,與靜止圖像著色一樣,在重建視頻之前對(duì)各個(gè)幀進(jìn)行“去舊化”(DeOldify),即使在移動(dòng)場景中的渲染也非常一致:

AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具

目前,DeOldify 有三種型號(hào)可供選擇,每一種都有關(guān)鍵優(yōu)勢和劣勢,因此具有不同的用例。三種型號(hào)分別為:Artistic(藝術(shù)型)、Stable(穩(wěn)定型)、Video(視頻專用)。

測試環(huán)境

  • Linux

  • Fast.AI = 1.0.51(及其依賴項(xiàng))。如果使用任何更高版本,你會(huì)在渲染中看到網(wǎng)格工件,而tensorboard 會(huì)出現(xiàn)故障。

  • PyTorch = 1.0.1

  • Jupyter Lab conda 安裝

-c conda forge jupyterlab
  • Tensorboard(即安裝 Tensorflow)和 TensorboardX。非必要,但 FastAI 現(xiàn)在提供了對(duì) TF的原生支持,很好用。

prereqs:conda install-c anaconda tensorflow gpu
pip install tensorboardX
  • ImageNet,是一個(gè)很好的數(shù)據(jù)集,用于訓(xùn)練。

  • GPU:要求不高。(單獨(dú)著色用普通集顯都行,大規(guī)模訓(xùn)練的話還是建議上好一點(diǎn)的顯卡)

安裝使用

打開命令行并導(dǎo)航到要安裝的根文件夾,輸入以下命令:

git clone https://github.com/jantic/DeOldify.git DeOldify
cd DeOldify
conda env create -f environment.yml

然后開始使用這些命令運(yùn)行:

source activate deoldify
jupyter lab

通過控制臺(tái)中提供的 URL 開始在 Jupyter Lab 中運(yùn)行。

DeOldify 詳細(xì)介紹:點(diǎn)擊了解

DeOldify 下載地址:點(diǎn)擊下載

想要自己動(dòng)手把黑白老視頻變成彩色高清視頻的朋友,現(xiàn)在就可以行動(dòng)起來啦。

看完上述內(nèi)容,你們對(duì)AI 復(fù)原100年前的京城老視頻靠的是哪三個(gè)開源工具有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

ai
AI