Tesseract训练如何加入中文常见字体
为什么要加中文字体?
医院内部的pacs系统,都运行在windows上,为了能正常和最好的显示中文,一定会选择中文字体。
从测试结果上看,字体对OCR的识别率影响比较大,因此,训练使用的字体应该包含医院pacs内的字体,才能有最佳的识别率。
Ubuntu内部是没有windows常见的字体的(版权问题),需要将windows的常见字体安装到Ubuntu内部,才能进行中文字体的OCR训练。
如何加入中文字体?
从windows里拷贝过来即可,ttf格式是一种通用格式。
进入windows系统盘的/Windows/Font,将里面的文件都拷贝到Ubuntu里。
Ubuntu有多个Font文件夹,作者拷贝到Ubuntu用户的文件夹里(/.local/share/fonts或/.fonts都可以,fc-cache -fv
会从这两个路径搜索)
然后执行fc-cache -fv
即可加载生效。
应该加入什么中文字体?
windows常见字体
中文字体数之不尽,不可能穷尽,只能采用最常用的字体进行训练。
windows常见字体可以参考网文 >注:在XP系统中,没有仿宋、楷体,只有仿宋_GB2312和楷体_GB2312这两种字体。但是到了Win7系统,却只有仿宋和楷体,没有了仿宋_GB2312和楷体>_GB2312这两种字体。所以在XP系统下制作的公文在Win7系统中打开,全部转换成系统默认的微软雅黑字体。而在Win7系统下制作的公文在XP系统中打开,全>部转换成系统默认的宋体。 根据以上建议,中文训练字体为:微软雅黑,宋体,仿宋,新宋体,楷体以及黑体。(Microsoft YaHei, SimSun, FangSong, NSimSun, KaiTi, SimHei)
非常见字体
不常见的字体如果模型泛化效果不好,则需要从医院pacs内的拿回截屏图片进行分析(不是手机拍照!)(Ubuntu服务器项目根目录的ocr_images内有)
将有效内容的截屏图片放到[在线字体识别网站](https://www.likefont.com/)中进行分析,可以大概率分析出可能的字体(建议加人眼对比判断选择)
然后搜索和下载对应的字体,拷贝到Ubuntu的Fonts文件夹里,将训练过程新增该字体,进行模型的重新训练即可。
查看系统字体情况
字体查看和管理
如果需要了解字体的示例效果等,可以sudo apt install font-manager
,会有UI界面很直观的进行展现。
罗列所有字体
fc-list :lang=zh
更多推荐
所有评论(0)