关于图像三通道和单通道的解释

(一):单通道图,

俗称灰度图,每个像素点只能有有一个值表示颜色,它的像素值在0到255之间,0是黑色,255是白色,中间值是一些不同等级的灰色。(也有3通道的灰度图,3通道灰度图只有一个通道有值,其他两个通道的值都是零)。

(二):三通道图,每个像素点都有3个值表示 ,所以就是3通道。也有4通道的图。例如RGB图片即为三通道图片,RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。总之,每一个点由三个值表示。

下面用一个简单的例子说明三通道图片和单通道图片的区别

/**********************************************************************************************************
*文件说明:
*        利用一个简单的例子说明三通道图片和单通道的含义
*开发环境:
*        win7+vs2010+opencv2.4.8
*时间地点:
*        陕西师范大学.2017.1.24
*作    者:
*        李丽 
***********************************************************************************************************/
#include
#include
#include
#include
#include

using namespace std;
using namespace cv;

int main()
{
	//载入一张彩色图片并显示
	Mat srcImage=imread("G:\\Image\\lenaRGB.png",1);  
	namedWindow("Image",WINDOW_AUTOSIZE);
	imshow("Image",srcImage);

	int nHeight=srcImage.rows;
	int nWidth=srcImage.cols;
	
	//载入一张灰度图并显示,这里使用同一张图片 只是imread函数的最后一个参数不一样  效果是相同的
	Mat grayImage=imread("G:\\Image\\lenaRGB.png",0);
	namedWindow("grayImage",WINDOW_AUTOSIZE);
	imshow("grayImage",grayImage);
	
	//基本信息
	cout<<"图像的高度"<(i,j)=0;
			grayImage.at(i,j)=0;
		}
	}
	namedWindow("彩色图片处理后对应黑色图片",WINDOW_AUTOSIZE);
	imshow("彩色图片处理后对应黑色图片",srcImage);

	namedWindow("灰度图片处理后对应黑色图片",WINDOW_AUTOSIZE);
	imshow("灰度图片处理后对应黑色图片",grayImage);

	cvWaitKey(0);
	cvDestroyWindow("Image");
	cvDestroyWindow("grayImage");
	cvDestroyWindow("彩色图片处理后对应黑色图片");
	cvDestroyWindow("灰度图片处理后对应黑色图片");

	return 0;

}
程序结果:

关于图像三通道和单通道的解释_第1张图片

关于图像三通道和单通道的解释_第2张图片


关于图像三通道和单通道的解释_第3张图片    

  好好体会 运行结果  就知道了。                 

你可能感兴趣的:(OpenCV笔记)