Управление документами OCR с GroupDocs для Java и Aspose
В этом руководстве вы узнаете как использовать GroupDocs, чтобы добавить поиск с поддержкой OCR в ваши Java‑приложения, что является ключевой возможностью любого современного document management OCR решения. Объединив GroupDocs.Search с Aspose.OCR, вы сможете преобразовать контент, основанный на изображениях, в поисковый текст, делая системы управления документами гораздо более полезными для конечных пользователей. Мы пройдем настройку, индексацию, поиск и пользовательскую интеграцию OCR, предоставив понятные пошаговые примеры, которые вы можете сразу скопировать в свой проект.
Быстрые ответы
- Какая библиотека обеспечивает OCR‑индексацию? GroupDocs.Search paired with Aspose.OCR.
- Какая версия Java требуется? JDK 8 or higher.
- Нужна ли лицензия? Доступна бесплатная пробная версия; платная лицензия требуется для продакшн.
- Могу ли я индексировать как отдельные, так и встроенные изображения? Yes, enable both options in
IndexingOptions. - Поддерживается ли многопоточность? Yes, you can parallelize indexing for large data sets.
Что такое Document Management OCR?
Document management OCR извлекает текст из изображений (включая сканированные PDF) и сохраняет его в поисковом индексе. GroupDocs.Search отвечает за индексацию и выполнение запросов, а Aspose.OCR выполняет фактическое распознавание символов, предоставляя вам полный document management OCR конвейер.
Почему стоит использовать GroupDocs для OCR‑индексации в Java?
- Высокая точность благодаря продвинутому OCR‑движку Aspose.
- Бесшовная интеграция с Java через Maven или прямые JAR‑файлы.
- Гибкая конфигурация для отдельных или встроенных изображений.
- Масштабируемая производительность с многопоточностью и оптимизацией памяти.
- Корпоративные лицензии для продакшн‑развертываний.
Prerequisites
- GroupDocs.Search ≥ 25.4
- Aspose.OCR (latest version)
- 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.
Получение лицензии
- Free Trial – исследуйте все функции бесплатно.
- Temporary License – расширенный период тестирования.
- Purchase – требуется для продакшн‑развертываний.
Базовая инициализация и настройка
Создайте папку индекса и инициализируйте объект 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;
}
}
Практические применения
- Document Management Systems – быстрый поиск документов, содержащих сканированные изображения.
- Archival Retrieval – поиск исторических записей в огромных архивах.
- Legal Document Analysis – поиск контрактов и доказательств, включающих сканированные подписи или схемы.
- Medical Records Search – индексация форм пациентов, лабораторных результатов и аннотаций к рентгеновским снимкам.
Соображения по производительности
- Размер индекса – исключайте ненужные метаданные, чтобы индекс оставался компактным.
- Многопоточность – обрабатывайте большие партии параллельно для ускорения индексации.
- Управление памятью – контролируйте кучу JVM при работе с изображениями высокого разрешения.
Распространённые проблемы и решения
- License Errors – убедитесь, что правильный файл лицензии помещён в рабочий каталог приложения.
- Missing Images – проверьте доступность путей к изображениям и поддерживаемые форматы (PNG, JPEG, BMP).
- Out‑Of‑Memory – увеличьте кучу JVM (
-Xmx) или обрабатывайте документы небольшими партиями.
Часто задаваемые вопросы
Q: Как решить проблемы с лицензированием GroupDocs.Search?
A: Получите временную лицензию на веб‑сайте GroupDocs, чтобы разблокировать все функции.
Q: Как лучше всего обрабатывать индексацию больших документов?
A: Используйте многопоточность и пакетную обработку для повышения производительности и снижения нагрузки на память.
Q: Можно ли дополнительно настроить параметры OCR в GroupDocs.Search?
A: Да, IndexingOptions позволяет точно настроить поведение OCR, например выбор языка и предобработку изображений.
Q: Какие распространённые советы по устранению неполадок при работе с GroupDocs.Search?
A: Тщательно проверьте пути к каталогам, убедитесь, что все зависимости присутствуют, и просмотрите вывод логов на предмет отсутствующих файлов.
Q: Как интегрировать Aspose.OCR в существующее Java‑приложение?
A: Реализуйте интерфейс IOcrConnector, как показано выше, гарантируя правильную обработку входных изображений.
Ресурсы
Последнее обновление: 2026-03-20
Тестировано с: GroupDocs.Search 25.4, Aspose.OCR latest release
Автор: GroupDocs