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

把后面那删了

成功

相关推荐
Esaka_Forever32 分钟前
png图像的base64 encoding
图像处理
玖釉-40 分钟前
Vulkan 离屏渲染详解:从 Framebuffer 到后处理、阴影贴图与 Render Texture
c++·windows·计算机视觉·图形渲染
路人甲3262 小时前
SONIC: Supersizing Motion Tracking for Natural Humanoid Whole-Body Control
人工智能·深度学习·计算机视觉·机器人·具身智能
程序员正茂2 小时前
EasyAR使用OpenCV下USB摄像头作为自定义相机
opencv·unity·easyar
_李小白2 小时前
【android opencv学习笔记】Day 31:提取轮廓之Canny算法
android·opencv·学习
armwind2 小时前
openISP学习8-GC — Gamma Correction(Gamma 校正)
图像处理·计算机视觉
大江东去浪淘尽千古风流人物3 小时前
【VGGT-Ω】前馈式3D重建的规模化之路:Register Attention、自监督训练与10B参数Scaling Law深度解析
深度学习·计算机视觉·transformer·slam·vio·3d重建
断眉的派大星3 小时前
YOLO26 完整学习笔记:从 Anchor-Free、TAL、STAL 到端到端无 NMS 部署
人工智能·笔记·学习·yolo·目标检测·计算机视觉·目标跟踪
人月神话-Lee4 小时前
【图像处理】颜色空间——RGB之外的世界
图像处理·人工智能·ios·ai编程·swift·rgb·颜色空间
却道天凉_好个秋5 小时前
HEVC(六):CTC
人工智能·计算机视觉·hevc·ctc