使用python opencv返回点集cnt的最小外接矩形,所用函数为 cv2.minAreaRect(cnt) ,cnt是点集数组或向量(里面存放的是点的坐标),并且这个点集不定个数。

举例说明:画一个任意四边形(任意多边形都可以)的最小外接矩形,那么点集 cnt 存放的就是该四边形的4个顶点坐标(点集里面有4个点)

cnt = np.array([[x1,y1],[x2,y2],[x3,y3],[x4,y4]]) # 必须是array数组的形式

rect = cv2.minAreaRect(cnt) # 得到最小外接矩形的(中心(x,y), (宽,高), 旋转角度)

box = cv2.cv.BoxPoints(rect) # cv2.boxPoints(rect) for OpenCV 3.x 获取最小外接矩形的4个顶点坐标

box = np.int0(box)

函数 cv2.minAreaRect() 返回一个Box2D结构rect:(最小外接矩形的中心(x,y),(宽度,高度),旋转角度),但是要绘制这个矩形,我们需要矩形的4个顶点坐标box, 通过函数 cv2.cv.BoxPoints() 获得,返回形式[ [x0,y0], [x1,y1], [x2,y2], [x3,y3] ]。得到的最小外接矩形的4个顶点顺序、中心坐标、宽度、高度、旋转角度(是度数形式,不是弧度数)的对应关系如下:

注意:

旋转角度θ是水平轴(x轴)逆时针旋转,与碰到的矩形的第一条边的夹角。并且这个边的边长是width,另一条边边长是height。也就是说,在这里,width与height不是按照长短来定义的。

在opencv中,坐标系原点在左上角,相对于x轴,逆时针旋转角度为负,顺时针旋转角度为正。所以,θ∈(-90度,0]。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持龙方网络。

python四边形转矩形_python opencv minAreaRect 生成最小外接矩形的方法相关推荐

  1. cv2.minAreaRect() 生成最小外接矩形

    简介 使用python opencv返回点集cnt的最小外接矩形,所用函数为 cv2.minAreaRect(cnt) ,cnt是所要求最小外接矩形的点集数组或向量,这个点集不定个数. 1 cv2.m ...

  2. Python图片查找轮廓、多边形拟合、最小外接矩形操作实例

    1.概述 经常用到轮廓查找和多边形拟合等opencv操作,因此记录以备后续使用.本文代码中的阈值条件对图片没有实际意义,仅仅是为了测试. 原图为:                            ...

  3. python切割图片文字_Python+opencv 实现图片文字的分割的方法示例

    Python+opencv 实现图片文字的分割的方法示例 发布时间:2020-08-26 03:28:37 来源:脚本之家 阅读:116 作者:坏小孩90 实现步骤: 1.通过水平投影对图形进行水平分 ...

  4. python kfold交叉验证_Python sklearn KFold 生成交叉验证数据集的方法

    源起: 1.我要做交叉验证,需要每个训练集和测试集都保持相同的样本分布比例,直接用sklearn提供的KFold并不能满足这个需求. 2.将生成的交叉验证数据集保存成CSV文件,而不是直接用sklea ...

  5. opencv 图像轮廓特征 图像面积,轮廓周长,外接矩形、最小外接矩形、最小外接圆、拟合椭圆

    找出图像轮廓 contours, hierarchy = cv.findContours(thresh, 3, 2) 画出图像轮廓 cnt = contours[1] cv.drawContours( ...

  6. python opencv最小外接矩形_Opencv绘制最小外接矩形、最小外接圆

    Opencv中求点集的最小外结矩使用方法minAreaRect,求点集的最小外接圆使用方法minEnclosingCircle. minAreaRect方法原型: RotatedRect minAre ...

  7. python 最小外接矩形笔记

    目录 opencv生成最小外接矩形: 最小外接矩形修正版: opencv生成最小外接矩形: cnt = np.array([[x1,y1],[x2,y2],[x3,y3],[x4,y4]]) # 必须 ...

  8. python外包凹多边形生成_Python实现图片查找轮廓、多边形拟合、最小外接矩形代码...

    1.概述 经常用到轮廓查找和多边形拟合等opencv操作,因此记录以备后续使用.本文代码中的阈值条件对图片没有实际意义,仅仅是为了测试. 原图为: 2.测试代码: import cv2 import ...

  9. python+opencv获取最小外接矩形

    python+opencv获取最小外接矩形 环境 代码 效果 环境 python版本:3.8 opencv版本:4.3.0.36 代码 from PIL import Image from pylab ...

  10. OpenCV中minAreaRect()最小外接矩形 cvBoxPoints()计算矩形顶点 RotatedRect和CvBox2D详解

    minAreaRect()函数计算并返回指定点集的最小区域边界斜矩形. RotatedRect minAreaRect(InputArray points) points:输入信息,可以为包含点的容器 ...

最新文章

  1. 通过anaconda2安装python2.7和安装pytorch
  2. LED音乐频谱之输出数据处理
  3. 前方高能 | 容器化应用操作原来可以这样简单
  4. 汇编语言--adc指令
  5. SpringCloud2.0入门4-springboot-admin监控
  6. wordcloud库的常规方法及词云绘制实例
  7. 查看当前服务器中的所有的topic,创建topic,删除topic,通过shell命令发送消息,通过shell消费消息,查看topic详情,对分区数进行修改
  8. LeetCode 289. 生命游戏
  9. TIS-prescan
  10. 极简jmeter使用教程
  11. 【转】word 高效经典教程
  12. Origin抗锯齿和出现大C
  13. elementui自定义手机号邮箱验证
  14. KeilC51使用详解 (三)
  15. 一种轻量化多尺度的遥感跨模态图文检索方法
  16. 快速给PDF批量添加目录
  17. 教你几个手机识别图片中的文字小技巧
  18. 苹果维修堪比登天难:评级F,获得最低分2.75分
  19. os.path.isdir()函数的作用和用法-判断是否为目录
  20. 在使用idea进行开发时,同一个项目当中的类不能相互引用

热门文章

  1. 42.数据库表转model类
  2. c# 中实用包,实用dll。
  3. 博客园博客转至个人网站博客声明
  4. bzoj-1079 着色方案(dp)
  5. Python 的字符编码
  6. 计算机网络第1章概述
  7. MEF(Managed Extensibility Framework)学习笔记
  8. 二次元始,跌宕几年,至学术略有成就并步入业界的我与NLP的这七年时光!
  9. SpanBERT: 抽取式问答的利器
  10. 中国成为「研究生大国」,99%研究生背后的焦虑:就业更难了!