Windows环境运行RemBG抠图命令触发numba报错问题求助
问题根因
从错误栈路径Python39-32可以直接定位核心问题:
- 当前安装的是32位版本Python 3.9,numba的并行计算(parfors)特性不支持32位Windows环境,rembg依赖的pymatting库在加载numba加速的KDTREE模块时,会直接触发并行编译失败。
- 次要触发原因是版本兼容问题:numba、pymatting、rembg三者版本不匹配时,就算是64位Python也可能触发同类编译错误。
修复步骤
- 卸载当前系统里的32位Python,安装3.9~3.11区间的64位Python,安装时必须勾选Add Python to PATH选项,避免命令行识别不到正确的Python版本。
- 打开PowerShell执行命令,清理之前安装的残留依赖包:
pip uninstall -y rembg pymatting numba numpy
- 安装经过兼容性验证的稳定版本组合,执行命令:
pip install rembg==2.0.50 pymatting==1.1.8 numba==0.56.4 numpy==1.23.5
如果下载速度慢,可以在命令末尾追加国内PyPI镜像源参数提升下载速度。
- 兜底兼容设置:如果完成上述步骤后仍报并行相关错误,执行抠图命令前先在当前PowerShell窗口设置环境变量,关闭numba多线程并行:
$env:NUMBA_NUM_THREADS=1
设置完成后再执行rembg i input.png output.png即可正常完成抠图。
内容的提问来源于stack exchange,提问作者Asad Kareem
相关产品推荐
相关产品推荐

