Задать вопрос
@Fee1in

Почему tesserat не распознает цифры? Зачеркнутый текст?

Всем привет! Есть картинка цифровой капчи, но tesseract не распознает цифры на ней.
Изначально картинка маленькая, ее увеличиваю
import pytesseract
import cv2

pytesseract.pytesseract.tesseract_cmd = 'C:\\Program Files\\Tesseract-OCR\\tesseract.exe'
image = cv2.imread('crop0.jpg')
scale_percent = 250
width = int(image.shape[1] * scale_percent / 100)
height = int(image.shape[0] * scale_percent / 100)
dsize = (width, height)
image = cv2.resize(image, dsize)

gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
blur = cv2.GaussianBlur(gray, (3,3), 0)
thresh = cv2.threshold(blur, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)[1]

#Удаление шумов
kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3,3))
opening = cv2.morphologyEx(thresh, cv2.MORPH_OPEN, kernel, iterations=1)
invert = 255 - opening


#Настройки распознования
#custom_config = r'--psm 7 -c tessedit_char_whitelist=0123456789'
custom_config = r'--oem 3 --psm 10'
data = pytesseract.image_to_string(invert, config=custom_config)
print(data)
cv2.imshow('thresh', thresh)
cv2.imshow('opening', opening)
cv2.imshow('invert', invert)
cv2.waitKey()

Пробовал в custom_config прописать чтобы пытался распознать только цифровые символы
"tessedit_char_whitelist=0123456789", но не распознает.
crop0.jpg659bbac26f963298091714.jpeg
crop7.jpg659bbacb1b7f0065560047.jpeg
Если crop0 без перечеркнутой линии, то crop7 уже перечеркнутый, как убрать линию перечеркнутую?
  • Вопрос задан
  • 160 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы