KJNodes/imagegenerated
Image Grab PIL(ImageGrabPIL)
此节点基于 Python 的 PIL(Pillow)库中的 `ImageGrab` 模块实现屏幕截图功能。
Image Grab PIL
image
x
0
y
0
width
512
height
512
num_frames
1
delay
0.10
KJNodes
Image Grab PIL 节点是一个屏幕捕捉工具,它允许您直接从计算机屏幕上指定一个矩形区域并捕获该区域的图像。其核心功能是实时获取屏幕内容,并将其转换为 ComfyUI 工作流可以处理的图像数据。这使得将屏幕上的任何视觉元素快速导入到 AI 图像处理流程中成为可能。
节点功能
此节点基于 Python 的 PIL(Pillow)库中的 ImageGrab.grab 方法实现,通过定义屏幕坐标的边界框来截取像素。捕获的图像数据会被自动转换为 PyTorch 张量格式,并归一化到 [0, 1] 的浮点数范围,以符合 ComfyUI 中 IMAGE 类型的标准。此外,节点支持连续捕获多帧图像,并在帧之间插入可配置的延迟,为动态或变化的屏幕内容捕获提供了基础。
节点参数说明 - Image Grab PIL
控制参数(Parameters)
| 参数名称 | 数据类型 | 必填 | 默认值 | 取值范围/选项 | 说明 |
|---|---|---|---|---|---|
x | INT | 是 | 0 | 0 - 4096 (步长: 1) | x(输入参数):定义捕捉区域左上角的水平坐标(以像素为单位)。取值范围 0 至 4096,步长 1。 |
y | INT | 是 | 0 | 0 - 4096 (步长: 1) | y(输入参数):定义捕捉区域左上角的垂直坐标(以像素为单位)。取值范围 0 至 4096,步长 1。 |
width | INT | 是 | 512 | 0 - 4096 (步长: 1) | width(输入参数):定义捕捉区域的宽度(以像素为单位)。取值范围 0 至 4096,步长 1。 |
height | INT | 是 | 512 | 0 - 4096 (步长: 1) | height(输入参数):定义捕捉区域的高度(以像素为单位)。取值范围 0 至 4096,步长 1。 |
num_frames | INT | 是 | 1 | 1 - 255 (步长: 1) | num_frames(输入参数):设置连续捕捉的帧数。取值范围 1 至 255,步长 1。 |
delay | FLOAT | 是 | 0.1 | 0.0 - 10.0 (步长: 0.01) | delay(输入参数):设置连续捕捉多帧时,每帧之间的等待时间(以秒为单位)。取值范围 0.0 至 10.0,步长 0.01。 |
输出
| 参数名称 | 数据类型 | 说明 |
|---|---|---|
| image | IMAGE | image(输出参数):输出捕获的屏幕图像,格式为 ComfyUI 标准 IMAGE 类型(张量)。 |
使用场景
在实时图像生成或风格迁移工作流中,此节点非常有用。例如,您可以将其与 KSampler 节点连接,创建一个“实时扩散”循环:先捕获屏幕上的一个绘图或设计草图,然后立即让 Stable Diffusion 模型对其进行重绘或风格化,并将结果输出回屏幕,形成一个互动创作循环。结合自动队列功能,可以实现近乎实时的连续处理。
注意事项
此节点的捕捉范围受屏幕分辨率的实际限制,虽然参数上限设为 4096,但有效区域不应超出显示器边界。在捕获多帧时,较短的延迟和较高的帧数可能会增加系统负载。请注意,它只能捕获屏幕上可见的内容,无法抓取被其他窗口覆盖或最小化的区域。
Image Grab PIL 节点源码链接
Image Grab PIL 节点来自 ComfyUI-KJNodes 节点包。
评论
使用 GitHub 登录后即可参与讨论。