当前位置: 首页 > 面试题库 >

minAreaRect OpenCV返回的裁剪矩形[Python]

卫乐童
2023-03-14
问题内容

minAreaRect在OpenCV中返回旋转的矩形。如何裁剪矩形内图像的这一部分?

boxPoints 返回旋转矩形的角点的坐标,以便可以通过遍历框内的点来访问像素,但是有没有一种更快的Python裁剪方法

编辑

请参阅code下面的答案。


问题答案:

您没有给出示例代码,所以我也没有代码也回答。您可以按以下步骤进行:

  1. 从矩形的角确定相对于水平轴的旋转角度α。
  2. 按alpha旋转图像,以使裁剪后的矩形与图像边界平行。确保临时图像的尺寸较大,以免丢失任何信息(参见:旋转图像而不裁剪OpenCV)
  3. 使用numpy切片裁剪图像(参见:如何使用Python在OpenCV中裁剪图像)
  4. 将图像旋转回-alpha。


 类似资料:
  • 我想从矩形照片中制作一个居中的圆形图像。照片的尺寸未知。通常是矩形。我尝试了很多方法: 密码

  • 我有两个矩形,其中一个是另一个的剪裁。现在我想围绕剪切矩形的中心旋转较大的矩形并调整x / y值。 如何计算旋转后的新x/y值? 我只想绕着小盒子的中心旋转大盒子的x/y。因此,较大盒子的x/y点相对于较小盒子的顶部/左侧点。我有小盒子的宽度和高度,所以我可以计算大盒子相对于小盒子中心的x/y点。旋转的角度以度为单位。旋转可以是任何角度,例如10度。

  • 我知道实际上用CSS修改图像是不可能的,这就是为什么我在引号中加了crop。 我想做的是拍摄矩形图像,并使用CSS使其显示为方形,而不会扭曲图像。 我基本上想把这个: 对此:

  • 我是图像处理新手,开始学习scikit图像。我试图检测矩形的角,然后裁剪整个图像。但我完全迷失在大量的分割和检测算法中,不知道我需要哪种算法以及如何去做。 此代码生成一个示例图像。我想把它裁剪成绿色的矩形。我需要做什么? 从matplotlib将pyplot导入为pyplot 任务是检测矩形(多边形阵列)的边缘并将图像裁剪到其中。 我尝试了哈里斯角检测,精明的边缘检测和许多其他,但我完全困惑。这似

  • OpenCV中的返回一个旋转的矩形。如何裁剪矩形内的这部分图像? 返回旋转矩形的角点坐标,这样就可以通过循环框内的点来访问像素,但是Python中有没有更快的裁剪方法? 编辑 请参阅下面我的答案中的代码。

  • 虽然我明白绘制函数的目的是绘制到某个表面,但我不明白为什么它不简单地返回pyplay。表面对象,您可以稍后在需要时将其烧毁到表面。到目前为止,当我只想创建一个表面并稍后将其绘制到其他地方时,这非常不方便。 有没有什么方法可以让类似的函数返回曲面对象,而不是执行额外的步骤并直接绘制到另一个曲面?