Update app.py
Browse files
app.py
CHANGED
@@ -785,7 +785,84 @@ with gr.Blocks(css=custom_css) as demo:
|
|
785 |
output_image1 = gr.Image(label="์ด๋ฏธ์ง #1", elem_classes="image-container")
|
786 |
output_image3 = gr.Image(label="์ด๋ฏธ์ง #3", elem_classes="image-container")
|
787 |
with gr.Column():
|
788 |
-
output_image2 = gr.Image(label="์ด๋ฏธ์ง #2"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
789 |
inputs=[],
|
790 |
outputs=prompt_input
|
791 |
)
|
|
|
785 |
output_image1 = gr.Image(label="์ด๋ฏธ์ง #1", elem_classes="image-container")
|
786 |
output_image3 = gr.Image(label="์ด๋ฏธ์ง #3", elem_classes="image-container")
|
787 |
with gr.Column():
|
788 |
+
output_image2 = gr.Image(label="์ด๋ฏธ์ง #2", elem_classes="image-container"))
|
789 |
+
output_image4 = gr.Image(label="์ด๋ฏธ์ง #4", elem_classes="image-container")
|
790 |
+
|
791 |
+
gr.HTML('<div class="section-title"><i class="fas fa-info-circle"></i> ๊ฒฐ๊ณผ ์ ๋ณด</div>')
|
792 |
+
output_text = gr.Textbox(label="์ํ ๋ฉ์์ง", lines=2, elem_classes="custom-input")
|
793 |
+
prompt_display = gr.Textbox(label="์ฌ์ฉ๋ ํ๋กฌํํธ (์์ด)", visible=True, lines=2, elem_classes="custom-input")
|
794 |
+
|
795 |
+
gr.HTML('<div class="section-title"><i class="fas fa-lightbulb"></i> ์์ ์ด๋ฏธ์ง</div>')
|
796 |
+
with gr.Box(elem_classes="panel"):
|
797 |
+
examples = [
|
798 |
+
["down/๋ชจ๋ธ.jpg", None, None, "(#1์ ์ฌ์ฑ)์ด ์ด์ง ๋ค๋ก ๋์๋ณด๋ ๋ชจ์ต์ผ๋ก ์ต๋ํ ์ด์ seed๋ฅผ ์ ์งํํ
์์ฐ์ค๋ฝ๊ฒ ๋ณ๊ฒฝํ๋ผ."],
|
799 |
+
["down/์์ด๋ ๊ณ ๋ชจํ.png", None, None, "(#1 ๋ ๋ชจ๋ชจํ)์์ ์ฒญ์์์ด๋ ๊ณ ๋ง ๊ฒ์์ ๊ณ ๋๋ ๊ณ ๋ก ๋ณ๊ฒฝํ๊ณ ๋๋จธ์ง ๋ถ๋ถ์ seed๋ฅผ ๋ณ๊ฒฝ์ ํ์ง๋ง๋ผ."],
|
800 |
+
["down/์ค๊ตญ์ด.png", None, None, "(#1 ์ด๋ฏธ์ง)์ ์๋ ์ค๊ตญ์ด๋ฅผ ๋ชจ๋ ์ ๊ฑฐํ๋ผ."],
|
801 |
+
["down/ํ
์คํธ.webp", None, None, '(#1์ ํ
์คํธ)๋ฅผ ์คํ์ผ์ ์ ์งํ์ฒด ํ
์คํธ๋ง "Hello"๋ก ๋ฐ๊ฟ๋ผ'],
|
802 |
+
["down/๋ชจ๋ธ.jpg", "down/์ ๊ธ๋ผ์ค.png", "down/์ฒญ๋ฐ์ง.png", "(#1์ ์ฌ์ฑ๋ชจ๋ธ)์ด ์ ์ฒด ๋น์จ๊ณผ ํฌ์ฆ๋ ์ ์นํ ์ฒด (#2์ ์ ๊ธ๋ผ์ค)์ (#3์ ์ฒญ๋ฐ์ง)๋ฅผ ์ง์ ๋ชจ๋ธ์ด ์ฐฉ์ฉํ๊ฒ ์ฒ๋ผ ์์ฐ์ค๋ฝ๊ฒ ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋ผ."],
|
803 |
+
["down/๋ชจ๋ธ.jpg", "down/์ ๊ธ๋ผ์ค.png", "down/์นดํ์ ๊ฒฝ.png", "(#1์ ์ฌ์ฑ๋ชจ๋ธ)์ด ์ ์ฒด ๋น์จ๊ณผ ํฌ์ฆ๋ ์ ์นํ ์ฒด (#2์ ์ ๊ธ๋ผ์ค)๋ฅผ ์ง์ ๋ชจ๋ธ์ด ์ฐฉ์ฉํ ๊ฒ์ฒ๋ผ (#3์ ์ฅ์)์์ ์์์ ์์ ์๋ ์์ฐ์ค๋ฌ์ด ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋ผ."],
|
804 |
+
["down/๋ชจ๋ธ.jpg", "down/์์ธ์.png", None, "(#1์ ์ฌ์ฑ๋ชจ๋ธ)์ด ์ ์ฒด ๋น์จ๊ณผ ํฌ์ฆ๋ ์ ์นํ ์ฒด (#2์ ์์ธ์)์ ์ฌ์ฑ๋ชจ๋ธ์ด ํ๋ณดํ ์์ธ์์ ๋๋ณด์ด๊ฒ ๋ค๊ณ ์๋ ์์ฐ์ค๋ฌ์ด ๋ชจ์ต์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋ผ."],
|
805 |
+
["down/๋ชจ๋ธ.jpg", "down/์นดํ์ ๊ฒฝ.png", None, "(#1์ ์ฌ์ฑ๋ชจ๋ธ)์ด (#2 ์ด๋ฏธ์ง์ ๋ฐฐ๊ฒฝ)์ ์ฃผ์ ํผ์ฌ์ฒด๋ ๊ทธ๋๋ก ์ ์งํ์ฌ ์ด๋ฏธ์ง์ ๋ถ์๊ธฐ๊ฐ ์์ฐ์ค๋ฝ๊ฒ ์ด์ฐ๋ฌ์ง๋๋ก ์์ฑํ๋ผ."],
|
806 |
+
["down/์์ด๋ ๊ณ ๋ชจํ.png", None, None, "(#1์ ๋ ๊ณ ๋ชจํ)์์ ์ฒญ์์์ด๋ ๊ณ ๋ฅผ ์ ๊ฑฐํ ํ, ๊ทธ ์๋ฆฌ๋ฅผ ์ฃผ๋ณ ๋ฐฐ๊ฒฝ๊ณผ ์์ฐ์ค๋ฝ๊ฒ ์ด์ฐ๋ฌ์ง๋๋ก ์ฑ์์ฃผ์ธ์. ๋จ, ์ด๋ฏธ์ง์ ๋ค๋ฅธ ๋ถ๋ถ์ ์ฃผ์ ์์๋ ๋์ผํ๊ฒ ์ ์งํด ํด์ผํ๋ค."]
|
807 |
+
]
|
808 |
+
|
809 |
+
gr.Examples(
|
810 |
+
examples=examples,
|
811 |
+
inputs=[image1_input, image2_input, image3_input, prompt_input],
|
812 |
+
elem_id="examples-grid",
|
813 |
+
elem_classes="examples-grid"
|
814 |
+
)
|
815 |
+
|
816 |
+
# ์ฌ์ฉ์ ๋งค๋ด์ผ
|
817 |
+
gr.HTML(user_manual_html)
|
818 |
+
|
819 |
+
with gr.TabItem("๐ GFPGAN ์
์ค์ผ์ผ๋ฌ", elem_classes="tab-content"):
|
820 |
+
with gr.Row():
|
821 |
+
with gr.Column(elem_classes="panel"):
|
822 |
+
gr.HTML('<div class="section-title"><i class="fas fa-search-plus"></i> ์ด๋ฏธ์ง ์
์ค์ผ์ผ & ๋ณต์</div>')
|
823 |
+
gr.HTML("""
|
824 |
+
<p style="margin-bottom: 1rem; font-size: 1.05rem;">
|
825 |
+
GFPGANv1.4 ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ์ด๋ฏธ์ง๋ฅผ ๊ณ ํด์๋๋ก ๋ณํํ๊ณ ์ผ๊ตด์ ๋ณต์ํฉ๋๋ค.
|
826 |
+
</p>
|
827 |
+
<div class="tip-box">
|
828 |
+
<i class="fas fa-lightbulb"></i> <strong>ํ:</strong> ํด์๋๊ฐ ๋ฎ๊ฑฐ๋ ํ์ง์ด ๋จ์ด์ง๋ ์ด๋ฏธ์ง, ํนํ ์ผ๊ตด ์ด๋ฏธ์ง์ ํจ๊ณผ์ ์
๋๋ค.
|
829 |
+
</div>
|
830 |
+
""")
|
831 |
+
|
832 |
+
with gr.Row():
|
833 |
+
with gr.Column():
|
834 |
+
gr.HTML('<div class="section-title"><i class="fas fa-upload"></i> ์
๋ ฅ ์ด๋ฏธ์ง</div>')
|
835 |
+
gfpgan_input = gr.Image(type="filepath", label="์
๋ก๋", elem_classes="image-container")
|
836 |
+
|
837 |
+
with gr.Column():
|
838 |
+
gr.HTML('<div class="section-title"><i class="fas fa-download"></i> ๊ฒฐ๊ณผ ์ด๋ฏธ์ง</div>')
|
839 |
+
gfpgan_output = gr.Image(type="numpy", label="์
์ค์ผ์ผ ๊ฒฐ๊ณผ", elem_classes="image-container")
|
840 |
+
|
841 |
+
gfpgan_btn = gr.Button('<i class="fas fa-magic"></i> ์
์ค์ผ์ผ ๋ฐ ๋ณต์', elem_classes="custom-button primary")
|
842 |
+
|
843 |
+
# ๋ฒํผ ์ด๋ฒคํธ ์ฐ๊ฒฐ
|
844 |
+
image_change_btn1.click(
|
845 |
+
fn=lambda: "(#1์ ์ฌ์ฑ)์ด ์ด์ง ๋ค๋ก ๋์๋ณด๋ ๋ชจ์ต์ผ๋ก ์ต๋ํ ์ด์ seed๋ฅผ ์ ์งํํ
์์ฐ์ค๋ฝ๊ฒ ๋ณ๊ฒฝํ๋ผ.",
|
846 |
+
inputs=[],
|
847 |
+
outputs=prompt_input
|
848 |
+
)
|
849 |
+
image_change_btn2.click(
|
850 |
+
fn=lambda: "(#1 ๋ ๋ชจ๋ชจํ)์์ ์ฒญ์์์ด๋ ๊ณ ๋ง ๊ฒ์์ ๊ณ ๋๋ ๊ณ ๋ก ๋ณ๊ฒฝํ๊ณ ๋๋จธ์ง ๋ถ๋ถ์ seed๋ฅผ ๋ณ๊ฒฝ์ ํ์ง๋ง๋ผ.",
|
851 |
+
inputs=[],
|
852 |
+
outputs=prompt_input
|
853 |
+
)
|
854 |
+
text_remove_btn.click(
|
855 |
+
fn=lambda: "(#1 ์ด๋ฏธ์ง)์ ์๋ ์ค๊ตญ์ด๋ฅผ ๋ชจ๋ ์ ๊ฑฐํ๋ผ.",
|
856 |
+
inputs=[],
|
857 |
+
outputs=prompt_input
|
858 |
+
)
|
859 |
+
text_change_btn.click(
|
860 |
+
fn=lambda: '(#1์ ํ
์คํธ)๋ฅผ ์คํ์ผ์ ์ ์งํ์ฒด ํ
์คํธ๋ง "Hello"๋ก ๋ฐ๊ฟ๋ผ',
|
861 |
+
inputs=[],
|
862 |
+
outputs=prompt_input
|
863 |
+
)
|
864 |
+
clothes_change_btn1.click(
|
865 |
+
fn=lambda: "(#1์ ์ฌ์ฑ๋ชจ๋ธ)์ด ์ ์ฒด ๋น์จ๊ณผ ํฌ์ฆ๋ ์ ์งํ ์ฒด (#2์ ์ ๊ธ๋ผ์ค)์ (#3์ ์ฒญ๋ฐ์ง)๋ฅผ ์ง์ ๋ชจ๋ธ์ด ์ฐฉ์ฉํ๊ฒ ์ฒ๋ผ ์์ฐ์ค๋ฝ๊ฒ ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋ผ.",
|
866 |
inputs=[],
|
867 |
outputs=prompt_input
|
868 |
)
|