imwrite

Запись изображения в графический файл

Описание

пример

imwrite(A,filename) записывает данные изображений A в файл, заданный как filename, вывод формата файла из расширения. imwrite создает новый файл в текущей папке. Битовая глубина выходного изображения зависит от типа данных A и формат файла. Для большинства форматов:

  • Если A относится к типу данных uint8, затем imwrite выводит 8-битные значения.

  • Если A относится к типу данных uint16 и формат выходного файла поддерживает 16-битные данные (JPEG, PNG и TIFF), затем imwrite выводит 16-битные значения. Если формат выходного файла не поддерживает 16-битные данные, то imwrite возвращает ошибку.

  • Если A - цветное изображение в полутоновом или RGB типа данных double или single, затем imwrite принимает, что динамическая область значений равна [0,1], и автоматически масштабирует данные на 255 перед записью их в файл в виде 8-битных значений. Если данные в A является single, преобразование A на double перед записью в файл GIF или TIFF.

  • Если A имеет тип данных logical, затем imwrite принимает, что данные являются бинарным изображением и записывает его в файл с битовой глубиной 1, если формат позволяет это. Форматы BMP, PNG или TIFF принимают бинарные изображения как входные массивы.

Если A содержит индексированные данные изображения, следует дополнительно задать map входной параметр.

пример

imwrite(A,map,filename) записывает индексированное изображение в A и связанная с ним палитра, map, в файл, заданный как filename.

  • Если A является индексированным изображением типа данных double или single, затем imwrite преобразует индексы в нулевые индексы путем вычитания 1 из каждого элемента, а затем записывает данные как uint8. Если данные в A является single, преобразование A на double перед записью в файл GIF или TIFF.

imwrite(___,fmt) записывает изображение в формате, заданном fmt, независимо от расширения файла в filename. Можно задать fmt после входных параметров в любом из предыдущих синтаксисов.

пример

imwrite(___,Name,Value) задает дополнительные параметры для выходных файлов GIF, HDF, JPEG, PBM, PGM, PNG, PPM и TIFF, используя один или несколько аргументы пары "имя-значение". Можно задать Name,Value после входных параметров в любом из предыдущих синтаксисов.

Примеры

свернуть все

Запишите массив значений полутонового цвета 50 на 50 в файл PNG в текущей папке.

A = rand(50);
imwrite(A,'myGray.png')

Запись индексированного массива изображений и связанного с ним палитры в файл PNG.

Загрузите выборку данных изображения из файла, clown.mat.

load clown.mat

Массив изображений X и связанная с ним палитра, map, загружаются в MATLAB® рабочей области.

Запись данных в новый файл PNG.

imwrite(X,map,'myclown.png')

imwrite создает файл, myclown.png, в текущей папке.

Просмотр нового файла путем открытия его за пределами MATLAB.

Запись данных в новый файл со встроенной палитрой MATLAB, copper.

Загрузите выборку данных изображения из файла clown.mat.

load clown.mat

Массив изображений X и связанная с ним палитра, map, загружаются в рабочее пространство MATLAB. map является матрицей из 81 RGB векторов.

Задайте медно-тональную палитру с 81 вектором RGB. Затем запишите данные изображения в файл PNG с помощью новой палитры.

newmap = copper(81);
imwrite(X,newmap,'copperclown.png');

imwrite создает файл, copperclown.png, в текущей папке.

Просмотр нового файла путем открытия его за пределами MATLAB.

Создайте и запишите данные изображения truecolor в файл JPEG.

Создайте массив случайных значений RGB 49 на 49 на 3.

A = rand(49,49);
A(:,:,2) = rand(49,49);
A(:,:,3) = rand(49,49);

Запишите данные изображения в файл JPEG, задав выход с помощью 'jpg'. Добавьте комментарий к файлу с помощью 'Comment' аргумент пары "имя-значение".

imwrite(A,'newImage.jpg','jpg','Comment','My JPEG file')

Просмотр информации о новом файле.

imfinfo('newImage.jpg')
ans = 

           Filename: 'S:\newImage.jpg'
        FileModDate: '25-Jan-2013 16:18:41'
           FileSize: 2339
             Format: 'jpg'
      FormatVersion: ''
              Width: 49
             Height: 49
           BitDepth: 24
          ColorType: 'truecolor'
    FormatSignature: ''
    NumberOfSamples: 3
       CodingMethod: 'Huffman'
      CodingProcess: 'Sequential'
            Comment: {'My JPEG file'}

Запись нескольких изображений в один многостраничный файл TIFF.

Создайте два набора данных случайных изображений, im1 и im2.

im1 = rand(50,40,3);
im2 = rand(50,50,3);

Запись первого изображения в новый файл TIFF. Затем добавьте второе изображение к тому же файлу.

imwrite(im1,'myMultipageFile.tif')
imwrite(im2,'myMultipageFile.tif','WriteMode','append')

Нарисуйте серию графиков, запечатлите их как изображения и запишите в один анимированный GIF файла.

Постройте график$y = x^{n}$ для.$n = 3$

x = 0:0.01:1;
n = 3;
y = x.^n;
plot(x,y,'LineWidth',3)
title(['y = x^n,  n = ' num2str(n) ])

Захват ряда графиков для увеличения значений.$n$

n = 1:0.5:5;
nImages = length(n);

fig = figure;
for idx = 1:nImages
    y = x.^n(idx);
    plot(x,y,'LineWidth',3)
    title(['y = x^n,  n = ' num2str( n(idx)) ])
    drawnow
    frame = getframe(fig);
    im{idx} = frame2im(frame);
end
close;

Отобразите серию изображений на одном рисунке.

figure;
for idx = 1:nImages
    subplot(3,3,idx)
    imshow(im{idx});
end

Сохраните девять изображений в GIF файла. Поскольку трехмерные данные не поддерживаются для GIF файлов, вызовите rgb2ind для преобразования данных RGB в изображении в индексированное изображение A с палитрой map. Чтобы добавить несколько изображений к первому изображению, вызовите imwrite с аргументом пары "имя-значение" 'WriteMode','append'.

filename = 'testAnimated.gif'; % Specify the output file name
for idx = 1:nImages
    [A,map] = rgb2ind(im{idx},256);
    if idx == 1
        imwrite(A,map,filename,'gif','LoopCount',Inf,'DelayTime',1);
    else
        imwrite(A,map,filename,'gif','WriteMode','append','DelayTime',1);
    end
end

imwrite записывает GIF файла в текущую папку. Пара "имя-значение" 'LoopCount',Inf приводит к непрерывному циклу анимации. 'DelayTime',1 задает задержку в 1 секунду между отображением каждого изображения в анимации.

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

свернуть все

Данные изображения, заданные как полная (непараметрическая) матрица.

  • Для полутоновых изображений, A можно m-by- n.

  • Для индексированных изображений, A можно m-by- n. Задайте связанную палитру в map входной параметр.

  • Для изображений truecolor, A должен быть m-by- n-by-3. imwrite не поддерживает запись изображений RGB для GIF файлов.

Для файлов TIFF, A может быть m-by- nмассив -by-4, содержащий данные о цвете, который использует цветовое пространство CMYK.

Для многоадресных файлов GIF, A может быть m-by- n-by-1-by- p массив, содержащий полутоновые или индексированные изображения, где p - количество систем координат для записи. В этом случае изображения RGB не поддерживаются.

Типы данных: double | single | uint8 | uint16 | logical

Имя выходного файла, заданное как вектор символов или строковый скаляр.

В зависимости от места, в котором вы пишете, filename может принять одну из этих форм.

Местоположение

Форма

Текущая папка

Чтобы записать в текущую папку, укажите имя файла в filename.

filename должен включать расширение файла. Список типов изображений, которые imwrite может написать, см описание для fmt входной параметр.

Пример: 'myImage.jpg'

Другие папки

Чтобы записать в папку, отличную от текущей папки, укажите полное или относительное имя пути в filename.

Пример: 'C:\myFolder\myImage.ext'

Пример: '\imgDir\myImage.ext'

Удаленное местоположение

Чтобы записать в удаленное место, filename должен содержать полный путь к файлу, заданному в качестве равномерного указателя ресурса (URL) формы:

scheme_name://path_to_file/ my_file.ext

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

Удаленное местоположениеscheme_name
Амазонки S3™s3
Windows Azure® Хранилище больших двоичных объектовwasb, wasbs
HDFS™hdfs

Для получения дополнительной информации см. раздел Работа с удаленными данными.

Пример: 's3://bucketname/path_to_file/my_image.jpg'

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

Палитра, связанная с индексированными данными изображения в A, заданный как mмассив -by-3. map должна быть допустимой палитрой MATLAB. Посмотрите colormap для получения списка встроенных палитр MATLAB. Большинство форматов файлов изображений не поддерживает палитры с более чем 256 записями.

Пример: [0,0,0;0.5,0.5,0.5;1,1,1]

Пример: jet(60)

Типы данных: double

Формат выходного файла, заданный как один из форматов в этой таблице.

В этой таблице также суммируются типы изображений, которые imwrite может писать. Реестр формата файла MATLAB определяет, какие форматы файлов поддерживаются. Посмотрите imformats для получения дополнительной информации об этом реестре.

Для определенных форматов, imwrite может принимать дополнительные аргументы пары "имя-значение". Чтобы просмотреть эти аргументы, щелкните имена связанных форматов ниже.

Значение fmt

Формат Выхода файла

Описание

'bmp'

Windows® Растровое изображение (BMP)

1-битный, 8-битный и 24-битный несжатые изображения

'gif'

GIF - Формат графического обмена

8-битные изображения

'hdf'

HDF4 - иерархический формат данных

8-битные наборы данных с сопоставленной палитрой или без нее, 24-битные наборы данных

'jpg' или 'jpeg'

JPEG - Формат графических данных JPEG

8-битные, 12-битные и 16-битные базовые изображения JPEG

Примечание

imwrite преобразует индексированные изображения в RGB перед записью данных в файлы JPEG, поскольку формат JPEG не поддерживает индексированные изображения.

'jp2' или 'jpx'

JPEG 2000 - Формат графических данных JPEG 2000

1-битные 8-битные и 16-битные изображения JPEG 2000

'pbm'

Портативная растровая карта (PBM)

Любое 1-битное изображение PBM, ASCII (обычное) или необработанное (двоичное) кодирование

'pcx'

Windows Paintbrush (PCX)

8-битные изображения

'pgm'

Портативная граймап (PGM)

Любое стандартное изображение PGM; ASCII (обычный), закодированный с произвольной глубиной цвета; необработанный (двоичный) с кодировкой до 16 бит на каждое значение серого цвета

'png'

PNG - Портативная сетевая графика

1-битный, 2-битный, 4-битный, 8-битный и 16-битный полутоновые изображения; 8-битные и 16-битные полутоновые изображения с альфа-каналами; 1-битный, 2-битный, 4-битный и 8-битный индексированные изображения; 24-битные и 48-битные изображения труколора; 24-битные и 48-битные изображения truecolor с альфа-каналами

Примечание

The imwrite функция не поддерживает запись индексированных файлов PNG, которые имеют недостаточно записей палитры.

'pnm'

Переносная анонимная карта (PNM)

Любой из форматов PPM/PGM/PBM, выбранных автоматически

'ppm'

Портативная Pixmap (PPM)

Любое стандартное изображение PPM: ASCII (обычный) закодирован с произвольной глубиной цвета или необработанный (двоичный) закодирован с до 16 битами на цветовой компонент

'ras'

Sun™ растр (RAS)

Любое изображение RAS, включая 1-битное растровое изображение, 8-битное индексированное, 24-битное truecolor и 32-битное truecolor с альфа

'tif' или 'tiff'

Теговый формат графических файлов (TIFF)

Базовые изображения TIFF, включая:

  • 1-битные, 8-битные, 16-битные, 24-битные и 48-битные несжатые изображения и изображения с пакетами, LZW или сжатием Deflate

  • 1-битные изображения со сжатием CCITT 1D, группы 3 и группы 4

  • Изображения CIELAB, ICCLAB и CMYK

'xwd'

Дамп X Windows (XWD)

8-битные ZPixmaps

Аргументы в виде пар имя-значение

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

Пример: imwrite(A,'myFile.png','BitDepth',8) записывает данные в A использование 8 бит для представления каждого пикселя.
GIF - Формат графического обмена

свернуть все

Цвет для использования в качестве цвета фона для индексируемого изображения, заданный как разделенная разделенными запятой парами, состоящая из 'BackgroundColor' и скаляр целое число, соответствующее индексу палитры.

Цвет фона используется для некоторых методов удаления в анимированных GIF.

  • Если данные изображения A является uint8 или logical, тогда индекс палитры будет начинаться с нуля.

  • Если данные изображения A является double, тогда индекс палитры основан на одном.

Цвет фона по умолчанию соответствует первому цвету в палитре.

Пример: 'BackgroundColor',15

Комментарий для добавления к изображению, заданный как разделенная разделенными запятой парами, состоящая из 'Comment' и вектор символов, строковый скаляр, 1-байт- n массив ячеек из векторов символов или строковые массивы. Для массива ячеек из векторов символов, imwrite добавляет возврат каретки после каждого вектора символов.

Пример: 'Comment',{'Sample #314','January 5, 2013'}

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

Задержка перед отображением следующего изображения, в секундах, задается как разделенная разделенными запятой парами, состоящая из 'DelayTime' и скалярное значение в области значений [0,655]. Значение 0 отображает изображения так быстро, как это позволяет ваше оборудование.

Пример: 'DelayTime',60

Метод удаления анимированного GIF, заданный как разделенная разделенными запятой парами, состоящая из 'DisposalMethod' и один из методов в этой таблице.

Значение DisposalMethod Результат
'doNotSpecify' (по умолчанию)Замените одну полноразмерную непрозрачную систему координат на другой.
'leaveInPlace'Любые пиксели, не покрытые следующей системой координат, продолжают отображаться.
'restoreBG'Цвет фона или плитка фона отображаются через прозрачные пиксели.
'restorePrevious'Восстановите состояние предыдущего, неразмещённой системы координат.

Пример: 'DisposalMethod','restoreBG'

Смещение экрана относительно изображения, измеренное из верхнего левого угла каждого, задается как разделенная разделенными запятой парами, состоящая из 'Location' и двухэлементный вектор. Первый элемент вектора задает смещение от верхней части, а второй элемент задает смещение слева в пикселях.

Пример: 'Location',[10,15]

Типы данных: double

Количество раз, чтобы повторить анимацию, заданное как разделенная разделенными запятой парами, состоящая из 'LoopCount' и либо целое число в области значений [0,65535], или значение Inf. Если задано значение 0, анимация воспроизводится один раз. Если вы задаете значение 1, анимация воспроизводится дважды и так далее. A LoopCount значение Inf приводит к непрерывному циклу анимации.

Включение анимации в Microsoft® PowerPoint®, задайте значение для 'LoopCount' в области значений [165535]. Некоторые приложения Майкрософт интерпретируют значение 0 как означающее, что оно вообще не циклически.

Пример: 'LoopCount',3

Высота и ширина системы координат, заданные как разделенная разделенными запятой парами, состоящая из 'ScreenSize' и двухэлементный вектор. Когда вы используете ScreenSize аргумент с 'Location', он предоставляет способ записи систем координат в изображение, которые меньше, чем вся система координат. 'DisposalMethod' определяет значение заливки для пикселей вне системы координат.

Пример: 'ScreenSize',[1000 1060]

Типы данных: double

Цвет для использования в качестве прозрачного цвета для изображения, заданный как разделенная разделенными запятой парами, состоящая из 'TransparentColor' и скаляр целое число, соответствующее индексу палитры.

  • Если данные изображения A является uint8 или logical, затем индексация начинается в 0.

  • Если данные изображения A является double, затем индексация начинается в 1.

Пример: 'TransparentColor',20

Режим записи, заданный как разделенная разделенными запятой парами, состоящая из 'WriteMode' и любой из них 'overwrite' или 'append'. В overwrite режим, imwrite перезаписывает существующий файл, filename. В append режим, imwrite добавляет одну систему координат к существующему файлу.

Пример: 'WriteMode','append'

HDF4 - иерархический формат данных

свернуть все

Схема сжатия, заданная как разделенная разделенными запятой парами, состоящая из 'Compression' и один из опций в этой таблице.

Значение Compression Результат
'none' (по умолчанию)Нет сжатия
'jpeg'Сжатие JPEG. Действителен только для изображений в полутоновом и RGB.
'rle'Кодирование длин прогонов. Действителен только для полутоновых и индексированных изображений.

Пример: 'Compression','jpeg'

Качество файла со сжатием JPEG, заданное как разделенная разделенными запятой парами, состоящая из 'Quality' и скаляр в области значений [0,100], где 0 является более низким качеством и более высоким сжатием, а 100 является более высоким качеством и более низким сжатием. Этот параметр применяется только в том случае, если 'Compression' является 'jpeg'.

Пример: 'Quality',25

Режим записи, заданный как разделенная разделенными запятой парами, состоящая из 'WriteMode' и любой из них 'overwrite' или 'append'. В overwrite режим, imwrite перезаписывает существующий файл, filename. В append режим, imwrite добавляет одну систему координат к существующему файлу.

Пример: 'WriteMode','append'

JPEG - Формат графических данных JPEG

свернуть все

Количество бит на пиксель, заданное как разделенная запятой пара, состоящее из 'BitDepth' и скаляром.

  • Для полутоновых изображений, BitDepth значение может быть 8, 12 или 16. Значение по умолчанию является 8. Для 16-битных изображений 'Mode' аргумент пары "имя-значение" должен быть 'lossless'.

  • Для цветных изображений, BitDepth значение является количеством бит на плоскость и может быть 8 или 12. Значение по умолчанию является 8 битами на плоскость.

Пример: 'BitDepth',12

Комментарий для добавления к изображению, заданный как разделенная разделенными запятой парами, состоящая из 'Comment' и вектор символов, строковый скаляр, символьный массив, n-by-1 массив ячеек из векторов символов или строковые массивы. imwrite записывает каждую строку входа как комментарий в файл JPEG.

Пример: 'Comment',{'First line';'second line';'third line'}

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

Тип сжатия, заданный как разделенная разделенными запятой парами, состоящая из 'Mode' и один из следующих опций:

  • 'lossy'

  • 'lossless'

Пример: 'Mode','lossless'

Качество выходного файла, заданное как разделенная разделенными запятой парами, состоящая из 'Quality' и скаляр в области значений [0,100], где 0 является более низким качеством и более высоким сжатием, а 100 является более высоким качеством и более низким сжатием. A Quality значение 100 не записывает изображение JPEG без потерь. Вместо этого используйте 'Mode','lossless' аргумент пары "имя-значение".

Пример: 'Quality',100

JPEG 2000 - Формат графических данных JPEG 2000

свернуть все

Комментарий для добавления к изображению, заданный как разделенная разделенными запятой парами, состоящая из 'Comment' и вектор символов, символьный массив, строковый скаляр, массив ячеек из векторов символов или строковые массивы. imwrite записывает каждую строку входа как комментарий в файл JPEG 2000.

Пример: 'Comment',{'First line';'second line';'third line'}

Пример: 'Comment',{'First line','second line','third line'}

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

Целевой коэффициент сжатия, заданный как разделенная разделенными запятой парами, состоящая из 'CompressionRatio' и действительный скаляр, больший или равный 1. Степень сжатия является отношением размера входа изображения к выходу сжатому размеру. Для примера значение 2,0 подразумевает, что размер выходного изображения составляет половину от входа размера изображения или меньше. Более высокое значение подразумевает меньший размер файла и пониженное качество изображения. Коэффициент сжатия не учитывает размер заголовка.

Определение CompressionRatio действительно только тогда, когда 'Mode' является 'lossy'.

Пример: 'CompressionRatio',3

Тип сжатия, заданный как разделенная разделенными запятой парами, состоящая из 'Mode' и один из следующих опций:

  • 'lossy'

  • 'lossless'

Пример: 'Mode','lossless'

Порядок пакетов в потоке кода, заданный как разделенная разделенными запятой парами, состоящая из 'ProgressionOrder' и один из следующих опций:

  • 'LRCP'

  • 'RLCP'

  • 'RPCL'

  • 'PCRL'

  • 'CPRL'

Символы представляют следующее: L = слой, R = разрешение, C = компонент и P = положение.

Пример: 'ProgressionOrder','RLCP'

Количество слоев качества, заданное как разделенная разделенными запятой парами, состоящая из 'QualityLayers' и целое число в области значений [1,20].

Пример: 'QualityLayers',8

Количество уровней сокращения или вейвлета уровней разложения, заданное как разделенная запятой пара, состоящее из 'ReductionLevels' и целое число в области значений [1,8].

Пример: 'ReductionLevels',6

Высота и ширина плитки, заданные как разделенная разделенными запятой парами, состоящая из 'TileSize' и двухэлементный вектор. Минимальный размер, который вы можете задать [128 128].

Пример: 'TileSize',[130 130]

PBM-, PGM- и PPM - Портативная битовая карта, Graymap, Pixmap

свернуть все

Кодирование, заданное как разделенная разделенными запятой парами, состоящая из 'Encoding' и любой из них 'rawbits' для двоичной кодировки или 'ASCII' для простого кодирования.

Пример: 'Encoding','ASCII'

Максимальное значение серого или цвета, заданное как разделенная разделенными запятой парами, состоящая из 'MaxValue' и скаляром.

Доступна только для файлов PGM и PPM. Для файлов PBM это значение всегда равняется 1.

Если массив изображений uint16, затем значение по умолчанию для MaxValue является 65535. В противном случае значение по умолчанию является 255.

Пример: 'MaxValue',510

PNG - Портативная сетевая графика

свернуть все

Прозрачность каждого пикселя, заданная как разделенная разделенными запятой парами, состоящая из 'Alpha' и матрицу значений в области значений [0,1]. Размерности строк и столбцов Alpha матрица должна быть такой же, как матрица изображений массива данных. Можно задать Alpha только для полутонового (m-by- n) и truecolor (m-by- n-by-3) данные изображения.

Примечание

Вы не можете задать оба 'Alpha' и 'Transparency' одновременно.

Типы данных: double | uint8 | uint16

Информация об авторе, заданная как разделенная разделенными запятой парами, состоящая из 'Author' и вектор символов или строковый скаляр.

Пример: "Author','Ann Smith'

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

Цвет фона при составлении прозрачных пикселей, заданный как разделенная разделенными запятой парами, состоящая из 'Background' и значение, зависящее от данных изображения, следующим образом.

Тип изображенияФорма Background Значение
Полутоновые изображенияСкаляр в области значений [0,1].
Индексированные изображенияЦелое число в области значений [1,P], где P - длина палитры. Для примера, 'Background',50 устанавливает цвет фона на цвет, заданный 50-м индексом в палитре.
Изображения ТруколораТрехэлементный вектор интенсивности RGB в области значений [0,1]. Для примера, 'Background',[0 1 1] устанавливает цвет фона голубой.

Типы данных: double

Количество бит на пиксель, заданное как разделенная запятой пара, состоящее из 'BitDepth' и скаляром. В зависимости от выходного изображения скаляром может быть одно из следующих значений.

Тип изображенияДопустимые значения для BitDepth
Полутоновые изображения1, 2, 4, 8, или 16
Полутоновые изображения с альфа-каналом8 или 16
Индексированные изображения1, 2, 4, или 8
Изображения Труколора8 или 16
  • Если изображение имеет класс double или uint8, тогда битовая глубина по умолчанию является 8 битами на пиксель.

  • Если изображение uint16, тогда по умолчанию является 16 битами на пиксель.

  • Если изображение logical, тогда по умолчанию это 1 бит на пиксель.

Пример: 'BitDepth',4

Опорная точка белого и первичная цветность, заданные как разделенная разделенными запятой парами, состоящая из 'Chromaticities' и вектор с 8 элементами, [wx wy rx ry gx gy bx by]. Элементы wx и wy являются координатами цветности белой точки и элементов rx, ry, gx, gy, bx, и by являются координатами цветности трех основных цветов.

Если вы задаете Chromaticities, вы также должны задать Gamma аргумент пары "имя-значение".

Пример: 'Chromaticities',[0.312,0.329,0.002,0.002,0.001,0.001,0.115,0.312]

Типы данных: double

Комментарий для добавления к изображению, заданный как разделенная разделенными запятой парами, состоящая из 'Comment' и вектор символов или строковый скаляр.

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

Описание изображения, заданное как разделенная разделенными запятой парами, состоящая из 'Description' и вектор символов или строковый скаляр.

Юридический отказ от ответственности, заданный как разделенная разделенными запятой парами, состоящая из 'Disclaimer' и вектор символов или строковый скаляр.

Гамма файла, заданная как разделенная разделенными запятой парами, состоящая из 'Gamma' и скаляром.

Пример: 'Gamma',2.2

Время последнего изменения изображения, заданное как разделенная разделенными запятой парами, состоящая из 'ImageModTime' и серийный номер даты MATLAB или вектор символов или строковый скаляр даты, который можно преобразовать в вектор даты с помощью datevec функция. Значения должны находиться в согласованном универсальном времени (UTC).

Значение по умолчанию ImageModTime значение - это время, когда вы вызываете imwrite.

Пример: 'ImageModTime','17-Jan-2013 11:23:10'

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

Схема чередования, заданная как разделенная разделенными запятой парами, состоящая из 'InterlaceType' и любой из них 'none' без перемежений или 'adam7' для использования алгоритма Adam7.

Пример: 'InterlaceType','adam7'

Модуль измерения разрешения изображения, заданная как разделенная разделенными запятой парами, состоящая из 'ResolutionUnit' и любой из них 'unknown' или 'meter'. Если вы задаете ResolutionUnit, вы должны включать по крайней мере один из XResolution и YResolution Аргументы пары "имя-значение". Когда значение ResolutionUnit является 'meter', а XResolution и YResolution значения интерпретируются в пикселях на метр.

Пример: 'ResolutionUnit','meter','XResolution',1000

Количество бит в массиве данных, учитываемое как значительное, задается как разделенная запятой пара, состоящее из 'SignificantBits' и скаляр или вектор в область значений [1, BitDepth]. В зависимости от типа выходного изображения, значение должно быть в следующей форме.

Тип изображенияФорма SignificantBits Значение
Полутоновое изображение без альфа-каналаСкаляр
Полутоновое изображение с альфа-каналом2-элементный вектор
Индексированное изображение3-элементный вектор
Изображение Труколора без альфа-канала3-элементный вектор
Изображение Труколора с альфа-каналом4-элементный вектор

Пример: 'SignificantBits',[2,3]

Программа, используемая для создания изображения, заданная как разделенная разделенными запятой парами, состоящая из 'Software' и вектор символов или строковый скаляр.

Устройство, используемое для создания изображения, заданное как разделенная разделенными запятой парами, состоящая из 'Source' и вектор символов или строковый скаляр.

Пиксели, чтобы считать прозрачными, когда не используется альфа-канал, заданные как разделенная разделенными запятой парами, состоящая из 'Transparency' и скаляром или вектором. В зависимости от выходного изображения значение должно быть в следующей форме.

Тип изображенияФорма Transparency Значение
Полутоновые изображенияСкаляр в области значений [0,1], указывающий, что цвет в полутоновом цвете считается прозрачным.
Индексированные изображенияQ-вектор элемента значений в области значений [0,1], где Q не превышает длину палитры, и каждое значение указывает на прозрачность, связанную с соответствующей записью палитры. В большинстве случаев Q = 1.
Изображения Труколора3-элементный вектор интенсивности RGB в области значений [0,1], указывающий цвет труколора, чтобы считать прозрачным.

Примечание

Вы не можете задать оба 'Transparency' и 'Alpha' одновременно.

Пример: 'Transparency',[1 1 1]

Типы данных: double

Предупреждение о характере содержимого, заданное как разделенная запятыми пара, состоящая из 'Warning' и вектор символов или строковый скаляр.

Разрешение изображения в горизонтальном направлении, в пикселях/единицах, задается как разделенная разделенными запятой парами, состоящая из 'XResolution' и скаляром. Определите модуль путем определения ResolutionUnit аргумент пары "имя-значение".

Если вы также не задаете YResolution, затем XResolution значение применяется как к горизонтальному, так и к вертикальному направлениям.

Пример: 'XResolution',900

Разрешение изображения в вертикальном направлении, в пикселях/единицах, заданное как разделенная разделенными запятой парами, состоящая из 'XResolution' и скаляром. Определите модуль путем определения ResolutionUnit аргумент пары "имя-значение".

Если вы также не задаете XResolution, затем YResolution значение применяется как к горизонтальному, так и к вертикальному направлениям.

Пример: 'YResolution',900

В дополнение к перечисленным аргументам пары "имя-значение" для PNG можно использовать любое имя параметра, которое удовлетворяет спецификации PNG для ключевых слов. То есть имя использует только печатаемые символы, содержит 80 или менее символов и не содержит начальных или конечных пространств. Значение, соответствующее этим заданным пользователем именам, должно быть вектором символов или строковым скаляром, который не содержит никаких управляющих символов, кроме linefeed.

RAS - растровая графика Sun

свернуть все

Прозрачность каждого пикселя, заданная как разделенная разделенными запятой парами, состоящая из 'Alpha' и матрицу с размерностями строк и столбцов, аналогичными размерностям массива данных.

Действителен только для truecolor (m-by- n-by-3) данные изображения.

Типы данных: double | single | uint8 | uint16

Тип изображения, заданный как разделенная разделенными запятой парами, состоящая из 'Type' и один из опций в этой таблице.

Значение TypeОписание
'standard' (по умолчанию)Несжатый, порядок цвета B-G-R для изображений truecolor
'rgb'Несжатый, порядок цвета R-G-B для изображений truecolor
'rleКодирование 1-битного и 8-битного изображений в длину выполнения

Пример: 'Type','rgb'

TIFF - Теговый формат графических файлов

свернуть все

Цветовое пространство, представляющее данные о цвете, заданное как разделенная разделенными запятой парами, состоящая из 'ColorSpace' и один из следующих опций:

  • 'rgb'

  • 'cielab'

  • 'icclab'

Действителен только, когда массив данных изображения, A, является truecolor (m-by- n-by-3). Чтобы использовать цветовое пространство CMYK в файле TIFF, не используйте 'ColorSpace' аргумент пары "имя-значение". Вместо этого задайте m-by- n-by-4 массив изображений данных.

imwrite может записать данные цветного изображения, который использует цветовое пространство L * a * b * в файлы TIFF. Спецификация CIE 1976 L * a * b * задает числовые значения, которые представляют информацию яркости (L *) и цветности (a * и b *). Чтобы хранить данные цвета L * a * b * в файле TIFF, значения должны быть закодированы, чтобы помещаться в 8-битную или 16-битную память.imwrite может хранить данные цвета L * a * b * в файле TIFF с помощью следующих кодировок:

  • Кодировки CIELAB - 8-битные и 16-битные кодировки, заданные спецификацией TIFF

  • Кодировки ICCLAB - 8-битные и 16-битные кодировки, заданные Международным консорциумом цветов

Выходной класс и кодировка, используемые imwrite зависит от класса входного массива данных изображения и ColorSpace значение, как показано в следующей таблице. (8-разрядная и 16-разрядная кодировки CIELAB не могут быть входными массивами, поскольку они используют смесь значений со знаком и без знака и не могут быть представлены как один массив MATLAB.)

Входной класс и кодировка

Значение ColorSpace

Выходной класс и кодировка

8-битный ICCLAB


Значения являются целыми числами в области значений [0 255]. Значения L * умножаются на 255/100.
128 добавляется к обоим значениям a * и b *.

'icclab'

8-битный ICCLAB

'cielab'

8-битный CIELAB

16-битный ICCLAB


Значения являются целыми числами в области значений [0, 65280]. Значения L * умножаются на 65280/100.
32768 добавляется как к значениям a *, так и b *, которые представлены в виде целых чисел в области значений [0,65535 ].

'icclab'

16-битный ICCLAB

'cielab'

16-битный CIELAB

Значения CIE L * a * b * двойной точности 1976


L * находится в динамической области значений [0, 100]. a * и b * могут принимать любое значение. Установка a * и b * на 0 (нуль) создает нейтральный цвет (серый).

'icclab'

8-битный ICCLAB

'cielab'

8-битный CIELAB

Пример: 'ColorSpace','cielab'

Схема сжатия, заданная как разделенная разделенными запятой парами, состоящая из 'Compression' и один из следующих опций:

  • 'packbits' (по умолчанию для небинарных изображений)

  • 'none'

  • 'lzw'

  • 'deflate'

  • 'jpeg'

  • 'ccitt' (бинарные изображения и по умолчанию для таких изображений)

  • 'fax3' (бинарные изображения)

  • 'fax4' (бинарные изображения)

'jpeg' - схема сжатия с потерями; другие режимы сжатия без потерь. Кроме того, если вы задаете 'jpeg' сжатие, вы должны задать 'RowsPerStrip' параметр и значение должны быть кратны 8.

Пример: 'Compression','none'

Описание изображения, заданное разделенной запятыми парой, состоящей из 'Description' и вектор символов или строковый скаляр. Это текст, который imfinfo возвращается в ImageDescription поле для выходного изображения.

Пример: 'Description','Sample 2A301'

X- и Y-разрешение, заданное как разделенная разделенными запятой парами, состоящая из 'Resolution' и скаляр, указывающий и разрешение, или двухэлементный вектор, содержащий X-Разрешение и Y-Разрешение.

Пример: 'Resolution',80

Пример: 'Resolution',[320,72]

Типы данных: double

Количество строк для включения в каждую полосу, заданное как разделенная разделенными запятой парами, состоящая из 'RowsPerStrip' и скаляром. Значение по умолчанию таково, что каждая полоса составляет около 8 килобайт.

Вы должны задать RowsPerStrip если вы задаете 'jpeg' сжатие. Значение должно быть кратным 8.

Пример: 'RowsPerStrip',16

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Режим записи, заданный как разделенная разделенными запятой парами, состоящая из 'WriteMode' и любой из них 'overwrite' или 'append'. В overwrite режим, imwrite перезаписывает существующий файл. В append режим, imwrite добавляет страницу к существующему файлу.

Пример: 'WriteMode','append'

Совет

  • Информацию об авторских правах см. в libtiffcopyright.txt файл.

Расширенные возможности

См. также

| | | | |

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте