OpenCV-ComfyUI:为 ComfyUI 定制的 OpenCV 节点库

插件1个月前发布 小马良
86 0

这是一个专为 ComfyUI 设计的节点库,通过从 OpenCV Python (cv2) 的类型定义自动生成,实现了其所有顶层独立函数。它旨在帮助用户在 ComfyUI 环境中更便捷地使用 OpenCV 的强大功能。

OpenCV-ComfyUI:为 ComfyUI 定制的 OpenCV 节点库

OpenCV(Open Source Computer Vision Library) 是一个开源的计算机视觉和机器学习软件库,广泛应用于图像和视频处理、目标检测、特征提取、人脸识别、物体跟踪、机器人视觉等领域。它为开发者提供了丰富的功能和工具,帮助他们快速实现复杂的视觉智能应用。

安装 OpenCV

在开始之前,请确保已安装 OpenCV。可以通过以下命令进行安装:

pip install opencv-python-contrib

图像格式转换

为了在 ComfyUI 图像OpenCV numpy 数组 之间进行转换,我们提供了两个核心节点:

  • Image2Nparray:将 ComfyUI 图像转换为 OpenCV 的 numpy 数组。
  • Nparrays2Image:将 OpenCV 的 numpy 数组转换为 ComfyUI 图像。

这两个节点是实现两者互操作性的关键工具。

使用注意事项

  • 避免使用 out 参数:在调用 OpenCV 函数时,尽量避免使用可选的 out 参数(通常名为 dst)。这可能会导致意外的内存覆盖或数据损坏。
  • 颜色通道转换:使用 cvtColor 函数进行颜色通道转换。例如:
    • 6BGR2GRAY(从 BGR 转换为灰度)
    • 8GRAY2BGR(从灰度转换为 BGR)
  • 复合参数的表示:对于复合参数(如 ksize),请使用 字面量数组 表示,例如 [3, 3]

警告与反馈

这些节点是自动生成的,因此在使用过程中可能会显得复杂且不够直观。请做好心理准备,并在遇到问题时查阅相关文档或寻求社区支持。

如果你在使用过程中有任何反馈或建议,欢迎随时提出!如果这个项目有更多用户,我会继续优化和完善它。


图像表示对比

以下是 ComfyUI 图像和 OpenCV 图像的主要区别:

特性ComfyUI IMAGEOpenCV 图像
数据类型torch.Tensornumpy.ndarray
形状(batch, H, W, C)(H, W, C)
颜色格式始终为 RGB(无 RGBA)通常为 BGR 或灰度
值范围0.0 ~ 1.0(浮点)0 ~ 255(整数)
数据类型np.float32np.uint8

重要提示:在进行图像转换时,必须使用 cvtColor 函数。以下是一些常用的颜色转换枚举值:

  • cv2.COLOR_BGR2RGB:将 BGR 图像转换为 RGB 格式。
  • cv2.COLOR_GRAY2BGR:将灰度图像转换为 BGR 格式。

通过这些信息,你可以更好地理解和使用 OpenCV-ComfyUI 节点库,从而在 ComfyUI 环境中高效地处理图像数据。

© 版权声明

相关文章

暂无评论

none
暂无评论...