TransWikia.com

Определение самых больших групп пикселей opencv, pytesseract

Stack Overflow на русском Asked by shalor1k on February 24, 2021

Есть изображение введите сюда описание изображения. В нём нужно оставить самые большие группы пикселей, т.е силуэты букв. В дальнейшем из "отфильтрованного" изображения будет изыматься текст с помощью библиотеки pytesseract методом pytesseract.image_to_string(). Изображение получено с помощью данного кода:

import numpy as np
import cv2
from PIL import Image

img = cv2.imread("image.png")
crop_img = img[0:90, 55:150]
gray = cv2.cvtColor(crop_img, cv2.COLOR_BGR2GRAY)
ret, thresh = cv2.threshold(gray, 240, 255, cv2.THRESH_BINARY)
crop_img[thresh != 255] = 0

kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (1, 1))
erosion = cv2.erode(crop_img, kernel, iterations = 2)

cv2.imwrite("CROP.jpg",erosion)

На input шло данное изображение введите сюда описание изображения

Заодно, возможно, предложите более действенный способ получения текста с этого изображения)?

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP