1. منتجات
  2.   OCR
  3.   Java
  4.   Tess4J
 
  

مكتبة جافا المجانية لاستخراج نص التعرف الضوئي على الحروف وتحليل المستندات

مكتبة Java OCR مفتوحة المصدر لدمج قدرات التعرف الضوئي على الحروف في تطبيقات Java وتسمح باستخراج النص من الصور وكذلك المستندات الممسوحة ضوئيًا بسهولة.

في العصر الرقمي الحالي، أصبح التعرف الضوئي على الحروف (OCR) أداة أساسية لاستخراج النص من الصور والمستندات الممسوحة ضوئيًا. تتيح تقنية التعرف الضوئي على الحروف (OCR) تحويل النص المطبوع أو المكتوب بخط اليد إلى بيانات يمكن قراءتها آليًا، مما يفتح إمكانيات عديدة لتحليل المستندات واستخراج البيانات والأتمتة. من بين العديد من حلول التعرف الضوئي على الحروف المتاحة، تبرز Tess4J كمكتبة قوية مفتوحة المصدر تجمع بين تعدد استخدامات محرك Tesseract OCR وبساطة برمجة Java.

تعمل مكتبة Tess4J على تمكين مطوري Java من دمج إمكانات التعرف الضوئي على الحروف (OCR) بسلاسة في تطبيقاتهم. وهو عبارة عن غلاف Java لـ Tesseract، وهو محرك OCR تم تطويره في الأصل بواسطة Hewlett-Packard وتتم صيانته حاليًا بواسطة Google. يستفيد Tess4J من محرك التعرف الضوئي على الحروف الخاص بـ Tesseract، المشهور بدقته. ويستخدم خوارزميات متقدمة وتقنيات التعلم الآلي لتحقيق استخراج موثوق للنص من الصور، مما يضمن نتائج عالية الجودة. فهو يتيح تكامل التعرف الضوئي على الحروف (OCR) في تطبيقات Java، مما يجعله متوافقًا مع الأنظمة الأساسية المختلفة، بما في ذلك Windows، وLinux، وmacOS.

يوفر Tess4J واجهة برمجة تطبيقات واضحة وموثقة جيدًا، مما يسهل على المطورين دمج إمكانات التعرف الضوئي على الحروف في تطبيقات Java الخاصة بهم. Tess4J هي مكتبة مفتوحة المصدر ومتعددة الاستخدامات وتمكن المطورين من دمج إمكانات التعرف الضوئي على الحروف القوية في تطبيقات Java الخاصة بهم. بفضل دعمه للغات المتعددة، وميزات المعالجة المسبقة للصور، وإمكانيات تحويل PDF، ونظام تسجيل الثقة، يوفر Tess4J حلاً فعالاً وموثوقًا لاستخراج النص وتحليل المستندات.

Previous Next

البدء مع Tess4J

الطريقة الموصى بها لتثبيت Tess4J هي استخدام Maven. الرجاء استخدام الأمر التالي للتثبيت السلس.

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

تحويل 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();
        }
    }
}

 عربي