<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          CVPR 2021-劉虹雨:結(jié)合深度神經(jīng)網(wǎng)絡(luò)進(jìn)行有效的圖像修復(fù)和編輯

          共 7277字,需瀏覽 15分鐘

           ·

          2021-07-04 21:40

          ↑ 點擊藍(lán)字 關(guān)注極市平臺

          作者丨劉虹雨
          來源丨極市平臺
          編輯丨極市平臺

          極市導(dǎo)讀

           

          來自虎牙直播AI基礎(chǔ)技術(shù)部的劉虹雨算法工程師,為我們介紹他團(tuán)隊在如何結(jié)合深度神經(jīng)網(wǎng)絡(luò)進(jìn)行有效的圖像修復(fù)和編輯這兩個問題上的探索工作,兩份工作都已經(jīng)被CVPR2021收錄。 >>加入極市CV技術(shù)交流群,走在計算機(jī)視覺的最前沿

          導(dǎo)讀

          虎牙公司的研究員劉虹雨在CVPR 2021入選兩篇poster論文,首先感謝co-authors的通力合作,希望在未來能做出更好的研究。此次研究解決了視覺內(nèi)容可控性和多樣性問題,將提升虎牙直播在視覺上的應(yīng)用效果,可用于如虎牙數(shù)字人、虛擬形象及相關(guān)直播游戲的制作,提升直播互動體驗。

          先為大家分享第一篇文章:DeFLOCNet: Deep Image Editing via Flexible Low-level Controls,這篇文章比較偏工程,做法比較直接。有GUI可直接體驗效果,代碼后續(xù)也會盡快分享。

          DeFLOCNet

          任務(wù)介紹

          這篇文章做的task是基于底層視覺控制的圖像編輯(low-level controls based image editing),其中底層視覺控制代表線條或者顏色(sketch or color),該任務(wù)的目標(biāo)是對孔洞區(qū)域進(jìn)行編輯,并且編輯的內(nèi)容是由用戶提供的底層視覺信息控制,如圖1所示。

          圖1,采用我們的方法可以自動填充(a), (b)。同時,可通過色彩或者線條控制孔洞內(nèi)容(c),(d),(e),(f)。

          Motivation

          在過去,底層視覺控制的圖像編輯方法一般是把底層數(shù)據(jù)信息與輸入的孔洞圖像拼接在一起,然后放入到網(wǎng)絡(luò)中。這個拼接的過程一般在pixel層實現(xiàn),這種方式雖然非常直觀,但是由于low-level control相對來說比較稀疏,所以在層層的CNNS之后有些信息就被過濾掉了,對于最后的結(jié)果控制不夠好。所以,如何更好的注入底層級視覺控制信息是我們需要解決的問題。很自然,由于直接在pixel層注入控制信息不好,我們就在features上注入信息。那么如何優(yōu)雅的在feature上注入底層視覺信息呢,Spade Norm可以有效地幫助我們在feature上注入信息,在注入信息的時候模仿藝術(shù)家的畫圖方式:

          • 1. 對于線條,采用progressive注入的方式,來模仿藝術(shù)家對線稿的多次打磨;
          • 2. 對于色彩,我們應(yīng)該將色彩從當(dāng)前位置擴(kuò)散到一個連通域中,但并不越過這個連通域。也就是說像畫水彩一樣,色彩需要有propagation,但是并不能超過、越過線條;
          • 3. 顏色和線條應(yīng)該看作是對結(jié)構(gòu)的指導(dǎo)。

          Methods:

          基于以上三點,我們設(shè)計了Structure generation block, 把線條以及色彩看作孔洞區(qū)域的結(jié)構(gòu)信息,并通過Spade Norm注入到feature中。同時,設(shè)計了Texture generation branch 輔助紋理的生成。最終,我們提出了DeFLOCNet,并在圖像編輯任務(wù)上取得了不錯的效果。

          Pipeline

          整個網(wǎng)絡(luò)是encoder-decoder的架構(gòu),輸入是一張帶mask的圖像,圖像經(jīng)過encoder后得到各層的feature,這些feature會被送入structure generation block,并輸出帶有l(wèi)ow-level control的特征,同時bottle-neck的feature會被送入到texture generation block中,并輸出紋理refine之后的feature。最后,兩個輸出會在decoder拼接一起,完整structure以及texture。

          圖2,模型的pipeline

          Structure generation block

          SGB分為三個branch,分別是sketch line generation branch、 fusion branch和color propagation branch,其結(jié)構(gòu)如圖3所示。無論是sketch還是color都是通過injection function注入到feature中,injection就是我前面提到的spade norm,整個過程如公式1所示:

          公式1,L代表low-level controls

          在sketch line generation branch中,我們先把input通過AVG pool變成channel為1的feature,接著將sketch lines以及noise通過injection function注入到feature中得到Fs1, 接著Fs1通過Sigmoid之后在fusion與input點乘。用這種方式是因為sketch的值在歸一化后都是1,那么直觀來說在feature上越靠近數(shù)值越靠近1越代表sketch。所以,我們利用sigmoid來凸顯sketch,可以說越靠近1的地方sketch就越明顯。當(dāng)然,由于input與sigmoid(Fs1)點乘之后,只是把sketch放到了Input上,input中的其他信息其實被磨掉了,因此我們采用short-connection做成一個殘差的模式。

          通過以上操作得到了帶sketch的特征,接下來是color的注入。在color propagation branch中,color和noise先通過CNN提取feature,然后將該feature與1-Sigmoid(Fs1)做點乘并得到Fc1,這一步的目的是為了達(dá)到我上面所說的顏色不能跨過sketch,否則會造成色彩混亂和串色。接著Fc1會在fusion branch被注入到input feature,最終通過對input feature注入sketch和color信息,我們得到輸出F1。

          對于不同的layer,我們的block數(shù)量也不同,對于最上層的layer(resolution為128×128)我們的block數(shù)量為6,而最底層的數(shù)量則為1。

          圖3,Structure generation block

          Texture generation branch

          這個branch相對來說比較簡單,只是一個簡單的decoder,但是其輸出是原始的bottle neck feature,這個feature不帶任何sketch以及color的信息,所以在end to end的過程中,texture generation branch輸出的feature會更傾向于讓紋理真實不smooth,這在后面的ablation study中也有實驗可以驗證。

          Experiments:

          Loss function大家可以在原論文中查看,都是一些比較經(jīng)典的loss function。我們這里針對最高層的layer做了可視化,如圖4。其中,F(xiàn)i對應(yīng)的就是fusion branch中feature,可以看到線條是逐漸清晰的,同時顏色由擴(kuò)散-擴(kuò)散到sketch外面,最后被阻斷在sketch里。

          圖4, 特征圖可視化

          State-of-the-art comparisons

          如下圖5所示,我們的方法對比其他baseline數(shù)據(jù),都取得了優(yōu)秀的效果。


          圖5,對比圖

          Ablation Study

          我們對injection process 的次數(shù),block在每層的數(shù)量,是否需要用sketch去阻斷color的傳播,以及是否需要texture分支都做了數(shù)值和視覺上的ablation study。如下圖表所示:

          圖6,Ablation Study

          Conclusion

          我們做的GUI借鑒了FEGAN,可以很好地與用戶交互,同時讓用戶體驗編輯的效果。整個文章的做法比較直接,比較工程,就是為了盡量把效果做好。我們原計劃做動漫的編輯,但是由于一開始投了NIPS,reviewer可能對動漫的domain不感興趣,所以最后用了常用的數(shù)據(jù)集。哈哈,可惜最后沒中NIPS,中了CVPR??偟膩碚f,這算是inpainting的上游任務(wù)了,因為有g(shù)uide,對比inpainting相對簡單一點,但還是非常有意思。最后,inpainting應(yīng)該與人有交互,才可以更好的進(jìn)行落地應(yīng)用。

          PD-GAN

          任務(wù)介紹

          回到老本行inpainting,我以前的工作一直是在做single-solution的方法,也就是針對一個masked image只輸出一個結(jié)果。但是,inpainting本質(zhì)上是一個ill-posed的任務(wù),其輸出的結(jié)果不應(yīng)該被限制,應(yīng)該是多樣的(diverse),只要合理自然就應(yīng)該是好的修復(fù)結(jié)果。

          Motivation

          基于這個出發(fā)點,我們提出一種非常自然的prior,也是我們的motivation,那就是越靠近孔洞的中心其多樣性越高,diverse越強,越靠近孔洞邊緣其多樣性越低越應(yīng)該與上下文consistent起來,保證無縫鏈接,這樣整個生成的圖像就可以多樣并且不突兀。同時,我認(rèn)為inpainting這個task由于是ill-posted的,并沒有一個完美的ground-truth,所以應(yīng)該要往GAN上面去靠往生成的方法想去靠,拋開傳統(tǒng)的image to image的框架,用GAN的想法去做,才是未來的一個比較好的方向,所以我們這里采用vanilla GAN的框架,利用latent code對來影響孔洞內(nèi)容,利用前面提到的prior我們很好地保證了GAN的特性就是多樣性,同時也保證了生成內(nèi)容能夠與上下文融為一體。

          Methods

          Pipeline:

          我們的pipeline如下圖所示,先通過一個簡單的PConv網(wǎng)絡(luò)得到一個 coarse prediction P, 接下來我們利用P去調(diào)制z來做生成任務(wù),對于P我們基于前面提到的prior,越靠近孔洞中心越多樣也就是越不相信P的內(nèi)容,而越靠近邊緣則越相信P的內(nèi)容,這樣在孔洞的中心則z會發(fā)生足夠的作用會保證多樣性,而越靠近邊緣z的作用的越小我們越相信P的作用。其實整個PD-GAN是conditional 和 unconditional生成的一種balance。為了實現(xiàn)以上的操作,我們設(shè)計并提出了spatially probabilistic diversity normalization來調(diào)制z.


          Spatially probabilistic diversity normalization

          我們修改了傳統(tǒng)的Spade Norm并設(shè)計了probabilistic diversity map來控制P的內(nèi)容置信度,具體來說我們設(shè)計了兩種SPDNorm,一種是soft SPDNorm,一種是hard SPDNorm,并且最終組合成了SPDNorm ResBlock, 如下圖所示:

          其中 Hard SPDNorm 中的 就是我們的 hard probabilistic diversity map, D 是通過 dilation operation 去實現(xiàn)的, 越往中心走數(shù)值越靠近 0 越往邊界走則越靠進(jìn) 1 , background 區(qū)域的 數(shù)值則為 1 , 整個 如下圖所示

          我們在實驗中設(shè)置k為4,對于不同的層我們采用dilation次數(shù)不一樣,從低像素層到高像素層分別是2,2,4,4,4。

          Soft SPDNorm 中的 就是我們的 soft probabilistic diversity map, 是通過 自己學(xué) 習(xí)的,學(xué)習(xí)方式如下公式:

          其中 為 binary mask, 經(jīng)過 后學(xué)習(xí)到的 feature . 之所以要學(xué) soft probabilistic diversity map, 是因為 Hard SPDNorm 對于訓(xùn)練來說不夠穩(wěn)定,容易造成 artifact,我們讓 網(wǎng)絡(luò)自己學(xué)習(xí)一個調(diào)節(jié)機(jī)制幫助最后的結(jié)果生成的更加合理。 的可視化如下圖所示:

          可以看到 是比較 smooth 并且靠近 的, 所以這對 Hard SPDNorm 有一個調(diào)節(jié)作用。最后我們把 hard 和 soft SPDNorm 做成了一個殘差模塊,把 Soft SPDNrom 的輸出作為殘 差加入到 Hard SPDnorm 中。

          其實大家可以看到,當(dāng)hard和soft probabilistic diversity map里的數(shù)值都變?yōu)?時,就會變成標(biāo)準(zhǔn)的Spade Norm。

          Perceptual diversity loss

          我們利用了reconstruction loss來訓(xùn)練網(wǎng)絡(luò),但是reconstruction loss對于diversity有致命的影響,所以我們嘗試使用一種已有diversity loss來解決這個問題,如下所示

          其中Iout1和Iout2 是網(wǎng)絡(luò)通過 生成的結(jié)果,可以看出這個 loss 要求不同的 生成的圖 像差距越大,保證 diverse。但是這個 loss 直接用到我們的任務(wù)中非常不 work,首先直接 對全圖算 會導(dǎo)致背景區(qū)域都變化,同時由于 Iout1 和 Iout2 都是被歸一化到 , 這兩個的差值要盡量大會導(dǎo)致一個圖無限變白(數(shù)值往 1 靠近) 一個圖無限變黑 (數(shù)值往 0 靠 近)?;谝陨蟽牲c我們設(shè)計了更有效的損失函數(shù)叫做 perceptual diversity loss:

          其中 代表的是 VGG 的第 層 feature, 代表 binary mask。首先用 VGG 提取輸出圖像 特征有利于防止最后輸出往 1 或者 兩個極端值靠近,同時乘 可以保證只影響生成區(qū)域 而不影響到背景區(qū)域,最后上面只有 1 而不是兩個 相減是因為 是沒有 spatial 信息的無 法與 相乘,如果上面還是 的差值那么我們發(fā)現(xiàn)最后仍然會影響到背景區(qū)域。

          Experiments

          State-of-the-art Comparisons

          Ablation study

          總結(jié)

          這份工作不同以往的inpainting,稍微拜托了一些image to image的框架,利用GAN的框架來做diverse的生成,我覺得這是一個不錯的啟發(fā),希望對后面做inpainting的小伙伴們有一定啟發(fā),相比于editing那篇文章我更喜歡這篇哈哈,因為比較insightful!

          這里提一下我最近比較喜歡的兩份工作,一份是我好兄弟wanziyu的High-Fidelity Pluralistic Image Completion with Transformers以及清華的Shengyu Zhao 的Co-mod-gan。High-Fidelity Pluralistic Image Completion with Transformers采用transformer把image to image的問題轉(zhuǎn)換成了一個概率問題應(yīng)該說是搜索問題,是一個可以follow的work,而且效果非常不錯。Co-mod-gan 的idea我在做PD-GAN的時候有過一個基本很像的,但沒做出來哈哈,Co-mod-gan這個idea是用z去調(diào)制masked image和我們這個是想反的,但是Co-mod-gan沒用l1-loss,我覺得是一個非常巧妙的idea。

          虎牙公司成立于2016年8月,是一家以游戲直播為核心業(yè)務(wù)、致力于打造全球領(lǐng)先的直播平臺的技術(shù)驅(qū)動型內(nèi)容公司?;⒀拦驹谥辈デ把丶夹g(shù)上持續(xù)探索,目前已具備業(yè)內(nèi)領(lǐng)先的實時內(nèi)容創(chuàng)作和直播互動能力,包括了數(shù)字人、虛實互動、實時AI驅(qū)動、實時內(nèi)容理解、實時渲染等技術(shù),推出了超分超高清直播、賽事實時AI打點回放、游戲智能彈幕等產(chǎn)品功能。

          如果覺得有用,就請分享到朋友圈吧!

          △點擊卡片關(guān)注極市平臺,獲取最新CV干貨

          公眾號后臺回復(fù)“79”獲取CVPR 2021:TransT 直播鏈接~


          極市干貨
          YOLO教程:一文讀懂YOLO V5 與 YOLO V4大盤點|YOLO 系目標(biāo)檢測算法總覽全面解析YOLO V4網(wǎng)絡(luò)結(jié)構(gòu)
          實操教程:PyTorch vs LibTorch:網(wǎng)絡(luò)推理速度誰更快?只用兩行代碼,我讓Transformer推理加速了50倍PyTorch AutoGrad C++層實現(xiàn)
          算法技巧(trick):深度學(xué)習(xí)訓(xùn)練tricks總結(jié)(有實驗支撐)深度強化學(xué)習(xí)調(diào)參Tricks合集長尾識別中的Tricks匯總(AAAI2021
          最新CV競賽:2021 高通人工智能應(yīng)用創(chuàng)新大賽CVPR 2021 | Short-video Face Parsing Challenge3D人體目標(biāo)檢測與行為分析競賽開賽,獎池7萬+,數(shù)據(jù)集達(dá)16671張!


          極市原創(chuàng)作者激勵計劃 #


          極市平臺深耕CV開發(fā)者領(lǐng)域近5年,擁有一大批優(yōu)質(zhì)CV開發(fā)者受眾,覆蓋微信、知乎、B站、微博等多個渠道。通過極市平臺,您的文章的觀點和看法能分享至更多CV開發(fā)者,既能體現(xiàn)文章的價值,又能讓文章在視覺圈內(nèi)得到更大程度上的推廣。

          對于優(yōu)質(zhì)內(nèi)容開發(fā)者,極市可推薦至國內(nèi)優(yōu)秀出版社合作出書,同時為開發(fā)者引薦行業(yè)大牛,組織個人分享交流會,推薦名企就業(yè)機(jī)會,打造個人品牌 IP。

          投稿須知:
          1.作者保證投稿作品為自己的原創(chuàng)作品。
          2.極市平臺尊重原作者署名權(quán),并支付相應(yīng)稿費。文章發(fā)布后,版權(quán)仍屬于原作者。
          3.原作者可以將文章發(fā)在其他平臺的個人賬號,但需要在文章頂部標(biāo)明首發(fā)于極市平臺

          投稿方式:
          添加小編微信Fengcall(微信號:fengcall19),備注:姓名-投稿
          △長按添加極市平臺小編


          覺得有用麻煩給個在看啦~  
          瀏覽 168
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日韩无码家庭乱伦 | 国产又黄又 | 地址一地址二日本视频免费 | 在线aⅴ亚洲中文字幕 | 东北熟女宾馆3p露脸 |