Научная статья на тему 'Лифтинг-архитектура вейвлет-преобразования для стандарта JPEG 2000. Обзор'

Лифтинг-архитектура вейвлет-преобразования для стандарта JPEG 2000. Обзор Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
407
60
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Хаханова Ирина Витальевна

Предлагаются модели, метод и аппаратурная реализация лифтинг-архитектуры для вейвлет-преобразования, которые ориентированы на поддержку стандарта JPEG 2000, используемого при передаче информации, для печати и сканирования изображений, в цифровой фотографии. Описываются низкочастотные и высокочастотные фильтры для выполнения преобразований по стандарту JPEG2000. Представлены структурные решения аппаратурного сжатия изображений на основе лифтинговых схем, как вейвлетов второго поколения и архитектуры аппаратной реализации: level-by-level, block-based, line-based. Проводится сравнительный анализ полученных результатов с известными из литературных источников аналогами.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Lifting Architecture of Vawelet Transforming for IEEE JPEG 2000 Standard. Review

Models, Methods, Algorithms and hardware implementing Lifting Architecture of Vawelet Transforming for IEEE JPEG 2000 Standard is offered. Development is oriented on information transferring, for printing and scanning of images and in digital photographie as well. Filters analysis of highand low level frequency are given. Structural solutions of image hardware compression based on lifting scheme and hardware realisation of architecture evel-by-level, block-based, line-based are represented. The speed up of Hardware Lifting Architecture of Vawelet Transformingis is better in 10 times than software implementation.

Текст научной работы на тему «Лифтинг-архитектура вейвлет-преобразования для стандарта JPEG 2000. Обзор»

УДК 581.326:519.613 И.В. ХАХАНОВА

ЛИФТИНГ-АРХИТЕКТУРА ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЯ ДЛЯ СТАНДАРТА JPEG 2000. ОБЗОР

Предлагаются модели, метод и аппаратурная реализация лифтинг-архитектуры для вейвлет-преобразования, которые ориентированы на поддержку стандарта JPEG 2000, используемого при передаче информации, для печати и сканирования изображений, в цифровой фотографии. Описываются низкочастотные и высокочастотные фильтры для выполнения преобразований по стандарту JPEG2000. Представлены структурные решения аппаратурного сжатия изображений на основе лифтинговых схем, как вейвлетов второго поколения и архитектуры аппаратной реализации: level-by-level, block-based, line-based. Проводится сравнительный анализ полученных результатов с известными из литературных источников аналогами.

Актуальность

Цель - существенное повышение быстродействия вейвлет-преобразований второго поколения путем разработки специализированной (ad hoc) лифтинг-архитектуры аппаратной реализации для стандарта JPEG 2000.

Вейвлет-метод сжатия видеоинформации является усовершенствованием алгоритма JPEG и может быть использован в Internet, при передаче информации, для печати и сканирования изображений, в цифровой фотографии. Уменьшение времени разработки проекта за счет использования специальных маршрутов проектирования существенно снижает time-to-market, а значит, повышает конкурентоспособность изделия и прибыль от его продаж.

Для достижения поставленной цели необходимо решить задачи: 1. Анализ моделей представления изображений в цифровой технике и методы их преобразования. 2. Разработка структуры аппаратной реализации вейвлет-преобразований, использующих лифтинговые схемы. 3. Создание алгоритмов управления для вейвлет-преобразований. 4. Реализация операционного устройства, выполняющего функции сжатия видеоинформации. 5. Тестирование и верификация цифровой системы, сравнительный анализ быстродействия и оценка погрешости вычислений.

1. Анализ моделей представления изображений в цифровой технике и

методы их преобразования

Наше зрение устроено так, что мы сосредотачиваем свое внимание на существенных деталях изображения, отсекая ненужное. Используя вейвлет-преобразование, мы можем сгладить или выделить некоторые детали изображения, увеличить или уменьшить его и даже повысить его качество. Идеи теории вейвлетов появились в начале прошлого века (1910 год), когда А.Хаар опубликовал полную ортонормальную систему базисных функций с локальной областью определения (вейвлеты Хаара). Затем появились публикации А. Гроссмана и Ж.Морле в литературе по цифровой обработке и анализу сейсмических сигналов. Таким образом, исторические корни вейвлет-преобразований значительно старше самого слова wavelet и относятся ко времени появления квадратурных зеркальных фильтров [1, 2]. В настоящее время вейвлеты широко применяются для фильтрации и предварительной обработки данных, распознавания образов, решения задач сжатия и обработки изображений.

В математическом анализе вейвлет определяется как преобразование и растяжение фиксированной функции, которая используется для анализа и представления (аппроксимации) других функций. Вейвлеты могут быть ортогональными, полуортогональными, биорто-тональными. Для преобразований используются биортогональные вейвлеты. Это позволяет получать симметричные вейвлеты и линейные фильтры, ориентированные на решение задач сжатия данных (Data Compression).

Иллюстрацией практической значимости преобразований для последующего сокращения объема информации может служить следующий пример. Пусть исходное изображение коррелировано по строкам или столбцам. Необходимо использовать преобразование, которое удаляет избыточность. Значения изображения представлены парами в декартовой системе координат (х,у), где две соседние точки расположены вдоль линии, проведенной под углом в 45 градусов (рис. 1). Необходимо найти такое преобразование, которое смогло бы повернуть "облако" точек так, чтобы они были расположены вдоль одной из координатных осей.

Рис 1. Преобразование системы координат для последующего сжатия Простейшее преобразование для данного случая описывается следующей формулой [1-4]:

(x*,y*) = (x,y) X

,'cos45° sin45°^ - sin 45° cos45°

= (x,y)X x(-1 l) = (x,y)X R,

(1)

где R - ортогональная матрица. Очевидно, что большинство точек преобразованного "облака" будет иметь у-координату, близкую к нулю, а координата х останется без изменений. Ортогональность матрицы R означает, что ее обратное преобразование может быть получено путем транспонирования исходной матрицы (1):

(x,y) = (x*,y*) X R -1 = (x*,y*) X RT = (x*,y*) x-^ x^j jj

(2)

Рассмотрим далее низкочастотные и выкосочастотные фильтры для выполнения преобразований по стандарту JPEG2000. Двумерное дискретное вейвлет-преобразование 2D DWT (Two-Dimensional Discrete Wavelet Transformation) выполняется с помощью одномерного 1D DWT. При этом изображение обрабатывается последовательно: сначала по строкам, с занесением результата в буферную память, а затем ее содержимое - по столбцам (рис. 2).

ID DWT

RAM liuffer

11> DWT

l=>

Рис. 2. Реализация 2D DWT-преобразования На основе базисной и вейвлет-функции строятся низкочастотный 110 и высокочастотный Ь фильтры, определяемые импульсными характеристиками. Реализация вейвлет-преобра-зования сводится к обработке исходного потока данных с помощью двух фильтров (рис. 3). Затем применяется операция 2-децимации, необходимая для сокращения объема хранимой информации [5,6], которая заключается в удалении компонентов матрицы: для высокочастотного фильтра - четных, для низкочастотного - нечетных элементов каждой строки. В результате получается объем данных, равный исходному по размерности, который воспроизводит изображение практически без искажения, благодаря хорошей корреляции соседних элементов.

Анализ Фильтры: Синтез

х[п] ГН ho -Ч+2)— go Х[п]

-И h, --тнн я 1 н

150

1 UL

50

5U

1 ии

Рис. 3. Фильтры прямого и обратного преобразования

В результате обработки (анализа) изображения с помощью фильтров получаются две последовательности у[2п]=у0[п] и у[2п+1]=у1[п], сформированные низкочастотным ^ и высокочастотным ^ фильтрами соответственно. Обратное преобразование, восстанавливающее изображение, называется синтезом, которому соответствуют функции go и g1. Двумерный элемент, полученный в результате обработки 2D DWT- преобразования, представляет собой чередование компонентов из различных поддиапазонов: у[2п1+Ь1, 2п2+Ъ2] = УЪ1,Ъ2[П1,П2], где ЬЬЬ2£ {0,1}.

Для прямого и обратного преобразования используются операции свертки [5, 6]:

у[п] = 2 hnm0d2[ЧХ[п-i]; х[П] = 2у[n]gnm0d2[п-i]• (3)

ieZ ieZ

Фильтры для синтеза и анализа связаны между собой соотношениями:

g 0[п] = а-1(-1)пЦ[п]^[п] = а-1(-1)Пи0[п], (4)

где коэффициент усиления а может быть вычислен по формуле:

а =1 (1! + 11?с11 0пуЧ), (5)

здесь 1ЪС - DC - нулевая частота; ^^ - Nyquist - максимальная частота, определяемые в соответствии с выражениями:

=21Ъ[п]; hЪУq =2(-1)Х[п], где Ь={0,1}. (6)

п п

^уровневое DWT-преобразование получается путем последовательного применения к исходному изображению нескольких двумерных вейвлет-преобразований, что иллюстрирует рис. 4. Стандарт JPEG2000 поддерживает количество уровней размерностью N в диапазоне 0 < N < 32 . На практике, как правило, используются значения N от 4 до 8, а N=5 дает оптимальные возможности для сжатия изображений.

Рис. 4. Трехуровневое двухмерное DWT-преобразование В качестве примера на рис. 5 представлено изображение до (Р1) и после (Р2) трехуров-него применения 2D DWT-преобразования, которое иллюстрирует существенное уменьшение размерности картинки до уровня LL2, а значит и необходимого для ее хранения объема памяти.

Рис. 5. Изображение до и после применения 2D DWT-преобразования

Некоторые видимые детали на правой картинке

Р2 = ^о = {LLl = ^ 2 ,Ш 2 ,ИЬ 2 ,НН 2},ШЬНЬЬНН1},Ш о ,HLo ,НН о}, кроме ЬЬ2 - левый верхний угол - соответствуют высокочастотным составляющим, которые будут востребованы при синтезе или восстановлении исходного изображения от ЬЬ2 до Р2.

Последующее рассмотрение стандарта JPEG2000 представлено двумя банками фильт-ров-вейвлетов: 9/7 Добеши (I. Daubechie) и биортогональный 5/3-вейвлет [2]. Первая пара чисел соответствует количеству коэффициентов импульсной характеристики низкочастотного фильтра, вторая - высокочастотного. Первый банк фильтров позволяет получить лучший коэффициент сжатия изображения по сравнению со вторым. Но при этом существуют два недостатка: 1) происходит некоторая потеря качества изображения из-за вычисления иррациональных коэффициентов; 2) алгоритм преобразования при 9/7-фильтре сложнее в практической реализации. Второй банк фильтров позволяет производить сжатие без потери качества. Далее приводятся примеры преобразования чисел на основе упомянутых банков фильтров.

Для 9/7-преобразования Добеши определены следущие частотные значения и коэффициент усиления а : ь0° = 1; Ь^ = 1; Ь[|уч = ь0° = 0; а = 1, которые совместно с формулами

(4) - (6) дают возможность получить низкочастотный Ь0 и высокочастотный Ь1 фильтры для последовательного анализа изображения:

Ь0 ф = 0.60294901 8236 + 0.26686411 8443 ^ + 71) - 0.07822326 6529^ 2 + 72) -

- 0.01686411 8443^ 3 + 73) + 0.02674875 7411^ 4 + 74);

Ь{ (7) = 0.55754352 6229 - 0.29563588 1557 ^ + 71) - 0.02877176 3114^2 + 72) -

+ 0.04563588 1557^3 + 7 3);

Биортогональное 5/3-вейвлет-преобразование. Банк анализирующих фильтров имеет вид

futr Л ( j -2 , j -j 3 , l l 2 Л

'U ^ (-jz + |z + 4 + jz-jz

h0(z) hl(z)

v j

- Iz-1 +1-¿z

(7)

Учитывая, что для данного вейвлета ЬЬС - DC - нулевая частота, Ь^ - Nyquist -максимальная частота и коэффициент усиления а определены значениями: Ь= 1; Ь^ = 2; Ь^ = Ь^С = 0; а = 1, с помощью выражения (4) получим значения коэффициентов синтезирующих фильтров:

' 80(7) gt(z)

O^j ( iz-j +1+iz j

- 1z-2-1z-j + 3 -Iz - iz2 Vi - J V z 4Z 4 4Z 8Z J

(8)

Формулы (7) и (8) используются для выполнения прямого и обратного вейвлет-преобра-зований в соответствии с рис. 3. В данном случае z-преобразование является текущей позицией конкретного значения координаты цвета в исходном массиве, а степень и знак -количество шагов, произведенных вправо или влево от данной позиции.

Рассмотрим применение банка фильтров, представленных в (7), для вейвлет-преобразо-вания данных (табл. 1), которые заданы в виде исходного массива Y компонента цвета изображения. Цветные изображения могут быть в RGB (по 8 бит на канал) и YCH-формате (яркостная и две цветоразностные составляющие). Последнее означает, что вместо элементарных цветов кодиpyетcя яркость (Y) - luminance и цветность (CH) - chrominance в виде двух компонентов U & V. Координатам массива Y компонента цвета соответствуют коды цветов в целочисленном формате, представленные на рис. 6.

0 0

Рис. 6. Трехмерное отображение кодов цвета

К строкам исходной таблицы кодов цвета в соответствии с (7) применяются Н и L фильтры, в результате чего получаются две таблицы, Н и L, размерностью NxN. Затем к обеим таблицам применяется операция децимации, суть которой - уменьшить в два раза объем полученных данных благодаря существованию корреляции между четными и нечетными столбцами: 1) из первой таблицы выбираются только нечетные столбцы у[2п+1]=ух [п], которые обозначаются идентификатором Н; 2) из второй выбираются только четные у[2п]=у0[п], которые формируют L-таблицу.

Таблица 1. Исходный Y-массив цвета Таблица 2. Данные после фильтации

64 57 57 58 56 57 59 61 58 61

58 49 49 49 48 50 51 51 53 53

61 51 5 1 51 51 52 51 52 54 55

64 55 54 54 54 55 55 55 57 57

64 56 56 58 56 57 57 58 58 59

67 59 60 60 59 60 61 62 62 62

68 59 59 60 61 62 63 63 64 64

70 60 59 60 61 63 64 64 65 64

73 62 63 61 61 64 64 65 64 64

72 63 63 62 62 64 64 65 64 64

ЬЬ НЬ

60 5 8 63 66 70 -4 -5 -4 -4 -5

54 48 56 5 8 6 1 1 0 2 0 -1

53 49 57 6 1 6 1 0 1 0 0 1

57 50 5 8 63 64 1 -1 0 0 1

57 53 59 64 64 0 -1 0 0 -1

ЬН НН

-5 1 1 0 0 0 1 0 1 0

-5 0 2 -2 0 0 -1 -1 0 0

-6 0 0 0 0 1 1 0 0 0

-5 0 1 0 0 -1 -1 0 -1 0

-4 1 1 0 0 0 0 0 0 0

К столбцам каждой из полученных Н- и L-таблиц вновь применяются соответствующие фильтры из (7). В результате получаются 4 таблицы кодов цвета, размерностью М2х№2, представленные в табл. 2, иллюстрация которых изображена на рис. 7.

0 0 0 0

Рис. 7. Вейвлет-преобразование Y-компонента цвета

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Таким образом, результат фильтрации данных в целях получения низкочастотных и высокочастотных составляющих, обозначенных идентификаторами LL, LH, HL, НН, будет иметь в совокупности такую же размерность (КхЫ), что и исходная таблица.

2. Лифтинговые схемы

Лифтинговая схема вычисления вейвлет-преобразования снижает вычислительную сложность в два раза, позволяет экономить память и конструировать вейвлеты, которые нельзя построить другим способом. Она представляет собой вейвлет второго поколения, где отсутствует растяжение и сдвиг функции, но имеется ряд дополнительных свойств. Каждый вейвлет, построенный на конечных фильтрах, может быть получен за определенное число шагов преобразований на основе лифтинговой схемы. Кроме того, она позволяет конструировать биортогональные вейвлеты и имеет ряд следующих преимуществ перед классической схемой вейвлет-преобразования [2-8]: 1) Высокая скорость обработки вейв-лета, подобная быстрому преобразованию Фурье. 2) Технологичность построения нелинейных вейвлет-преобразованиий - перевод целых чисел в целые, что существенно для аппаратной реализации и кодирования изображений без потерь. 3) Обратное преобразование имеет такую же вычислительную сложность, как и прямое. 4) Возможность реализации адаптивного вейвлет-преобразования, улучшающего детализацию на каждом его шаге - от грубого представления до необходимой степени подробности. 5) Описание преобразования Фурье с помощью аргументов пространственной области.

Пусть имеется сигнал ОД. Его точки отсчета можно обозначить через хо,к = f (k), к е ^. Необходимо декоррелировать упомянутый сигнал - аппроксимировать его с допустимой мерой погрешности - представить его меньшим числом коэффициентов, что эквивалентно увеличению интервала дискретизации, а значит, управлять количеством теряемой при аппроксимации информации. Очевидно, что разность между исходным сигналом и его аппроксимацией должна быть как можно меньшей.

Лифтинговый подход основан на поиске взаимоотношений между парой фильтров И0 и h ь которые являются дополнительными, когда определитель матрицы, образованной этими фильтрами, равен 0. Тогда данную пару фильтров можно получить, используя следующие соотношения:

^(2) = И о (7) + М^2); ^(2) = ^(2) + И о (2)1(22); (9)

где 8^2) и ^2) - полиномы Лорена [2,8].

Лифтинговая схема, представленная на рис. 8, реализуется с помощью четырех базовых операций: разбиения предсказания (Р), обновления (и) и масштабирования (К).

Рис. 8. Лифтинговая схема вейвлет-анализа Операция разбиения чаще всего реализуется с помощью "ленивого" вейвлет-преобразования [6], когда входной сигнал разбивается на четные и нечетные элементы:

8(0) = X 2,; d(0) = X 21+1 . Их значения на каждом этапе преобразования вычисляются по формуле

а(п) = +2 Рп(к^П-1),и е [1,2,...,N1; = s(n-1) + 2 ИпОО^п е [1,2,...,М].

Для ортогонального 5/3 вейвлет-преобразования значения коэффициентов имеют следующий вид: N=1, Р = -1; И = ^. Поэтому шаг предсказания вычисляется по формуле

ё(1) = а(0) -1 (з(0) + *(+)). (11)

Следует отметить, что фактически ё(1) соответствует значениям высокочастотного

фильтра И1 из 5/3 вейвлет-преобразования. Здесь формируются значения, соответствующие обработке данных низкочастотным фильтром И0, на основе информации, полученной на

предыдущем этапе: = з(0) + ^(ё*— + ё^1-1).

На рис. 9 представлена схема, соответствующая лифтинговой реализации 5/3 вейвлет-преобразования для случая, когда коэффициенты масштабирования КО = К1 = 1.

Рис. 9. Этапы предсказания и обновления лифтинговой схемы Для банка фильтров 9/7 Добеши, при количестве уровней N=2, используется четыре этапа для вычисления вейвлет-преобразования, которые представлены на рис. 10. Выход последнего этапа предсказания умножается на коэффициент К1, а последнего этапа обновления - на К0.

Рис. 10. Лифтинговая схема для банка фильтров 9/7 Добеши

Здесь используются следующие значения коэффициентов для данного преобразования:

Р1=-1.586134342_059924(^); И1 = - 0.052980118572961(1+^); Р2=0.882911075530934(^); И2 =0.443506852043971(1+^);

1 К

К0 =—; К1 =—, К = 1.23017410 4914001. К 2

Необходимо заметить, что обратное вейвлет-преобразование с использованием лифтин-говой схемы имеет такую же вычислительную сложность, как и прямое. Такое преобразование напоминает зеркальное отражение схемы вейвлет-анализа, представленной ранее (см. рис. 8).

Рис.11 наглядно демонстрирует схему вейвлет-синтеза.

Рис. 11. Лифтинговая схема вейвлет-синтеза Обратное вейвлет-преобразования имеет вид:

d(n-1) = d(n) +ZPn(k)skn),n e [1,2,...,N]; s(n-1) = s(n) ^(k^n e p,2.....N].

k k Перед началом преобразования выполняется обратное масштабирование данных. Для упрощения аппаратной реализации предложенные стандартом коэффициенты для банка фильтров 9/7 Добеши модифицируются [9] (табл. 3).

Таблица 3. Коэффициенты лифтинговой схемы для банка фильтров 9/7 Добеши.

Иррациональные Рациональные Перевернутые рациональные

Pi -1,5859375 -1,5 Pi -1,5

Ui -0,052734375 -0,0625 Ui -0,0625

P2 0.8828125 0,799804688 1/P2 1,25

U2 0.44140625 0,46875 P2*U2 0.375

K 1.1484375 0,7998046875 K 0.80078125

-1/K -0,87109375 -1,25030517578125 - P2/K -0.9990234375

LS NA 42 LS 42

Здесь представлены три набора коэффициентов. Первые соответствуют стандарту; вторые - версия из [10], использующая рациональные коэффицинты и общий масштабирующий множитель - LS (Lumped Scaling). Хотя последний набор содержит рациональные коэффициенты, тем не менее они не имеют простого способа реализации в аппаратуре, в частности, число 0.8 не может быть преставлено конечной дробью. Поэтому числа в дробях коэффициентов переворачиваются (flipped), например, вместо 0.8 используется 1.25.

3. Архитектуры аппаратной реализации

Для аппаратной реализации вейвлет-преобразований известно несколько архитектур, основанных на операциях свертки или лифтинговых схемах, для выполнения DWT-преобра-зования [11-18], которые можно разделить на последовательные и параллельные. Первые основаны на использовании систолических матриц [13-15], чередующих вычисления выходных значений для сокращения размеров используемой памяти и задержек или на конвейере, более эффективно реализующем вычислительный процесс [11, 16, 17]. Параллельные архитектуры используют процедуру чередования выходов [12] на основе ортогонального 5/3-фильтра и поддерживают конвейер любого числа уровней [18] при одновременном вводе данных. Работы Добеши и Свелденса (Daubechies and W. Sweldens) [2, 8], использующие факторизацию для выполнения вейвлет-преобразований и предложенные в

них лифтинговые схемы, позволяют значительно упростить аппаратную реализацию DWT. Здесь также предложены улучшения, связанные с уменьшением используемой памяти и количеством коммуникаций между процессором и другими компонентами архитектуры [11]. Изображение предварительно разбивается на блоки. Для устройств, в которых после вейвлет-преобразования применяется алгоритм нулевого дерева (zero-three algorithm), предлагается новая схема чередования выходов [19], сокращающая число обращений к памяти. Существуют также архитектуры, способные выполнить вейвлет-преобразование за один шаг [19]. В данном случае не используется конвейер, поэтому значительно увеличивается период синхросигнала и снижается рабочая частота устройства.

По способу взаимодействия с внешней памятью архитектуры, реализующие вейвлет-преобразования, делятся на три группы [20]: level-by-level, block-based, line-based.

Level-by-level. Использует один вычислительный модуль для последовательной обработки изображения: сначала по строкам, затем по столбцам. Промежуточные данные после обработки по строкам и результирующие после обработки по столбцам хранятся во внешней памяти. При выполнении нескольких уровней обработки данные также сохраняются во внешней памяти. Доступ к данным в памяти выполняется по строкам или по столбцам, что не позволяет использовать режим высокой пропускной способности. В результате доступ к внешней памяти становится самым критическим моментом при таком подходе. Для хранения информации, сформированной на различных этапах преобразования, можно использовать отдельные блоки памяти и распараллеливать обращение к ним. В этом случае необходимы блоки различного размера с отдельными портами данных, до двух на каждый блок, что нереально для современной аппаратуры при использовании внешней памяти. Ресурсов же внутренней памяти может не хватить для размещения целого исходного или результирующего изображения в ней.

Block-based. Архитектура подобна level-by-level, за исключением того, что изображение разбивается на блоки, которые могут быть сохранены во внутренней памяти. К недостаткам можно отнести возможные искажения изображения на границах блоков.

Line-based. В типичной архитектуре, представленной на рис. 12, используются отдельные вычислительные блоки для выполнения одного уровня вейвлет-преобразования [21]. Для хранения информации между обработкой строк и столбцов используется внутренняя буферная память.

Row

Processor

(RP)

-К V

MEM

ДА УУ

Column Processor

(CP)

FPGA

External Memory

Рис. 12. Line-based архитектура Устройство 1. Данную архитектуру [20] (рис. 13) можно отнести к Level-by-level, поскольку исходные и промежуточные данные хранятся во внешней памяти и обращение к ней происходит по одному и двум портам данных.

Рис. 13. Архитектура устройства

Преимущество архитектуры в том, что одно и то же устройство может быть использовано как для прямого, так и для обратного преобразования с использованием различных фильтров банков с нечетным и четным числом коэффициентов. Предполагаемая частота устройства на основе ASIC-реализации - 200 МГц, размерность слова - 16 битов. Устройство реализует любые фильтры, использующие лифтинговую схему. При этом возможны два режима: М2 - для фильтров, имеющих два уровня лифтинговой схемы, и М4 - для четырех уровней. В первом случае один уровень преобразования выполняется за один проход. Для М4 вначале выполняется умножение на два коэффициента по строкам и столбцам за один проход, а затем на остальные два за второй проход. Выполнение обработки по столбцам начинается после анализа, необходимого для этого числа строк. Устройство (см. рис. 13) содержит четыре процессора: ЯЛ, ЯР2, СР1 и СР2. Первые два: ЯР1 и ЯР2 - процессоры высокочастотного и низкочастотного фильтров строк, СР1 и СР2 - высокочастотного и низкочастотного фильтра столбцов. Параметр yi - результат фильтрации изображения по строкам, Zi - по столбцам.

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

Adder

Multiplier

Shifter

! V

"O-Q1

Register (16 bits)

Рис. 14. Базовая архитектура процессора Рис. 15 описывает пути передачи данных для лифтинговых структур, содержащих две ступени (2М), как у биортогонального вейвлета 5/3, и четыре ступени (4М), как у вейвлет-преобразования Добеши 9/7.

Internal MF;M

MF.M!

Column Module "s—

1

Г<ои/ МскШе

МЕМ2

<=

Column

Module —

T

fol J?

л

External MEM

MFMI

MEM2

FOI

Row Module

Рис. 15. Путь данных для 2М и 4М фильтров.

После обработки по строкам данные записываются в буфер. Обработка по стобцам начинается как только в буфер будет записано достаточное количество значений для выполнения вейвлет преобразования по стобцам. Рис. 16 представляет схему формирования низкочастотных, высокочастотных и двумерных коэффициентов процессорами ЯР1, ЯР2, СР1, СР2.

Память, представленная ранее на рис. 15, включает два блока МЕМ1 и МЕМ2. Как показано на рис. 17, модуль МЕМ1 состоит из двух банков и порта для чтения и записи, а МЕМ2 - из четырех банков и двух портов соответственно. МЕМ1 перед прямым преобразованием и после обратного преобразования содержит изображение целиком, поэтому каждый банк имеет размерность N х [Ш 2]. Для МЕМ2 объем памяти зависит от конкретного фильтра и определяется временем использования данных из строк. Для фильтра 5/7 каждый банк памяти МЕМ2 равен длине одной строки, формируемой одним из процессо-

ров. Для передачи данных между процессорами используются дополнительные регистры REG1 и REG2, что позволяет сократить число обращений к памяти.

Рис. 16. Схема поступления данных на процессоры для прямого преобразования

CP1; CP2/Ext MEM CP1; CP2/Ext MEM

RP1;RP2 RP1;RP2 RP1 ;RP2 CP1

MEM1

MEM1i

> MEM2o

MEM2i

MEM2o

MEM23

►RP1 ►RP1

MEM1 Module

■>CP1;CP2 ■>CP1;CP2

MEM2 Module

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

CP1--► Two accesses/

cycle

->• CP1--► One access/

cycle

Рис. 17. Структура памяти

Общее время выполнения одного уровня вейвлет-преобразования для изображения, размерностью NxN, фильтрами 5/3 составляет -21_ N/2 J +3Ta+2Ts+N+5+ |_ N/2 J N, где Та -задержка сумматора, а Ts - задержка устройства сдвига. Для фильтра 9/7 это значение будет 2 (4Ta+6Tm+6+ _ N/2J N), где Tm - время умножения. В работе [20] показана реализация только поведенческой VHDL-модели, в которой память описывается с помощью массива.

Устройство 2. Представляет собой комбинацию line-based и level-by-level типов архитектур, с целью получить небольшой по размеру реализации банк фильтров 9/7 [9, 21]. Сокращение используемой аппаратуры достигается за счет подключения внешней памяти. В отличие от level-by-level архитектуры для хранения промежуточных данных между выполнением преобразования по строкам и столбцам используется внутренний буфер. Таким образом, данные во внешней памяти всегда представлены по строкам. Архитектура устройства изображена ранее на рис. 12.

Для фильтра 9/7 лифтинговая схема реализуется с помощью четырех этапов и масштабирования, как это следует из выражения (10).

Рис. 18 представляет собой два процессора обработки данных по строкам и столбцам матрицы, соответствующей изображению. Информация из внешней памяти считывается по строкам и требует систолической организации вычислительного модуля (рис. 18, а). Процессор обработки данных по столбцам использует принцип параллельной подачи входной информации (рис. 18, б):

Predict 1: d/ = P1 (x2i + x2i + 2) + x2i+1 Update 1: si1 = U1 (di1 + d1i-1) + x2i Predict 2: di2 = P2 ( + s\+1) + d/ Update 2: si 2 = U2 (di 2 + d2i-1) + s/ Scale 1: si = K1xsi2 Scale 2: di = K0xdi 2 .

Row-процессор (рис. 19) представляет собой конвейерное устройство, в котором умножение заменяется операциями сдвига, сложения и вычитания. За один такт формируется одна точка, соответствующая элементу изображения.

R R

Рис.18. Реализация лифтингового этапа: а - систолическая архитектура для процессора строки; б - параллельная архитектура для процессора столбца

xzi

X2i+1

PI

d,1

U1

d,1

P2

a;

d,2

d," G2

U2

G1

а'"

Рис. 19. Архитектура row-процессора Данные из row-процессора сохраняются в буферной памяти (рис. 20) до обработки достаточного (3-7) числа строк, необходимого для вычисления коэффициентов Р1 и Ш и начала анализа столбцов. Пока процессор столбцов обрабатывает очередной из них, выбранный из памяти, процессор строк осуществляет анализ следующей строки. С этого момента оба процессора работают синхронно.

А>1ШГИ)С

U2

G2 G1

RP

Рис. 20. Архитектура column-процессора

Интересным представляется тот факт, что границы изображения (видео-кадра) обрабатываются без простоя специализированного со1итп-процессора в течение 4 временных циклов. Модифицированные уравнения для вычисления первых символов строки или столбца имеют следующий вид:

ШД1 +х15 1=0,

Modified update 1:si1=

Modified update 2:si2 =

U ( +d\4 )+x,

'2Ud2 +s \

■ n N

21 > 1=1,2,...,y1.

1=0,

U2 (di2 +d21-1 )+Si1, 1=1,2,...,N-1.

Для последних символов данные выражения имеют вид:

Р1 + (Х21+Х21+2 )+Х

N

Modified predict 1:di1 =

Mod1fiedpred1ct 2:d12 =

2P1X21 +X2

21+2, 1 1,2,..., 2 "2,

1=—1.

2

N

P2 ( +a1+1 ), 1=1,2,..., —-2,

2P2a11 +d11

1-N-1.

2

Характеристика предложенной архитектуры. Табл. 4 содержит описание блоков памяти, где L- уровень вейвлет-преобразования, ^ - число лифтинг-шагов (для фильтров 9/7 эта величина равна 4), LS - задержка системы, зависит от ^ и N. Число столбцов памяти для хранения информации между обработкой по строкам и столбцам при использовании лиф-тинговой схемы определяется по формуле ^ + 3 (для 9/7 оно равно 7). Для сравнения этот параметр для преобразования, основанного на операции свертки, равен 1г + 1 (для 9/7 - 10), где 1г-максимальная длина фильтра.

Таблица 4. Характеристики аппаратной реализации архитектуры

Основные выражения Для N=64, L=5, l=4 Для N=512, L=5, l=4

Размер внешней памяти N 2 4096 262,144

Число обращений к внешней памяти 2 (■ -±) 10,912 698,368

Размер встроенной памяти (L3+3)N 448 3,584

Число обращений к внутренней памяти |N2 (4L3 + 3) 1--L ] 51,832 3,317,248

Число синхротактов L3 + |N2 (1 - (L3+5,456) (L3+349,184)

Устройстово реализовано на микросхеме Altera 20KE FPGA. Для аппаратной реализации ирациональные коэффицинты преобразованы в рациональные числа (табл. 5).

Таблица 5. Преобразование чисел

Lifting 1rrat1onal L1ft1ng rat1onal Flpped rat1onal

F1xsd-po1nt format of aa,ad (55, -45) (47, -37) (34, - 23)

F1xsd-po1nt format of da,dd (48, - 38) (47, - 36) (34, - 22)

S1ze(log1c cells) 12,524 10,855 7,726

Embedded memory(b1ts) 21,504 17,92 10,752

Fmax(MHz) 49,6 52,8 66,8

Latency (clocks) 368 364 332

Оценка точности вычисления. Абсолютная погрешность а^, где z - точное число, а - приближенное число. Относительная погрешность (а^)^. Предельная абсолютная погрешность | а - ъ |< А а . Предельная относительная погрешность 5а = Да/а . Например, если а - приближенное значение числа z, полученное путем обрыва, причем а содержит г знаков после запятой, то в качестве абсолютной погрешности может быть выбрано Даг = 10-г или Даг = 2-г для двоичной системы счисления. Если аг получено путем округления, то предельная абсолютная погрешность равна Даг = 0,5 -10"г или Даг = 0,1 - 2- г для двоичной системы. Приближенные границы погрешности функции |Даь...,ак)-^хь...,хк)|<М .

к ,

Если известны абсолютные погрешности то Аf « 2 Да; | ■ (а1,...,ак) |. Для операции

1=1 ! !

сложения: f(xl,x2) = Х1 + х2 и Д(а1 + а2) = Да1 +Да2,(fxl = 1,fx2 = 1). Для умножения на константу: Дх) = с - х и Д(с - а) = Да-1 с |, (fXx = с). Для операции умножения: Дх1,х 2) = Х1 - х 2,

Д(а1 - а 2) «Даг|а2|+Да2-|аШ4 = хь4 = х2), Д(а1 - а 2) « Да2

^ - ^Ъ-^ -А2Л —^—— «-- + -

Ial•a2 I Iall I a2 I

Существует три источника погрешности: входных данных, метода (обрыва) и округления. Для того чтобы представить коэффициенты целыми значениями, их умножают на 2k, где к - число двоичных разрядов для сдвига данных влево. Например, для коэффициентов в диапазоне 0.003906 - 2 предлагается выполнить умножение на 28=256 [20]. Новые коэффициенты располагаются в диапазоне 1-512. Таким образом, для представления коэффициентов в дополнительном коде требуется 10 разрядов.

Для оценки точности метода используется отношение сигнал (Signal)/помеха (SNR signal-to-noise ratio) измеряется в децибелах и вычисляется по формуле:

SNR(dB) - 201og f ^ Signal ^

10IX (Signal fixed point data]

Из табл. 6 видно, что для фильтра 5/3 необходимо 5 дополнительных битов на промежуточных вычислениях. При этом необязательно выполнять операции округления, достаточно обрыва - отброс младших разрядов. Табл. 7 показывает, что округление улучшило возможности на 55dB, а это существенно более лучшие результаты. Таким образом, для вычисления без потерь используются 5 дополнительных битов; с потерями - применяется квантизация - достаточно двух дополнительных битов с получением удовлетворительного значения SNR~35dB.

Таблица 6. Вычисление SNR после пяти уровней DWT без округления

Abs (5,3) C(13,7) S(13,7) (2,6)L (2,10)L (2,6) (2,10) (6,10) (9,7)

0 12,98 3,99 1,78 18,8 18,15 19,57 17,61 0,99 -0,72

1 19,61 10,15 7,94 26,33 25,11 26,16 23,75 7,08 5,38

2 25,81 16,17 13,92 32,68 31,62 32,56 29,84 13,11 11,36

3 32,79 22,24 20,01 39,82 38,79 39,64 36,15 19,01 17,36

4 36,96 28,01 26,32 70,64 48,55 52,03 44,31 24,99 23,33

5 Inf 33,09 32,98 Inf 99,81 77,28 65,78 31,17 29,15

Таблица 7. Вычисление SNR после пяти уровней DWT с округлением

Abs (5,3) C(13,7) S(13,7) (2,6)L (2,10)L (2,6) (2,10) (6,10) (9,7)

0 18,94 27,39 27,09 18,97 18,98 23,43 23,01 32,65 25,77

1 24,4 31,04 30,85 24,52 24,56 28,71 28,49 37,86 31,62

2 30,2 37,47 36,48 31,24 31,32 35,51 35,39 44,54 38,37

3 34,5 48,72 48,21 36,82 36,8 50,13 45,64 48,91 47,31

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4 77,46 113,2 110,3 73,63 70,89 67,57 67,93 56,54 67,39

5 Inf Inf Inf Inf Inf 78,08 78,52 60,01 85,75

Для устройства 2 выполнена оценка соотношения Peak Signal-to-Noise (PSNR). Все три набора коэффициентов протестированы в Matlab с использованием изображений из ITU [22] (8-битовые градации серого) для оценки PSNR, представленной в табл. 8. Все они близки к его идеальному значению и меньше 0.05dB.

Таблица 8. Производельность трех наборов фильтров

Unquantized (ideal) Lifting irrational Lifting rational Flipped rational

Aerial 2 1:1 58,75 56,13 58,8 58,8

8:1 32,76 32,75 32,76 32,76

32:1 27,99 27,98 27,98 27,98

100:1 24,79 24,78 24,77 24,78

Bike 1:1 58,7 54,53 58,75 58,74

8:1 32,83 32,81 32,82 32,82

32:1 24,81 24,79 24,81 24,8

100:1 21,24 21,22 21,2 21,22

Woman 1:1 58,68 55,48 58,74 58,74

8:1 33,68 33,68 33,69 33,68

32:1 27,29 27,28 27,28 27,29

100:1 224,51 24,49 24,48 24,49

Устройство 3. Представленная на рис. 21 архитектура [19] предназначена для широкого диапазона устройств от низкоскоростной передачи битов и до высокой четкости представления. Устройство может быть ре-конфигурировано для реализации прямого и обратного преобразования DWT, что отличало его от существовавших в то время реализаций. Используется проектирование снизу-вверх. Устройство оптимизировано под фильтр 9,7.

Предлагается использование различных длин pipeline, что позволяет менять пропускную способность устройства. Выполнена оценка послесинтезной скорости устройства для различных уровней pipelining для микросхемы Xilinx Virtex 1000 (табл. 9). После имплемен-тации такой анализ не был произведен. Оценка потребляемой мощности 56.7 mW для 83 МГц, 4 ядра 256mW, микросхема XILINX Virtex 300E.

Предложенная архитектура может выполнять прямое или обратное вычисление для (9,7) DWT на максимальной частоте с пропускной способностью 25 кадров в секунду с пятью уровнями преобразования, 12-разрядными коэффициентами, размер изображения 1400/1400 пикселов, разрядность данных 15 битов. С другой стороны, на частоте 10 МГц микросхема XILINX XCV300E имеет потребляемую мощность 59 mW, для видео 25 fps с разрешением 256x256.

A_pipe + lí_pipc + C_pipe -1

Рис. 21. Архитектура устройства Таблица 9. Результаты синтеза лифтинг-блока

Area

Pipe depth Fclk(MHz) comb. (LUTs) seq.(DEFs)

2 105 259 641

3 135 259 718

4 136 259 791

Устройство 4. Предлагается line-based архитектура [23], основанная на лифтинг-методе JPEG2000 5/3-DWT. Использует параллельный блок Shift-Accumulator Arithmetic Logic Units (ALUs). Устройство может выполнять до пяти уровней преобразования, имеет эффективную организацию памяти, что позволяет уменьшить ее объем, необходимый для вычисления и буферизации. АЛУ состоит из 3-х сумматоров, 2-х устройств вычитания/сложения и 5 устройств сдвига. Это значительно меньше, чем у архитектур, предложенных в [20, 24].

В связи с возрастающей популярностью мобильных устройств очень важным моментом в проектировании цифровой техники является энергосбережение. Например, в работе [25] выполнена модификация некоторых блоков DWT-устройства для снижения их потребляемой мощности. Использовалось более низкое напряжение питания, что повлекло изменение проекта для компенсации задержек вычисления. Следующие разработки [20, 24] для JPEG2000 DWT представляют собой устройства, основанные на конвейере, однако они не уделяют внимания мощности вообще. Предполагается, что строка уже подана и сформирована, а кадр изображения доступен целиком до начала обработки или требует буферизации целого или части кадра. Это не согласуется с политикой стандарта JPEG 2000. Упомянутое устройство 5/3 DWT базируется на АЛУ со сдвиговым аккумулятором (SA), поскольку коэфициенты данного фильтра представляют собой дробь со знаменателем, равным степени двойки, поэтому операция умножения может быть заменена сдвигом. Первый процессор состоит из вертикальных АЛУ для обработки столбцов, второй из трех горизонтальных -для строк. Устройство содержит два набора процессоров и два блока памяти. Блоки памяти используются для хранения промежуточных данных и сохранения результатов между различными уровнями преобразования.

Устройство (рис. 22) состоит из трех главных блоков: устройства управления, сдвигового АЛУ и буферной памяти. Последняя включает промежуточную Intermediate Memory Buffer (INMEM) и межуровневую буферную память Re-process Memory Buffer (RPMEM). Промежуточные данные с обоих процессоров столбцов сохраняются в INMEM. Модуль RPMEM используется для хранения данных с выхода LL для следующего уровня вычислений.

Column processor А (vertical process) к

Row processor k (horizontal process) A

Рис. 22. Блок-схема устройства Архитектура SA-ALU представлена на рис. 23. Коэффициэнты лифтинговой схемы для фильтра 5/3 равны 1/2 и 1/4, поэтому основными вычислительными операциями является сдвиг и сложение. SA-ALU состоит из: 1) входного мультиплексора; 2) сдвигового блока; 3) устройства сложения или вычитания; 4) аккумуляторного регистра; 5) выхода и обратного мультиплексора. Нечетные элементы подаются на вычитающий выход.

Для RFMEM-памяти, структура которой представлена на рис. 24, используется FIFO организация. Размер памяти N/2xN/2 . Промежуточный блок памяти состоит из шести двухпортовых блоков памяти с двухэлементной адресацией.

Рис.23. Упрощенная схема АЛУ со сдвиговым аккумулятом Они группируются в два главных (четных и нечетных) блока, где ОС и ЕС - выходы нечетных и четных блоков. Каждый из блоков делится на три колонки. Промежуточная память спроектирована для хранения трех колонок (3N слов) данных.

Общее число устройств сложения/сдвига и регистров равно 5 и 10 соответственно. В табл. 10 выполнен сравнительный анализ используемых ресурсов для различных видов архитектур.

ALU1_ odd data (input)

Write address

ALU2 odd data

(input)

OC2 output data

ALU1 even data (input)

^Write address

ALU2 output data

even data (input)

Рис. 24. Архитектура буфера промежуточной памяти RFMEM

Таблица 10. Используемые ресурсы для реализации вейвлет-преобразования

K. Andra et C-J. Lian et. Proposed Worst case

a1[20] a1[24] architecture % saving

Adders 8 8 5 37,50%

Shifers 4 4 5 -25%

Registers 16 16 10 37,50%

INMEM 4 N N x N 3 x N 25%

RPMEM N x N/2 N/2 x N/2 N/2 x N/2 0%

Дальнейшие направления работы.

Разработать архитектуру устройства на основе микросхем фирмы XILINX, которая не использует внешнюю память для хранения промежуточных данных, что существенно (в несколько раз) повышает быстродействие функционирования устройства.

Предложить реализацию IP-core блока DWT для разработки стандарта JPEG 2000 в формате системы на кристалле. В приведенных источниках отсутствуют аналогичные результаты. Рассмотренные в обзоре DWT-реализации не привязаны к архитектуре и носят абстрактный характер, в то время как предложенное устройство привязано к аппаратуре и спроектировано под конкретные ресурсы для реализации DWT-системы на кристалле программируемой логики. В источниках внимание акцентируется на упрощение схемы вычислителей, что может повысить быстродействие арифметического модуля, однако скорость всего усторойства зависит в большей степени от обращения к памяти и управляющей схемы, на что направлены предложенные в данной работе структурные решения.

Разработать конвейерную структуру DWT, ориентированную на имплементацию в кристаллы программируемой логики или в функциональность IP-core, отличающуюся от приведенных аналогов меньшими аппаратурными затратами в части реализации АЛУ и распределенной буферной памяти, что позволит существенно повысить быстродействие, тактовую частоту и энергопотребление, а также уменьшить стоимость системы на кристалле, что является весомым вкладом в практическую реализацию международного стандарта IEEE JPEG2000.

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

Список литературы: 1. Уэлстид С. Фракталы и вейвлеты для сжатия изображений в действии. М.: Триумф, 2003. 320с. 2. Daubechies I. and Sweldens W. Factoring wavelet transforms into lifting steps. Bell Laboratories, Lucent Technologies. 1996. 368p. 3. ВоробьевВ.И., Грибулин В.Г. Теория и практика вейвлет-преобразования. С.-Петербург: ВУС, 1999. 204c. 4.Сэломон Д. Сжатие данных, изображения и звука. М.: Техносфера, 2004. 386с. 5. DavidS. Taubman, Michael W.Marcellin. JPEG2000: Image compression fundamentals, standards and practice. Boston/Dordrecht/London: Kluwer Academic Pulishers. 2002. 774p. 6. Majid Rabbani, Rajan Joshi. An overview of the JPEG2000 still image compression standard. Signal Processing: Image Communication 17 (2002) P. 3-48. 7. Steve Smith. The Scientist and Engineer's Guide to Digital Signal Processing. California Technical Publishing. 1997. 640p. 8. Daubechies I. and Sweldens W. Factoring wavelet transforms into lifting schemesp. J. Fourier Anal. Appl. 1998. Vol. 4. P. 247-269. 9.Barua S., Carletta J.E., Kotteri K.A., BellA.E. An efficient architecture for lifting-based two-dimensional discrete wavelet transforms. INTEGRATION. The VLSI journal 38 (2005). P. 341-352. 10. Zervas N.D., Anagnostopoulos G.P., Spiliotopoulos V., Andreopoulos Y., Goutis C.E. Evaluation of design alternatives for the 2-D discrete wavelet transform. IEEE Trans. Circuits Systems Video Technol. 11 (12). 2001. P. 1246-1262. 11. Dimitroulakos G., Zervas N. D, Sklavos N., Goutis C.E. An efficient VLSI implementation for forward and inverse wavelet transform for JPEG2000. Proceedings of 14th IEEE International Conference on Digital Signal Processing (DSP'02). Greece. 2002. P. 233-236. 12. Abdullah Al Muhit, Md. ShabiulIslam, Masuri Othman. VLSI Implementation of Discrete Wavelet Transform (DWT) for Image Compression. 2nd International Conference on Autonomous Robots and Agents.2004. New Zealand. P. 391-395. 13. Vishwanath M., Owens R., and Irwin M. J. VLSI architectures for the discrete wavelet transform. IEEE Trans. Circuits Syst. 1995. Vol. 42. P. 305-316. 14. Fridman J.S. andManolakos E.S. Discrete wavelet transform: Data dependence analysis and synthesis of distributed memory and control array architectures. IEEE Trans. Signal Processing. Vol. 45. P. 1291-1308. 15. Acharya T. A high speed systolic architecture for discrete wavelet transforms. Proc. IEEE Global Telecommun. Conf. 1997. Vol. 2. P. 669-673. 16. Parhi K.K. andNishitani T. VLSI architectures for discrete wavelet transforms.IEEE Trans. VLSI Syst. 1993. Vol. 1. P. 191-202. 17.GrzeszczakA., MandalM.K., Panchanathan S., and Yeap T. VLSI implementation of discrete wavelet transform. IEEE Trans. VLSI Syst. 1996. Vol. 4. P. 421-433. 18. Chakrabarti C. and VishwanathM. Efficient realizations of the discrete and continuous wavelet transforms: From single chip implementations to mappings on SIMD array computers. IEEE Trans. Signal Processing. 1995.Vol. 43. P. 759-771. 19. MaurizioMartina, GuidoMasera. FPGAFully Reconfigurable Lifting Kernel for Multimedia Processing 11th International Conference on Very Large Scale Integration VLSI-SOC. 2001.

France. P. 5-10. 20. Andra K., Chakrabarti C., Acharya T. A VLSI architecture for lifting-based forward and inverse wavelet transform. Signal Processing. IEEE Transactions and Signal Processing. Vol. 50. Issue 4. 2002. P. 966 - 977. 21. Barua S., Kotteri Carletta J. E, K. A., Bell A. E. An Efficient Architecture for Lifting-based Two-Dimensional Discrete Wavelet Transforms. GLSVLSI'04. 2004. Massachusetts. USA. 11 p.22. ITU-T Recommendation .T .24. Standardized digitized image set. ITU Standard. June 1998. Available at http://www.itu.int/ITU-T/. 23. Arslan Tan K-C. B., T. Shift-accumulator ALU centric JPEG2000 5/3 lifting based discrete wavelet transform architecture.- 7803-7761-3103111. 7.00 02003 IEEE. P. V-161 V-164. 24. Lian C-J., Chen K-F., Chen H-H.and Chen L-G. Analysis and architecture design of lifting based DWT and EBCOT for JPEG2000. Proceedings of Technical Papers of 2001 International Symposium on VLSI Technology Systems and Applicarions. 2001. P. 180-183. 25. Simon T. andChandrakasanA. P. An ultra low power adaptive wavelet video encoder with integrated memory. IEEE Journal of Solid-Slate Circuits. Vol. 35. No. 4. 2000. 10 p.

Поступила в редколлегию 20.03.2006

Хаханова Ирина Витальевна, докторантка кафедры АПВТ ХНУРЭ. Научные интересы: проектирование цифровых систем на кристаллах. Увлечения: английский язык, музыка. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 70-21-326.

УДК 681.324.01

А.Я.СКЛЯРОВ, Л.А. ХРИСТОЕВА

МНОГОУРОВНЕВАЯ ОПТИМИЗАЦИЯ СОСТАВНЫХ ТЕХНОЛОГИЧЕСКИХ ПРОЦЕССОВ С КООРДИНАЦИЕЙ В РЕЖИМЕ РЕАЛЬНОГО ВРЕМЕНИ

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

1. Введение

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

Эффективное решение таких задач может быть осуществлено посредством декомпозиции оптимизационной задачи большой размерности на ряд локально не связанных подзадач меньшей размерности. Однако в больших системах, как правило, не бывает автономно функционирующих подсистем. Поэтому для учета взаимосвязей между подсистемами необходим, по крайней мере, еще один уровень управления, который бы позволил скоординировать локально функционирующие подсистемы таким образом, чтобы оптимизировать общий критерий качества всей сложной системы. Этот уровень должен обеспечивать оценку параметров взаимосвязи подсистем, формировать координирующие воздействия (параметры порядка) и передавать их подсистемам в режиме приоритетного воздействия.

В большинстве научных работ, посвященных проблемам декомпозиции-координации [ 14], в основном рассматриваются методы координации в режиме off-line. Однако имеется ряд работ [5, 6 ], в которых предлагаются методы координации, обеспечивающие получение эффективных решений оптимизационных задач в режиме on-line.

Следует отметить, что on-line координация может быть применена в системах, в которых переменные взаимосвязи изменяются значительно медленнее переменных состояния подсистем, потому что процедура координации, как правило, является многошаговой и

i Надоели баннеры? Вы всегда можете отключить рекламу.