Разница между imshow(pic) и imshow(pic,[])

У меня очень короткий вопрос по imshow в MATLAB.

в чем разница между imshow(pic) и imshow(pic,[])? когда я должен использовать imshow(pic,[])?


person kuku    schedule 27.09.2014    source источник


Ответы (1)


С веб-сайта Mathwork (см. здесь в разделе DisplayRange) :

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

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

person Autonomous    schedule 27.09.2014