最近,在做完OpenHarmony 3516開發板拍照的功能以後,下一步就需要研究一下目前又哪些AI雲服務可用,可以實現從圖片中識別文字,於是做了如下記錄:

華為雲:

文字識別服務的產品介紹:圖解文字識別_文字識別 OCR_產品介紹_華為雲

目前開通了一個一年的試用,每天有500次的免費調用。

嘗試使用了通用文字識別,手寫文字識別。試用方式:首先先在在線體驗模擬調用https://apiexplorer.developer.huaweicloud.com/apiexplorer/sdk?product=OCR&api=RecognizeHandwriting

然後使用postman調用restAPI:  首先需要獲取token(認證鑑權_文字識別 OCR_API參考_如何調用API_華為雲),然後再調用通用文字識別,手寫文字識別服務。

體驗反饋:

1.手寫文字識別不準,即使是用手寫文字識別服務。諮詢了官方,説是文字必須寫的很工整,要求寫字體儘量越接近正楷。。。。

2.因OpenHarmony開發使用的是c++,然而c++ sdk依賴了好幾個庫,暫時不知道該如何寫GN,一起編譯進來,目前只能使用OpenHarmony原生的libcurl來調用rest http接口

3.這個token返回,居然是從返回的header獲取(認證鑑權_文字識別 OCR_API參考_如何調用API_華為雲),目前還不知道如何使用libcurl調用。。。

百度雲

文字識別服務:OCR文字識別_免費試用_圖片轉文字-百度AI開放平台

使用課程:百度雲智教育

API文檔説明:https://cloud.baidu.com/doc/OCR/s/1k3h7y3db

使用方式,仍然是先使用AK/SK調用獲取token,然後使用token調用文字識別服務。我測試了通用文字識別(高精度版)這個服務

 體驗反饋:

1.比華為雲稍準一些,但我手寫的一個漢字,還是沒識別出來。看樣子確實寫的太醜了。

2.撇開所謂安全不説,百度雲的接口設計得更方便使用一些。一是體現在獲取token接口得返回,那麼token就是返回json的一個屬性,不像華為雲那樣,把token放在header裏返回。二是文字識別返回,識別的文字解析也很方便,而華為雲的返回內容非常複雜。也許因為,我目前只使用libcurl+jsoncpp這些簡單的c++類庫調用,所以希望接口使用必須簡單把

3.主頁上寫,支持私有化部署方案,離線識別SDK,但需要有企業認證,無法體驗

阿里雲