获取所有轮廓的外接矩形

获取所有轮廓的外接矩形

示例代码

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)
相关推荐
何以解忧唯有撸码26 分钟前
c# + YOLODotNet+OpenCVSharp 实现物品轨迹追踪
计算机视觉·c#·winform·yolov8·opencvsharp
飞Link2 小时前
什么是 AirSim?一文读懂无人机仿真平台
python·算法·无人机
曲径海盗2 小时前
【Python 学习第 38 天】for 循环
python·学习笔记·编程入门
在世修行3 小时前
智学文枢:变式题生成引擎
python·ai·pyside·题目生成
On The Road :5 小时前
Java 多线程详解:从入门到线程安全
java·python·安全
岁月宁静5 小时前
如何设计支持 Skills 的 Agent?一套可扩展的四层架构
python·agent
岁月宁静5 小时前
CrewAI 快速上手:10 分钟搭建你的第一个 Agent 团队
python·agent
曲径海盗5 小时前
【Python 学习第 40 天】for 循环
python·学习笔记·编程入门
专注仿真6 小时前
知识问答大模型-rag算法详解
人工智能·python·控制算法
染指11106 小时前
158.Agent-LangGraph-子图(共享状态和不共享状态模式)
开发语言·人工智能·python·ui·agent·agents