获取所有轮廓的外接矩形

获取所有轮廓的外接矩形

示例代码

python 复制代码
import cv2
def get_contours_rectangle(mask):
    h, w = mask.shape

    contours, _ = cv2.findContours(
        mask, 
        cv2.RETR_EXTERNAL, 
        cv2.CHAIN_APPROX_SIMPLE
    )
    # 获取所有轮廓的外接矩形
    min_y, max_y = h, 0
    min_x, max_x = w, 0

    for contour in contours:
        x, y, w, h = cv2.boundingRect(contour)
        min_y = min(min_y, y)
        min_x = min(min_x, x)
        max_y = max(max_y, y + h)
        max_x = max(max_x, x + w)
    w = max_x - min_x
    h = max_y - min_y

    mask_contour_rectangle = mask[min_y:max_y, min_x:max_x]
    return mask_contour_rectangle
if __name__ == '__main__':
	mask_path = "./test.png"
    mask = cv2.imread(mask_path, cv2.IMREAD_GRAYSCALE)
    mask_1 = get_contours_rectangle(mask)
    cv2.imwrite("mask_contour.png", mask_1)
相关推荐
2301_816660217 分钟前
CSS中relative与absolute的区别_详解相对与绝对定位应用场景
jvm·数据库·python
qq_4609784016 分钟前
Golang怎么JWT设置过期时间_Golang如何在Claims中配置Token有效期【操作】
jvm·数据库·python
weixin_5689960619 分钟前
Cgo 中正确设置 C 结构体回调函数指针的完整方案
jvm·数据库·python
Jun62619 分钟前
【RV1103】AD4115实现8通道ADC采样,MQTT数据传输,1K采样率
linux·python
sali-tec30 分钟前
C# 基于OpenCv的视觉工作流-章53-QR二维码1
图像处理·人工智能·opencv·算法·计算机视觉
LiAo_1996_Y31 分钟前
mysql如何限制特定存储过程执行权限_MySQL存储过程安全访问
jvm·数据库·python
knight_9___35 分钟前
LLM工具调用面试篇1
开发语言·人工智能·python·面试·agent
2601_9561394235 分钟前
快消品品牌全案公司哪家强
大数据·人工智能·python
源码之家36 分钟前
Python股票数据分析与预测系统 大数据项目
大数据·python·机器学习·数据挖掘·数据分析·股票·可视化
甄心爱学习39 分钟前
【项目实训(个人5)】
python·github