Запись изображения в графический файл
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(___,
задает дополнительные параметры для выходных файлов GIF, HDF, JPEG, PBM, PGM, PNG, PPM и TIFF, используя один или несколько аргументы пары "имя-значение". Можно задать Name,Value
)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 файла.
Постройте график для.
x = 0:0.01:1; n = 3; y = x.^n; plot(x,y,'LineWidth',3) title(['y = x^n, n = ' num2str(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
- Данные изображенийДанные изображения, заданные как полная (непараметрическая) матрица.
Для полутоновых изображений, 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
может принять одну из этих форм.
Местоположение | Форма | ||||||||
---|---|---|---|---|---|---|---|---|---|
Текущая папка | Чтобы записать в текущую папку, укажите имя файла в
Пример:
'myImage.jpg' | ||||||||
Другие папки | Чтобы записать в папку, отличную от текущей папки, укажите полное или относительное имя пути в Пример:
Пример:
'\imgDir\myImage.ext' | ||||||||
Удаленное местоположение | Чтобы записать в удаленное место,
Исходя из удаленного местоположения,
Для получения дополнительной информации см. раздел Работа с удаленными данными. Пример:
|
Типы данных: char
| string
map
- Палитра индексированного изображенияm
массив -by-3Палитра, связанная с индексированными данными изображения в A
, заданный как m
массив -by-3. map
должна быть допустимой палитрой MATLAB. Посмотрите colormap
для получения списка встроенных палитр MATLAB. Большинство форматов файлов изображений не поддерживает палитры с более чем 256 записями.
Пример: [0,0,0;0.5,0.5,0.5;1,1,1]
Пример: jet(60)
Типы данных: double
fmt
- Формат выходного файла'bmp'
| 'gif'
| 'hdf'
| 'jpg'
| 'jp2'
| ...Формат выходного файла, заданный как один из форматов в этой таблице.
В этой таблице также суммируются типы изображений, которые imwrite
может писать. Реестр формата файла MATLAB определяет, какие форматы файлов поддерживаются. Посмотрите imformats
для получения дополнительной информации об этом реестре.
Для определенных форматов, imwrite
может принимать дополнительные аргументы пары "имя-значение". Чтобы просмотреть эти аргументы, щелкните имена связанных форматов ниже.
Значение | Формат Выхода файла | Описание |
---|---|---|
| Windows® Растровое изображение (BMP) | 1-битный, 8-битный и 24-битный несжатые изображения |
| 8-битные изображения | |
| 8-битные наборы данных с сопоставленной палитрой или без нее, 24-битные наборы данных | |
| 8-битные, 12-битные и 16-битные базовые изображения JPEG Примечание
| |
| 1-битные 8-битные и 16-битные изображения JPEG 2000 | |
| Любое 1-битное изображение PBM, ASCII (обычное) или необработанное (двоичное) кодирование | |
| Windows Paintbrush (PCX) | 8-битные изображения |
| Любое стандартное изображение PGM; ASCII (обычный), закодированный с произвольной глубиной цвета; необработанный (двоичный) с кодировкой до 16 бит на каждое значение серого цвета | |
| 1-битный, 2-битный, 4-битный, 8-битный и 16-битный полутоновые изображения; 8-битные и 16-битные полутоновые изображения с альфа-каналами; 1-битный, 2-битный, 4-битный и 8-битный индексированные изображения; 24-битные и 48-битные изображения труколора; 24-битные и 48-битные изображения truecolor с альфа-каналами
Примечание The
| |
| Любой из форматов PPM/PGM/PBM, выбранных автоматически | |
| Любое стандартное изображение PPM: ASCII (обычный) закодирован с произвольной глубиной цвета или необработанный (двоичный) закодирован с до 16 битами на цветовой компонент | |
| Sun™ растр (RAS) | Любое изображение RAS, включая 1-битное растровое изображение, 8-битное индексированное, 24-битное truecolor и 32-битное truecolor с альфа |
| Базовые изображения TIFF, включая:
| |
| Дамп X Windows (XWD) | 8-битные ZPixmaps |
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
imwrite(A,'myFile.png','BitDepth',8)
записывает данные в A
использование 8 бит для представления каждого пикселя.'BackgroundColor'
- Цвет для использования в качестве цвета фонаЦвет для использования в качестве цвета фона для индексируемого изображения, заданный как разделенная разделенными запятой парами, состоящая из 'BackgroundColor'
и скаляр целое число, соответствующее индексу палитры.
Цвет фона используется для некоторых методов удаления в анимированных GIF.
Если данные изображения A
является uint8
или logical
, тогда индекс палитры будет начинаться с нуля.
Если данные изображения A
является double
, тогда индекс палитры основан на одном.
Цвет фона по умолчанию соответствует первому цвету в палитре.
Пример: 'BackgroundColor',15
'Comment'
- Комментарий для добавления к изображениюКомментарий для добавления к изображению, заданный как разделенная разделенными запятой парами, состоящая из 'Comment'
и вектор символов, строковый скаляр, 1-байт- n
массив ячеек из векторов символов или строковые массивы. Для массива ячеек из векторов символов, imwrite
добавляет возврат каретки после каждого вектора символов.
Пример: 'Comment',{'Sample #314','January 5, 2013'}
Типы данных: char
| cell
| string
'DelayTime'
- Задержка перед отображением следующего изображенияЗадержка перед отображением следующего изображения, в секундах, задается как разделенная разделенными запятой парами, состоящая из 'DelayTime'
и скалярное значение в области значений [0,655]. Значение 0
отображает изображения так быстро, как это позволяет ваше оборудование.
Пример: 'DelayTime',60
'DisposalMethod'
- Метод утилизации анимированной GIF'doNotSpecify'
(по умолчанию) | 'leaveInPlace'
| 'restoreBG'
| 'restorePrevious'
Метод удаления анимированного GIF, заданный как разделенная разделенными запятой парами, состоящая из 'DisposalMethod'
и один из методов в этой таблице.
Значение DisposalMethod
| Результат |
---|---|
'doNotSpecify' (по умолчанию) | Замените одну полноразмерную непрозрачную систему координат на другой. |
'leaveInPlace' | Любые пиксели, не покрытые следующей системой координат, продолжают отображаться. |
'restoreBG' | Цвет фона или плитка фона отображаются через прозрачные пиксели. |
'restorePrevious' | Восстановите состояние предыдущего, неразмещённой системы координат. |
Пример: 'DisposalMethod','restoreBG'
'Location'
- Смещение экрана относительно изображения[0,0]
(по умолчанию) | двухэлементный векторСмещение экрана относительно изображения, измеренное из верхнего левого угла каждого, задается как разделенная разделенными запятой парами, состоящая из 'Location'
и двухэлементный вектор. Первый элемент вектора задает смещение от верхней части, а второй элемент задает смещение слева в пикселях.
Пример: 'Location',[10,15]
Типы данных: double
'LoopCount'
- Количество раз повторять анимациюInf
(по умолчанию) | целое число в области значений [0,65535]
Количество раз, чтобы повторить анимацию, заданное как разделенная разделенными запятой парами, состоящая из 'LoopCount'
и либо целое число в области значений [0,65535]
, или значение Inf
. Если задано значение 0, анимация воспроизводится один раз. Если вы задаете значение 1, анимация воспроизводится дважды и так далее. A LoopCount
значение Inf
приводит к непрерывному циклу анимации.
Включение анимации в Microsoft® PowerPoint®, задайте значение для 'LoopCount'
в области значений [165535]. Некоторые приложения Майкрософт интерпретируют значение 0 как означающее, что оно вообще не циклически.
Пример: 'LoopCount',3
'ScreenSize'
- Высота и ширина системы координатВысота и ширина системы координат, заданные как разделенная разделенными запятой парами, состоящая из 'ScreenSize'
и двухэлементный вектор. Когда вы используете ScreenSize
аргумент с 'Location'
, он предоставляет способ записи систем координат в изображение, которые меньше, чем вся система координат. 'DisposalMethod'
определяет значение заливки для пикселей вне системы координат.
Пример: 'ScreenSize',[1000 1060]
Типы данных: double
'TransparentColor'
- Цвет для использования в качестве прозрачного цветаЦвет для использования в качестве прозрачного цвета для изображения, заданный как разделенная разделенными запятой парами, состоящая из 'TransparentColor'
и скаляр целое число, соответствующее индексу палитры.
Если данные изображения A
является uint8
или logical
, затем индексация начинается в 0
.
Если данные изображения A
является double
, затем индексация начинается в 1
.
Пример: 'TransparentColor',20
'WriteMode'
- Режим записи'overwrite'
(по умолчанию) | 'append'
Режим записи, заданный как разделенная разделенными запятой парами, состоящая из 'WriteMode'
и любой из них 'overwrite'
или 'append'
. В overwrite
режим, imwrite
перезаписывает существующий файл, filename
. В append
режим, imwrite
добавляет одну систему координат к существующему файлу.
Пример: 'WriteMode','append'
'Compression'
- Схема сжатия'none'
(по умолчанию) | 'jpeg'
| 'rle'
Схема сжатия, заданная как разделенная разделенными запятой парами, состоящая из 'Compression'
и один из опций в этой таблице.
Значение Compression
| Результат |
---|---|
'none' (по умолчанию) | Нет сжатия |
'jpeg' | Сжатие JPEG. Действителен только для изображений в полутоновом и RGB. |
'rle' | Кодирование длин прогонов. Действителен только для полутоновых и индексированных изображений. |
Пример: 'Compression','jpeg'
'Quality'
- Качество JPEG-сжатого файлаКачество файла со сжатием JPEG, заданное как разделенная разделенными запятой парами, состоящая из 'Quality'
и скаляр в области значений [0,100], где 0 является более низким качеством и более высоким сжатием, а 100 является более высоким качеством и более низким сжатием. Этот параметр применяется только в том случае, если 'Compression'
является 'jpeg'
.
Пример: 'Quality',25
'WriteMode'
- Режим записи'overwrite'
(по умолчанию) | 'append'
Режим записи, заданный как разделенная разделенными запятой парами, состоящая из 'WriteMode'
и любой из них 'overwrite'
или 'append'
. В overwrite
режим, imwrite
перезаписывает существующий файл, filename
. В append
режим, imwrite
добавляет одну систему координат к существующему файлу.
Пример: 'WriteMode','append'
'BitDepth'
- Количество битов на пиксельКоличество бит на пиксель, заданное как разделенная запятой пара, состоящее из 'BitDepth'
и скаляром.
Для полутоновых изображений, BitDepth
значение может быть 8, 12 или 16. Значение по умолчанию является 8. Для 16-битных изображений 'Mode'
аргумент пары "имя-значение" должен быть 'lossless'
.
Для цветных изображений, BitDepth
значение является количеством бит на плоскость и может быть 8 или 12. Значение по умолчанию является 8 битами на плоскость.
Пример: 'BitDepth',12
'Comment'
- Комментарий для добавления к изображениюn
-by-1 массив ячеек из векторов символовКомментарий для добавления к изображению, заданный как разделенная разделенными запятой парами, состоящая из 'Comment'
и вектор символов, строковый скаляр, символьный массив, n
-by-1 массив ячеек из векторов символов или строковые массивы. imwrite
записывает каждую строку входа как комментарий в файл JPEG.
Пример: 'Comment',{'First line';'second line';'third line'}
Типы данных: char
| string
| cell
'Mode'
- Тип сжатия'lossy'
(по умолчанию) | 'lossless'
Тип сжатия, заданный как разделенная разделенными запятой парами, состоящая из 'Mode'
и один из следующих опций:
'lossy'
'lossless'
Пример: 'Mode','lossless'
'Quality'
- Качество выходного файлаКачество выходного файла, заданное как разделенная разделенными запятой парами, состоящая из 'Quality'
и скаляр в области значений [0,100], где 0 является более низким качеством и более высоким сжатием, а 100 является более высоким качеством и более низким сжатием. A Quality
значение 100 не записывает изображение JPEG без потерь. Вместо этого используйте 'Mode','lossless'
аргумент пары "имя-значение".
Пример: 'Quality',100
'Comment'
- Комментарий для добавления к изображениюn
Массив ячеек -by-1 из векторов символов | строковых массивовКомментарий для добавления к изображению, заданный как разделенная разделенными запятой парами, состоящая из 'Comment'
и вектор символов, символьный массив, строковый скаляр, массив ячеек из векторов символов или строковые массивы. imwrite
записывает каждую строку входа как комментарий в файл JPEG 2000.
Пример: 'Comment',{'First line';'second line';'third line'}
Пример: 'Comment',{'First line','second line','third line'}
Типы данных: cell
| char
| string
'CompressionRatio'
- Целевой коэффициент сжатияЦелевой коэффициент сжатия, заданный как разделенная разделенными запятой парами, состоящая из 'CompressionRatio'
и действительный скаляр, больший или равный 1. Степень сжатия является отношением размера входа изображения к выходу сжатому размеру. Для примера значение 2,0 подразумевает, что размер выходного изображения составляет половину от входа размера изображения или меньше. Более высокое значение подразумевает меньший размер файла и пониженное качество изображения. Коэффициент сжатия не учитывает размер заголовка.
Определение CompressionRatio
действительно только тогда, когда 'Mode'
является 'lossy'
.
Пример: 'CompressionRatio',3
'Mode'
- Тип сжатия'lossy'
(по умолчанию) | 'lossless'
Тип сжатия, заданный как разделенная разделенными запятой парами, состоящая из 'Mode'
и один из следующих опций:
'lossy'
'lossless'
Пример: 'Mode','lossless'
'ProgressionOrder'
- Порядок пакетов в потоке кода'LRCP'
(по умолчанию) | 'RLCP'
| 'RPCL'
| 'PCRL'
| 'CPRL'
Порядок пакетов в потоке кода, заданный как разделенная разделенными запятой парами, состоящая из 'ProgressionOrder'
и один из следующих опций:
'LRCP'
'RLCP'
'RPCL'
'PCRL'
'CPRL'
Символы представляют следующее: L
= слой, R
= разрешение, C
= компонент и P
= положение.
Пример: 'ProgressionOrder','RLCP'
'QualityLayers'
- Количество слоев качестваКоличество слоев качества, заданное как разделенная разделенными запятой парами, состоящая из 'QualityLayers'
и целое число в области значений [1,20].
Пример: 'QualityLayers',8
'ReductionLevels'
- Количество уровней сокращенияКоличество уровней сокращения или вейвлета уровней разложения, заданное как разделенная запятой пара, состоящее из 'ReductionLevels'
и целое число в области значений [1,8].
Пример: 'ReductionLevels',6
'TileSize'
- Высота и ширина плиткиВысота и ширина плитки, заданные как разделенная разделенными запятой парами, состоящая из 'TileSize'
и двухэлементный вектор. Минимальный размер, который вы можете задать [128 128]
.
Пример: 'TileSize',[130 130]
'Encoding'
Кодировка'rawbits'
(по умолчанию) | 'ASCII'
Кодирование, заданное как разделенная разделенными запятой парами, состоящая из 'Encoding'
и любой из них 'rawbits'
для двоичной кодировки или 'ASCII'
для простого кодирования.
Пример: 'Encoding','ASCII'
'MaxValue'
- Максимальное значение серого или цветаМаксимальное значение серого или цвета, заданное как разделенная разделенными запятой парами, состоящая из 'MaxValue'
и скаляром.
Доступна только для файлов PGM и PPM. Для файлов PBM это значение всегда равняется 1.
Если массив изображений uint16
, затем значение по умолчанию для MaxValue
является 65535
. В противном случае значение по умолчанию является 255
.
Пример: 'MaxValue',510
'Alpha'
- Прозрачность каждого пикселяПрозрачность каждого пикселя, заданная как разделенная разделенными запятой парами, состоящая из 'Alpha'
и матрицу значений в области значений [0,1]. Размерности строк и столбцов Alpha
матрица должна быть такой же, как матрица изображений массива данных. Можно задать Alpha
только для полутонового (m
-by- n
) и truecolor (m
-by- n
-by-3) данные изображения.
Примечание
Вы не можете задать оба 'Alpha'
и 'Transparency'
одновременно.
Типы данных: double
| uint8
| uint16
'Author'
- Авторская информацияИнформация об авторе, заданная как разделенная разделенными запятой парами, состоящая из 'Author'
и вектор символов или строковый скаляр.
Пример: "Author','Ann Smith'
Типы данных: char
'Background'
- Цвет фона при составлении прозрачных пикселей[0,1]
| целое число в области значений [1,P]
| 3-элементный вектор в области значений [0,1]
Цвет фона при составлении прозрачных пикселей, заданный как разделенная разделенными запятой парами, состоящая из 'Background'
и значение, зависящее от данных изображения, следующим образом.
Тип изображения | Форма Background Значение |
---|---|
Полутоновые изображения | Скаляр в области значений [0,1] . |
Индексированные изображения | Целое число в области значений [1,P] , где P - длина палитры. Для примера, 'Background',50 устанавливает цвет фона на цвет, заданный 50-м индексом в палитре. |
Изображения Труколора | Трехэлементный вектор интенсивности RGB в области значений [0,1] . Для примера, 'Background',[0 1 1] устанавливает цвет фона голубой. |
Типы данных: double
'BitDepth'
- Количество битов на пиксельКоличество бит на пиксель, заданное как разделенная запятой пара, состоящее из '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'
- Контрольная точка белого и первичная цветностьОпорная точка белого и первичная цветность, заданные как разделенная разделенными запятой парами, состоящая из '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'
- Комментарий для добавления к изображениюКомментарий для добавления к изображению, заданный как разделенная разделенными запятой парами, состоящая из 'Comment'
и вектор символов или строковый скаляр.
'Copyright'
- Уведомление об авторских правахУведомление об авторских правах, заданное как разделенная разделенными запятой парами, состоящая из 'Copyright'
и вектор символов или строковый скаляр.
'CreationTime'
- Время создания исходного изображенияВремя создания оригинального изображения, заданное как вектор символов или строковый скаляр.
'Description'
- Описание изображенияОписание изображения, заданное как разделенная разделенными запятой парами, состоящая из 'Description'
и вектор символов или строковый скаляр.
'Disclaimer'
- Юридический отказ от ответственностиЮридический отказ от ответственности, заданный как разделенная разделенными запятой парами, состоящая из 'Disclaimer'
и вектор символов или строковый скаляр.
'Gamma'
- Файл гаммаГамма файла, заданная как разделенная разделенными запятой парами, состоящая из 'Gamma'
и скаляром.
Пример: 'Gamma',2.2
'ImageModTime'
- Время последнего изменения изображенияВремя последнего изменения изображения, заданное как разделенная разделенными запятой парами, состоящая из 'ImageModTime'
и серийный номер даты MATLAB или вектор символов или строковый скаляр даты, который можно преобразовать в вектор даты с помощью datevec
функция. Значения должны находиться в согласованном универсальном времени (UTC).
Значение по умолчанию ImageModTime
значение - это время, когда вы вызываете imwrite
.
Пример: 'ImageModTime','17-Jan-2013 11:23:10'
Типы данных: double
| char
| string
'InterlaceType'
- Схема взаимодействия'none'
(по умолчанию) | 'adam7'
Схема чередования, заданная как разделенная разделенными запятой парами, состоящая из 'InterlaceType'
и любой из них 'none'
без перемежений или 'adam7'
для использования алгоритма Adam7.
Пример: 'InterlaceType','adam7'
'ResolutionUnit'
- Модуль разрешения изображений'unknown'
(по умолчанию) | 'meter'
Модуль измерения разрешения изображения, заданная как разделенная разделенными запятой парами, состоящая из 'ResolutionUnit'
и любой из них 'unknown'
или 'meter'
. Если вы задаете ResolutionUnit
, вы должны включать по крайней мере один из XResolution
и YResolution
Аргументы пары "имя-значение". Когда значение ResolutionUnit
является 'meter'
, а XResolution
и YResolution
значения интерпретируются в пикселях на метр.
Пример: 'ResolutionUnit','meter','XResolution',1000
'SignificantBits'
- Количество битов, учитываемое как значительное[]
(по умолчанию) | скалярный вектор |Количество бит в массиве данных, учитываемое как значительное, задается как разделенная запятой пара, состоящее из 'SignificantBits'
и скаляр или вектор в область значений [1, BitDepth
]. В зависимости от типа выходного изображения, значение должно быть в следующей форме.
Тип изображения | Форма SignificantBits Значение |
---|---|
Полутоновое изображение без альфа-канала | Скаляр |
Полутоновое изображение с альфа-каналом | 2-элементный вектор |
Индексированное изображение | 3-элементный вектор |
Изображение Труколора без альфа-канала | 3-элементный вектор |
Изображение Труколора с альфа-каналом | 4-элементный вектор |
Пример: 'SignificantBits',[2,3]
'Software'
- Программное обеспечение, используемое для создания изображенияПрограмма, используемая для создания изображения, заданная как разделенная разделенными запятой парами, состоящая из 'Software'
и вектор символов или строковый скаляр.
'Source'
- Устройство, используемое для создания изображенияУстройство, используемое для создания изображения, заданное как разделенная разделенными запятой парами, состоящая из 'Source'
и вектор символов или строковый скаляр.
'Transparency'
- Пиксели, чтобы считать прозрачными[]
(по умолчанию) | скаляр в области значений [0,1] | векторПиксели, чтобы считать прозрачными, когда не используется альфа-канал, заданные как разделенная разделенными запятой парами, состоящая из 'Transparency'
и скаляром или вектором. В зависимости от выходного изображения значение должно быть в следующей форме.
Тип изображения | Форма Transparency Значение |
---|---|
Полутоновые изображения | Скаляр в области значений [0,1], указывающий, что цвет в полутоновом цвете считается прозрачным. |
Индексированные изображения | Q- вектор элемента значений в области значений [0,1], где Q не превышает длину палитры, и каждое значение указывает на прозрачность, связанную с соответствующей записью палитры. В большинстве случаев Q = 1 . |
Изображения Труколора | 3-элементный вектор интенсивности RGB в области значений [0,1], указывающий цвет труколора, чтобы считать прозрачным. |
Примечание
Вы не можете задать оба 'Transparency'
и 'Alpha'
одновременно.
Пример: 'Transparency',[1 1 1]
Типы данных: double
'Warning'
- Предупреждение о характере содержимогоПредупреждение о характере содержимого, заданное как разделенная запятыми пара, состоящая из 'Warning'
и вектор символов или строковый скаляр.
'XResolution'
- Разрешение изображения в горизонтальном направленииРазрешение изображения в горизонтальном направлении, в пикселях/единицах, задается как разделенная разделенными запятой парами, состоящая из 'XResolution'
и скаляром. Определите модуль путем определения ResolutionUnit
аргумент пары "имя-значение".
Если вы также не задаете YResolution
, затем XResolution
значение применяется как к горизонтальному, так и к вертикальному направлениям.
Пример: 'XResolution',900
'YResolution'
- Разрешение изображения в вертикальном направленииРазрешение изображения в вертикальном направлении, в пикселях/единицах, заданное как разделенная разделенными запятой парами, состоящая из 'XResolution'
и скаляром. Определите модуль путем определения ResolutionUnit
аргумент пары "имя-значение".
Если вы также не задаете XResolution
, затем YResolution
значение применяется как к горизонтальному, так и к вертикальному направлениям.
Пример: 'YResolution',900
В дополнение к перечисленным аргументам пары "имя-значение" для PNG можно использовать любое имя параметра, которое удовлетворяет спецификации PNG для ключевых слов. То есть имя использует только печатаемые символы, содержит 80 или менее символов и не содержит начальных или конечных пространств. Значение, соответствующее этим заданным пользователем именам, должно быть вектором символов или строковым скаляром, который не содержит никаких управляющих символов, кроме linefeed.
'Alpha'
- Прозрачность каждого пикселя[]
(по умолчанию) | матрицаПрозрачность каждого пикселя, заданная как разделенная разделенными запятой парами, состоящая из 'Alpha'
и матрицу с размерностями строк и столбцов, аналогичными размерностям массива данных.
Действителен только для truecolor (m
-by- n
-by-3) данные изображения.
Типы данных: double
| single
| uint8
| uint16
'Type'
- Тип изображения'standard'
(по умолчанию) | 'rgb'
| 'rle'
Тип изображения, заданный как разделенная разделенными запятой парами, состоящая из 'Type'
и один из опций в этой таблице.
Значение Type | Описание |
---|---|
'standard' (по умолчанию) | Несжатый, порядок цвета B-G-R для изображений truecolor |
'rgb' | Несжатый, порядок цвета R-G-B для изображений truecolor |
'rle | Кодирование 1-битного и 8-битного изображений в длину выполнения |
Пример: 'Type','rgb'
'ColorSpace'
- Цветовое пространство, представляющее цветовые данные'rgb'
(по умолчанию) | 'cielab'
| 'icclab'
Цветовое пространство, представляющее данные о цвете, заданное как разделенная разделенными запятой парами, состоящая из '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.)
Входной класс и кодировка |
Значение |
Выходной класс и кодировка |
---|---|---|
8-битный ICCLAB Значения являются целыми числами в области значений [0 255]. Значения L * умножаются на |
' |
8-битный ICCLAB |
' |
8-битный CIELAB | |
16-битный ICCLAB Значения являются целыми числами в области значений [0, 65280]. Значения L * умножаются на |
' |
16-битный ICCLAB |
' |
16-битный CIELAB | |
Значения CIE L * a * b * двойной точности 1976 L * находится в динамической области значений [0, 100]. a * и b * могут принимать любое значение. Установка a * и b * на 0 (нуль) создает нейтральный цвет (серый). |
' |
8-битный ICCLAB |
' |
8-битный CIELAB |
Пример: 'ColorSpace','cielab'
'Compression'
- Схема сжатия'packbits'
| 'none'
| 'lzw'
| 'deflate'
| 'jpeg'
| 'ccitt'
| 'fax3'
| 'fax4'
Схема сжатия, заданная как разделенная разделенными запятой парами, состоящая из 'Compression'
и один из следующих опций:
'packbits'
(по умолчанию для небинарных изображений)
'none'
'lzw'
'deflate'
'jpeg'
'ccitt'
(бинарные изображения и по умолчанию для таких изображений)
'fax3'
(бинарные изображения)
'fax4'
(бинарные изображения)
'jpeg'
- схема сжатия с потерями; другие режимы сжатия без потерь. Кроме того, если вы задаете 'jpeg'
сжатие, вы должны задать 'RowsPerStrip'
параметр и значение должны быть кратны 8.
Пример: 'Compression','none'
'Description'
- Описание изображенияОписание изображения, заданное разделенной запятыми парой, состоящей из 'Description'
и вектор символов или строковый скаляр. Это текст, который imfinfo
возвращается в ImageDescription
поле для выходного изображения.
Пример: 'Description','Sample 2A301'
'Resolution'
- X- и Y-разрешениеX- и Y-разрешение, заданное как разделенная разделенными запятой парами, состоящая из 'Resolution'
и скаляр, указывающий и разрешение, или двухэлементный вектор, содержащий X-Разрешение и Y-Разрешение.
Пример: 'Resolution',80
Пример: 'Resolution',[320,72]
Типы данных: double
'RowsPerStrip'
- Количество строк, включаемых в каждую полосуКоличество строк для включения в каждую полосу, заданное как разделенная разделенными запятой парами, состоящая из 'RowsPerStrip'
и скаляром. Значение по умолчанию таково, что каждая полоса составляет около 8 килобайт.
Вы должны задать RowsPerStrip
если вы задаете 'jpeg'
сжатие. Значение должно быть кратным 8.
Пример: 'RowsPerStrip',16
Типы данных: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
'WriteMode'
- Режим записи'overwrite'
(по умолчанию) | 'append'
Режим записи, заданный как разделенная разделенными запятой парами, состоящая из 'WriteMode'
и любой из них 'overwrite'
или 'append'
. В overwrite
режим, imwrite
перезаписывает существующий файл. В append
режим, imwrite
добавляет страницу к существующему файлу.
Пример: 'WriteMode','append'
Информацию об авторских правах см. в libtiffcopyright.txt
файл.
Указания и ограничения по применению:
Эта функция принимает массивы GPU, но не запускается на графическом процессоре.
Для получения дополнительной информации смотрите Запуск функций MATLAB на графическом процессоре (Parallel Computing Toolbox).
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.