opencv中轮廓相关属性

一、介绍

findContours() :The function retrieves contours from the binary image。

二、代码

cpp 复制代码
void main()
{
    Mat src = imread("match00.bmp", IMREAD_GRAYSCALE);
	Mat mask;
	threshold(src, mask, 128, 255, cv::THRESH_BINARY_INV);
	Mat element = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(3, 3));
	cv::morphologyEx(mask, mask, cv::MORPH_CLOSE, element, cv::Point(-1, -1), 1);
	vector<vector<Point>> conts;
	cv::findContours(mask, conts, cv::RETR_LIST, cv::CHAIN_APPROX_NONE);
	cout << "RETR_LIST = " << conts.size() << endl;
	for (int i = 0; i < conts.size(); i++)
	{
		double len = cv::arcLength(conts[i], false);
		double area = cv::contourArea(conts[i]);
		cout << "len = " << len << ", area = " << area << endl;
	}
}

三、说明

1、原图

2、闭运算后的二值图像

3、RETR_EXTERNAL模式下计算的轮廓个数(只提取外轮廓)

4、RETR_LIST模式下计算的轮廓个数(提取内轮廓和外轮廓)

相关推荐
AI的探索之旅1 天前
97 个 OpenCV 实例(七):SIMD 向量化,给像素处理装上涡轮增压
人工智能·opencv·计算机视觉
牧羊人.3331 天前
计算机视觉基础 第 10 章|图像直方图与直方图均衡化
图像处理·opencv·计算机视觉
AndrewHZ1 天前
图像处理入门012 | 图像裁剪与缩放:resize 与 ROI 操作
图像处理·opencv·pillow·插值·resize·letterbox·roi
clorinda2 天前
OpenCV图像增强基础——图像金字塔、直方图与特征提取
人工智能·opencv·计算机视觉
zx_741484812 天前
【计算机视觉入门】基于 OpenCV 的银行卡号识别综合案例
人工智能·opencv·计算机视觉
派大_星2 天前
OpenCV发票图像处理:轮廓检测、透视变换与图像预处理
人工智能·opencv·计算机视觉
闻道且行之2 天前
图片处理助手|泊松融合原理 + C++ 工程实现,seamlessClone 三模式一次讲透
数据库·c++·人工智能·opencv
zmzb01032 天前
Python课后习题训练记录Day194
python·opencv·计算机视觉
AI的探索之旅2 天前
图像格式与转换一文讲透:相机 / OpenCV / Qt
数码相机·qt·opencv
欧特克_Glodon3 天前
OpenCV计算机视觉开发入门与实践<十四>:基础几何图形绘制
人工智能·opencv·计算机视觉