impyramid

Уменьшение и расширение пирамиды изображений

Синтаксис

Описание

пример

B = impyramid(A,direction) вычисляет уменьшение или расширение Гауссовой пирамиды A одним уровнем. direction определяет, impyramid ли выполняет сокращение или расширение.

Примеры

свернуть все

Чтение изображения в рабочую область.

I = imread('cameraman.tif');

Выполните ряд сокращений. Первый вызов уменьшает оригинальное изображение. Другие вызовы к импирамидам используют ранее уменьшенное изображение.

I1 = impyramid(I, 'reduce');
I2 = impyramid(I1, 'reduce');
I3 = impyramid(I2, 'reduce');

Просмотрите оригинальное изображение и уменьшенные версии.

figure, imshow(I)

Figure contains an axes. The axes contains an object of type image.

figure, imshow(I1)

Figure contains an axes. The axes contains an object of type image.

figure, imshow(I2)

Figure contains an axes. The axes contains an object of type image.

figure, imshow(I3)

Figure contains an axes. The axes contains an object of type image.

Входные параметры

свернуть все

Изображение уменьшается или расширяется, задается как числовой или логический массив.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical

Сокращение или расширение, заданное как одно из следующих значений:

ЗначениеОписание
'reduce'Верните изображение, меньше, чем оригинальное изображение.
'expand'Верните изображение, больше оригинального изображения.

Типы данных: char | string

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

свернуть все

Уменьшенное или расширенное изображение, возвращенное как числовой или логический массив, тот же класс, что и A.

Алгоритмы

Если A m -by - n и direction является 'reduce', размер B является ceil(M/2)-by- ceil(N/2). Если direction является 'expand', размер B является (2*M-1)-by- (2*N-1).

Сокращение и расширение происходит только в первых двух размерностях. Для примера, если A 100 на 100 на 3 и direction является 'reduce', затем B 50 на 50 на 3.

impyramid использует ядро, указанное на странице 533 бумаги Burt и Adelson:

w=[14a2,14,a,14,14a2], где a = 0.375. Параметр a установлен в 0.375 так что эквивалентная функция взвешивания близка к гауссовой форме. В сложение веса можно легко применять с помощью арифметики с фиксированной точкой.

Ссылки

[1] Burt and Adelson, «The Laplacian Pyramid as a Compact Image Code», IEEE Transactions on Communications, Vol. COM-31, no. 4, April 1983, pp. 532-540.

[2] Burt, «Быстрые преобразования фильтра для обработки изображений», Компьютерная графика и обработка изображений, Vol. 16, 1981, pp. 20-51

Расширенные возможности

..

См. также

Введенный в R2007b