tu_plovdiv_conference_article_bg - image processing in dsp

7
Journal of the Technical University at Plovdiv “Fundamental Sciences and Applications”, Vol. 14, 2009 International Conference Engineering, Technologies and Systems TechSys '2009 BULGARIA IMAGE PROCESSING IN DSP SVETLANA RAYKOVA , TONKA TANTCHEVA, BOYKO PETROV Abstract. The research is made for active time execution determination of one of the most popular algorithms for two-dimensional signal processing, codded in C and executed on the Analog Devices DSP architecture BF53x. The list of realized algorithms are: arithmetic operations for intensity control, using look-up tables for pixel encoding, histogram determination, contrast stretching, intensity transformations, blurring, sharpening and edge detection done by different methods: first order derivative, compass gradient operator, median filtering and maximum/minimum filtering. ИЗСЛЕДВАНЕ РЕАЛИЗАЦИЯТА НА АЛГОРИТМИ ЗА ОБРАБОТКА НА ДВУМЕРНИ СИГНАЛИ ВЪРХУ ADSP BF53X 1. Въведение Настоящето изследване се състои в реализация на функциии за описание на основни алгоритми за обработка на двумерни сигнали - изображения с цел определяне на ефективните времена за изпълнение на разглежданите алгоритми върху специализирани DSP архитектури от фамилията BF53x на Analog Devices. Изследваните функции са описани изцяло на език C и са симулирани с изполването на средата VisualDSP 5.0 на Analog Devices. Времената за изпълнение са получени в режим Debug при използване на вградените в средата оптимизации на кода на програмата посредством засичане на помощна променлива в средата за симулация, отброяваща броя на микропроцесорните цикли. Получените стойности са умножени с константа 2.5ns, представляваща периода на микропроцесорния такт при 400 MHz честота на ядрото. Вида на симулирания процесор е BF534. Функциите са проверени върху тестово изображение "Lena.bmp" с формат 256x256 пиксела, въведено посредством вградените възможности на средата за въвеждане и извеждане на данни в и от оперативната памет на DSP. Copyright 2009 by Technical University at Plovdiv, Plovdiv, BULGARIA. ISSN 1310 - 8271

Upload: posnai

Post on 11-Jun-2015

389 views

Category:

Documents


4 download

DESCRIPTION

SVETLANA RAYKOVA , TONKA TANTCHEVA, BOYKO PETROVInternational Conference Engineering, Technologies and Systems TechSys '2009Technical University at Plovdiv, BULGARIAИзследване реализацията на алгоритми за обработка на двумерни сигнали върху ADSP BF53x

TRANSCRIPT

Page 1: TU_Plovdiv_Conference_Article_BG  -  IMAGE PROCESSING IN DSP

Journal of the Technical University at Plovdiv“Fundamental Sciences and Applications”, Vol. 14, 2009International Conference Engineering, Technologies and SystemsTechSys '2009BULGARIA

IMAGE PROCESSING IN DSP

SVETLANA RAYKOVA , TONKA TANTCHEVA, BOYKO PETROV

Abstract. The research is made for active time execution determination of one of the most

popular algorithms for two-dimensional signal processing, codded in C and executed on the Analog Devices DSP architecture BF53x. The list of realized algorithms are: arithmetic operations for intensity control, using look-up tables for pixel encoding, histogram determination, contrast stretching, intensity transformations, blurring, sharpening and edge detection done by different methods: first order derivative, compass gradient operator, median filtering and maximum/minimum filtering.

ИЗСЛЕДВАНЕ РЕАЛИЗАЦИЯТА НА АЛГОРИТМИ ЗА ОБРАБОТКА НА ДВУМЕРНИ СИГНАЛИ ВЪРХУ ADSP BF53X

1. ВъведениеНастоящето изследване се състои в реализация на функциии за описание на

основни алгоритми за обработка на двумерни сигнали - изображения с цел определяне на ефективните времена за изпълнение на разглежданите алгоритми върху специализирани DSP архитектури от фамилията BF53x на Analog Devices. Изследваните функции са описани изцяло на език C и са симулирани с изполването на средата VisualDSP 5.0 на Analog Devices. Времената за изпълнение са получени в режим Debug при използване на вградените в средата оптимизации на кода на програмата посредством засичане на помощна променлива в средата за симулация, отброяваща броя на микропроцесорните цикли. Получените стойности са умножени с константа 2.5ns, представляваща периода на микропроцесорния такт при 400 MHz честота на ядрото. Вида на симулирания процесор е BF534. Функциите са проверени върху тестово изображение "Lena.bmp" с формат 256x256 пиксела, въведено посредством вградените възможности на средата за въвеждане и извеждане на данни в и от оперативната памет на DSP.

Copyright 2009 by Technical University at Plovdiv, Plovdiv, BULGARIA. ISSN 1310 - 8271

Page 2: TU_Plovdiv_Conference_Article_BG  -  IMAGE PROCESSING IN DSP

2. Описание на методите за обработка на двумерни сигнали.

• Промяна на яркост [1] – комплект от две функции за увеличаване и намаляване яркостта на входното изображение като е предвидено "насищане" (saturation) на резултантното изображение представляващо ограничение на изходната стойност до зададени гранични минимална и максимална стойност с цел избягване на възможността за препълване на разрядната решетка, съдържаща стойността на яркостта на пиксела. Действието на функцията може да се описше с равенствата, изпълнени за всеки един елемент от входното изображение. С първата функция изображението се просветлява, а с втората се потъмнява:

КонстантаеИзображениеИзображениПотъмненоКонстантаеИзображениеИзображениИзсветлено

−=+=

__

• Негатив на изображение [1] – трансформацията на входното изображение се състои в инвертиране на яркостните стойности на пикселите, изпълнено за всеки отделен пиксел от входното изображение:

( )пикселСтарпикселНов _255_ −=

• Промяна и Засилване на контраст [1] – промяната на контраста се осъществява посредством умножение и/или деление на стойността на яркостта на всеки пиксел с константа, изпълнено за всеки отделен пиксел от входното изображение:

КонстантаеИзображениконтрастнамаленсеИзображениКонстантаеИзображениконтрастувеличенсеИзображени

÷==

___*___

Контрастът в едно изображение може да се наложи и да се промени при изпълнение на алгоритъма "Изравняване на хистограма", представляваща запълване на целия динамичен диапазон на неговата хистограма:

,255*_____прагДоленпрагГоренпрагДоленпикселСтарпикселНов

−−=

където долен и горен праг са най-ниската и най-високата намерена стойност на яркостта на пикселите в хистограмата.

• Гама корекция [5] – функцията дава възможност за нелинейна промяна на контраста на изображението, задавана посредством степенна функция, изпълнено за всеки отделен пиксел от входното изображение

γ1

__ пикселВходенпиксeлИзходен =За целта на изследването за γ са избрани стойности: 2,1 и 0,45 съгласно [5].

• Получаване и Изравняване на хистограма [4] – състои се в изпълнението на три стъпки:

o извличане на хистограма; o изчисляване на нормализираната сума на хистограмата:

Copyright 2009 by Technical University at Plovdiv, Plovdiv, BULGARIA. ISSN 1310 - 8271

Page 3: TU_Plovdiv_Conference_Article_BG  -  IMAGE PROCESSING IN DSP

пикселибройстойностпикселнамаксималнапикселНов

____ = ;

o преобразуване на входното изображение в изходно;

• Замъгляване [1] – премахва финните детайли в изображението, реализира се чрез конволюция с подходящо синтезирана маска. Изборът на маскатата за реализация на функцията не е предмет на настоящето разследване. Промяната на маската не води до промяна на времетраенето на изпълнението на функцията. В настоящото изследване е използвана маската, съгласно[1]:

121242121

( ) ( ) ( )∑ ∑ −−=i j

jiМаскаjyixеизображениВходноyxеизображениноКонволюира ,*,_161,_

• Разпознаване на контури [1,2,3,4] – контур в изображение се нарича, рязкото изменение на яркоста на пикселите. Използват се различни двумерни оператори като Хомогенен оператор, Диференциален оператор, Компасен оператор, Първа и Втора производна. Всеки един от тези оператори имат своите особености. В настоящото изследване, акцентът се поставя на времето за изпълнение, а не на особеностите, предимствата и недостатъците на всеки един от методите. За Хомогенния оператор, съгласно [1] е използван:

За Диференциален оператор, съгласно[3] е използван:

Copyright 2009 by Technical University at Plovdiv, Plovdiv, BULGARIA. ISSN 1310 - 8271

Page 4: TU_Plovdiv_Conference_Article_BG  -  IMAGE PROCESSING IN DSP

За Компасен оператор, съгласно [2] е използван:

За намиране на Първа производна, съгласно [4] е използван:

За намиране на Втора производна, съгласно [1] е използван Лапласов оператор с маска:

• Обостряне на контури [1,5] - прилага се върху входното изображение чрез конволюция с подходящо синтезирана маска. В настоящето изследване е използвана маската :

Промяната на избраната маска не води до промяна на резултатите от изследването на времето за изпълнение на функцията.

• Нискочестотно, Високочестотно и Лентово двумерно филтриране [2] – филтрираното изображение се получава след конволюиране с маска от тип: хоризонтална, вертикална и блокова. Програмната обработката на изображението не се различава от описаните, а само по избраната маска. В настоящето изследване са използвани следните маски:

Съдържанието на маските се формира от преплъзгването им през входното изображение. Данните, които се взимат от него се подреждат по възходящ ред. Изходното изображение се формира като се връща пиксела от центъра на избаната маска.

3. РезултатиСъставянето на текста на изходния код на реализираните функции не

представлява проблем за всеки специалист, запознат с основите на програмирането на език C, за това този код не се побликува в настоящето изследване. Изпълнението на основната цел на изследването, а именно определяне на ефективните времена за изпълнението на функциите са показани в табл.1. В табл.2 са показани изходното и резултантните изображения от изпълнението на всяка една от функциите.

Copyright 2009 by Technical University at Plovdiv, Plovdiv, BULGARIA. ISSN 1310 - 8271

Page 5: TU_Plovdiv_Conference_Article_BG  -  IMAGE PROCESSING IN DSP

Наименование на функцията Време за изпълнение

Оригинално изображение Фиг.1Промяна на яркостИзсветляване на изображение Фиг.2 1,6msПотъмняване на изображение Фиг.3 3,2msНегатив на изображение Фиг.4 1,1msПромяна на контрастУвеличаване на контраст Фиг.5 4,8msНамаляване на контраст Фиг.6 6,4msЗасилване на контраст Фиг.7 5,6msГама корекция Фиг.8, 9 7,2msПолучаване и Изравняване на Хистограма Фиг.10 5,0msЗамъгляване Фиг.11 55,3msРазпознаване на контуриХомогенен оператор Фиг.12 60,3msДиференциален оператор Фиг.13 42,9msКомпасен оператор Фиг.14 325,7msПърва производна Фиг.15 325,2msВтора производна Фиг.16 326,4msОбостряне на контури Фиг.17 53,8msНискочестотно филтриранеБлокова маска Фиг.18 228,2msВисокочестотно филтриранеБлокова маска Фиг.19 47,1msЛентово филтриранеБлокова маска Фиг.20 228,1msХоризонтална маска Фиг.21 47,2msВертикална маска Фиг.22 47,3msОптимизирана маска Фиг.23 91,1ms

Таблица.1

Copyright 2009 by Technical University at Plovdiv, Plovdiv, BULGARIA. ISSN 1310 - 8271

Page 6: TU_Plovdiv_Conference_Article_BG  -  IMAGE PROCESSING IN DSP

Таблица.2

Copyright 2009 by Technical University at Plovdiv, Plovdiv, BULGARIA. ISSN 1310 - 8271

Page 7: TU_Plovdiv_Conference_Article_BG  -  IMAGE PROCESSING IN DSP

4. ЗаключениеРезултатите от направените изследвания могат да бъдат полезни за

ориентировъчна оценка на изчислителната сложност на описаните алгоритми. За конкретни приложения на функциите за обработка е необходимо да се:

Оптимизира изпълнението на изчислителните процеси посредством реализация на критичната част от функциите или целите функции на език Asembler, където най-пълно могат да се използват вградените в ядрото на BF53x инструкции за обработка на двумерни сигнали;

Проектира и реализира самостоятелно устройство с възможност за въвеждане на изображение за обработка от камера или друг източник, както и интерфейс за извеждане към по-високо иерархично ниво или към изходно устройство за визуализация на резултатите;

Добавят допълнителни функции за обработка, като се оформят като система за цифрова обработка на изображения. Това налага използването на цоманден интерпретатор, с възможности за разпознаване и изпълнение на входни команди от интерфейс.

ЛИТЕРАТУРА

1. R.Crane. Simplified approach to image processing in C, Prentice Hall PTR , New Jersey, 1997.2. M.Petrou, Bosdogianni P. Image processing.. the fundamentals, Technical University of Crete, China, Greece, 1999.3. B.Jahne. Digital image processing. University of Heidelberg,Online Library,5ed., Springer, 2002.4. W.Phillips. Image processing in C, R & D Publication, Lawrence, Kansas, USA, 2000. 5. J. Arendt. Algorithms for programmers, http://www.jjj.de/fxt/, 2002.

Department of Electrical EngineeringTechnical University–Sofia, Branch Plovdiv61 Sankt Peturburg St.4000 PlovdivBULGARIAE-mail: [email protected]

Copyright 2009 by Technical University at Plovdiv, Plovdiv, BULGARIA. ISSN 1310 - 8271