【不知道起啥名】团队分享TextIn API使用心得-python
TextIn是合合信息旗下的智能文字识别产品,提供图像处理、文字表格识别、文档内容提取等多种OCR云服务。TextIn支持多种技术实现方案,满足不同业务场景的智能识别需求,服务于全球数千家企业及上亿用户。
一、TextIn API的调用
1.TextIn首页总览
手机号注册登录以后进入TextIn总览页面,这里有账号的一些基本信息,如你的账户可用的API剩余额度(右上角)、调用API的appid和secret-code(右下角)。
2.在市场开通服务
在调用需要的API接口之前,需要在产品市场先开通对应API的服务:
3.API调用过程
接下来点击右下角的“API文档”即可进入API文档以及示例代码、API调试页面:
以“通用文字识别API“为例,我直接可以在”API调试“页面上传我要进行识别的图片,我这里上传的是本地的一张图片,在右侧即可在线调用得到JSON结构的文字识别结果,其中的"text"字段就是我要的识别内容字符串了。
二、API示例代码运行
还是以通用文字识别API为例,来运行一下示例代码,根据注释,我们需要把自己账号的appid和secret code对应写到代码中,然后在main函数中设置需要调用API的图片路径,我这里就用'example.jpg'了:
import requests
import json
def get_file_content(filePath):
with open(filePath, 'rb') as fp:
return fp.read()
class CommonOcr(object):
def __init__(self, img_path):
# 请登录后前往 “工作台-账号设置-开发者信息” 查看 x-ti-app-id
# 示例代码中 x-ti-app-id 非真实数据
self._app_id = 'your app_id'
# 请登录后前往 “工作台-账号设置-开发者信息” 查看 x-ti-secret-code
# 示例代码中 x-ti-secret-code 非真实数据
self._secret_code = 'your secret_code'
self._img_path = img_path
def recognize(self):
# 通用文字识别
url = 'https://api.textin.com/ai/service/v2/recognize'
head = {}
try:
image = get_file_content(self._img_path)
head['x-ti-app-id'] = self._app_id
head['x-ti-secret-code'] = self._secret_code
result = requests.post(url, data=image, headers=head)
return result.text
except Exception as e:
return e
if __name__ == "__main__":
response = CommonOcr(r'static/test_img/example.png')
data = json.loads(response.recognize())
texts = [line["text"] for line in data["result"]["lines"]]
print(response.recognize())
我是在Pycharm中运行的,注意pip对应的依赖包,如上所示:
1.创建了一个 CommonOcr类的实例,传入了一个图片文件路径'example.png'。
2.在得到调用识别结果response以后,使用json.loads()函数将返回的JSON格式的识别结果解析为Python字典对象,并赋值给data。
3.在查看字典结构以后,可以根据键名提取其中的文本字符串。
最后输出结果如下:
提取出的texts如下:
得到了识别文本的数据,就能够和更多的API接口做新的产品,比如接入大语言模型,对文本进行总结概括或分析解读。
三、TextIn体验中心
在页面的最上面,点击进入“体验中心”,可以直接体验使用各种功能,不需要进行输入输出格式的转换:
对于这样的手写字体,识别的精确度依然很高。
在与同学、同事、朋友、老师交流时难免遇到对方发过来一张用手机拍摄的带有摩尔纹的照片,这去屏幕纹效果就很好。对于这个功能,是不是也可以与人工智能结合开发出更多的衍生物产品?
四、心得体会
总之,TextIn作为一款智能文字识别产品,为全球用户提供智能图像处理、文字表格识别、文档内容提取的服务,其中的通用文字识别在各种不同环境下都能实现快速、便捷、准确度高的识别,包括横向和纵向文字的混合识别、手写和印刷及其混合识别,还支持52种常见语言以及更多映射语言,此外,API文档对新手小白也很用好,能够直接调用调试,用户体验感良好。