1. 程式人生 > >opencv之幾種常用的型別

opencv之幾種常用的型別

opencv之幾種常用的型別

cv::Point類

表示二維點,三維點

cv::Point p(10, 8);
// p.x = 10; p.y = 8;
// cv::Point == cv::Point2i
cv::Point2f p_2f(1.0, 2.0);
cv::Point3f p_3f(1.0, 2.0, 3.0);
std::vector<cv::Point2f> v_p(10);

cv::Scalar類

cv::Scalar可以用於表示初始化的值,也可以用於表示顏色。

cv::Mat image(100, 200, cv::8UC3, cv::Scalar(0, 0, 0));
cv::Scalar color(a, b, c); // red, green, blue

cv::Size類

表示尺寸。

int width = image.width;
int height = image.height;
cv::Size size(width, height);

cv::Rect類

表示矩形。

cv::Rect rect(x, y, width, height); // 左上角點的座標,矩形的寬和高
cv::Rect rect = rect1 & rect2; //交集
cv::Rect rect = rect1 | rect2; //並集
cv::Rect rect_shift = rect + point; //平移
cv::Rect rect_scale = rect + size;  //縮放
rect.size();
rect.area();
rect.contains(point); //判斷點是否在矩形內
rect.inside(rect1); //判斷rect是否在rect1內