OpenCV cvBoundingRect应用举例
最近在用OpenCV做一个项目,查找cvBoundingRect时候没有找到比较好的例子,在此为了方便大家,贴出一段代码利用cvBoundingRect的例子。
CvMemStorage* storage1 = cvCreateMemStorage( 0 );CvSeq* contour = NULL;IplImage *imgTemp = cvCloneImage( dilateImage ); cvFindContours( imgTemp, storage1, &contour, sizeof( CvContour ), CV_RETR_CCOMP, CV_CHAIN_APPROX_NONE);int ContoursCount = 0;IplImage *TrangleImage = cvCloneImage(inTopView);int height =TrangleImage->height; int width =TrangleImage->width; int step =TrangleImage->widthStep; int channels=TrangleImage->nChannels; outCarSegment.CarRect.clear();for( ; contour != NULL; contour = contour -> h_next){CvRect rect = cvBoundingRect(contour, 0);if (rect.width > 20 && rect.height > 20){cvRectangle( TrangleImage, cvPoint( rect.x, rect.y ),cvPoint( rect.x + rect.width, rect.y + rect.height ), CV_RGB(255,0,0), 1, 8, 0);ContoursCount++;outCarSegment.CarRect.push_back(rect);} }cvSaveImage("FindContours.png", TrangleImage);
我的这段例子只是取物体外边框,需要取物体内边框的可以参照找一篇文章:http://blog.csdn.net/honpey/article/details/8575507;
OpenCV cvBoundingRect应用举例相关推荐
- OpenCV入门及应用案例:手把手教你做DNN图像分类
导读:本文将介绍OpenCV的源码结构.OpenCV深度学习应用的典型流程,以及深度学习和OpenCV DNN(Deep Neural Networks,深度神经网络)模块的背景知识,让读者可以快速认 ...
- OpenCV中Mat数据结构使用举例
#include "stdafx.h" #include <string> #include <iostream> #include <opencv2 ...
- OpenCV alpha(权因子) 融合举例
基于函数cv::addWeighted实现线性融合,目标公式如下: g(x)=(1−α)f0(x)+αf1(x) 公式(1) 其中 g(x)为目标(结果)图像, f0(x) 和 f1(x)为两个待融合 ...
- OpenCV+python:Canny边缘检测算法
1,边缘处理 图像边缘信息主要集中在高频段,通常说图像锐化或检测边缘,实质就是高频滤波.我们知道微分运算是求信号的变化率,具有加强高频分量的作用. 在空域运算中来说,对图像的锐化就是计算微分.由于数字 ...
- OpenCV(二)逐像素的图像复制、图像边缘检测(自实现和API实现)
目录 一.逐像素的图像复制 1.代码 2.效果 二.简单的图像边缘检测(自实现) 0.图像处理的卷积运算 1.简单模糊处理 2.强化边缘处理 1.原理 2.代码 3.效果 三.简单的图像边缘检测(调用 ...
- OpenCV(一)图像读取与新建、图像显示、操作图像像素(2种涂色并比较算法优劣、输出RGB)
目录 一.读取图像与新建图像 1.读取图像 2.新建图像 二.显示图像 1.过程 2.代码 3.运行效果 三.操作图像像素 1.逐RGB涂色(单循环)(快) 1-1.过程 2-2.代码 2-3.运行结 ...
- OpenCV 【十九】图像金字塔/基本的阈值操作/实现自己的线性滤波器
目录 1.part one 图像金字塔 1.1原理 1.1.1图像金字塔 1.1.2高斯金字塔 1.2代码 1.3运行结果 2.part two 基本的阈值操作¶ 2.1原理 2.1.1阈值化的类型: ...
- OpenCV 【十七】离散傅立叶变换
目录 1 key 2 原理 3 实例 3代码 4运行结果 5应用举例 1 key 什么是傅立叶变换及其应用? 如何使用OpenCV提供的傅立叶变换? 相关函数的使用,如: copyMakeBorder ...
- OpenCV 【一】—— OpenCV中数组指针、图像分块计算、指针取像素值与MatToEigen方法,内存对齐
{ Topic1: 高效开辟内存,使适用于大型数组.//开辟新数组,或者开辟新的0或者某一数值的数组/Mat或者Map直接使用memset //大数组操作效率较高 举例1:cv::Mat cv_ncc ...
最新文章
- java phantomjd linux_linux安装phantomjs
- @NotNull-JSR-303验证
- vscodemaven 配置_二、vscode搭建maven开发环境
- iOS中系统自带正则表达式的应用
- SQLServer 存储过程
- 对比学习系列论文CPC(二)—Representation Learning with Contrastive Predictive Coding
- kienct -color
- 读书笔记《单核工作法》_4原理4,5
- makefile的选项CFLAGS和LDFLAGS
- java asm 中文文档_Java ASM3学习(3)
- HBase读写的几种方式(一)java篇
- H5学习之旅-H5的表单(11)
- Python安装GDAL库的问题
- 为什么说Java中要慎重使用继承
- 基于FPGA的四轴运动控制IC设计(verilog)
- 拼多多API SDK【拼多多开放平台】
- c语言编程 if怎么用,C语言编程入门——if的用法
- 做食材配送行业,哪个平台软件比较好?
- 大容量U盘计算机会不识别吗,电脑无法识别大容量U盘,怎么处理
- 狂送京东购物卡(无门槛¥1200)