tessdata:一个强大的OCR字库

发布时间:2023-05-19

一、tessdata字库

tessdata作为一个OCR(Optical Character Recognition,光学字符识别)引擎,它需要一个字库来进行字符识别。tessdata字库包含了一个主要的识别引擎和各种语言的字典数据。tessdata字库由Google公司开源并维护。在字库方面,tessdata一般分为两部分,一部分为主要的语言字典以及配置,另一部分则为语言之间的学科术语、特定算法配置以及一些其他上下文相关的字典,可自由选择性下载并进行使用。 tessdata字库的下载可通过一些网站进行下载,其中以github作为最常用最方便的方法,而且官方文档也推荐使用github进行下载。

git clone https://github.com/tesseract-ocr/tessdata.git

二、tessdata中文语言包

众所周知,tessdata支持多种语言的识别,包括中文,但中文识别过程要比英文复杂得多。中文识别需要一个符合中国特定文化特点的基础算法,即需要使用中文符号。同时,随着科技的发展,中文行文字网格处理的速度缓慢,字体复杂,需要进行各种优化来提高识别精度,所以需要下载中文语言包。 中文语言包可从github、百度云盘及一些其他网站进行下载。其中,github的语言包下载方式与字库相同,可以克隆tessdata仓库并单独下载。

git clone https://github.com/tesseract-ocr/tessdata.git

百度云盘也提供了下载链接,如下:

链接: https://pan.baidu.com/s/1ErxNPVmjXmJ70kj5-qQI9g  密码: zq2s

三、tessdata下载

tessdata的下载可从多个网站进行下载,包括官方网站、github、百度网盘等。官方网站提供了各种语言的可选供下载。github是使用尤其广泛且方便的一种下载方式。 github的下载方式已经在之前的小标题中提到了,这里再重复一下。下载tessdata需要进行以下步骤:

四、tessdata训练

tessdata的识别效果取决于它的训练效果以及字典数据的质量。一般情况下,根据预设的默认参数,tessdata的效果不一定很好。但在使用不同类型的文本时,可通过进行一些参数的优化和训练以达到更好的识别效果。 训练tessdata的大致方式是,先准备好一个大量的训练数据,并将其分类成文本图片和非文本图片。然后,通过将其转化成.tiff格式进行训练,并设定好预设参数。最后,tessdata会自动进行逐渐优化的学习过程,以达到更好的识别效果。 以下是一个简单的训练tessdata样例:

# 准备训练数据
# 生成文件列表
$ find /path/to/training/folder -name "*.jpg" > \
/path/to/training/folder/images.txt
$ find /path/to/training/folder -name "*.box" > \
/path/to/training/folder/ground-truth.txt
# 将box文件转成tiff格式
$ while read p; do
    tiffcp $p ${p/.box/.tif}
done < /path/to/training/folder/ground-truth.txt
# 生成unicharset
$ unicharset_extractor \
/path/to/training/folder/ground-truth.txt
# 生成shapetable
$ shapeclustering \
-f \
/path/to/training/folder/shapetable \
-U /path/to/training/folder/unicharset \
/path/to/training/folder/images.txt
# 生成有向无环图
$ mftraining \
-f \
/path/to/training/folder/mftraining \
-U /path/to/training/folder/unicharset \
/path/to/training/folder/images.txt
# 组合成tessdata
$ cntraining /path/to/training/folder/images.txt
$ combine_tessdata /path/to/training/folder/tessdata \
/path/to/training/folder/*.tr

五、tessdata简体中文

简体中文是目前在中国最广泛使用的一种语言文字。因为繁体字符复杂,且大陆地区使用繁体较少,所以更多的OCR系统都使用简体中文识别,其中tessdata也是。 tessdata简体中文可以从github或其他网站进行下载,百度网盘也提供了下载服务,通过以下链接获取。

链接: https://pan.baidu.com/s/1aUFapwcwcUc70HIWVCgqZw  密码: kehg

六、tessdata百度网盘

因为tessdata文件较大,下载比较耗时,所以很多人选择将文件上传到百度网盘进行分享,以便大家更方便地下载。同时,百度网盘也提供了非常快速的下载速度,具有高速下载的优势。 tessdata在百度网盘中有多个资源可供下载,包括各语种语言包、字典文件、训练数据及其他相关资源。以下为一个tessdata的百度网盘资源链接:

链接: https://pan.baidu.com/s/1s2mVt0ZP3zGMv5YGRmwxbg  密码: 5mgz

以上是关于tessdata的一些阐述,如果需要使用tessdata进行OCR相关的操作,需要进行相应的下载、训练及优化。tessdata的效果取决于数据的质量以及训练效果,如果能够进行充分的优化,tessdata的识别效果将得到更好的提高。