Считайте данные из bigimageDatastore
Создайте bigimage
. Это примеры использует модифицированную версию изображения "tumor_091.tif" от набора данных CAMELYON16. Оригинальное изображение является учебным изображением лимфатического узла, содержащего ткань опухоли. Оригинальное изображение имеет восемь уровней разрешения, и самый прекрасный уровень имеет разрешение 53760 61440. Модифицированное изображение имеет только три крупных уровня разрешения. Пространственная ссылка модифицированного изображения была настроена, чтобы осуществить сопоставимое соотношение сторон и указать функции на каждом уровне.
bim = bigimage('tumor_091R.tif');
Создайте bigimageDatastore
это управляет блоками большого изображения на самом прекрасном уровне разрешения.
bimds = bigimageDatastore(bim,1)
bimds = bigimageDatastore with properties: ReadSize: 1 BorderSize: [0 0] PadMethod: 0 InclusionThreshold: [] Masks: [0x0 bigimage] Images: [1x1 bigimage] Levels: 1 BlockSize: [1024 1024] BlockOffsets: [1024 1024] IncompleteBlocks: 'same'
Измените 'ReadSize'
свойство datastore к 3
.
bimds.ReadSize = 3;
Считайте один пакет данных изображения от datastore.
[data,info] = read(bimds);
Отобразите возвращенные данные изображения в монтаже с черной границей вокруг каждого изображения. Монтаж показывает, что datastore читает блоки большого изображения в упорядоченном по строкам порядке.
montage(data,'Size',[1 3],"BorderSize",10)
Отобразите информацию о возвращенных данных.
info
info = struct with fields:
Level: [1 1 1]
ImageNumber: [1 1 1]
BlockStartWorld: [3x2 double]
BlockEndWorld: [3x2 double]
DataStartWorld: [3x2 double]
DataEndWorld: [3x2 double]
Смотрите (x, y) координаты центра верхнего левого пикселя каждого возвращенного блока данных.
info.BlockStartWorld
ans = 3×2
1 1
1025 1
2049 1
bigds
— Большой datastore изображенийbigimageDatastore
Большой datastore изображений, заданный как bigimageDatastore
объект.
Datastore содержит одно или несколько больших изображений, Images
, каждый с Channels
количество каналов.
Datastore читает блоки из каждого большого изображения на заданных уровнях разрешения, Levels
.
Datastore задает количество блоков, чтобы читать в каждом пакете, ReadSize
.
Datastore задает m-by-n размер пикселя блоков, чтобы читать, BlockSize
.
data
— Выходные данныеВыходные данные, возвращенные как массив ячеек с ReadSize
элементы. Каждая ячейка содержит m-by-n-by-Channels
числовой массив.
info
— Информация о выходных данныхИнформация о выходных данных, возвращенных как struct, содержащий эти поля.
Имя поля | Описание |
---|---|
Level | Уровень разрешения данных, заданных как 1 ReadSize вектор положительных целых чисел. |
ImageNumber | Индекс большого изображения, обеспечивающего данные, заданные как 1 ReadSize вектор положительных целых чисел. |
BlockStartWorld | (x, y) координаты центра верхнего левого пикселя данных, исключая дополнение, заданное как ReadSize - 2 числовых вектора. Значения находятся в мировых координатах. |
BlockEndWorld | (x, y) координаты центра нижнего правого пикселя данных, исключая дополнение, заданное как ReadSize - 2 числовых вектора. Значения находятся в мировых координатах. |
DataStartWorld | (x, y) координаты центра верхнего левого пикселя данных, включая дополнение, заданное как ReadSize - 2 числовых вектора. Значения находятся в мировых координатах. |
DataEndWorld | (x, y) координаты центра нижнего правого пикселя данных, включая дополнение, заданное как ReadSize - 2 числовых вектора. Значения находятся в мировых координатах. |
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.