matlab中的map语句

1,
[p,map]=imread('peppers.bmp');
h=imshow(p,map)
2,
p=imread('peppers.bmp');
h=imshow(p)
这两个语句有什么区别呢?map是什么含义?谢谢啦。

map里储存的是颜色索引,就是一张各个数字对应颜色的表格。
如果bmp文件是真彩色或灰度的,不需要色表,得到的p是二维或三维的矩阵,数值介于0到255之间。
如果是索引格式的(如256色、16色等等)就有这样一张表格,p是一个二维矩阵,数值介于0-255或0-15之间,显示图像时需要色表才能正确对应颜色。

MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-01
map里储存的是颜色索引,就是一张各个数字对应颜色的表格。
如果bmp文件是真彩色或灰度的,不需要色表,得到的p是二维或三维的矩阵,数值介于0到255之间。如果是索引格式的(如256色、16色等等)就有这样一张表格,p是一个二维矩阵,数值介于0-255或0-15之间,显示图像时需要色表才能正确对应颜色。本回答被提问者和网友采纳