python+opencv获取最小外接矩形

  • 环境
  • 代码
  • 效果

环境

python版本:3.8
opencv版本:4.3.0.36

代码

from PIL import Image
from pylab import *
import cv2
import numpy as np# 读取图像到数组中
im = array(Image.open('./001.bmp'))# 定义边界点
xs = [190.5,167.5,144.5,128.5,114.5,100.5,97.5,82.5,71.5,62.5,45.5,33.5,23.5,10.5,9.5,9.5,18.5,20.5,14.5,17.5,16.5,25.5,26.5,37.5,50.5,61.5,75.5,80.5,82.5,83.5,107.5,131.5,137.5,176.5,193.5,200.5,203.5,217.5,239.5,254.5,270.5,288.5,304.5,327.5,341.5,363.5,377.5,388.5,397.5,402.5,388.5,381.5,374.5,375.5,367.5,363.5,358.5,363.5,353.5,340.5,339.5,335.5,326.5,311.5,279.5,239.5,211.5,190.5]
ys = [374.13,366.13,363.13,361.13,365.13,361.13,357.13,362.13,373.13,376.13,369.13,365.13,354.13,342.13,329.13,317.13,311.13,296.13,283.13,272.13,258.13,247.13,216.13,184.13,158.13,129.13,98.13,82.13,52.13,42.13,34.13,31.13,15.13,10.12,13.13,26.13,31.13,22.13,22.13,28.13,41.13,54.13,65.13,81.13,92.13,97.13,112.13,148.13,176.13,192.13,204.13,213.13,223.13,245.13,255.13,269.13,281.13,296.13,302.13,313.13,325.13,338.13,358.13,381.13,391.13,390.13,380.13,374.13]plt.plot(xs, ys, 'r*') # 绘制边界点# 获取最小外接矩形
contour = np.vstack((xs, ys)) #将x,y竖着拼接
contour = np.array(contour.T, dtype=np.float32)
rect = cv2.minAreaRect(contour) # 得到最小外接矩形的(中心(x,y), (宽,高), 旋转角度)
box = cv2.boxPoints(rect) # cv2.boxPoints(rect) for OpenCV 3.x 获取最小外接矩形的4个顶点坐标
box = np.int0(box)# 绘制最小外接矩形
plt.plot(box[1], box[0], color='g')
plt.plot(box[2], box[1], color='g')
plt.plot(box[3], box[2], color='g')
plt.plot(box[0], box[3], color='g')# 添加标题,显示绘制的图像title("pic1.png")
imshow(im)
plt.show()

效果

python+opencv获取最小外接矩形相关推荐

  1. opencv 获取最小外接矩形

    #include "iostream"; #include "opencv.hpp" using namespace std; using namespace ...

  2. python opencv 画矩形框 外接矩形

    画矩形 import cv2 image = cv2.imread('1.jpg') cv2.rectangle(image, (xmin, ymin), (xmax, ymax), (0, 0, 2 ...

  3. python 最小外接矩形笔记

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

  4. 【千律】OpenCV基础:图像外接矩形、最小外接矩形、凸包、外接圆、拟合椭圆的绘制

    环境:Python3.8 和 OpenCV 内容:图像外接矩形.最小外接矩形.凸包.外接圆.拟合椭圆的绘制 import cv2 as cv import numpy as np import mat ...

  5. 遍历图像 找最小外接矩形 matlab,2018a版本MatLab利用regionprops函数获取图片中物体轮廓最小外接矩形...

    2018a版本MatLab利用regionprops函数获取图片中物体最小外接矩形 本次内容,用于介绍利用matlab中的regionprops函数来获取图像区域中的物体的最小外接矩形信息(位置(x, ...

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

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

  7. python opencv最小外接矩形中心点_Opencv绘制最小外接矩形、最小外接圆

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

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

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

  9. python 提取最小外接矩形_python给人脸带上口罩(简单版)

    导读 因为目前公开的口罩人脸数据比较少,如果想训练一个口罩人脸识别模型,必须依赖大量的人脸数据.为了收集到更多的口罩人脸数据,我们只能利用已有的公开人脸数据上通过程序来模拟人脸带口罩.这篇文章向大家介 ...

最新文章

  1. optee系统服务/service的实现方式
  2. SpringBoot中自定义拦截器
  3. 2021年常用中药相关数据库介绍
  4. 3个因素看透 AI 技术架构方案的可行性
  5. 问题 1076: 内部收益率
  6. 【Flink】Flink 报错 Writing records to streamload failed
  7. c语言答辩中期报告,安徽工程大学毕业设计(论文)中期检查总结
  8. 自反而缩,虽千万人,吾往矣。
  9. python开发之路---第二模块--OS模块
  10. LINUX文件处理命令
  11. 操作系统——零碎概念
  12. 下载百度文库的受限文件-冰点下载器
  13. wox wpm 安装 有道插件
  14. 一文教你如何快速高效画出技术架构图
  15. Label-Specific Dual Graph Neural Network for Multi-Label Text Classification,ACL2021 finding
  16. vue 路由守卫 解析
  17. Unity3D 物体移动到指定点
  18. PDF编辑技巧之PDF页面旋转
  19. 腹直肌整体(01):器械卷腹
  20. 告别powerpoint,像程序员一样做slides~

热门文章

  1. Linux命令(007) -- systemctl
  2. (转) Java多线程同步与异步
  3. powerdesigner反向MySQL5.1数据库 生成ER图
  4. 简单问题:sizeof(char型数组)为数组大小,而不是4, 为什么? 100!
  5. Prolog 语言入门
  6. Matlab计算多项式的值(数值)
  7. IOS树视图学习总结
  8. html and js 的隔行换背景色表格实例详解
  9. 使用tag标签是SEO优化的重要性是什么?
  10. 日期转换器和编码过滤器