跳到主要內容

StarGAN

Ref:
https://github.com/yunjey/stargan
https://arxiv.org/pdf/1711.09020.pdf

StarGAN如圖(b)與其他GAN模型相較受到關注的特色在於其不同Domain間的轉換可以使用同一個模不需要一對一Domain的產生很多組模型如圖(a).


Picture originated from: https://arxiv.org/pdf/1711.09020.pdf








下圖是使用StarGAN生成的圖片一組有六張分別是
Input + Black_Hair +Golden_Hair +Brown_Hair +Gender_Change +Aged 5Domain

Train這個模型在FX705GE(CPU:INTEL i7-8750H, 32G RAM)上花了約39小時作Training, 總共200,000 steps, 執行速度7 sec/ 10steps ,
相對GL753VE(CPU:INTEL i7-7700HQ, 24G RAM) 90 sec/ 10steps <== 只是worker node, 未開啟NVIDIA CUDA

從下列image看來效果有好有壞視人頭比例, training dataset, 相片品質及背景等條件而異.
感謝同仁們(EX-)及致中提供玉照協助!! 使用celebrity datasettraining 及部份testing



        Input               + Black_Hair       + Golden_Hair    + Brown_Hair       + Gender_Change + Aged






               Input            + Black_Hair       + Golden_Hair     + Brown_Hair     + Gender_Change + Aged





留言

這個網誌中的熱門文章

OCR應用在電子元件上的辨識

 OCR Application Example1: for SMD idenfication : Text detect by CRAFT   OCR文字偵測 原始照片為網路上下載,再套上OCR文字偵測顯示結果,若有侵權請告知移除 彩色區域為偵測到文字的部份 Output 10 coordinates of corresponding text blocks 1.  144,196,286,194,287,259,145,261 2.  298,198,509,196,509,259,298,262 3.  148,262,286,262,286,321,148,321 4.  368,266,513,264,513,321,369,323 5.  145,331,472,333,471,395,145,393 6.  146,404,445,404,445,454,146,454 7.  146,453,512,453,512,502,146,502 8.  147,502,481,499,481,551,148,553 9.  148,550,614,550,614,600,148,600 10.513,600,714,600,714,648,513,648  After image pre-processing:    OCR result1:   After image pre-processing:  OCR result2:     Example2: for datasheet interpretation : Text detect of TI datasheet by CRAFT OCR results: ([[75, 11], [127, 11], [127, 31], [75, 31]], 'TEXAS', 0.999188403930061) ([[474, 4], [928, 4], [928, 32], [474, 32]], 'PACKAGE MATERIALS INFORMATION', 0.6743955072876302) ([[77, 29],...

{}大括弧在PYTHON的2種用法

Ref: https://stackoverflow.com/questions/9197324/what-is-the-meaning-of-curly-braces {}大括弧在PYTHON的2種用法: "Curly Braces" are used in Python to define a dictionary. A dictionary is a data structure that maps one value to another - kind of like how an English dictionary maps a word to its definition. Python: 1. dict = { "a" : "Apple" , "b" : "Banana" , } 2. They are also used to format strings, instead of the old C style using %, like: ds = [ 'a' , 'b' , 'c' , 'd' ] x = [ 'has_{} 1' . format ( d ) for d in ds ] print x [ 'has_a 1' , 'has_b 1' , 'has_c 1' , 'has_d 1' ]

A3C in ATARI Pong-V0

ATARI PONG 對戰模式,左邊為遊戲程式,右邊為訓練中的A3C模型。一局以21分決勝負,對手MISS 一球得一分。從LOG可以看出,A3C模型從最初全敗的輸21分,經過2小時左右的TRAINING,已經逆轉至幾乎每局都勝利,偶爾甚至勝出高達13分。 底下為TRAINING A3C MODEL過程的LOG, (base) frank@viper1:~/a3c$ python main.py --env-name "Pong-v0" --num-processes 8 Time 00h 00m 10s, episode reward -21.0, episode length 1026 Time 00h 01m 18s, episode reward -21.0, episode length 1020 Time 00h 02m 26s, episode reward -21.0, episode length 1029 Time 00h 03m 35s, episode reward -21.0, episode length 1023 Time 00h 04m 42s, episode reward -21.0, episode length 1014 Time 00h 05m 50s, episode reward -21.0, episode length 1087 Time 00h 07m 00s, episode reward -21.0, episode length 1359 Time 00h 08m 14s, episode reward -16.0, episode length 1922 Time 00h 09m 30s, episode reward -14.0, episode length 2220 Time 00h 10m 48s, episode reward -15.0, episode length 2431 Time 00h 12m 04s, episode reward -15.0, episode length 2211 Time 00h 13m 23s, episode reward -8.0, episode length 2600 Time 00h 14m 38s, episod...