今天下雨,主线工作又不太忙,继续之前的副本工作。
我之前收藏了很多看起来很有意义的图片,大多是纯文字的长图,有些图片太长导致看文字很麻烦,保存倒容易,缺点是不能检索图中的关键词。今天试着把它们用 python OCR,效果很好。借助 Deepseek 生成主程序语言,安装和调试识别工具后,很快就得到了结果。
记录一下整个工作过程,希望能给你带来一些思考。整个过程分三步。
①,准备工作。用到的程序和训练数据文件。
tesseract-ocr-w64-setup-5.5.0.20241111
github.com/UB-Mannheim/tesseract/wiki(镜像站)
tessdata,github.com/tesseract-ocr/tessdata
文本编辑器,我用的是 Notepad++
还要用 cmd 或 Power Shell
②,安装 Tesseract-OCR。安装时要选中文语言包,也可以自行在仓库中安装,配置好环境变量方便调用。
③,识别并调整格式。一开始测试,我只识别了一张。对于纯机打文字的图片内容来说,几乎秒识别,格式也保持图片上的文字格式。
但是,对于手写文字和带背景(无论是简单的文字变浅,水印,大范围的复杂背景)的图片,识别准确率都明显下降。后续如果做专业的图像识别和机器学习方向的研究,要预先对图片进行处理后,才能得到更准确的内容。
输出的 txt 文档中每个文字后都跟了一个空格,这个问题我还没有反馈给大模型,应该可以在程序中直接处理掉。
单图测试结束后,对于批量图片的识别也可以秒出结果。测试过程中出现的任何问题,只要喂给 DS ,在自行调整后都能得到解决。
一张图像中会包含很多信息,不同的编码,字体,背景,格式,甚至回车键的使用,都会产生不同的变量,导致机器识别出不同的结果。我相信在 AI 的帮助下,图像识别进程肯定会加速向前;在硬件和软件的帮助下,人的工作效率也会大增。