首页 > 其他 > 详细

OpenCV —— ROI

时间:2014-06-26 00:22:17      阅读:380      评论:0      收藏:0      [点我收藏+]

通过 cvResetImageRoI 函数释放ROI是非常重要的,否则其他操作将默认在ROI区域中进行

通过巧妙的使用widthStep,可以达到同ROI一样的效果 —— 如果想设置和保持一副图像的多个子区域处于活动状态(ROI 只能串行处理并且必须不断的设置和重置)

 

#include <cv.h>
#include <highgui.h>

int main(int argc,char** argv)
{
    IplImage* src;

    src=cvLoadImage("wukong.jpg",CV_LOAD_IMAGE_COLOR);

//     cvSetImageROI(src,cvRect(50,50,100,100));
//     cvAddS(src,cvScalar(90),src);
//     cvResetImageROI(src);


    CvRect rect=cvRect(50,50,100,100);
    IplImage* sub_img=cvCreateImageHeader(cvSize(rect.width,rect.height),src->depth,src->nChannels);
    sub_img->origin=src->origin;
    sub_img->widthStep=src->widthStep;
    sub_img->imageData=src->imageData+rect.y*src->widthStep+rect.x*src->nChannels;
    cvAddS(sub_img,cvScalar(90),sub_img);

    cvNamedWindow("w1");
    cvShowImage("w1",sub_img);
    cvWaitKey();

    cvReleaseImageHeader(&sub_img);
    cvDestroyWindow("w1");
    return 0;
}

OpenCV —— ROI,布布扣,bubuko.com

OpenCV —— ROI

原文:http://www.cnblogs.com/sprint1989/p/3804313.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!