hdfdf24

Шлюз к 24-битному интерфейсу растрового изображения (DF24) HDF

Синтаксис

[out1,...,outN] = hdfdf24(funcstr,input1,...,inputN)

Описание

hdfdf24 является MATLAB® шлюз к 24-разрядному интерфейсу растрового изображения HDF.

[out1,...,outN] = hdfdf24(funcstr,input1,...,inputN) возвращает один или несколько выходы, соответствующих функции DF24 в библиотеке HDF, заданной как functstr.

Существует соответствие один к одному между DF24 функциями в библиотеке HDF и допустимыми значениями для funcstr. Для примера, hdfdf24('lastref') соответствует вызову библиотеки C DF24lastref().

Функции записи

Функции записи создают наборы растровых изображений и хранят их в новых файлах или добавляют к существующим файлам.

Значение funcstrСинтаксис функцииОписание
'addimage'

status = hdfdf24('addimage',filename,RGB)

Добавление 24-битного растрового изображения к файлу.
'putimage'

status = hdfdf24('putimage',filename,RGB)

Запись 24-битного растрового изображения в файл путем перезаписи всех существующих данных.
'setcompress'

status = hdfdf24('setcompress',compress_type,...)

Устанавливает метод сжатия для следующего растрового изображения, записанного в файл. compress_type можно 'none', 'rle', 'jpeg', или 'imcomp'. Если compress_type является 'jpeg', затем необходимо задать два дополнительных параметра: quality (скаляр от 0 до 100) и force_baseline (0 или 1). Другие типы сжатия не имеют дополнительных параметров.
'setdims'

status = hdfdf24('setdims',width,height)

Устанавливает размерности для следующего растрового изображения, записанного в файл.
'setil'

status = hdfdf24('setil',interlace)

Устанавливает формат чередования следующего растрового изображения, записанного в файл. interlace можно 'pixel', 'line', или 'component'.
'lastref'

ref = hdfdf24('lastref')

Сообщает последний ссылочный номер, присвоенный 24-битному растровому изображению.

Чтение функций

Функции read определяют размерности и формат чередования набора изображений, считывают фактические данные изображений и обеспечивают последовательный или случайный доступ для чтения к любому набору растровых изображений.

Значение funcstrСинтаксис функцииОписание
'getdims'

[width,height,interlace,status] = hdfdf24('getdims',filename)

Извлекает размерности перед чтением следующего растрового изображения. interlace можно 'pixel', 'line', или 'component'.
'getimage'

[RGB,status] = hdfdf24('getimage',filename)

Считывает следующее 24-битное растровое изображение.
'reqil'

status = hdfdf24('reqil',interlace)

Задает формат чередования перед чтением следующего растрового изображения. interlace можно 'pixel', 'line', или 'component'.
'readref'

status = hdfdf24('readref',filename,ref)

Считывает 24-битное растровое изображение с заданным растровым номером.
'restart'

status = hdfdf24('restart')

Возвращается к первому 24-битному растровому изображению в файле.
'nimages'

num_images = hdfdf24('nimages',filename)

Сообщает количество 24-битных растровых изображений в файле.

Входные/выходные аргументы

A status или идентификатор выхода -1 указывает, что операция не выполнена.

В HDF используется упорядоченное расположение элементов в стиле C, при котором элементы по последней размерности изменяются быстрее всего. MATLAB использует упорядоченное расположение в стиле ФОРТРАН, при котором элементы по первой размерности изменяются быстрее всего. hdfdf24 не преобразует автоматически из упорядочивания в стиле C в упорядоченное расположение в стиле MATLAB, что означает, что при использовании массивов изображений необходимо перестановить hdfdf24 чтение или запись из файлов HDF. Точное сочетание зависит от формата чередования, заданного, для примера hdfdf24('setil',...). Следующие вызовы для permute преобразует HDF-массивы в массивы MATLAB в соответствии с заданным форматом чередования.

RGB = permute(RGB,[3 2 1]);  
'pixel' чередование
RGB = permute(RGB,[3 1 2]); 
'line' чередование
RGB = permute(RGB,[2 1 3]);  
'component' чередование

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте