gradio_imageslider
Компонент Gradio для сравнения двух изображений.
Этот компонент можно использовать несколькими способами:
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
имя | тип | по умолчанию | описание |
---|---|---|---|
value | tuple [ str , str ]
| tuple [ PIL . Image . Image , PIL . Image . Image ]
| tuple [ numpy . ndarray , numpy . ndarray ]
| None | None | Изображение PIL, массив numpy, путь или URL-адрес для значения по умолчанию, которое будет принимать компонент изображения. Если функция доступна для вызова, она будет вызываться при каждой загрузке приложения для установки начального значения компонента. |
position | int | 0.5 | Положение ползунка от 0 до 1. |
upload_count | int | 1 | Количество изображений, которые можно загрузить в компонент. 1 или 2. |
height | int | None | None | Высота отображаемого изображения в пикселях. |
width | int | None | None | Ширина отображаемого изображения в пикселях. |
type | "numpy" | "pil" | "filepath" | "numpy" | Формат, в который преобразуется изображение перед передачей в функцию прогнозирования. «numpy» преобразует изображение в массив numpy с формой (высота, ширина, 3) и значениями от 0 до 255, «pil» преобразует изображение в объект изображения PIL, «filepath» передает путь str к временному файлу, содержащему изображение. |
label | str | None | None | имя компонента в интерфейсе. |
every | float | None | None | Если value является вызываемым объектом, запускайте функцию «каждое» количество секунд, пока клиентское соединение открыто. В противном случае не имеет никакого эффекта. Очередь должна быть включена. Доступ к событию (например, для его отмены) можно получить через атрибут .load_event этого компонента. |
show_label | bool | None | None | если True, будет отображаться метка. |
show_download_button | bool | True | Если True, отобразится кнопка для загрузки изображения. |
container | bool | True | Если принимает значение True, компонент будет помещен в контейнер, обеспечивая дополнительное отступы вокруг границы. |
scale | int | None | None | относительная ширина по сравнению с соседними компонентами в строке. Например, если у компонента A масштаб = 2, а у компонента B — масштаб = 1, ширина A будет в два раза шире, чем B. Должно быть целым числом. |
min_width | int | 160 | минимальная ширина в пикселях, будет перенесена, если на экране недостаточно места для удовлетворения этого значения. Если определенное значение масштаба приводит к тому, что этот компонент оказывается уже, чем min_width, в первую очередь будет учитываться параметр min_width. |
interactive | bool | None | None | если True, пользователи смогут загружать и редактировать изображения; если значение равно False, можно использовать только для отображения изображений. Если этот параметр не указан, это определяется на основе того, используется ли компонент в качестве входа или выхода. |
visible | bool | True | Если значение равно False, компонент будет скрыт. |
elem_id | str | None | None | Необязательная строка, которая назначается идентификатором этого компонента в HTML DOM. Может использоваться для таргетинга стилей CSS. |
elem_classes | list [ str ] | str | None | None | Необязательный список строк, которые назначены классами этого компонента в HTML DOM. Может использоваться для таргетинга стилей CSS. |
show_share_button | bool | None | None | Если принимает значение True, в углу компонента будет отображаться значок общего доступа, который позволяет пользователю делиться результатами в обсуждениях Hugging Face Spaces. Если значение равно False, значок не отображается. Если установлено значение «Нет» (поведение по умолчанию), значок появляется, если это приложение Gradio запускается в Spaces, но не в противном случае. |
slider_color | str | None | None | Цвет ползунка-разделителя. |
имя | описание |
---|---|
change | Срабатывает, когда значение ImageSlider изменяется либо из-за пользовательского ввода (например, пользователь вводит текстовое поле), ИЛИ из-за обновления функции (например, изображение получает значение из выходных данных триггера события). См. .input() для прослушивателя, который запускается только по пользовательскому вводу. |
upload | Этот прослушиватель срабатывает, когда пользователь загружает файл в ImageSlider. |
Влияние на функцию прогнозирования пользователей варьируется в зависимости от того, используется ли компонент в качестве входных или выходных данных для события (или и того, и другого).
Приведенный ниже фрагмент кода является точным в тех случаях, когда компонент используется как в качестве входа, так и в качестве выхода.
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