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

把后面那删了

成功

相关推荐
刘简爱学习41 分钟前
弱监督互斥多类脑肿瘤图像分割的类间可分离性损失
人工智能·深度学习·计算机视觉
movigo7_dou1 小时前
双目立体匹配
数码相机·opencv·计算机视觉
我材不敲代码2 小时前
OpenCV 背景建模实战:三种方法实现运动目标检测
人工智能·opencv·目标检测
我材不敲代码11 小时前
OpenCV 光流估计实战:Lucas-Kanade 算法实现运动目标跟踪
opencv·算法·目标跟踪
禄亿萋11 小时前
基于多维协同注意力和特征融合的小目标检测方法
人工智能·目标检测·计算机视觉
咏&志11 小时前
目标检测Faster-RCNN论文简读
人工智能·目标检测·计算机视觉
卖报的大地主12 小时前
视觉生成底层技术发展脉络与研究图谱
人工智能·深度学习·计算机视觉
CV实验室16 小时前
Meta引爆3D革命!SAM 3D 发布:单张图秒建3D模型,AR/VR、游戏圈炸锅!
计算机视觉·3d·meta·ar·vr
RFdragon16 小时前
分享本周所学——三维重建算法3D Gaussian Splatting(3DGS)
人工智能·线性代数·算法·机器学习·计算机视觉·矩阵·paddlepaddle
li99yo16 小时前
3DGS的复现
图像处理·pytorch·经验分享·python·3d·conda·pip