Вопрос или проблема
Моя компания поручила мне найти OCR-движок, который соответствовал бы нашим потребностям в разработке. Быстрый поиск в Google дает множество вариантов, но у нас нет времени на их полную проверку, и мы надеялись сократить список. Бесплатные или платные лицензии подойдут в обоих случаях.
На данный момент мы рассмотрели: Tesseract – это решение с открытым исходным кодом, что отлично, однако наша команда в целом новичок в OCR-технологиях, и мы беспокоимся, что сообществу на форумах не хватит знаний для надлежащего руководства Adobe OCR – это сработало нормально в тестах, но поддерживаемые языки крайне ограничены.
В настоящее время мы только ищем возможность реализации английского и нескольких выбранных европейских языков, но хотели бы иметь возможность в будущем расширить поддержку при успешном развитии приложения.
Наше приложение – это .net веб API, написанный на .NET 5
Будем признательны за любые предложения или рекомендации на основе личного опыта работы с OCR-движками
Если вы ищете библиотеку, поддерживающую несколько языков, вы можете ознакомиться с продуктами компании, в которой я работаю, так как у нас есть бесплатная версия для оценки нашего коммерческого OCR-движка. OCR можно выполнить на изображении с использованием всего нескольких строк кода:
OcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD);
ocrEngine.Startup(null, null, null, null);
ocrEngine.AutoRecognizeManager.Run(inputFile, outputFile, DocumentFormat.PDF, null);
Библиотеки можно получить в веб API для .net 5 через пакет Leadtools.Ocr nuget здесь:
https://www.nuget.org/packages/Leadtools.Ocr/
Дополнительную информацию о поддерживаемых языках можно найти здесь: https://www.leadtools.com/help/sdk/v21/dh/to/ocr-languages-and-spell-checking.html
.
Ответ или решение
Оптимальный выбор OCR-движка для вашего проекта на платформе .NET может значительно ускорить процесс разработки, а также повысить качество обработки изображений. Учитывая, что ваша команда ограничена во времени и опыте с технологиями OCR, важно подобрать решение, которое не только соответствует вашим текущим требованиям, но и обладает потенциальной масштабируемостью.
Основные рекомендации
-
Tesseract OCR
- Преимущества: Это свободное ПО, что означает отсутствие затрат на лицензии. Оно пользуется широкой популярностью, что гарантирует регулярные обновления и наличие множества примеров использования.
- Недостатки: Поскольку ваша команда недавно начала осваивать технологии OCR, может возникнуть сложность в решении специфических проблем без сильной поддерживающей инфраструктуры.
- Рекомендация: Подойдет в том случае, если ваша компания готова инвестировать время в изучение и настройку.
-
Adobe OCR
- Преимущества: Легкость интеграции и хорошая производительность в стандартных задачах OCR.
- Недостатки: Ограниченная поддержка языков может стать препятствием, если расширение на новые рынки будет в ваших планах.
- Рекомендация: Хорошо подходит для начальных этапов, но следует подготовиться к изменениям в будущем.
-
Leadtools OCR
- Преимущества: Широкая поддержка языков, эффективная интеграция в .NET 5 через NuGet пакет, отзывчивая команда поддержки и наличие коммерческой лицензии при необходимости.
- Недостатки: Возможные затраты на приобретение коммерческой лицензии, если оценочная версия окажется недостаточной.
- Рекомендация: Leadtools OCR представляется наиболее сбалансированным выбором для быстрого внедрения и лёгкой поддержки нескольких языков.
Внедрение и развертывание
Для интеграции с вашим .NET 5 веб-API рекомендуется начать с оценки Leadtools OCR. Скачать библиотеки можно через пакет Leadtools.Ocr, который доступен по ссылке на NuGet. Инструмент предоставляет простой API, позволяющий выполнять операции распознавания всего с несколькими строками кода:
OcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD);
ocrEngine.Startup(null, null, null, null);
ocrEngine.AutoRecognizeManager.Run(inputFile, outputFile, DocumentFormat.PDF, null);
Подробнее о поддерживаемых языках узнавайте из официальной документации.
Вывод
В заключение, основное внимание стоит уделить таким аспектам, как поддержка множества языков, простота интеграции и качество поддержки разработчиков. Leadtools OCR, на данный момент, наилучшим образом отвечает вашим требованиям и оказывается на оптимальном уровне затрат эффективности.