当前位置:
首页
文章
后端
详情

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

写在前面

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

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

通用文字识别是什么技术

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

通用文字识别的技术原理

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

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

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

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

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

通用文字识别 API 使用方法

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

具体使用方式如下:

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

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

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

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

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

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

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

在测试界面中,根据 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 技术是一项十分重要的技术,可以提高数据处理的效率和准确性,将纸质文本转化为数字化文本,从而为数字化转型提供有力支持,APISpace 也提供了身份证识别OCR、银行卡识别OCR、二维码识别OCR、增值税发票识别OCR 等多项OCR 识别接口,感兴趣的小伙伴可以去了解下。

如果你有想要了解的 API 接口或者应用场景,欢迎下面评论留言~

免责申明:本站发布的内容(图片、视频和文字)以转载和分享为主,文章观点不代表本站立场,如涉及侵权请联系站长邮箱:xbc-online@qq.com进行反馈,一经查实,将立刻删除涉嫌侵权内容。

同类热门文章

深入了解C++中的new操作符:使用具体实例学习

C++中的new操作符是动态分配内存的主要手段之一。在程序运行时,我们可能需要动态地创建和销毁对象,而new就是为此提供了便利。但是,使用new也常常会引发一些问题,如内存泄漏、空指针等等。因此,本文将通过具体的示例,深入介绍C++中的new操作符,帮助读者更好地掌握其使用。


深入了解C++中的new操作符:使用具体实例学习

怎么用Java反射获取包下所有类? 详细代码实例操作

Java的反射机制就是在运行状态下,对于任何一个类,它能知道这个类的所有属性和方法;对于任何一个对象,都能调用这个对象的任意一个方法。本篇文章将通过具体的代码示例,展示如何通过Java反射来获取包下的所有类。


怎么用Java反射获取包下所有类? 详细代码实例操作

员工线上学习考试系统

有点播,直播,在线支付,三级分销等功能,可以对学员学习情况的监督监控,有源码,可二次开发。支持外网和局域网私有化部署,经过测试源码完整可用!1、视频点播:视频播放,图文资料,课件下载,章节试学,限时免

员工线上学习考试系统

了解Java中的volati关键字的作用 以及具体使用方法

本篇文章将和大家分享一下Java当中的volatile关键字,下面将为各位小伙伴讲述volatile关键字的作用以及它的具体使用方法。


了解Java中的volati关键字的作用 以及具体使用方法

Java Map 所有的值转为String类型

可以使用 Java 8 中的 Map.replaceAll() 方法将所有的值转为 String 类型: 上面的代码会将 map 中所有的值都转为 String 类型。 HashMap 是 Java

Java Map 所有的值转为String类型