1.cv::Vec<type, 長度> :固定向量類
其實可以把它當成數組,例如Vec<uchar,3>,就是定義一個uchar類型的,長度為3的數組。
Vec3b,Vec3f是它具體情況下的別名
typedef Vec<uchar,3> Vec3b //為 Vec<uchar,3>定義別名Vec3b
typedef Vec<float,3> Vec3f //為 Vec<float,3>定義別名Vec3f
2. cv::mat的成員函數: .at(int y, int x)的用法
如有下面的代碼:
Mat image = imread("d:/test/apple.jpg", 1); //創建Mat對象,保存一張彩色圖像(有3個通道),假設已知圖像的數據類型是uchar
image.at<Vec3b>(2,3)[0]=255;//為圖像(x,y)位置的像素點B通道重新賦值
image.at<Vec3b>(2,3)[1]=200;//為圖像(x,y)位置的像素點G通道重新賦值
image.at<Vec3b>(2,3)[2]=199;//為圖像(x,y)位置的像素點R通道重新賦值
image.at
因為圖像的數據類型是uchar,有三個通道,所以用
另:
如果image是一個uchar類型的1同道的灰度圖像,則可以用image.at