From 6ce70e1e4b74ec8fea4f83d1729e704e988a3a1f Mon Sep 17 00:00:00 2001 From: bigsk Date: Sat, 11 Jan 2020 20:18:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E4=B8=BB=E7=A8=8B=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dnnlib-gpu.7z | Bin 0 -> 47955 bytes draw.py | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++ redo.py | 5 +++ 3 files changed, 119 insertions(+) create mode 100644 dnnlib-gpu.7z create mode 100644 draw.py create mode 100644 redo.py diff --git a/dnnlib-gpu.7z b/dnnlib-gpu.7z new file mode 100644 index 0000000000000000000000000000000000000000..936cfee5a9aee082eab79e06ee9ef7a759417137 GIT binary patch literal 47955 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

g^vE~-)Rl~93l-K?v*3N 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 literal 0 HcmV?d00001 diff --git a/draw.py b/draw.py new file mode 100644 index 0000000..148d51f --- /dev/null +++ b/draw.py @@ -0,0 +1,114 @@ +import tensorflow as tf +import numpy as np +import random +import pickle +from PIL import Image +from qrcode import make as makeqr +from dnnlib import tflib +import time, os, hashlib + + +def main(): + # Define global variables. + seed = random.randint(0,10000000) + available_charaters = {'Anmicius', 'Camil', 'Grey', 'King', 'Ray'}#这里是目前支持的角色列表 + #Anmicius安迷修,Camil卡米尔,Grey格瑞,King金,Ray雷狮 + + # Select charater and input seed. + selected_character = 'Ray'#这里是选择角色,可以从上方复制 + while selected_character not in available_charaters: + selected_character = input('Type in the character you want to draw, e.g. \"Anmicius\" and \"Ray\" (no quotes).\n') + if selected_character not in available_charaters: + print('You typed in a character that is not available or you made a misspell, try agian.') + + seed_str = '' + if seed_str != '': + if seed_str.isdigit(): + seed = int(seed_str.encode('utf-8')) + else: + seed = int(hashlib.sha256(seed_str.encode('utf-8')).hexdigest(), 16) % 10**8 + + print('INFO: Setting up variables...') + tflib.init_tf() + rnd = np.random.RandomState(seed) + fmt = dict(func=tflib.convert_images_to_uint8, nchw_to_nhwc=True) + + print('INFO: Loading pretrained model...') + Gs = pickle.load(open('models/network-%s-gs.pkl' % selected_character, 'rb')) + latents = rnd.randn(1, Gs.input_shape[1]) + + print('INFO: Generating...') + images = Gs.run(latents, None, truncation_psi=0.7, randomize_noise=True, output_transform=fmt) + + im = Image.fromarray(images[0], 'RGB') + qr = makeqr('This is an image automatically generated by Aotu Draw Bot by Rand0mZ.LiCloud provides computing resources. Seed: %d' % seed) + w, h = im.size + qw, qh = qr.size + if qw > w: + qr = qr.resize((w, w)) + elif qh > h: + qr = qr.resize((h, h)) + qw, qh = qr.size + + imd = im.load() + for i in range(w): + for j in range(h): + d = imd[i, j] + imd[i, j] = d[:-1] +((d[-1] | 1) if qr.getpixel((i%qw, j%qh)) else (d[-1] & ~1),) + + print('Done!') + + save_name = '%s_%d.png' % (selected_character, seed) + print('INFO: Saving %s' % save_name) + output_dir = os.path.join(os.getcwd() ,'arags')#这里是保存目录,默认保存到arags目录下 + if not os.path.isdir(output_dir): + os.mkdir(output_dir) + im.save(os.path.join(output_dir, save_name)) + print('INFO: Image %s is saved in directory .' % save_name) + print('INFO: All processes has done!') + print('Thank you for using this software and obeying the terms of use above.') + time.sleep(3) + + +def generate_image(model, save_path, selected_character, seed, amount): + tflib.init_tf() + + print('INFO: Loading pretrained model...') + Gs = pickle.load(open(model, 'rb')) + + if not os.path.isdir(save_path): + os.mkdir(save_path) + + for i in range(1, amount + 1): + print('INFO: Generating image %d' %i) + rnd = np.random.RandomState(seed) + fmt = dict(func=tflib.convert_images_to_uint8, nchw_to_nhwc=True) + latents = rnd.randn(1, Gs.input_shape[1]) + images = Gs.run(latents, None, truncation_psi=0.7, randomize_noise=True, output_transform=fmt) + + im = Image.fromarray(images[0], 'RGB') + qr = makeqr('This is an image automatically generated by Aotu Draw Bot CLI by Rand0mZ hence this image is not for commercial propose. Seed: %d' % seed) + w, h = im.size + qw, qh = qr.size + if qw > w: + qr = qr.resize((w, w)) + elif qh > h: + qr = qr.resize((h, h)) + qw, qh = qr.size + + imd = im.load() + for i in range(w): + for j in range(h): + d = imd[i, j] + imd[i, j] = d[:-1] +((d[-1] | 1) if qr.getpixel((i%qw, j%qh)) else (d[-1] & ~1),) + + print('Done!') + + save_name = '%s_%d.png' % (selected_character, seed) + print('INFO: Saving %s' % save_name) + im.save(os.path.join(save_path, save_name)) + print('INFO: Image %s is saved to %s.\n' % (save_name, save_path)) + seed += i - 1 + +if __name__ == "__main__": + main() diff --git a/redo.py b/redo.py new file mode 100644 index 0000000..b7eb7f4 --- /dev/null +++ b/redo.py @@ -0,0 +1,5 @@ +import os + +for i in range(1,1001):#运行次数 可以按照需要把第二个数字改成你想要的运行次数+1,默认1000次 + os.system('py draw.py') +#这个是重复运行的脚本,单次运行只需要运行draw.py即可 \ No newline at end of file