Отобразите 2-D blockedImage
объект
A bigimageshow
объект отображает данные из blockedImage
объект. The bigimageshow
объект постепенно загружает данные изображения на основе экстентов изображения и разрешения экрана.
bigimageshow(
отображает 2-D заблокированное изображение bim
)bim
.
Для категориальных данных, bigimageshow
устанавливает палитру осей на parula
. Для числовых данных, gray
является палитрой по умолчанию.
b = bigimageshow(___)
возвращает bigimageshow
b объекта
. Использование b
для изменения настроек отображения после отображения заблокированного изображения.
устанавливает начальные свойства отображения с помощью пар "имя-значение". Можно задать несколько пары "имя-значение". Заключайте каждый аргумент или имя свойства в кавычки.b
= bigimageshow(___,Name,Value
)
Для примера, bigimageshow(bim,'GridVisible','on','GridLineStyle',':')
отображает заблокированное изображение, bim
, и накладывает пунктирные линии сетки.
bim
- Заблокированное изображениеblockedImage
объектЗаблокированное изображение, заданное как blockedImage
объект.
hax
- Родительские осиРодительские оси bigimageshow
объект, заданный как объект осей.
Parent
- Родительские оси bigimageshow
объектgca
(по умолчанию) | axes
объектРодительские оси bigimageshow
объект, заданный как axes
объект. Если вы не задаете родительский элемент, bigimageshow
использует указатель на текущую фигуру, gca
. Если рисунок не существует, bigimageshow
создает новый рисунок.
CData
- 2-D blockedImage
объект для отображенияblockedImage
объект2-D blockedImage
объект к отображению, заданный как blockedImage
объект.
CDataMapping
- Метод отображения цветовых данных'direct'
(по умолчанию) | 'scaled'
Метод отображения цветовых данных, заданный как 'direct'
или 'scaled'
. Используйте это свойство для управления отображением значений цветовых данных в CData
в палитру. CData
должен быть вектором или матрицей, определяющей индексированные цвета. Это свойство не влияет, если CData
является трехмерным массивом, определяющим цвета RGB.
Методы имеют следующие эффекты:
'direct'
- Интерпретируйте значения как индексы в текущую палитру. Значения с десятичным фрагментом фиксируются к ближайшему нижнему целому числу.
Если значения имеют тип double
или single
, значения 1
или меньше сопоставить с первым цветом в палитре. Значения, равные или больше длины карты палитры до последнего цвета в палитре.
Если значения имеют тип uint8
, uint16
, uint32
, uint64
, int8
, int16
, int32
, или int64
, значения 0
или меньше сопоставить с первым цветом в палитре. Значения, равные или больше длины карты палитры до последнего цвета в палитре (или до пределов области значений типа).
Если значения имеют тип logical
, значения 0
сопоставить с первым цветом в палитре и значениями 1
сопоставить со вторым цветом в палитре.
'scaled'
- Масштабируйте значения в диапазоне между минимальным и максимальным пределами цвета. The CLim
свойство осей содержит пределы цвета.
AlphaData
- Данные о прозрачности1
(по умолчанию) | числовой скалярный |
blockedImage
объектДанные прозрачности, указанные в одной из следующих форм:
Числовой скаляр - Использование последовательной прозрачности по всему изображению.
2-D blockedImage
объект - Данные прозрачности должны иметь те же строки и столбцы, что и CData
2-D blockedImage
объект. Заблокированное изображение может иметь несколько уровней разрешения, в этом случае bigimageshow
выбирает ближайший к текущему уровню ResolutionLevel
для отображения.
The AlphaDataMapping
свойство управляет тем, как MATLAB® интерпретирует значения альфа данных прозрачности.
Пример: 0.5
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
AlphaDataMapping
- Интерпретация AlphaData
значения 'none'
(по умолчанию) | 'scaled'
| 'direct'
Интерпретация AlphaData
значения, заданные в качестве одного из следующих значений:
'none'
- Интерпретируйте значения как значения прозрачности. Значение 1 или больше полностью непрозрачно, значение 0 или менее полностью прозрачно, а значение от 0 до 1 полупрозрачно.
'scaled'
- Отобразите значения в альфа-карту рисунка. Минимальные и максимальные альфа- пределы осей определяют значения альфа- данных, которые сопоставлены с первым и последним элементами альфа-карты, соответственно. Для примера, если альфа- пределы [3 5]
, альфа- данные значения меньше или равны 3
сопоставить с первым элементом в альфа-карте. Значения альфа- данных, большие или равные 5
сопоставить с последним элементом в альфа-карте. The ALim
свойство осей содержит альфа- пределы. The Alphamap
свойство рисунка содержит альфа-карту.
'direct'
- Интерпретируйте значения как индексы в альфа-карту рисунка. Значения с десятичным фрагментом фиксируются к ближайшему нижнему целому числу:
Если значения имеют тип double
или single
, значения 1 или менее сопоставляются с первым элементом альфа-карты. Значения, равные или большие длины альфа-карты последнего элемента альфа-карты.
Если значения имеют целое число типов, значения 0 или менее сопоставляются с первым элементом альфа-карты. Значения, равные или большие длины альфа-карты последнего элемента альфа-карты (или до пределов области значений типа). Целые типы uint8
, uint16
, uint32
, uint64
, int8
, int16
, int32
, и int64
.
Если значения имеют тип logical
, значения 0
сопоставить с первым элементом в альфа-карте и значениями 1
сопоставить со вторым элементом в альфа-карте.
ResolutionLevel
- Уровень разрешения'fine'
| 'coarse'
Уровень разрешения 2-D blockedImage
объект к отображению, заданный как положительное целое число, которое идентифицирует уровень разрешения 2-D blockedImage
объект в свойстве CData. Уровень разрешения также может быть задан как 'fine'
или 'coarse'
соответствующий этим двум пределам. Значение по умолчанию вычисляется на основе доступного пространства и разрешения экрана.
ResolutionLevelMode
- Режим выбора для уровня разрешения'auto'
(по умолчанию) | 'manual'
Режим выбора для уровня разрешения, заданный как одно из следующих значений:
'auto'
- Автоматически выберите уровень разрешения на основе родительских осей и доступного размера экрана.
'manual'
- Вручную задайте уровень разрешения путем установки ResolutionLevel
свойство.
GridVisible
- Видимость сетки'off'
(по умолчанию) | 'on'
Видимость сетки, заданная как 'off'
или 'on'
. bigimageshow
помещает сетку в мировые единицы измерения, чтобы включать столько пикселей, сколько задано CData
. BlockSize
на текущей GridResolutionLevel
.
GridLevel
- Уровень разрешения заблокированного изображения, при котором можно показать сетку'fine'
| 'coarse'
Уровень разрешения заблокированного изображения, при котором можно показать сетку, заданный как одно из следующих значений:
положительное целое число - Отображает сетку, заданную как числовой скаляр, который идентифицирует уровень разрешения 2-D blockedImage
объект в свойстве CData. Значение находится между 1 и значением NumLevels
свойство заблокированного изображения в bigimageshow
CData
свойство.
'fine'
- отображение сетки на самом высоком уровне разрешения.
'coarse'
- отображение сетки на самом грубом уровне разрешения.
По умолчанию GridLevel
имеет то же значение что и ResolutionLevel
свойство.
GridLevelMode
- Режим выбора для уровня сети'auto'
(по умолчанию) | 'manual'
Режим выбора для уровня сети, заданный как одно из следующих значений:
'auto'
- Выберите уровень разрешения сетки, чтобы соответствовать уровню разрешения данных ResolutionLevel
.
'manual'
- Вручную задайте уровень разрешения сетки путем установки GridLevel
свойство.
GridColor
- Цвет линии сетки'blue'
(по умолчанию) | триплет RGB | шестнадцатеричный код цвета | название цвета | короткое название цветаЦвет линии сетки, заданный как триплет RGB, шестнадцатеричный код цвета, название цвета или короткое название цвета. Чтобы отобразить линии сетки, установите GridVisible
свойство к 'on'
.
Для пользовательского цвета укажите триплет RGB или шестнадцатеричный код цвета.
Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]
; для примера, [0.4 0.6 0.7]
.
Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#
), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0
на F
. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800'
, '#ff8800'
, '#F80'
, и '#f80'
являются эквивалентными.
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены именованные опции цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.
Название цвета | Краткое имя | Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|---|---|
'red' | 'r' | [1 0 0] | '#FF0000' | |
'green' | 'g' | [0 1 0] | '#00FF00' | |
'blue' | 'b' | [0 0 1] | '#0000FF' | |
'cyan' | 'c' | [0 1 1] | '#00FFFF' | |
'magenta' | 'm' | [1 0 1] | '#FF00FF' | |
'yellow' | 'y' | [1 1 0] | '#FFFF00' | |
'black' | 'k' | [0 0 0] | '#000000' | |
'white' | 'w' | [1 1 1] | '#FFFFFF' |
Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию, которые MATLAB использует во многих типах графиков.
Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|
[0 0.4470 0.7410] | '#0072BD' | |
[0.8500 0.3250 0.0980] | '#D95319' | |
[0.9290 0.6940 0.1250] | '#EDB120' | |
[0.4940 0.1840 0.5560] | '#7E2F8E' | |
[0.4660 0.6740 0.1880] | '#77AC30' | |
[0.3010 0.7450 0.9330] | '#4DBEEE' | |
[0.6350 0.0780 0.1840] | '#A2142F' |
Пример: b.GridColor = [1 0 0]
Пример: b.GridColor = 'r'
Пример: b.GridColor = 'red'
Пример: b.GridColor = '#FF0000'
GridAlpha
- Прозрачность линии сетки0.8
(по умолчанию) | значение в области значений [0,1]
Прозрачность линии сетки, заданная как значение в области значений [0, 1]. Значение 1
означает полностью непрозрачный и значение 0
означает полностью прозрачный. Чтобы отобразить линии сетки, установите GridVisible
свойство к 'on'
.
Пример: b.GridAlpha = 0.5
GridLineWidth
- Ширина линии сетки1
(по умолчанию) | положительное числовое значениеШирина линии сетки, заданная как положительное числовое значение, измеренная в точках. Чтобы отобразить линии сетки, установите GridVisible
свойство к 'on'
.
GridLineStyle
- Стиль линии сетки'-'
(по умолчанию) | '--'
| ':'
| '-.'
Стиль линии сетки, заданный как один из стилей линии в этой таблице.
Стиль линии | Описание | Результирующая линия |
---|---|---|
'-' | Сплошная линия |
|
'--' | Штриховая линия |
|
':' | Пунктирная линия |
|
'-.' | Штрих-точка линия |
|
Чтобы отобразить линии сетки, установите GridVisible
свойство к 'on'
.
Пример: b.GridLineStyle = '--'
Interpolation
- Метод интерполяции'linear'
(по умолчанию) | 'nearest'
Метод интерполяции, используемый для повторного сбора пикселей, заданный как 'linear'
для билинейной интерполяции или 'nearest'
для интерполяции по ближайшему соседу.
Для категориальных данных, bigimageshow
поддерживает только интерполяцию по ближайшему соседу. Для логических данных значение по умолчанию является 'nearest'
.
В системах Windows с программной версией OpenGL единственным поддерживаемой опцией интерполяции является 'nearest'
.
Visible
- Управляйте видимостью изображения'on'
(по умолчанию) | 'off'
Управляйте видимостью изображения, заданной в качестве одного из следующих значений:
'on'
- Отобразите bigimageshow
объект.
'off'
- Скрыть объект, не удаляя его. Вы по-прежнему можете получить доступ к свойствам невидимого объекта.
Создайте заблокированное изображение с помощью измененной версии изображения «tumor_091.tif» из CAMELYON16 набора данных. Оригинальное изображение представляет собой обучающее изображение лимфатического узла, содержащего опухолевую ткань. Оригинальное изображение имеет восемь уровней разрешения, а лучшее - разрешение 53760 на 61440. Измененное изображение имеет только три уровня грубого разрешения. Пространственная привязка измененного изображения была скорректирована, чтобы обеспечить согласованное соотношение сторон и зарегистрировать функции на каждом уровне.
bim = blockedImage('tumor_091R.tif');
Отобразите заблокированное изображение.
h = bigimageshow(bim);
Изменение масштаба области изображения.
xlim([2100, 2600]) ylim([1800 2300])
Чтобы просмотреть изображение на различных уровнях разрешения, задайте новое значение для свойства ResolutionLevel. Пределы по осям остаются прежними, но bigimageshow
обеспечивает правильный размер изображений с других уровней. Когда вы задаете ResolutionLevel
, а ResolutionLevelMode
изменения значений на 'manual'
автоматически.
h.ResolutionLevel = 3; pause(1); h.ResolutionLevel = 2; pause(1); h.ResolutionLevel = 1; pause(1);
Создайте заблокированное изображение из примера изображения, включенного в тулбокс.
bim = blockedImage('tumor_091R.tif','BlockSize', [128 128]);
Отобразите заблокированное изображение с bigimageshow, указав, что вы хотите, чтобы сетка была видна, на самом высоком уровне разрешения. Также задайте цвет, ширину и прозрачность.
h = bigimageshow(bim,... 'GridVisible','on', 'GridLevel', 1,... 'GridLineWidth', 2, 'GridColor','k','GridAlpha',0.3);
bim = blockedImage('tumor_091R.tif');
Создайте грубую маску.
bmask = apply(bim, @(im)im2gray(im.Data)<120, "Level", 3);
Наложите маску как альфа- слой.
ha1 = subplot(1,2,1); h = bigimageshow(bim); h.AlphaData = bmask; h.AlphaDataMapping = 'direct'; alphamap([0.4 1]) h.Parent.Color = 'r';
Независимо визуализируйте маску.
ha2 = subplot(1,2,2); bigimageshow(bmask); linkaxes([ha1, ha2]);
Создайте заблокированное изображение с помощью измененной версии изображения «tumor_091.tif» из CAMELYON16 набора данных. Оригинальное изображение представляет собой обучающее изображение лимфатического узла, содержащего опухолевую ткань. Оригинальное изображение имеет восемь уровней разрешения, а лучшее - разрешение 53760 на 61440. Измененное изображение имеет только три уровня грубого разрешения. Пространственная привязка измененного изображения была скорректирована, чтобы обеспечить согласованное соотношение сторон и зарегистрировать функции на каждом уровне.
bim = blockedImage('tumor_091R.tif');
Создайте маску с использованием самого грубого уровня разрешения заблокированного изображения.
bmask = apply(bim, @(im)im2gray(im.Data)<120, "Level", 3);
Отобразите заблокированное изображение с маской.
h = bigimageshow(bim); showmask(h, bmask);
Экспериментируйте с различными порогами включения и размерами блоков, чтобы лучше подгонять маску по окрашенной области. По умолчанию порог включения составляет 0,5.
showmask(h, bmask, 'InclusionThreshold', 0.2); showmask(h, bmask, 'InclusionThreshold', 0); showmask(h, bmask, 'InclusionThreshold', 0.06);
Измените размер блока, чтобы получить более плотную подгонку.
showmask(h, bmask, 'InclusionThreshold', 0.06, 'BlockSize', [256 256]); showmask(h, bmask, 'InclusionThreshold', 0.14, 'BlockSize', [256 256]);
Когда вы удовлетворены маской, используйте ее, чтобы сегментировать лимфатический узел.
bls = selectBlockLocations(bim,'BlockSize', [256 256],... 'Mask', bmask, 'InclusionThreshold', 0.14); bregion = apply(bim, @(im)im.Data, 'BlockLocationSet', bls); figure bigimageshow(bregion);
Создайте заблокированное изображение с помощью измененной версии изображения «tumor_091.tif» из CAMELYON16 набора данных. Оригинальное изображение представляет собой обучающее изображение лимфатического узла, содержащего опухолевую ткань. Оригинальное изображение имеет восемь уровней разрешения, а лучшее - разрешение 53760 на 61440. Измененное изображение имеет только три уровня грубого разрешения. Пространственная привязка измененного изображения была скорректирована, чтобы обеспечить согласованное соотношение сторон и зарегистрировать функции на каждом уровне.
bim = blockedImage('tumor_091R.tif');
Создайте изображение метки на грубом уровне.
cim = gather(bim); cgim = im2gray(cim); numClasses = 4; thresh = multithresh(cgim, numClasses-1); labels = imquantize(cgim, thresh); imagesc(labels) axis square title('Coarse label image');
Преобразуйте изображение меток назад в blockedImage, используя те же пространственные ссылки, что и оригинальное изображение.
blabels = blockedImage(labels,'WorldStart',bim.WorldStart(3,1:2),... 'WorldEnd', bim.WorldEnd(3,1:2));
Отображение исходного blockedImage.
figure hB = bigimageshow(bim);
Наложите изображение меток на исходное заблокированное изображение на новой оси. Используйте интерполяцию, чтобы убедиться, что метки имеют четкие контуры, и свойство AlphaData, чтобы контролировать прозрачность слоя меток. Отключите видимость осей, чтобы базовое изображение просматривалось. Задайте уникальные цвета для каждой метки.
hLa = axes; hL = bigimageshow(blabels, 'Parent', hLa); hL.Interpolation = 'nearest'; hL.AlphaData = 0.3; hLa.Visible = 'off'; hLa.CLim = [1 numClasses]; colormap(hLa,hsv(numClasses));
[1] Bejnordi, Бэбэк Эхтешэми, Митко Вета, Пол Джоханнс ван Дист, Брэм ван Джиннекен, Нико Карссемейджер, Герт Литьенс, Йерун А. В. М. ван дер Лак, и др. «Диагностическая оценка алгоритмов глубокого обучения для обнаружения метастазов в лимфатических узлах у женщин с раком молочной железы». JAMA 318, № 22 (12 декабря 2017): 2199-2210. https://doi.org/10.1001/jama.2017.14585.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.