**在运行yolov5时,报错:attributeerror: ‘FreeTypeFont’ object has no attribute ‘getsize’

在这里插入图片描述

这是因为安装了新版本的 Pillow (10)删除了该getsize 功能
,降级到 Pillow 9.5 解决了该问题

可以尝试以下方法进行解决:

pip install Pillow==9.5

将Pillow 降级到9.5后,就会产生第二个问题:旧版本的Pillow(9.5.0)与另一个已安装的库(psd-tools 1.9.34)不兼容。

不用降级的方法

在utils/plots.py文件的第91行左右,找到 w, h = self.font.getsize(label) 这行代码,替换成 x, y, w, h = self.font.getbbox(label) 即可完美解决。

报错点进去,self.font.getsize这句话前面

可以参考yolov5或者yolov8最新代码,在Annotator中添加如下代码即可。
if check_version(pil_version, ‘9.2.0’):
self.font.getsize = lambda x: self.font.getbbox(x)[2:4] # text width, height

Logo

更多推荐