Matlab imshow(someImage,[])是做什么的?
我试图找出Matlab中Matlab imshow(someImage,[])是做什么的?,matlab,Matlab,我试图找出Matlab中imshow(someImage,[])中的第二个(空向量)参数是什么 根据doc imshow,它要么是一个彩色贴图,要么是一个宽度/高度范围,但这两个对我来说都没有意义,因为向量是空的。带空括号的imshow将显示最小值和最大值之间的范围。例如,如果图像为16位,最大值为65536,但如果实际像素值停止在1000,imshow(图像)将显示为黑色(因为即使65536上的1000也很小)。如果使用imshow(图像,[]),则显示将在0和1000之间调整 这与: min
imshow(someImage,[])
中的第二个(空向量)参数是什么
根据
doc imshow
,它要么是一个彩色贴图,要么是一个宽度/高度范围,但这两个对我来说都没有意义,因为向量是空的。带空括号的imshow将显示最小值和最大值之间的范围。例如,如果图像为16位,最大值为65536,但如果实际像素值停止在1000,imshow(图像)将显示为黑色(因为即使65536上的1000也很小)。如果使用imshow(图像,[]),则显示将在0和1000之间调整
这与:
minValue = min(min(image));
maxValue = max(max(image));
imshow(image,[minValue maxValue]);
help imshow
中的文档描述了以下语法:
imshow(I,[LOW-HIGH])
显示灰度图像I
,指定显示
[低-高]
中的I
范围。值LOW
(以及小于LOW
的任何值)
显示为黑色,值高
(以及大于高
的任何值)显示
像白色一样。介于两者之间的值显示为中间灰度,
使用默认的灰度级别数如果将空矩阵([]
)用于
[低-高]
,imshow
使用[最小(I(:))最大(I(:)]
;即中的最小值
I显示为黑色,最大值显示为白色。
那么这是某种直方图均衡化吗?不是。它只改变imshow函数的动态范围。例如,如果除65000处的一个点外,所有数据点都在0到1000之间,则显示范围仍将在0到65000之间。