OCR on-line

O Reconhecimento Óptico de Caracteres é uma maneira inteligente de reconhecer conteúdo em imagens raster. Ele se torna ainda mais útil quando você precisa preservar a literatura arquivada antiga em um formato digital. Livros com milhares de anos podem ser facilmente preservados transformando-os na forma de bibliotecas digitais usando operações de OCR. Além disso, ao longo dos anos, essa necessidade se tornou onipresente. Então, para cumprir esse requisito, você precisa usar algum software pronto para uso ou, caso precise executar operações em massa sem intervenção humana, a maneira mais rápida e fácil é usar a API de programação. No restante do artigo, explicaremos as etapas sobre como executar OCR em imagens usando a API REST do Python.

API REST do OCR Online

O Aspose.OCR Cloud SDK para Python é notável quando se trata de reconhecimento óptico de caracteres em imagens raster (BMP, JPEG, GIF, PNG, TIFF).Ao executar operações de OCR, ele permite que você leia os caracteres, bem como as informações da fonte. Você pode executar o OCR na imagem inteira ou em uma parte específica, fornecendo coordenadas X e Y. Após a conclusão do reconhecimento óptico de caracteres, a resposta é retornada nos formatos XML ou JSON e o texto extraído pode ser salvo nos formatos TXT, PDF e HOCR. Abaixo estão especificados alguns recursos de alto nível.

  • Correção automática de inclinação
  • Detecção automática e manual de layout de documentos
  • Pré-processamento avançado de imagens automatizadas
  • Suporta vários idiomas internacionais
  • Alta velocidade sem recursos de hardware

Idiomas suportados

Além do idioma inglês, a API é totalmente capaz de reconhecer textos em francês, alemão, italiano, português e espanhol.

Formatos de arquivo suportados

Abaixo está especificada a lista completa de formatos de arquivo que são atualmente suportados pela API REST para operações de OCR.

.bmp, .dib, .jpeg, .jpg, .jpe, .jp2, .png, .webp, .pbm, .pgm, .ppm, .pxm, .pnm .pfm, .sr, .ras, .tiff, .tif, .exr, .hdr, .pic

OCR Online usando Python

Nossas APIs são desenvolvidas conforme a arquitetura REST, então nesta seção, exploraremos a conversão de Imagem para Texto usando comandos cURL. Entendemos que os comandos cURL são a maneira flexível de acessar APIs REST via console. Agora, um dos pré-requisitos é gerar um token JWT. Para mais detalhes relacionados, visite Como obter um token JWT usando um ID de cliente e um segredo de cliente.

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"

Depois de ter o token JWT, tente usar o seguinte comando para executar uma operação de OCR em uma imagem localizada no armazenamento em nuvem, contendo texto em inglês.

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

Conversão de imagem para texto em imagem local

Nesta seção, realizaremos a operação de OCR na imagem carregada da unidade local

# Para exemplos completos e arquivos de dados, acesse 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):

      # Configurar clientes de API de CAD e armazenamento 
      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 em imagem do armazenamento em nuvem

Vamos aprender os detalhes sobre como carregar uma imagem do armazenamento em nuvem e executar o OCR de imagem usando um trecho de código Python.

# Para exemplos completos e arquivos de dados, acesse 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):

        # Configurar clientes de API de CAD e armazenamento 
        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())

OCR de imagem em URL

Caso você encontre um requisito para executar o Reconhecimento Óptico de Imagem em uma imagem disponível em uma URL da Web, a API é totalmente capaz e suporta esse recurso. O método postrecognizefromurl da API pode ser usado para realizar esse requisito.

# Para exemplos completos e arquivos de dados, acesse 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):
       
        # Configurar clientes de API de CAD e armazenamento 
        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())

Conclusão

Neste artigo, aprendemos os detalhes sobre como executar OCR on-line usando o comando cURL, bem como por meio de snippet de código python. Como nossos Cloud SDKs são criados sob licença MIT, você pode considerar baixar o código-fonte completo do repositório GitHub. Este repositório também vem com demos gratuitas e, para executá-las, siga as etapas fornecidas abaixo.

  • Confira o SDK ou obtenha em pip(pip install aspose-ocr-cloud)
  • Defina seu ID do cliente e segredo do cliente
  • Execute o console Python Demo ou UnitTests

Artigos relacionados

Recomendamos fortemente que você visite os seguintes links para saber mais sobre: