Идентифицируйте числа внутри многоугольных фигур с помощью OpenCV

#opencv3.0 #opencv-python

Вопрос:

Я хотел бы определить номер дома в блоке домов, учитывая изображение на карте. Я смог нарисовать контуры, но я как бы застрял на том, как продолжить идентификацию номеров домов внутри контуров. Мы очень ценим любую помощь. Вот что я пробовал до сих пор —

 import numpy as np
from skimage import io, measure, morphology
from skimage.io import imsave, imread

image=cv2.imread('MAP.PNG')

gray=cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
gray=cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
edged=cv2.Canny(gray,200,200)
cv2.imshow('canny edges',edged)
cv2.waitKey(0)

contours, hierarchy = cv2.findContours(edged,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_NONE)
cv2.imshow('canny edges after contouring', edged)
cv2.waitKey(0)

print(contours)
print('Numbers of contours found='   str(len(contours)))
#use -1 as the 3rd parameter to draw all the contours
cv2.drawContours(image,contours,-1,(0,255,0),3)
cv2.imshow('contours',image)
cv2.waitKey(0)
cv2.destroyAllWindows()
 

введите описание изображения здесь

Комментарии:

1. Поскольку на графиках есть числа, такие же, как в их ограничивающих кругах, и все числа напечатаны в одном направлении, можете ли вы попробовать сделать следующее: 1. Определите круги (или эллипсы, чтобы быть точным), Проверьте это 2. Нарисуйте контуры вокруг них 3. С помощью этого ограничивающего прямоугольника извлеките числа 4. Проверьте наличие номеров в любых 4 направлениях.