Файл Python записывает все координаты ограничивающего прямоугольника, используя OpenCV

0
задан Abc 18 January 2019 в 07:34
поделиться

1 ответ

x, y, w, h = cv2.boundingRect(contours[idx]) - это нужные вам координаты, затем запишите их в текстовый файл:

...
with open("coords.txt","w+") as file:
    for idx in range(len(contours)):
        x, y, w, h = cv2.boundingRect(contours[idx])
        mask[y:y+h, x:x+w] = 0
        file.write("Box {0}: ({1},{2}), ({3},{4}), ({5},{6}), ({7},{8})".format(idx,x,y,x+w,y,x+w,y+h,x,y+h))
        cv2.drawContours(mask, contours, idx, (255, 255, 255), -1)
        r = float(cv2.countNonZero(mask[y:y+h, x:x+w])) / (w * h)
...

Результат будет содержать 4 точки для каждой ячейки, как здесь.

Box 0: (360,259), (364,259), (364,261), (360,261)
Box 1: (380,258), (385,258), (385,262), (380,262)
Box 2: (365,258), (370,258), (370,262), (365,262)
Box 3: (386,256), (393,256), (393,260), (386,260)
Box 4: (358,256), (361,256), (361,258), (358,258)
0
ответ дан Ha Bom 18 January 2019 в 07:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: