怎么关掉内存三双通道内存和单通道怎么变成单双通道内存和单通道

OpenCV笔记(9)
(一):单通道图,
俗称灰度图,每个像素点只能有有一个值表示颜色,它的像素值在0到255之间,0是黑色,255是白色,中间值是一些不同等级的灰色。(也有3通道的灰度图,3通道灰度图只有一个通道有值,其他两个通道的值都是零)。
(二):三通道图,每个像素点都有3个值表示
,所以就是3通道。也有4通道的图。例如RGB图片即为三通道图片,RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。总之,每一个点由三个值表示。
下面用一个简单的例子说明三通道图片和单通道图片的区别
/**********************************************************************************************************
*文件说明:
利用一个简单的例子说明三通道图片和单通道的含义
*开发环境:
win7+vs2010+opencv2.4.8
*时间地点:
陕西师范大学.
***********************************************************************************************************/
#include&iostream&
#include&opencv2\core\core.hpp&
#include&opencv2\highgui\highgui.hpp&
#include&opencv2\imgproc\imgproc.hpp&
#include&opencv2\opencv.hpp&
int main()
//载入一张彩色图片并显示
Mat srcImage=imread(&G:\\Image\\lenaRGB.png&,1);
namedWindow(&Image&,WINDOW_AUTOSIZE);
imshow(&Image&,srcImage);
int nHeight=srcImage.
int nWidth=srcImage.
//载入一张灰度图并显示,这里使用同一张图片 只是imread函数的最后一个参数不一样
效果是相同的
Mat grayImage=imread(&G:\\Image\\lenaRGB.png&,0);
namedWindow(&grayImage&,WINDOW_AUTOSIZE);
imshow(&grayImage&,grayImage);
//基本信息
cout&&&图像的高度&&&nHeight&&
cout&&&图像的宽度&&&nWidth&&
cout&&&Image的通道数&&&srcImage.channels()&&
//彩色图片的通道数
cout&&&grayImage的通道数&&&grayImage.channels()&& //灰度图片的通道数
for(int i=0;i&nHi++)
for(int j=0;j&nWj++)
srcImage.at&uchar&(i,j)=0;
grayImage.at&uchar&(i,j)=0;
namedWindow(&彩色图片处理后对应黑色图片&,WINDOW_AUTOSIZE);
imshow(&彩色图片处理后对应黑色图片&,srcImage);
namedWindow(&灰度图片处理后对应黑色图片&,WINDOW_AUTOSIZE);
imshow(&灰度图片处理后对应黑色图片&,grayImage);
cvWaitKey(0);
cvDestroyWindow(&Image&);
cvDestroyWindow(&grayImage&);
cvDestroyWindow(&彩色图片处理后对应黑色图片&);
cvDestroyWindow(&灰度图片处理后对应黑色图片&);
& 好好体会 运行结果 &就知道了。 & & & & & & & &&
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
(13)(8)(7)(5)匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。查看: 6102|回复: 4|关注: 0
请教各位如何把三通道图片转换成单通道图片

关注者: 286
你跑错方向了sift 不是用来搞立体匹配的
你应该去看块匹配的方法
论坛优秀回答者

关注者: 3
你跑错方向了sift 不是用来搞立体匹配的
你应该去看块匹配的方法
你好,我今天看了看感觉好像也是怪怪的。那你那有现成的例程么?我是机械专业的,这些真是水里雾里的

参考资料

 

随机推荐