您的位置:首页 > 运维架构

OPenCV学习09

2016-02-25 20:20 369 查看
学习使用IplImage的ROI功能。

先列出IplImage的结构体:



结构体里的参数基本都能够耳熟能详,今天发现这个ROI参数很有趣,简单的来说ROI(Region of Interesting)就是“兴趣区域”(PS:一开始我还以为应该是 Rectangle of Interesting,因为ROI不是叫兴趣区域吗?再加上在设置ROI时其中一个参数就是CvRect),你能操作ROI设定区域内的数据,在ROI区域以外的不能操作,也不是说操作后会报错,就只是操作后原数据不会发生改变。

以下是代码:实现讲中间区域变暗的功能,设定完ROI后一定要解除ROI哦!(函数:cvResetImageROI)

//
// main.cpp
// Study09
//
// Created by Sean on 16/2/25.
// Copyright © 2016年 Sean. All rights reserved.
//

#include <iostream>
#include "highgui.h"

using namespace std;

int main(int argc, const char * argv[]) {
// insert code here...
cout << "Project start..."<<endl;
IplImage* img = cvLoadImage("/Users/sean/Pictures/11.png");
cvNamedWindow("Example09");
cvSetImageROI
(
img,
cvRect
(
img->width/4,
img->height/4,
img->width/2,
img->height/2
)
);
cvAddS
(
img,
cvScalar(-50,-50,-50),//通道顺序:B->G->R
img
);
cvResetImageROI(img);
cvShowImage("Example09", img);
while(cvWaitKey()-27);
cvReleaseImage(&img);
cvDestroyAllWindows();
return 0;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: