Считайте изображение из графического файла
A = imread(filename)
A = imread(filename,fmt)
A = imread(___,idx)
A = imread(___,Name,Value)
[A,map]
= imread(___)
[A,map,transparency]
= imread(___)
задает параметры формата с помощью одного или нескольких аргументов пары "имя-значение", в дополнение к любому из входных параметров в предыдущих синтаксисах.A
= imread(___,Name,Value
)
[
дополнительно возвращает прозрачность изображения. Этот синтаксис применяется только к PNG, CUR и файлам ICO. Для файлов PNG A
,map
,transparency
]
= imread(___)transparency
является альфа-каналом, если вы присутствуете. Для CUR и файлов ICO, это - AND (непрозрачность) маска.
Считайте демонстрационное изображение.
A = imread('ngc6543a.jpg');
imread
возвращает 650 600 3 массивами, A
.
Отобразите изображение.
image(A)
Читайте первое изображение в выборке индексировало файл изображения, corn.tif
.
[X,cmap] = imread('corn.tif');
Индексируемое изображение X
415 312 массив типа uint8
. Палитра, которая cmap
256 3 матрица типа double
, поэтому существует 256, раскрашивает индексируемое изображение. Отобразите изображение.
imshow(X,cmap)
Преобразуйте индексируемое изображение в изображение RGB. Результатом являются 415 312 3 массивами типа double
.
RGB = ind2rgb(X,cmap);
Проверяйте, что значения изображения RGB находятся в области значений [0, 1].
disp(['Range of RGB image is [',num2str(min(RGB(:))),', ',num2str(max(RGB(:))),'].'])
Range of RGB image is [0.0078431, 0.97647].
Считайте третье изображение в файле примера, corn.tif
.
[X,map] = imread('corn.tif',3);
Возвратите альфа-канал демонстрационного изображения, peppers.png
.
[X,map,alpha] = imread('peppers.png'); whos alpha
Name Size Bytes Class Attributes alpha 0x0 0 double
Никакой альфа-канал не присутствует, таким образом, alpha
пуст.
Считайте определенную область пикселей демонстрационного изображения, corn.tif
.
Задайте параметр 'PixelRegion'
с массивом ячеек векторов, указывающих на контуры области, чтобы читать. Первый вектор задает область значений строк, чтобы читать, и второй вектор задает область значений столбцов, чтобы читать.
A = imread('corn.tif','PixelRegion',{[1,2],[2,5]});
imread
читает данные изображения в строках 1-2 и столбцах 2-5 от corn.tif
и возвращается 2 4 массив, A
.
fileName
Имя графического файлаИмя графического файла, заданного как вектор символов или скаляр строки.
В зависимости от местоположения вашего файла filename
может взять одну из следующих форм.
Местоположение | Форма | ||||||||
---|---|---|---|---|---|---|---|---|---|
Текущая папка или папка на пути MATLAB® | Задайте имя файла в Пример:
| ||||||||
Файл в папке | Если файл не находится в текущей папке или в папке на пути MATLAB, то задайте полное имя или относительный путь. Пример:
Пример:
| ||||||||
URL | Если файл расположен Интернетом URL, то Пример:
| ||||||||
Удаленное местоположение | Если файл хранится в удаленном местоположении, то
На основе вашего удаленного местоположения
Для получения дополнительной информации смотрите работу с Удаленными данными. Пример:
|
Для получения информации о битовых глубинах схемы сжатия и цветовые пространства, поддержанные для каждого типа файла, видят Алгоритмы.
Типы данных: char | string
fmt
'imageFormat' Формат изображения, заданный как вектор символов или скаляр строки указание на стандартное расширение файла. Вызовите imformats
, чтобы видеть список поддерживаемых форматов и их расширений файла.
Пример: 'png'
Типы данных: char | string
idx
Отобразите, чтобы читатьОтобразите, чтобы читать, заданный как целочисленный скаляр или, для файлов GIF, вектора целых чисел. Например, если idx
равняется 3, то imread
возвращает третье изображение в файле. Для файла GIF, если idx
является 1:5
, то imread
возвращает только первые пять кадров. Аргумент idx
поддерживается только для GIF мультиизображений, CUR, ICO и файлов HDF4.
При чтении нескольких кадров из того же файла GIF задайте idx
как вектор кадров или используйте аргумент пары "имя-значение" 'Frames','all'
. Из-за способа, которым структурированы файлы GIF, эти синтаксисы обеспечивают более быструю производительность по сравнению с вызовом imread
в цикле.
Для файлов HDF4 idx
соответствует ссылочному номеру изображения, чтобы читать. Ссылочные номера не обязательно соответствуют порядку изображений в файле. Можно использовать imfinfo
, чтобы совпадать с порядком изображений ссылочному номеру.
Пример 3
Типы данных: double
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Index',5
читает пятое изображение файла TIFF.'Frames'
— Структурируйте, чтобы читать'all'
Кадры, чтобы читать, заданный как пара, разделенная запятой, состоящая из 'Frames'
и положительного целого числа, вектора целых чисел или 'all'
. Например, если вы задаете значение 3, imread
читает третий кадр в файле. Если вы задаете 'all'
, то imread
читает все кадры и возвращает их в порядке, в котором они появляются в файле.
Пример: 'frames',5
'PixelRegion'
Подотобразите, чтобы читать{rows,cols}
Подотобразите, чтобы читать, заданный как пара, разделенная запятой, состоящая из 'PixelRegion'
и массив ячеек формы {rows,cols}
. Вход rows
задает область значений строк, чтобы читать. Вход cols
задает область значений столбцов, чтобы читать. И rows
и cols
должны быть двухэлементными векторами, содержащими индексы на основе 1. Например, 'PixelRegion',{[1 2],[3 4]}
читает подызображение, ограниченное строками 1 и 2 и столбцами 3 и 4 в данных изображения. Если значение 'ReductionLevel'
больше, чем 0, то rows
и cols
являются координатами подызображения.
Пример: 'PixelRegion',{[1 100],[4 500]}
'ReductionLevel'
Сокращение разрешения изображенияСокращение разрешения изображения, заданного как пара, разделенная запятой, состоящая из 'ReductionLevel'
и неотрицательного целого числа. Для уровня сокращения L разрешение изображения уменьшается фактором 2^L. Уровень сокращения ограничивается общим количеством уровней разложения, как задано the'WaveletDecompositionLevels'
полем в выводе функции imfinfo
.
Пример: 'ReductionLevel',5
Типы данных: single | double
'V79Compatible'
Совместимость с MATLAB 7.9 (R2009b) и ранееfalse
(значение по умолчанию) | true
Совместимость с MATLAB 7.9 (R2009b) и ранее, заданный как пара, разделенная запятой, состоящая из 'V79Compatible'
и или true
или false
. Если вы задаете true
, то возвращенное изображение шкалы полутонов или RGB сопоставимо с предыдущими версиями imread
(MATLAB 7.9 (R2009b) и ранее).
Пример: 'V79Compatible',true
Типы данных: логический
BackgroundColor
BackgroundColor 'none'
| целое число | вектор с 3 элементами целых чиселЦвет фона, заданный как 'none'
, целое число или трехэлементный вектор целых чисел. Если BackgroundColor
является 'none'
, то imread
не выполняет составления композита. В противном случае imread
смешивает прозрачные пиксели с цветом фона.
Если входное изображение индексируется, то значение BackgroundColor
должно быть целым числом в области значений [1,P]
, где P
является длиной палитры.
Если входное изображение является шкалой полутонов, то значение BackgroundColor
должно быть целым числом в области значений [0,1]
.
Если входное изображение является RGB, то значение BackgroundColor
должно быть трехэлементным вектором со значениями в области значений [0,1]
.
Значение по умолчанию для BackgroundColor
зависит от присутствия выходного аргумента transparency
и типа изображения:
Если вы запрашиваете выходной аргумент transparency
, то значением по умолчанию BackgroundColor
является 'none'
.
Если вы не запрашиваете transparency
, вывод и файл PNG содержат фрагмент цвета фона, то тот цвет является значением по умолчанию для BackgroundColor
.
Если вы не запрашиваете transparency
, вывод и файл не содержат фрагмент цвета фона, то значением по умолчанию для BackgroundColor
является 1
для индексируемых изображений, 0
для полутоновых изображений и [0 0 0]
для истинного цвета (RGB) изображения.
'Index'
— Отобразите, чтобы читатьОтобразите, чтобы читать, заданный как пара, разделенная запятой, состоящая из 'Index'
и положительного целого числа. Например, если значение Index
равняется 3, то imread
читает третье изображение в файле.
Типы данных: single | double
информация
Информация об изображенииИнформация об изображении, заданном как пара, разделенная запятой, состоящая из 'Info'
и массива структур, возвращенного функцией imfinfo
. Используйте аргумент пары "имя-значение" Info
, чтобы помочь imread
определить местоположение изображений в файле TIFF мультиизображений более быстро.
Типы данных: struct
'PixelRegion'
Контур областиКонтур области, заданный как пара, разделенная запятой, состоящая из 'PixelRegion'
и массив ячеек формы {rows,cols}
. Вход rows
задает область значений строк, чтобы читать. Вход cols
задает область значений столбцов, чтобы читать. rows
и cols
должны быть или двухэлементными или трехэлементными векторами индексов на основе 1. Двухэлементный вектор задает первые и последние строки или столбцы, чтобы читать. Например, 'PixelRegion',{[1 2],[3 4]}
читает область, ограниченную строками 1 и 2 и столбцами 3 и 4 в данных изображения.
Трехэлементный вектор должен быть в форме [start increment stop]
, где start
является первой строкой или столбцом, чтобы читать, increment
является инкрементным значением, и stop
является последней строкой или столбцом, чтобы читать. Этот синтаксис позволяет субдискретизацию изображений. Например, 'PixelRegion',{[1 2 10],[4 3 12]}
читает область, ограниченную строками 1 и 10 и столбцами 4 и 12 и демонстрационными данными из каждых 2 пикселей в вертикальном направлении и каждых 3 пикселей в горизонтальном направлении.
Пример: 'PixelRegion',{[1 100],[4 500]}
Типы данных: cell
A
Данные изображенияДанные изображения, возвращенные как массив.
Если файл содержит полутоновое изображение, то A является m
-by-n
массив.
Если файл содержит индексируемое изображение, то A является m
-by-n
массив индексных значений, соответствующих цвету в том индексе в map
.
Если файл содержит изображение истинного цвета, то A является m
-by-n-by-3
массив.
Если файл является файлом TIFF, содержащим цветные изображения, которые используют цветовое пространство CMYK, то A является m
-by-n-by-4
массив.
Класс A
зависит от формата изображения и битовой глубины данных изображения. Для получения дополнительной информации см. Алгоритмы
map
— Палитраm
-by-3 матрицаПалитра, сопоставленная с индексируемыми данными изображения в A
, возвращенном как m
-by-3 матрица класса double
.
transparency
— Информация о прозрачностиИнформация о прозрачности, возвращенная как матрица. Для файлов PNG transparency
является альфа-каналом, если существующий. Если никакой альфа-канал не присутствует, или если вы задаете аргумент пары "имя-значение" 'BackgroundColor'
, то transparency
пуст. Для CUR и файлов ICO, transparency
является маской AND. Для файлов курсора эта маска иногда содержит единственные полезные данные.
Битовая глубина является количеством битов, используемых, чтобы представлять каждый пиксель изображения.
Битовая глубина вычисляется путем умножения битов на выборку с выборками на пиксель. Таким образом формат, который использует 8 битов для каждого компонента цвета (или выборка) и три выборки на пиксель, имеет немного глубины 24. Иногда объем выборки, сопоставленный с небольшой глубиной, может быть неоднозначным. Например, 48-битная битовая глубина представляет шесть 8-битных выборок, четыре 12-битных выборки или три 16-битных выборки? См. Алгоритмы для получения информации об объеме выборки, чтобы избежать этой неоднозначности.
Для большинства форматов файла изображения imread
использует 8 или меньше битов на цветную плоскость, чтобы сохранить пиксели изображения. Эта таблица приводит класс возвращенной матрицы изображений, A
, для битовых глубин, используемых форматами файлов.
Битовая глубина в файле | Класс массива возвращен |
---|---|
1 бит на пиксель |
|
Плоскость 2 - 8 битов за цвет |
|
9 - 16 бит на пиксель |
Для 16-битного упакованного формата BMP (5-6-5), MATLAB возвращает |
Следующие разделы предоставляют информацию о поддержке определенных форматов, перечисленных в алфавитном порядке именем формата.
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Никакое сжатие | Сжатие RLE | Выходной класс | Примечания |
---|---|---|---|---|
1 бит | ✓ | – | logical | |
4 бита | ✓ | ✓ | uint8 | |
8 битов | ✓ | ✓ | uint8 | |
16 битов | ✓ | – | uint8 | 1 выборка/пиксель |
24 бита | ✓ | – | uint8 | 3 выборки/пиксель |
32 бита | ✓ | – | uint8 | 3 выборки/пиксель (дополнение 1 байта) |
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Никакое сжатие | Сжатие | Выходной класс |
---|---|---|---|
1 бит | ✓ | – | logical |
4 бита | ✓ | – | uint8 |
8 битов | ✓ | – | uint8 |
По умолчанию курсоры Microsoft® Windows® являются 32 32 пикселями. Поскольку указатели MATLAB должны быть 16 16, вы можете должны быть масштабировать свое изображение. Если у вас есть Image Processing Toolbox™, можно использовать функцию imresize
.
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Никакое сжатие | Сжатие | Выходной класс |
---|---|---|---|
1 бит | ✓ | – | logical |
2 бита к 8 битам | ✓ | – | uint8 |
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Растровое изображение с палитрой | Растровое изображение без палитры | Выходной класс | Примечания |
---|---|---|---|---|
8 битов | ✓ | ✓ | uint8 | |
24 бита | – | ✓ | uint8 | 3 выборки/пиксель |
Смотрите CUR — файл курсора
imread
читает любое базовое изображение JPEG, а также изображения JPEG с некоторыми обычно используемыми расширениями. Для получения информации о поддержке файла JPEG 2000 смотрите JPEG 2000.
Поддерживаемые биты на выборку | Сжатие с потерями | LosslessCompression | Выходной класс | Примечания |
---|---|---|---|---|
8 битов | ✓ | ✓ | uint8 | Шкала полутонов или RGB |
12 битов | ✓ | ✓ | uint16 | Шкала полутонов или RGB |
16 битов | – | ✓ | uint16 | Шкала полутонов |
Для получения информации о файлах JPEG смотрите JPEG.
Индексируемые изображения JPEG 2000 не поддержаны. Только JP2 совместимые цветовые пространства поддерживаются для файлов JP2/JPX. По умолчанию все каналы изображений возвращены в порядке, они хранятся в файле.
Поддерживаемые биты на выборку | Сжатие с потерями | LosslessCompression | Выходной класс | Примечания |
---|---|---|---|---|
1 бит | ✓ | ✓ | logical | Шкала полутонов только |
2 бита к 8 битам | ✓ | ✓ | uint8 или int8 | Шкала полутонов или RGB |
9 битов к 16 битам | ✓ | ✓ | uint16 или int16 | Шкала полутонов или RGB |
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Необработанный двоичный файл | ASCII закодированная (плоскость) | Выходной класс |
---|---|---|---|
1 бит | ✓ | ✓ | logical |
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Выходной класс | Примечания |
---|---|---|
1 бит | logical | Шкала полутонов только |
8 битов | uint8 | Шкала полутонов или индексированный |
24 бита | uint8 | Rgb Три 8-битных выборки/пиксель |
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Необработанный двоичный файл | ASCII закодированная (плоскость) | Выходной класс | Примечания |
---|---|---|---|---|
8 битов | ✓ | – | uint8 | |
16 битов | ✓ | – | uint16 | |
Произвольный | – | ✓ | 1-битный к 8-битному: uint8 9-битный к 16-битному: uint16 | Значения масштабируются |
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Выходной класс | Примечания |
---|---|---|
1 бит | logical | Шкала полутонов |
2 бита | uint8 | Шкала полутонов |
4 бита | uint8 | Шкала полутонов |
8 битов | uint8 | Шкала полутонов или индексируемый |
16 битов | uint16 | Шкала полутонов или индексируемый |
24 бита | uint8 | Rgb Три 8-битных выборки/пиксель. |
48 битов | uint16 | Rgb Три 16-битных выборки/пиксель. |
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Необработанный двоичный файл | ASCII закодированная (плоскость) | Выходной класс |
---|---|---|---|
До 16 битов | ✓ | – | uint8 |
Произвольный | – | ✓ |
Эта таблица приводит поддерживаемые битовые глубины и тип данных массива данных выходного изображения.
Поддерживаемые битовые глубины | Выходной класс | Примечания |
---|---|---|
1 бит | logical | Битовый массив |
8 битов | uint8 | Индексируемый |
24 бита | uint8 | Rgb Три 8-битных выборки/пиксель |
32 бита | uint8 | RGB с альфой Четыре 8-битных выборки/пиксель |
imread
читает большинство изображений, поддержанных спецификацией TIFF или LibTIFF. Функция imread
поддерживает эти возможности TIFF:
Любое количество выборок на пиксель
Группа 3 и 4 CCITT FAX, Packbits, JPEG, LZW, Выкачивает, сжатие ThunderScan и несжатые изображения
Логический, полутоновый, индексированный цвет, истинный цвет и гиперспектральные изображения
RGB, CMYK, CIELAB, цветовые пространства ICCLAB. Если цветное изображение использует цветовое пространство CMYK, A
является m
-by-n-by-4
массив. Чтобы определить, какое цветовое пространство используется, используйте imfinfo
, чтобы получить информацию о графическом файле и посмотреть на значение поля PhotometricInterpretation
. Если файл содержит данные о цвете CIELAB, imread
преобразовывает его в ICCLAB прежде, чем принести его в рабочее пространство MATLAB. Это преобразование необходимо, потому что 8-битный или 16-битный TIFF, CIELAB-закодированные значения используют смесь типов данных без знака и со знаком, которые не могут быть представлены как один массив MATLAB.
Данные организованы в мозаики или строки развертки
imread
читает и преобразовывает изображения TIFF можно следующим образом:
Изображения YCbCr преобразованы в цветовое пространство RGB.
Все полутоновые изображения читаются как будто черный = 0
, белый = самое большое значение.
1-битные изображения возвращены как класс logical
.
16-битные изображения с плавающей точкой возвращены как класс single
.
Изображения CIELab преобразованы в цветовое пространство ICCLab.
Для получения информации об авторском праве откройте файл libtiffcopyright.txt
.
Эта таблица приводит поддерживаемые битовые глубины, сжатие и выходные классы для файлов XWD.
Поддерживаемые битовые глубины | ZPixmaps | XYBitmaps | XYPixmaps | Выходной класс |
---|---|---|---|---|
1 бит | ✓ | – | ✓ | logical |
8 битов | ✓ | – | – | uint8 |
Указания и ограничения по применению:
Чтение поддержек 8-битных изображений JPEG только. Входной параметр filename
должен быть допустимым абсолютным путем или относительным путем.
Эта функция генерирует код, который использует предварительно скомпилированную, специфичную для платформы разделяемую библиотеку (Image Processing Toolbox).
В блоке MATLAB function входной параметр filename
должен быть постоянным временем компиляции.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.