某些电脑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")
相关推荐
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
AttributeError: module 'gradio' has no attribute 'inputs'解决方法
AttributeError: module 'gradio' has no attribute 'make_waveform'解决方法
最近更新

美团官方发福利,吃喝玩乐外卖神券天天领
美团官方发福利了,加美团企业微信,每天免费领各种吃喝玩乐神券,领取福利流程如下: 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) 是由...

AI自动化任务执行工具OpenManus一键启动整合包
OpenManus是另一款AI自动化任务执行软件,是Manus的开源实现,无需邀请码,本地运行,我基于当前最新版本制作了免安装一键启动整合包。 OpenManus介绍 OpenManus 是一个开源复刻版 AI 智能体框架,由 MetaGP...

CAMEL-AI开源多智能体协作框架OWL一键整合包,自动化任务助手
OWL 是由 CAMEL-AI 团队开发的开源多智能体协作框架,旨在通过动态智能体交互实现复杂任务的自动化处理,在 GAIA 基准测试中以 69.09 分位列开源框架榜首,被誉为“Manus 的开源平替”。我基于当前最新...

微软PDF/WORD/HTML文档转Markdown格式软件markitdown整合包下载
本次和大家分享另一个微软发布的非常热门的文件文档转Markdown格式文档的软件markitdown,软件可以将PDF,word,ppt,Excel等十几种格式文档转换为markdown格式文档,我基于当前最新0.1.2版本制作了免安装一键...

AI描述万物软件describe-anything整合包,精准描述图片视频中指定区域内容
本次和大家分享一个英伟达联合其他大学开发的一款应用describe-anything,该应用可以通过AI识别分析并详细描述图片视频中指定区域物体内容,我基于最新版制作了免安装一键启动整合包。 describe-anything介绍 Desc...

高效可控歌曲生成器ACE-Step一键启动整合包,音乐人的歌曲创作利器
又一款AI歌曲创作利器:ACE-Step,ACE-Step是刚发布不久的AI自动谱曲AI自动演唱软件,软件在歌曲生成速度、音乐连贯性和可控性上相对同类软件有了较大提升。ACE-Step在3小时前刚发布了新版本,我基于当前最新版本制作了免安装...