Удалите фоновый текст и шум из изображения, используя обработку изображений с помощью OpenCV.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Удалите фоновый текст и шум из изображения, используя обработку изображений с помощью OpenCV.

Сообщение Anonymous »

У меня есть эти изображения

Изображение


Изображение

Для которого я хочу удалить текст в фон. Должны остаться только символы капчи (т.е. K6PwKA, YabVzu). Задача состоит в том, чтобы позже идентифицировать эти символы с помощью тессеракта.

Это то, что я пробовал, но это не дает большой точности.

Код: Выделить всё

import cv2
import pytesseract

pytesseract.pytesseract.tesseract_cmd = r"C:\Users\HPO2KOR\AppData\Local\Tesseract-OCR\tesseract.exe"
img = cv2.imread("untitled.png")
gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
gray_filtered = cv2.inRange(gray_image, 0, 75)
cv2.imwrite("cleaned.png", gray_filtered)
Как я могу улучшить то же самое?

Примечание:
Я перепробовал все предложения, которые мне предлагали по этому вопросу, и ни одно из них мне не помогло.

РЕДАКТИРОВАТЬ:
Согласно Элиас, я попытался найти цвет текста капчи с помощью фотошопа, преобразовав его в оттенки серого, что оказался где-то посередине [100, 105]. Затем я устанавливаю порог изображения на основе этого диапазона. Но результат, который я получил, не дал удовлетворительного результата от тессеракта.

Код: Выделить всё

gray_filtered = cv2.inRange(gray_image, 100, 105)
cv2.imwrite("cleaned.png", gray_filtered)
gray_inv = ~gray_filtered
cv2.imwrite("cleaned.png", gray_inv)
data = pytesseract.image_to_string(gray_inv, lang='eng')
Вывод:

Код: Выделить всё

'KEP wKA'
Результат:

[img]https://i .sstatic.net/AqYeO.png[/img]


РЕДАКТИРОВАТЬ 2:

Код: Выделить всё

def get_text(img_name):
lower = (100, 100, 100)
upper = (104, 104, 104)
img = cv2.imread(img_name)
img_rgb_inrange = cv2.inRange(img, lower, upper)
neg_rgb_image = ~img_rgb_inrange
cv2.imwrite('neg_img_rgb_inrange.png', neg_rgb_image)
data = pytesseract.image_to_string(neg_rgb_image, lang='eng')
return data
дает:

[img]https://i .sstatic.net/rSrSz.png[/img]


и текст как

Код: Выделить всё

GXuMuUZ
Есть ли способ немного смягчить его?

Подробнее здесь: https://stackoverflow.com/questions/601 ... with-openc
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Удалите фоновый текст и шум из изображения, используя обработку изображений с помощью OpenCV.
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Удалите шум из изображения, чтобы обработать текст с помощью OCR.
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Удалите шум из изображения, чтобы обработать текст с помощью OCR.
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Удалите шум из изображения, чтобы обработать текст с помощью OCR.
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Фоновый шум при попытке загрузить большие пиксельные изображения в Pygame
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»