合合信息TextIn服务使用心得

2024-01-30 17:36

本文主要是介绍合合信息TextIn服务使用心得,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

    • 一、前言
    • 二、TextIn简介
      • 2.1、通用文字识别
      • 2.2、国内通用票据识别
      • 2.3、通用表格识别
    • 三、项目案例
      • 3.1、application.yml
      • 3.2、TextInService
      • 3.3、TextInController
      • 3.4、测试
    • 四、总结

一、前言

智能图像处理、文字表格识别、文档内容提取产品的背景源自于人工智能技术的快速发展和广泛应用。随着计算机视觉和自然语言处理技术的不断进步,人工智能在图像处理和文字识别领域取得了巨大的突破,使得这些产品能够实现更加精准和高效的功能。

  • 在图像处理方面,智能图像处理产品能够识别图像中的各种物体、场景和特征,并进行自动标注和分类。这使得用户能够快速找到他们需要的信息,提高工作效率。同时,这些产品还能够对图像进行修复和增强,提高图像的质量和清晰度。
  • 在文字表格识别方面,这些产品能够识别图像中的文字和表格,并将其转换为可编辑的文档。这使得用户能够方便地提取图像中的文字信息,编辑和分享文档内容。同时,这些产品还能够识别表格中的数据,并将其转换为可编辑的电子表格,方便用户进行数据分析和处理。
  • 在文档内容提取方面,这些产品能够自动提取文档中的关键信息和内容,并进行分类和整理。这使得用户能够快速找到他们需要的信息,节省时间和精力。同时,这些产品还能够将文档内容转换为可编辑的电子文档,方便用户进行编辑和分享。

二、TextIn简介

合合信息是一家人工智能及大数据科技企业,基于自主研发的领先的智能文字识别及商业大数据核心技术,为全球C端用户和多元行业B端客户提供数字化、智能化的产品及服务。C端业务主要为面向全球个人用户的APP产品,包括扫描全能王(智能扫描及文字识别APP)、名片全能王(智能名片及人脉管理APP)、启信宝(企业商业信息查询APP)3款核心产品;公司B端业务为面向企业客户提供以智能文字识别、商业大数据为核心的服务,形成了包括基础技术服务、标准化服务和场景化解决方案的业务矩阵,满足客户降本增效、风险管理、智能营销等多元需求,助力客户实现数字化与智能化的转型升级。凭借领先的自主研发技术、成熟的产品落地能力、优质的用户体验及服务质量,公司的C端产品覆盖了全球百余个国家和地区的亿级用户,B端服务覆盖了近30个行业的企业客户。在B端业务方面,公司智能文字识别与商业大数据服务已覆盖了银行、证券、保险、政府、物流、制造、地产、零售等近30个行业的众多头部客户。《财富》杂志2022年发布的世界500强公司名单中,公司客户已覆盖超过125家。

TextIn是上海合合信息科技股份有限公司旗下智能文字识别云服务平台
官网地址:https://www.textin.com
为全球用户提供智能图像处理、文字表格识别、文档内容提取产品
其提供的服务及其丰富,几乎可以满足多有开发者关于智能图像处理、文字识别等的需求。
在这里插入图片描述
关键的是TextIn提供的API控制台简洁易用,对于资历不深的开发者十分友好。
下面我来列举几个其公司提供的产品服务。

2.1、通用文字识别

基于自研的文字识别技术,覆盖文字、文档、表格、印章、二维码、公式等多种通用场景,提供全球50+主流语言的印刷体、手写体的高精度识别能力。可用于纸质文档电子化、办公文档/报表识别、教育类文本识别、快递面单识别等场景。

识别普通文字:

在这里插入图片描述

效果如下:
可以看到每种文字都被准确的识别出来,
在这里插入图片描述

除了普通文字识别,同时支持印刷体、手写体、倾斜、折叠、旋转等

识别印刷体:

在这里插入图片描述

效果如下:

在这里插入图片描述

识别手写体:
在这里插入图片描述
效果如下:
在这里插入图片描述
可以看到无论是普通文字、印刷体、手写体,识别效果都十分的好。

2.2、国内通用票据识别

支持对多种票据类型(多票据)票据切分、票据分类、票据识别,包括增值税普通发票、增值税普通发票(卷票)、增值税专用发票、增值税电子专用发票、增值税电子普通发票、货物运输业增值税专用发票(仅支持分类不做识别)、机动车销售统一发票、二手车销售统一发票、通用机打发票、通用定额发票、旅客运输普票、公路客运发票、船运客票、出租车发票、停车费发票、过路过桥费发票、教育费收据(仅支持分类不做识别)、行程单、火车票、增值税销货清单和其他可报销票据。

样本数据:
在这里插入图片描述

识别效果:

在这里插入图片描述

2.3、通用表格识别

通用表格识别适用于带有表格的文档图像
上传图片返回表格区域分析后的文字识别结果以及表格外区域的其他文字识别结果

样本数据:

在这里插入图片描述

识别效果:

在这里插入图片描述

三、项目案例

在我们的项目中,需要将用户上传的图片中的文字交给大模型来处理,这样就需要用到文字识别技术,合合信息TextIn服务正好满足我们的需求,并且合合信息TextIn服务的通用文字识别服务API调用简单,有详细的API说明文档和示例代码,在开发过程中极大的节省了我们的时间。
在这里插入图片描述

在示例代码中,支持多种主流的语言:Java、C#、python、Node.js、PHP以及HTML

在这里插入图片描述

合合信息TextIn服务还支持在线调试功能

  • 实时监控和分析API请求和响应数据,帮助开发人员快速定位和解决问题。
  • 可以模拟不同的请求参数和环境,方便开发人员测试和调试API接口

在这里插入图片描述

下面我来用Java语言举一个使用合合信息TextIn服务的例子

我们以通用文字识别为例

我们创建一个SpringBoot项目,在配置文件中写入一下信息:

3.1、application.yml

# 应用服务 WEB 访问端口
server:port: 8888# TextIn服务参数
textin:appid: 你的appidsecretcode: 你的secretcode

3.2、TextInService

接下来我们编写通用文字识别的逻辑代码,其本质是调用TextInAPI代码如下:

package com.csust.medicalassistant.service.impl;import cn.hutool.core.io.FileUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.csust.medicalassistant.common.CommonResult;
import com.csust.medicalassistant.dto.MessageDTO;
import com.csust.medicalassistant.dto.TextDTO;
import com.csust.medicalassistant.service.TextInService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;import java.io.*;
import java.util.HashMap;
import java.util.Map;/*** @author niuben*/
@Slf4j
@Service
public class TextInServiceImpl implements TextInService {@Value("${textin.appid}")public String appId;@Value("${textin.secretcode}")public String secretCode;@Overridepublic JSONObject imgToText(String imgPath) {byte[] imgData = readfile(imgPath);// 通用文字识别String url = "https://api.textin.com/ai/service/v2/recognize";// 添加请求头信息Map<String, String> heads = new HashMap<>();// 使用json发送请求,下面的是必须的heads.put("connection", "Keep-Alive");heads.put("Content-Type", "application/octet-stream");heads.put("x-ti-app-id", appId);heads.put("x-ti-secret-code", secretCode);/**** headerMap是添加的请求头,body是传入的参数,这里选择json,后端使用@RequestBody接收ERNIE-Bot 4.0*/HttpResponse response = HttpRequest.post(url).headerMap(heads, false).body(imgData).timeout(5 * 60 * 1000).execute();// 数据解析JSONObject jsonResponse = JSONUtil.parseObj(response.body());JSONObject result = (JSONObject) jsonResponse.get("result");return result;}public static byte[] readfile(String path){String imgFile = path;InputStream in = null;byte[] data = null;try{in = new FileInputStream(imgFile);data = new byte[in.available()];in.read(data);in.close();}catch (IOException e) {e.printStackTrace();}return data;}}

3.3、TextInController

然后我们定义接口

package com.csust.medicalassistant.controller;import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.csust.medicalassistant.common.CommonResult;
import com.csust.medicalassistant.service.TextInService;
import com.csust.medicalassistant.utils.ImageUtil;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;import javax.annotation.Resource;/*** @author niuben*/
@RestController
public class TextInController {@Resourceprivate TextInService textInService;@Resourceprivate ImageUtil imageUtil;@ApiOperation("文字识别")@PostMapping("/getinfo")public CommonResult<Object> imageToJson(MultipartFile file){//上传图片String imgPath = imageUtil.uploadImgToLocal(file);//图片识别JSONObject result = textInService.imgToText(imgPath);return CommonResult.success(JSONUtil.toJsonStr(result));}}

3.4、测试

样本图片
在这里插入图片描述
识别效果:

可以看到识别效果准确率很高

在这里插入图片描述

四、总结

总的来说合合信息的TextIn服务对于开发者来说十分友好,不仅提供的服务丰富,并且使用起来简单易上手,其识别的准确率极高,几乎上可以满足有关文字和图片处理的所有需求,强烈推荐给大家使用,再放一下官网地址:
https://www.textin.com

这篇关于合合信息TextIn服务使用心得的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/661010

相关文章

使用Python和Pyecharts创建交互式地图

《使用Python和Pyecharts创建交互式地图》在数据可视化领域,创建交互式地图是一种强大的方式,可以使受众能够以引人入胜且信息丰富的方式探索地理数据,下面我们看看如何使用Python和Pyec... 目录简介Pyecharts 简介创建上海地图代码说明运行结果总结简介在数据可视化领域,创建交互式地

Java Stream流使用案例深入详解

《JavaStream流使用案例深入详解》:本文主要介绍JavaStream流使用案例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录前言1. Lambda1.1 语法1.2 没参数只有一条语句或者多条语句1.3 一个参数只有一条语句或者多

Java Spring 中 @PostConstruct 注解使用原理及常见场景

《JavaSpring中@PostConstruct注解使用原理及常见场景》在JavaSpring中,@PostConstruct注解是一个非常实用的功能,它允许开发者在Spring容器完全初... 目录一、@PostConstruct 注解概述二、@PostConstruct 注解的基本使用2.1 基本代

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

springboot使用Scheduling实现动态增删启停定时任务教程

《springboot使用Scheduling实现动态增删启停定时任务教程》:本文主要介绍springboot使用Scheduling实现动态增删启停定时任务教程,具有很好的参考价值,希望对大家有... 目录1、配置定时任务需要的线程池2、创建ScheduledFuture的包装类3、注册定时任务,增加、删

使用Python实现矢量路径的压缩、解压与可视化

《使用Python实现矢量路径的压缩、解压与可视化》在图形设计和Web开发中,矢量路径数据的高效存储与传输至关重要,本文将通过一个Python示例,展示如何将复杂的矢量路径命令序列压缩为JSON格式,... 目录引言核心功能概述1. 路径命令解析2. 路径数据压缩3. 路径数据解压4. 可视化代码实现详解1

Pandas透视表(Pivot Table)的具体使用

《Pandas透视表(PivotTable)的具体使用》透视表用于在数据分析和处理过程中进行数据重塑和汇总,本文就来介绍一下Pandas透视表(PivotTable)的具体使用,感兴趣的可以了解一下... 目录前言什么是透视表?使用步骤1. 引入必要的库2. 读取数据3. 创建透视表4. 查看透视表总结前言

Python 交互式可视化的利器Bokeh的使用

《Python交互式可视化的利器Bokeh的使用》Bokeh是一个专注于Web端交互式数据可视化的Python库,本文主要介绍了Python交互式可视化的利器Bokeh的使用,具有一定的参考价值,感... 目录1. Bokeh 简介1.1 为什么选择 Bokeh1.2 安装与环境配置2. Bokeh 基础2

Android使用ImageView.ScaleType实现图片的缩放与裁剪功能

《Android使用ImageView.ScaleType实现图片的缩放与裁剪功能》ImageView是最常用的控件之一,它用于展示各种类型的图片,为了能够根据需求调整图片的显示效果,Android提... 目录什么是 ImageView.ScaleType?FIT_XYFIT_STARTFIT_CENTE

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen