我在matlab中有一个非常简短的问题。
imshow(pic)和imshow(pic,[])有什么区别?我应该什么时候使用imshow(pic,[])
发布于 2014-09-27 23:57:34
来自Mathwork的网站(请参阅这里中的DisplayRange部分):
灰度图像的显示范围,指定为二元素矢量低高.imshow将低值(和任何小于低值的值)显示为黑色,而值高(以及任何大于高的值)显示为白色。中间的值显示为灰色的中间阴影,使用默认的灰色级别数。如果您指定了一个空矩阵([]),则imshow使用min(I(:)) max(I(:));也就是说,将i中的最小值用作黑色,最大值使用为白色。
假设您有一个图像,其最低值为230,最高值为255,如果您执行imshow(img),它将假设显示图像的最低值为0,最大值为255,因此您将得到(几乎)白色图像。另一方面,如果你做imshow(img,[]),你告诉MATLAB根据图像的最小值和最大值来调整显示图像的最小值和最大值。因此,在上面的示例中,调用imshow(img,[])等同于调用imshow(img,[230 255])。这将使您能够看到中间阴影的灰色。
https://stackoverflow.com/questions/26080235
复制相似问题