座標體系中的零點座標爲圖片的左上角,X軸爲圖像矩形的上面那條水平線;Y軸爲圖像矩形左邊的那條垂直線。該座標體系在諸如結構體Mat,Rect,Point中都是適用的。(雖然網上有學着說OpenCV中有些數據結構的座標原點是在圖片的左下角,但是我暫時還沒碰到過)。
在使用image.at(x1, x2)來訪問圖像中點的值的時候,x1並不是圖片中對應點的x軸座標,而是圖片中對應點的y座標。因此其訪問的結果其實是訪問image圖像中的Point(x2, x1)點,即與image.at(Point(x2, x1))效果相同。
row == heigh == Point.y//行
col == width == Point.x //列
Mat::at(Point(x, y)) == Mat::at(y,x)//
因爲還有點的座標,所以建議在訪問時都用Mat::at(Point(x, y))這種形式吧,免去了點座標和行列的轉換。
IplImage*dst = NULL;
dst =cvCreateImage(cvSize(600, 480), IPL_DEPTH_8U, 3);
這裏創建的dst是480行600列的,先列後行。
Mat dst;
dst =Mat(480, 600, CV_8UC3);
這裏創建的dst同樣是是480行600列的,但是先行後列。
RectROI_rect;
ROI_rect.x=10;
ROI_rect.y=20;
這裏表示定義的感興趣區域(矩形)的左上角像素的座標(x,y)是(10,20),即位於第20行,第10列。