File size: 2,404 Bytes
ceac432
6887d0a
0d7de2e
e0b07b8
d570bef
6887d0a
 
af9808e
 
06f4aaa
d570bef
06f4aaa
a1880d1
 
0d7de2e
a1880d1
d570bef
 
1498ac9
3d070c8
8a2560d
 
06f4aaa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d570bef
ba3983f
06f4aaa
 
 
 
 
 
6887d0a
8e23176
06f4aaa
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
import gradio as gr
import util
import process_image
from run_cmd import run_cmd

is_colab = util.is_google_colab()

title = "ESRGAN Upscaling With Custom Models"

with gr.Blocks(title=title, fill_height=True) as demo:
    gr.Markdown(
        f"""
    # {title}
    This space uses old ESRGAN architecture to upscale images, using models made by the community.

    Once the photo upscaled (*it can take a long time, this space only uses CPU*).
    """)

    gr.HTML(value="For faster upscaling using GPU: <a href='https://colab.research.google.com/drive/1QfOA6BBdL4NrUmx-9d-pjacxNfu81HQo#scrollTo=H7qo-6AWFbLH' target='_blank'><img class='colab_img' src='https://colab.research.google.com/assets/colab-badge.svg' alt='Open In Colab'></a> buy me a coffee (beer) if this helped 🍺😁")

    gr.HTML(value="<a href='https://ko-fi.com/Y8Y7GVAAF' target='_blank' style='display:block;margin-bottom:5px'><img height='36' style='border:0px;height:36px;' src='https://storage.ko-fi.com/cdn/kofi1.png?v=3' border='0' alt='Buy Me a Coffee at ko-fi.com' /></a>")

    with gr.Row():
        with gr.Column():
            input_image = gr.Image(
                sources="upload",
                type="filepath",
                label="Image to upscale"
            )

            upscale_size = gr.Radio(
                ["x4", "x2"],
                label="Upscale by:",
                value="x4"
            )

            upscale_type = gr.Radio(
                ["Manga", "Anime", "Photo", "General"],
                label="Select the type of picture you want to upscale:",
                value="Manga"
            )

            with gr.Row():
                upscale_btn = gr.Button(value="Upscale", variant="primary")

        with gr.Column():
            output_image = gr.Image(
                type="pil",
                interactive=False,
                label="Upscaled image",
                elem_id="preview_img"
            )

            with gr.Row():
                out_file = gr.DownloadButton(
                    visible=False,
                )

    gr.HTML(value="<p><a href='https://upscale.wiki/wiki/Model_Database'>Model Database</a></p>")

    upscale_btn.click(
        process_image.inference,
        inputs=[input_image, upscale_size, upscale_type],
        outputs=[output_image, out_file]
    )

demo.queue()
demo.launch(debug=is_colab, share=is_colab, inline=is_colab)