Запись данных изображения в новое место назначения
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
Проверьте структуру папки вывода с помощью приложения «Браузер изображений» или просмотрите монтаж изображений в папках 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Интерфейс записи для заблокированного объекта изображения, указанного как адаптер, подклассифицированный изimages.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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.