Преобразование графики изображения или типа данных

Преобразование между типами данных изменяет интерпретацию данных изображения. Если вы хотите, чтобы полученный массив был правильно интерпретирован как данные изображения, пересчитайте или смещите данные при преобразовании. (Для получения дополнительной информации о смещениях см. более ранние разделы «Типы изображений и индексированные изображения».)

Для некоторых операций полезно преобразовать изображение в другой тип изображения. Например, чтобы фильтровать цветное изображение, которое хранится в виде индексированного изображения, сначала преобразуйте его в формат RGB. Чтобы сделать это эффективно, используйте ind2rgb функция. Когда вы применяете фильтр к изображению RGB, значения интенсивности в изображении фильтруются, как это уместно. Если вы пытаетесь фильтровать индексированное изображение, фильтр применяется к индексам в индексированной матрице изображений, и результаты могут не быть значимыми.

Вы также можете выполнить определенные преобразования только с помощью MATLAB® синтаксис. Например, чтобы преобразовать полутоновое изображение в RGB, объедините три копии исходной матрицы по третьей размерности:

RGB = cat(3,I,I,I);

Получившееся изображение RGB имеет идентичные матрицы для красной, зеленой и синей плоскостей, поэтому изображение выглядит как оттенки серого цвета.

Изменение графического формата изображения, возможно, для совместимости с другим программным продуктом, очень просто. Для примера, чтобы преобразовать изображение из BMP в PNG, загрузите BMP с помощью imread, установите тип данных равным uint8, uint16, или double, а затем сохраните изображение с помощью imwrite, с 'PNG' задается как целевой формат. Посмотрите imread и imwrite для спецификы того, какие битовые глубины поддерживаются для различных графических форматов, и для того, как задать тип формата при записи изображения в файл.