Как создать выровненные по оси оси ограничительные рамки с помощью cv2.flatten () - PullRequest
1 голос
/ 19 февраля 2020
if len(contours) != 0 and np.max(cnt_area) > 100:
   contour = contours[np.argmax(cnt_area)] # use max area polygon
   polygon = contour.reshape(-1, 2)
   pbox = cv2.boundingRect(polygon) # Min Max Rectangle
#  pbox = cv2.boxPoints(cv2.minAreaRect(polygon))
   box_in_img = pbox
state['ploygon'] = rbox_in_img if mask_enable else []

location = state['ploygon'].flatten()

Я использую эти коды для вывода выровненного по оси ограничивающего прямоугольника, алгоритм первоначально использовал повернутые. Но получается следующая ошибка: объект кортежа не сгладится. Но flatten () ранее работал с повернутыми ограничивающими рамками. если я удаляю flatten (), то эта ошибка не возникает, но я получаю неверные результаты следующим образом:

1003 *enter image description here

Любая идея, как решить эту проблему выдавать?

...