Opencv 的坐标方向

OpenCV坐标方向

由于太久没有碰Opencv了, 对opencv的东西有点混淆。现在重新捋一下opencv的坐标方向问题。

OpenCV坐标方向和Matlab 相同, x轴沿水平方向, y轴沿竖直方向。但因为Matlab中数据按列存储,而OpenCV中数据按行存储, 所以在操作的时候有些区别。

Opencv函数变量中涉及位置信息的有以下几类。

  1. X Y
    点的坐标用(x, y)表示, x在前, y在后,例如:
cv::Point p(int x, int y);
  1. width height
    区域的尺寸的宽和高, 宽在前, 高在后, 例如
cv::Size s(int width, int height);
cv::Rect Rect(int x, int y, int width, int height);
  1. row column
    主要矩阵类型cv::Mat , row 相当于height, column 相当于width, 到两者在函数的位置不同, row和col用于矩阵, width和height 用于区域和尺寸。
    最易混淆的就是矩阵M函数 at 中的坐标(i, j) 与(x,y)正好相反, i代表行坐标, j代表列坐标。与Matlab中的矩阵坐标是相同的,但与Point 坐标就相反很费劲

你可能感兴趣的:(opencv)