Spaces:
No application file
No application file
from modules import scripts_postprocessing, ui_components, deepbooru, shared | |
import gradio as gr | |
class ScriptPostprocessingCeption(scripts_postprocessing.ScriptPostprocessing): | |
name = "Caption" | |
order = 4040 | |
def ui(self): | |
with ui_components.InputAccordion(False, label="Caption") as enable: | |
option = gr.CheckboxGroup(value=["Deepbooru"], choices=["Deepbooru", "BLIP"], show_label=False) | |
return { | |
"enable": enable, | |
"option": option, | |
} | |
def process(self, pp: scripts_postprocessing.PostprocessedImage, enable, option): | |
if not enable: | |
return | |
captions = [pp.caption] | |
if "Deepbooru" in option: | |
captions.append(deepbooru.model.tag(pp.image)) | |
if "BLIP" in option: | |
captions.append(shared.interrogator.interrogate(pp.image.convert("RGB"))) | |
pp.caption = ", ".join([x for x in captions if x]) | |