Realizar OCR usando Java

La tecnología Reconocimiento óptico de caracteres (OCR) ha hecho posible reconocer y leer el texto dentro de los documentos e imágenes escaneados. OCR le permite convertir el texto de solo lectura en un formulario editable. El texto convertido puede seguir procesándose para operaciones como el análisis de texto. En este artículo, le mostraré cómo realizar OCR en imágenes (PNG, JPG, BMP y GIF) y convertir imágenes en texto. usando la API Java OCR - Aspose.OCR for Java.

Sugerencia: puede que le interese un Convertidor de texto a GIF gratuito que le permite generar animaciones a partir de textos.

API de Java OCR - Instalación

Aspose.OCR for Java puede descargarse como JAR o instalarse dentro de una aplicación basada en Maven usando las siguientes configuraciones.

Repositorio:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>

Dependencia:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-ocr</artifactId>
    <version>20.5</version>
</dependency>

Convertir imagen a texto usando Java

La mayoría de las veces, las imágenes para OCR son las páginas de documentos escaneados, facturas, recibos, facturas, etc., donde el texto se compone de varias líneas. En tales escenarios, debe recuperar todo el texto de la imagen. Los siguientes son los pasos para realizar OCR en la imagen que tiene varias líneas de texto usando Aspose.OCR for Java.

El siguiente ejemplo de código muestra cómo realizar OCR en una imagen y convertir una imagen en texto usando Java.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-ocr/Aspose.OCR-for-Java
// La ruta al directorio de documentos.
String dataDir = Utils.getSharedDataDir(PerformOCROnPage.class);

// El camino de la imagen
String imagePath = dataDir + "p3.png";

//Crear instancia de API
AsposeOCR api = new AsposeOCR();

// Reconocer página por ruta completa al archivo
try {
	String result = api.RecognizePage(imagePath);
	System.out.println("Result: " + result);
} catch (IOException e) {
	e.printStackTrace();
}

Convertir imágenes que tienen una sola línea de texto

En el ejemplo anterior, hemos realizado OCR en una imagen que tiene varias líneas de texto. Sin embargo, podría darse el caso de que la imagen contenga una sola línea de texto. Para tal caso, puede configurar la API en consecuencia. Los siguientes son los pasos para convertir una imagen que tiene una sola línea de texto.

El siguiente ejemplo de código muestra cómo realizar OCR en una imagen que tiene una sola línea de texto usando Java.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-ocr/Aspose.OCR-for-Java
// La ruta al directorio de documentos.
String dataDir = Utils.getSharedDataDir(RecognizeLine.class);

// El camino de la imagen
String imagePath = dataDir + "0001460985.Jpeg";

//Crear instancia de API
AsposeOCR api = new AsposeOCR();

try {
	String result = api.RecognizeLine(imagePath);
	System.out.println("File: " + imagePath);
	System.out.println("Result line: " + result);
} catch (IOException e) {
	e.printStackTrace();
}

Conclusión

En este artículo, ha visto cómo convertir imágenes PNG, JPG, BMP y GIF a texto utilizando la API Java OCR. Los ejemplos de código muestran cómo realizar OCR en imágenes que tienen una o varias líneas de texto dentro de aplicaciones Java. Puede obtener más información sobre la API OCR de Java de Aspose utilizando documentación.

Ver también