1. 程式人生 > >對抗網路在文字生成圖片中的應用

對抗網路在文字生成圖片中的應用

1 簡介

利用神經網路可以從文字生成圖片,即將文字的語義轉化為圖片; 也可以從圖片生成文字,即生成的文字描述圖片中的內容,例如一幅圖片中有一直小鳥落在枝頭。最後由圖片生產的文字就可以能可愛的綠色小鳥落於枝頭。在計算廣告中這種文字和圖片之間互相生成的過程非常有用,如果可以在工業界有所突破,他們在廣告創意的製作中將會發揮巨大作用,例如選定一個創意標題,立刻得到了創意圖片,當製作完成了創意圖片時也立刻得到了創意標題。

2 對抗網路(DCGAN)

2.1 原理

  • 生成過程
    輸入的是高斯分佈的資料,最終生成圖片,相等於卷積網路的逆過程,如下圖


    這裡寫圖片描述
    圖1 生成網路
  • 對抗學習
    將真實圖片和生成網路產生的圖片當成正,負樣本,同時送入一個卷積網路,訓練卷積網路,然後再將真實圖片當成負樣本,輸入卷積網路對抗學習,達到調節生成網路的目的,如下圖


    這裡寫圖片描述
    圖2 對抗學習網路

主要參考這篇文章

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks(DCGAN)

2.2 應用

  • 生成模型的應用
    通過一個微調輸入生成不同風格的影象,如下圖,只要微調輸入高斯分佈資料就可以得到不同的風格,顏色的漫畫


    這裡寫圖片描述
    圖3 生成模型的應用
  • 判別模型的應用
    可以利用已經學習好的判別模型對圖片進行特徵抽取,詳見DCGAN參考文章。下圖是從判別模型抽取圖片特徵然後分類的效果對比


    這裡寫圖片描述
    圖4 判別模型抽取圖片特徵分類效果對比

3 DCGAN在Text2Image上的應用

3.1 意義

圖片與文字之間互相生成在廣告創意製作上有非常重要的意義,可以得到炫酷的效果,見下圖


這裡寫圖片描述
圖5 圖片和文字之間互相生成在廣告創意上的應用

3.2 Text2Image

文字生成圖片的網路結構如下


這裡寫圖片描述
圖6 Text2Image網路結構

3.3 生成過程

生成過程與原生的DCGAN複雜,如下圖


這裡寫圖片描述
圖7 Text2Image訓練過程

3.4 示例


這裡寫圖片描述
圖8 由文字生成圖片效果對比圖

這裡寫圖片描述
圖9 通過修改同一句文本里的部分詞語,生成不同的顏色圖片

參考文獻

  • Generative Adversarial Text to Image Synthesis
  • Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks(DCGAN)
  • Generative Adversarial Networks
  • Conditional Generative Adversarial Nets
  • Emerging Topics in Learning from Noisy and Missing Data: Zero Shot Learning

相關推薦

對抗網路文字生成圖片應用

1 簡介 利用神經網路可以從文字生成圖片,即將文字的語義轉化為圖片; 也可以從圖片生成文字,即生成的文字描述圖片中的內容,例如一幅圖片中有一直小鳥落在枝頭。最後由圖片生產的文字就可以能可愛的綠色小鳥落於枝頭。在計算廣告中這種文字和圖片之間互相生成的過程非常有用

關於Linux環境下應用生成圖片出現亂碼的問題處理

緣由:測試環境和生產環境系統字符集都是LANG=en_US.utf8,程式在測試環境通過下述方式生成的圖片裡面的中文可以正常顯示,生產環境不行,排查原因為生產環境確認對應的字型,採取後續方法增加字型。 1、C:\Windows\Fonts下找到字型檔案simsun.ttc,重新命名為sim

生成對抗網路(GAN)的理論與應用完整入門介紹

文章來源:https://blog.csdn.net/blood0604/article/details/73635586?locationNum=1&fps=1本文包含以下內容:1.為什麼生成模型值得研究2.生成模型的分類3.GAN相對於其他生成模型相比有什麼優勢4

利用dos下的copy實現圖片文字融合,文字圖片隱藏

   以前有老師說過加密之類的,頓覺高大上,特別是把文字隱藏到圖片裡,就覺得特別牛,然而用過copy後,瞬間沒有了那種很牛的感覺,好像人人都能夠完成。 準備好圖片使用命令提示符,在cmd裡使用copy 2.jpg/b+2.txt/a 3.jpg,注意:不要在

C#實現圖片疊加,圖片上嵌入文字文字生成圖片的方法

idt obi 字體 保存 poi width watermark graph col /// <summary> /// 圖片疊加 /// </summary> /// <param name="sender">

java 文字生成圖片

直接上程式碼: import java.awt.*; import java.awt.image.*; import java.awt.font.*; import java.awt.geom.*; import java.io.File; impor

html5將文字生成圖片

由於canvas能夠將畫布上的紋理生成資料給img顯示出來,所以,我們在html5裡面可以實現將文字生成圖片顯示。 首先我書寫了一個將文字繪製到canvas上面的函式,然後函式會返回canvas繪製的紋理資料。 //繪製文字到canvas,判斷換行位置,和設定canvas

Android實現用文字生成圖片

效果圖 我們先來看看效果圖,可以看到下圖由各種顏色的”美”字拼接而成,形成了一張不一樣的圖片。 原理 生成這種圖片的原理很簡單,但是當時看開源專案時愣是看不懂,因為沒學過Python,但是仔細研究,終於能慢慢的理解該開源專案原始碼,並把它改寫成An

生成對抗網路GAN---生成mnist手寫數字影象示例(附程式碼)

Ian J. Goodfellow等人於2014年在論文Generative Adversarial Nets中提出了一個通過對抗過程估計生成模型的新框架。框架中同時訓練兩個模型:一個生成模型(generative model)G,用來捕獲資料分佈;一個判別模型(discri

NTP協議網路時間同步 ios應用 實現秒殺倒計時

專案中需要實現秒殺倒計時功能,手機客戶端本地系統時間有被修改的可能,因此無法獲取本地時間來做,下面看實現程式碼吧 -(void)startTimerShow { self.ysmagTimer = [NSTimerscheduledTimerWithTimeInterv

基於條件生成對抗網路的I-向量變換在短說話人驗證應用

I-vector Transformation Using Conditional Generative Adversarial Networks for Short Utterance Speaker Verification 基於條件生成對抗網路的I-向量變換在短說話人驗證中的應用 用於

生成對抗網路(GAN)應用於影象分類

  近年來,深度學習技術被廣泛應用於各類資料處理任務中,比如影象、語音和文字。而生成對抗網路(GAN)和強化學習(RL)已經成為了深度學習框架中的兩顆“明珠”。強化學習主要用於決策問題,主要的應用就是遊戲,比如deepmind團隊的AlphaGo。因為我的研究方向是影象的有監督分類問題,

洞見 | 生成對抗網路GAN最近在NLP領域有哪些應用

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

在瀏覽器進行深度學習:TensorFlow.js (八)生成對抗網路 (GAN

Generative Adversarial Network 是深度學習中非常有趣的一種方法。GAN最早源自Ian Goodfellow的這篇論文。LeCun對GAN給出了極高的評價: “There are many interesting recent development in deep learni

洞見 | 生成對抗網路GAN最近在NLP領域有哪些應用

剛做完實驗,來答一答自然語言處理方面GAN的應用。 直接把GAN應用到NLP領域(主要是生成序列),有兩方面的問題: 1. GAN最開始是設計用於生成連續資料,但是自然語言處理中我們要用來生成離散tokens的序列。因為生成器(Generator,簡稱G)需要利用從

tensorflow 1.01GAN(生成對抗網路)手寫字型生成例子(MINST)的測試

為了更好地掌握GAN的例子,從網上找了段程式碼進行跑了下,測試了效果。具體過程如下: 程式碼檔案如下: import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data i

android 各種 span的生成 如:修改TextView部分文字的顏色 ,生成圖片span

textView = (TextView) findViewById(R.id.textview); SpannableStringBuilder builder = new Spannabl

ICCV2017 | 一文詳解GAN之父Ian Goodfellow 演講《生成對抗網路的原理與應用》(附完整PPT)

當地時間 10月 22 日到10月29日,兩年一度的計算機視覺國際頂級會議 International Conference on Computer Vision(ICCV 2017)在義大利威尼斯開幕。Google Brain 研究科學家Ian Goodfellow在會上作為主題為《生成對抗網路(G

Android:圖片疊加文字,支持拖動改變位置

ear nal format wrap trace ast 分享 gravity ica 之所以做了這麽一個Demo,是由於近期項目中有一個奇葩的需求:用戶拍攝照片後,分享到微信的同一時候加入備註,想獲取用戶在微信的彈出框輸入的內容。保存在自己的server上。而其實,

JAVA------20.圖片文字圖片

dap 圖片 logs test http 合成 over cal ray import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.Image; im