[发明专利]一种字体检测方法在审
申请号: | 202110165025.7 | 申请日: | 2021-02-06 |
公开(公告)号: | CN112966688A | 公开(公告)日: | 2021-06-15 |
发明(设计)人: | 林俊 | 申请(专利权)人: | 杭州刀豆网络科技有限公司 |
主分类号: | G06K9/34 | 分类号: | G06K9/34;G06T5/00;G06T7/11;G06T7/13 |
代理公司: | 杭州浙言专利代理事务所(普通合伙) 33370 | 代理人: | 易朝晖 |
地址: | 310000 浙江省杭州市余杭区文*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 字体 检测 方法 | ||
本发明公开了一种字体检测方法其包括以下步骤:(1)创建字体库,读取大量字体文件,根据文件内包含的字符数据,生成各字符对应图案,所有字体组合成为字体库;(2)将字符对应的图案生成对比字符指纹;(3)将需检测的图片文字生成检测字符指纹;(4)将检测字符指纹与字体库中的对比字符指纹进行比对,得到最接近的字体。本发明通过引入字体指纹,将图片中的文字转化成字体指纹与字体库中的字体指纹比对,快速找出需检测的字体类型,准确率高,且效率快。
技术领域
本发明属于字体检测技术领域,具体涉及一种字体检测方法。
背景技术
目前,一张图片中的字体主要是通过人工识别出为何种字体,需要通过多种字体相互对比才能判别出来,而且准确率低,效率慢;字体检测技术是根据所给出的文字图案,在字体库中查找到相对应的字体,主要应用于设计师等职业人群,为了快速识别图片中文字使用何种字体,急需提出一种字体识别技术。
发明内容
有鉴于此,本发明提出一种字体检测方法,能够快速识别图片中的字体,而且准确率高。
为了达到目的,本发明提供的技术方案为:
本发明涉及一种字体检测方法其包括以下步骤:
(1)创建字体库,读取大量字体文件,根据文件内包含的字符数据,生成各字符对应图案,所有字体组合成为字体库;
(2)将字符对应的图案生成对比字符指纹;
(3)将需检测的图片文字生成检测字符指纹;
(4)将检测字符指纹与字体库中的对比字符指纹进行比对,得到最接近的字体。
优选地,所述的字体文件为ttf或otf格式文件
优选地,所述生成对比字符指纹的具体步骤包括:
(2.1)将带有字体的图案M转换为灰度图G;
(2.2)通过计算全图像素值均值将灰度图G进行二值化处理,生成二维数组A;大于等于均值的像素点置为1,小于均值的像素点置为0,最终成为只有0和1的二值化二维数组;
(2.3)将二维数组扩展为一维向量,得到对比字符指纹V。
通过特定软件包(如Python可使用Pillow模块)可以将字体文件中的数据以图案显示,输入法根据用户输入的文字+字体文件在计算机上显示文字图案。生成对比字符指纹可节约存储成本,并且便于计算。一般图案数据都是KB级别,生成指纹后为B级别,降低了3个数量级。
优选地,所述生成检测字符指纹的具体步骤包括:
(3.1)圈选出需检测的图片M2中文字部分;
(3.2)将文字部分转换为灰度图Mwg;
(3.3)将灰度图通过OTSU算法进行二值化,得到二维数组A2;
(3.4)根据二维数组A2边缘像素值生成文字部分的二维数组A3;
(3.5)将二维数组A3扩展为一维向量,得到检测字符指纹V2。
通过观测A2边缘像素值(边缘一般为背景而非文字部分),可确定二值化的A2数组中0、1的值是否设置正确。如果边缘像素值为0,则认为背景部分已被置0,文字部分已被置1如果边缘像素值为1,则认为OTSU算法设置错误,需要将A2中的所有0置为1,所有1置为0。二维数组A3是边缘像素值为1的数组。
采用本发明提供的技术方案,与现有技术相比,具有如下有益效果:
1、本发明通过引入字体指纹,将图片中的文字转化成字体指纹与字体库中的字体指纹比对,快速找出需检测的字体类型,准确率高,且效率快。
2、本发明采用灰度图+OTSU算法+二值化的步骤对图片文字进行去背景噪声,正确提取字符本体,提高字体检测的正确率。
3、本发明通过处理图片,将KB级别的图案数据,降维成B级别的一维向量,比对更加方便。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州刀豆网络科技有限公司,未经杭州刀豆网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110165025.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种磁粉自动投加系统
- 下一篇:一种用于市政道路工程的排水管道系统