OCR在線

光學字元辨識是一種識別光柵影像內容的智慧方法。當您需要以數位格式儲存舊的檔案文獻時,它會變得更加有用。透過OCR操作將千禧年古書轉化為數位圖書館的形式,就可以輕鬆保存下來。此外,多年來,這種需求已經變得無所不在。因此,為了實現此要求,您要么需要使用一些開箱即用的軟體,要么在您需要在沒有人工幹預的情況下執行批量操作的情況下,最快捷、最簡單的方法是使用程式設計 API。在本文的其餘部分,我們將解釋如何使用 Python REST API 對映像執行 OCR 的步驟。

OCR 線上 REST API

Aspose.OCR Cloud SDK for Python 在光柵影像(BMPJPEGGIFPNGTIFF)的光學字元辨識方面表現出色。當執行OCR操作時,它使您能夠讀取字元以及字體資訊。您可以對整個影像或特定部分執行 OCR,同時提供 X 和 Y 座標。光學字元辨識完成後,回應以XML或JSON格式傳回,擷取的文字可以儲存為TXT,PDF和HOCR格式。下面指定的是一些進階功能。

  • 自動傾斜校正
  • 自動和手動文件佈局檢測
  • 先進的自動化影像預處理
  • 支援多種國際語言
  • 速度快,不佔用硬體資源

支援的語言

除了英語之外,該 API 還能夠識別法語、德語、義大利語、葡萄牙語和西班牙語的文字。

支援的文件格式

下面指定的是 REST API 目前支援的 OCR 操作的檔案格式的完整清單。

.bmp.dib.jpeg、.jpg、.jpe、.jp2.png.webp、.pbm、.pgm、.ppm、.pxm、.pnm、.pfm、f.S.f.S. 15]、.pic

使用 Python 在線進行 OCR

我們的 API 是根據 REST 架構開發的,因此在本節中,我們將探索使用 cURL 命令進行圖像到文字的轉換。我們知道 cURL 指令是透過控制台存取 REST API 的靈活方式。現在,先決條件之一是產生 JWT 令牌。更多相關細節,請造訪如何使用客戶端 ID 和客戶端金鑰取得 JWT 令牌

curl -v "https://api.aspose.cloud/oauth2/token" \-X POST \-d "grant_type=client_credentials&client_id=xxxxx-xxxx-xxx-xxxx-&client_secret=xxxxxxxxx" \-H "Content-Type: application/x-www-form-urlencoded" \ -H "Accept: application/json"

取得 JWT 令牌後,請嘗試使用下列指令對位於雲端儲存上的包含英文文字的圖像執行 OCR 操作。

curl -X GET "https://api.aspose.cloud/v3.0/ocr/downsize.jpeg/recognize?language=1" -H "accept: application/json" -H "authorization: Bearer <JWT Token>"

本地圖片轉文字

在本節中,我們將對從本機磁碟機載入的映像執行 OCR 操作

# 完整範例和資料檔請前往https://github.com/aspose-ocr-cloud/aspose-ocr-cloud-python/
import os
import asposeocrcloud.api.storage_api
from asposeocrcloud.configuration import Configuration
from asposeocrcloud.api.ocr_api import OcrApi
from asposeocrcloud.models import OCRRect, OCRRegion, OCRRequestData, OCRRequestDataStorage, LanguageGroup
from asposeocrcloud.rest import ApiException

import json as json

class  RecognizeFromContent(object):

  def __init__(self):

      # 設定 CAD 和儲存 API 用戶端 
      with open("config.json") as f:
          server_file_info = json.load(f)


      config = Configuration( apiKey=server_file_info['AppKey'],
                              appSid=server_file_info['AppSid'])      
      self.ocr_api = OcrApi(config)

  def recognize_text(self):
      file_name = "5.png"
      src = os.path.join(os.path.abspath("data/"), file_name)
      try:

          res = self.ocr_api.post_recognize_from_content(src)  # type: asposeocrcloud.models.OcrResponse
          return res.text

      except ApiException as ex:
          print("Exception")
          print("Info: " + str(ex))
          raise ex

obj=RecognizeFromContent()
print(obj.recognize_text())

對雲端儲存中的影像進行 Python OCR

我們將學習如何從雲端儲存載入圖像並使用 Python 程式碼片段執行圖像 OCR 的詳細資訊。

# 完整範例和資料檔請前往https://github.com/aspose-ocr-cloud/aspose-ocr-cloud-python/
import asposeocrcloud.api.storage_api
from asposeocrcloud.configuration import Configuration
from asposeocrcloud.api.ocr_api import OcrApi
from asposeocrcloud.models import OCRRect, OCRRegion, OCRRequestData, OCRRequestDataStorage, LanguageGroup

import json as json

class  RecognizeFromStorage(object):

    def __init__(self):

        # 設定 CAD 和儲存 API 用戶端 
        with open("config.json") as f:
            server_file_info = json.load(f)
        config = Configuration( apiKey=server_file_info['AppKey'],
                                appSid=server_file_info['AppSid'])      
        self.ocr_api = OcrApi(config)
        self.storage_api= asposeocrcloud.api.storage_api.StorageApi(config)

    def recognize_text(self):
        self.storage_api.upload_file("5.png", r"data\5.png")
        res = self.ocr_api.get_recognize_from_storage("5.png")
        return res.text

obj=RecognizeFromStorage()
print(obj.recognize_text())

URL 上的圖像 OCR

如果您遇到對 Web URL 上可用的影像執行光學影像辨識的要求,則 API 完全能夠勝任並支援此功能。可以使用API的postrecognizefromurl方法來完成這個要求。

# 完整範例和資料檔請前往https://github.com/aspose-ocr-cloud/aspose-ocr-cloud-python/
import os
import asposeocrcloud.api.storage_api
from asposeocrcloud.configuration import Configuration
from asposeocrcloud.api.ocr_api import OcrApi
from asposeocrcloud.models import OCRRect, OCRRegion, OCRRequestData, OCRRequestDataStorage, LanguageGroup
from asposeocrcloud.rest import ApiException

import json as json

class  RecognizeFromURL(object):

    def __init__(self):
       
        # 設定 CAD 和儲存 API 用戶端 
        with open("config.json") as f:
            server_file_info = json.load(f)        
        config = Configuration( apiKey=server_file_info['AppKey'],
                                appSid=server_file_info['AppSid'])      
        self.ocr_api = OcrApi(config)  
         
    def recognize_text(self):
        url = "https://upload.wikimedia.org/wikipedia/commons/2/2f/Book_of_Abraham_FirstPage.png"
        try:
            res = self.ocr_api.post_recognize_from_url(url)  # type: asposeocrcloud.models.OcrResponse
            return res.text

        except ApiException as ex:
            print("Exception")
            print("Info: " + str(ex))
            raise ex
                   
obj=RecognizeFromURL()
print(obj.recognize_text())

結論

在本文中,我們了解如何使用 cURL 命令以及透過 python 程式碼片段在線執行 OCR 的詳細資訊。由於我們的雲端 SDK 是在 MIT 許可下建立的,因此您可以考慮從 GitHub 儲存庫 下載完整的原始程式碼。該存儲庫還附帶免費演示,為了執行它們,請按照以下步驟操作。

  • 簽出 SDK 或從 pip 取得 (pip install aspose-ocr-cloud)
  • 設定您的客戶端 ID 和客戶端金鑰
  • 運行 Python 控制台 DemoUnitTests

相關文章

我們強烈建議您訪問以下連結以了解更多資訊: