手寫(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 | 訪(fǎng)問(wèn) IP 地址不在可訪(fǎng)問(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 | 訪(fǎng)問(wèn)頻率受限,請(qǐng)稍后訪(fǎng)問(wèn) |
412 | 長(zhǎng)請(qǐng)求過(guò)于頻繁,請(qǐng)稍后訪(fǎ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 | 訪(fǎng)問(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 | 訪(fǎng)問(wèn)頻率受限,請(qǐng)稍后訪(fǎ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 | 訪(fǎng)問(wèn)頻率受限,請(qǐng)稍后訪(fǎ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 | 訪(fǎng)問(wèn)頻率受限,請(qǐng)稍后訪(fǎ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 | 訪(fǎng)問(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 | 訪(fǎng)問(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 | 訪(fǎng)問(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 | 訪(fǎng)問(wèn)頻率受限,請(qǐng)稍后訪(fǎ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 . ="
}
]
}
}