opencv图像像素的读写操作

cpp 复制代码
void QuickDemo::pixel_visit_demo(Mat & image)
{
	int w = image.cols;//宽度
	int h = image.rows;//高度
	int dims = image.channels();//通道数   图像为灰度dims等于一   图像为彩色时dims等于三  
	for (int row = 0; row < h; row++) {
		for (int col = 0; col < w; col++) {
			if (dims == 1) //如果是灰度图像
			{
				int pv = image.at<uchar>(row, col);//获取当前像素  都是uchar类型  转型
	/*对其进行改变*/image.at<uchar>(row, col)=255-pv;//pv原来就是0->255  减去也没有改变范围
			}
			if (dims = 3)//如果是彩色图像 
			{
				//读取
			Vec3b bgr=image.at<Vec3b>(row, col);//获取回来是三个值   Vec3b系统设定的

			/*对其进行改变*/   //对图像颜色取反
			image.at<Vec3b>(row, col)[0] = 255 - bgr[0];//第0个通道
			image.at<Vec3b>(row, col)[1] = 255 - bgr[1];
			image.at<Vec3b>(row, col)[2] = 255 - bgr[2];
			}
		}
	}
	imshow("像素读写演示", image);
}

把图片改为灰度

Mat src = imread("E:/download/images/test.png", IMREAD_GRAYSCALE);

把后面那删了

成功

相关推荐
浮生如梦_4 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
深度学习lover4 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
Eric.Lee20219 小时前
yolo v5 开源项目
人工智能·yolo·目标检测·计算机视觉
其实吧310 小时前
基于Matlab的图像融合研究设计
人工智能·计算机视觉·matlab
ctrey_10 小时前
2024-11-1 学习人工智能的Day20 openCV(2)
人工智能·opencv·学习
绕灵儿11 小时前
OpenCV通过指针裁剪图像
人工智能·opencv·计算机视觉
一马平川的大草原12 小时前
如何基于pdf2image实现pdf批量转换为图片
计算机视觉·pdf·文件拆分
lrlianmengba13 小时前
推荐一款可视化和检查原始数据的工具:RawDigger
人工智能·数码相机·计算机视觉
决战春招17 小时前
人工智能之人脸识别(人脸采集人脸识别)
人工智能·opencv·学习·计算机视觉
handsomeboysk18 小时前
mAP的定义
人工智能·计算机视觉·目标跟踪