
El reconocimiento óptico de caracteres es una forma inteligente de reconocer contenido en imágenes rasterizadas. Resulta aún más útil cuando se necesita conservar literatura de archivo antigua en formato digital. Se pueden conservar fácilmente libros de miles de años de antigüedad transformándolos en bibliotecas digitales mediante operaciones de OCR. Además, con el paso de los años, esta necesidad se ha vuelto omnipresente. Por lo tanto, para cumplir con este requisito, es necesario utilizar algún software listo para usar o, en caso de que necesite realizar operaciones en masa sin intervención humana, la forma más rápida y sencilla es utilizar una API de programación. En el resto del artículo, explicaremos los pasos para realizar OCR en imágenes utilizando la API REST de Python.
API REST de OCR en línea
Aspose.OCR Cloud SDK para Python es excepcional en lo que respecta al reconocimiento óptico de caracteres en imágenes rasterizadas (BMP, JPEG, GIF, PNG, TIFF).Al realizar operaciones de OCR, le permite leer los caracteres, así como la información de la fuente. Puede realizar el OCR en toda la imagen o en una parte específica, proporcionando las coordenadas X e Y. Una vez completado el reconocimiento óptico de caracteres, la respuesta se devuelve en formato XML o JSON y el texto extraído se puede guardar en formatos TXT, PDF y HOCR. A continuación, se especifican algunas características de alto nivel.
- Corrección automática de sesgo
- Detección automática y manual del diseño de documentos
- Preprocesamiento automatizado avanzado de imágenes
- Admite varios idiomas internacionales.
- Alta velocidad sin recursos de hardware
Idiomas soportados
Además del idioma inglés, la API es totalmente capaz de reconocer texto en los idiomas francés, alemán, italiano, portugués y español.
Formatos de archivos admitidos
A continuación se especifica la lista completa de formatos de archivos que actualmente admite la API REST para operaciones de OCR.
.bmp, .dib, .jpeg, .jpg, .jpe, .jp2, .png, .webp, .pbm, .pgm, .ppm, .pxm, .pnm, .pfm, .sr, .ras, .tiff, .tif, .exr, .hdr, .pic
OCR en línea con Python
Nuestras API se desarrollan según la arquitectura REST, por lo que en esta sección, exploraremos la conversión de imagen a texto mediante comandos cURL. Entendemos que los comandos cURL son la forma flexible de acceder a las API REST a través de la consola. Ahora, uno de los requisitos previos es generar un token JWT. Para obtener más detalles relacionados, visite Cómo obtener un token JWT utilizando un ID de cliente y un secreto 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"
Una vez que tenga el token JWT, intente utilizar el siguiente comando para realizar una operación de OCR en una imagen ubicada en el almacenamiento en la nube, que contenga texto en 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>"
Conversión de imagen a texto en una imagen local
En esta sección, realizaremos la operación de OCR en la imagen cargada desde la unidad local.
# Para obtener ejemplos completos y archivos de datos, visite 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 y almacenamiento
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())
OCR de Python en imágenes desde almacenamiento en la nube
Aprenderemos los detalles sobre cómo podemos cargar una imagen desde el almacenamiento en la nube y realizar OCR de imagen usando un fragmento de código Python.
# Para obtener ejemplos completos y archivos de datos, visite 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 y almacenamiento
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 imágenes en URL
En caso de que se presente un requisito para realizar un reconocimiento óptico de imágenes en una imagen disponible en una URL web, la API es totalmente capaz y admite esta función. El método postrecognizefromurl de la API se puede utilizar para cumplir con este requisito.
# Para obtener ejemplos completos y archivos de datos, visite 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 y almacenamiento
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())
Conclusión
En este artículo, hemos aprendido los detalles sobre cómo realizar el reconocimiento óptico de caracteres en línea mediante el comando cURL y también mediante un fragmento de código de Python. Como nuestros SDK de la nube están creados bajo la licencia MIT, puede considerar descargar el código fuente completo desde el repositorio de GitHub. Este repositorio también incluye demostraciones gratuitas y, para ejecutarlas, siga los pasos que se indican a continuación.
- Consulte el SDK o consígalo desde pip(pip install aspose-ocr-cloud)
- Establezca su ID de cliente y su secreto de cliente
- Ejecutar la consola Python Demo o UnitTests
Artículos relacionados
Le recomendamos visitar los siguientes enlaces para obtener más información sobre: