学习OpenCV 03 图像操作
学习OpenCV 03 图像操作
读写像素
Scalar intensity=img.at<uchar>(y,x);或 Scalar intensity=img.at<uchar>(Point(x,y));
Vec3f intensity=img.at<Vec3f>(y,x);float blue=intensity.val[0];float green=intensity.val[1];float red=intensity.val[2];
像素取反实现反差图像
for (int row = 0; row < height; row++) {
for (int col = 0; col < width; col++) {
if (nc == 1) {
int gray = gray_src.at<uchar>(row, col);
gray_src.at<uchar>(row, col) = 255 - gray;
}
else if (nc == 3) {
int b = src.at<Vec3b>(row, col)[0];
int g = src.at<Vec3b>(row, col)[1];
int r = src.at<Vec3b>(row, col)[2];
dst.at<Vec3b>(row, col)[0] = 255 - b;
dst.at<Vec3b>(row, col)[1] = 255 - g;
dst.at<Vec3b>(row, col)[2] = 255 - r;
}
}
}
- 读一个GRAY像素点的像素值(CV_8UC1)
- 读一个RGB像素点的像素值
-