养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

Matlab imshow结果奇怪,非黑即白,范围0~1

时间:2024-10-17 08:31:55

Matlab中,我们常用到imshow()函数进行画图,但是直接用imshow(I)这样的格式进行画图,结果很奇怪,画面非黑即白,用jet色标则非红即蓝,如图所示,这是为什么呢?

Matlab imshow结果奇怪,非黑即白,范围0~1

Matlab imshow结果奇怪,非黑即白,范围0~1

工具/原料

Matlab

方法/步骤

1、imshow支持的数据包括double和unit8两种类型,double的取值为0~1之间,unit8取值0~255。按照double的范围0~1,大于1的都被看作1,小于0的都看成0,所以图片会基本都是纯黑和纯白,无法看出差别。

2、我最惘度谋裆常用的方法是,将imshow(I)改成imshow(I,[]),让matlab自动调整色标范围0~1为数据的最小到最大值范围。结果如图。fig锇栀劐箨ure()imshow(I,[])%I为任意矩阵colormapjetcolorbartitle('imshow(I,[]);colormapjet')figure()imshow(I,[])colormapgraycolorbartitle('imshow(I,[]);colormapgray')

Matlab imshow结果奇怪,非黑即白,范围0~1

Matlab imshow结果奇怪,非黑即白,范围0~1

3、如果该经验对您有所帮助,请在下面投票点赞哦^_^

© 一点知识