# 通用印刷体文字
版本 V1.0.0
# 1. 接口定义
# 1.1 接口
URL = http://ip:port/hex/ocrapi/generalocr
其中 ip 为部署机器的 ip 地址,port 为对应服务器的端口
# 1.2 描述
通用印刷体文字识别基于业界领先的深度学习技术,为用户提供图片中文字识别服务。支持自动识别语言种类。主要功能包括:
多语种识别。除中英文外,支持日语、韩语、西班牙语、法语、德语、葡萄牙语、越语、马来语、意大利语、俄语、荷兰语、瑞典语、芬兰语、丹麦语、挪威语、匈牙利语、泰语、印地语等多种语言。
支持多角度检测识别。不仅支持水平方向文字检测识别,还支持竖排文字以及倾斜文字检测识别。
支持文档段落、漫画板式的排版。使排版更加合理,便于阅读。
支持PDF识别。
# 1.3 HTTP请求格式
# 1.3.1 请求参数
属性  |  参数名称  |  必选  |  类型  |  可选值  |  默认值  |  参数描述  | 
固 定 列  |  image  |  和url二选一  |  String  |  无  |  无  |  图像base64编码后的字符串,图像需是JPG、PNG、BMP其中之一的格式  | 
url  |  和image二选一  |  String  |  无  |  无  |  图片url地址,url与image两者填一个即可,同时赋值时,则以url指定的图像作为输入  | |
session_id  |  否  |  String  |  无  |  无  |  用户自定义的唯一会话id  | |
可变  |  language  |  否  |  String  |  auto\zh\jap\kor\  |  zh  |  识别语言类型,支持自动识别  | 
preprocess  |  否  |  Bool  |  false\true  |  true  |  预处理开关,功能是检测图片倾斜的角度,将原本倾斜的图片转正  | |
rotate_180  |  否  |  Bool  |  false\true  |  true  |  旋转开关,主要是在图片检测和识别前,对颠倒的图片进行180度旋转,  | |
detect_text  |  否  |  Bool  |  false\true  |  true  |  文本检测开关,关闭后可直接单行识别  | |
side_detect_short  |  否  |  Int32  |  (0,1000]  |  1000  |  短边尺寸,检测前对图片进行缩放至最短边的最大尺寸  | |
side_detect_long  |  否  |  Int32  |  (0,1500]  |  1500  |  长边尺寸,检测前对图片进行缩放至最长边的最大尺寸  | |
box_layout  |  否  |  Bool  |  false\true  |  false  |  排版开关,功能是将原文本内容的排版输出更加合理(按照文本原来的段落顺序和阅读顺序输出)  | |
ret_image  |  否  |  String  |  无  |  ""  |  默认为空,如果填入"preprocess"字段就会返回预处理后的图像数据(使用base64加密后的字符串)  | |
ret_candword  |  否  |  Bool  |  false\true  |  false  |  候选字开关,开启可返回识别时多个可能的候选字(每个候选字对应其置信度)  | |
enable_location  |  否  |  Bool  |  false\true  |  false  |  单字宽高位置开关,开启可返回单字位置信息(x、y、weight、height)  | |
enable_vtx_detect  |  否  |  Bool  |  false\true  |  false  |  多角度检测开关,开启时最好关闭预处理功能(将预处理开关preprocess置为false  | |
enable_coord_point  |  否  |  Bool  |  false\true  |  false  |  单字四点坐标开关,开启可返回图片中单字的四点坐标  | |
recognize_maxtime  |  否  |  Int32  |  无  |  -1  |  设置识别超时时间(单位:ms),默认:-1,即对超时时间不做限制  | |
enable_table  |  否  |  Bool  |  false\true  |  false  |  表格类型开关,该开关主要针对表格类型内容,打开可让表格类型的排版的输出更加合理  | |
enable_cartoon  |  否  |  Bool  |  false\true  |  false  |  漫画类型开关,该开关主要针对漫画类型内容,打开可让漫画类型的排版的输出更加合理  | |
preprocess_max_angle  |  否  |  Int32  |  [0, 90]  |  -1  |  预处理角度限制开关,默认为-1,设置该角度限制后,如果预处理计算的角度大于该角度,则不旋转图片  | |
enable_pdf_recognize  |  否  |  Bool  |  false\true  |  true  |  开启pdf识别,默认开启  | |
pdf_page_index  |  否  |  Int32  |  [0,正无穷)  |  0  |  pdf页码,从0开始,默认为0  | |
scene  |  否  |  String  |  
  |  ""  |  定制场景参数  | 
# 1.3.2 请求示例
{
 "image": 填写Base64编码后的图片数据,
 "session_id": 填写对应的session_id,
 "options":
 {
   "preprocess": true,
   "rotate_180": true,
   "language": "zh",
   "side_detect_short": 1000,
   "side_detect_long": 1500,
   "ret_candword": true,
   "enable_coord_point": true,
   "enable_location": true,
   "preprocess_max_angle":90
 }
}
 2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 1.3.3 返回参数
属性  |  参数  |  是否必然返回  |  类型  |  参数描述  | 
固 定 列  |  errorcode  |  是  |  Int32  |  错误码  | 
errormsg  |  是  |  string  |  错误码消息  | |
language  |  否  |  string  |  是否返回由options.language决定,当options.language的值为auto(自动识别)时会返回  | |
session_id  |  否  |  string  |  相应请求的session标识符,可用于结果查询  | |
可 变  |  angle  |  是  |  Float  |  图片旋转角度(角度制),文本的水平方向为0°;顺时针为正,逆时针为负  | 
coordpoint  |  是  |  Object  |  文本行在原图中的四点坐标  | |
itemstring  |  是  |  string  |  识别出的文本行字符串  | |
itemconf  |  是  |  Float  |  文本行置信度  | |
parag  |  是  |  Object  |  识别出来的文本行段落信息,包括段落编号parag_no,以及字体大小word_size  | |
itemcoord  |  是  |  Object  |  文本行在旋转纠正之后的图像中的像素坐标,表示为(左上角x, 左上角y,宽width,高height)  | |
words  |  是  |  Array  |  识别出来的单字信息包括单字(包括单字Character和单字置信度confidence)  | |
coords  |  否  |  Array  |  单字在旋转纠正之后的图像中的像素坐标,表示为(左上角x, 左上角y,宽width,高height)  | |
candword  |  否  |  Array  |  候选字符集(包含候选字Character以及置信度Confidence)  | |
wordcoordpoint  |  否  |  Array  |  单字在原图中的四点坐标  | 
# 1.3.4 返回示例
{
 "angle": 0,
 "errormsg": "OK",
 "errorcode": 0,
 "items":
 [{
     "itemstring": "STRAY",
     "wordcoordpoint": [{"x": [278,160,329,159,329,211,277,211]}]
     "itemconf": 0.9655953645706177,
     "coords": [{"y": 159,"x": 277,"height": 53,"width": 53}]
     "itemcoord":
     {
       "y": 575,
       "x": 743,
       "height": 17,
       "width": 103
     },
     "words":
     [{
         "confidence": 0.919134795665741,
         "character": "S"
     }],
     "parag":
     {
         "parag_no": 5,
         "word_size": 13
       },
     "candword":
       [{
         "words":
         [{
           "confidence": 0.9994702935218811,
           "character": "腾"
         }]
       "coordpoint":
         {
           "x": [743, 575, 845, 575, 845, 591, 743, 591]
         }
       }]
 }]
}
 2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# 1.3.5 接口错误码说明
错误码  |  错误码消息  |  错误码说明  | 
-5208  |  OCR_SERVER_INTERN_ERROR  |  服务器内部错误  | 
-1102  |  SDK_IMAGE_DECODE_FAILED  |  图片解码失败  | 
-9004  |  GLOCR_LANGUAGE_NOT_SUPPORT  |  不支持的语言  | 
-9021  |  GLOCR_DETECT_BOX_EMPTY  |  未检测到文本  | 
-9022  |  GLOCR_RECOG_TIMEOUT  |  识别超时  | 
-9003  |  GLOCR_RECOG_FAILED  |  识别失败  | 
← OCR平台接口设计总述 通用手写体文字 →