Безкоштовна бібліотека Java для оптичного розпізнавання тексту та аналізу документів

Бібліотека Java OCR з відкритим вихідним кодом для включення можливостей OCR у програми Java та дозволяє видобувати текст із зображень, а також зі сканованих документів.

У сучасну цифрову епоху оптичне розпізнавання символів (OCR) стало важливим інструментом для вилучення тексту із зображень і відсканованих документів. Технологія OCR дозволяє перетворювати друкований або рукописний текст у машиночитані дані, відкриваючи численні можливості для аналізу документів, вилучення даних і автоматизації. Серед багатьох доступних рішень OCR Tess4J виділяється як потужна бібліотека з відкритим вихідним кодом, яка поєднує в собі універсальність механізму OCR Tesseract із простотою програмування на Java.

Бібліотека Tess4J дає змогу розробникам Java легко включати можливості OCR у свої програми. Це Java-оболонка для Tesseract, механізму оптичного розпізнавання символів, спочатку розробленого Hewlett-Packard і наразі підтримуваного Google. Tess4J використовує механізм OCR Tesseract, відомий своєю точністю. Він використовує передові алгоритми та методи машинного навчання для досягнення надійного вилучення тексту із зображень, забезпечуючи високоякісні результати. Він забезпечує інтеграцію оптичного розпізнавання символів у програми Java, що робить його сумісним із різними платформами, зокрема Windows, Linux і macOS.

Tess4J надає простий і добре задокументований API, що полегшує розробникам інтеграцію можливостей OCR у свої програми Java. Tess4J — це універсальна та надійна бібліотека з відкритим вихідним кодом, яка дозволяє розробникам інтегрувати потужні можливості OCR у свої програми Java. Завдяки підтримці кількох мов, функціям попередньої обробки зображень, можливостям перетворення PDF і системі підрахунку балів Tess4J забезпечує ефективне та надійне рішення для вилучення тексту та аналізу документів.

Previous Next

Початок роботи з Tess4J

Рекомендований спосіб встановлення Tess4J – використання Maven. Будь ласка, використовуйте наступну команду для плавного встановлення.

Залежність Maven для Tess4J


<dependencies>
	<dependency>
	<groupId>net.sourceforge.tess4j</groupId>
	<artifactId>tess4j;/artifactId>
	<version>X.X.X</version>
    </dependency>
</dependencies>

Встановіть Tess4J через GitHub

 git clone https://github.com/nguyenq/tess4j.git  

Ви також можете встановити його вручну; завантажте файли останньої версії безпосередньо зі сховища GitHub.

Вилучення вмісту через Java API

Бібліотека Tess4J з відкритим кодом дозволяє розробникам програмного забезпечення отримувати текст із різних типів зображень у програмах Java. Бібліотека дозволяє видобувати текст із зображень, дозволяючи програмам аналізувати та обробляти текстовий вміст. Ця можливість знаходить застосування в таких сферах, як аналіз настроїв, підсумовування тексту та пошук інформації. Бібліотека також спрощує завантаження механізму оптичного розпізнавання символів Tesseract, вилучення вмісту вказаного зображення та друк видобутого тексту на консолі.

Видобування вмісту за допомогою бібліотеки OCR Java

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();
        }
    }
}

Перетворення PDF у звичайний текст за допомогою Java API

Бібліотека Tess4J з відкритим кодом надає повну функціональність для завантаження та перетворення PDF-документів у звичайний текст у програмах Java. Tess4J може перетворювати PDF-документи з можливістю пошуку у звичайний текст, дозволяючи розробникам отримувати вміст із PDF-файлів і виконувати подальший аналіз або обробку даних. У наступному прикладі показано, як розробники програмного забезпечення можуть перетворити існуючий PDF-файл у звичайний текст у програмах Java.

Як перетворити існуючий PDF-файл на простий текст?

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();
        }
    }
}

 Українська