Biblioteca Java gratuita para extracción de texto OCR y análisis de documentos
Biblioteca Java OCR de código abierto para incorporar capacidades de OCR en aplicaciones Java y permite extraer texto de imágenes y documentos escaneados.
En la era digital actual, el reconocimiento óptico de caracteres (OCR) se ha convertido en una herramienta esencial para extraer texto de imágenes y documentos escaneados. La tecnología OCR permite la conversión de texto impreso o escrito a mano en datos legibles por máquina, lo que abre numerosas posibilidades para el análisis de documentos, la extracción de datos y la automatización. Entre las muchas soluciones de OCR disponibles, Tess4J se destaca como una poderosa biblioteca de código abierto que combina la versatilidad del motor Tesseract OCR con la simplicidad de la programación Java.
La biblioteca Tess4J permite a los desarrolladores de Java incorporar capacidades de OCR sin problemas en sus aplicaciones. Es un contenedor de Java para Tesseract, un motor de OCR desarrollado originalmente por Hewlett-Packard y actualmente mantenido por Google. Tess4J aprovecha el motor OCR de Tesseract, reconocido por su precisión. Emplea algoritmos avanzados y técnicas de aprendizaje automático para lograr una extracción confiable de texto a partir de imágenes, garantizando resultados de alta calidad. Permite la integración de OCR en aplicaciones Java, lo que la hace compatible con diferentes plataformas, incluidas Windows, Linux y macOS.
Tess4J proporciona una API sencilla y bien documentada, lo que facilita a los desarrolladores la integración de capacidades de OCR en sus aplicaciones Java. Tess4J es una biblioteca de código abierto versátil y robusta que permite a los desarrolladores integrar potentes capacidades de OCR en sus aplicaciones Java. Con soporte para múltiples idiomas, funciones de preprocesamiento de imágenes, capacidades de conversión de PDF y sistema de puntuación de confianza, Tess4J proporciona una solución eficiente y confiable para la extracción de texto y el análisis de documentos.
Comenzando con Tess4J
La forma recomendada de instalar Tess4J es utilizando Maven. Utilice el siguiente comando para una instalación sin problemas.
Dependencia de Maven para Tess4J
<dependencies>
<dependency>
<groupId>net.sourceforge.tess4j</groupId>
<artifactId>tess4j;/artifactId>
<version>X.X.X</version>
</dependency>
</dependencies>
Instalar Tess4J a través de GitHub
git clone https://github.com/nguyenq/tess4j.git
También puedes instalarlo manualmente; descargue los archivos de la última versión directamente desde el repositorio GitHub.
Extracción de contenido mediante API de Java
La biblioteca Tess4J de código abierto permite a los desarrolladores de software extraer texto de varios tipos de imágenes dentro de aplicaciones Java. La biblioteca permite la extracción de texto de imágenes, lo que permite a las aplicaciones analizar y procesar el contenido textual. Esta capacidad encuentra aplicaciones en áreas como análisis de sentimientos, resúmenes de texto y recuperación de información. La biblioteca también facilita la carga del motor Tesseract OCR, realizar la extracción de contenido en la imagen especificada e imprimir el texto extraído en la consola.
Realizar extracción de contenido utilizando la biblioteca Java OCR
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;
public class ContentExtractionExample {
public static void main(String[] args) {
// Path to the Tesseract OCR installation directory
String tessDataPath = "path/to/tesseract";
// Initialize Tesseract instance
Tesseract tesseract = new Tesseract();
tesseract.setDatapath(tessDataPath);
try {
// Set the language for OCR (e.g., "eng" for English)
tesseract.setLanguage("eng");
// Path to the image file for content extraction
String imagePath = "path/to/image.jpg";
// Perform content extraction
String extractedText = tesseract.doOCR(new File(imagePath));
System.out.println(extractedText);
} catch (TesseractException e) {
e.printStackTrace();
}
}
}
Conversión de PDF a texto sin formato mediante API de Java
La biblioteca de código abierto Tess4J ha proporcionado una funcionalidad completa para cargar y convertir documentos PDF en texto sin formato dentro de aplicaciones Java. Tess4J puede convertir documentos PDF con capacidad de búsqueda en texto sin formato, lo que permite a los desarrolladores extraer contenido de archivos PDF y realizar análisis o procesamiento de datos adicionales. El siguiente ejemplo muestra cómo los desarrolladores de software pueden convertir un archivo PDF existente en texto sin formato dentro de aplicaciones Java.
¿Cómo convertir un archivo PDF existente en texto sin formato?
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;
import java.io.File;
import java.io.IOException;
public class PDFToTextConverter {
public static void main(String[] args) {
// Path to the PDF file
String filePath = "path/to/your/pdf/file.pdf";
try {
// Load the PDF document
PDDocument document = PDDocument.load(new File(filePath));
// Create an instance of Tesseract OCR engine
Tesseract tesseract = new Tesseract();
// Set the path to the tessdata directory (containing language data)
tesseract.setDatapath("path/to/your/tessdata/directory");
// Iterate over each page of the PDF document
for (int pageIndex = 0; pageIndex < document.getNumberOfPages(); pageIndex++) {
// Extract the text from the current page
PDFTextStripper stripper = new PDFTextStripper();
stripper.setStartPage(pageIndex + 1);
stripper.setEndPage(pageIndex + 1);
String pageText = stripper.getText(document);
// Perform OCR on the extracted text
String ocrText = tesseract.doOCR(pageText);
// Output the OCR result
System.out.println("Page " + (pageIndex + 1) + " OCR Result:");
System.out.println(ocrText);
System.out.println("--------------------------------------");
}
// Close the PDF document
document.close();
} catch (IOException | TesseractException e) {
e.printStackTrace();
}
}
}