Запишите данные изображения новому месту назначения
write(
пишет бинарная версия блока bim
,destination
)blockedImage
, bim
, к заданной папке, destination
. Смотрите images.blocked.BINBlocks
для получения дополнительной информации.
write(___,
задает дополнительные опции при записи.Name,Value
)
Создайте блокированное изображение и просмотрите значение Size
свойство.
bim = blockedImage('cameraman.tif');
disp(bim.Size)
256 256
Измените размер блокированного изображения с помощью блокированного изображения apply
возразите функции, чтобы вызвать imresize
.
bsub1 = bim.apply(@(bs)imresize(bs.Data,0.5));
Создайте новый уровень разрешения для изображения.
write(bim, "pyramid2.tif", "LevelImages", bsub1, "BlockSize", [ 32 32]);
Создайте новое, мультиразрешение блокировало изображение, и отобразите Size
свойство.
bpyramid = blockedImage("pyramid2.tif");
disp(bpyramid.Size)
256 256 128 128
Создайте блокированное изображение и просмотрите значение Size
свойство.
bim = blockedImage('tumor_091R.tif');
disp(bim.Size)
5000 5358 3 1250 1340 3 625 670 3
Два уровня только для записи от трех изображений уровня. Запишите в папку, где каждый блок является сохраненным в отдельном файле PNG.
write(bim, "lev1_and_3", "Levels", [1 3], "Adapter", images.blocked.PNGBlocks); bim2 = blockedImage("lev1_and_3"); disp(bim2.Size)
5000 5358 3 625 670 3
Смотрите выходную структуру папок, с помощью приложения Image Browser, или просмотрите монтаж изображений в папках lev1_and_3/L1
и lev1_and_3/L2
.
figure; montage(imageDatastore('lev1_and_3/L1'), 'BorderSize', 5);
Просмотрите монтаж изображений в папке lev1_and_3/L2
.
figure; montage(imageDatastore('lev1_and_3/L2'), 'BorderSize', 5);
Создайте блокированное изображение.
bim = blockedImage('tumor_091R.tif');
Запишите данные из трех уровней разрешения блокированного изображения к файлу H5. Задайте блокированный адаптер изображений для файлов HDF5 и уровня сжатия, когда вы запишете данные.
wadapter = images.blocked.H5; wadapter.GZIPLevel = 5; write(bim, "tumor_091.h5", "Adapter", wadapter);
Отобразите информацию об изображении HDF5, которое было создано.
h5disp("tumor_091.h5");
HDF5 tumor_091.h5 Group '/' Group '/blockedImage' Attributes: 'Size': 3x3 H5T_FLOAT 'IOBlockSize': 3x3 H5T_FLOAT 'Datatype': 'uint8', 'uint8', 'uint8' Dataset 'L1' Size: 5000x5358x3 MaxSize: 5000x5358x3 Datatype: H5T_STD_U8LE (uint8) ChunkSize: 1024x1024x3 Filters: deflate(5) FillValue: 0 Dataset 'L2' Size: 1250x1340x3 MaxSize: 1250x1340x3 Datatype: H5T_STD_U8LE (uint8) ChunkSize: 1024x1024x3 Filters: deflate(5) FillValue: 0 Dataset 'L3' Size: 625x670x3 MaxSize: 625x670x3 Datatype: H5T_STD_U8LE (uint8) ChunkSize: 625x670x3 Filters: deflate(5) FillValue: 0
bim
— Блокированное изображениеblockedImage
объектБлокированное изображение в виде blockedImage
объект.
destination
— Папка назначенияchar
массив | string
скалярПапка назначения в виде char
массив или string
скаляр.
Типы данных: char |
string
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
write(bim,"out1_3","Levels",[1 3],"Adapter",images.blocked.PNGBlocks);
'Adapter'
— Запишите интерфейс для блокированного объекта изображенияdestination
значение (значение по умолчанию) | адаптер разделяется на подклассы от images.blocked.Adapter
Запишите интерфейс для блокированного объекта изображения в виде адаптера, который разделяется на подклассы от theimages.blocked.Adapter
класс. Классы адаптера реализуют все методы, требуемые images.blocked.Adapter
интерфейс. Чтобы задать различные адаптеры для различных выходных параметров, используйте массив ячеек. Скалярные значения расширены.
Эта таблица приводит адаптеры, включенные с тулбоксом.
Адаптер | Описание |
---|---|
images.blocked.BINBlocks | Сохраните каждый блок как бинарный файл блоба в папке. |
images.blocked.GenericImage | Сохраните блоки в одном изображении. |
images.blocked.GenericImageBlocks | Сохраните каждый блок как файл изображения в папке |
images.blocked.H5 | Сохраните блоки в одном изображении HDF5 |
images.blocked.H5Blocks | Сохраните каждый блок как файл HDF5 в папке |
images.blocked.InMemory | Сохраните блоки в переменной в оперативной памяти |
images.blocked.JPEGBlocks | Сохраните каждый блок как файл JPEG в папке |
images.blocked.MATBlocks | Сохраните каждый блок как файл MAT в папке. |
images.blocked.PNGBlocks | Сохраните каждый блок как файл PNG в папке. |
images.blocked.TIFF | Сохраните блоки в одном файле TIFF. |
'BlockSize'
— Выведите размер блокаBlockSize
свойство блокированного изображения (значение по умолчанию) | вектор 1 на 2 положительных целых чиселВыведите размер блока в виде вектора с целочисленным знаком из длины, равной NumDimensions
свойство блокированного изображения bim
.
'DisplayWaitbar'
— Отобразитесь ожидают панельtrue
(значение по умолчанию) |
false
Отобразитесь ожидают панель в виде логического скаляра. Когда установлено в true
, write
возразите, что функция отображает панель ожидания для продолжительных операций. Если вы отменяете панель ожидания, write
объектная функция возвращает частичный выходной параметр при наличии.
'LevelImages'
— Дополнительные одноуровневые блокированные изображенияblockedImage
объектыДополнительные одноуровневые блокированные изображения в виде вектора из одноуровневого blockedImage
объекты. write
объектная функция добавляет их дополнительное одноуровневое блокированное изображение к заданному блокированному изображению (bim
) создать мультиразрешение блокировало изображение. Одноуровневые блокированные изображения должны иметь тот же NumDimensions
значение свойства как заданное блокированное изображение (bim
).
'Levels'
— Уровни мультиразрешения блокировали изображение, чтобы записать[]
(значение по умолчанию) | вектор из одноуровневого blockedImage
объектыУровни мультиразрешения блокировали изображение, чтобы записать в виде числового, массива с целочисленным знаком. Используйте этот параметр, чтобы выборочно записать заданные уровни блокированного изображения месту назначения.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.