2013-04-09 213 views
0

当我从网络摄像头抓取图片并使用函数im2bw时,它会产生亮蓝色的图像而不是黑白图像。这是什么造成的?matlab的im2bw导致暗/淡蓝色

我在R2011a为Linux

+1

你是否在任何地方使用'colormap'命令? – 2013-04-09 17:01:25

+1

您是否使用'图像'功能来显示图像?它如何用'imshow'看起来?如何保存它并在MATLAB之外开放? – yuk 2013-04-09 17:07:50

+0

这样做!我确实使用图像来显示图像,imshow以黑白显示,谢谢! – Whyaken 2013-04-09 18:36:10

回答

0

你可能转换索引图像。尝试使用map参数运行im2bw。

BW = im2bw(X, map, level) 

你得到的地图,当你阅读的图像作为

[X, map] = imread(file); 

编辑

根据OP的答案竟是我的评论的问题,而不是在这里。为了显示图像,使用了功能IMAGE。此功能使用JET色彩映射并且不缩放图像,这就是为什么它通常以蓝色显示图像的原因。要显示图像最好使用Image Processing Toolbox中的IMSHOW函数。

+0

我正在使用从网络摄像头捕获的图像,因此不是从文件中获取的。但解决方案是使用imshow而不是图像来显示图像。感谢您的输入! – Whyaken 2013-04-09 18:37:39

0

BTW: 如果一个人不具备的图像处理工具箱:

image(uint8(repmat(picture, [1,1,3]))); 
axis image 

应该有所帮助。