关于comfyui安装ComfyUI-BiRefNet-ZHO节点失败问题(下)
关于comfyui安装ComfyUI-BiRefNet-ZHO节点失败问题(下)ImportError: cannot import name 'path_to_image’ from 'utils’cannot import D: comfyuI_ Mie_v6.0\comfyuI custom_nodes comfyUI-BiRefNet-ZHo module for custom nodes
老规矩上报错(方便别人查到这一篇文章):
(IMPORT FAILED): D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO
ImportError: cannot import name 'path_to_image’ from 'utils’
cannot import D: comfyuI_ Mie_v6.0\comfyuI custom_nodes comfyUI-BiRefNet-ZHo
module for custom nodes: cannot import namepath to image'from 'utils'
看了上的应该知道,直接定位问题源头,节点出问题
关于comfyui安装ComfyUI-BiRefNet-ZHO节点失败问题(上)
一开始用了github上面别人提供的解决思路,有点麻烦,后面自己突发奇想弄出了第二个办法,很简单的,追求简单方法直接看目录,我给了定位
按照大佬的说法,所有的import需要用相对路径,那就开始更改,这里我先总结了文件,那个大佬给的不够,后面试了好多报错内容才找到的,先看下面:
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\dataset.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\birefnet.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\backbones\build_backbone.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\baseline.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\modules\decoder_blocks.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\refinement\refiner.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\backbones\pvt_v2.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\backbones\swin_v1.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\modules\aspp.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\modules\lateral_blocks.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\modules\ing.py
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\models\refinement\stem_layer.py
按照你们自己的路径找就行,都是在ComfyUI-BiRefNet-ZHO这个文件夹里面的(只要你安装了这个节点就有),然后按照我给的图片开始修改,很简单,都是在import那里












图片有点糊,将就着看吧,我的显示器太老了,只有VGA插口那种,这里解释一下为啥有些import不需要前面加点(纯属自己猜测,不太懂,请大佬批评)
不需要加的都是别的依赖引用,例如torch,timm那些(是不是看着很熟),把自己节点内的引用文件全部换成相对路劲,自己观察发现(因为一开始跟着大佬改,然后还报错,就只能自己去探究一下了):
一个点就是自身文件夹,两个点就是往后退,三个点就是退两次
举个简单的例子,用这个文件来解释:
D:\ComfyUI_Mie_V6.0\ComfyUI\custom_nodes\ComfyUI-BiRefNet-ZHO\birefnet.py

改了这两个地方(有对比)
原本代码:
from models.baseline import BiRefNet
from config import Config
改了之后
from .models.baseline import BiRefNet
from .config import Config
我们看一下第二行,.config只有一个点,说明从自身文件夹去调用config,我们看一下图片,是不是birefnet.py自身的文件夹有config.py,这就是相对路径,从birefnet.py的位置去慢慢推出别的文件位置

接下来第一行也是类似,.models.baseline从当前文件夹找到models文件夹进去找到baseline.py

这样就绝对不会出现找不到的报错问题,一开始就是找不到utils,应该是找到别的地方去了,可能是别的哪里也有名字为utils的文件吧
按照上面的改完之后,重启comfyui,问题就解决了,别问我为什么知道改哪些文件,因为我报错一个,就改一个,报错会写哪个文件哪一行哪里inport出错......不知道重启了多少遍comfyui,可怜了我的电脑
我会上传一下修改之后这个节点的压缩包,不想一个个改的可以直接下,当然我觉得自己改才会有进步,因为下这个完全没意义。
这里是定位,简单方法看这里
为什么说没意义,本来我到这里已经结束了,但是我想了想,这个作者的节点要是更新一遍,那我又得重新全部改一次?????(假设没有修复这个bug)
感觉自己搞这么一大堆像个傻逼一样,又开始漫长的思考......萌新想不出啥办法,又百度了一下,这个找不到可能是因为utils文件同名(可能,还没验证),因为别的都能,就你这个不行,一定是utils这个名字太常见了
我们回头看最开始的报错:
cannot import D: comfyuI_ Mie_v6.0\comfyuI custom_nodes comfyUI-BiRefNet-ZHo
module for custom nodes: cannot import name ‘path to image' from 'utils'
那我们试着修改一下名字嘛,我改成了utils12(你们自己随意,不要有中文)打开文件dataset.py,修改到如下:

同时修改文件的名字:

然后重启,可以了,节点导入成功.....啊啊啊啊啊,气死我了气死我了
反正过程就这样,推荐你们直接改名字就行了,搞那么多花里胡哨,当然我主要是写过程,所以会有点啰嗦,想看办法的直接跳目录
对了,如果要转载请贴出转载链接,多谢了,同时希望大佬能指出我文章中的错误,因为大多是我猜测的
要是有打赏就更好了,赏口饭吃,不过我等级好低应该没有哈哈
更多推荐
所有评论(0)