MMEditing:多任務(wù)圖像視頻編輯工具箱極市平臺(tái)關(guān)注共 3735字,需瀏覽 8分鐘 ·2020-08-12 16:47 點(diǎn)擊藍(lán)字?關(guān)注我們作者丨RookieRui@知乎來源丨h(huán)ttps://zhuanlan.zhihu.com/p/178867385我們近期在 OpenMMLab 項(xiàng)目中開源了MMEditing。這是一個(gè)圖像和視頻編輯的工具箱,它目前包含了常見的編輯任務(wù),比如圖像修復(fù),圖像摳圖,超分辨率和生成模型。在編輯圖像或者視頻的時(shí)候,我們往往是需要組合使用以上任務(wù)的,因此我們將它們整理到一個(gè)統(tǒng)一的框架下,方便大家使用。目前 MMEditing 的 repo 已經(jīng)上線,歡迎大家點(diǎn)贊提issue:open-mmlab/mmeditinggithub.com在具體介紹每一個(gè)子任務(wù)前,讓我們先來看一下 MMEditing 的優(yōu)勢(shì)吧!1. 統(tǒng)一的框架:我們?cè)O(shè)計(jì)了先進(jìn)的框架來統(tǒng)一最常見的圖像修復(fù),圖像摳圖,超分辨率和生成模型這幾個(gè)任務(wù)。用戶可以在一個(gè)框架中方便地調(diào)用不同的算法和模型。2. 靈活的模塊化設(shè)計(jì):用戶能夠基于這套框架靈活地增加新的功能和算法。3. 豐富的模型和文檔:下圖中展示了我們支持的算法數(shù)目,要知道其中有不少算法是首次有完整的復(fù)現(xiàn)哦~我們也完善了文檔(文檔覆蓋率高達(dá)90%以上)和入門材料,方便用戶上手。4. 高效的實(shí)現(xiàn):MMEditing所有的訓(xùn)練包括 GAN 的對(duì)抗訓(xùn)練都是基于高效的分布式訓(xùn)練框架部署的,對(duì)于一些基礎(chǔ)的操作單元,我們也相應(yīng)地進(jìn)行了優(yōu)化。強(qiáng)調(diào)一下,現(xiàn)在的 MMEditing 不僅僅是研究導(dǎo)向的框架,還是一個(gè)可以用于入門和教學(xué)的框架,在這里你可以看到 low-level vision 中常用的模型和基礎(chǔ)的任務(wù),每個(gè)模型也都被很好地拆解,方便大家上手探索其中的奧秘。下面讓我們一起來走進(jìn) MMEditing,進(jìn)一步了解一下不同的任務(wù)。Super-Resolution 超分辨率超分辨率(簡(jiǎn)稱超分),是將低分辨率圖像放大到高分辨率圖像,如下圖,一只小狒狒經(jīng)過 SR網(wǎng)絡(luò)后,可以得到放大,變成一只“大”狒狒。隨著深度學(xué)習(xí)的興起,早在2014年,香港中文大學(xué)多媒體實(shí)驗(yàn)室就提出了首個(gè)使用卷積神經(jīng)網(wǎng)絡(luò)解決超分辨率的模型——SRCNN。作為圖像超分辨率工作,SRCNN 對(duì)后續(xù)計(jì)算機(jī)視覺的底層算法研究產(chǎn)生了重要影響。后續(xù),各種各樣的網(wǎng)絡(luò)結(jié)構(gòu)如雨后春筍般地冒了出來,比如VDSR,EDSR,SRResNet 等等; 還有追求視覺效果的 SRGAN, ESRGAN。MMEditing把一些基本的超分算法,比如 SRCNN,EDSR,SResNet,SRGAN還有視頻的 EDVR 算法都包括進(jìn)去。之前 OpenMMLab 中的 MMSR 也有類似的功能,相比之下,MMEditing 使用了更好的框架設(shè)計(jì),用上了 MMCV 和 MMDetection 在發(fā)展過程中的經(jīng)驗(yàn)積淀。整個(gè) MM 系列都采用了類似的框架,只要掌握了一種,就能夠輕而易舉地掌握其他任務(wù)的代碼庫。Inpainting修復(fù)Inpainting(圖像修復(fù))是圖像編輯領(lǐng)域里面一項(xiàng)基礎(chǔ)的任務(wù),其主要目標(biāo)是修復(fù)圖像中的受損(污染)區(qū)域。如下圖中,左邊是原圖,中間是受損區(qū)域示意圖,你可以去除圖像中的不想要的人物,或者是圖像中雜亂的不規(guī)則的受損區(qū)域。然后經(jīng)過 Inpainting 修復(fù)算法就得到最右邊的圖啦。Inpainting 作為一項(xiàng)基礎(chǔ)任務(wù),現(xiàn)如今已經(jīng)被廣泛的應(yīng)用到各種各樣的場(chǎng)景,比如面部修復(fù),背景填充以及視頻編輯中。之前傳統(tǒng)的 Patch-Matching 算法可以通過圖中已知區(qū)域的紋理來快速填補(bǔ)當(dāng)前受損區(qū)域。隨著深度學(xué)習(xí)的發(fā)展,越來越多的工作利用深度神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)更好的圖像修復(fù)效果。深度圖像修復(fù)領(lǐng)域中,有許多經(jīng)典的開創(chuàng)性的工作像 Global&Local、Partial Conv 以及 DeepFill 系列,他們作為深度圖像修復(fù)的經(jīng)典模型被廣泛地應(yīng)用到后來的研究工作當(dāng)中。可是這些方法都沒有官方的 PyTorch 實(shí)現(xiàn),為了方便大家更好的研究和深入了解這些模型,我們?cè)?MMEditing 中集成了這些算法的訓(xùn)練和測(cè)試功能。同時(shí),我們對(duì)其中一些重要的模塊進(jìn)行了代碼上的優(yōu)化,以使其更加符合 PyTorch 的風(fēng)格,甚至是更快的 GPU 計(jì)算,從而能夠有更好的訓(xùn)練速度。Matting摳像摳像(Matting)問題是一個(gè)在計(jì)算機(jī)視覺研究領(lǐng)域有重要價(jià)值的研究課題,其在工業(yè)界也有非常重要的應(yīng)用。摳像是將前景從圖片或者視頻中與背景分離開來的問題,比如下圖中,輸入是左圖,一位超級(jí)可愛的小姐姐在秀麗的風(fēng)景前中,我們希望得到右邊的小姐姐的摳像結(jié)果(b)。它和 segmentation分割的不同之處在于,matting 需要得到更精準(zhǔn)的邊緣(如頭發(fā))以及與背景的組合系數(shù)。為了降低求解的難度,一種最常見的方式是引入用戶輸入的 trimap(如下圖),來對(duì)圖片進(jìn)行簡(jiǎn)單的三分類。其中,圖中的黑色為背景,白色為前景,灰色為未知區(qū)域。給定 trimap 后,我們只需要求解未知區(qū)域的摳圖結(jié)果,這大大降低了求解的難度。在 MMEditing 中,我們首次完整復(fù)現(xiàn)了 DIM(Deep Image Matting)在原論文中的性能。除此之外,MMEditing 還包含當(dāng)前開源 Matting 模型中性能最好的 GCA Matting 模型,以及速度最快的 IndexNet Matting。Generation生成模型Generation,中文含義為“生成”。所謂生成,不同于其他圖像編輯的任務(wù),旨在創(chuàng)造新的圖像。我們?cè)噲D通過深度學(xué)習(xí)的方式,讓神經(jīng)網(wǎng)絡(luò)成為創(chuàng)造者,產(chǎn)生新的信息。生成任務(wù)一般分為兩種,非條件(unconditional)和條件(conditional)的生成。所謂非條件生成,主要是從潛在空間(latent space)中的噪聲(noise)往圖像域(image domain)進(jìn)行轉(zhuǎn)換,并試圖近似相關(guān)邊緣概率分布,產(chǎn)生逼真的圖像。所謂條件生成,主要是從一個(gè)圖像域映射到潛在空間,并進(jìn)一步轉(zhuǎn)換到另一個(gè)圖像域。目前的MMEditing主要支持后者,即從一個(gè)圖像域映射到另一個(gè)圖像域,如分割的mask轉(zhuǎn)換到真實(shí)圖像、馬轉(zhuǎn)換到斑馬等。后者的條件生成也更加符合目前圖像編輯的主題。而目前 MMEditing 支持的條件圖像生成,又可以分為兩種不同的設(shè)定。其中一種生成模型的訓(xùn)練數(shù)據(jù)中,包含成對(duì)的訓(xùn)練數(shù)據(jù),被稱為“成對(duì)圖像到圖像轉(zhuǎn)換(paired image-to-image translation)”。這種設(shè)定一般生成任務(wù)的難度比較低,但對(duì)數(shù)據(jù)本身的要求比較高,生成效果一般比較良好。最經(jīng)典的成對(duì)圖像到圖像轉(zhuǎn)換的方法,名為 pix2pix。它也是圖像到圖像轉(zhuǎn)換領(lǐng)域開山鼻祖的文章,因此我們?cè)谶@個(gè)版本中首先考慮對(duì)它進(jìn)行實(shí)現(xiàn),獲得了與作者官方實(shí)現(xiàn)一致的結(jié)果。另一種生成模型的訓(xùn)練數(shù)據(jù)中,僅包含非成對(duì)的訓(xùn)練數(shù)據(jù),被稱為“非成對(duì)圖像到圖像轉(zhuǎn)換(unpaired image-to-image translation)”。這種設(shè)定一般對(duì)數(shù)據(jù)要求較低,很容易構(gòu)建兩個(gè)明確的圖像域,但生成難度較大,生成效果會(huì)略微降低。提出非成對(duì)圖像到圖像轉(zhuǎn)換問題,并首先給出解決方案(cycle-consistency)的方法,名為 CycleGAN。CycleGAN 作為最經(jīng)典的非成對(duì)圖像到圖像轉(zhuǎn)換的生成方法,我們?cè)谶@個(gè)版本中同樣首先考慮對(duì)它進(jìn)行實(shí)現(xiàn)和效果對(duì)齊。生成(Generation)任務(wù)通常比較困難,但向人們展示出了驚人的效果和廣闊的研究前景。在未來 MMEditing 代碼庫的版本中,我們會(huì)考慮加入更多不同的生成設(shè)定,以及多種生成方法,讓我們的代碼庫更加全面、豐富、強(qiáng)大。結(jié)語MMEditing 作為 OpenMMLab 的一員,后面會(huì)逐漸地完善,不斷修改 bugs,持續(xù)添加新功能。歡迎大家一起來完善 MMEditing,共同貢獻(xiàn) OpenMMLab! 下面是 OpenMMLab 中的其他成員的介紹,后續(xù)會(huì)有更多重磅的 project 出現(xiàn),希望大家持續(xù)關(guān)注我們的OpenMMLab 計(jì)劃,并且參與其中哈。推薦閱讀超詳細(xì)!使用OpenCV深度學(xué)習(xí)模塊在圖像分類下的應(yīng)用實(shí)踐Matplotlib優(yōu)雅作圖筆記21張讓你代碼能力突飛猛進(jìn)的速查表(神經(jīng)網(wǎng)絡(luò)、線性代數(shù)、可視化等)添加極市小助手微信(ID : cv-mart),備注:姓名-學(xué)校/公司-研究方向-城市(如:小極-北大-目標(biāo)檢測(cè)-深圳),即可申請(qǐng)加入極市目標(biāo)檢測(cè)/圖像分割/工業(yè)檢測(cè)/人臉/醫(yī)學(xué)影像/3D/SLAM/自動(dòng)駕駛/超分辨率/姿態(tài)估計(jì)/ReID/GAN/圖像增強(qiáng)/OCR等技術(shù)交流群,更有每月大咖直播分享、真實(shí)項(xiàng)目需求對(duì)接、求職內(nèi)推、算法競(jìng)賽、干貨資訊匯總、行業(yè)技術(shù)交流,一起來讓思想之光照的更遠(yuǎn)吧~△長按添加極市小助手△長按關(guān)注極市平臺(tái),獲取最新CV干貨覺得有用麻煩給個(gè)在看啦~?? 瀏覽 63點(diǎn)贊 評(píng)論 收藏 分享 手機(jī)掃一掃分享分享 舉報(bào) 評(píng)論圖片表情視頻評(píng)價(jià)全部評(píng)論推薦 VideoCrafter視頻生成和編輯工具箱VideoCrafter 是一個(gè)用于制作視頻內(nèi)容的開源視頻生成和編輯工具箱。目前包括以下三種型號(hào):BVideoCrafter視頻生成和編輯工具箱VideoCrafter是一個(gè)用于制作視頻內(nèi)容的開源視頻生成和編輯工具箱。目前包括以下三種型號(hào):BaseT2V:通用文本到視頻生成提供基于潛在視頻擴(kuò)散模型(LVDM)的基本文本到視頻(T2V)生成模型PotatofieldImageToolkit圖像工具箱洋芋田圖像工具箱,一個(gè)適用于攝影從業(yè)者/愛好者、設(shè)計(jì)師等創(chuàng)意行業(yè)從業(yè)者的圖像工具箱。軟件目前有如下工PotatofieldImageToolkit圖像工具箱洋芋田圖像工具箱,一個(gè)適用于攝影從業(yè)者/愛好者、設(shè)計(jì)師等創(chuàng)意行業(yè)從業(yè)者的圖像工具箱。軟件目前有如下工具:圖片加水印工具長圖拼接工具富文本制圖工具尺寸調(diào)整工具圖片裁剪工具EXIF讀取工具字體管理工具色彩視頻編輯寶視頻編輯寶0PiTiVi視頻編輯軟件PiTiVi 是一個(gè)使用 Python 所寫并基于 GStreamer 和 GTK+ 的開源視頻編輯Shotcut視頻編輯軟件Shotcut 是一款自由、開源、跨平臺(tái)的視頻編輯軟件。使用 Qt 開發(fā)。依賴:MLT: multiPiTiVi視頻編輯軟件PiTiVi是一個(gè)使用Python所寫并基于GStreamer和GTK+的開源視頻編輯軟件。無論是編輯視頻的新手,還是專業(yè)人員,皆可通過PiTiVi找到自己的需要。PiTiVi提供一個(gè)時(shí)間軸,以便對(duì)視Shotcut視頻編輯軟件Shotcut是一款自由、開源、跨平臺(tái)的視頻編輯軟件。使用Qt開發(fā)。依賴:MLT:multimediaauthoringframeworkQt5:applicationandUIframeworkFF映秀短視頻編輯映秀短視頻編輯0點(diǎn)贊 評(píng)論 收藏 分享 手機(jī)掃一掃分享分享 舉報(bào)