gradio_imageslider
用于比较两个图像的渐变组件。
该组件可以通过多种方式使用:
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”将图像转换为形状(高度、宽度、3)且值从 0 到 255 的 numpy 数组,“pil”将图像转换为 PIL 图像对象,“filepath”将 str 路径传递到包含以下内容的临时文件图像。 |
label | str | None | None | 接口中的组件名称。 |
every | float | None | None | 如果“value”是可调用的,则在客户端连接打开时“每隔”几秒运行该函数。否则没有任何影响。必须启用队列。可以通过该组件的.load_event 属性访问该事件(例如取消它)。 |
show_label | bool | None | None | 如果为真,将显示标签。 |
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 中指定为该组件的 id。可用于定位 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