第31课 轮廓周围绘制矩形框和圆形框

本文介绍了如何使用OpenCV进行计算机视觉处理,包括将图像转化为二值图像,通过Canny边缘检测获取轮廓,然后利用approxPolyDP减少轮廓点数,结合boundingRect、minAreaRect、minEnclosingCircle和fitEllipse等API找到最小矩形、旋转矩形、最小圆形和椭圆,并在轮廓上绘制这些形状。
摘要由CSDN通过智能技术生成

1. 步骤

  1. 首先将图像变为二值图像threshold()
  2. 发现轮廓,找到图像轮廓canny()
  3. 通过相关API在轮廓点上找到最小包含矩形和 圆,旋转矩形与椭圆。
  4. 绘制它们。rectangle()或circle()

2. 相关API

2.1 approxPolyDP()

  • 基于RDP算法实现,目的是减少多边形轮廓点数

2.2 cv::boundingRect()

  • 得到轮廓周围最小矩形左上交点坐标和右下角点坐标,用以绘制一个矩形

2.3 cv::minAreaRect()

得到一个旋转的矩形,返回旋转矩形。

2.4 cv::minEnclosingCircle()

  • 得到最小区域圆形

2.5 cv::fitEllipse()

  • 得到最小椭圆

3. 例程

#include<opencv2/opencv.hpp>
#include<iostream>
#include<math.h>

using namespace cv;
using namespace std;
void CallBack(int, void*);
Mat src, 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值