Считайте изображение из графического файла
задает параметры формата с помощью одного или нескольких аргументов пары "имя-значение", в дополнение к любому из входных параметров в предыдущих синтаксисах.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
isempty.
Считайте определенную область пикселей демонстрационного изображения, 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® path | Задайте имя файла в Пример:
| ||||||||
Файл в папке | Если файл не находится в текущей папке или в папке на пути 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
имя аргумента и 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
— Информация об изображенииИнформация об изображении в виде разделенной запятой пары, состоящей из '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
- n
массив.
Если файл содержит индексируемое изображение, то A является m
- n
массив значений индекса, соответствующих цвету в том индексе в map
.
Если файл содержит изображение истинного цвета, то A является m
- n
- 3 массива.
Если файл является файлом TIFF, содержащим цветные изображения, которые используют цветовое пространство CMYK, то A является m
- n
- 4 массива.
Класс A
зависит от формата изображения и битовой глубины данных изображения. Для получения дополнительной информации см. Алгоритмы
map
палитраm
- 3 матрицыПалитра сопоставлена с индексируемыми данными изображения в A
, возвращенный как m
- 3 матрицы класса double
.
transparency
— Информация о прозрачностиИнформация о прозрачности, возвращенная как матрица. Для файлов PNG, transparency
альфа-канал, если существующий. Если никакой альфа-канал не присутствует, или если вы задаете 'BackgroundColor'
аргумент пары "имя-значение", затем transparency
isempty. Для 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, вы можете должны быть масштабировать свое изображение. Можно использовать 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-битных выборки/пиксель |
ОСНОВАННЫЙ НА TIFF формат файла изображения. imread
поддержки читая несжатые и сжатые изображения, включая изображения со сжатием JPEG2000. Для получения дополнительной информации смотрите TIFF — теговый формат графических файлов.
imread
чтения большинство изображений, поддержанных спецификацией TIFF или LibTIFF. imread
функционируйте поддерживает эти возможности TIFF:
Любое количество отсчетов на пиксель
Группа 3 и 4 CCITT FAX, Packbits, JPEG, LZW, Выкачивает, сжатие ThunderScan и несжатые изображения
Логический, полутоновый, индексированный цвет, истинный цвет и гиперспектральные изображения
RGB, CMYK, CIELAB, цветовые пространства ICCLAB. Если цветное изображение использует цветовое пространство CMYK, A
m
- n
- 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).
Указания и ограничения по применению:
Чтение поддержек 8-битных изображений JPEG только. Входной параметр filename
должен быть допустимый абсолютный путь или относительный путь.
Эта функция генерирует код, который использует предварительно скомпилированную, специфичную для платформы разделяемую библиотеку (Image Processing Toolbox).
backgroundPool
или ускорьте код с Parallel Computing Toolbox™ ThreadPool
.Указания и ограничения по применению:
imread
не поддерживает Иерархический формат данных (HDF) чтения, SVS или файлы TIFF, когда вы запускаете imread
в фоновом режиме использование backgroundPool
или Parallel Computing Toolbox™ Threadpool
.
Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.
fread
| image
| imfinfo
| imformats
| imwrite
| ind2rgb
| tiffreadVolume
(Image Processing Toolbox)
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.