矩阵的掩膜操作
- 获取图像像素指针
- CV_Assert(myImage.depth()==CV_8U);
- Mat.ptr(int i = 0)获取像素矩阵的指针,索引i表示第几行,从0开始计行数.
- ptr(point)指针,unchar一个字节
- 获取的是地址,而不是一个具体的值
- 获得当前行指针const uchar* current = myImage.ptr(row);
- 获取当前像素点P(row,col)的像素值p(row,col) = current[col]
- 像素范围处理saturate_cast
* 在0~255返回正常值,小于0返回0,大于255返回255
- 这个函数的功能是确保RGB值的范围在0~255之间
- saturate_cast(-100),返回0.
- saturate_cast(288),返回255
- saturate_cast(100),返回100
- 掩膜(mask)操作
- 如3*3,即邻域操作
- I(i,j)=5*I(i,j)-[I(i-1,j)+I(i+1,j)+I(i,j-1)+I(i,j+1)]
- 通过掩膜操作重新计算每个像素值,提高图像的对比度
int cols = (src.cols-1)*src.channels();
int offsetx = src.channels();
int rows = src.rows;