某些电脑Python应用在生成图片时发生错误,生成了纯黑图片,并输出报错信息如下:
site-packages\rembg\sessions\base.py:52: RuntimeWarning: invalid value encountered in divide
im_ary = im_ary / np.max(im_ary)
site-packages\rembg\sessions\u2net.py:44: RuntimeWarning: invalid value encountered in cast
mask = Image.fromarray((pred * 255).astype(“uint8″), mode=”L”)
有些情况是代码问题,有些情况是原始图像问题,上面提到两个问题,
1、rembg
库中的除零问题 (invalid value encountered in divide
):
提示图像数组中的最大值为零,导致出现无效除法操作。处理的图像数据中存在异常值,就是我们看到的结果全黑图像。
解决方案:可以在进行除法操作之前检查 np.max(im_ary)
是否为零,并在此情况下跳过除法操作,或确保输入图像数据的质量。
原始代码:
im_ary = np.array(im)
im_ary = im_ary / np.max(im_ary)
修改后的代码:
im_ary = np.array(im)
# 检查 np.max(im_ary) 是否为零
max_val = np.max(im_ary)
if max_val > 0:
# 只有在最大值大于零时才进行归一化
im_ary = im_ary / max_val
else:
# 如果最大值为零,可以跳过归一化或者采取其他处理措施
im_ary = np.zeros_like(im_ary)
2、rembg
库中的类型转换问题 (invalid value encountered in cast
):
提示在进行数组转换为 uint8 类型时遇到了无效值。这可能是因为模型输出的 pred
数组中包含了超出 0-1 范围的值,导致在转换时发生问题。
解决方案:在转换前处理无效值及对 pred
进行剪裁或归一化处理,以确保其数值在合理范围内(如 [0, 1] 之间)
原代码为:
pred = ort_outs[0][:, 0, :, :]
ma = np.max(pred)
mi = np.min(pred)
pred = (pred - mi) / (ma - mi)
pred = np.squeeze(pred)
mask = Image.fromarray((pred * 255).astype("uint8"), mode="L")
修改后的代码:
pred = ort_outs[0][:, 0, :, :]
ma = np.max(pred)
mi = np.min(pred)
pred = (pred - mi) / (ma - mi)
# 使用 np.nan_to_num 替换 NaN 和无穷大的值
pred = np.nan_to_num(pred, nan=0.0, posinf=1.0, neginf=0.0)
# 将数值剪裁到 [0, 1] 范围
pred = np.clip(pred, 0, 1)
pred = np.squeeze(pred)
mask = Image.fromarray((pred * 255).astype("uint8"), mode="L")
相关推荐
triton.runtime.errors.OutOfResources: out of resource: shared memory, Required: 126978, Hardware limit: 101376. Reducing block sizes or `num_stages` may help
将python脚本.py文件编译为.pyd文件方法
ValueError: Model architectures ['LlamaForCausalLM'] failed to be inspected.
No module named "vllm._C
UserWarning: Specified provider 'CUDAExecutionProvider' is not in available provider names.Available providers: 'AzureExecutionProvider
下载huggingface.co网站上模型文件的几种方法,包括需要登录的验证的模型
windows电脑安装DeepSpeed报错提示无法打开输入文件“aio.lib”等
TypeError: argument of type 'bool' is not iterable ERROR: Exception in ASGI application
最近更新

Unreal Engine 5恐怖游戏设计制作教程,从入门到精通从零开始完整项目开发详细讲解,中英文字幕
和大家分享一个以前收集的UE5虚幻引擎恐怖游戏开发教程,这是国外一个大神制作的视频教程,教程从零开始到制作出一款完整的游戏。内容讲解全面,如蓝图基础知识讲解、角色控制、高级交互系统、高级库存系统、物品检查、恐怖环境氛围设计、过场动画、AI系...

PDF/图片转markdown软件MonkeyOCR整合包,文档图片解析工具下载
MonkeyOCR是上个月刚发布的一款文档解析工具,可以将PDF文档或图片识别转换为markdown格式文件。官方测试显示性能极佳。我基于当前最新版制作了免安装一键启动整合包,支持批量操作,并降低了显卡要求。 MonkeyOCR官方介绍 M...

AI视频变现项目,完整详细教程20250628期

即梦AI:创作者的强力“外挂”!免费积分等你领取
还在为创作图片、故事及视频内容而烦恼吗?朋友,你需要一个靠谱的“智能搭子”了!那就是即梦AI,就是那个能让你事半功倍、脑洞大开的神奇伙伴! 即梦AI,到底是什么? 简单说,即梦AI是字节跳动旗下一个强大、易用且懂你的一站式AI创作平台。&n...

支付宝发现金红包了!支付宝的羊毛快来薅💰️💰️
支付宝小荷包搞活动啦,新用户加入立得2元无门槛现金红包。 支付宝小荷包是支付宝推出的一款便捷的零钱管理工具,适合日常小额支付和理财。 什么是支付宝小荷包? 支付宝小荷包,简单来说,就像是你在支付宝里的“私人金库”。它不仅支持快速转账、收款,...

美团官方发福利,吃喝玩乐外卖神券天天领
美团官方发福利了,加美团企业微信,每天免费领各种吃喝玩乐神券,领取福利流程如下: 1、微信扫码登录↓↓↓ 2、长按添加美团企业微信 3、天天领券 每日签到领取更多红包 更有超多促销活动,限时活动,低价爆品等,让你放肆嗨吃嗨喝!

免费PDF文档翻译软件BabelDOC整合包下载,AI一键PDF全文翻译工具
分享另一个热门的PDF文档翻译软件BabelDOC,软件可以将PDF文档由原语言翻译成指定语言文档,基于在线大语言模型处理能力,文档翻译效果更准确,并保留排版,支持批量文档翻译,我制作了最新版免安装一键启动整合包。 BabelDOC介绍 另...

AI歌曲创作软件YuE整合包下载,一键谱曲演唱音乐生成器
YuE:开放的全曲音乐生成基础模型,可免费一键生成完整歌曲,AI作曲,AI演唱,是一个高质量的AI音乐生成软件。我制作了最新的面安装一键启动整合包。 YuE介绍 YuE 是一系列突破性的开源基础模型,专为音乐生成而设计,尤其适用于将歌词转化...

可灵AI会员专属优惠邀请码,限时福利领取
可灵AI发福利了,通过专属优惠邀请码 6BZPEJK83JZ9 可额外获得50%灵感值。 现在图片、音乐、视频等等,啥都可以用AI生成,可灵AI就是快手旗下非常强大的一个AI内容创作平台,功能多样,效果强大。我最近半年几乎每周都会使用多次,...

多人对话语音合成软件CSM整合包,AI多人文字转语音工具
CSM是发布不久的一款多人对话语音生成模型,声音自然延迟低,同时支持克隆音色语音合成,我基于当前最新版本制作了免安装一键启动整合包。 Sesame CSM介绍 CSM(Conversational Speech Model) 是由...