opencv中的向量模板類Vec
阿新 • • 發佈:2022-05-24
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值