Я проделал некоторый процесс, чтобы найти номерной знак, и применил перспективное преобразование к точкам прямоугольника номера. .
Текущая проблема: я не могу найти правильный способ сегментации символов.
Я пробовал морфологические операции, но иногда это заканчивается дополнительными контурами, которые я не могу отличить от реальных символов.
Обычно слева от таблички есть сегмент или линии справа, и то и другое Я отметил на изображении ниже:

Код:
Код: Выделить всё
mask = cv2.adaptiveThreshold(
ex_plate, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY_INV, 17, 5
)
mask = cv2.morphologyEx(mask, cv2.MORPH_OPEN, np.ones((3, 3)))
marker = cv2.erode(mask, cv2.getStructuringElement(cv2.MORPH_RECT, (4, 20)))
obr = open_by_reconstruction(marker, mask)
obr = clear_border(obr)
obr = cv2.morphologyEx(obr, cv2.MORPH_CLOSE, np.ones((3, 3)))
obr = hole_filler(obr)
И это будет конвейер для каждого изображения до достижения модели.
Подробнее здесь: https://stackoverflow.com/questions/786 ... ense-plate