Я хочу создать изображение 256 * 256, используя подключенные компоненты, извлеченные из текстового изображения. идея состоит в том, чтобы объединять, отображать или вставлять CC рядом (случайным образом) до получения изображения 256 * 256, что означает sum_height_CC = 256 и sum_widh_CC = 256. представлен код для обнаружения CC
def process(gray_img):
gauss_img = cv2.GaussianBlur(gray_img,(5,5),0)
kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (3, 3))
th4 = cv2.morphologyEx(gauss_img, cv2.MORPH_GRADIENT, kernel)
ret3,th3 = cv2.threshold(th4,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)
morph_kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (8, 8))
connected = cv2.morphologyEx(th3, cv2.MORPH_CLOSE, morph_kernel)
output = cv2.connectedComponentsWithStats(connected, connectivity=8)
for i in range(output[0]):
if output[2][i][4] >= 300 and output[2][i][4] <= 10000:
CC=cv2.rectangle(th3, (output[2][i][0], output[2][i][1]), (output[2][i][0] + output[2][i][2], output[2][i][1] + output[2][i][3]), (255, 255, 255), 2)
#♣======================== get all the detected CC as images ======================================
# res = gray_img[output[2][i][1]:output[2][i][1] + output[2][i][3], output[2][i][0]:output[2][i][0] + output[2][i][2]]
# cv2.imwrite(r"component%s.jpg" %str(i), res)
#♣===================================== show results ==============================================
cv2.imshow("detection", CC)
cv2.imshow("original", gray_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
Спасибо за помощь.