我们在使用OpenCV库进行图像操作时,常常需要截取ROI区域(兴趣区).
在MATLAB中我们一般只需要索引行列坐标即可,如:image(10:20, 20:30)
在OpenCV时我们就需要加上Range在索引行列坐标
1.Range是OpenCV中新加入的一个类,该类有两个关键的变量start和end;
2.Range对象可以用来表示矩阵的多个连续的行或者多个连续的列
3.Range表示范围从start到end,包含start,但不包含end;
4.Range类还提供了一个静态方法all(),这个方法的作用如同Matlab中的“:”,表示所有的行或者所有的列
例子:
// 1.创建一个单位阵
Mat A= Mat::eye(10, 10, CV_32S);
// 2.提取第1到3列(不包括3)
Mat B = A(Range::all(),Range(1,3));
// 3.提取B的第5至9行(不包括9)
C= B(Range(5,9),Range::all());