Quindi, sto generando un'immagine binaria (beh, in realtà a scala di grigi, 8 bit, usata come binario) con python e opencv2, scrivendo un piccolo numero di poligoni sull'immagine e quindi dilatando l'immagine utilizzando un kernel. Tuttavia, la mia immagine di origine e di destinazione finisce sempre nello stesso modo, indipendentemente dal kernel che utilizzo. qualche idea?Perché la dilatazione del cv2 non interessa effettivamente la mia immagine?
from matplotlib import pyplot
import numpy as np
import cv2
binary_image = np.zeros(image.shape,dtype='int8')
for rect in list_of_rectangles:
cv2.fillConvexPoly(binary_image, np.array(rect), 255)
kernel = np.ones((11,11),'int')
dilated = cv2.dilate(binary_image,kernel)
if np.array_equal(dilated, binary_image):
print("EPIC FAIL!!")
else:
print("eureka!!")
Tutto che ottenga è EPIC FAIL
!
Grazie!