0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一個(gè)模型可以實(shí)現(xiàn)多個(gè)圖像修改任務(wù)

DPVg_AI_era ? 來源:未知 ? 作者:李倩 ? 2018-11-05 17:02 ? 次閱讀

一個(gè)模型可以實(shí)現(xiàn)多個(gè)圖像修改任務(wù)!本文作者結(jié)合自注意力GAN、逐漸增大的訓(xùn)練方式等技術(shù),實(shí)現(xiàn)了驚艷的舊照片著色效果。

圖像著色、圖像增強(qiáng)、恢復(fù)舊圖像等是計(jì)算機(jī)視覺領(lǐng)域的熱點(diǎn)問題,不過,用一個(gè)模型很好地實(shí)現(xiàn)多個(gè)任務(wù)的研究不多。

近日,GitHub用戶Janson Antic發(fā)布了一個(gè)名為DeOldify的項(xiàng)目,這是一個(gè)給舊照片著色和修復(fù)的神器。

地址:https://github.com/jantic/DeOldify

讓我們先看看效果:

Maria Anderson as the Fairy Fleur de farine and Lyubov Rabtsova as her page in the ballet “Sleeping Beauty” at the Imperial Theater, St. Petersburg, Russia, 1890.

Woman relaxing in her livingroom (1920, Sweden)

Medical Students pose with a cadaver around 1890

Surfer in Hawaii, 1890

Whirling Horse, 1898

Interior of Miller and Shoemaker Soda Fountain, 1899

Paris in the 1880s

Edinburgh from the sky in the 1920s

(更多結(jié)果圖像請點(diǎn)擊文末鏈接查看)

技術(shù)細(xì)節(jié)

這是一個(gè)基于深度學(xué)習(xí)的模型。具體來說,我結(jié)合了以下方法:

Self-Attention生成對抗網(wǎng)絡(luò)(https://arxiv.org/abs/1805.08318)。除了generator是一個(gè)預(yù)訓(xùn)練的Unet之外,我只做了一點(diǎn)修改,使它具有光譜規(guī)范化(spectral normalization)和自注意力(self attention)。一開始我努力想實(shí)現(xiàn)一個(gè)Wasserstein GAN版本,但沒成功,轉(zhuǎn)向這個(gè)版本之后就一切都好了。我喜歡Wasserstein GAN的理論,但它在實(shí)踐中并不成功,因此我喜歡上了Self-Attention GANs。

訓(xùn)練結(jié)構(gòu)的靈感來自Progressive Growing of GANs(https://arxiv.org/abs/1710.10196)。但不是完全一樣,差別主要是我的版本層數(shù)保持不變——只是逐步改變輸入的大小并調(diào)整學(xué)習(xí)率以確保尺寸的轉(zhuǎn)換成功。最終結(jié)果基本一致——訓(xùn)練速度更快、更穩(wěn)定,并且能更好地泛化。

Two Time-Scale Update Rule(https://arxiv.org/abs/1706.08500)。 這也非常簡單, 就是一對一的generator/critic迭代和更高的critic學(xué)習(xí)率。

Generator Loss包括兩部分:一部分是基于VGG16的基本Perceptual Loss(或Feature Loss),基本上只是使生成模型偏差以復(fù)制輸入圖像。第二部分是critic的loss score。對于curious來說,Perceptual Loss本身不足以產(chǎn)生良好的結(jié)果。它往往只是鼓勵(lì)一堆棕色/綠色/藍(lán)色 ,基本上這只是在測試中作弊,神經(jīng)網(wǎng)絡(luò)很擅長做這些!這里需要意識(shí)到的關(guān)鍵問題是,GAN實(shí)際上正在學(xué)習(xí)損失函數(shù),這對于我們在機(jī)器學(xué)習(xí)中所追求的理想來說真正邁出了一大步。當(dāng)然,當(dāng)你把以前人工編碼的東西交給機(jī)器學(xué)習(xí),通常能得到更好的結(jié)果。這個(gè)項(xiàng)目就是這樣。

這個(gè)模型的驚艷之處在于,它對各種各樣的圖像修改都很有用,而且應(yīng)該能做得很好。上面舉例的是著色模型的結(jié)果,但這只是pipeline的一個(gè)部分,用同樣的模型可以開發(fā)更多任務(wù)。

我用這個(gè)模型開發(fā)的下一個(gè)任務(wù)是修復(fù)舊圖像,使它們看起來更好,所以我的下一個(gè)項(xiàng)目是“defade”模型。我已經(jīng)做了最初的努力,在我寫這篇文章時(shí)已經(jīng)處于模型訓(xùn)練的早期階段?;旧希皇怯?xùn)練相同的模型來重建圖像,使用夸張的對比度/亮度調(diào)整來增強(qiáng)圖像,作為褪色照片和使用舊/壞設(shè)備拍攝的照片的模擬。我已經(jīng)看到了一些有希望的結(jié)果:

如何啟動(dòng)這個(gè)項(xiàng)目

以上就是這個(gè)項(xiàng)目的要點(diǎn)——我希望用GAN讓老照片看起來更好,更重要的是,讓項(xiàng)目有用。

這個(gè)項(xiàng)目是用Fast.AI library建的。不幸的是,用的是舊版本,我還沒有升級(jí)到新版本。 因此,先決條件是:

舊版本的Fast.AI library:https://github.com/jantic/fastai

Fast.AI已有的dependencies:已有方便的requirements.txt和environment.yml

Pytorch 0.4.1(需要spectral_norm,因此需要最新的穩(wěn)定版本)。

Jupyter Lab

Tensorboard(即安裝Tensorflow)和TensorboardX(https://github.com/lanpa/tensorboardX)。 需要注意的是,默認(rèn)情況下, progress images將每200次迭代寫入Tensorboard,因此可以持續(xù)方便地查看模型正在執(zhí)行的操作。

BEEFY顯卡。我的是GeForce 1080TI(11GB),真希望有比11 GB更大的內(nèi)存。Unet和Critic都非常大,但越大效果越好。

對于想要立即開始轉(zhuǎn)換自己的圖像的人:......好吧,你需要等我先上傳預(yù)先訓(xùn)練好的權(quán)重。 一旦可用,就可以在可視化筆記本中引用它們。我將使用ColorizationVisualization.ipynb。你只需要用我上傳的生成器(colorizer)的權(quán)重文件替換colorizer_path = IMAGENET.parent /('bwc_rc_gen_192.h5')

假設(shè)你在內(nèi)存足夠大的GPU(例如11 GB GeForce 1080Ti)上運(yùn)行這個(gè)程序,我將保持大小約為500px。如果內(nèi)存小于11GB,你可以將圖像縮小,或嘗試在CPU上運(yùn)行。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 圖像
    +關(guān)注

    關(guān)注

    2

    文章

    1078

    瀏覽量

    40346
  • 計(jì)算機(jī)視覺
    +關(guān)注

    關(guān)注

    8

    文章

    1690

    瀏覽量

    45875

原文標(biāo)題:舊照片著色修復(fù)神器!自注意力GAN效果驚艷

文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    請問下FREERTOS只能創(chuàng)建4個(gè)任務(wù),修改哪個(gè)宏定義可以增加創(chuàng)建任務(wù)的數(shù)量?

    請問下FREERTOS只能創(chuàng)建4個(gè)任務(wù),修改哪個(gè)宏定義可以增加創(chuàng)建任務(wù)的數(shù)量?解決方法:增加F
    發(fā)表于 05-13 06:44

    基于GAC模型實(shí)現(xiàn)交互式圖像分割的改進(jìn)算法

    些,也就是說,不要集中在個(gè)局部取點(diǎn),所選點(diǎn)之間應(yīng)該有定的幾何距離。這可以通過簡單的刪選程序實(shí)現(xiàn)。3.3 對
    發(fā)表于 09-19 09:19

    labview can卡模型次只能發(fā)送個(gè)幀ID,請問怎樣修改使它次發(fā)送多個(gè)不同ID?

    附件是我的模型模型單次發(fā)送沒有問題,就是不知道怎么修改讓他可以發(fā)送多個(gè)幀ID,
    發(fā)表于 07-17 15:45

    ucos ii多個(gè)任務(wù)等待個(gè)信號(hào)量

    小弟新學(xué)ucos ii,今天遇到點(diǎn)問題,特來請教具體是這樣的:1,對于ucos ii多個(gè)任務(wù)等待個(gè)信號(hào)量,當(dāng)信號(hào)量有效以后,最高優(yōu)先級(jí)任務(wù)
    發(fā)表于 05-06 06:24

    labview can卡模型次只能發(fā)送個(gè)幀ID,請問怎樣修改使它次發(fā)送多個(gè)不同ID?

    labview can卡模型次只能發(fā)送個(gè)幀ID,請問怎樣修改使它次發(fā)送
    發(fā)表于 05-14 11:33

    請問是否可以使用x-cube ai將多個(gè)模型放入個(gè)MCU中呢?

    請問是否可以使用x-cube ai將多個(gè)模型放入個(gè)MCU中。第一個(gè)
    發(fā)表于 01-05 06:33

    freertos怎么在任務(wù)修改任務(wù)的優(yōu)先級(jí)?

    freertos怎么在任務(wù)修改任務(wù)的優(yōu)先級(jí)
    發(fā)表于 10-11 07:56

    freertos中個(gè)任務(wù)可以支持多個(gè)信號(hào)量嗎?

    freertos中個(gè)任務(wù)可以支持多個(gè)信號(hào)量嗎
    發(fā)表于 11-07 06:58

    圖像插值的個(gè)變指數(shù)變分模型

    為了消除插值圖像在邊緣的鋸齒現(xiàn)象、在平坦區(qū)域的分塊現(xiàn)象,提出了種變指數(shù)變分模型圖像插值方法。通過對變指數(shù)變分模型擴(kuò)散特性的研究,引入了
    發(fā)表于 11-30 15:35 ?0次下載

    單片機(jī)可以同時(shí)處理多個(gè)任務(wù)

    單片機(jī)可以按分時(shí)、順序、中斷的方法處理多個(gè)任務(wù)。
    的頭像 發(fā)表于 04-06 15:43 ?4715次閱讀

    圖像分類任務(wù)的各種tricks

    計(jì)算機(jī)視覺主要問題有圖像分類、目標(biāo)檢測和圖像分割等。針對圖像分類任務(wù),提升準(zhǔn)確率的方法路線有兩條,一個(gè)
    的頭像 發(fā)表于 09-14 16:42 ?1111次閱讀

    如何在SpringBoot項(xiàng)目中實(shí)現(xiàn)動(dòng)態(tài)定時(shí)任務(wù)

    之前寫過文章記錄怎么在SpringBoot項(xiàng)目中簡單使用定時(shí)任務(wù),不過由于要借助cron表達(dá)式且都提前定義好放在配置文件里,不能在項(xiàng)目運(yùn)行中動(dòng)態(tài)修改任務(wù)執(zhí)行時(shí)間,實(shí)在不太靈活。
    的頭像 發(fā)表于 09-30 11:16 ?1741次閱讀

    如何動(dòng)態(tài)修改cron參數(shù)呢?

    按正常來講,修改定時(shí)任務(wù)的執(zhí)行周期,把服務(wù)停下來,改下任務(wù)的cron參數(shù),再重啟服務(wù)就搞搞定了。這種方式很簡單,沒有可說的,但是有沒有種可能,在不停服務(wù)的情況下,就可以動(dòng)態(tài)的
    的頭像 發(fā)表于 04-12 11:04 ?1845次閱讀

    如何動(dòng)態(tài)添加修改刪除定時(shí)任務(wù)?

    如何動(dòng)態(tài)添加修改刪除定時(shí)任務(wù)?那么我們起看看具體怎么實(shí)現(xiàn),先看下本節(jié)大綱: (1)思路說明; (2)代碼解析; (3)修改定時(shí)任
    的頭像 發(fā)表于 04-12 11:06 ?1023次閱讀

    如何使用python獲取和修改圖像信息

    獲取和修改圖像信息 在對圖像進(jìn)行壓縮之前,我們可能需要獲取圖像的基本信息,例如大小、格式、模式等。這些信息可以通過Image對象的屬性來
    的頭像 發(fā)表于 09-12 17:26 ?871次閱讀