qq_41517828 2018-04-02 05:52 采纳率: 25.9%
浏览 1944
已结题

C++如何用OPENCV对摄像头进行ROI感兴趣区域设定,求大神赐教 谢谢

以下是我想要处理的一段代码

#include "stdafx.h"
//---------------------------------【头文件、命名空间包含部分】----------------------------
// 描述:包含程序所使用的头文件和命名空间
//------------------------------------------------------------------------------------------------
#include
#include
#include
using namespace cv;
using namespace std;

//-----------------------------------【main( )函数】------------------------------------------
// 描述:控制台应用程序的入口函数,我们的程序从这里开始
//-----------------------------------------------------------------------------------------------
int main( )
{
//打开摄像头
char c = 0;
VideoCapture capture(0);
while (1)

{
Mat frame;
capture >> frame;

//【1】Mat变量定义

Mat midImage;//目标图的定义

//【2】转为灰度图并进行图像平滑
cvtColor(frame,midImage, CV_BGR2GRAY);//转化边缘检测后的图为灰度图
GaussianBlur( midImage, midImage, Size(9, 9), 2, 2 );

//【3】进行霍夫圆变换
vector circles;
HoughCircles( midImage, circles, CV_HOUGH_GRADIENT,1.5, 10, 200, 100, 0, 0 );

//【4】依次在图中绘制出圆
for( size_t i = 0; i < circles.size(); i++ )
{
//参数定义
Point center(cvRound(circles[i][0]), cvRound(circles[i][1]));
int radius = cvRound(circles[i][2]);
//绘制圆心
circle( frame, center, 3, Scalar(0,255,0), -1, 8, 0 );
//绘制圆轮廓
circle( frame, center, radius, Scalar(155,50,255), 3, 8, 0 );
//打印圆心坐标
printf("x = %d,y = %d\n",cvRound(circles[i][0]),cvRound(circles[i][1]));
}

//【5】显示效果图

namedWindow("效果");
imshow("效果", frame2);
c = cvWaitKey(30);
if (c == 27)//Esc键退出
{
break;
}
}
return 0;

}

请问如何如何对这段代码加入ROI区域的设定,求大神赐教

  • 写回答

1条回答 默认 最新

  • qq_41517828 2018-04-02 05:54
    关注

    还有问一下进行ROI处理过后 ,后面的代码是不是就只处理ROI范围内的图像了

    评论

报告相同问题?

悬赏问题

  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 matlab求解平差
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办
  • ¥15 vue2登录调用后端接口如何实现