Прямо сейчас я пытаюсь создать одну программу, которая удаляет текст из фона, но я сталкиваюсь с большой проблемой, проходящей через него
Мой подход заключается в использовании pytesseract для получения текстовых полей и после того, как я получаю блокиЯ использую cv2.inpaint, чтобы нарисовать его и удалить текст оттуда. Короче говоря:
d = pytesseract.image_to_data(img, output_type=Output.DICT) # Get text
n_boxes = len(d['level']) # get boxes
for i in range(n_boxes): # Looping through boxes
# Get coordinates
(x, y, w, h) = (d['left'][i], d['top'][i], d['width'][i], d['height'][i])
crop_img = img[y:y+h, x:x+w] # Crop image
gray = cv2.cvtColor(crop_img, cv2.COLOR_BGR2GRAY)
gray = inverte(gray) # Inverse it
thresh = cv2.threshold(gray, 0, 255, cv2.THRESH_OTSU)[1]
dst = cv2.inpaint(crop_img, thresh, 10, cv2.INPAINT_TELEA) # Then Inpaint
img[y:y+h, x:x+w] = dst # Place back cropped image back to the source image
Теперь проблема в том, что я не могу удалить текст полностью Изображение:
Теперь я не уверен, какой другой методЯ могу использовать для удаления текста с изображения, я новичок в этом, поэтому я сталкиваюсь с проблемой. Любая помощь очень ценится
Примечание: изображение выглядит растянутым, потому что я изменил его размер, чтобы показать его на экране размером
Исходное изображение: