溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

發(fā)布時(shí)間:2021-12-30 10:20:13 來源:億速云 閱讀:584 作者:小新 欄目:大數(shù)據(jù)

這篇文章主要為大家展示了“node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別”這篇文章吧。

項(xiàng)目的結(jié)構(gòu):

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

我們先來看看各個(gè)文件夾的效果:

dao:數(shù)據(jù)庫(kù)層業(yè)務(wù)邏輯db:封裝mysql的一些基本方法,如初始化、更新doc:ApiDoc自動(dòng)根據(jù)接口注釋生成接口文檔node_module:引入的第三方包public:存放靜態(tài)資源router:接口路由層,存放業(yè)務(wù)邏輯util:封裝一些常用公共方法,如簽名加密

本篇文章主要對(duì)幾個(gè)不需要申請(qǐng)權(quán)限的接口進(jìn)行測(cè)試,我們來看下文字識(shí)別都有什么類型的接口:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

首先調(diào)用API我們需要攜帶參數(shù)access_token參數(shù)。所以接下來我們需要先獲取access_token。我們看下文檔對(duì)于access_token的要求:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

文檔寫的很清晰,我們不多廢話,直接代碼來實(shí)現(xiàn)獲取access_token。首先我們將client_idclient_secret配置在config.js中:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

util文件夾下建立postHelper.js文件,用來封裝http請(qǐng)求。首先獲取access_token需要,我們先封裝一個(gè)Content-Type為application/x-www-form-urlencodedPOST請(qǐng)求方法:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

接下來實(shí)現(xiàn)一個(gè)接口,獲取access_token。上一篇詳細(xì)講解了一個(gè)接口的設(shè)計(jì)方法。所以獲取access_token接口的具體流程為:

將所有必須參數(shù)去掉sign參數(shù)按照制定規(guī)則加密生成簽名sign.發(fā)起post請(qǐng)求,獲取access_token.

接下來我們代碼實(shí)現(xiàn)下,我們將加密簽名等業(yè)務(wù)邏輯放在路由層實(shí)現(xiàn):

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

然后將調(diào)用post請(qǐng)求請(qǐng)求access_token接口獲取access_token操作放在dao層執(zhí)行。

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

這邊由于我們發(fā)起請(qǐng)求使用了request庫(kù),所以我們需要先安裝一下依賴,命令為:

npm install request --save-dev

然后我們來看下接口運(yùn)行效果:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

可以看到access_token已經(jīng)成功獲取到。因?yàn)?strong>access_token是有過期時(shí)間的,所以可以選擇過期了再次獲取新的access_token或者每次請(qǐng)求API之前先獲取新的access_token。接下來我們看下第一個(gè)接口:通用文字識(shí)別。

通用文字識(shí)別接口

先貼下文檔接口說明:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別


本接口需要用到的請(qǐng)求參數(shù)也順便貼出來:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

接口其實(shí)很簡(jiǎn)單,上傳圖片解析文字。圖片格式可以BASE64格式或者url。我這里使用URL進(jìn)行測(cè)試,接下來實(shí)現(xiàn)業(yè)務(wù)邏輯代碼:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

這個(gè)接口有兩個(gè)地方需要格外注意:

如果image參數(shù)存在,則url參數(shù)無(wú)法生效url不支持https,也就是https協(xié)議的圖片url無(wú)法進(jìn)行解析

我們可以看下接口相應(yīng)效果:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

順便貼下返回參數(shù)的說明,可以對(duì)著字段理解返回值的含義:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

可以看到圖片識(shí)別文字解析到了兩句話,當(dāng)然這個(gè)接口可以選傳參數(shù),我們可以再看下請(qǐng)求參數(shù)說明可以選擇識(shí)別語(yǔ)言類型,檢測(cè)圖片朝向等。選傳參數(shù)我這邊不測(cè)試,有興趣可以自行拓展。接下來看下一個(gè)接口:通用文字識(shí)別(含位置信息版)。

通用文字識(shí)別(含位置信息版)

看標(biāo)題就可以知道本接口和上個(gè)接口的區(qū)別在于本接口可以返回文字在圖片中的位置信息。首先貼下接口說明:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

我們直接代碼實(shí)現(xiàn)下本接口。直接貼下代碼:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

我們來看下接口效果:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

可以看到在解析的數(shù)組里面返回了文字相對(duì)于圖片的位置。我們可以貼下返回參數(shù)說明:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

接口可以選傳參數(shù)recognize_granularity定位但字符位置等。對(duì)于選傳參數(shù)就不過多解釋。讀者可以自行拓展。接下來我們來看下一個(gè)接口:手寫文字識(shí)別。

手寫文字識(shí)別

本接口可以識(shí)別圖片中手寫中文或數(shù)字。首先貼下接口說明:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

我將使用以下圖片進(jìn)行手寫圖片識(shí)別:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

話不多說,我們直接實(shí)現(xiàn)代碼:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

我們首先需要將圖片進(jìn)行base64編碼,然后提交到API。我這邊以讀取本地圖片進(jìn)行base64編碼示例。我們可以測(cè)試下接口效果:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

返回結(jié)果成功解析到手寫圖片的文字了。我們可以看下返回參數(shù)的說明:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

身份證識(shí)別

支持對(duì)大陸居民二代身份證正反面的所有字段進(jìn)行結(jié)構(gòu)化識(shí)別,包括姓名、性別、民族、出生日期、住址、身份證號(hào)、簽發(fā)機(jī)關(guān)、有效期限;同時(shí),支持對(duì)用戶上傳的身份證圖片進(jìn)行圖像風(fēng)險(xiǎn)和質(zhì)量檢測(cè),可識(shí)別圖片是否為復(fù)印件或臨時(shí)身份證,是否被翻拍或編輯,是否存在正反顛倒、模糊、欠曝、過曝等質(zhì)量問題。首先貼一下接口說明:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

話不多說直接實(shí)現(xiàn)接口代碼:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

本接口必傳參數(shù)除了進(jìn)行base64編碼的image外,還需要指定身份證正反面。我們可以測(cè)試下接口效果:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

貼下返回參數(shù)幫助讀者理解接口返回參數(shù)的含義:

node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別

以上是“node.js中如何使用API實(shí)現(xiàn)圖片文字識(shí)別”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI