Brother OCR, библиотека с открытым исходным кодом для Python, которая распознает коды проверки.
Brother OCR, библиотека с открытым исходным кодом для Python, которая распознает коды проверки.

OCR (оптическое распознавание символов) — это технология, используемая для преобразования печатного или рукописного текста в редактируемые и доступные для поиска электронные документы. Он анализирует формы и структуры символов на изображениях и преобразует их в машиночитаемые текстовые данные. Технология оптического распознавания символов играет важную роль во многих областях, включая управление документами, автоматизированный офис, оцифровку библиотек, распознавание номерных знаков и т. д.

Для извлечения текста OCR ранее также был представлен Umi-OCR. Этот инструмент, и то, чем мы собираемся поделиться сегодня, в основном представляет собой инструмент с открытым исходным кодом, используемый для решения проблем, связанных с кодами проверки. ддддокр адрес проекта автора на github следующий:https://github.com/sml2h3/ddddocr?tab=readme-ov-file

Когда мы выполняем некоторые ежедневные операции, связанные с автоматическим тестированием, нам иногда необходимо вводить коды проверки. Сейчас на рынке представлено множество типов кодов проверки. Основные из них следующие:

  1. Перетащите ползунок в указанное положение
  2. Нажмите на указанный текст последовательно
  3. Введите комбинацию букв+цифр на картинке
  4. Посчитайте числа на картинке, сложите, вычтите, умножьте и разделите результаты.
  5. сотовый телефон Проверочный кодиз
  6. Есть также некоторые нечеловеческие объекты распознавания (тип эмо). ddddorc в основном используется для решения таких сценариев, как идентификация текстового содержимого изображения, такого как буквы и китайские иероглифы, а также скользящие ползунки. Итак, давайте установим и воспользуемся им, чтобы опробовать эффект ddddocr. Требуемая среда – это Python<=3.9Версия。window,linux,Mac поддерживает,Но он не поддерживаетсяM1。Просто введите в терминале pip install ddddocrПодождите установки и затем используйте его.。 Ниже приведен пример использования:
  7. Распознавание текста на изображениях: подходит для ввода определенных букв или цифр на изображениях и т. д.
Язык кода:javascript
копировать
import ddddocr

ocr = ddddocr.DdddOcr()
#Путь к изображению
with open("img.png", 'rb') as f:
    image = f.read()
res = ocr.classification(image)
print(res)

2. Обнаружение цели. Подходит для щелчков по тексту и значков. Проще говоря, для кодов подтверждения, вводимых щелчком мыши, текст или значки на изображении могут быть быстро обнаружены.

Язык кода:javascript
копировать
import ddddocr
import cv2

det = ddddocr.DdddOcr(det=True)

with open("test.jpg", 'rb') as f:
    image = f.read()

poses = det.detection(image)
print(poses)

im = cv2.imread("test.jpg")

for box in poses:
    x1, y1, x2, y2 = box
    im = cv2.rectangle(im, (x1, y1), (x2, y2), color=(0, 0, 255), thickness=2)

cv2.imwrite("result.jpg", im)

Творить непросто. Если вы считаете, что эта статья вам полезна, поставьте мне лайк. Это будет моей мотивацией продолжать делиться высококачественным контентом.

boy illustration
Поиграйтесь с интеграцией Spring Boot (платформа запланированных задач Quartz)
boy illustration
Несколько популярных режимов интерфейса API: RESTful, GraphQL, gRPC, WebSocket, Webhook.
boy illustration
Redis: практика публикации (pub) и подписки (sub)
boy illustration
Подробное объяснение пакета Golang Context
boy illustration
Краткое руководство: создайте свое первое приложение .NET Aspire
boy illustration
Краткое обсуждение метода пакетной вставки MyBatis: обработка 100 000 фрагментов данных занимает всего 2 секунды.
boy illustration
[Инструмент] Используйте nvm для управления переключением версий nodejs, это так здорово!
boy illustration
HTML можно преобразовать в word_html для отображения текстовых документов.
boy illustration
Статья Spring Security 6.x для быстрого понимания принципов настройки
boy illustration
Не забудьте изменить имя каждого модуля RUOYI один раз, чтобы избежать мошенничества ~~~
boy illustration
Научите вас шаг за шагом, как интегрировать систему обслуживания клиентов Hunyuan AI Q&A от 0 до 1.
boy illustration
Подробное объяснение Gzip: принципы и применение алгоритмов сжатия.
boy illustration
Скачать Tomcat - ссылка для скачивания на официальном сайте tomcat7, tomcat8, tomcat9
boy illustration
Развертывание IIS.NetCore
boy illustration
[Оптимизация памяти Android] Общие функции инструмента Android Profiler (мониторинг памяти | снимок памяти)
boy illustration
Встроенная в Springboot пользовательская конфигурация временного каталога, связанного с Tomcat.
boy illustration
Краткое руководство по началу работы с Element-UI
boy illustration
Руководство пользователя ГОРМ
boy illustration
Одна статья для понимания артефакта развязки внутренних компонентов Spring Event (событие Spring)
boy illustration
Java перехватывает строку после определенного символа_java, как перехватить строку
boy illustration
Давайте кратко поговорим о технологии копирования на записи.
boy illustration
Выполнение собственных условий SQL-запроса в MyBatis Plus
boy illustration
Напоминание о выпуске общедоступной учетной записи WeChat (интерфейс сообщения шаблона общедоступной учетной записи WeChat)
boy illustration
5 шагов для установки среды протокола
boy illustration
Наиболее полные коды состояния HTTP
boy illustration
На основе языка Go мы шаг за шагом научим вас внедрять структуру системы управления серверной частью.
boy illustration
Эффективное управление журналами с помощью Spring Boot и Log4j2: подробное объяснение конфигурации
boy illustration
Что делать, если telnet не является внутренней или внешней командой [легко понять]
boy illustration
php-объект для анализа json_php json
boy illustration
Введение в принцип запуска Springboot, процесс запуска и механизм запуска.