OCR文字识别 - docai.xueersi.com
Transcript of OCR文字识别 - docai.xueersi.com
HI,您好,欢迎使用学而思网校AI开放平台OCR文字识别接口服务。
本文档主要针对需要集成HTTP API的技术研发工程师,详细描述OCR文字识别能力相关的技术内容。您可以通过快速接入或安全接入使用此AI能力。
接口名称 接口能力简要描述 api 地址
OCR文字识别 检测上传图像中的文字,进行 AI 文字识别 http://openapiai.xueersi.com/v1/api/img/ocr/general
任意操作系统,任意编程语言,均可以通过http或https调用本接口。
图像数据支持两种形式发送:URL 网络上的图片 URL 地址
图片数据 请求图片需经过base64编码:图片的base64编码指将一副图片编码成字符串数据,便于网络传输请求。您可以首先得到图片的二进制,进行base64编码后,然后再进行urlencode(注意你所使用的网络工具或网络库有没有默认的urlencode功能,如果没有,需要你自己显式转化)。转码方式可参考base64示例。
注意: 图片的base64编码是不包含图片头的,如(data:image/jpg;base64,)
图片大小 不能大于4MB长边不能超过4096px短边不能小于15px
图像数据支持以下原生类型:jpgpngjpegbmp
目前,OCR识别接口服务支持多种类型文字,包括:
1. 中文打印体识别2. 英文打印体识别3. 表格识别4. 拼音识别
OCR文字识别简介
接口能力
适用范围图像发送方式
图像类型支持
文字识别范围
请求 URL:http://openapiai.xueersi.com/v1/api/img/ocr/general
Header 如下:
参数名 赋值Content-Type application/x-www-form-urlencoded
在请求 API 的 post 请求参数中含有图片url地址或base64字符。url地址 或 base64 字符作为参数传递时,需要把 中文 以及 '/' 做一下编码,防止解析中出现歧义,从而符合url的规范。
将中文 以及 '/' 转换为百分号编码形式,这就是 urlencode 格式化操作。
参数名 类型 是否必选 赋值说明 样例 备注
app_key string 是 应用标识 8102b22a5e81e840176d9f381ec6f837
img string
是 图像数据 https://i.loli.net/2019/03/22/5c94684fad743.jpg或 图像 base64数据:示例数据较长,见附件base64.txt
图像base64字符串 / 图像URL
img_type string 是 图像形式 URL base64 / URL
recog_formula int 否 是否识别公式 0 -识别 | 1-不识别 ,默认0
请求方式HTTP 方法:POST
注意: Content-Type为application/x-www-form-urlencoded,然后通过urlencode格式化请求体。
urlencode介绍
部分语言的第三方包内部做了 urlencode 编码,不进行 urlencode 格式化也可以正常进行 API 请求,但 是进行 urlencode 格式化之后,一定可以通过请求。所以我们推荐您对请求体中的参数进行 urlencode 操作。
快速接入方式请求参数详情
HTTP 代码示例:
cURL 代码示例:
PHP 代码示例:
请求代码示例POST /v1/api/img/ocr/general HTTP/1.1
Host: openapiai.xueersi.com
Content-Type: application/x-www-form-urlencodedcache-control: no-cache
app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3a%2f%2fi.loli.net%2f2019%2f03%2f22%2f5c94684fad743.jpg&img_type=URL
curl -X POST \
http://openapiai.xueersi.com/v1/api/img/ocr/general \ -H 'Content-Type: application/x-www-
form-urlencoded' \
-H 'cache-control: no-cache' \ -d
'app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3a%2f%2fi.loli.net%2f2019%2f03%2f22%2f5c94684fad743.jpg&img_type=URL'
PHP DEMO Quick下载
<?php
$curl = curl_init();
curl_setopt_array($curl, array( CURLOPT_URL =>
"http://openapiai.xueersi.com/v1/api/img/ocr/general",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS =>
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3a%2f%2fi.loli.net%2f2019%2f03%2f22%2f5c94684fad743.jpg&img_type=URL",
CURLOPT_HTTPHEADER => array(
"Content-Type: application/x-www-form-urlencoded",
"cache-control: no-cache"
),
Python(Python3) 代码示例:
URL传参方式:
base64传参方式:
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import http.client
conn = http.client.HTTPConnection("openapiai.xueersi.com")
payload =
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL"
headers = {
'Content-Type': "application/x-www-form-urlencoded",
'cache-control': "no-cache",
}
conn.request("POST", "/v1/api/img/ocr/general/", payload, headers)
res = conn.getresponse()
data = res.read()
#python2.7
#print(data)
#python3.6
print(data.decode("utf-8"))conn.close()
import http.client
import urllib
import base64
from urllib import quote
with open('./test.jpg', 'rb') as bin_data:
C++(LibCurl) 代码示例:
Java 代码示例:
image_data = bin_data.read()image_data_base64 = base64.b64encode(image_data)
image_data_base64 = quote(image_data_base64)conn =
http.client.HTTPConnection("openapiai.xueersi.com")appkey_string =
'app_key=8102b22a5e81e840176d9f381ec6f837'img_string = 'img=' + image_data_base64
img_type_string = 'img_type=base64'payload = appkey_string + '&' + img_string + '&' +
img_type_string
headers = {
'Content-Type': "application/x-www-form-urlencoded",
'cache-control': "no-cache",
}
conn.request("POST", "/v1/api/img/ocr/general/", payload, headers)res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))conn.close()
C++ DEMO下载
以上 C++ DEMO 依赖 libcurl 库。参考链接:https://curl.haxx.se/libcurl/features.html#thread
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");curl_easy_setopt(hnd, CURLOPT_URL,
"http://openapiai.xueersi.com/v1/api/img/ocr/general");
struct curl_slist *headers = NULL;headers = curl_slist_append(headers, "cache-control: no-
cache");headers = curl_slist_append(headers, "Content-Type: application/x-www-form-
urlencoded");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS,
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3a%2f%2fi.loli.net%2f2019%2f03%2f22%2f5c94684fad743.jpg&img_type=URL");
CURLcode ret = curl_easy_perform(hnd);
JavaScript 代码示例:
Andriod DEMO下载
public static void QuickConnect(){
new Thread(new Runnable() {
@Override
public void run() {
try { Map<String, String> params = new HashMap<String,
String>(); params.put("app_key",
"8102b22a5e81e840176d9f381ec6f837");
params.put("img","https://i.loli.net/2019/03/22/5c94684fad743.jpg");
params.put("img_type","URL");
Log.i(TAG,"start post"); String result =
HttpUtil.sendPostMessage(params,"utf-8"); System.out.println("result-
>"+result);
}catch(Exception e)
{
e.printStackTrace();
}
}
}).start();
}
JavaScript DEMO Quick下载
var settings = {
"async": true,
"crossDomain": true,
"url": "http://openapiai.xueersi.com/v1/api/img/ocr/general",
"method": "POST",
"headers": {
"Content-Type": "application/x-www-form-urlencoded",
Go 代码示例:
C# 代码示例:
"cache-control": "no-cache",
},
"data": {
"app_key": "8102b22a5e81e840176d9f381ec6f837", "img":
"https://ai.xueersi.com/textRecognition/images/22.jpg",
"img_type": "URL"
}
}
$.ajax(settings).done(function (response) {
console.log(response);
});
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "http://openapiai.xueersi.com/v1/api/img/ocr/general"
payload :=
strings.NewReader("app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")req.Header.Add("cache-
control", "no-cache")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
C# DEMO下载
using System;
using System.IO;
using System.Net;
using System.Text;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
string celerityPost = CelerityPost(); Console.WriteLine("快速接入方式:\n" +
celerityPost);
Console.ReadLine();
}
private static string CelerityPost()
{ string url =
"http://openapiai.xueersi.com/v1/api/img/ocr/general";//URL地址 string payload =
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL";
CookieContainer cookieContainer = new CookieContainer();
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.ContentLength = Encoding.UTF8.GetByteCount(payload);
webRequest.ContentType = "application/x-www-form-urlencoded";//Content-Type
webRequest.CookieContainer = cookieContainer; webRequest.Method =
"post";
Stream request = webRequest.GetRequestStream(); StreamWriter
streamWriter = new StreamWriter(request, Encoding.GetEncoding("gb2312"));
streamWriter.Write(payload);
streamWriter.Close(); HttpWebResponse response =
(HttpWebResponse)webRequest.GetResponse(); response.Cookies =
cookieContainer.GetCookies(response.ResponseUri); Stream returnStream =
response.GetResponseStream(); StreamReader streamReader = new
StreamReader(returnStream, Encoding.GetEncoding("utf-8")); string endResult =
streamReader.ReadToEnd();//返回结果
微信小程序 代码示例:
iOS 代码示例:
streamReader.Close();
returnStream.Close();
return endResult;
}
}
}
wx.request({
url: 'http://openapiai.xueersi.com/v1/api/img/ocr/general',
method: "post",
data:
{
app_key: "8102b22a5e81e840176d9f381ec6f837", img:
"https://ai.xueersi.com/textRecognition/images/22.jpg",
img_type: "URL",
},
header: {
"content-type": "application/x-www-form-urlencoded",
},
success(res) {
console.log(res.data)
}
})
iOS DEMO下载
NSURLSession *session = [NSURLSession sharedSession];NSString *urlStr =
@"http://openapiai.xueersi.com/v1/api/img/ocr/general";NSURL *url = [NSURL
URLWithString:urlStr];NSMutableURLRequest *request = [NSMutableURLRequest
requestWithURL:url];
request.HTTPMethod = @"POST";NSString *app_key = @"app_key=8102b22a5e81e840176d9f381ec6f837";
参数名 类型 是否必选 赋值说明 样例 备注app_key string 是 应用标识 8102b22a5e81e840176d9f381ec6f837
time_stamp string 是 秒级时间戳 1493468759 安全接入必备,用于唯一地标识某一刻的时间
nonce_str string 是 随机字符串 dd599ef889859f9fe 安全接入必备
sign string 是 签名信息 99880aabb33f4def5c875875b6bdc3b1安全接入必备
img string
是 图像数据 https://ai.xueersi.com/textRecognition/images/22.jpg或 图像 base64数据:示例数据较长,见附件base64.txt
图像base64字符串 / 图像URL
img_type string 是 图像形式 URL base64 / URL
recog_formula int 否 是否识别公式 0 -识别 | 1-不识别 ,默认0
HTTP 代码示例:
cURL 代码示例:
NSString *img = @"img=https://ai.xueersi.com/textRecognition/images/22.jpg";NSString
*img_type = @"img_type=URL";NSString *paramsStr = [NSString stringWithFormat:@"%@&%@&%@",
app_key, img, img_type];request.HTTPBody = [paramsStr
dataUsingEncoding:NSUTF8StringEncoding];[request setValue:@"application/x-www-form-
urlencoded" forHTTPHeaderField:@"Content-Type"];NSURLSessionDataTask *dataTask = [session
dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse *
_Nullable response, NSError * _Nullable error) { NSDictionary *dict =
[NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];
NSLog(@"result=%@",dict);
}];
[dataTask resume];
安全接入方式请求参数详情
请求代码示例POST /v1/api/img/ocr/general HTTP/1.1
Host: openapiai.xueersi.com
Content-Type: application/x-www-form-urlencodedcache-control: no-cache
app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a
curl -X POST \
http://openapiai.xueersi.com/v1/api/img/ocr/general \ -H 'Content-Type: application/x-www-
PHP 代码示例:
Python(Python3) 代码示例:
URL传参方式:
form-urlencoded' \
-H 'cache-control: no-cache' \ -d
'app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a'
PHP DEMO下载
<?php
$curl = curl_init();
curl_setopt_array($curl, array( CURLOPT_URL =>
"http://openapiai.xueersi.com/v1/api/img/ocr/general",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS =>
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a",
CURLOPT_HTTPHEADER => array(
"Content-Type: application/x-www-form-urlencoded",
"cache-control: no-cache"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
base64传参方式:
import http.client
conn = http.client.HTTPConnection("openapiai.xueersi.com")
payload =
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a"
headers = {
'Content-Type': "application/x-www-form-urlencoded",
'cache-control': "no-cache",
}
conn.request("POST", "/v1/api/img/ocr/general/", payload, headers)
res = conn.getresponse()
data = res.read()
#python2.7
#print(data)
#python3.6
print(data.decode("utf-8"))conn.close()
import http.client
import urllib
import base64
from urllib import quote
with open('./test.jpg', 'rb') as bin_data:
image_data = bin_data.read()image_data_base64 = base64.b64encode(image_data)
image_data_base64 = quote(image_data_base64)conn =
http.client.HTTPConnection("openapiai.xueersi.com")appkey_string =
'app_key=8102b22a5e81e840176d9f381ec6f837'img_string = 'img=' + image_data_base64
img_type_string = 'img_type=base64'payload = appkey_string + '&' + img_string + '&' +
img_type_string +
'&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a'
headers = {
'Content-Type': "application/x-www-form-urlencoded",
'cache-control': "no-cache",
}
conn.request("POST", "/v1/api/img/ocr/general/", payload, headers)res = conn.getresponse()
data = res.read()
C++(LibCurl) 代码示例:
Java 代码示例:
print(data.decode("utf-8"))conn.close()
C++ DEMO下载
以上 C++ DEMO 依赖 libcurl 库。参考链接:https://curl.haxx.se/libcurl/features.html#thread
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");curl_easy_setopt(hnd, CURLOPT_URL,
"http://openapiai.xueersi.com/v1/api/img/ocr/general");
struct curl_slist *headers = NULL;headers = curl_slist_append(headers, "cache-control: no-
cache");headers = curl_slist_append(headers, "Content-Type: application/x-www-form-
urlencoded");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS,
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a");
CURLcode ret = curl_easy_perform(hnd);
Andriod DEMO下载
JavaScript 代码示例:
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");RequestBody body
= RequestBody.create(mediaType,
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a");
Request request = new Request.Builder()
.url("http://openapiai.xueersi.com/v1/api/img/ocr/general")
.post(body)
.addHeader("Content-Type", "application/x-www-form-urlencoded") .addHeader("cache-
control", "no-cache")
.build();
Response response = client.newCall(request).execute();
JavaScript DEMO下载
var settings = {
"async": true,
"crossDomain": true,
"url": "http://openapiai.xueersi.com/v1/api/img/ocr/general",
"method": "POST",
"headers": {
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
},
"data": {
"app_key": "8102b22a5e81e840176d9f381ec6f837", "img":
"https://ai.xueersi.com/textRecognition/images/22.jpg",
"img_type": "URL",
"time_stamp": "1551174536",
"nonce_str": "W8FI8oCp",
"sign": "c08d8f9900479a3b2a348c1d7dc7e918e71be66a"
}
}
$.ajax(settings).done(function (response) {
Go 代码示例:
C# 代码示例:
console.log(response);
});
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "http://openapiai.xueersi.com/v1/api/img/ocr/general"
payload :=
strings.NewReader("app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")req.Header.Add("cache-
control", "no-cache")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
C# DEMO下载
using System;
using System.IO;
using System.Net;
using System.Text;
namespace ConsoleApp1
微信小程序 代码示例:
{
class Program
{
static void Main(string[] args)
{
string safetyPost = SafetyPost(); Console.WriteLine("安全接入方式:\n" +
safetyPost);
Console.ReadLine();
}
private static string SafetyPost()
{ string url =
"http://openapiai.xueersi.com/v1/api/img/ocr/general";//URL地址 string payload =
"app_key=8102b22a5e81e840176d9f381ec6f837&img=https%3A%2F%2Fai.xueersi.com%2FtextRecognition%2Fimages%2F22.jpg&img_type=URL&time_stamp=1551174536&nonce_str=W8FI8oCp&sign=7d15e530e58fcf3a020ec69b48d951010fa49322";
CookieContainer cookieContainer = new CookieContainer();
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.ContentLength = Encoding.UTF8.GetByteCount(payload);
webRequest.ContentType = "application/x-www-form-urlencoded";//Content-Type
webRequest.CookieContainer = cookieContainer; webRequest.Method =
"post";
Stream request = webRequest.GetRequestStream(); StreamWriter
streamWriter = new StreamWriter(request, Encoding.GetEncoding("gb2312"));
streamWriter.Write(payload);
streamWriter.Close(); HttpWebResponse response =
(HttpWebResponse)webRequest.GetResponse(); response.Cookies =
cookieContainer.GetCookies(response.ResponseUri); Stream returnStream =
response.GetResponseStream(); StreamReader streamReader = new
StreamReader(returnStream, Encoding.GetEncoding("utf-8")); string endResult =
streamReader.ReadToEnd();//返回结果
streamReader.Close();
returnStream.Close();
return endResult;
}
}
}
iOS 代码示例:
wx.request({
url: 'http://openapiai.xueersi.com/v1/api/img/ocr/general',
method: "post",
data:
{
app_key: "8102b22a5e81e840176d9f381ec6f837", img:
"https://ai.xueersi.com/textRecognition/images/22.jpg",
img_type: "URL",
time_stamp: "1551174536",
nonce_str: "W8FI8oCp", sign:
"c08d8f9900479a3b2a348c1d7dc7e918e71be66a"
},
header: {
"content-type": "application/x-www-form-urlencoded",
},
success(res) {
console.log(res.data)
}
})
iOS DEMO下载
NSURLSession *session = [NSURLSession sharedSession];NSString *urlStr =
@"http://openapiai.xueersi.com/v1/api/img/ocr/general";NSURL *url = [NSURL
URLWithString:urlStr];NSMutableURLRequest *request = [NSMutableURLRequest
requestWithURL:url];
request.HTTPMethod = @"POST";NSString *app_key = @"app_key=8102b22a5e81e840176d9f381ec6f837";
NSString *img = @"img=https://ai.xueersi.com/textRecognition/images/22.jpg";NSString
*img_type = @"img_type=URL";
NSString *time_stamp = @"time_stamp=1551174536";NSString *nonce_str = @"nonce_str=W8FI8oCp";
NSString *sign = @"sign=c08d8f9900479a3b2a348c1d7dc7e918e71be66a";NSString *paramsStr =
[NSString stringWithFormat:@"%@&%@&%@&%@&%@&%@", app_key, img, img_type, time_stamp,
参数名 类型 赋值说明 样例 备注code string 返回码 0
msg string 返回码解释 "请求成功"
data object 识别数据结构 数据结构
content array 识别文本数组 ["学而思网校"] 数组中每一个元素代表一行识别文本
loc array 图像中的图形位置 [[123,76,202,157]] 左上角点坐标,右下角点坐标 ,图像中无图形时为空
recognition object 详细识别信息结构 数据结构 包含图表信息,文本单字信息,英文单词信息,支持拼音识别
ocrId string 唯一的id"03-20-17-57-27-040-32c6e327d0573a9aac8480dc63f8908f"
用于定位问题
ocrLinesList array 识别对象数组 识别对象可为图表、一行文本
type string 对象类型 包含"word"、"table"、"p"三种类型,分别表示文字,图表,行/段落
alp object 拼音对象 当图像中文字包含拼音时,返回结果中文字包含拼音对象
row int 行合并数 1 表格单元包含的行数
col int 列合并数 1 表格单元包含的列数
lineNum int 表格单元所在行数 2 表格单元的起始行数
响应Body:
nonce_str, sign];request.HTTPBody = [paramsStr dataUsingEncoding:NSUTF8StringEncoding];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError *
_Nullable error) { NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data
options:kNilOptions error:nil];
NSLog(@"result=%@",dict);
}];
[dataTask resume];
返回响应返回格式JSON格式
响应参数说明
响应代码示例{
"code": 0,
"msg": "请求成功",
"data": {
"recognition": { "ocrId": "03-20-17-57-27-
040_32c6e327d0573a9aac8480dc63f8908f",
"ocrLinesList": [
{
"data": [
{
"alp": null, "height":
29,
"type": "word", "value":
"形",
"width": 27, "x":
82,
"y": 56
},
{ "type":
"word",
"x": 96, "y":
56,
"width": 27, "height":
29,
"value": "成", "alp":
{
"value": "chéng", "x":
90,
"y": 30, "width":
35,
"height": 18
}
}
],
"type": "p"
},
{
"type": "table",
"size": {
"width": "80px", "height":
"50px"
},
"linePos": [
{
"row": 1, "col":
1,
"lineNum": 2, "data":
[
{ "type":
"p",
"data": [
{ "type":
"word", "x":
70, "y":
100, "width":
29, "height":
27, "value":
"他", "alp":
null
}
]
}
]
}
]
}
]
},
"content": [
"形成(chéng)",
"他"
],
"loc": [
常见错误返回码列表用户反馈
[
120,
70,
210,
150
]
]
}
}
常见问题及反馈Revision #117 Created Thu, Feb 21, 2019 12:02 PM by 王俊玺Updated Sun, Jan 19, 2020 10:11 AM by 杨挺