使用Rect類
使用Rect類可以方便的獲取矩陣中某一特定的矩形區域的值,構造一個矩形有多種方式,如知道一個矩形的左上角座標(x, y),還有矩形的寬度和高度,就可以確定一個矩形,構造函數爲:
Rect(int _x, int _y, int _width, int _height);
也可以將_width和_height保存在一個Size中,構造函數爲:
Rect(int _x, int _y, Size size);
如果知道左上角和右下角的座標也可以構造一個矩形,構造函數爲:
Rect(Point2i &pt1, Point2i &pt2);
如在mat中獲取一個2x2的矩形區域構成的Mat:
Mat roi1 = mat(Rect(Point(2,1), Point(3,2)));
Mat roi2 = mat(Rect(2,1,2,2));
Mat roi3 = mat(Rect(Point(2,1), Size(2,2)));
使用Rect類與使用colRange和rowRange類似,這樣得到的矩形區域是指向原矩陣的,如果改變roi1中的值,mat也會被改變,同樣可以使用clone或者copyTo來避免這種情況
Mat roi2 = mat(Rect(2,1,2,2)).clone();
---------------------
作者:andr_gale
來源:CSDN
原文:https://blog.csdn.net/gzx110304/article/details/89819421
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!