Spaces:
Sleeping
Sleeping
File size: 8,102 Bytes
743d32b 34492bf 743d32b 5258d3d 34492bf c27bc0a 1c653a8 c27bc0a 34492bf 743d32b 1c653a8 630870d b283998 1c653a8 743d32b 34492bf 1c653a8 c27bc0a 34492bf 1c653a8 c27bc0a 1c653a8 743d32b 34492bf 743d32b 34492bf 1c653a8 34492bf 1c653a8 34492bf 743d32b 34492bf c27bc0a 34492bf 743d32b 34492bf 1c653a8 743d32b 1c653a8 5258d3d 630870d c1ca4d2 630870d 1c653a8 5258d3d 743d32b 34492bf 1c653a8 c1ca4d2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 |
import gradio as gr
from src.utils import add_to_prompt
from src.rep_api import generate_image_replicate,generate_image_control_net, model_dict
import os
# The dictionary data
prompt_dict = {
"Character": ["Asian girl with black hair", "A man with blond hair", "A Cat girl anime character with purple hair", "A Green Alien with big black eyes"],
"Clothes": ["Wearing a blue jacket", "Wearing a black business suit", "Wearing a purple jumpsuit", "Wearing shorts and a white T-shirt"],
"Pose": ["Close up portrait", "Standing doing a peace sign", "Folding arms", "holding a phone"],
"Style": ["Simple white background", "Fashion runway", "Inside a business conference", "Inside a spaceship"],
}
prompt_dict_kp ={
"Character": ["黒髪のアジア系女性", "金髪の男性", "紫髪のキャットガールアニメキャラクター", "大きな黒い目を持つ緑の宇宙人"],
"Clothes": ["青いジャケットを着ている", "黒のビジネススーツを着ている", "紫のジャンプスーツを着ている", "ショーツと白いTシャツを着ている"],
"Pose": ["クローズアップポートレート", "ピースサインをして立っている", "腕を組んでいる", "携帯電話を持っている"],
"Scene": ["シンプルな白背景", "ファッションランウェイ", "ビジネス会議の中", "宇宙船の内部"]
}
lora_style_support = [
["ps1","Test_images/lora_support_examples/ps1.png"],
["cyberpunk","Test_images/lora_support_examples/cyberpunk.png"],
["Sioux","Test_images/Walk_4.png"],
["RetroAnime1","Test_images/lora_support_examples/appleseed.png"],
["RetroAnime2","Test_images/lora_support_examples/Galverse.png"],
["half-illustration","Test_images/lora_support_examples/halfillust.png"]
]
prompt_support = [
["Test_images/prompt_support_examples/Man_1.png","A full body photo man standing with blond hair wearing a suit"],
["Test_images/prompt_support_examples/Woman_1.png","A full body photo girl standing with blond hair wearing a suit "],
["Test_images/prompt_support_examples/Woman_2.png","a Asian girl as at a fashion show walking down the cat walk, wearing a red dress"],
["Test_images/prompt_support_examples/Man_2.png","A High exposure photo of a Asian man wearing a blue shirt at a business conference, blue shirt, short black hair, hands out welcoming people into a booth, booth with a green and white color scheme "],
["Test_images/prompt_support_examples/Shoes_1.png","a product photo of high tech shoes with lights and a wifi symbol on the side, low angle shot, front view of walking down stairs "],
["Test_images/prompt_support_examples/Jacket_1.png","a product photo of green checked jacked being on a man from behind , furry collar, large cute character logo of a cat on back of jacket, simple background,"],
]
def create_gen_tab():
with gr.TabItem("Image Generator"):
#Gen how too row
with gr.Row():
with gr.Accordion("HowTo",open=False):
with gr.Column():
gr.Markdown("### How to use the Image Generator 画像生成器の使い方 \n"
"1. Enter a prompt in the textbox. テキストボックスにプロンプトを入力します。\n"
"2. Choose the aspect ratio. アスペクト比を選択します。\n"
"3. Options Select a style lore. スタイルロアを選択します。\n"
"4. Options in extra control net. Extraでコントロールネットのオプションを選択します。\n"
"5. Click 'Generate' to create the image. Generateをクリックして画像を生成します。\n"
"6. click button to move image to other tab.ボタンをクリックして画像を他のタブに移動します。 \n")
gr.Image(value="HowTo/Gen.png",label=None,interactive=False)
#Gen generatpor options
with gr.Row():
with gr.Column():
inp = gr.Textbox(label="Prompt",info="日本語対応は可能")
aspect_ratio = gr.Dropdown(list(["1:1","16:9","9:16","5:4"]),value="1:1", label="Aspect Ratio", info="Image size Aspect Ratio 画像サイズ アスペクト比")
with gr.Accordion("Control Net", open=False):
#Control net
use_control_net=gr.Checkbox(label="Use Control net",value=False)
control_net_type=gr.Dropdown(["depth","canny","soft_edge"],value="depth",label="Control net type")
control_net_img= gr.Image(label="Control net image",type="pil")
control_net_strength = gr.Slider(0,1,value=0.4,label="control net strength")
control_net_examples = gr.Examples(
examples=["Test_images/Walk_3.png","Test_images/example_outputs/input_2.png","Test_images/example_outputs/input_4.png","Test_images/Sit_1.png","Test_images/controlnet-in-automatic1111-for-character-design-sheets-v0-ir6p0gdwpfia1.webp"],
inputs=[control_net_img]
)
with gr.Column():
style_mode = gr.Dropdown(list(model_dict.keys()),label="Style lore",value="Base",info="style model スタイルのモデル")
with gr.Accordion("Style Imgaes",open=False):
# with gr.Column(elem_id="prompt_support_column"):
for i,lora in enumerate(lora_style_support):
if i % 3 == 0:
row = gr.Row() # Start a new row
with row:
lora_img = gr.Image(value=lora[1], label=lora[0],width=200,height=200, interactive=False)
lora_img.select(lambda x:x, inputs=gr.Textbox(value=lora[0],visible=False),outputs=style_mode)
api_path = gr.Textbox(label="Other_style",info="Style lora .safetensors route goes here or replicate link goes here スタイルのローラの.safetensorsのルートはこちら。",value=None)
style_strength = gr.Slider(0,2,value=1,label="Style Strength")
with gr.Row():
btn = gr.Button("Generate")
with gr.Accordion("Prompt Support", open=False):
for i,item in enumerate(prompt_support):
if i % 6 ==0:
row=gr.Row()
with row:
with gr.Column(elem_id="prompt_support_column"):
img_ps=gr.Image(value=item[0],label="",interactive=False)
btn_ps=gr.Button(item[1],elem_id="prompt_support_button")
img_ps.select(lambda x:x, inputs=gr.Textbox(item[1],visible=False),outputs=inp)
btn_ps.click(lambda x:x, inputs=gr.Textbox(item[1],visible=False),outputs=inp)
with gr.Row():
gen_out = gr.Image(label="Generated Image",type="filepath",elem_id="output_image")
with gr.Row(): #Move gen out row
move_to_ip =gr.Button("Move to Cloth IP Adapter")
move_to_vto =gr.Button("Move to Virtual Try On")
move_to_cnmk =gr.Button("Move to Control net mockup ")
move_to_relight= gr.Button("Move to Relight")
# move_to_fs =gr.Button("Move to Face Swap")
# move_to_zest=gr.Button("Move to Zest IP Adapter")
btn.click(generate_image_control_net,
inputs=[inp,style_mode,api_path,aspect_ratio,style_strength,use_control_net,control_net_type,control_net_img,control_net_strength],
outputs=[gen_out])
return gen_out,move_to_vto,move_to_ip,move_to_cnmk,move_to_relight# move_to_fs,#,move_to_zest |