【解决方案】yolov5环境配置报错

2024-09-10 22:34:18 浏览数 (1)

一、问题描述

YoloV5模型运行,下载长时间显示以下信息,并停滞

代码语言:javascript复制
Downloading https://github.com/ultralytics/assets/releases/download/v0.0.0/Arial.Unicode.ttf to /root/.config/Ultralytics/Arial.Unicode.ttf...

在配置YOLOv5或其他深度学习项目时遇到关于字体文件(如Arial.Unicode.ttf)的下载错误,通常不是直接由YOLOv5本身引起的,而是可能由项目依赖的某个库或工具(如matplotlib、Pillow等)在尝试渲染文本或图表时需要的字体文件缺失所导致

二、原因分析

许多程序或者软件,往往需要特定的字体文件来确保文本的正确显示,为了简化安装和配置过程,有些代码会在安装或首次运行时自动下载所需的依赖项。在这个场景中,yolov5检测到缺少Arial.Unicode.ttf字体文件,并决定从GitHub的ultralytics/assets仓库中下载它。

然而可能遇到github连接不稳定或者网络问题,导致以上问题

三、解决方案

两种解决方案,一种是去下载对应字体文件,另一种是去配置系统已有字体。

3.1、下载对应字体文件

既然因为网络下载不到这个字体,我们可以直接通过本地下载这个.ttf字体:

然后将这个.ttf字体复制到刚刚信息提示的对应位置:/root/.config/Ultralytics/Arial.Unicode.ttf

可以使用mv指令存到linux系统的字体位置中,如:

代码语言:javascript复制
mv Arial.Unicode.ttf  /root/.config/Ultralytics/
1

3.2、配置为系统已有字体

打开utils文件夹,打开general.py文件:

其中,大概在第583行,会有一行代码为:

代码语言:javascript复制
check_font("Arial.ttf" if is_ascii(data["names"]) else "Arial.Unicode.ttf", progress=True)  # download fonts
1

可以将Arial.ttf替换为系统已有的字体,当然也可以把这行代码注释掉,这样系统也会自动调用默认字体

如果上述步骤都不能解决问题,查看YOLOv5或matplotlib的官方文档和社区论坛,看看是否有其他人遇到并解决了类似的问题。

0 人点赞