Иллюстрированный самоучитель по MatLab

Специализированные файлы

Приведенные ниже функции относятся к некоторым специализированным файлам:

  • М = dlmread(filename, delimiter) – считывает данные из файла filename с ASCII-разделителем, используя разделитель delimiter, в массив М. Используйте '\t', i чтобы определить в качестве разделителя символ табуляции;
  • М = dlmread(filename.delimiter,г.с) – считывает данные из файла filename с ASCII-разделителем, используя разделитель delimiter, в массив М, начиная со смещения г (по строкам) и с (по столбцам). Параметры r и с отсчитываются начиная с нуля, так что г=0, с=0 соответствует первому значению в файле;
  • М = dlmread(filename, delimiter, r, с, range) – импортирует индексированный или именованный диапазон данных с разделителями в формате ASCII. Для использования диапазона ячеек нужно определить параметр range в виде range = [ВерхняяСтрока. ЛевыйСтолбец. НижняяСтрока, ПравыйСтолбец].

Аргументы функции dlmread следующие:

  • delimiter – символ, отделяющий отдельные матричные элементы в электронной таблице формата ASCII;
  • (,) – разделитель по умолчанию;
  • r, с – ячейка электронной таблицы, из которой берутся матричные элементы, соответствующие элементам в верхнем левом углу таблицы;
  • range – вектор, определяющий диапазон ячеек электронной таблицы.

Команда dlmwrite преобразует матрицу MATLAB в файл с ASCII-разделителями, читаемый программами электронных таблиц:

  • dlmwrite (filename. A .delimiter) – записывает матрицу А в верхнюю левую ячейку электронной таблицы filename, используя разделитель delimiter для отделения элементов матрицы. Используйте ' U' для создания файла с элементами, разделенными табуляцией. Все элементы со значением 0 опускаются. Например, массив [102] появится в файле в виде ' 1., 2' (если разделителем является запятая):
  • dlmwrite(filename,A,delimiter, r,с) – записывает матрицу А в файл filename, начиная с ячейки, определенной r и с, используя разделитель delimiter;
  • info=imfinfo(filename.fmt) – возвращает структуру, поля которой содержат информацию об изображении в графическом файле. Аргумент filename – строка, определяющая имя графического файла, fmt – строка, которая определяет формат файла. Файл должен находиться в текущей директории или в директории, указанной в пути MATLAB. Если imflnfo не может найти файл с именем filename, она ищет файл с именем filename.fmt.

В табл. 19.5 показаны возможные значения для аргумента fmt.

Таблица 19.5. Поддерживаемые графические форматы и их обозначения.

Формат Тип файла
'bmp' Windows Bitmap (BMP)
'hdf ' Hierarchical Data Format (HDF)
'jpg' или 'jpeg' Joint Photographic Experts Group (JPEG)
'pcx' Windows Paintbrush (PCX)
'tif 'или 'tiff ' Tagged Image File Format (TIFF)
'xwd' X Windows Dump (XWD)

Если filename – TIFF- или HDF-файл, содержащий более одного изображения, то info представляет собой массив структур с отдельным элементом (т. е. с индивидуальной структурой) для каждого изображения в файле. Например, info(3) будет в таком случае содержать информацию о третьем изображении в файле. Множество полей в info зависит от конкретного файла и его формата. Однако первые девять полей всегда одинаковы. В табл. 19.6 перечислены эти поля и описаны их значения.

Таблица 19.6. Поля информационной структуры и их значения.

Поле Значение
Filename Строка, содержащая имя файла; если файл находится не в текущей директории, строка содержит полный путь к файлу
FileModDate Строка, содержащая дату последнего изменения файла
FileSize Целое число, указывающее размер файла в байтах
Format Строка, содержащая формат файла, заданный параметром fmt; для JPEG и TIFF-файлов возвращается значение, состоящее из трех символов
FormatVersion Строка или число, описывающее версию формата
Width Целое число, указывающее ширину изображения в пикселях
Height Целое число, указывающее высоту изображения в пикселях
BitDepth Целое число, указывающее число битов на пиксель
ColorType Строка, описывающая тип изображения: 'truecolor' для RGB изображения, 'grayscale' для полутонового изображения или 'indexed' для изображения с индексированными цветами или truecolor (RGB) изображение класса uint8, команда imwrite записывает фактические значения массива в файл.
  • info = imfinfo(filename) – пытается определить формат файла по содержимому. Пример:
>> info = irrifinfo('C:\выставка\Интернет.bmp')
info =
Filename: 'C:\выставка\Интернет.bmp'
FileModDate: '04-Jan-1999 22:35:56'
FileSize: 481078
Format: 'bmp'
FormatVersion: 'Version 3 (Microsoft Windows 3.x)'
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.