gradio_imageslider
Um componente Gradio para comparar duas imagens.
Este componente pode ser usado de diversas maneiras:
pip install gradio_imageslider
import gradio as gr
from gradio_imageslider import ImageSlider
from PIL import ImageFilter
def fn ( im ):
if not im or not im [ 0 ]:
return im
return ( im [ 0 ], im [ 0 ]. filter ( filter = ImageFilter . GaussianBlur ( radius = 10 )))
with gr . Blocks () as demo :
with gr . Group ():
img1 = ImageSlider ( label = "Blur image" , type = "pil" , slider_color = "pink" )
img1 . upload ( fn , inputs = img1 , outputs = img1 )
if __name__ == "__main__" :
demo . launch ()
ImageSlider
nome | tipo | padrão | descrição |
---|---|---|---|
value | tuple [ str , str ]
| tuple [ PIL . Image . Image , PIL . Image . Image ]
| tuple [ numpy . ndarray , numpy . ndarray ]
| None | None | Uma imagem PIL, matriz numpy, caminho ou URL para o valor padrão que o componente de imagem assumirá. Se puder ser chamada, a função será chamada sempre que o aplicativo for carregado para definir o valor inicial do componente. |
position | int | 0.5 | A posição do controle deslizante, entre 0 e 1. |
upload_count | int | 1 | O número de imagens que podem ser carregadas no componente. 1 ou 2. |
height | int | None | None | Altura da imagem exibida em pixels. |
width | int | None | None | Largura da imagem exibida em pixels. |
type | "numpy" | "pil" | "filepath" | "numpy" | O formato para o qual a imagem é convertida antes de ser passada para a função de previsão. "numpy" converte a imagem em um array numpy com forma (altura, largura, 3) e valores de 0 a 255, "pil" converte a imagem em um objeto de imagem PIL, "filepath" passa um caminho str para um arquivo temporário contendo a imagem. |
label | str | None | None | nome do componente na interface. |
every | float | None | None | Se `value` puder ser chamado, execute a função 'a cada' segundos enquanto a conexão do cliente estiver aberta. Não tem efeito de outra forma. A fila deve estar habilitada. O evento pode ser acessado (por exemplo, para cancelá-lo) através do atributo .load_event deste componente. |
show_label | bool | None | None | se True, exibirá o rótulo. |
show_download_button | bool | True | Se True, exibirá o botão para baixar a imagem. |
container | bool | True | Se for True, colocará o componente em um contêiner - fornecendo algum preenchimento extra ao redor da borda. |
scale | int | None | None | largura relativa em comparação com componentes adjacentes em uma linha. Por exemplo, se o Componente A tiver escala=2 e o Componente B tiver escala=1, A terá o dobro da largura de B. Deve ser um número inteiro. |
min_width | int | 160 | largura mínima de pixel, envolverá se não houver espaço de tela suficiente para satisfazer esse valor. Se um determinado valor de escala fizer com que este Componente seja mais estreito que min_width, o parâmetro min_width será respeitado primeiro. |
interactive | bool | None | None | se for True, permitirá que os usuários carreguem e editem uma imagem; se for falso, só poderá ser usado para exibir imagens. Se não for fornecido, isso será inferido com base no fato de o componente ser usado como entrada ou saída. |
visible | bool | True | Se for falso, o componente ficará oculto. |
elem_id | str | None | None | Uma string opcional atribuída como o id deste componente no HTML DOM. Pode ser usado para direcionar estilos CSS. |
elem_classes | list [ str ] | str | None | None | Uma lista opcional de strings atribuídas como classes deste componente no HTML DOM. Pode ser usado para direcionar estilos CSS. |
show_share_button | bool | None | None | Se True, mostrará um ícone de compartilhamento no canto do componente que permite ao usuário compartilhar resultados para discussões do Hugging Face Spaces. Se for falso, o ícone não aparece. Se definido como Nenhum (comportamento padrão), o ícone aparecerá se este aplicativo Gradio for iniciado no Spaces, mas não de outra forma. |
slider_color | str | None | None | A cor do separador do controle deslizante. |
nome | descrição |
---|---|
change | Disparado quando o valor do ImageSlider muda devido à entrada do usuário (por exemplo, um usuário digita em uma caixa de texto) OU devido a uma atualização de função (por exemplo, uma imagem recebe um valor da saída de um gatilho de evento). Consulte .input() para um ouvinte que só é acionado pela entrada do usuário. |
upload | Este ouvinte é acionado quando o usuário carrega um arquivo no ImageSlider. |
O impacto na função de previsão dos usuários varia dependendo se o componente é usado como entrada ou saída para um evento (ou ambos).
O trecho de código abaixo é preciso nos casos em que o componente é usado como entrada e saída.
def predict (
value : tuple [ str , str ]
| tuple [ PIL . Image . Image , PIL . Image . Image ]
| tuple [ numpy . ndarray , numpy . ndarray ]
| None
) -> tuple [ str , str ]
| tuple [ PIL . Image . Image , PIL . Image . Image ]
| tuple [ numpy . ndarray , numpy . ndarray ]
| None :
return value