ebook img

implementacja zaawansowanych algorytmów przetwarzania, analizy i szyfrowania obrazów w ... PDF

175 Pages·2012·21.68 MB·Polish
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview implementacja zaawansowanych algorytmów przetwarzania, analizy i szyfrowania obrazów w ...

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Wydział Elektrotechniki, Automatyki, Informatyki i Inz˙ynierii Biomedycznej KATEDRA AUTOMATYKI I INZ˙YNIERII BIOMEDYCZNEJ R OZPRAWA DOKTORSKA TOMASZ KRYJAK IMPLEMENTACJA ZAAWANSOWANYCH ALGORYTMÓW PRZETWARZANIA, ANALIZY I SZYFROWANIA OBRAZÓW W UKŁADACH REPROGRAMOWALNYCH PROMOTOR: drhab.inz˙.MarekGorgon´,prof.nadzw.AGH Kraków 2012 Ukochanym Rodzicom AGH University of Science and Technology in Krakow Faculty of Electrical Engineering, Automatics, Computer Science and Biomedical Engineering DEPARTMENT OF AUTOMATICS AND BIOMEDICAL ENGINEERING P .D. T H HESIS TOMASZ KRYJAK IMPLEMENTATION OF ADVANCED IMAGE PROCESSING, ANALYSIS AND ENCRYPTION ALGORITHMS IN REPROGRAMMABLE DEVICES SUPERVISOR: MarekGorgon´ Ph.D.,D.Sc. Krakow 2012 PODZIE˛KOWANIA Pragne˛ wtymmiejscupodzie˛kowac´ Wszystkim,bezktórychtapracabyniepowstała: – Promotorowi dr hab. inz˙. Markowi Gorgoniowi z pomoc w tworzeniu rozprawy oraz opieke˛ nad moimrozwojemnaukowym, – Panu dr inz˙. Zbigniewowi Mikrutowi za dobre słowo i motywowanie do wysiłku prowadzenia badan´,atakz˙ekonsultacjewsprawachalgorytmówwizyjnych, – Panu mgr inz˙. Mateuszowi Komorkiewiczowi za pomoc w sprze˛towej weryfikacji zaimplemen- towanych algorytmów oraz owocna˛współprace˛, której rezultatem były wartos´ciowe publikacje naukowe, – całemu zespołowi Laboratorium Biocybernetyki, Katedry Automatyki i Inz˙ynierii Biomedycznej pod kierownictwem prof. dr hab. inz˙. Ryszarda Tadeusiewicza za stworzenie miłej atmosfery do realizacjibadan´ naukowychipracydydaktycznej, – RodzicomiDziadkomzazapewnieniemiwarunkówimotywowaniedorozwojunaukowegoioso- bistego, – WujkowiStanisławowiiCiociKrystyniezawsparciewtrakciestudiówipracynauczelni, – mojejNarzeczonejMagdziezabyciezemna˛,szczególniewtrakcieintensywnejpracynadtekstem orazzaczaspos´wie˛conynakorekte˛ rozprawy. Spis tres´ci 1. Wste˛p............................................................................................................................................... 5 1.1. Motywacja............................................................................................................................. 5 1.2. Cele,tezapracyimetodologiabadan´.................................................................................... 9 1.3. Zawartos´c´ rozprawy............................................................................................................... 11 2. BudowaorazmetodyprojektowanialogikidlaukładówFPGA............................................... 13 2.1. BudowaukładówFPGA........................................................................................................ 15 2.2. ProjektowanielogikiukładówFPGA.................................................................................... 18 2.3. EtapyprojektowanialogikiFPGAzapomoca˛pakietuISEfirmyXilinx.............................. 20 3. Implementacja algorytmów kryptograficznych w układach FPGA na przykładzie algo- rytmuCLEFIA............................................................................................................................... 23 3.1. ImplementacjaalgorytmówkryptograficznychwukładachFPGA...................................... 25 3.2. AlgorytmkryptograficznyCLEFIA...................................................................................... 26 3.3. Sprze˛towaimplementacjaalgorytmuCLEFIAwukładzieFPGA........................................ 28 3.3.1. ImplementacjaS-BoxS0........................................................................................... 30 3.3.2. ImplementacjaS-BoxS1........................................................................................... 30 3.3.3. Implementacjamacierzyrozpraszaja˛cychM0iM1................................................. 30 3.3.4. ImplementacjaF-funkcjiF0iF1.............................................................................. 30 3.3.5. Implementacjapojedynczejrundyszyfrowania......................................................... 31 3.3.6. Implementacjageneratorapodkluczy........................................................................ 32 3.3.7. Implementacja18rundszyfrowania.......................................................................... 32 3.3.8. Wnioskizimplementacjisprze˛towejalgorytmuCLEFIA......................................... 34 3.4. Akceleratorkryptograficzny ................................................................................................. 35 3.4.1. ImplementacjanakarcieADM-XP............................................................................ 35 3.4.2. ImplementacjanakarcieRC100............................................................................... 37 3.4.3. Wnioskizbudowyakceleratorakryptograficznego................................................... 38 3.5. Podsumowanie ...................................................................................................................... 40 4. Implementacja zaawansowanych metod przetwarzania obrazów w układach FPGA na przykładziealgorytmuPGF.......................................................................................................... 41 1 SPISTRES´CI 2 4.1. ImplementacjaoperacjiprzetwarzaniaobrazuwukładachFPGA ....................................... 42 4.2. AlgorytmPGF....................................................................................................................... 46 4.3. Sprze˛towaimplementacjaalgorytmuPGFwukładzieFPGA.............................................. 48 4.3.1. Generacjakontekstu................................................................................................... 48 4.3.2. Obliczanieodległos´ci................................................................................................. 49 4.3.3. Sortowanieodległos´ci................................................................................................ 50 4.3.4. Usuwaniezakłócen´ impulsowych.............................................................................. 51 4.3.5. Równoległeobliczaniewartos´cia ia ..................................................................... 51 1 2 4.3.6. Równoległeobliczaniewartos´cis is ..................................................................... 52 1 2 4.3.7. ObliczaniewspółczynnikaJ(i)................................................................................. 52 4.3.8. WyznaczaniepeergroupifiltracjaGaussa................................................................ 52 4.3.9. Dodatkowemoduły.................................................................................................... 53 4.3.10. Uz˙yciezasobówlogicznych....................................................................................... 53 4.4. Ocenajakos´cisprze˛towejimplementacjialgorytmuPGF..................................................... 54 4.5. TestowaniemodułunaplatformieRC100............................................................................ 57 4.6. TestowaniemodułunaplatformieVirtex6............................................................................ 57 4.7. Podsumowanie....................................................................................................................... 58 5. Implementacjaoperacjibinaryzacjilokalnejjakoprzykładwykorzystaniaje˛zykawyso- kiegopoziomuwprogramowaniulogikiukładuFPGA............................................................. 60 5.1. Binaryzacjalokalna............................................................................................................... 61 5.2. Je˛zykMitrion-C..................................................................................................................... 64 5.3. Sprze˛towaimplementacjabinaryzacjilokalnejwje˛zykuMitrion-C.................................... 65 5.3.1. ImplementacjatoruwizyjnegoioperacjiLUT.......................................................... 65 5.3.2. Pierwszawersjaoperacjibinaryzacjilokalnej(BL1)................................................ 66 5.3.3. Zmodyfikowanawersjaoperacjibinaryzacjilokalnej(BL2)..................................... 67 5.3.4. Implementacjabinaryzacjilokalnejmetoda˛Sauvola................................................. 68 5.3.5. Stałoprzecinkowaimplementacjabinaryzacjilokalnejmetoda˛Sauvola................... 70 5.4. Podsumowanie....................................................................................................................... 72 6. Implementacja operacji analizy obrazu na przykładzie zaawansowanej generacji tła isegmentacjiobiektów................................................................................................................... 73 6.1. ImplementacjaalgorytmówanalizyobrazówwukładachFPGA......................................... 74 6.2. Detekcjaobiektównasekwencjiwideozwykorzystaniemgeneracjitła.............................. 76 6.3. Przegla˛dmetodgeneracjitła.................................................................................................. 77 6.3.1. Algorytmynierekurencyjne....................................................................................... 78 6.3.2. Algorytmyrekurencyjne............................................................................................ 79 6.4. Przegla˛dmetodgeneracjitłazrealizowanychwukładachFPGA ........................................ 79 T.Kryjak Implementacjazaawansowanychalgorytmówprzetwarzania,analizyiszyfrowaniaobrazów wukładachreprogramowalnych SPISTRES´CI 3 6.5. Zaproponowaneizrealizowanemetodygeneracjitłaisegmentacjiobiektów...................... 81 6.5.1. Wielowariantowageneracjatłazsegmentacja˛napodstawiejasnos´ci,koloruitek- stury............................................................................................................................ 82 6.5.1.1 Zaproponowanametodageneracjitła . . . . . . . . . . . . . . . . . . 84 6.5.1.2 Sprze˛towaimplementacjazaproponowanejmetodygeneracjitła . . . . 86 6.5.1.3 Zaproponowanaizrealizowanametodasegmentacjiobiektów . . . . . 88 6.5.1.4 Sprze˛towaimplementacjametodysegmentacjiobiektów . . . . . . . . 88 6.5.1.5 IntegracjageneracjitłaisegmentacjinaplatformieFPGASP605 . . . 90 6.5.1.6 Rezultatyiwnioski . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 6.5.2. Zmodyfikowanawersjawielowariantowejgeneracjitłazsegmentacja˛napodsta- wiejasnos´ci,koloruitekstury.................................................................................... 95 6.5.2.1 Modyfikacjemoduługeneracjitła . . . . . . . . . . . . . . . . . . . . 96 6.5.2.2 Szczegółowaanalizaprecyzjiobliczen´ . . . . . . . . . . . . . . . . . 98 6.5.2.3 Zmodyfikowanametodasegmentacjiobiektów . . . . . . . . . . . . . 101 6.5.2.4 Testyzmodyfikowanejgeneracjitłaisegmentacjiobiektów . . . . . . 107 6.5.2.5 ImplementacjaitestowanienaplatformieML605 . . . . . . . . . . . 109 6.5.2.6 Porównanie wykonanych implementacji wielowariantowych metod generacjitłaisegmentacjiobiektów . . . . . . . . . . . . . . . . . . . 112 6.5.3. Zrealizowanejednowariantowemetodygeneracjitłaisegmentacjiobiektów..........113 6.6. Podsumowanie ......................................................................................................................117 7. Implementacja sprze˛towa algorytmów wykorzystywanych w zaawansowanych syste- machmonitoringuwizyjnego........................................................................................................119 7.1. Detekcjanaruszeniastrefyzabronionej.................................................................................120 7.1.1. Zaproponowanyalgorytmijegoimplementacjasprze˛towa......................................121 7.1.2. Rezultatyiwnioski....................................................................................................122 7.2. DetekcjagłowyiramionzwykorzystaniemcechLBPklasyfikatoraSVMimaskiobiektów122 7.2.1. DeskryptorLBP.........................................................................................................123 7.2.2. DetekcjaobiektówzwykorzystaniemLBP ..............................................................125 7.2.3. Proponowanyalgorytm .............................................................................................127 7.2.3.1 Wykorzystanebazydanych . . . . . . . . . . . . . . . . . . . . . . . 127 7.2.3.2 Wybórdeskryptora . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 7.2.4. Implementacjasprze˛towaproponowanegoalgorytmu...............................................128 7.2.5. Rezultatyiwnioski....................................................................................................131 7.3. Detekcjasabotaz˙ukamery.....................................................................................................132 7.3.1. Przegla˛distnieja˛cychmetodautomatycznegowykrywaniasabotaz˙u........................132 7.3.1.1 Utrataostros´ci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 T.Kryjak Implementacjazaawansowanychalgorytmówprzetwarzania,analizyiszyfrowaniaobrazów wukładachreprogramowalnych SPISTRES´CI 4 7.3.1.2 Przykryciekamery . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 7.3.1.3 Zmianakadru . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 7.3.1.4 Innepodejs´cia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 7.3.2. Zaproponowanametodadetekcjisabotaz˙ukamery...................................................134 7.3.2.1 Porównywaniehistogramów. . . . . . . . . . . . . . . . . . . . . . . 135 7.3.2.2 Porównywaniekrawe˛dzi . . . . . . . . . . . . . . . . . . . . . . . . . 137 7.3.2.3 Analizas´redniejjasnos´ci . . . . . . . . . . . . . . . . . . . . . . . . 138 7.3.2.4 Redukcjaliczbyfałszywychalarmów . . . . . . . . . . . . . . . . . . 139 7.3.3. Implementacjasprze˛towadetekcjisabotaz˙usystemuwizyjnego..............................140 7.3.4. Rezultatyiwnioski.....................................................................................................142 7.4. Podsumowanie.......................................................................................................................142 8. Podsumowanie................................................................................................................................145 Bibliografia...........................................................................................................................................149 Spisskrótów..........................................................................................................................................166 T.Kryjak Implementacjazaawansowanychalgorytmówprzetwarzania,analizyiszyfrowaniaobrazów wukładachreprogramowalnych 1. Wste˛p 1.1. Motywacja Spos´ród wszystkich zmysłów człowieka wzrok jest tym, który dostarcza najpełniejszej informacji o otaczaja˛cym s´wiecie, a przetwarzanie obrazów angaz˙uje wie˛ksza˛cze˛s´c´ naszego mózgu. Badania nad procesemwidzeniauludzi,atakz˙einnychssakównaczelnych,trwaja˛odlat.Ichcelemjestpoznanieme- chanizmów,którepowoduja˛,z˙eimpulsynerwowe,wygenerowanenasiatkówceokaprzezfotoreceptory wraz˙liwe na s´wiatło, zamieniane sa˛w abstrakcyjna˛reprezentacje˛ widzianej sceny w korze wzrokowej. Pomimo sporych wysiłków neurobiologów, a takz˙e specjalistów z innych dziedzin np. psychologów, systemwizyjnyczłowiekanadalpozostajetajemnica˛,któraodkrywanajestbardzopowoli. Jakdoskonale“działa”uludziprzetwarzanie,analizairozpoznawanieobrazówprzekonujesie˛kaz˙dy, kto próbuje zaimplementowac´ jakis´ bardziej złoz˙ony algorytm wizyjny np. wyodre˛bnianie cze˛s´ci ciała oraz przedmiotów, które trzyma okres´lona osoba. Juz˙ kilkuletnie dziecko wskaz˙e lokalizacje˛ ra˛k, nóg, głowy,atakz˙epowie,z˙enp.“tenPanniesieteczke˛,atamtaPanitorebke˛”itownajróz˙niejszychwarun- kach os´wietleniowych i pogodowych, w obecnos´ci innych osób na scenie, przy wyste˛puja˛cym cze˛s´cio- wym przesłanianiu, a takz˙e w przypadku jednorodnego koloru ubioru. Próba realizacji takiej detekcji wsztucznymsystemiewizyjnym,napotykanarozlicznetrudnos´ciiwymagauz˙yciabardzowymys´lnych izłoz˙onychobliczenioworozwia˛zan´ algorytmicznych. Kolejna, unikatowa zdolnos´c´ człowieka to łatwos´c´ semantycznego opisania obserwowanej sceny tj. nazywania poszczególnych przedmiotów oraz “rozumienia” ich zachowania. Przykładowo kaz˙dy z nas, jest w stanie opisac´ przedstawiona˛ na dowolnym zdje˛ciu sytuacje˛: nazwac´ konkretne obiekty (ludzi, samochody, zwierze˛ta), okres´lic´ moz˙liwe ich zachowania oraz zachodza˛ce pomie˛dzy nimi relacje. Po- prawna realizacja tego zadania w systemie sztucznym do dzisiaj wydaje sie˛ byc´ nieosia˛galna. Istnieja˛ wprawdzie rozwia˛zania, które cze˛s´ciowo sa˛w stanie “zrozumiec´” prezentowana˛scene˛, ale pełne od- wzorowaniepercepcjiczłowiekajestbardzoodległeiwymagawieludalszychpracbadawczych.Przed- stawione wyz˙ej rozwaz˙ania moz˙na oczywis´cie przenies´c´ z obrazów statycznych na sekwencje wideo. Równiez˙ w tym przypadku łatwos´c´, z jaka˛człowiek interpretuje widziana˛sytuacje˛ jest zdumiewaja˛ca. Podstawa˛takdoskonałegodziałanianaszegosystemuwizyjnegojest“wiedza”rozumianajakoogółtre- s´ci utrwalonych w umys´le ludzkim w wyniku kumulowania dos´wiadczenia oraz uczenia sie˛. To ona pozwalapoprawnienazywac´ orazprzewidywac´ zachowaniesie˛ obiektów.Tymniemniejmechanizmten jesttakskomplikowany,z˙etrudnogoprzydzisiejszymstaniewiedzyoraztechnikiwpełnizamodelowac´. Przetwarzanie, analiza i rozpoznawanie obrazów, pomimo opisanych powyz˙ej trudnos´ci, sa˛bardzo 5 1.1.Motywacja 6 pre˛z˙nie rozwijaja˛ca˛sie˛ dziedzina˛nauki stosowana˛coraz cze˛s´ciej w aplikacjach przemysłowych. Wy- nika to z szerokich moz˙liwos´ci jakich dostarcza analiza obrazowa. Ws´ród zastosowan´ komercyjnych moz˙na wskazac´: procesory graficzne w aparatach fotograficznych i kamerach, których zadaniem jest poprawa obrazu uzyskanego bezpos´rednio z matrycy, metody kompresji i dekompresji strumienia wi- deo, systemy nadzoru pracuja˛ce na liniach produkcyjnych (np. analiza poprawnos´ci wykonania detali elementów),systemyrozpoznawaniatablicrejestracyjnych(corazcze˛s´ciejdoste˛pnenaparkingachoraz jako element fotoradarów), zaawansowane systemy monitoringu wizyjnego oraz cały szereg aplikacji programowych od pakietów do obróbki zdje˛c´ (typu Gimp, Photoshop), po systemy wspomagaja˛ce ana- lize˛ obrazów medycznych. Wymienione przykłady to tylko niewielki fragment, gdzie techniki wizyjne znajduja˛praktycznezastosowanie. W badaniach naukowych omawiany temat obecny jest od lat i cieszy sie˛ niesłabna˛cym zaintereso- waniem. Dowodem niech be˛dzie liczba konferencji pod patronatem IEEE zwia˛zana z tematyka˛prze- twarzanie obrazów (ang. image processing) oraz rozpoznawaniem wzorców (ang. pattern recognition) wynosza˛ca 63 (w latach 2010-2012), a takz˙e szereg czasopism bezpos´rednio zwia˛zanych z ta˛tematyka˛ (przykładowo czasopisma z listy filadelfijskiej np. IEEE Transactions on Image Processing, Journal of Real-TimeImageProcessing,IEEETransactionsonPatternAnalysisandMachineIntelligence).Tema- tykabadan´ jestbardzoobszernairozcia˛gasie˛ odprojektowanianowychmetodakwizycjiiprzetwarza- nia,poprzezulepszaniemetodanalizyireprezentacjiinformacji,az˙ doelementówrozumieniaobrazów. Kompleksoweomówieniedziedzinywykraczapozatematyke˛ niniejszejrozprawy,jednakz˙ewdalszych rozdziałachzawartopodstawoweinformacjeoalgorytmachszyfrowania,przetwarzaniawste˛pnegooraz analizyobrazów,któremaja˛zwia˛zekztematyka˛pracy. Zobserwacjiautorawynika,z˙eimalgorytmjestdoskonalszy,bardziejniezawodnyorazosia˛galep- szewyniki(np.rozpoznawania),tymwymagaonwie˛kszychmocyobliczeniowych.Stwierdzenietopo- kazuje, z˙e omawiana tematyka ma dwa punkty cie˛z˙kos´ci. Pierwszym sa˛algorytmy oraz praca nad ich doskonaleniem.Drugimkwestiaimplementacjitychz˙ealgorytmów,gdyz˙ opróczskutecznos´ciogromne znaczenie ma takz˙e praktyczna uz˙ytecznos´c´ rozwia˛zania, która w wielu przypadkach sprowadza sie˛ do osia˛gnie˛cia“akceptowalnego”dlaaplikacjiczasuobliczen´.Przykładowo,wrzeczywistymsystemiemo- nitoringuwizyjnegoniesprawdzisie˛ nawetnajbardziejniezawodnadetekcjaosób,oileniebe˛dziemoz˙- liwajejrealizacjawbardzokrótkimczasie(tj.albopłynniedlakolejnychramek,albodlacoN-tejramki, przyczymwartos´c´ N niepowinnabyc´ zbytduz˙a). Gdyrozwaz˙asie˛ implementacje˛ danegoalgorytmu,doste˛pnychjestszeregplatform:komputeryPC wyposaz˙onewwydajneprocesoryogólnegoprzeznaczeniaGPP(ang.GeneralPurposeProcessor),wy- sokowydajne,specjalizowaneprocesorygraficzneGPU(ang.GraphicsProcessingUnit),układyFPGA (ang.FieldProgrammableGateArray)procesorysygnałoweDSP(ang.DigitalSignalProcessor),plat- formyhybrydoweskładaja˛cesie˛ zklasycznegoprocesoraogólnegoprzeznaczeniaorazzasobówrekon- figurowalnych(tzw.programowalneSoC—ang.SystemonChip)—przykładowoukładyfirmyCypress orazZynqfirmyXilinx,układyASIC(ang.ApplicationSpecificItegratedCircuit)orazinnerozwia˛zania wysocespecjalizowanenp.superkomputery(równiez˙ wpoła˛czeniuzkartamiFPGAiGPU). Kaz˙dazwymienionychplatformmaswojeunikalnecechy,któredecyduja˛ojejprzydatnos´ciwkon- kretnymzastosowaniu.Poniz˙ejomówionowybraneznich. T.Kryjak Implementacjazaawansowanychalgorytmówprzetwarzania,analizyiszyfrowaniaobrazów wukładachreprogramowalnych

Description:
Real-Time Image Processing, IEEE Transactions on Pattern Analysis and Machine Intelligence) Zaletami rozwi ˛azan DSP s ˛a: architektura przystosowana do realizacji operacji przetwarzania sy- . implementacj˛e programow ˛a algorytmu (zwykle C/C++ lub MATLAB), jej testy oraz ewentualne.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.