2016-07-15 2 views
1

У меня проблема с инструментом imcontrast. Я читал 2D dicom-изображение, затем преобразовывал его в 16 бит (im2uint16) и выполнял фильтрацию и оконную обработку с использованием imcontrast. Это показывает мне предупреждение:Ошибка при использовании инструмента imcontrast в MATLAB

enter image description here

Как я могу предотвратить тогда? Как изменить диапазон данных в imtool?

Я был бы признателен за любую помощь, пожалуйста.

+0

Откуда это 51156? Это очень странное число .... –

+0

Не могли бы вы отправить какой-нибудь код, чтобы воспроизвести вашу проблему, возможно, используя один из встроенных изображений Matlabs? – user3716193

ответ

1

[0,51156] - это диапазон данных изображения, которые меняются от изображения к изображению. [0, 65535] являются границами по умолчанию для оси uint16, которые находятся за пределами диапазона данных изображения, что вызывает повторное изменение предупреждающего сообщения. Если вы хотите, чтобы отключить подсказку вы можете вручную установить пределы оси цвета перед вызовом imcontrast по:

caxis([double(min(min(Image))), double(max(max(Image)))]); 

Преобразование в два раза, чтобы предотвратить несоответствие типов данных. max() и min() возвращают значение uint16 с данными uint16, что приводит к другой ошибке в строке.

+0

Отлично! Это работает хорошо. –

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