OpenCV进阶--感兴趣区域

        当一幅图像很大时,我们需要对截取一幅图像的感兴趣区域,这样会大大节约内存,在OpenCV中提供了两种截取ROI(感兴趣区域)的方式,在本文中将会有详细的介绍。

        从原图中截取部分内容,就是将需要截取的部分在原图像中标记出来,可以用Rect数据结构标记,也可以用Range数据结构标记,这两种数据结构在下面给出。

Rect_(_Tp _x, _Tp _y, _Tp _width, _Tp _height)

cv::Range(int start, int end)

_Tp:一种数据类型。c++模板特性,可以用int,double,float等替换。

_x:矩形区域左上角第一个像素的x的坐标,也就是第一个像素的列数。

_y:矩形区域左上角第一个像素的y的坐标,也就是第一个像素的行数。

_width:矩形的宽,单位为像素,即矩形区域跨越的列数。

_height:矩形的高,单位为像素,即矩形区域跨越的行数。

start:区间的起始。

end:区间的结束。

        在图像处理的过程中OpenCV中提供了copyTo()函数实现两类方法(其中在Mat类中定义的copyTo()有两种重载方式)进行深拷贝。函数原型如下:

void cv::Mat::copyTo(OutputArray m) const

void cv::Mat::copyTo(OutputArray m,
                     InputArray masl
                     )const
void cv::copyTo(InputArray src,
                OutputArray dst,
                InputArray mask
                )

你可能感兴趣的:(OpenCV学习笔记,opencv)