从图片提取文字的终极解决方法 ——通用文字识别 API

Posted 海碗吃饭

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从图片提取文字的终极解决方法 ——通用文字识别 API相关的知识,希望对你有一定的参考价值。

写在前面

相信你用过类似对进行图片中的文字提取的功能,但是你了解过背后的原理吗?

本文将从图片中文字提取的原理以及应用案例等多方面进行讲述,希望一文能为你讲透通用文字识别。

通用文字识别是什么技术

随着信息化和数字化的发展,大量的文字信息产生和传播,这些信息需要被整理和分析。通用文字识别技术,也称为OCR(Optical Character Recognition,光学字符识别),就是一种将图像或扫描件中的文字识别出来并转化为可编辑、可搜索的数字化文本的技术。

通用文字识别的技术原理

OCR技术 的主要原理是将图片或扫描件转化为二值图像,然后利用图像处理算法对图像进行预处理,如去噪、二值化、分割、特征提取等操作。接下来,利用模式匹配和机器学习等方法对文字进行识别,并输出识别结果。OCR技术的精度和速度取决于预处理、识别算法的复杂度和识别引擎的性能等因素。

挖掘通用文字识别的应用场景

通用文字识别可以应用在多种场景,用得好能帮助用户解决很多痛点问题,如在以下领域上,通用文字识别技术能提供非常大的帮助,包括:

  • 文字识别和翻译:识别图片中的文字,并将其翻译成其他语言。
  • 金融服务:识别和处理客户的身份证、银行卡、票据等文档。
  • 教育教学:数字化教材、试卷和笔记。
  • 医疗健康:识别和转换医学报告、病历和处方等文档。
  • 商业营销:识别广告宣传物料上的文字。
  • 社交娱乐:识别和处理用户上传的图片和视频。
  • 人工智能辅助:收集大量的文本数据,进行训练和算法优化。

通用文字识别 API 使用方法

讲透通用文字识别技术之后,如何找到并将这项技术应用在自己的应用里面呢。在这里推荐 APISpace 的 【通用文字识别】 API ,它支持多场景、多语种、高精度的整图文字检测和识别服务,多项指标行业领先,可识别中、英、日、韩、法、德多种语言。

具体使用方式如下:

1.注册并获取通用文字识别 API 密钥

进入 【通用文字识别 API】详情页,点击【免费试用】,即可唤起注册按钮。

注册成功后,我们在页面导航菜单点击 【我的 API】进入 【访问控制】页面,即可看到平台提供的密钥。

2.在线测试调用 API 进行文字识别

回到 【通用文字识别 API】详情页,再次点击【免费试用】,我们可以在获得一定次数的免费调用权限,并且进入测试界面。

在测试界面中,根据 API 接口文档中的要求,输入图片地址

如我们输入

API 返回的识别结果如下:

    "words_result": [
        "word": "桃花历乱李花香",
        "location": [
            [978, 218],
            [1046, 218],
            [1046, 810],
            [978, 810]
        ]
    , 
        "word": "草色青青柳色黄",
        "location": [
            [1088, 211],
            [1156, 210],
            [1160, 810],
            [1092, 810]
        ]
    , 
        "word": "春日偏能惹恨长",
        "location": [
            [748, 219],
            [816, 218],
            [822, 810],
            [754, 810]
        ]
    , 
        "word": "东风不为吹愁去",
        "location": [
            [862, 219],
            [930, 218],
            [932, 806],
            [864, 806]
        ]
    , 
        "word": "春思",
        "location": [
            [1238, 218],
            [1332, 218],
            [1332, 447],
            [1238, 447]
        ]
    , 
        "word": "贾至",
        "location": [
            [624, 697],
            [666, 697],
            [666, 806],
            [624, 806]
        ]
    ],
    "words_count": 6,
    "log_id": "1e165580-cde1-11ed-989b-000000003532"

哇,识别结果着实非常精确,感兴趣的小伙伴赶快去体验一下。

在程序中接入通用文字识别 API

在Java 程序中,我们可直接复制以下代码接入通用文字识别 API

OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, ""image":"","url":"https://data-apibee.apispace.com/license/1678270527930990ebabe-a570-44ca-9966-b892d2bb6df8","language":"CHN_ENG"");
Request request = new Request.Builder()
  .url("https://eolink.o.apispace.com/ocrbase/ocr/v1/base")
  .method("POST",body)
  .addHeader("X-APISpace-Token","替换自己的 API 密钥")
  .addHeader("Authorization-Type","apikey")
  .addHeader("Content-Type","application/json")
  .build();

Response response = client.newCall(request).execute();
System.out.println(response.body().string());

使用OCR文字识别软件将图中文字识别提取出来的方法

有时候我们上网看见了一些文字图片,上面的内容自己很喜欢,想要将文字保存下来,但是大家都知道图片上面的文字是不可以直接进行复制粘贴的,那这时候就需要识别提取图中文字了,具体怎样去操作呢?下面小编将在文字识别软件中为大家讲解下具体的操作方法。

  使用工具:迅捷OCR文字识别软件

  步骤一、首先需要将文字图片保存在电脑桌面,方便待会识别查找。
技术分享图片
  步骤二、在电脑中将迅捷OCR文字识别软件打开,没有的话可自行下载安装一个,打开后就进入到了整个软件的基本界面,选择图片局部识别这个版块。
技术分享图片
  步骤三、进入图片局部识别版块后,点击添加文件按钮就可以将刚开始保存的图片添加进来了,在这里图片是支持JPG、BMP、PNG格式的。
技术分享图片
  步骤四、图片添加进来后,在软件左下角有个输出目录的地方,也就是待会识别好的文件保存位置,可以自行选择保存在电脑中的什么地方。
技术分享图片
  步骤五、下方有一排小工具,可以利用这些工具来调整一下图片的位置和大小,将图片调整合适后将有利于后面的识别。
技术分享图片
  步骤六、上述步骤全都完成之后,就可以点击工具栏中的框选工具,拖动鼠标在图片中框选出想要进行识别的局部区域,然后软件将自动去提取文字了。
技术分享图片
  步骤七、提取出来的文字会显示在右边的方框里面,这时候可以检查一下识别的效果,如果觉得没什么问题的话就可以点击右下角保存为TXT按钮了,整个步骤进行到这里就结束了。
技术分享图片
  上述的这种文字识别提取的方法是不是很简单呢?你们学会了没有呢?

以上是关于从图片提取文字的终极解决方法 ——通用文字识别 API的主要内容,如果未能解决你的问题,请参考以下文章

使用OCR文字识别软件将图中文字识别提取出来的方法

如何快速识别提取图片上的文字

怎么把word2016中,大量图片里的文字提取出来?

将图片局部文字提取出来的小技巧

Python • 图片识别pytesseract快速识别提取图片中的文字

请问有没有能把图片里的文字和表格直接提取出来的软件?