如何使用OpenCV C ++接口管理ROI [英] How OpenCV C++ Interface Manage ROI

查看:419
本文介绍了如何使用OpenCV C ++接口管理ROI的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用OpenCV C ++接口如何编写用于设置和重置ROI的代码
例如:如果我需要编码

   - >加载图片
- > SetImageRoi
- >对ROI区域进行一些处理
- >重置ROI
- >对整个图像执行一些操作

在这种情况下,我如何使用c ++ interface?

提前感谢....

解决方案

  //载入图片
cv :: Mat image = cv :: imread(image_filname);

// SetImageRoi
cv :: Rect roi(x,y,width,height);
cv :: Mat image_roi = image(roi);
//注意:此赋值不会复制数据
// image和image_roi现在共享数据

//对ROI区域进行一些处理
进程(image_roi) ;
//对image_roi的任何更改也将出现在图像

//重置ROI
// - 不需要

//执行某些操作整个图像
操作(图像);


Using OpenCV C++ interface how can I write code for setting and resetting ROI For eg: If I need to code like

-> Load image
-> SetImageRoi
-> Do some processing on ROI region
-> Reset ROI
-> Do some operation on entire image 

In this case how can I manage with c++ interface ?

Thanks in advance....

解决方案

Here are the steps you need:

// Load image
cv::Mat image = cv::imread("image_filname");

// SetImageRoi
cv::Rect roi(x, y, width, height);
cv::Mat image_roi = image(roi);
// note: this assignment does not copy data
// image and image_roi now share data

// Do some processing on ROI region
process(image_roi);
// any changes to image_roi will also be in image

// Reset ROI  
//     -- nothing required

// Do some operation on entire image 
operations(image);

这篇关于如何使用OpenCV C ++接口管理ROI的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆