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);

把后面那删了

成功

相关推荐
youcans_17 小时前
【AI辅助编程】ROP 图像预处理
图像处理·人工智能·ai编程·辅助编程
这张生成的图像能检测吗19 小时前
(论文速读)XLNet:语言理解的广义自回归预训练
人工智能·计算机视觉·nlp·注意力机制
十铭忘19 小时前
自主认知-行动1——架构
人工智能·计算机视觉
yuzhuanhei19 小时前
YOLO26实操记录(自用)
人工智能·计算机视觉·目标跟踪
sali-tec20 小时前
C# 基于OpenCv的视觉工作流-章27-图像分割
图像处理·人工智能·opencv·算法·计算机视觉
saoys20 小时前
Opencv 学习笔记:腐蚀操作 + 轮廓标记 + 分水岭分割
笔记·opencv·学习
saoys20 小时前
Opencv 学习笔记:距离变换(DIST_L1 算法实战 + 归一化)
笔记·opencv·学习
音视频牛哥21 小时前
Android平台RTMP/RTSP超低延迟直播播放器开发详解——基于SmartMediaKit深度实践
android·人工智能·计算机视觉·音视频·rtmp播放器·安卓rtmp播放器·rtmp直播播放器
咚咚王者21 小时前
人工智能之视觉领域 计算机视觉 第十六章 图像拼接
人工智能·计算机视觉
开开心心就好21 小时前
安卓开源应用,超时提醒紧急人护独居安全
windows·决策树·计算机视觉·pdf·计算机外设·excel·动态规划