Ultralytics包引起的编码报错问题

安装完 Ultralytics 包后,加载YOLO相关模型,执行报错:

UnicodeEncodeError: 'gbk' codec can't encode character '\u0467' in position 3: illegal multibyte sequence

这个错误是由于 文件编码问题 引起的,Ultralytics 在初始化时会尝试创建或更新配置文件 settings.yaml,而 Windows 系统默认使用 GBK 编码,但某些字符(如 \u0467)无法用 GBK 编码保存

可以通过以下方法解决:

修改 Ultralytics 源码
找到文件 ultralytics/utils/__init__.py,定位到 yaml_save 函数(约第 310 行),将:

with open(file, 'w') as f:

改为:

with open(file, 'w', encoding='utf-8') as f:  # 添加 encoding='utf-8'

修改完保存文件,重新执行代码就可以正常运行啦

你可能感兴趣的:(深度学习,深度学习,YOLO)