OpenCV中的坐标

OpenCV中储存图像专用的Mat类,它的本质是一个矩阵

因为是矩阵的缘故,一副Mat类图像的坐标系不是传统的那样一个朝上的Y轴和一个朝右的X轴,而是朝下的“Y轴”,与朝右的“X轴”,就如下图中的左边所示:



对于一个Mat类的图像,

图像的高是矩阵的行数,即rows,

图像的宽是矩阵的列数,即cols。



在图像处理中,要特别注意操作时不要超出图像的坐标。

图像的坐标依然遵循C++的数组原则,即从0开始计数。

比如一副图像image的行,起点是0,最后一点是image.rows-1;

列的起点是 0,最后一点是image.cols-1

注意:指明某个点时,有的地方是(行,列),

有的地方是(列,行),不要混淆了。

_______________________________________________

如下所示:

指定某个像素点: image.at<uchar>(row, col);

______________________________________

Mat,Rect,Point中的 坐标系 都是左上角为原点

Point类中的x,y:

Point.x==col ==width

Point.y==row == heigh 

____________________________________________

取感兴趣区域: image( Rect(col, row, width, heith ) );

image(Rect (左上角坐标x,左上角坐标y,宽,高) );

________________________________________________


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容