整題識(shí)別(含公式)API 簡(jiǎn)介
概念解釋
整題識(shí)別(含公式)服務(wù):基于有道機(jī)器學(xué)習(xí)團(tuán)隊(duì)業(yè)界領(lǐng)先的深度學(xué)習(xí)技術(shù),將自然場(chǎng)景下圖片上的題目文字、數(shù)字及公式信息,通過定位和檢測(cè),智能識(shí)別為可編輯的文本信息,輕松實(shí)現(xiàn)題目電子化。
說明
Hi,您好,歡迎使用有道智云整題識(shí)別(含公式)OCR API接口服務(wù)。
本文檔主要針對(duì)需要集成API的技術(shù)開發(fā)工程師,詳細(xì)描述整題識(shí)別(含公式)OCR能力相關(guān)的技術(shù)內(nèi)容。
如果您想快速體驗(yàn)服務(wù),建議您前往 體驗(yàn)中心 或者在體驗(yàn)中心右下側(cè)找到小程序二維碼,掃描進(jìn)行體驗(yàn)。
如果您有與我們商務(wù)合作的需求,可以通過以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對(duì)文檔內(nèi)容有任何疑問,可以通過以下幾種方式聯(lián)系我們:
客服QQ:1906538062
智云OCR技術(shù)交流QQ 1群: 654064748
智云OCR技術(shù)交流QQ 2群: 471638046
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
本文檔主要針對(duì)開發(fā)人員接入測(cè)試前需要獲取應(yīng)用ID
和應(yīng)用密鑰
;如果您還沒有,請(qǐng)按照新手 指南操作 。
平臺(tái)向每個(gè)賬戶贈(zèng)送50元的體驗(yàn)金,供用戶集成前測(cè)試所用,具體資費(fèi)規(guī)則詳見 整題識(shí)別(含公式)OCR服務(wù)報(bào)價(jià) 。
接口說明
整題識(shí)別(含公式) API HTTPS地址:
https://openapi.youdao.com/ocr_formula
協(xié)議須知
調(diào)用方在集成整題識(shí)別(含公式)OCR API時(shí),請(qǐng)遵循以下規(guī)則。
規(guī)則 | 描述 |
---|
傳輸方式 | HTTPS |
請(qǐng)求方式 | POST |
字符編碼 | 統(tǒng)一使用UTF-8編碼 |
請(qǐng)求格式 | 表單 |
響應(yīng)格式 | JSON |
接口調(diào)用參數(shù)
調(diào)用API需要向接口發(fā)送以下字段來訪問服務(wù)。
符號(hào) | 含義 | 必填 | 舉例 |
---|
detectType | 識(shí)別類型,10011:識(shí)別結(jié)果公式完美還原;10012:識(shí)別結(jié)果適合搜題,默認(rèn)10011 | false | 10011 |
imageType | 支持的圖片類型,目前只支持Base64 | true | 目前只支持Base64,請(qǐng)置此字段固定值為1 |
appKey | 應(yīng)用ID | true | 可在 應(yīng)用管理 查看 |
img | 要識(shí)別的圖片,目前只支持Base64編碼 | true | UTF-8編碼 |
curtime | 時(shí)間戳(秒) | true | TimeStamp |
sign | 簽名 | true | sha256(應(yīng)用ID+input+curtime+salt+應(yīng)用密鑰) |
salt | UUID | true | uuid,唯一通用識(shí)別碼 |
signType | 簽名類型 | true | v3 |
docType | 服務(wù)器響應(yīng)類型,目前只支持json | false | json |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID
+input
+salt
+curtime
+應(yīng)用密鑰
)。
其中,input的計(jì)算方式為:input
=img前10個(gè)字符
+ img長(zhǎng)度
+ img后10個(gè)字符
(當(dāng)img長(zhǎng)度大于20)或 input
=img字符串
(當(dāng)img長(zhǎng)度小于等于20)。
具體示例如下:
- 比如:img="Welcome to youdao AICloud.",字符串長(zhǎng)度為26,大于20,其input="Welcome to"(前10個(gè)字符) + 26(字符串長(zhǎng)度) + "o AICloud."(q字符串后10個(gè)字符)。
- 比如:img = "sdT4bWrjS",字符串長(zhǎng)度為9,小于20,input = "sdT4bWrjS".
注意:
- 請(qǐng)先將需要識(shí)別的圖片轉(zhuǎn)換為 Base64 編碼。
- 在發(fā)送HTTP請(qǐng)求之前需要對(duì)各字段做 URL encode。
- 在生成簽名拼接
應(yīng)用ID
+input
+salt
+curtime
+應(yīng)用密鑰
字符串時(shí),q
不需要做 URL encode,在生成簽名之后,發(fā)送 HTTP 請(qǐng)求之前才需要對(duì)要發(fā)送的 img
做URL encode。 - 簽名和請(qǐng)求有疑問,可以參考文檔最后的常用語言demo
輸出結(jié)果
返回的結(jié)果是json格式,具體說明如下:
字段 | 類型 | 字段說明 |
---|
errorCode | text | 錯(cuò)誤碼 |
Result | jsonObject | 錯(cuò)誤 |
-orientation | text | 識(shí)別方向 |
-regions | text | 區(qū)域 |
--boundingBox | text | 識(shí)別區(qū)域坐標(biāo) |
--dir | text | 方向:行 |
--lines | jsonArray | 行數(shù)組 |
---boundingBox | text | 行坐標(biāo)信息 |
---text_height | text | 行高 |
---text | text | 識(shí)別的內(nèi)容 |
---type | text | 內(nèi)容類型:文本或公式 |
注意:boundingBox:坐標(biāo),共八個(gè)值:分別是左上角坐標(biāo)(x,y),右上角坐標(biāo)(x,y),右下角坐標(biāo)(x,y),左下角(x,y),原點(diǎn)為左上角坐標(biāo)。
示例
返回結(jié)果示例:
{
"errorCode": "0",
"Result": {
"orientation": "",
"regions": [{
"boundingBox": "13,15,584,15,584,83,13,83",
"dir": "h",
"lang": "",
"lines": [
[{
"boundingBox": "13,22,110,22,110,76,13,76",
"text_height": 53,
"words": [{
"boundingBox": "13,23,74,22,74,75,13,76",
"word": "13."
}, {
"boundingBox": "86,22,110,22,110,75,86,75",
"word": "若"
}],
"text": "13.若",
"type": "text"
}, {
"boundingBox": "111,15,326,15,326,82,111,82",
"text_height": 67,
"words": [{
"boundingBox": "111,15,326,15,326,82,111,82",
"word": " x = ( \\sqrt { 3 } { - 5 } ) ^ { 3 }"
}],
"text": "x = ( \\sqrt { 3 } { - 5 } ) ^ { 3 }",
"type": "formula"
}, {
"boundingBox": "327,22,384,22,384,76,327,76",
"text_height": 53,
"words": [{
"boundingBox": "327,22,338,22,338,75,327,75",
"word": ","
}, {
"boundingBox": "350,23,384,23,384,76,350,76",
"word": "則"
}],
"text": ",則",
"type": "text"
}, {
"boundingBox": "385,15,584,15,584,83,385,83",
"text_height": 67,
"words": [{
"boundingBox": "385,16,584,15,584,82,385,83",
"word": " \\sqrt { - x - 1 } ="
}],
"text": "\\sqrt { - x - 1 } =",
"type": "formula"
}]
]
}],
"exif": "UP"
}
}
服務(wù)配置
支持圖片格式 | 每小時(shí)最大請(qǐng)求次數(shù) | 圖片大小 |
---|
jpg\png\bmp | 3600 | 編碼后2M |
錯(cuò)誤代碼列表
錯(cuò)誤碼 | 含義 |
---|
101 | 缺少必填的參數(shù),首先確保必填參數(shù)齊全,然后,確認(rèn)參數(shù)書寫是否正確。 |
102 | 不支持的語言類型 |
103 | 翻譯文本過長(zhǎng) |
104 | 不支持的API類型 |
105 | 不支持的簽名類型 |
106 | 不支持的響應(yīng)類型 |
107 | 不支持的傳輸加密類型 |
108 | 應(yīng)用ID無效,注冊(cè)賬號(hào),登錄后臺(tái)創(chuàng)建應(yīng)用和實(shí)例并完成綁定,可獲得應(yīng)用ID和應(yīng)用密鑰等信息 |
109 | batchLog格式不正確 |
110 | 無相關(guān)服務(wù)的有效實(shí)例,應(yīng)用沒有綁定服務(wù)實(shí)例,可以新建服務(wù)實(shí)例,綁定服務(wù)實(shí)例。注:某些服務(wù)的翻譯結(jié)果發(fā)音需要tts實(shí)例,需要在控制臺(tái)創(chuàng)建語音合成實(shí)例綁定應(yīng)用后方能使用。 |
111 | 開發(fā)者賬號(hào)無效 |
112 | 請(qǐng)求服務(wù)無效 |
113 | q不能為空 |
114 | 不支持的圖片傳輸方式 |
201 | 解密失敗,可能為DES,BASE64,URLDecode的錯(cuò)誤 |
202 | 簽名檢驗(yàn)失敗,如果確認(rèn)應(yīng)用ID和應(yīng)用密鑰的正確性,仍返回202,一般是編碼問題。請(qǐng)確保 img 為UTF-8編碼. |
203 | 訪問IP地址不在可訪問IP列表 |
205 | 請(qǐng)求的接口與應(yīng)用的平臺(tái)類型不一致,確保接入方式(Android SDK、IOS SDK、API)與創(chuàng)建的應(yīng)用平臺(tái)類型一致。如有疑問請(qǐng)參考入門指南 |
206 | 因?yàn)闀r(shí)間戳無效導(dǎo)致簽名校驗(yàn)失敗 |
207 | 重放請(qǐng)求 |
301 | 辭典查詢失敗 |
302 | 翻譯查詢失敗 |
303 | 服務(wù)端的其它異常 |
304 | 會(huì)話閑置太久超時(shí) |
401 | 賬戶已經(jīng)欠費(fèi)停 |
402 | offlinesdk不可用 |
411 | 訪問頻率受限,請(qǐng)稍后訪問 |
412 | 長(zhǎng)請(qǐng)求過于頻繁,請(qǐng)稍后訪問 |
1001 | 無效的OCR類型 |
1002 | 不支持的OCR image類型 |
1003 | 不支持的OCR Language類型 |
1004 | 識(shí)別圖片過大 |
1201 | 圖片base64解密失敗 |
1301 | OCR段落識(shí)別失敗 |
1411 | 訪問頻率受限 |
1412 | 超過最大識(shí)別字節(jié)數(shù) |
2003 | 不支持的語言識(shí)別Language類型 |
2004 | 合成字符過長(zhǎng) |
2005 | 不支持的音頻文件類型 |
2006 | 不支持的發(fā)音類型 |
2201 | 解密失敗 |
2301 | 服務(wù)的異常 |
2411 | 訪問頻率受限,請(qǐng)稍后訪問 |
2412 | 超過最大請(qǐng)求字符數(shù) |
3001 | 不支持的語音格式 |
3002 | 不支持的語音采樣率 |
3003 | 不支持的語音聲道 |
3004 | 不支持的語音上傳類型 |
3005 | 不支持的語言類型 |
3006 | 不支持的識(shí)別類型 |
3007 | 識(shí)別音頻文件過大 |
3008 | 識(shí)別音頻時(shí)長(zhǎng)過長(zhǎng) |
3009 | 不支持的音頻文件類型 |
3010 | 不支持的發(fā)音類型 |
3201 | 解密失敗 |
3301 | 語音識(shí)別失敗 |
3302 | 語音翻譯失敗 |
3303 | 服務(wù)的異常 |
3411 | 訪問頻率受限,請(qǐng)稍后訪問 |
3412 | 超過最大請(qǐng)求字符數(shù) |
4001 | 不支持的語音識(shí)別格式 |
4002 | 不支持的語音識(shí)別采樣率 |
4003 | 不支持的語音識(shí)別聲道 |
4004 | 不支持的語音上傳類型 |
4005 | 不支持的語言類型 |
4006 | 識(shí)別音頻文件過大 |
4007 | 識(shí)別音頻時(shí)長(zhǎng)過長(zhǎng) |
4201 | 解密失敗 |
4301 | 語音識(shí)別失敗 |
4303 | 服務(wù)的異常 |
4411 | 訪問頻率受限,請(qǐng)稍后訪問 |
4412 | 超過最大請(qǐng)求時(shí)長(zhǎng) |
5001 | 無效的OCR類型 |
5002 | 不支持的OCR image類型 |
5003 | 不支持的語言類型 |
5004 | 識(shí)別圖片過大 |
5005 | 不支持的圖片類型 |
5006 | 文件為空 |
5201 | 解密錯(cuò)誤,圖片base64解密失敗 |
5301 | OCR段落識(shí)別失敗 |
5411 | 訪問頻率受限 |
5412 | 超過最大識(shí)別流量 |
9001 | 不支持的語音格式 |
9002 | 不支持的語音采樣率 |
9003 | 不支持的語音聲道 |
9004 | 不支持的語音上傳類型 |
9005 | 不支持的語音識(shí)別 Language類型 |
9301 | ASR識(shí)別失敗 |
9303 | 服務(wù)器內(nèi)部錯(cuò)誤 |
9411 | 訪問頻率受限(超過最大調(diào)用次數(shù)) |
9412 | 超過最大處理語音長(zhǎng)度 |
10001 | 無效的OCR類型 |
10002 | 不支持的OCR image類型 |
10004 | 識(shí)別圖片過大 |
10201 | 圖片base64解密失敗 |
10301 | OCR段落識(shí)別失敗 |
10411 | 訪問頻率受限 |
10412 | 超過最大識(shí)別流量 |
11001 | 不支持的語音識(shí)別格式 |
11002 | 不支持的語音識(shí)別采樣率 |
11003 | 不支持的語音識(shí)別聲道 |
11004 | 不支持的語音上傳類型 |
11005 | 不支持的語言類型 |
11006 | 識(shí)別音頻文件過大 |
11007 | 識(shí)別音頻時(shí)長(zhǎng)過長(zhǎng),最大支持30s |
11201 | 解密失敗 |
11301 | 語音識(shí)別失敗 |
11303 | 服務(wù)的異常 |
11411 | 訪問頻率受限,請(qǐng)稍后訪問 |
11412 | 超過最大請(qǐng)求時(shí)長(zhǎng) |
12001 | 圖片尺寸過大 |
12002 | 圖片base64解密失敗 |
12003 | 引擎服務(wù)器返回錯(cuò)誤 |
12004 | 圖片為空 |
12005 | 不支持的識(shí)別圖片類型 |
12006 | 圖片無匹配結(jié)果 |
13001 | 不支持的角度類型 |
13002 | 不支持的文件類型 |
13003 | 表格識(shí)別圖片過大 |
13004 | 文件為空 |
13301 | 表格識(shí)別失敗 |
15001 | 需要圖片 |
15002 | 圖片過大(1M) |
15003 | 服務(wù)調(diào)用失敗 |
17001 | 需要圖片 |
17002 | 圖片過大(1M) |
17003 | 識(shí)別類型未找到 |
17004 | 不支持的識(shí)別類型 |
17005 | 服務(wù)調(diào)用失敗 |
版本更新記錄
上線日期 | 版本號(hào) | 更新內(nèi)容 |
---|
2019.05.23 | v1.0.0 | 整題識(shí)別(含公式)API上線,支持識(shí)別中英文場(chǎng)景下的公式,返回可編輯的latex結(jié)果 |
常用語言 Demo
Java 示例
整題識(shí)別(含公式) java demo
Python 示例
整題識(shí)別(含公式) python3 demo
C# 示例
整題識(shí)別(含公式) c# demo
PHP 示例
整題識(shí)別(含公式) php demo
Go 示例
整題識(shí)別(含公式) go demo