Как использовать GroupDocs для OCR‑индексации в Java с Aspose
В этом руководстве вы узнаете как использовать GroupDocs для добавления поиска на основе OCR в ваши Java‑приложения. Комбинируя GroupDocs.Search с Aspose.OCR, вы можете преобразовать контент, представленный в виде изображений, в поисковый текст, делая системы управления документами гораздо более полезными. Мы пройдем настройку, индексацию, поиск и пользовательскую интеграцию OCR, предоставив понятные пошаговые примеры.
Быстрые ответы
- Какая библиотека обеспечивает OCR‑индексацию? GroupDocs.Search в паре с Aspose.OCR.
- Какая версия Java требуется? JDK 8 или выше.
- Нужна ли лицензия? Доступна бесплатная пробная версия; платная лицензия требуется для продакшн‑использования.
- Можно ли индексировать как отдельные, так и встроенные изображения? Да, включите обе опции в
IndexingOptions. - Поддерживается ли многопоточность? Да, индексацию можно параллелизировать для больших наборов данных.
Что такое OCR‑индексация с GroupDocs?
OCR‑индексация извлекает текст из изображений (включая отсканированные PDF) и сохраняет его в поисковом индексе. GroupDocs.Search отвечает за индексацию и выполнение запросов, а Aspose.OCR выполняет собственно распознавание символов.
Почему стоит использовать GroupDocs для OCR‑индексации в Java?
- Высокая точность благодаря продвинутому OCR‑движку Aspose.
- Бесшовная интеграция с Java через Maven или прямые JAR‑файлы.
- Гибкая конфигурация для отдельных и встроенных изображений.
- Масштабируемая производительность с поддержкой многопоточности и оптимизаций памяти.
Требования
- GroupDocs.Search ≥ 25.4
- Aspose.OCR (последняя версия)
- JDK 8+ и IDE (IntelliJ, Eclipse, NetBeans)
- Базовые знания Java; Maven полезен, но не обязателен
Настройка GroupDocs.Search для Java
Использование Maven
Добавьте репозиторий и зависимость в ваш pom.xml:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/search/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-search</artifactId>
<version>25.4</version>
</dependency>
</dependencies>
Прямая загрузка
Или скачайте последнюю версию GroupDocs.Search для Java с GroupDocs releases.
Приобретение лицензии
- Бесплатная пробная версия – исследуйте все функции без оплаты.
- Временная лицензия – продлённый тестовый период.
- Покупка – требуется для продакшн‑развёртываний.
Базовая инициализация и настройка
Создайте папку индекса и инициализируйте объект Index:
import com.groupdocs.search.Index;
// Specify the directory where the index will be stored.
String indexFolder = "YOUR_OUTPUT_DIRECTORY/OcrSupport";
// Create an instance of Index class at the specified location.
Index index = new Index(indexFolder);
Как использовать GroupDocs для OCR‑индексации
Создание индекса
Сначала настройте папку, в которой будут храниться файлы индекса:
String indexFolder = "YOUR_OUTPUT_DIRECTORY/OcrSupport";
Index index = new Index(indexFolder);
Настройка параметров OCR‑индексации
Включите OCR для отдельных и встроенных изображений и подключите пользовательский OCR‑коннектор:
import com.groupdocs.search.options.IndexingOptions;
IndexingOptions options = new IndexingOptions();
options.getOcrIndexingOptions().setEnabledForSeparateImages(true);
options.getOcrIndexingOptions().setEnabledForEmbeddedImages(true);
// Set a custom OCR connector.
options.getOcrIndexingOptions().setOcrConnector(new OcrConnector());
Индексация документов
Добавьте исходные документы (PDF, Word, изображения и т.д.) в индекс:
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY";
index.add(documentsFolder, options);
Поиск в индексе
Выполните поисковый запрос по проиндексированному контенту:
import com.groupdocs.search.results.SearchResult;
String query = "water";
SearchResult result = index.search(query);
Реализация OCR‑коннектора
Используйте Aspose.OCR для распознавания текста из изображений. Реализуйте интерфейс IOcrConnector, как показано:
import com.groupdocs.search.options.IOcrConnector;
import com.groupdocs.search.options.OcrContext;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import com.aspose.ocr.AsposeOCR;
public class OcrConnector implements IOcrConnector {
@Override
public final String recognize(OcrContext context) {
if (null == context.getImageLocation()) {
throw new RuntimeException("The image type is not supported: " + context.getImageLocation());
}
BufferedImage image = ImageIO.read(context.getImageLocation().toFile());
AsposeOCR api = new AsposeOCR();
String text = api.RecognizePage(image);
return text;
}
}
Практические применения
- Системы управления документами – быстрый поиск документов, содержащих отсканированные изображения.
- Архивный поиск – нахождение исторических записей в огромных архивах.
- Анализ юридических документов – поиск по контрактам и доказательствам, включающим сканированные подписи или схемы.
- Поиск в медицинских записях – индексация форм пациентов, лабораторных результатов и аннотаций к рентгеновским снимкам.
Соображения по производительности
- Размер индекса – исключайте ненужные метаданные, чтобы индекс оставался компактным.
- Многопоточность – обрабатывайте большие партии параллельно для ускорения индексации.
- Управление памятью – следите за кучей JVM при работе с изображениями высокого разрешения.
Распространённые проблемы и решения
- Ошибки лицензии – убедитесь, что правильный файл лицензии размещён в рабочем каталоге приложения.
- Отсутствие изображений – проверьте доступность путей к изображениям и поддерживаемые форматы (PNG, JPEG, BMP).
- Out‑Of‑Memory – увеличьте размер кучи JVM (
-Xmx) или обрабатывайте документы небольшими партиями.
Часто задаваемые вопросы
В: Как решить проблемы с лицензированием GroupDocs.Search?
О: Получите временную лицензию на сайте GroupDocs, чтобы разблокировать все функции.
В: Как лучше всего обрабатывать индексацию больших объёмов документов?
О: Используйте многопоточность и пакетную обработку для повышения производительности и снижения нагрузки на память.
В: Можно ли дополнительно настроить параметры OCR в GroupDocs.Search?
О: Да, IndexingOptions позволяет тонко настраивать поведение OCR, например, выбор языка и предобработку изображений.
В: Какие типичные советы по устранению неполадок при работе с GroupDocs.Search?
О: Проверьте пути к каталогам, убедитесь, что все зависимости присутствуют, и изучите вывод логов на предмет отсутствующих файлов.
В: Как интегрировать Aspose.OCR в существующее Java‑приложение?
О: Реализуйте интерфейс IOcrConnector, как показано выше, и корректно обрабатывайте ввод изображений.
Ресурсы
Последнее обновление: 2026-01-11
Тестировано с: GroupDocs.Search 25.4, Aspose.OCR последняя версия
Автор: GroupDocs