OCR(Optical Character Recognition)即光学字符识别技术,是一种将纸质或电子文档中的印刷文字转化为可编辑和可搜索的数字文本的技术。随着数字化和信息化的快速发展,OCR 技术逐渐成为处理大量纸质或电子文档的主要手段之一,具有广泛的应用前景。
本文将从OCR 技术的关键技术点、应用、优缺点以及推荐优秀的应用API 等角度给大家讲述OCR 相关的内容。
最后一步也是最重要的一步,需要对识别结果进行后处理,提高识别的准确率和鲁棒性。
综上所述,OCR 技术需要通过多个环节的处理和识别,才能够将纸质或电子文档中的印刷文字转化为可编辑和可搜索的数字文本。其中,图像预处理和字符识别是 OCR 技术的两个核心环节。
在文字识别和图像识别方面都具有广泛的应用,可以帮助各种行业和领域实现数字化转型和智能化升级,下面给大家列一些场景的应用场景:
通用文字识别OCR:它多场景、多语种、高精度的整图文字检测和识别服务,多项指标行业领先,可识别中、英、日、韩、法、德多种语言,适可应用于多种领域,比如说、金融服务领域、教育教学领域等等。
身份证识别OCR:支持传入身份证照片,识别照片文字信息并返回,包括姓名、身份证号码、性别、民族、出生年月日、地址、签发机关及有效期,在例如用户注册、实名认证等场景可以广泛适用。
二维码识别OCR:支持识别图片中的二维码、条形码进行检测和识别,返回存储的文字内容、可应用于物流配送、电子票务等场景。
增值税发票识别OCR:识别增值税普票、机动车发票、火车票、PDF电子票、行程单等类型发表的所有关键字段,包括发票基本信息、销售方及购买方信息、商品信息、价税信息等,其中五要素识别准确率超过99%。
银行卡识别OCR:结构化识别多款主流银行卡的卡号、有效期、发卡行、卡片类型、持卡人5个关键字段,识别准确率超过99%
驾驶证识别OCR:支持对驾驶证自动识别,并提取姓名、性别、国籍等驾驶证实体信息。
车牌识别OCR:识别中国大陆各类机动车车牌信息,支持蓝牌、黄牌(单双行)等。
行驶证识别OCR:支持识别行驶证正副本信息,包含号牌号码、所有人、车辆类型、品牌型号、住址、发动机号码、车辆识别代号、注册日期、发证日期、使用性质等信息。
APISpace 是国内一个较大的 API 供应平台,提供多种类型的 API 接口,包括手机号码归属地查询 API 、天气预报查询API、手机在网状态 API 、反欺诈(羊毛盾)API 以及当前比较热门的 AI 绘画 API 等等,选择性比较多。
以接入 APISpace 的 【通用文字识别 OCR】 API 为例,具体使用方式如下:
进入 【通用文字识别OCR】详情页,点击【免费试用】,即可唤起注册按钮。
注册成功后,我们在页面导航菜单点击 【我的 API】进入 【访问控制】页面,即可看到平台提供的密钥。
回到 【通用文字识别OCR】详情页,再次点击【免费试用】,我们可以在获得一定次数的免费调用权限,并且进入测试界面。
在测试界面中,根据 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"
}
在Java 程序中,我们可直接复制以下代码接入通用文字识别OCR 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 技术还可以实现智能化处理,如自动分类、自动标注等。