exponenta event banner

imhistmatchn

Отрегулируйте гистограмму N-D изображения в соответствии с гистограммой опорного изображения

Описание

пример

B = imhistmatchn(A,ref) преобразует N-D изображение в оттенках серого A и возвращает выходное изображение B гистограмма которого приблизительно совпадает с гистограммой опорного изображения ref. Оба A и ref должны быть изображениями в оттенках серого, но они не должны иметь одинаковый тип данных, размер или количество измерений.

B = imhistmatchn(A,ref,nbins) использование nbins равномерно разнесенные ячейки в пределах соответствующего диапазона для данного типа данных изображения. Возвращенное изображение B имеет не более nbins дискретные уровни.

Если тип данных изображения:

  • single или double, диапазон гистограмм - [0, 1].

  • uint8, диапазон гистограмм - [0, 255].

  • uint16, диапазон гистограмм - [0, 65535].

  • int16, диапазон гистограмм - [-32768, 32767].

[B,hgram] = imhistmatchn(___) возвращает гистограмму опорного изображения ref используется для сопоставления в hgram. hgram является 1-by-nbins вектор, где nbins - количество ячеек гистограммы.

Примеры

свернуть все

Загрузите N-D изображение в оттенках серого в рабочую область. Также загрузите изображение в градациях серого, чтобы получить эталонную гистограмму.

load mri D
load mristack

Отображение исходного объема в виде фрагментов.

figure
montage(D,'DisplayRange',[])
title('Original 3-D Image')

Figure contains an axes. The axes with title Original 3-D Image contains an object of type image.

Изменение формы ссылки в виде стека фрагментов оттенков серого для отображения.

ref = reshape(mristack,[256,256,1,21]);

Отображение опорного объема в виде фрагментов. Для правильного отображения на экране эталонный объем уменьшается в 0,5 раза с помощью imresize.

ref_downsized = imresize(ref,0.5);
figure
montage(ref_downsized,'DisplayRange',[])
title('Reference 3-D Image')

Figure contains an axes. The axes with title Reference 3-D Image contains an object of type image.

Сопоставить гистограмму D к гистограмме полного размера ref.

Dmatched = imhistmatchn(D,ref);

Просмотрите выходные данные. Обратите внимание, что уровни яркости выходных данных более точно соответствуют опорному изображению, чем исходному изображению.

figure
montage(Dmatched,'DisplayRange',[])
title('Histogram Matched MRI')

Figure contains an axes. The axes with title Histogram Matched MRI contains an object of type image.

Входные аргументы

свернуть все

Входное изображение для преобразования, указанное как N-D изображение в оттенках серого.

Типы данных: single | double | int16 | uint8 | uint16

Эталонное изображение, гистограмма которого является эталонной гистограммой, заданной как изображение в градациях серого. Опорное изображение обеспечивает равноудаленный nbins гистограмма ссылки на бин, которая выводит изображение B пытается соответствовать.

Типы данных: single | double | int16 | uint8 | uint16

Число равноотстоящих ячеек в гистограмме отсчета, указанное как положительное целое число. nbins также представляет верхний предел количества дискретных уровней данных, присутствующих в выходном изображении B.

Типы данных: double

Выходные аргументы

свернуть все

Выходное изображение, возвращаемое как N-D изображение в градациях серого. Выходное изображение получено из изображения A гистограмма которого является приблизительным совпадением с гистограммой входного изображения ref построен с nbins равномерно разнесенные бункеры. Изображение B имеет тот же размер и тот же тип данных, что и входное изображение A. Входной аргумент nbins представляет верхний предел числа дискретных уровней, содержащихся в изображении B.

Типы данных: single | double | int16 | uint8 | uint16

Количество гистограмм, полученных из эталонного изображения ref, возвращенный как 1-by-nbins вектор.

Типы данных: double

См. также

| | |

Представлен в R2017a