1. 程式人生 > 其它 >opencv中的向量模板類Vec

opencv中的向量模板類Vec

vector(向量):是C++中的一個類,它相當與一個動態陣列,當無法知道自己需要的陣列大小是,可以使用它節約空間

Vec是opencv中的向量模板類,而opencv中常用的Vec3b,Vec3s

其實看原始碼可以看到它的定義,它們都是Vec類只是用於不同資料型別:

typedef Vec<uchar, 2> Vec2b;
typedef Vec<uchar, 3> Vec3b;
typedef Vec<uchar, 4> Vec4b;

typedef Vec<short, 2> Vec2s;
typedef Vec<short, 3> Vec3s;
typedef Vec
<short, 4> Vec4s; typedef Vec<ushort, 2> Vec2w; typedef Vec<ushort, 3> Vec3w; typedef Vec<ushort, 4> Vec4w; typedef Vec<int, 2> Vec2i; typedef Vec<int, 3> Vec3i; typedef Vec<int, 4> Vec4i; typedef Vec<int, 6> Vec6i; typedef Vec<int, 8> Vec8i; typedef Vec
<float, 2> Vec2f; typedef Vec<float, 3> Vec3f; typedef Vec<float, 4> Vec4f; typedef Vec<float, 6> Vec6f; typedef Vec<double, 2> Vec2d; typedef Vec<double, 3> Vec3d; typedef Vec<double, 4> Vec4d; typedef Vec<double, 6> Vec6d;

常見用法:

獲取某畫素的顏色值:

例如:

cout<<img.at<Vec3b>(row,col)<<endl;//
獲取點(row,col)的b,g,r值