Matlab imshow(A,2):无效的imshow语法
我是matlab图像处理方面的新手,当我编写以下代码时:Matlab imshow(A,2):无效的imshow语法,matlab,image-processing,Matlab,Image Processing,我是matlab图像处理方面的新手,当我编写以下代码时: A = [0 0 1 0 0; 0 1 1 1 0; 1 1 1 1 1; 0 1 1 1 0; 0 0 1 0 0]; B = [A A A A A; A A A A A; A A A A A; A A A A A; A A A A A]; imshow(A, 2) imshow(B, 2) 我得到了这个错误: Error using imshow>preParseInputs (line 439) Invalid IMSHOW
A = [0 0 1 0 0; 0 1 1 1 0; 1 1 1 1 1; 0 1 1 1 0; 0 0 1 0 0];
B = [A A A A A; A A A A A; A A A A A; A A A A A; A A A A A];
imshow(A, 2)
imshow(B, 2)
我得到了这个错误:
Error using imshow>preParseInputs (line 439)
Invalid IMSHOW syntax.
Error in imshow (line 214)
varargin_translated = preParseInputs(varargin{:});
函数imshow()
一点也不被弃用,它确实将双矩阵作为第一个输入。但是,第二个输入(colormap)不能是标量,它必须是具有3列的矩阵,其中每行指定RGB颜色值。通过做
A = [0 0 1 0 0; 0 1 1 1 0; 1 1 1 1 1; 0 1 1 1 0; 0 0 1 0 0];
imshow(A,[1 1 1])
一个全白色的小图片出现。现在,由您来调整颜色映射,使其更适合您的目标。该
2
做什么?B
在哪里使用?@bicker,我刚刚添加了imshow(B,2)
,对于2
,我认为它用于获取二进制图像,如果您阅读了文档,您会发现2
的语法不正确。@bial第二个参数根本不需要imshow
将显示二进制、灰度、彩色映射(大部分)或多通道图像。@Bicker,是的!你说得对,我只是使用了imshow(A)
,效果很好,谢谢!感谢您的重播,请您解释一下[1,1,1]
在这里的意思好吗?通过在所有三个组件(红色、绿色、蓝色)中设置1
,您就得到了纯白色。这就是为什么如果运行此代码,A
将全部为白色。