OpenCV-矩形边框cv::boundingRect
作者:翟天保Steven
版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处
函数原型
cv::Rect boundingRect( InputArray array );
参数说明
输入:InputArray类型的array,输入灰度图像或二维点集。
输出:Rect类型的矩形信息,包括矩形尺寸和位置。
测试代码
#include <iostream>
#include <time.h>
#include <opencv2/opencv.hpp>using namespace std;
using namespace cv;int main()
{cv::Mat src = imread("test.png",0);cv::Mat result = src.clone();cv::Mat th1;// 最大类间差法,也称大津算法threshold(result, th1, 0, 255, THRESH_OTSU);// 反相th1 = 255 - th1;// 确定连通区轮廓std::vector<std::vector<cv::Point> > contours; // 创建轮廓容器std::vector<cv::Vec4i> hierarchy;cv::findContours(th1, contours, hierarchy, cv::RETR_EXTERNAL, cv::CHAIN_APPROX_NONE, cv::Point());// 遍历轮廓显示矩形框for (int i = 0; i < contours.size(); ++i){cv::Rect rect = cv::boundingRect(cv::Mat(contours[i]));cv::rectangle(result, rect, Scalar(255), 1);}imshow("original", src);imshow("thresh", th1);imshow("result", result);waitKey(0);return 0;
}
测试效果
这个函数得到的矩形框都是方正的,还有一个函数minAreaRect也可以得到最小包围矩形框,那个是带倾斜角度的,后面我会再写一篇文章介绍。
如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!
OpenCV-矩形边框cv::boundingRect相关推荐
- OpenCV 学习笔记03 boundingRect、minAreaRect、minEnclosingCircle、boxPoints、int0、circle、rectangle函数的用法...
函数中的代码是部分代码,详细代码在最后 1 cv2.boundingRect 作用:矩形边框(boundingRect),用于计算图像一系列点的外部矩形边界. cv2.boundingRect(arr ...
- 【OpenCV3】旋转矩形(cv::RotateRect)的绘制
在OpenCV3中的绘图详解中,我们详细地介绍了opencv3中所支持的各种几何形状的绘制,其中矩形的绘制接口为cv::rectangle(),但是这个接口只能用于绘制正常矩形(即cv::Rect定义 ...
- python打出由边框包围的_python opencv 图像边框(填充)添加及图像混合的实现方法(末尾实现类似幻灯片渐变的效果)...
图像边框的实现 图像边框设计的主要函数 cv.copyMakeBorder()--实现边框填充 主要参数如下: 参数一:源图像--如:读取的img 参数二--参数五分别是:上下左右边的宽度--单位:像 ...
- OpenCV入门系列 —— cv::minEnclosingCircle 随机生成点坐标并计算最小包围圆
OpenCV入门系列 -- cv::minEnclosingCircle 随机生成点坐标并计算最小包围圆 前言 程序说明 输出结果 代码示例 前言 随着工业自动化.智能化的不断推进,机器视觉(2D/3 ...
- 定制圆角带背景色的矩形边框
Android系统本身提供的TextView组件并没有边框,我们可以为TextView设置一个9-patch格式的背景图来提供边框.AndroidSDK提供了一个Draw-9-patch工具,专门用于 ...
- Viso画流程图在文本边框、矩形边框线上添加文字、写文字
Viso画流程图在文本边.框矩形边框线上添加文字.写文字 最终要实现的效果如下: 1.一开始画好如下图: 具体查看如下步骤: OK了!!
- css 矩形边框加粗
css矩形边框加粗的方法 第一种 before after 第二种 通过背景图片 第三种 通过子元素定位实现 第四种 通过background 渐变 第一种 before after 长度可调,具体的 ...
- OpenCV入门系列 —— cv::dilate 图像膨胀
OpenCV入门系列 -- cv::dilate 图像膨胀 前言 程序说明 输出结果 代码示例 前言 随着工业自动化.智能化的不断推进,机器视觉(2D/3D)在工业领域的应用和重要程度也同步激增(识别 ...
- OpenCV入门系列 —— cv::erode、cv::dilate 图像腐蚀和膨胀
OpenCV入门系列 -- cv::erode.cv::dilate 图像腐蚀和膨胀 前言 程序说明 输出结果 代码示例 前言 随着工业自动化.智能化的不断推进,机器视觉(2D/3D)在工业领域的应用 ...
最新文章
- Linux服务器信息检测Shell脚本
- Coursera课程Python for everyone:Quiz: REST, JSON, and APIs
- centos7花里胡哨之终端美化
- kubernetes实战篇之创建密钥自动拉取私服镜像
- Spring-tx-TransactionAnnotationParser接口
- 简书留言频率限制机制
- 在使用Git提交代码的时候犯了个低级错误
- property自己实现
- structs 中过滤器问题
- Github风格头像生成器
- linux 实现监听热插拔事件
- 阿里云 Redis 报出You can't read against a non-read redis.解决方案
- 计算机网络ping作用是什么,ping是什么意思?ping测试网络的步骤【详解】
- 不得不服!java面试初试和复试的区别
- 公有继承,私有继承,保护继承的区别
- Windows补丁查找及安装
- html文字左右两边有居中的直线,css怎么实现文字居中两边横线效果
- 11月钓鱼网站:.COM域名超56% 新网数码占比37%
- JavaScript-制作日历
- oracle stat=30,使用Solaris上的filestat工具
热门文章
- Android开机自动运行APP——BroadcastReceiver
- 新生赛3 1003 字符串最小表示法题目
- centos最小化安装后部署中文输入法
- android thread线程通讯
- ubuntu 11.10 下network proxy 的设置问题
- 209. 长度最小的子数组
- 29muduo_net库源码分析(五)
- protoc 命令 java_用proto命令生成java文件
- isp串口下载 stm32_快速入门STM32单片机
- transactionscope 中的异步 处理 异常_PLC编程中的异常处理