当前位置: 首页 > news >正文

YOLOv8中文分类标签显示问题解决

YOLOv8底层源代码修改解决中文标签分类显示问题,主要解决训练完成之后验证集结果图片中文显示和模型预测图片中的中文显示问题。

1、metrics文件修改如下:

2、plotting文件修改如下:

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
class Annotator:下的init注解调,然后修订成下面的方法,其中font的路径修改成自己下载的字体路径

def __init__(self, im, line_width=None, font_size=None, font='D:/python310/Lib/site-packages/matplotlib/mpl-data/fonts/ttf/SimHei.ttf', pil=False, example='abc'):assert im.data.contiguous, 'Image not contiguous. Apply np.ascontiguousarray(im) to Annotator() input images.'self.pil = pil or not is_ascii(example) or is_chinese(example)if self.pil:  # use PILself.im = im if isinstance(im, Image.Image) else Image.fromarray(im)self.draw = ImageDraw.Draw(self.im)# self.font = check_font(font='D:/python310/Lib/site-packages/matplotlib/mpl-data/fonts/ttf/SimHei.ttf' if is_chinese(example) else font)# size = font_size or max(round(sum(self.im.size) / 2 * 0.035), 12)self.font = check_pil_font(font='D:/python310/Lib/site-packages/matplotlib/mpl-data/fonts/ttf/SimHei.ttf' if is_chinese(example) else font,size=font_size or max(round(sum(self.im.size) / 2 * 0.035), 12))

3、checks文件修改:

添加内容

def check_pil_font(font='Arial.ttf',size=10):# Return a PIL TrueType Font, downloading to CONFIG_DIR if necessaryfont = Path(font)font = font if font.exists() else (USER_CONFIG_DIR / font.name)try:return ImageFont.truetype(str(font) if font.exists() else font.name, size)except Exception:  # download if missingcheck_font(font)try:return ImageFont.truetype(str(font), size)except TypeError:check_requirements('Pillow>=8.4.0')  # 

字体先确保已下载完毕,不然还是不起作用,本次windows10整体运行完毕结果正常显示。

相关文章:

  • Windows桌面运维----第四天
  • 基于Java的高校校园点餐系统
  • c中编程题最有效率的方法算出2乘以8等於几
  • SpringBootWeb 篇-入门了解 Spring Cache 、Spring Task 与 WebSocket 框架
  • FPGA早鸟课程第二弹 | Vivado 设计静态时序分析和实际约束
  • SSL证书怎样配置部署更安全?
  • 18-云原生监控体系-kube-state-metrics
  • 海南聚广众达电子商务咨询有限公司抖音电商新引擎
  • 汽车IVI中控开发入门及进阶(三十一):视频知识扫盲
  • 阿里云ECS(CentOS/Alibaba Cloud Linux)安装最新 Docker 方法
  • C++初学者指南第一步---7.控制流(基础)
  • Unity3D 大地图分块:分块编辑小AStar地图详解
  • PHP框架之symfony框架
  • 铁路定向声波冲击波智能驱鸟器
  • 红队与蓝队:有何区别?
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • [笔记] php常见简单功能及函数
  • avalon2.2的VM生成过程
  • HTTP中的ETag在移动客户端的应用
  • JWT究竟是什么呢?
  • SpiderData 2019年2月23日 DApp数据排行榜
  • Spring-boot 启动时碰到的错误
  • Vue ES6 Jade Scss Webpack Gulp
  • 给第三方使用接口的 URL 签名实现
  • 将 Measurements 和 Units 应用到物理学
  • 经典排序算法及其 Java 实现
  • 蓝海存储开关机注意事项总结
  • 那些被忽略的 JavaScript 数组方法细节
  • 数据仓库的几种建模方法
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 用 Swift 编写面向协议的视图
  • 怎样选择前端框架
  • 正则与JS中的正则
  • ​LeetCode解法汇总2670. 找出不同元素数目差数组
  • #pragma 指令
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (39)STM32——FLASH闪存
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (el-Transfer)操作(不使用 ts):Element-plus 中 Select 组件动态设置 options 值需求的解决过程
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (PySpark)RDD实验实战——取一个数组的中间值
  • (第三期)书生大模型实战营——InternVL(冷笑话大师)部署微调实践
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (紀錄)[ASP.NET MVC][jQuery]-2 純手工打造屬於自己的 jQuery GridView (含完整程式碼下載)...
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (算法)求1到1亿间的质数或素数
  • (一)springboot2.7.6集成activit5.23.0之集成引擎
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (原創) 未来三学期想要修的课 (日記)
  • (转)visual stdio 书签功能介绍
  • (自用)learnOpenGL学习总结-高级OpenGL-抗锯齿
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上