前几天玩 AnimateDiff 总是在webUI和comfyUI之间横跳,webUI生成的效果要好些,但是太吃机器配置,comfyUI则相对来说同等的配置能实现更多的功能。然后就在一个群里发现了一个很好玩的comfyUI插件,可以实现生成文字,图像抠图,前景背景融合等功能,如是也下载下来体验了下。

关于如何安装ComfyUI及下载插件的方法,请参考之前的文章:ComfyUI 入门教程,在 ComfyUI 中使用 SDXL 1.0 模型生成图片的工作流。今天主要分享下 Allor Plugin 插件使用的技巧和一个报错的处理。

项目地址https://github.com/Nourepide/ComfyUI-Allor

安装最好直接用ComfyUI Manager插件,直接搜索Allor Plugin点击安装即可,安装时最好开启全局梯子。

然后就可以直接使用作者提供的三个案例来学习了,这也是ComfyUI最强的地方,只要节点都安装好,就可以使用他人分享的工作流一键生成。

这三个案例都在项目介绍里面,第一个在顶部,后面两个在底部,直接保存图片然后拖到ComfyUI界面中就可以了。使用自己的字体来生成需要把字体文件放到ComfyUIcomfy_extrasfonts文件下,需要先手动创建fonts文件夹。

第一个案例基本包含了所有重要节点,生成前景女孩图像,然后进行图像优化调整,再去掉背景;另一条线生成背景图,然后融合前景和背景,最后合成生成的文字。推文最开始的图就是我用这个工作流跑出来的。后面的第二张和第三张工作流基本就是人物背景融合的功能,无非一张是横图一张是竖图。

另外在使用这个工作流时出现了个报错,主要是ImageTransformCropCorners这个将图像生成圆角的节点出问题了,问题如下:

Error occurred when executing ImageTransformCropCorners:

ImageDraw.rounded_rectangle() got an unexpected keyword argument 'corners'

ERROR:root:!!! Exception during processing !!!
ERROR:root:Traceback (most recent call last):
File "E:\ComfyUI_windows_portable\ComfyUI\execution.py", line 153, in recursive_execute
    output_data, output_ui = get_output_data(obj, input_data_all)
File "E:\ComfyUI_windows_portable\ComfyUI\execution.py", line 83, in get_output_data
    return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
File "E:\ComfyUI_windows_portable\ComfyUI\execution.py", line 76, in map_node_over_list
    results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
File "E:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui_allor\modules\ImageTransform.py", line 218, in node
    draw.rounded_rectangle(
TypeError: ImageDraw.rounded_rectangle() got an unexpected keyword argument 'corners'

通过咨询网友和GPT,最终发现是因为一个图像处理的库Pillow版本过低的问题,使用管理员运行如下命令更新库重启就可以了。前面部分更改成你自己的路径就行。

E:\ComfyUI_windows_portable\python_embeded\python.exe -m pip install pillow==9.5.0 --user