write

Запишите блокированные данные изображения новому месту назначения

Описание

write(bim,destination) пишут блокированные данные изображения bim к местоположению, заданному destination.

пример

write(bim,destination,Name,Value) задает дополнительные опции для записи блокированных данных изображения с помощью аргументов 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

Входные параметры

свернуть все

Блокированное изображение в виде blockedImage объект.

Местоположение, чтобы поместить перезаписываемые данные в виде вектора символов или строкового скаляра.

Типы данных: char | string

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: "Levels",[1 3]

Адаптер используется для записи блокированных данных изображения в виде объекта адаптера.

АдаптерОписание
BINBlocksСохраните каждый блок как двоичный файл в папке
GenericImage Сохраните блоки в одном изображении
GenericImageBlocksСохраните каждый блок как файл изображения в папке
H5Сохраните блоки в одном изображении HDF5
H5BlocksСохраните каждый блок как файл HDF5 в папке
InMemoryСохраните блоки в переменной в оперативной памяти
JPEGBlocksСохраните каждый блок как файл JPEG в папке
MATBlocksСохраните каждый блок как файл MAT в папке
PNGBlocksСохраните каждый блок как файл PNG в папке
TIFFСохраните блоки в одном файле TIFF

Можно также задать пользовательский адаптер, который выполняет пользовательские операции записи. Для получения дополнительной информации смотрите images.blocked.Adapter.

Необходимо задать значение для 'OutputLocation' свойство для всех адаптеров кроме InMemory. Если вы не задаете значение для OutputLocation параметр, write использование InMemory как адаптер по умолчанию. В противном случае адаптером по умолчанию является BINBlocks для числовых и логических данных и MATBlocks для struct и категориальные данные.

Выведите размер блока в виде 1 D вектором из положительных целых чисел, где D является значением NumDimensions свойство блокированного изображения bim. Размер блока по умолчанию равен BlockSize свойство bim.

Отобразитесь ожидают панель в виде true или false. Когда установлено в true, write возразите, что функция отображает панель ожидания для продолжительных операций. Если вы отменяете панель ожидания, write функция возвращает частичный выходной параметр при наличии.

Дополнительные одноуровневые блокированные изображения в виде вектора из одноуровневого blockedImage объекты. write функция добавляет их дополнительное одноуровневое блокированное изображение к заданному блокированному изображению (bim) создать мультиразрешение блокировало изображение. Одноуровневые блокированные изображения должны иметь тот же NumDimensions значение свойства как bim.

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

Смотрите также

|

Введенный в R2021a