python+opencv获取最小外接矩形
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获取最小外接矩形相关推荐
- opencv 获取最小外接矩形
#include "iostream"; #include "opencv.hpp" using namespace std; using namespace ...
- python opencv 画矩形框 外接矩形
画矩形 import cv2 image = cv2.imread('1.jpg') cv2.rectangle(image, (xmin, ymin), (xmax, ymax), (0, 0, 2 ...
- python 最小外接矩形笔记
目录 opencv生成最小外接矩形: 最小外接矩形修正版: opencv生成最小外接矩形: cnt = np.array([[x1,y1],[x2,y2],[x3,y3],[x4,y4]]) # 必须 ...
- 【千律】OpenCV基础:图像外接矩形、最小外接矩形、凸包、外接圆、拟合椭圆的绘制
环境:Python3.8 和 OpenCV 内容:图像外接矩形.最小外接矩形.凸包.外接圆.拟合椭圆的绘制 import cv2 as cv import numpy as np import mat ...
- 遍历图像 找最小外接矩形 matlab,2018a版本MatLab利用regionprops函数获取图片中物体轮廓最小外接矩形...
2018a版本MatLab利用regionprops函数获取图片中物体最小外接矩形 本次内容,用于介绍利用matlab中的regionprops函数来获取图像区域中的物体的最小外接矩形信息(位置(x, ...
- python opencv最小外接矩形_Opencv绘制最小外接矩形、最小外接圆
Opencv中求点集的最小外结矩使用方法minAreaRect,求点集的最小外接圆使用方法minEnclosingCircle. minAreaRect方法原型: RotatedRect minAre ...
- python opencv最小外接矩形中心点_Opencv绘制最小外接矩形、最小外接圆
Opencv中求点集的最小外结矩使用方法minAreaRect,求点集的最小外接圆使用方法minEnclosingCircle. minAreaRect方法原型: RotatedRect minAre ...
- python外包凹多边形生成_Python实现图片查找轮廓、多边形拟合、最小外接矩形代码...
1.概述 经常用到轮廓查找和多边形拟合等opencv操作,因此记录以备后续使用.本文代码中的阈值条件对图片没有实际意义,仅仅是为了测试. 原图为: 2.测试代码: import cv2 import ...
- python 提取最小外接矩形_python给人脸带上口罩(简单版)
导读 因为目前公开的口罩人脸数据比较少,如果想训练一个口罩人脸识别模型,必须依赖大量的人脸数据.为了收集到更多的口罩人脸数据,我们只能利用已有的公开人脸数据上通过程序来模拟人脸带口罩.这篇文章向大家介 ...
最新文章
- optee系统服务/service的实现方式
- SpringBoot中自定义拦截器
- 2021年常用中药相关数据库介绍
- 3个因素看透 AI 技术架构方案的可行性
- 问题 1076: 内部收益率
- 【Flink】Flink 报错 Writing records to streamload failed
- c语言答辩中期报告,安徽工程大学毕业设计(论文)中期检查总结
- 自反而缩,虽千万人,吾往矣。
- python开发之路---第二模块--OS模块
- LINUX文件处理命令
- 操作系统——零碎概念
- 下载百度文库的受限文件-冰点下载器
- wox wpm 安装 有道插件
- 一文教你如何快速高效画出技术架构图
- Label-Specific Dual Graph Neural Network for Multi-Label Text Classification,ACL2021 finding
- vue 路由守卫 解析
- Unity3D 物体移动到指定点
- PDF编辑技巧之PDF页面旋转
- 腹直肌整体(01):器械卷腹
- 告别powerpoint,像程序员一样做slides~