🔎 Как распознать цифры на фото с помощью Python? 📸💻

Чтобы распознать цифры на фото в Python, можно использовать библиотеку OpenCV и библиотеку pytesseract для оптического распознавания символов (OCR).


import cv2
import pytesseract

# Загрузка изображения
image = cv2.imread('фото.jpg')

# Преобразование изображения в оттенки серого
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# Применение фильтрации шума
gray = cv2.medianBlur(gray, 3)

# Распознавание текста с помощью pytesseract
digits = pytesseract.image_to_string(gray, config='--psm 13 --oem 3 -c tessedit_char_whitelist=0123456789')

# Вывод распознанных цифр
print(digits)

  

Этот код использует функцию image_to_string из библиотеки pytesseract, чтобы распознать цифры на изображении. Вначале изображение загружается с помощью функции imread из библиотеки OpenCV. Затем изображение преобразуется в оттенки серого с помощью функции cvtColor. Далее применяется фильтрация шума с использованием функции medianBlur. Наконец, функция image_to_string применяется к изображению в оттенках серого с помощью конфигурации "--psm 13 --oem 3 -c tessedit_char_whitelist=0123456789", чтобы распознать только цифры.

Детальный ответ

Как распознать цифры на фото с помощью Python?

Распознавание цифр на фото является важной задачей в области обработки изображений и компьютерного зрения. Благодаря Python и некоторым библиотекам, таким как OpenCV и Tesseract, мы можем легко решить эту задачу. В этой статье я покажу вам примеры кода, которые помогут вам распознать цифры на фото с помощью Python. Давайте начнем!

Установка необходимых библиотек

Перед тем, как приступить к кодированию, необходимо установить несколько библиотек, которые нам потребуются. Одной из важных библиотек является OpenCV, которая предоставляет мощные инструменты для обработки изображений. Вы можете установить ее, выполнив команду:

pip install opencv-python

Кроме того, для распознавания текста на изображениях нам потребуется библиотека Tesseract. Выполните следующую команду для ее установки:

pip install pytesseract

Пример кода для распознавания цифр на фото

Для начала импортируем необходимые модули:

import cv2
import pytesseract

Загрузим фото, на котором содержатся цифры:

image = cv2.imread('photo.jpg')

Прежде чем распознавать цифры, необходимо преобразовать изображение в оттенки серого, чтобы упростить процесс распознавания:

gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

Теперь применим алгоритм бинаризации для выделения цифр на изображении:

ret, thresh = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)

Затем применим операции морфологического преобразования для удаления шумов и улучшения результатов:

kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3))
opening = cv2.morphologyEx(thresh, cv2.MORPH_OPEN, kernel, iterations=1)

Теперь мы можем использовать Tesseract для распознавания цифр на изображении:

text = pytesseract.image_to_string(opening, config='--psm 10 --oem 3 -c tessedit_char_whitelist=0123456789')

Наконец, выведем распознанные цифры:

print(text)

Заключение

В этой статье мы рассмотрели, как использовать Python для распознавания цифр на фото. Мы установили необходимые библиотеки, такие как OpenCV и Tesseract, и предоставили пример кода, который позволяет распознавать цифры на изображении. Теперь вы можете использовать эти знания, чтобы создать свои собственные проекты, связанные с обработкой изображений и распознаванием текста.

Видео по теме

Как распознать текст с картинки / уроки Python

Распознавание текста с изображения на Python | EasyOCR vs Tesseract | Компьютерное зрение

Учим программу распознавать текст на картинках, видео, играх ▲ Python + OpenCV + Tesseract

Похожие статьи:

🔍 Как правильно распаковать вложенные списки в Python? 💡

Что такое регулярные выражения в Python? 🔍🐍

⌨️ Как ввести строковую переменную в Python: простое руководство для начинающих

🔎 Как распознать цифры на фото с помощью Python? 📸💻

🔑 Как получить имя пользователя Telegram API Python

🔑 Как вывести лист без скобок в Питоне? 🐍 Простой и понятный способ!

🔗 Как объединить dataframe в Python: простые способы 🔗