简体   繁体   中英

How can I delete the background outside the drawn contours?

How can I delete the background outside the drawn contours? My main goal is measure size of ONLY cardboard boxes. I have 2 differend code.

First code measuring EVERYTHING with aruco marker.

Second code is detecting boxes with yolo.(I need this because measure code detects everything)

Both of them drawn contours.

My measure code is measuring everything thats why i want to remove background except contoured objects.

how can i manage this?

Please help.

在此处输入图像描述

Create black mask image. For each detection draw it contour on mask:

cv2.drawContours(img, contours, -1, color=(255, 255, 255), thickness=cv2.FILLED)

And after make bitwise_and with this mask.

GrabCut algorithm seems like what you need in this case. It will distinguish background and foreground pixels inside a bounding box.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM