我一直在使用
x,y,w,h = cv2.boundingBox(cnt)
roi = img[y:y+h,x:x+w]
在openCv中起作用,以获得轮廓内的部分图像。 但是,我现在正在尝试使用openCv函数minAreaRect来获取我的边界框。该函数返回每个角的x和y坐标以及倾斜角。例如:
((363.5, 676.0000610351562), (24.349538803100586, 34.46882629394531), -18.434947967529297)
是否有一种简单的方法来提取图像的这一部分?因为我显然不能做到
roi = img[y:y+h,x:x+w]
由于倾斜角等原因。我可能会旋转整个图像并提取点数,但是当一次经历数千个轮廓时,这将花费太长时间。 我目前得到的是绿色矩形,我想要的是红色矩形。我想提取图像的这一部分,但无法弄清楚如何选择对角矩形。