2014-09-27 182 views

回答

2

从Mathwork的网站(参见DisplayRangehere):

灰度图像的显示范围,指定为一个两元素矢量[LOW HIGH]。 imshow将低值(小于低值)显示为黑色,高值(以及大于高值的任何值)显示为白色。使用默认的灰度级数显示中间的灰度值。如果你指定一个空矩阵([]),imshow使用[min(I(:))max(I(:))];即将I中的最小值用作黑色,将最大值用作白色。

假设你拥有230的最低值和255最高值的图像,如果你这样做imshow(img),它会假设最低的显示图像的是0和最大为255,所以你最终得到(几乎)白色图像。另一方面,如果你做了imshow(img,[]),你告诉MATLAB根据图像的最小值和最大值调整显示图像的最小值和最大值。因此,在上例中,拨打imshow(img,[])等同于拨打imshow(img,[230 255])。这将使您能够看到中间的灰色阴影。