Эффективный алгоритм дискретного косинусного преобразования четной длины

ЭФФЕКТИВНЫЙ АЛГОРИТМ ДИСКРЕТНОГО КОСИНУСНОГО ПРЕОБРАЗОВАНИЯ ЧЕТНОЙ ДЛИНЫ

М А. Чичева Институт систем обработки изображении РАН

Введение

Косинусное преобразование является одним из основных дискретных преобразований, используемых в цифровой обработке изображений. Так, на нем основаны известные методы кодирования изображений (например, JPEG [1J); методы восстановления и фильтрации (например, метод гибридного спектрально-рекуррентного восстановления изображений [2]), методы извлечения признаков [3]. Такое широкое применение дискретного косинусного преобразования (ДКП) обусловлено целым рядом причин.

Во-первых, базисные функции ДКП хорошо аппроксимируют собственные функции преобразования Карунена-Лоэва для широкого класса стационарных случайных процессов, то есть позволяют описывать сигнал с заданной точностью минимальным числом компонент;

во-вторых, ДКП входит как составная часть в некоторые эффективные алгоритмы дискретного преобразования Фурье (ДПФ) (например, алгоритм Капорина-Уэнга [4]);

в-третьих, ДКП обладает рядом других полезных свойств, позволяющих, например, избежать краевых эффектов при блочном кодировании изображений.

Хорошо известен способ вычисления ДКП, основанный на его сведении к ДПФ вещественной последовательности двойной длины [3] или при использовании совмещенных алгоритмов [5] к ДПФ комплексной последовательности той же длины.

В начале 90-х годов появился ряд независимых публикаций [6, 7] о сведении ДКП нечетной длины к ДПФ вещественной последовательности той же, а не двойной длины. В основе метода лежит следующая идея. Значения базисных функций косинусного преобразования представляют вещественную часть примитивных корней из единицы степени 4N. При нечетной длине преобразования числа 4 и N являются взаимно простыми, это означает, что при вычислении вспомогательного ДПФ может быть использована декомпозиция Гуда-Томаса [8, 9]. Вспомогательная последовательность, формируемая путем перестановки отсчетов исходной последовательности имеет только N ненулевых значений. Для перехода от спектра Фурье такой последовательности к косинусному спектру необходимо выполнить дополнительные умножения на степени мнимой единицы /', которые в стандартном комплексном представлении являются тривиальными.

В слу чае четной длины преобразования Декомпозиция Гуда-Томаса вспомогательного ДПФ не может быть использована, так как у пары чисел 4 и N появляется общий делитель. В данной работе пред-

ложен новый алгоритм вычисления ДКП четной длины. Он базируется на учете свойств симметрии вспомогательной последовательности двойной длины, формируемой как четное продолжение исходной последовательности. Вычисление косинусного спектра исходной последовательности сводится к вычислению преобразования Фурье вещественного сигнала длины N. составленного из отсчетов вспомогательной последовательности с четными индексами, 2N дополнительным умножениям и N сложениям.

1. Традиционный способ вычисления ДКП

Описанный в [ 31 быстрый алгоритм сводит

ДКП

х{т) =

к вычислению ДПФ вещественной последовательности длины 2N:

х(т) =

1 + « *

п=0

2 Л' 1

где со = ехр{|^-}, у(к) - вещественная 2Л-псриоди-

ческая последовательность, полученная четным продолжением х(п):

* п "РИ •

И2Л - к -1) при N <,к < 2АГ - Г 1 '

Пусть вычисление спектра Фурье такой последовательности выполняется за Л/*(2Л') операций

вещественного умножения и А" (2Л;) операций сложения. Тогда число операций умножения ЩЫ) и сложения А (Л) при вычислении ДКП посредством такого алгоритма запишется в виде:

Л/(Л') = И? (2Л') + З.У ,

А(У) = А * (2 А') + 3.V

2. Новый алгоритм ДКП

Пусть вещественная последовательность у{к) длины 2Л' получена четным продолжением исходной последовательности х(п) по формуле (3). и ДКП (1) связано с ДПФ соотношением (2). Для ДПФ

>'И = zWv

U0

длины 2М проведем один шаг стандартной декомпозиции Кули-Тьюки:

У

* =О

Из (3) следует, что последовательности отсчетов у{2к) и у{2к + 1) с четными и нечетными индексами связаны между собой соотношением:

у

при / = N - к - 1. Пусть

У(т) = ЕЯ2ф2Ъя,

А=0

тогда

+ 1У*" = ^ХуСг/уИ'^-^ =

= лГ"£.у

/ = 0

Из (6) и (7) следует, что:

У

Тогда равенство (2) с учетом (6), (8) примет вид:

х(т) = ^сот'2 (у{т)+б)ту{т)У Л^у(т)+<от12у{т^

= , <т<\!-\

где у{т) - спектр вещественного сигнала длины N.

Из соотношения (9) следует, что при выполнении комплексных умножений на (от'7 достаточно вычислять только действительную часть произведения, что потребует двух умножений и одного сложения на отсчет:

Яе{(а + + /и)} = ац - Ьу .

Таким образом, ДКП сведено к ДПФ вещественного сигнала той же длины, 2ЛГ дополнительным умножениям и N сложениям. Обобщенная блок-схе-ма изложенного алгоритма приведена на рис. 1.

Мультипликативная и аддитивная сложности вычисления ДКП таким способом равны:

ЛфО = + 2Л;, А

3. Сравнительный анализ вычислительной сложности алгоритмов

Вычислительная сложность описанных алгоритмов ДКП напрямую связана со сложностью вспомогательного алгоритма ДПФ.

Рис. 1. Обобщенная блок-схема алгоритма ДКП

При четной длине преобразования наиболее широкое распространение получили алгоритмы ДПФ длины Л'" = 2* с декомпозицией Кули-Тьюки (см., например, [3. 5, 10|). Кроме того хорошо известен совмещенный способ вычисления ДПФ вещественного сигнала, основанный на его редукции к ДПФ комплексного сигнала половинной длины [5].

Исследование сложности описанных алгоритмов проводилось в предположении, что в качестве вспомогательного ДПФ был использован совмещенный алгоритм с последующей декомпозицией комплексного ДПФ по основанию 2 или 4.

В таблице 1 приведены оценки вычислительной сложности алгоритмов ДПФ с декомпозицией по основанию 2 и 4 [5,10].

Таблица 1.

Сложности алгоритмов При декомпозиции:

- по основанию 2

ДПФ комплексного сигнала M$(N) < Щ- log2 N -Щ-

Acf(N) < log2 N - f

ДПФ вещественного сигнала M?(N)< ^ log

4?(У) < ф lcg2 N - N

- по основанию 4

ДПФ комплексного сигнала < if. log2 Л' - ф

Acf(N) < flog2;V-f

ДПФ вещественного сигнала M?(N)< log2 'V - тг

Ai(N) < Щг- log2 N -Щ-

В таблице 2 даются сложности традиционного и предложенного алгоритмов ДКП: полученные на основании соотношений (4) и (10).

Таблица 2.

Сложности алгоритмов При декомпозици вспомогательного ДПФ:

- по основанию 2

Традиционный алгоритм ДКП M(N) < if 1сд2 N + f-

A(N) < ^1од2 /V + Ш-

Предложенный алгоритм ДКП M(N) й ¿f 1сд2 N + f

A(N) < ~ 1од2 N

- по основанию 4

Традиционный алгоритм ДКП M(N) < М. 1од2 N - Ж

Л(Л0 < ^ 1од2 N + ЗЖ

Предложенный алгоритм ДКП М(,V) < f 1од2 N + ^

A(N) < ^ 1од2 N + ¿ff

Таблица 3 содержит численные данные о количестве операций, необходимых для вычисления ДКП при использовании вспомогательного алгоритма ДПФ с декомпозицией по основанию 2. Отношение суммарной арифметической сложности вычисления ДКП традиционным способом к сложности предложенного алгоритма показывает, что разработанный алгоритм требует в 2- 2,4 раза меньше арифметических операций.

Таблица 3.

Стандартный Предложенный Отноше-

алгоритм ДКП алгоритм ДКП ние сум-

«V операций операций операций операций марной

умноже- сложения умноже- сложения слож-

ния ния ности

8 63 135 31 51 2,41

16 147 323 71 127 2,37

32 339 755 163 307 2,33

64 771 1731 371 723 2,29

128 1731 3907 835 1667 2,25

Под удельной арифметической сложностью алгоритмов будем понимать будем понимать величину

Лг

где .ЩМ), А(К) - количество операций умножения и сложения, необходимых для выполнения ДКП, у -коэффициент приведения времени выполнения операции сложения ко времени выполнения операции умножения, на современных компьютерах

На рис. 2 даны зависимости удельной арифметической сложности ДКП ГГ(Л') от длины Лг преобразуемого сигнала.

Заключение

В работе предложен новый эффективный алгоритм дискретного косинусного преобразования чет-

ной длины, основанный на его сведении к преобразованию Фурье вещественной последовательности той же длины. Предложенный алгоритм требует в 2 - 2,4 раза меньше арифметических операций, чем традиционный способ вычисления ДКП. Предложенная методика полностью распространяется на случай двумерного ДКП.

а Стандартный алгоритм ДКП

Предложенный алгоритм ДКП

О

8 16 32 64

N

Рис. 2. Сравнение сложности традиционного и предложенного алгоритма ДКП

Благодарность

Работа выполнена при поддержке Российского фонда фундаментальных исследований

Литература

1. Wallace G. К. The JPEG still picture compression standard. //Communications of the ACM. Vol. 34, No 4, pp. 31-44, 1991.

2. Виттих В. А., Сергеев В. В., Сойфер В. А. Обработка изображений в автоматизированных системах научных исследований. - М. Наука. 1982. -214с.

3. Ахмед Н., Рао К. Р. Ортогональные преобразования при обработке цифровых сигналов. Пер. с англ. -М: Связь, 1980.-248 с.

4. Капорин И. Е. Новый алгоритм быстрого преобра-

зования Фурье. //Журнал вычислительной математики и математической физики, т. 20. № 4. с. 1054-1058, 1980.

5. Ярославский Л. П. Введение в цифровую обработ-

ку изображений. - М.: Советское радио. 1979. -312с.

6. Heideinan Michael Т. Compulation of an odd-length DCT from a real-valued DFT of the same length // IEEE Trans. Signal Process.. 40, N1. 1992. pp 54-61.

7. Чернов B.M. Быстрый алгоритм дискрегного косинусного преобразования нечетной длины // Автомат. ивычисл. техн.. N3. 1994, с.62-70.

8.Good I J.. The Interaction Algorithm and Practical Fourier Analysis//J. Royal Statist. Soc., Ser. В., No 20, pp. 361-375, 1958

9. Thomas L. H., Using a Computer to Solve Problems In Physics, in Applications and of Digital Computer // Ginn and Co., Boston, Mass. 1963

10. Власенко В.А.. Лаппа Ю.М., Ярославский Л.П. Методы синтеза быстрых алгоритмов свертки и спектрального анатиза сигналов- М : Наука. 1990 -160 с.