opencv学习(二十三)寻找并绘制轮廓findCounters()/找出凸包convexHull()

本文主要介绍了如何使用OpenCV的findContours函数寻找图像中的轮廓,并通过drawContours进行绘制。接着,讨论了如何找到轮廓的凸包(convexHull)。通过两个实例,分别展示了轮廓查找与绘制以及对图片轮廓求凸包的过程,强调了在处理vector时需要注意的细节问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,查找轮廓findCounters()函数

这里写图片描述
这里写图片描述
这里写图片描述

2,绘制轮廓drawCounters()

这里写图片描述
这里写图片描述

实例1查找轮廓

#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;

int main()
{
    //【1】读图
    Mat srcimg = imread("D://1.jpg", 0);
    imshow("原始图", srcimg);

    //【2】初始化结果图
    Mat dstimg = Mat::zeros(srcimg.rows, srcimg.cols, CV_8UC3);

    //【3】取阈值大于119的原图部分
    srcimg = srcimg > 119;
    imshow("取阈值后", srcimg);

    //【4】定义轮廓和层次结构
    vector<vector<Point>>contours;
    vector<Vec4i> hierarchy;

    //【5】查找轮廓
    findContours(srcimg, contours, hierarchy, RETR_CCOMP, CHAIN_APPROX_SIMPLE);

    //【6】历遍所有顶层可以囊括,以随机颜色绘制出每个连接组件的颜色
    int index = 0;
    for (;i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值