2014-09-27 3 views

ответ

2

С сайтом Mathwork (см here в разделе DisplayRange):

области отображения черно-белого изображения, указанный в два-элементе векторе в [LOW HIGH]. imshow отображает значение low (и любое значение меньше, чем низкое) как черное, а значение high (и любое значение, большее, чем высокое), как белый. Значения между ними отображаются как промежуточные оттенки серого, используя значение по умолчанию для серого уровня. Если вы укажете пустую матрицу ([]), imshow использует [min (I (:)) max (I (:))]; т. е. использовать минимальное значение в I как черное, а максимальное значение - белое.

Предположим, у вас есть изображение, которое имеет самое низкое значение 230 и максимальное значение 255, и если вы imshow(img), он будет считать, что самый низкий из отображаемого изображения 0 и максимум 255, так что вы в конечном итоге с (почти) белым изображением. С другой стороны, если вы делаете imshow(img,[]), вы указываете MATLAB настроить минимальное и максимальное отображаемое изображение в соответствии с минимальным и максимальным значениями изображения. Поэтому в приведенном выше примере вызов imshow(img,[]) эквивалентен вызову imshow(img,[230 255]). Это позволит вам видеть промежуточные оттенки серого.

Смежные вопросы