手寫(xiě)軌跡識(shí)別(公式識(shí)別)
手寫(xiě)軌跡識(shí)別(公式識(shí)別) API 簡(jiǎn)介
智云接入手寫(xiě)軌跡識(shí)別(公式識(shí)別)ocr 功能
說(shuō)明
Hi,您好,歡迎使用有道智云手寫(xiě)軌跡識(shí)別(公式識(shí)別) API 接口服務(wù)。
本文檔主要針對(duì)需要集成 HTTP API 的技術(shù)開(kāi)發(fā)工程師
,詳細(xì)描述 OCR 識(shí)別能力相關(guān)的技術(shù)內(nèi)容。
如果您有與我們商務(wù)合作的需求,可以通過(guò)以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對(duì)文檔內(nèi)容有任何疑問(wèn),可以通過(guò)以下幾種方式聯(lián)系我們:
客服 QQ:1906538062
智云 OCR 技術(shù)交流 QQ 1 群: 654064748
智云 OCR 技術(shù)交流 QQ 2 群: 471638046
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
- 本文檔主要針對(duì)開(kāi)發(fā)人員,接入測(cè)試前需要獲取
應(yīng)用ID
和應(yīng)用密鑰
;如果您還沒(méi)有,請(qǐng)按照 新手指南 獲取。
- 平臺(tái)向每個(gè)賬戶(hù)贈(zèng)送 50 元的體驗(yàn)金,供用戶(hù)集成前測(cè)試所用,具體資費(fèi)規(guī)則詳見(jiàn) 手寫(xiě)軌跡識(shí)別(公式識(shí)別)報(bào)價(jià) 。
請(qǐng)求地址
請(qǐng)求方式:POST
https://openapi.youdao.com/online_formula_ocr
請(qǐng)求參數(shù)
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
q |
點(diǎn)陣數(shù)據(jù),json 字符串,格式見(jiàn)下表 |
|
true |
salt |
隨機(jī)字符串 |
uuid |
true |
sign |
簽名信息:sha256(appKey+input+salt+curtime+密鑰) |
|
true |
signType |
簽名類(lèi)型 |
v3 |
true |
q 字段說(shuō)明:
json 字符串,存儲(chǔ)的是筆跡的數(shù)據(jù)信息,對(duì)數(shù)據(jù)格式嚴(yán)格要求,具體要求如下:
1、一個(gè) json 字符串中保存一個(gè)用戶(hù)在同一行書(shū)寫(xiě)的筆跡信息和;
2、key = "strokes",value 為點(diǎn)集合,其中結(jié)構(gòu)為 "行 -> 筆畫(huà) -> 點(diǎn)" 的結(jié)構(gòu),其中點(diǎn)的坐標(biāo)應(yīng)為原始 int 型坐標(biāo)值;
3、key="answer",value 為答案的字符序列,是一個(gè) list,其中每一個(gè)字符是一個(gè)字符串,對(duì)應(yīng)字表中的一個(gè) token;
4、一個(gè)具體的字符串如下:(示例中的 x/y/p/t 分別表示 x 軸坐標(biāo)、y 軸坐標(biāo)、壓感、時(shí)間戳)
例:
"strokes": [
[
{
"x": 743,
"y": 322,
"p": 0,
"t": 1876606482.1424582
},
{
"x": 768,
"y": 312,
"p": 0,
"t": 1876606515.276458
},
{
"x": 776,
"y": 312,
"p": 0,
"t": 1876606523.4481664
},
{
"x": 794,
"y": 312,
"p": 0,
"t": 1876606540.7051249
},
{
"x": 815,
"y": 312,
"p": 0,
"t": 1876606556.8045416
},
{
"x": 838,
"y": 312,
"p": 0,
"t": 1876606573.5902498
},
{
"x": 850,
"y": 313,
"p": 0,
"t": 1876606582.1182082
},
{
"x": 861,
"y": 314,
"p": 0,
"t": 1876606590.346
}
],
[
{
"x": 821,
"y": 329,
"p": 0,
"t": 1876606790.1306248
},
{
"x": 820,
"y": 344,
"p": 0,
"t": 1876606848.4819582
},
{
"x": 820,
"y": 352,
"p": 0,
"t": 1876606857.0317914
},
{
"x": 820,
"y": 370,
"p": 0,
"t": 1876606873.4598749
},
{
"x": 820,
"y": 399,
"p": 0,
"t": 1876606890.324708
},
{
"x": 820,
"y": 434,
"p": 0,
"t": 1876606907.1413748
},
{
"x": 820,
"y": 462,
"p": 0,
"t": 1876606923.5980415
},
{
"x": 820,
"y": 475,
"p": 0,
"t": 1876606932.0124998
},
{
"x": 815,
"y": 491,
"p": 0,
"t": 1876606940.3207498
}
],
[
{
"x": 931,
"y": 268,
"p": 0,
"t": 1876607181.9338748
},
{
"x": 927,
"y": 292,
"p": 0,
"t": 1876607240.3572915
},
{
"x": 925,
"y": 315,
"p": 0,
"t": 1876607256.8917916
},
{
"x": 923,
"y": 339,
"p": 0,
"t": 1876607273.5481665
},
{
"x": 920,
"y": 343,
"p": 0,
"t": 1876607281.9044163
}
]
],
"answer": [
{
"token": "T"
},
{
"token": "'"
}
]
input 說(shuō)明:
input=img 字符串的前 10 個(gè)字符 + img 字符串長(zhǎng)度 + img 字符串后十個(gè)字符(當(dāng) q 長(zhǎng)度大于 20)或 img 字符串(當(dāng) q 長(zhǎng)度小于等于 20).
具體示例如下:
a.比如:img="Welcome to youdao AICloud.",字符串長(zhǎng)度為 26,大于 20,其 input="Welcome to"(前 10 個(gè)字符) + 26(字符串長(zhǎng)度) + "o AICloud."(q 字符串后 10 個(gè)字符)。
b.比如:img = "sdT4bWrjS",字符串長(zhǎng)度為 9,小于 20,input = "sdT4bWrjS".
錯(cuò)誤代碼列表
錯(cuò)誤碼 |
含義 |
101 |
缺少必填的參數(shù),首先確保必填參數(shù)齊全,然后,確認(rèn)參數(shù)書(shū)寫(xiě)是否正確。 |
102 |
不支持的語(yǔ)言類(lèi)型 |
103 |
翻譯文本過(guò)長(zhǎng) |
104 |
不支持的 API 類(lèi)型 |
105 |
不支持的簽名類(lèi)型 |
106 |
不支持的響應(yīng)類(lèi)型 |
107 |
不支持的傳輸加密類(lèi)型 |
108 |
應(yīng)用 ID 無(wú)效,注冊(cè)賬號(hào),登錄后臺(tái)創(chuàng)建應(yīng)用并完成綁定,可獲得應(yīng)用 ID 和應(yīng)用密鑰等信息 |
109 |
batchLog 格式不正確 |
110 |
無(wú)相關(guān)服務(wù)的有效應(yīng)用,服務(wù)沒(méi)有綁定可以新建服務(wù)綁定。注:某些服務(wù)的結(jié)果發(fā)音需要 tts 服務(wù),需要在控制臺(tái)創(chuàng)建語(yǔ)音合成應(yīng)用后方能使用。 |
111 |
開(kāi)發(fā)者賬號(hào)無(wú)效 |
112 |
請(qǐng)求服務(wù)無(wú)效 |
113 |
q 不能為空 |
114 |
不支持的圖片傳輸方式 |
201 |
解密失敗,可能為 DES,BASE64,URLDecode 的錯(cuò)誤 |
202 |
簽名檢驗(yàn)失敗,如果確認(rèn)應(yīng)用 ID 和應(yīng)用密鑰的正確性,仍返回 202,一般是編碼問(wèn)題。請(qǐng)確保 img 為 UTF-8 編碼. |
203 |
訪問(wèn) IP 地址不在可訪問(wèn) IP 列表 |
205 |
請(qǐng)求的接口與應(yīng)用的平臺(tái)類(lèi)型不一致,確保接入方式(Android SDK、IOS SDK、API)與創(chuàng)建的應(yīng)用平臺(tái)類(lèi)型一致。如有疑問(wèn)請(qǐng)參考入門(mén)指南 |
206 |
因?yàn)闀r(shí)間戳無(wú)效導(dǎo)致簽名校驗(yàn)失敗 |
207 |
重放請(qǐng)求 |
301 |
辭典查詢(xún)失敗 |
302 |
翻譯查詢(xún)失敗 |
303 |
服務(wù)端的其它異常 |
304 |
會(huì)話(huà)閑置太久超時(shí) |
401 |
賬戶(hù)已經(jīng)欠費(fèi)停 |
402 |
offlinesdk 不可用 |
411 |
訪問(wèn)頻率受限,請(qǐng)稍后訪問(wèn) |
412 |
長(zhǎng)請(qǐng)求過(guò)于頻繁,請(qǐng)稍后訪問(wèn) |
1001 |
無(wú)效的 OCR 類(lèi)型 |
1002 |
不支持的 OCR image 類(lèi)型 |
1003 |
不支持的 OCR Language 類(lèi)型 |
1004 |
識(shí)別圖片過(guò)大 |
1201 |
圖片 base64 解密失敗 |
1301 |
OCR 段落識(shí)別失敗 |
1411 |
訪問(wèn)頻率受限 |
1412 |
超過(guò)最大識(shí)別字節(jié)數(shù) |
2003 |
不支持的語(yǔ)言識(shí)別 Language 類(lèi)型 |
2004 |
合成字符過(guò)長(zhǎng) |
2005 |
不支持的音頻文件類(lèi)型 |
2006 |
不支持的發(fā)音類(lèi)型 |
2201 |
解密失敗 |
2301 |
服務(wù)的異常 |
2411 |
訪問(wèn)頻率受限,請(qǐng)稍后訪問(wèn) |
2412 |
超過(guò)最大請(qǐng)求字符數(shù) |
3001 |
不支持的語(yǔ)音格式 |
3002 |
不支持的語(yǔ)音采樣率 |
3003 |
不支持的語(yǔ)音聲道 |
3004 |
不支持的語(yǔ)音上傳類(lèi)型 |
3005 |
不支持的語(yǔ)言類(lèi)型 |
3006 |
不支持的識(shí)別類(lèi)型 |
3007 |
識(shí)別音頻文件過(guò)大 |
3008 |
識(shí)別音頻時(shí)長(zhǎng)過(guò)長(zhǎng) |
3009 |
不支持的音頻文件類(lèi)型 |
3010 |
不支持的發(fā)音類(lèi)型 |
3201 |
解密失敗 |
3301 |
語(yǔ)音識(shí)別失敗 |
3302 |
語(yǔ)音翻譯失敗 |
3303 |
服務(wù)的異常 |
3411 |
訪問(wèn)頻率受限,請(qǐng)稍后訪問(wèn) |
3412 |
超過(guò)最大請(qǐng)求字符數(shù) |
4001 |
不支持的語(yǔ)音識(shí)別格式 |
4002 |
不支持的語(yǔ)音識(shí)別采樣率 |
4003 |
不支持的語(yǔ)音識(shí)別聲道 |
4004 |
不支持的語(yǔ)音上傳類(lèi)型 |
4005 |
不支持的語(yǔ)言類(lèi)型 |
4006 |
識(shí)別音頻文件過(guò)大 |
4007 |
識(shí)別音頻時(shí)長(zhǎng)過(guò)長(zhǎng) |
4201 |
解密失敗 |
4301 |
語(yǔ)音識(shí)別失敗 |
4303 |
服務(wù)的異常 |
4411 |
訪問(wèn)頻率受限,請(qǐng)稍后訪問(wèn) |
4412 |
超過(guò)最大請(qǐng)求時(shí)長(zhǎng) |
5001 |
無(wú)效的 OCR 類(lèi)型 |
5002 |
不支持的 OCR image 類(lèi)型 |
5003 |
不支持的語(yǔ)言類(lèi)型 |
5004 |
識(shí)別圖片過(guò)大 |
5005 |
不支持的圖片類(lèi)型 |
5006 |
文件為空 |
5201 |
解密錯(cuò)誤,圖片 base64 解密失敗 |
5301 |
OCR 段落識(shí)別失敗 |
5411 |
訪問(wèn)頻率受限 |
5412 |
超過(guò)最大識(shí)別流量 |
9001 |
不支持的語(yǔ)音格式 |
9002 |
不支持的語(yǔ)音采樣率 |
9003 |
不支持的語(yǔ)音聲道 |
9004 |
不支持的語(yǔ)音上傳類(lèi)型 |
9005 |
不支持的語(yǔ)音識(shí)別 Language 類(lèi)型 |
9301 |
ASR 識(shí)別失敗 |
9303 |
服務(wù)器內(nèi)部錯(cuò)誤 |
9411 |
訪問(wèn)頻率受限(超過(guò)最大調(diào)用次數(shù)) |
9412 |
超過(guò)最大處理語(yǔ)音長(zhǎng)度 |
10001 |
無(wú)效的 OCR 類(lèi)型 |
10002 |
不支持的 OCR image 類(lèi)型 |
10004 |
識(shí)別圖片過(guò)大 |
10201 |
圖片 base64 解密失敗 |
10301 |
OCR 段落識(shí)別失敗 |
10411 |
訪問(wèn)頻率受限 |
10412 |
超過(guò)最大識(shí)別流量 |
11001 |
不支持的語(yǔ)音識(shí)別格式 |
11002 |
不支持的語(yǔ)音識(shí)別采樣率 |
11003 |
不支持的語(yǔ)音識(shí)別聲道 |
11004 |
不支持的語(yǔ)音上傳類(lèi)型 |
11005 |
不支持的語(yǔ)言類(lèi)型 |
11006 |
識(shí)別音頻文件過(guò)大 |
11007 |
識(shí)別音頻時(shí)長(zhǎng)過(guò)長(zhǎng),最大支持 30s |
11201 |
解密失敗 |
11301 |
語(yǔ)音識(shí)別失敗 |
11303 |
服務(wù)的異常 |
11411 |
訪問(wèn)頻率受限,請(qǐng)稍后訪問(wèn) |
11412 |
超過(guò)最大請(qǐng)求時(shí)長(zhǎng) |
12001 |
圖片尺寸過(guò)大 |
12002 |
圖片 base64 解密失敗 |
12003 |
引擎服務(wù)器返回錯(cuò)誤 |
12004 |
圖片為空 |
12005 |
不支持的識(shí)別圖片類(lèi)型 |
12006 |
圖片無(wú)匹配結(jié)果 |
13001 |
不支持的角度類(lèi)型 |
13002 |
不支持的文件類(lèi)型 |
13003 |
表格識(shí)別圖片過(guò)大 |
13004 |
文件為空 |
13301 |
表格識(shí)別失敗 |
14002 |
手寫(xiě)軌跡識(shí)別失敗 |
15001 |
需要圖片 |
15002 |
圖片過(guò)大(1M) |
15003 |
服務(wù)調(diào)用失敗 |
17001 |
需要圖片 |
17002 |
圖片過(guò)大(1M) |
17003 |
識(shí)別類(lèi)型未找到 |
17004 |
不支持的識(shí)別類(lèi)型 |
17005 |
服務(wù)調(diào)用失敗 |
返回結(jié)果
參數(shù)名稱(chēng) |
描述 |
requestId |
請(qǐng)求 Id |
errorCode |
錯(cuò)誤碼 |
Result |
結(jié)果 |
+lines |
包含識(shí)別到的所有文本行,是一個(gè) list(當(dāng)前場(chǎng)景只有一行文字,因此 list 長(zhǎng)度為 1) |
++text |
識(shí)別結(jié)果,token 之間用空格隔開(kāi) |
++bbox |
文本行的位置,兩個(gè)頂點(diǎn)(左上、右下)的 x/y 坐標(biāo),由逗號(hào)隔開(kāi) |
++words |
文本行中的所有字符,是一個(gè) list |
+++word |
字符內(nèi)容,是一個(gè) token |
+++boundingBox |
字符的位置,兩個(gè)頂點(diǎn)(左上、右下)的 x/y 坐標(biāo),由逗號(hào)隔開(kāi) |
例:
{
"requestId": "ba8c731a-932c-46a1-bf4d-58ca0c3e3013",
"errorCode": "0",
"Result": {
"lines": [
{
"bbox": "53,0,959986210,2066513201,975337506,959722033,53,0",
"words": [],
"text": "8 . ="
}
]
}
}