10.07.2015 Views

PRACA DYPLOMOWA MAGISTERSKA Automatyczna poprawa ...

PRACA DYPLOMOWA MAGISTERSKA Automatyczna poprawa ...

PRACA DYPLOMOWA MAGISTERSKA Automatyczna poprawa ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

StreszczenieNiniejsza praca opisuje różne techniki automatycznej poprawy jakości materiałów archiwalnych, zeszczególnym uwzględenieniem wykrywania oraz usuwania defektów, powodujących utratęinformacji w obrazie. W zaimplementowanej aplikacji do wykrywania uszkodzeń stosuje się szeregróżnych technik, natomiast do usuwania znalezionych artefaktów głównym modelem jest algorytmYamauchi, Haber i Seidel. Stworzone zostało róznież środowisko do testowania algorytmówprzetwarzania obrazów, w którym odbywały się testy. Opis zaimplementowanej aplikacji orazinstrukcja jej obsługi znajduje się w dodatku A. Przeprowadzono również analizę, zarównoteoretyczną, jak i praktyczną wybranych metod, dokonując ich oceny tak subiektywnej jak iliczbowej.Słowa kluczowe: przetwarzanie obrazów, <strong>poprawa</strong> jakości, materiały archiwalne, uszkodzeniazdjęć, detekcja uszkodzeń, zamalowywanie, synteza teksturAutomatic archival materials' quality enhancement by means of digital image processingAbstractThe following work describes different techniques of automatic archival materials' qualityenhancement, with emphasis on detection and removal of defects causing the loss of information inthe image. In the application implemented, a few various methods are proposed for detection ofdamages and Yamauchi, Haber & Seidel algorithm is used to remove found artifacts. Anenvironment for testing image processing algorithms which was also used during the tests ofdescribed techniques was also created. The description of the application and the user manual canbe found in the appendix A. An analysis, theoretical as well as practical, was also performed, withboth subjective and number estimation.Keywords: image processing, quality enhancement, archival materials, photograph damages, defectdetection, inpainting, texture synthesis


PodziękowaniaProfesorowi Przemysławowi Rokicie, za dużą cierpliwość i zaufanieRodzicom, za wielkie wsparcie i mobilizacjęJoli i MarcieWszystkim, którzy starali się dostarczyć mi motywacji do napisania tej pracyWsyzstkim, którzy pomogli w jej redakcji


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Spis treści1. WSTĘP...............................................................................................................................81.1. SZKIC PROBLEMU I CEL PRACY.........................................................................81.2. OBECNE PODEJŚCIE DO ZAGADNIENIA.........................................................111.3. GŁÓWNE PROBLEMY ZWIĄZANE Z AUTOMATYCZNĄ POPRAWĄJAKOŚCI.........................................................................................................................131.4. STRUKTURA PRACY............................................................................................142. PRZEGLĄD LITERATURY............................................................................................152.1. WPROWADZENIE..................................................................................................152.2. WYKRYWANIE USZKODZEŃ..............................................................................152.3. USUWANIE USZKODZEŃ....................................................................................173. PODZIAŁ USZKODZEŃ I ICH CECHY CHARAKTERYSTYCZNE.........................203.1. WPROWADZENIE..................................................................................................203.2. USZKODZENIA MECHANICZNE........................................................................213.3. USZKODENIA CHEMICZNE................................................................................273.4. ZABRUDZENIA......................................................................................................314. METODY WYKRYWANIA USZKODZEŃ W STARYCH FOTOGRAFIACH............334.1. WPROWADZENIE..................................................................................................334.2. DETEKCJA RYS......................................................................................................334.3. DETEKCJA ODBARWIEŃ.....................................................................................354.4. DETEKCJA ROZDARĆ I PĘKNIĘĆ......................................................................394.4.1. KRYTERIUM UNIKALNOŚCI KOLORU.....................................................414.4.2. KRYTERIUM SZAROŚCI...............................................................................424.4.3. KRYTERIUM KSZTAŁTU..............................................................................454.5. DETEKCJA ZAGIĘĆ...............................................................................................494.6. ANALIZA TEKSTUR..............................................................................................545. TECHNIKI NAPRAWY USZKODZONYCH OBRAZÓW...........................................595.1. WPROWADZENIE..................................................................................................595.2. MODEL ADDYTYWNO-MULTIPLIKATYWNY.................................................625.3. ZAMALOWYWANIE (ANG. INPAINTING).........................................................645.3.1. ALGORYTM ZAMALOWYWANIA BERTALMIO.......................................64- 5 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”. A. OPIS DZIAŁANIA PROGRAMU..............................................................................123. B. ZAWARTOŚĆ PŁYTY................................................................................................126- 7 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”1 WSTĘP1.1 SZKIC PROBLEMU I CEL PRACYFotografia jest obecnie najbardziej rozpowszechnioną dziedziną sztuki, głównie jejcyfrowa forma. Oprócz innych zalet, fotografia cyfrowa charakteryzuje się tym, że zdjęciaprzechowywane w postaci elektronicznej nie ulegają uszkodzeniom (pomijając kwestięfizycznego zniszczenia nośników, na których są przechowywane). W przypadku obrazówtworzonych w technice analogowej degradacji podlegają gotowe odbitki, jak również iklisza fotograficzna, co sprawia, że nie istnieje forma oryginalna, niezmienna, z której wrazie potrzeby można wykonać kolejne kopie. Pomocne są w takiej sytuacji technikidigitalizacji obrazu analogowego. Przeniesienie odbitek do postaci cyfrowej umożliwiazachowanie ich w formie niezmiennej przez praktycznie nieograniczony czas. Dlatego teżskanuje się materiały archiwalne, nie tylko fotografie, ale również teksty pisane,drukowane czy filmy. Ponieważ jednak możliwość taka istnieje od stosunkowo niedawna,zaś fotografia rozwija się już od ponad wieku, dużo materiałów jest zdigitalizowanych podziesiątkach lat od ich utworzenia. Przez ten czas w naturalny sposób ulegały onestopniowej degradacji, dlatego ich cyfrowa postać jest istotnie różna od pierwotnej. Z tegowzględu zachodzi potrzeba odtwarzania formy oryginalnej poprzez usuwanie defektów ipoprawę jakości obrazów metodami ich cyfrowego przetwarzania. Jest to istotne nie tylkoz uwagi na lepszą wizualną jakość materiałów archiwalnych po renowacji, ale równieżprzez inne, bardziej praktyczne i mierzalne kwestie, wymienione poniżej:1. Obrazy bez defektów na ogół lepiej się kompresują ze względu na charakteralgorytmów kompresji obrazów (np. JPEG). Wynika to z faktu, że gładkiepowierzchnie mogą być efektywniej kodowane niż gdy występują na nichzniekształcenia. Co za tym idzie, obrazy takie wymagają mniejszego pasma doprzesłania przez sieć, czy też mniej miejsca do zapisania ich na nośniku.2. Jeśli obraz jest wolny od defektów, lepiej działać będą dla niego algorytmy opisutreści, gdyż jego kluczowe elementy będą lepiej widoczne i czytelne, co pozwoli naich łatwiejsze sklasyfikowanie.- 8 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Materiały archiwalne mogą być różnego rodzaju (jak wspomniano powyżej). Należyistotnie rozróżnić metody poprawy jakości dla każdej z tych grup, ze względu na ichzróżnicowaną strukturę i zawartość informacyjną. Poniżej przedstawiono najbardziejtypowy podział materiałów archiwalnych oraz związane z ich naprawą problemy itechniki.1. Materiały zawierające pismo, czy to w postaci drukowanej, czy też odręcznej, awięc wszelkiego rodzaju starodruki, rękopisy, dawne książki. Problem przy ichodtwarzaniu polega na tym, że obrazy pisma charakteryzują się bardzo niewielkąredundancją przestrzenną informacji, a co za tym idzie nawet stosunkowoniewielkie uszkodzenia mogą całkowicie zniszczyć sens tekstu i zawartośćinformacyjną materiału. Nawet jeżeli użyte zostaną zaawansowane techniki OCR iprawidłowo rozpoznane nieuszkodzone fragmenty tekstu, to brakujące elementymogą być interpretowane na różne sposoby, Przykładowo, jeśli zniszczeniu ulegniefragment obrazu zawierający jedną literę, można próbować odtworzyć słowo, któreją zawierało, posługując się słownikiem. Nawet takie odtworzenie może być jednakniejednoznaczne i wówczas należy posiłkować się kontekstem zdania, co jużwymaga nie tylko cyfrowej obróbki obrazu, ale i semantycznej analizyodtwarzanego tekstu. Jeżeli defekt będzie obejmował całe słowo, kilka słów czynawet całe zdania, informacja jest tracona w zasadzie bezpowrotnie i możnajedynie domyślać się jej, co jest już czynnością w żaden sposób niemożliwą dozautomatyzowania. Opisane zjawisko widoczne jest na rysunkach nr 2, 1 i 3.2. Stare filmy. W ich przypadku kwestia odtwarzania utraconej informacji jest dużołatwiejsza, gdyż nie tylko cechują się one istotną redundancją przestrzennąinformacji, ale również bardzo dużą redundancją czasową, Informacja jest nie tylkorozproszona po pojedynczej klatce, ale również (a często nawet bardziej) posąsiednich. Co za tym idzie, do usuwania zakłóceń można nie tylko używaćotoczenia uszkodzonego obszaru, ale również obszarów leżących w analogicznymmiejscu na sąsiednich klatkach filmu, zakładając, że będą one bardzo podobne dorozpatrywanego. Przykład odtwarzania informacji w uszkodzonym obszarze wsekwencji filmowej widoczny jest na rysunku nr 4.3. Archiwalne fotografie. Obrazy statyczne cechują się podobną redundancją- 9 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”przestrzenną informacji jak ruchome, gdyż pojedyncze klatki są właśnie takimistatycznymi obrazami. Brakuje jednak możliwości skorzystania z sąsiednich klatek,bo takowych nie ma. Jeżeli odtwarzanie ma więc być zautomatyzowane, toalgorytmy muszą bazować na naturalnym założeniu, że informacja nie jest traconabezpowrotnie i może być wywnioskowana na podstawie otoczenia uszkodzonegofragmentu obrazu. Dlatego rekonstrukcja fotografii jest bardziej wymagającądziedziną niż filmów, ale nie tak złożoną jak tekstów.Rysunek 1: uszkodzenie rękopisu powodującenieczytelność jednej literyRysunek 2: uszkodzenia rękopisu powodującenieczytelność wielu literRysunek 3: uszkodzenie rękopisu powodującenieczytelność części zdaniaW niniejszej pracy autor skupił się na problemie rekonstrukcji uszkodzonych materiałówfotograficznych, ponieważ z racji powszechności fotografii, istnieje duże zapotrzebowaniena tego rodzaju aplikacje. Mogą być one wykorzystywane zarówno w użytku domowym,do rekonstrukcji starych, rodzinnych fotografii, jak również w przeznaczeniach bardziejmasowych, jak np. biblioteki. Zwłaszcza w tym drugim przypadku pożądane byłobymożliwie największe zautomatyzowanie tego procesu i uniezależnienie go od- 10 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”użytkownika. Istnieje szereg rozwiązań komercyjnych umożliwiających rekonstrukcjęuszkodzonych zdjęć, zarówno o przeznaczeniu ogólnym (jak np. Adobe Photoshop czyCorel Photo Paint), jak i dedykowanych. Wszystkie one są jednak w bardzo dużym stopniuzależne od człowieka, który musi albo sam wykonać korekcję albo przynajmniej wskazaćregiony uszkodzone lub podpowiedzieć aplikacji sposób ich naprawienia. Uniemożliwia toich wykorzystanie w zautomatyzowanym środowisku masowej naprawy zdjęćarchiwalnych.Rysunek 4: usuwanie uszkodzeń z klatek filmowych na przykładzie filmu "Metropolis" Fritza Langa1.2 OBECNE PODEJŚCIE DO ZAGADNIENIAObecne podejście do naprawy starych fotografii opiera się na skomplikowanej ręcznejobróbce uszkodzonych odbitek. Zdjęcia są czyszczone, luki w emulsji uzupełniane, aniektóre części nawet ręcznie odmalowywane. Podejście takie ma szereg wad. Przede- 11 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”wszystkim, wymaga bardzo dużej wiedzy i umiejętności, a co za tym idzie, jest niezwyklekosztowne i nieopłacalne w zastosowaniach masowych czy domowych. Ponadto, przypracy z odbitką nie pozostaje żadna kopia zapasowa, wszelkie operacje wykonywane nazdjęciu są nieodwracalne. Kolejną istotną kwestią jest fakt, że nawet perfekcyjnieodtworzona fotografia nadal pozostaje podatna na rozmaite zniszczenia natury fizycznej ichemicznej. Rzadko kiedy fotografie są przechowywane w optymalnych warunkach, a tosprzyja powstawaniu uszkodzeń. Jednak nawet w przypadku, kiedy warunki są dobre,odbitka będzie ulegać zniszczeniom, tyle że wolniej. W przypadku zdjęć cyfrowych nie matego problemu, zaś odtwarzanie pierwotnej jakości materiałów jest dużo bezpieczniejsze.Zawsze możliwy jest powrót do postaci sprzed próby. Ponadto, naprawa materiałówcyfrowych nie wymaga specjalistycznej wiedzy, jedynie odpowiedniego oprogramowania.Może też być prowadzona tzw. metodą prób i błędów, co w obecnych czasach czyni jądostępną dla każdej osoby umiejącej się posługiwać komputerem.1.3 GŁÓWNE PROBLEMY ZWIĄZANE Z AUTOMATYCZNĄPOPRAWĄ JAKOŚCIOdbitka na papierze fotograficznym jest obiektem trójwymiarowym, mimo niewielkichwartości w jednym z tych wymiarów. Uszkodzenia, takie jak pęknięcia czy zabrudzenia,bardzo wyraźnie wyróżniają się przy analizie grubości fotografii, są one widoczne gołymokiem i łatwo wyczuwalne w dotyku. Podczas skanowania obraz przenoszony jest wprzestrzeń dwuwymiarową i informacja o grubości jest tracona. Znacznie utrudnia toautomatyczną detekcję uszkodzeń, które przestają się odróżniać od elementów obrazu.Ludzkie oko jest w stanie z dużym prawdopodobieństwem poprawnie ocenić, czy danyfragment obrazu był płaski i jest to element zawartości informacyjnej, czy teżcharakteryzował się zaburzeniami w fakturze i jest zniekształceniem. Automatyzacjatakiego wnioskowania jest jednak bardzo złożonym zagadnieniem.W związku z opisanym faktem, automatyczna detekcja uszkodzeń zeskanowanych zdjęćjest bardzo trudna. Maszyna nie dysponuje bowiem możliwością oceny, czy dany fragment- 12 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”obrazu jest częścią jego zawartości, czy też uszkodzeniem. W przypadku przemysłowychzastosowań przetwarzania obrazów, gdzie znana jest prawidłowa postać zdjęcia, wykryciedefektów jest możliwe. Jeżeli jednak chodzi o zastosowania uniwersalne, analizawysokopoziomowa (semantyczna) jest na tyle skomplikowana, że prowadzi donieakceptowalnie długich czasów przetwarzania, o ile w ogóle jest możliwa. Z tegopowodu do zagadnienia wykrywania uszkodzeń w starych fotografiach należy podchodzićniskopoziomowo i lokalnie. Badając strukturę obrazu na małej przestrzeni możnastwierdzić, czy dany obszar wykazuje pewne cechy charakterystyczne dla znanych typówuszkodzeń i w ten sposób zaklasyfikować go do grupy elementów obrazu bądź artefaktów.Taka technika ma małe szanse na całkowicie bezbłędne wykrycie wszystkich typówdefektów, dlatego należy pozostawić użytkownikowi możliwość wskazania zarównoobszarów błędnie uznanych za uszkodzenia, jak i zaznaczenia nowych przedprzystąpieniem do korekcji zniekształconych miejsc.1.4 STRUKTURA PRACYNiniejsza praca jest zorganizowana w sposób następujący. Rozdział 2 przedstawia stanwiedzy i literatury w badanej dziedzinie na chwilę obecną. W rozdziale 3 opisanopodstawowy podział rodzajów uszkodzeń typowo występujących w archiwalnychfotografiach, wraz z opisem ich cech charakterystycznych, które mogą być przydatne doich detekcji oraz przykładami z rzeczywistych zdjęć. W rozdziale 4 zaproponowanometody wykrywania pewnych znanych klas uszkodzeń na podstawie lokalnej analizyobrazu. Rozdział 5 poświęcono technikom naprawy fotografii przy założeniu, że znane sąmiejsca występowania artefaktów oraz porównaniu ich efektywności, zaś rozdział 6analizie efektów działania powyższych algorytmów pod względem skuteczności (ocenianejsubiektywnie) i szybkości generowania wyników. W Dodatku A przedstawiono opisaplikacji, będącej implementacją opisanych w pracy technik.- 13 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”2 PRZEGLĄD LITERATURY2.1 WPROWADZENIEJak wspomniano wcześniej (w rozdziale 1.1), istnieje szereg rozwiązań półautomatycznychdo naprawy uszkodzonych fotografii, wymagających interakcji z użytkownikiem.Zagadnienie w pełni automatycznej poprawy jakości materiałów archiwalnych pojawiło sięjednak dopiero stosunkowo niedawno i nie jest jeszcze rozpowszechnione, zarówno jeślichodzi o istniejące oprogramowanie, jak i literaturę. Próba wprowadzenia w temat izarysowania najistotniejszych kwestii w tej materii została podjęta dopiero w [1]. Praca tazawiera klasyfikację defektów spotykanych w starych zdjęciach oraz przedstawia sposóbich powstawania. Autorzy zwracają uwagę na fakt, że nie istnieją proste reguły, któremogłyby służyć odróżnianiu uszkodzeń od elementów obrazu. Jako metodę odtwarzaniaobrazów proponują zamalowywanie (ang. inpainting) na przykład wg [2], nieprzedstawiają jednak konkretnych rozwiązań algorytmicznych ani do detekcji artefaktów,ani do naprawy fotografii. Opisywany artykuł stał się punktem wyjścia do niniejszej pracy.Poniżej przedstawione zostały wybrane istniejące pozycje opisujące algorytmy służąceodnajdowaniu zniekształceń oraz ich usuwaniu.2.2 WYKRYWANIE USZKODZEŃProblematyka automatycznego wykrywania uszkodzeń w obrazach statycznych jestkwestią bardzo złożoną, a dodatkowo stosunkowo nową, zatem nie doczekała się jeszczeopisania w literaturze. Można jedynie wskazać kilka pozycji, które opisują pewneniewielkie obszary tej dziedziny lub opierają się na podejściu półautomatycznym,wymagającym interakcji ze strony użytkownika.Autorzy [3] proponują technikę detekcji rys w obrazach statycznych oraz ich usuwania zwykorzystaniem algorytmu genetycznego, przy założeniu, że rysy te są pionowe (jest totypowy rodzaj zniekształceń dla klatek w archiwalnych taśmach filmowych).- 14 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Podstawowym kryterium detekcji są zaburzenia wariancji w kolumnach obrazu, które stająsię danymi wejściowymi do algorytmu genetycznego, usuwającego zniekształcenia.Szerszy opis tej metody można znaleźć w rozdziale 4.2. niniejszej pracy.Prace [4] i [5] przedstawiają techniki detekcji półprzezroczystych plam na zdjęciachpowstałych w wyniku oddziaływania wilgoci. Obie propozycje są jednak rozwiązaniamipółautomatycznymi i wymagają od użytkownika wskazania co najmniej jednego pikselanależącego do obszaru uszkodzonego.Wiele prac traktuje o wykrywaniu uszkodzeń w obszarach pokrytych teksturą. Niestety,część z nich zakłada znajomość prawidłowej struktury tekstury w rozpatrywanychobszarze, wszystkie zaś, z powodów opisanych dalej w niniejszej pracy, są one małoprzydatne do rozpatrywanego zastosowania. Wspomnieć jednak należy np. o [6], gdzieautorzy przedstawiają przegląd różnych współczynników wynikających z filtrów Gabora,które można wykorzystywać do parametryzowania tekstur (które jest niezbędne w procesiedetekcji uszkodzeń). Ponadto w pozycjach np. [7] czy [8], przedstawione zostałymożliwości zastosowania filtrów Gabora do wykrywania uszkodzeń w teksturach. Filtry tecechuje fakt, że dla podobnych tekstur dają podobne odpowiedzi. Innymi słowy, mogąsłużyć do odróżniania od siebie obszarów o różnych teksturach, co jest bardzo trudne lubniemożliwe przy wykorzystaniu tradycyjnych algorytmów segmentacji. Można więcpróbować stwierdzić, czy dany obszar wypełniony jest taką teksturą jak jego otoczenie i natej podstawie identyfikować uszkodzenia. W [7] autorzy proponują skorzystanie zewspółczynnika energii odpowiedzi w celu detekcji zniekształceń, jednak wychodzą zzałożenia, że znana jest prawidłowa struktura tekstury, co nie jest prawdą w przypadkurozpatrywanego zagadnienia. Takiego założenia nie przyjmują autorzy [8]. Proponują onimetodę wykorzystującą wektory nośne (SVM, Support Vector Machine) w celuanalizowania odpowiedzi filtrów Gabora. Problemem jest fakt, że taki klasyfikator musiotrzymać duży zestaw danych uczących (autorzy proponują podanie próbek arbitralniewybranych 50 tekstur). W ten sposób analizowane będą mogły być tylko tekstury podobnedo tych podanych jako wektory uczące. Ponieważ podanie odpowiednich próbek jesttrudne w rozpatrywanym zastosowaniu, zaś wizualna jakość występujących w fotografiach- 15 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”tekstur pozostawia wiele do życzenia, metoda ta również jest trudna do zaadaptowania wniniejszej pracy (zagadnienie to dokładniej jest opisane w rozdziale 4.6).Bardzo istotną pozycją w dziedzinie wykrywania defektów jest [9], gdyż opisuje w pełniautomatyczną technikę wykrywania odbarwień, wynikających głównie z oddziaływańchemicznych na papier fotograficzny oraz rozwijania się na nim mikroorganizmów. Bazujeona na założeniu, że stare fotografie są czarno-białe lub mają odcienie tzw. sepii. Na tejpodstawie można stwierdzić, które z pikseli nie pasują do generalnej charakterystykihistogramu obrazu, a co za tym idzie, są punktami odbarwień. Algorytm ten opisany jestdokładniej w rozdziale 4.3.2.3 USUWANIE USZKODZEŃZagadnienie usuwania defektów z obrazów jest szeroko rozpowszechnione w literaturze.Na ogół prace na ten temat dotyczą rozmaitych wariantów bądź to zamalowywania (ang.inpainting), bądź syntezy tekstur (ang. texture synthesis). Poniżej przedstawiono po kilkanajbardziej znaczących prac z obu tych dziedzin.Jedną z pierwszych pozycji dotyczących wypełniania luk w statycznych obrazach jest [2].Autorzy przedstawiają definicję zamalowywania oraz przedstawiają historyczny zarysdziedziny. Idea zaproponowanego przez nich algorytmu opiera się na metodologiifizycznego naprawiania uszkodzonych odbitek, gdzie najpierw przedłuża się liniedochodzące do krawędzi uszkodzonego obszaru, a następnie wypełnia powstałe w tejsposób regiony tłem i detalami. Algorytm ten został szczegółowo opisany w rozdziale5.3.1 niniejszej pracy.Publikacja [2] została wykorzystana przez autorów pozycji [10]. Proponują oni prostszyalgorytm, który daje porównywalne wyniki przy kilkukrotnym wzroście wydajności.Zaproponowana technika opiera się na wielokrotnym stosowaniu rozmycia (np.gaussowskiego), w celu propagacji informacji z otoczenia wypełnianego obszaru do jego- 16 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”wnętrza. Algorytm ten został opisany w rozdziale 5.3.2.Inne propozycja algorytmów zamalowywania można znaleźć np. w [11] czy [12]. Praca[11] opisuje szybki algorytm propagujący informację do wewnątrz wypełnianego obszaruna podstawie wielu pikseli z otoczenia naraz, używając różnych funkcji uśredniających. W[12] zaproponowane jest podejście bazujące na podziałach obrazu na mniejsze bloki domomentu, kiedy dostępnych będzie wystarczająco dużo nieuszkodzonych bloków, abywypełnić te uszkodzone. Algorytm ten sprawdza się bardzo dobrze w przypadku obrazów zszumem (autorzy przytaczają nawet przykłady z sięgającym 90% stopniem zaszumienia),jednak nie jest skonstruowany z myślą o wypełnianiu szerszych obszarów o charakterzeciągłym.Spośród wielu publikacji dotyczących syntezy tekstur w kontekście wypełniania luk wobrazach, jedną z pierwszych i najważniejszych pozycji jest [13]. Zainspirowana zostałapracami Claude'a Shannona z 1948 roku nad n-gramami i automatycznym tworzeniemprzy ich pomocy słów i zdań, mających brzmienie rzeczywistego tekstu angielskiego, alenie posiadających sensu ani poprawności gramatycznej (np. „I spent an interestingevening recently with a grain of salt” czy „One morning I shot an elephant in my arms andkissed him.”). Podobnie, jak Shannon zamodelował język jako łańcuch Markova, takautorzy pracy zamodelowali teksturę jako pole Markova (Markov Random Field – MRF).Bazując na tym założeniu, tekstura ze znanego obszaru jest powiększana piksel po pikseludo wnętrza regionu wypełnianego na podstawie przybliżonego rozkładuprawdopodobieństwa warunkowego w teksturze. Metoda ta szczegółowo opisana została wrozdziale 5.4.2.Autorzy pracy [14] wyszli z założenia, że nie ma potrzeby syntetyzować tekstury piksel popikselu, gdyż i tak składa się ona na ogół z powtarzalnych elementów. Zaproponowali więcpowielanie całych bloków tekstury w obszarze wypełnianym, a następnie zacieranie granicpomiędzy tak wstawionymi blokami przy pomocy programowania dynamicznego.Dokładniej metoda opisana została w rozdziale 5.4.4.- 17 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Zagadnienie syntezy tekstur na potrzeby wypełniania uszkodzonych obszarów zostałorozważone również w [15]. Autorzy również oparli się na założeniu, iż możnazamodelować teksturę jako pole Markova. Zaproponowane przez nich podejście różni sięjednak od opisanego w [13] tym, że synteza przebiega wielorozdzielczościowo (najpierwwypełnia się niższe częstotliwości przestrzenne, następnie wyższe) oraz zastosowanąmetodą odnajdywania najlepiej pasującego piksela z istniejącej tekstury przy użyciutechniki TSVQ (Tree-structured vector quantization). Technika ta jest przedstawiona wrozdziale 5.4.3.Istnieje również wiele innych propozycji technik syntezy tekstur, jak np. te opisane w [16],[17] czy [18]. W [16] opisana jest technika modelująca teksturę jako pole Markova(Markov Random Field), uwzględniająca wiele rozdzielczości i przybliżająca rzeczywistągęstość prawdopodobieństwa w teksturze przy pomocy okna Parzena. Na podstawie takskonstruowanej funkcji gęstości syntetyzowana jest tekstura. Pozycja [17] przedstawiaalgorytm oparty na podobnych założeniach, ale wykorzystujący zespoloną transformatęfalkową (CWT, Complex Wavelet Transform) w celu poprawy wydajności. Autorzy [18]przedstawiają technikę bazującą na algorytmie syntezy tekstur Efrosa i Leunga ([13]), aleze zmodyfikowaną kolejnością wybierania pikseli do wypełniania oraz pewnymuproszczeniem bardzo istotnie zwiększającym wydajność algorytmu, gdyż ograniczającymkonieczność każdorazowego przeszukiwania próbki tekstury.Propozycja połączenia technik zamalowywania (inpainting) oraz syntezy tekstur zostałaprzedstawiona w [19]. Autorzy zauważają, że zamalowywanie sprawdza się dobrze przyodtwarzaniu obszarów o niskich częstotliwościach przestrzennych, zaś źle przy wysokich,odwrotnie niż synteza tekstur. Zaproponowali więc oni podział obrazu na częśćniskoczęstotliwościową oraz wysokoczęstotliwościową, a następnie przeprowadzenie natych częściach wypełniania uszkodzonych obszarów niezależnie, w sposób dla danej częścinajlepszy. Powstałe w ten sposób dwa naprawione obrazy są następnie łączone zpowrotem, aby otrzymać jeden naprawiony obraz wyjściowy. Propozycja ta stała siępodstawą zaimplementowanego przez autora pracy algorytmu naprawy fotografii i jestopisana szczegółowo w rozdziale 5.5.- 18 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”3 PODZIAŁ USZKODZEŃ I ICH CECHYCHARAKTERYSTYCZNE3.1 WPROWADZENIEUszkodzenia występujące w archiwalnych fotografiach można podzielić na kilka grup wzależności od typu ich powstawania. Każda z tych grup posiada pewien zestawniskopoziomowych cech charakterystycznych, które wynikają ze sposobu ich tworzeniasię. Właściwości te, o ile są wystarczająco dyskryminujące, mogą następnie być użyte doich automatycznego wykrywania. Warto zauważyć, że jeżeli cechy te dotycząpojedynczych pikseli lub niewielkich ich grup, możliwa jest prostsza analiza, dotyczącatakich podstawowych własności jak barwa czy jasność. Jeśli jednak właściwościcharakterystyczne opisują cechy całego fragmentu obrazu, czyli dużo większej grupypikseli, przy wykrywaniu należy badać bardziej złożone parametry, takie jak np. histogramczy kształt regionu. Często bywa również tak, że ta pierwsza grupa metod daje lepszewyniki niż druga. Jest to konsekwencją prostego faktu: mianowicie liczba poziomówjasności pojedynczego piksela czy też liczba możliwych układów jasności w pewnymniewielkim otoczeniu jest ograniczona, a co za tym idzie, łatwiej jest ją podzielić na klasy.Liczba możliwych kształtów regionu, czy też wykresów histogramu jest w zasadzienieskończona i często klasyfikacja będzie musiała się odbywać w sposób heurystyczny,niedokładny.Jak wspomniano powyżej, podstawowym kryterium podziału typów defektów obrazówarchiwalnych jest sposób ich powstawania. Mogą one być efektem oddziaływańfizycznych z otaczającymi je obiektami – mówi się wówczas o uszkodzeniach naturyfizycznej. Mogą również tworzyć się na skutek oddziaływań chemicznych z powietrzem,wodą lub innymi materiałami, w sąsiedztwie których są przechowywane. Trzecią grupązniszczeń są szeroko pojęte zabrudzenia, czyli fragmenty innej substancji naniesione napapier fotograficzny.- 19 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Drugim z kryteriów, według których można podzielić powstawanie defektów jest ichpochodzenie „naturalne” lub antropogeniczne. Pierwszy typ to uszkodzenia powstałe naskutek długiego przechowywania (i używania) fotografii bez zapewnienia imodpowiednich warunków. Powstają one bez znaczącego udziału człowieka. Druga klasa todefekty powstałe w wyniku bezpośredniej, fizycznej i zamierzonej ingerencji człowieka wfotografię. Często jednak przydział danej grupy defektów do którejś z wymienionych klasjest trudny, gdyż ciężko jest ocenić „udział człowieka”. Przykładowo, ślady po zagięciachodbitek powstają na skutek działania czlowieka, ale z drugiej strony działanie to nie jestcelowe i nie ma na celu usunięcia części informacji z obrazu, zaś powstawanie i wyglądartefaktów wynika bezpośrednio ze struktury papieru fotograficznego. Dlatego nie jestjasne, czy uznać zagięcia za „naturalne” czy też nie.Aby w pełni zrozumieć naturę powstawania uszkodzeń, dobrze jest wiedzieć, jakzbudowany jest tradycyjny papier fotograficzny, obecnie rzadko już używany, jednaknajpowszechniejszy w przypadku starych fotografii. Otóż jest to papierowe podłożepokryte warstwą tzw. emulsji fotograficznej. Jest to zawiesina związków, najczęściejchlorków, srebra (rzadziej żelaza, platyny czy nawet uranu) w żelatynie. Materiał ten jestświatłoczuły i na niego w procesie wywoływania zdjęć przenosi się obraz z kliszy. Czasempomiędzy warstwą papieru a emulsją stosuje się dodatkową warstwę siarczanu baru, którawybiela papier i przez to zwiększa jego kontrastowość. Najbardziej narażona zarówno naczynniki fizyczne, jak i chemiczne, jest warstwa żelatyny, gdyż jest dość miękka, a związkisrebra po dłuższym czasie ulegają różnym reakcjom chemicznym. Z tego powodu obecnepapiery fotograficzne pokrywa się dodatkowymi warstwami zabezpieczającymi.Poniżej przedstawiono klasyfikację bazującą na [1], uzupełnioną przez autora o opis cechcharakterystycznych artefaktów. W punkcie 3.2. opisane są uszkodzenia pochodzeniafizycznego, w punkcie 3.3. - chemicznego, zaś w 3.4. - zabrudzenia.- 20 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”3.2 USZKODZENIA MECHANICZNESą to wszystkie defekty, które powstały w wyniku fizycznej interakcji odbitki z innymiprzedmiotami, często pod wpływem działania człowieka. Zaliczają się do tej grupyrównież wszystkie zniszczenia, gdzie naruszony został papier fotograficzny, a nie jedynieemulsja. W grupie tej wyróżnia się następujące defekty:1. RysySą to zadrapania powstałe w wyniku zarysowań fotografii przez inne przedmioty.Zaliczają się one do „naturalnych”, choć powstają przy udziale człowieka, któryjest odpowiedzialny za ruch. Ponieważ żelatyna jest materiałem stosunkowomiękkim, tego typu uszkodzenia są dość powszechne, zwłaszcza jeżeli odbitki niebyły przechowywane w odpowiednich warunkach i były często przemieszczane.Rysy są widoczne w postaci cyfrowej jako bardzo cienkie, jasne, proste linie. Tegotypu uszkodzenia są nad wyraz popularne w przypadku klisz filmowych, a to zpowodu tego, że taśma podczas odtwarzania musi się poruszać. Często podczasruchu przez mechanizm projektora dochodzi do jej kontaktu z elementamiaparatury, czego efektem są właśnie rysy. Jednak ruch kliszy filmowej przebiegazawsze w jednym kierunku – z góry do dołu. Co za tym idzie, rysy mają jednącharakterystyczną orientację – pionową. Nie jest to prawdą w przypadku odbitekfotograficznych. Na nich zarysowania mogą występować w wielu rozmaitychorientacjach. Rysy powodują nieznaczną utratę informacji zawartej w obrazie(chyba że występują w bardzo dużych ilościach na niewielkim obszarze) i są łatwedo usunięcia, ze względu na swoją małą szerokość. Po wykryciu mogą być wsposób całkowicie niewidoczny usunięte każdym odpowiednim algorytmem (np.najprostszą interpolacją wartości z pikseli sąsiednich). Cechą ułatwiającąwykrywanie takich uszkodzeń są lokalne zaburzenia w wariancji w obszarzeotaczającym zarysowanie (patrz p. 4.1. niniejszej pracy). Przykład rys widać narysunku 5.- 21 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 5: Przykłady zarysowań fotografii2. Pęknięcia emulsjiJest to klasa uszkodzeń tworzących się w wyniku wahań wilgotności i temperatury,jak również podczas wyginania odbitki. Cechują je znaczne często rozmiary.Pojedyncze pęknięcia na ogół posiadają ustaloną dominującą orientację, jednak niemusi być ona wspólna dla kilku tego typu uszkodzeń występujących w obrazie.Wystąpienie pęknięcia w obrazie pociąga za sobą praktycznie stuprocentową utratęinformacji zawartej w obszarze, na którym ono się znajdzie. Dlatego usuwaniedefektu musi odbywać się techniką interpolacyjną, np. algorytmem Yamauchiopisanym w punkcie 5.5. niniejszej pracy.Ponieważ pęknięciom ulega na ogół tylko warstwa emulsji, często w środku lukiwidoczna jest przebijająca spod niej warstwa papieru. Jest to charakterystyczne otyle, że papier ten jest jednolitej barwy, prawie zawsze będzie to pewien odcieńszarości. Jest to jedna z własności typowych dla tego typu defektów, aumożliwiających ich detekcję. Krawędzie pęknięć mogą mieć bardzo zróżnicowanąpostać, więc nie jest łatwo stwierdzić, patrząc tylko na mały wycinek obrazu, czyma się do czynienia z taką właśnie dziurą w emulsji. Dodatkową trudnością jestwspomniany już fakt, że ich rozmiary mogą być duże. Dlatego podejście lokalne dodetekcji tego typu uszkodzeń raczej się nie sprawdza. Dlatego autor stosuje w tymcelu podejście morfologiczne, badając kształt uszkodzenia, a jako kryteriumdodatkowe analizując rozkład barw wewnątrz luki.- 22 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Typowe pęknięcie można zabserwować na rysunku 6.Rysunek 6: Przykład popękanej emulsji fotograficznej3. ZagięciaJeżeli fotografia zostaje zagięta, a następnie wyprostowana, pozostaje ślad wpostaci podłużnego zagniecenia biegnącego wzdłuż linii złożenia. Jest to defektpochodzenia częściowo antropogenicznego, częściowo naturalnego, gdyżwykonanie zgięcia jest czynnością ludzką, jednak nie ma na celu uszkodzeniaobrazu. Podobnie jak w przypadku pęknięć, pojedyncze uszkodzenie ma określonąorientację wynikającą z kierunku zagięcia i jest prawie zawsze linią prostą, choćgrubszą niż np. rysa. Oczywiście jezeli na obrazie występuje kilka takichuszkodzeń, nie muszą one posiadać wspólnego dla wszystkich kierunkuprzebiegania. Informacja utracona wskutek wystąpienia zagniecenia nie jest zbytduża, głównie ze względu na to, że ślad jest cienki, ale również z powodu tego, żeemulsja ulega zniekształceniom, a nie nieodwracalnym uszkodzeniom. Możnasobie wyobrazić technikę fizycznego naprawiania zagnieceń poprzez prostowanie- 23 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”zdeformowanej żelatyny. W przypadku zdjęć w postaci cyfrowej jest to jednak owiele trudniejsze i dlatego do usuwania takich defektów stosuje się technikipodobne jak przy pęknięciach.Cechą charakterystyczną tego typu zniekształceń jest przebieg krzywej jasności wpobliżu linii zagięcia. Jest on na tyle charakterystyczny, że pozwala z bardzo dużądokładnością wykrywać zagięcia. Szczegółowo proces ten opisany jest w punkcie4.5. Przykład zagięcia widać na rysunku 7.Rysunek 7: Przykład fotografii zagniecionej w kilkumiejscach4. Celowe uszkodzenia „ludzkie”Jest to grupa defektów pochodzenia całkowicie antropogenicznego i nie mającażadnego odzwierciedlenia w procesach fizycznych czy chemicznych zachodzącychw odbitce. Są to wszelkiego rodzaju:- 24 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”a) otworyb) przeszyte nitki, zszywkic) pieczątki, napisy, nadrukid) innePrawie zawsze uszkodzenia z tej grupy pociągają za sobą pełną utratę zawartej wobrazie informacji. Jeżeli zniszczenie jest chociaż częściowo odwracalne (np.można wyjąć zszywkę), to należy to uczynić przed digitalizacją, gdyż po niejutracona będzie informacja przestrzenna i detekcja stanie się dużo trudniejsza.Elementy takie nie posiadają żadnych cech umożliwiających ich identyfikację,gdyż za każdym razem mogą wyglądać inaczej. Z tego powodu są praktycznieniemożliwe do automatycznego wykrycia. Dodatkowo „defekty” (z punktuwidzenia człowieka może to nie być uszkodzenie, ale z puntu widzeniaprzetwarzania obrazu tak) takie jak odręczne napisy są niemożliwe do odróżnieniaod pożądanych elementów obrazu. Dużo łatwiejsze byłoby ich wykrywanie wprzestrzeni trójwymiarowej, gdyż np. napisy długopisem pozostawiają wgłębienia,zszywki są istotnymi wypustkami na powierzchni zdjęcia, a otwory powodującałkowitą utratę papieru. Podczas procesu przenoszenia fotografii w formę cyfrowącała ta informacja zostaje utracona, a detekcja staje się bardzo trudna. Z powyżsychwzględów autor postanowił pozostawić detekcję tego typu uszkodzeń tylko iwyłącznie użytkownikowi. Przykłady celowych uszkodzeń można zaobserwowaćna rysunkach 8 i 9.- 25 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 8: Przykładuszkodzenia przezczłowieka - zszycieRysunek 9: Przykład uszkodzenia przez człowieka - nadruk, pieczątka, naklejonyznaczek3.3 USZKODZENIA CHEMICZNEEmulsja zawiera związki chemiczne (najczęściej jest to chlorek srebra, czasem używa sięinnych metali lub soli innych kwasów), które z upływem czasu wchodzą w reakcje zezwiązkami zawartymi w powietrzu. Powstające w tej sposób nowe związki powodujązmianę koloru elementów obrazu. Czasem rezultatem będzie jedynie odbarwienie, którepozwoli odtworzyć informację pierwotnie zawartą w obrazie, często jednak w wyniku tegoprocesu powstają jednolite plamy jakiegoś koloru, przykrywające całkowicie pewneobszary fotografii. Informacja w tych miejscach tracona jest całkowicie. Uszkodzenia tenie powodują zniszczeń w strukturze papieru czy też emulsji, nie mają też efektów wpostaci zmian w grubości odbitki. W ich przypadku zatem nie ma większej różnicy czyoperuje się w przestrzeni dwu- czy też trójwymiarowej.Wszystkie defekty z tej klasy są pochodzenia czysto „naturalnego”, nie mają one nicwspólnego z działaniem człowieka, który może jedynie starać się zapewnić odpowiedniewarunki do przechowywania odbitek, aby zminimalizować skalę tego procesu.- 26 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”1. Półprzezroczyste plamyTego typu defekty powstają na skutek oddziaływania wody (czy też ogólniej –wilgoci) na emulsję. Często powiązane są również z odbarwieniami. Zazwyczaj niepowodują jednak całkowitej utraty informacji. Jest ona gubiona jedynie częściowo,a każdy piksel zawiera pierwotną barwę złożoną z szumem. Jest to grupauszkodzeń bardzo trudna do automatycznego wykrycia, jednak możliwa do detekcjipółautomatycznej. Ponieważ niniejsza praca skupia się na zagadnieniu w pełniautomatycznej poprawy jakości materiałów archiwalnych, a wspomniana technikapółautomatyczna została już dobrze opisana w [4] i [5], wykrywanie tego typudefektów nie jest rozważane. Opisany jest natomiast algorytm umożliwiającyusuwanie takich plam (patrz punkt 5.2.). Jest on interesujący z tego względu, żepozwala na odtworzenie informacji pierwotnie zawartej w obrazie (a jedyniezaszumionej), bez konieczności jej interpolacji z otoczenia. Technika ta może byćstosowana w większości przypadków, gdy ma się do czynienia z uszkodzeniaminatury półprzezroczystej, zachowującej część (czasem całość) informacjipierwotnej. Wygląd takich zniekształceń można zaobserwować na rysunkach nr 10oraz 11.Rysunek 10: Półprzezroczysta plama od wilgoci(efektem jest przyciemnienie uszkodzonego obszaru)Rysunek 11: Półprzezroczysta plama od wilgoci(powodująca zniekształcenie chromatyczne)- 27 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”2. Plamy nieprzezroczysteJest to rodzaj uszkodzeń bardziej krytyczny w tym sensie, że pociąga za sobącałkowitą i nieodwracalną utratę informacji z obrazu. Staje się to tym bardziejproblematyczne, że bywają one duże i rozległe, gdyż każdy fragment emulsjipodobnie reaguje z innymi związkami chemicznymi. W przeciwieństwie dopozostałych grup uszkodzeń, ten rodzaj nie jest bardzo skomplikowany dowykrycia, natomiast problemem staje się jego usuwanie. Wielkość i rozległość todwie cechy, które (jak napisano w punkcie 5.1.) niezmiernie utrudniają wypełnianieregionów zniekształconych, zwłaszcza, gdy pokrywają one obszary z istotnązawartością informacyjną (dużą liczbą detali).Cechą najbardziej charakterystyczną takich zniszczeń jest ich jednolitewypełnienie. Ponieważ wszystkie elementy emulsji podlegają identycznymreakcjom, wszystkie przyjmą w jej wyniku ten sam kolor. Najczęściej są toodcienie szarości. Ta jednolitość wypełnienia pozwala wykrywać nieprzezroczysteplamy. Dodatkowym ułatwieniem może być sytuacja, kiedy w obrazie występujetylko jedno zniszczenie lub bardzo niewielka ich liczba. Wówczas opróczkryterium jednolitości koloru można zastosować drugie, mówiące o tym, że kolorwypełnienia jest charakterystyczny jedynie dla wnętrza plamy. Niestety, ponieważnie są narzucone żadne ograniczenia na kształt poszukiwanego artefaktu, czasem zaplamy uznane będą inne obiekty o jednolitym kolorze wnętrza. Szczegółowoproces wykrywania tego typu zniekształceń opisany jest w rozdziale 4.3. Przykładnieprzezroczystej plamy ukazany jest na rysunku 12.- 28 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 12: Przykład nieprzezroczystej plamypowodującej całkowitą utratę informacji wobrazie3. Zażółcenia, tzw. foxingJest to grupa zniekształceń bardzo charakterystycznych dla archiwalnychmateriałów i przejawiających się w obrazie jako żółto-brązowe plamy (stąd nazwa,od angielskiego fox – lis), z ciemniejszym wnętrzem i jaśniejszymi krawędziami.Zjawisko to jest spowodowane przez mikroorganizmy (głównie grzyby)rozwijające się na powierzchni odbitki. Mogą one przebywać tam w uśpieniu przezwiele lat od wykonania odbitki, mogą również dostać się na nią z powietrza.Dodatkowymi czynnikami, zwiększającymi tempo rozwijania się tychmikroorganizmów jest obecność żelaza w żelatynie (czasami stosowanego zamiastsrebra) oraz wilgotność powietrza. Istnieją techniki usuwania efektów foxingu (zwykorzystaniem odpowiednich związków chemicznych, jak np. borowodoreksodu) z fizycznych odbitek, jednak są one niezwykle kosztowne i skomplikowane([20]).W obszarach dotkniętych foxingiem informacja tracona jest w dwojaki sposób: wśrodku uszkodzenia, gdzie ciemniejsza plama przesłania zawartość obrazu, jest onagubiona całkowicie. Na jego brzegach jednak część jest zachowywana. Ponieważszerokości (nawet względne) tych obszarów mogą być istotnie różne, autorzdecydował się na usuwanie plam powstałych w wyniku foxingu w całości- 29 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”techniką interpolacyjną, np. algorytmem Yamauchi.Własnością unikalną plam powstałych w wyniku omawianego procesu jest ichkolor. Niniejsza praca z założenia koncentruje się na materiałach archiwalnych, azatem monochromatycznych. To założenie pozwala stosunkowo łatwo wykrywaćwszelkiego rodzaju odbarwienia, które nie pasują do tej charakterystyki.Szczegółowo proces ten omówiony został w punkcie 4.3. Przykład fotografiidotkniętej foxingiem widoczny jest na rysunku 13.Rysunek 13: Przykład tzw. foxingu, czyli odbarwień widocznych w dolnejczęści zdjęcia- 30 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”3.4 ZABRUDZENIACzęsto uszkodzenia fotografii wynikają nie z procesów fizycznych czy chemicznych, a zezwykłego zabrudzenia odbitki, tzn. fragmentu innej substancji przyklejonego do warstwyemulsji. Jeżeli taka plama nie zostanie od razu usunięta, może później być to mocnoutrudnione, a artefakt podczas digitalizacji zostanie przeniesiony do formy cyfrowej.Uszkodzenia takie cechują na ogół niewielkie rozmiary, w miarę regularny kształt i istotnieodcinająca się na tle zdjęcia barwa. W ogromnej większości przypadków będą to bardzociemne, a nawet całkiem czarne plamki. Są one całkowicie nieprzezroczyste, a zatem całainformacja z obrazu jest tracona. Wbrew pozorom, automatyczna detekcja takichuszkodzeń jest trudna i opiera się głównie na takiej samej metodzie, jaka jest używana dodetekcji plam i pęknięć. Usuwanie natomiast jest łatwe, głównie ze względu na niewielkierozmiary tego typu defektów. Przykład zabrudzenia fragmentu obrazu można zobaczyć narysunku 14.Rysunek 14: Zabrudzenia fotografii widocznejako czarne plamki- 31 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”4 METODY WYKRYWANIA USZKODZEŃ W STARYCHFOTOGRAFIACH4.1 WPROWADZENIEDetekcja uszkodzeń w fotografiach na ogół wykonywana jest przez człowieka lubprzebiega w sposób półautomatyczny (użytkownik wskazuje fragment uszkodzonegoobszaru). Jak opisano to we wstępie do niniejszej pracy, automatyzacja tego procesu jestjednak zagadnieniem wyjątkowo złożonym. Jest to szczególnie wyraźne w przypadkufotografii (czy ogólniej obrazów statycznych), gdzie informacja o tym, czy dany obszarobrazu jest defektem czy też nie, musi być podjęta na podstawie kontekstu w całymobrazie, w jakim ten region się znajduje. Jeśli ma się do czynienia z sekwencjamifilmowymi, pomocna może być również informacja z sąsiednich klatek. Dlatego podczasdetekcji należy opierać się na niskopoziomowych cechach fragmentów obrazu. Jeślirozpatrywać je lokalnie, można wyznaczyć pewien zestaw cech, na podstawie których dasię następnie oceniać czy dany obszar jest artefaktem powstałym w procesie niszczeniafotografii czy też pierwotnym elementem obrazu. Typowym podejściem do zagadnieniajest wyznaczanie takich parametrów charakterystycznych dla konkretnej klasy uszkodzeń,a następnie próba dopasowania do nich elementów zdjęcia. Przykładowo, takimiparametrami może być lokalna wariancja, gradient jasności czy odpowiedź jakiegoś filtra.Poniżej opisano kilka algorytmów działających w większości w oparciu o tę właśniezasadę.4.2 DETEKCJA RYSAlgorytm detekcji rys zaimplementowany w ramach niniejszej pracy opiera się naalgorytmie opisanym przez Domenico Tegolo i Francesco Isgro w [3]. Przyjęto tamzałożenie, iż rysy są to cienkie linie, szerokości co najwyżej kilku pikseli, gdzie informacjajest całkowicie utracona, a miejsca niegdyś ją zawierające są obecnie obszarami o w miarę- 32 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”jednolitym poziomie szarości. Założenie takie wynika głównie z charakterystyki fizycznejtakiego defektu, jakim jest rysa. Autorzy wspomnianej pracy koncentrują się nazadrapaniach występujących w klatkach filmowych, jednak zasada powstawania rys jestanalogiczna. Są to miejsca z wytartą emulsją światłoczułą, spod której widać na ogółplastik (w przypadku taśmy filmowej) lub bazę papierową (w papierze fotograficznym).Efekt wygląda bardzo podobnie i rysa taka charakteryzuje się właśnie jednolitymodcieniem szarości. Jedynym warunkiem, który ogranicza zastosowanie omawianegoalgorytmu w detekcji rys na obrazach statycznych jest fakt, że wykrywa on jedynie rysypionowe. Dla klisz filmowych jest to wystarczające, gdyż tam zadrapania powstają właśniew tej płaszczyźnie, z powodów opisanych w punkcie 3.2. Inaczej jest dla fotografii idlatego autor zdecydował się na iteracyjne stosowanie algorytmu dla wielu kolejnychorientacji, co wraz z lekkim złagodzeniem warunku na występowanie rysy, pozwalawykrywać zadrapania o praktycznie dowolnych orientacjach (przy wciąż obowiązującymzałożeniu o kształcie i barwie defektu).Rozpatrywane są obrazy w odcieniach szarości, więc najpierw należy obraz kolorowyzamienić na monochromatyczny. Aby wykryć rysę, badany jest układ wariancji kolumnobrazu. Wariancja kolumny obliczana jest w według nastepującego wzoru:N2∑ ki =1N ix i ,k−∑ jx j , k 2 , (1)j=1gdzie N jest liczbą pikseli w kolumnie (wysokością obrazu), oraz są wagami, w tymprzypadku równymi 1/N, zaś x i , j jst wartością piksela. Z natury wariancji wynika, żemiejsca, gdzie w każdym miejscu kolumny występują istotne różnice w jasności pikseli wporównaniu do pikseli sąsiednich (patrząc w poziomie), wykres wariancji będzie sięcechować znaczącymi skokami. Z tego powodu analizowany jest on pod kątem lokalnychfluktuacji. Za skoki uznawane są miejsca, gdzie na przestrzeni k pikseli wartość wariancjinie zmienia się o więcej niż o pewną wartość progową t 1 , zaś następnie zmienia się o conajmniej t 2 . Za koniec zaburzenia uznawane jest analogiczne miejsce patrząc od przeciwnejstrony. Dodatkowo przyjęto założenie, że fluktuacja nie może być szersza niż l pikseli.- 33 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Odnalezione w ten sposób skoki uznawane są za rysy.Ponieważ tak skonstruowany algorytm wykrywa tylko zadrapania pionowe, należy gozmodyfikować tak, aby znajdował również te o innych orientacjach. Najprostszymsposobem jest obrócenie obrazu i wykonanie kolejnej iteracji algorytmu. Liczba obrotów wczasie całego przebiegu algorytmu oznaczana jest przez n i jest konfigurowalnymparametrem. Kąt, o który dokonywany jest obrót wynosi zatem 360/n°.4.3 DETEKCJA ODBARWIEŃWykrywanie zniekształceń natury chromatycznej opiera się na bardzo istotnym założeniu,które jest prawdziwe dla materiałów archiwalnych, będących tematem niniejszej pracy, niemusi być jednak słuszne w przypadku ogólnie pojmowanych fotografii. Chodzimianowicie o fakt, że rozpatrywane zdjęcia są czarno-białe bądź w sepii. Jeśli chodzi ofotografie czarno-białe (ściślej, w odcieniach szarości), to oczywistym jest, że jeżeli pikselma jakąkolwiek inną barwę niż szarość, to jest elementem aberracji. Należy oczywiściezałożyć pewien margines tolerancji, gdyż podczas procesu digitalizacji papierowychodbitek mogą wkraść się pewne drobne niedokładności, które nie są jednak uszkodzeniamiw sensie niniejszych rozważań. Nieco inaczej wygląda sprawa w przypadku fotografii wsepii. Formalnie, są one również obrazami monokolorowymi, jednak nie w odcieniachszarości, a brązu. Z punktu widzenia algorytmów przetwarzania obrazów, różnica ta jestjednak istotna.Ponieważ w przypadku obrazów monochromatycznych lepiej operuje się na przestrzeniachbarw z wydzieloną współrzędną luminancji, przyjęto, że rozpatrywane obrazy zapisane sąw przestrzeni YC b C r . W takim wypadku obraz monochromatyczny cechował się będzietym, iż wszystkie piksele obrazu będą miały tę samą wartość C b i analogicznie tę samąwartość C r (w przypadku skali szarości będzie to 0), przy czym niekoniecznie C r jest równeC b . O jasności będzie decydowała współrzędna Y. Tak będzie w przypadku idealnym.Proces analogowego „życia” fotografii (wywoływanie, reakcje chemiczne zachodzące w- 34 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”papierze fotograficznym, niszczenie odbitki, wreszcie digitalizacja) wprowadza jednak doostatecznej cyfrowej postaci obrazu wiele drobnych zakłóceń. Powodują one, że wartościwspółrzędnych C b i C r będą zbliżone, ale nie jednakowe. Ilustrują to rysunki 15 i 16, naktórych przedstawiono fotografię wykonaną w sepii oraz tę samą fotografię przetworzonątak, aby efekt sepii uzyskać w sposób sztuczny. Dodatkowo, zamieszczono histogramy ichwspółrzędnej C r .Rysunek 15: Oryginalna fotografia w sepii orazhistogram jej współrzędnej C rRysunek 16: Ta sama fotografia po sztucznymprzetworzeniu jej w barwy sepii (usunięciekoloru, a następnie dopasowanie barwy inasycenia, aby uzyskać możliwie podobny obrazdo oryginalnego) oraz histogram jejwspółrzędnej C rWidać na nich, że wartości współrzędnej C r są podobne. Na histogramie widoczne jest tojako pojedynczy skok. Tak wygląda charakterystyczny dla obrazów w sepii wykres- 35 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”częstotliwości występowania konkretnych wartości współrzędnej C r . Właśność tawykorzystywana jest w omawianym algorytmie detekcji odbarwień. Piksele o barwachodmiennych niż odcienie brązu będą wprowadzały na histogramie wartości w miejscachinnych niż centralny skok. Ponieważ wciąż obowiązuje założenie, że liczba pikselinależących do obszarów uszkodzonych jest niewielka w stosunku do globalnej liczbypikseli w obrazie, punkty, w których nastąpiła aberracja chromatyczna będą tworzyły nahistogramie „ogon”. W łatwy sposób można takie obszary wykryć analizując kształtwykresu, a następnie oznaczyć punkty odpowiadające występującym w tych miejscachwartościom jako uszkodzone.Algorytm w pierwszej kolejności przekształca obraz wejściowy do przestrzeni barw YC b C r.Kolejnym krokiem jest wyznaczenie histogramu dla współrzędnej C r . Następnie badanyjest ów histogram. Algorytm przebiega po wykresie od prawej strony (od największychwartości C r ) aż do momentu, kiedy napotka na początek charakterystycznego, opisanegopowyżej, skoku. Warunek na to zdefiniowany jest następująco:{ C rhist[i]2∗C rhist [i1]C rhist[i] N /a, (2)gdzie C r hist[i] jest wartością histogramu dla wartości współrzędnej i, zaś N oznacza liczbępikseli w całym obrazie. Pierwszy warunek zapewnia wykrycie gwałtownego skokuwartości histogramu, natomiast drugi (a jest również parametrem wejściowym algorytmu,domyślnie równym 100) mówi o tym, że brać pod uwagę należy tylko wartości histogramuistotne w kontekście całego obrazu. Przykładowo, jeżeli C r hist[i] wynosi 3, a C r hist[i+1]wynosi 1, pierwszy warunek wykryłby skok. Jednak jeżeli cały obraz ma wymiary np.200x200 pikseli, a zatem zawiera ich 40 000, to wartości rzędu 1 czy 3 nie są w kontekściecałego obrazu istotne. Dopiero w momencie napotkania np. pary wartości C r hist[i] = 420,C r hist[i+1] = 30 algorytm się zatrzyma. Wszystkie piksele posiadające wartościwspółrzędnej C r odpowiadające pominiętym rejonom histogramu będą uznane zauszkodzone.Aby wyeliminować regiony składające się z pojedynczych pikseli, przeprowadzane jest- 36 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”filtrowanie medianowe na powstałej masce. Ponieważ granice regionów objętych maskąmogą również być zniekształcone, choć w stopniu nie pozwalającym na ich wykrycie przypomocy opisywanego algorytmu, przeprowadza się rozszerzenie powstałych obszarów.Odbywa się to przy pomocy standardowego morfologicznego algorytmu dylacji. Okno,którego rozmiar jest jednym z parametrów algorytmu, przesuwa się nad powstałą maską ijeżeli w oknie znajduje się choć jeden piksel nią objęty, to centralny punkt okna równieżjest do niej dołączany.Należy zauważyć, iż tak skonstruowany algorytm bez problemu poradzi sobie również zobrazami czarno-białymi, tzn. w odcieniach szarości, jak również każdym innym obrazemmonokolorowym. Jak zauważono wcześniej, obrazy monokolorowe charakteryzują siępojedynczym skokiem w histogramie współrzędnej C r (jak również C b ). Różnią się jedynieumiejscowieniem tego skoku na skali wartości C r . Ponieważ algorytm opisany powyżejnie rozróżnia miejsca wystąpienia skoku, a jedynie oznacza jako uszkodzone wszystkiepiksele odpowiadające pominiętym wartościom do momentu napotkania skoku, będzie sięon wykazywał identyczną skutecznością dla wszystkich obrazów monokolorowych,niezależnie od tego, w odcieniach jakiej barwy będą one zapisane.4.4 DETEKCJA ROZDARĆ I PĘKNIĘĆWykrywanie tej klasy uszkodzeń jest wyjątkowo trudne, głównie z dwóch powodów:1. Kształty przyjmowane przez takie defekty są bardzo zróżnicowane, gdyż sposóbich powstawania nie jest zawsze taki sam. Inne artefakty, takie jak np. rysy,powstają w określony sposób, co pociąga za sobą ich dość charakterystycznywygląd. W przypadku rozdarć papieru fotograficznego, czy też pęknięć żelatynyjest inaczej – mogą się one tworzyć na wiele różnych sposobów. Z tego powoducharakterystyka takich zniszczeń jest bardzo ogólna, ale często pozwala to uzyskaćzadowalające efekty detekcji.2. Nawet w postaci fizycznej, trójwymiarowej, charakterystyka omawianychuszkodzeń nie jest jednolita. Po digitalizacji automatyczna detekcja staje się jeszcze- 37 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”trudniejsza. Ze względu zaś na różnorodność kształtów, o której mowa w punkcie1., bardzo trudne staje się odróżnienie akurat tego typu defektów od pierwotnychelementów obrazu.Mając na uwadze powyższe trudności, autor postanowił wykrywać defekty w oparciu ometody morfologiczne, tzn. przez badanie kształtów regionów występujących w obszarze.Charakterystyka kształtów jest, jak wspomniano powyżej, bardzo ogólna, ale da się jąwyznaczyć. Cechy, w oparciu o które działa zaimplementowany algorytm są następujące:1. Papier fotograficzny zbudowany jest w skrócie z papierowego podłoża orazżelatyny zawierającej światłoczułe związki chemiczne. Pod wpływem reakcji zróżnymi związkami chemicznymi z powietrza, jak również wahań temperatury iwilgotności, żelatyna ulega pęknięciom i odsłania widoczny pod spodem papierjednolitej barwy. Tego typu uszkodzenia cechują się więc w przybliżeniumonokolorowym wnętrzem, praktycznie zawsze jest to odcień szarości.2. Pęknięcia nie są na ogół zbyt duże i nie występują w dużych ilościach w obrazie,zaś ich wypełnienie, jak napisano w punkcie 1. ma barwę jednolitej szarości.Dlatego słusznym założeniem będzie przyjęcie, iż kolor, którym wypełniony jestregion uszkodzony, będzie występował w niewielkich ilościach w pozostałej częściobrazu. Jest to założenie bardziej intuicyjne niż matematyczne, jednak jak pokazujepraktyka, na tyle mocne, żeby pozwalać ze stosunkowo wysoką skutecznościąwykrywać pęknięcia.3. Rozdarcia papieru fotograficznego mają jeszcze mniej spójną charakterystykę niżopisane pęknięcia żelatyny. Bardzo zróżnicowany jest kolor takich defektów.Atrybutem, który daje się lepiej opisać jest kształt. Są one podłużne, dość wąskie iczasem tworzące rozgałęzienia w postaci „drzew”.Ponieważ wszystkie wyżej opisane cechy dotyczą regionów fotografii, pierwszym krokiemalgorytmu musi być podział obrazu, czyli segmentacja. Odbywa się ona na podstawiejasności. Na początku wykonywana jest detekcja krawędzi, a następnie progowaniepowstałego obrazu. Poziom progowania jest jednym z parametrów wejściowych algorytmui decyduje o tym, jak grube krawędzie wyznaczają granice między obszarami. Im wyższawartość, tym mniej krawędzi będzie branych pod uwagę, a co za tym idzie, regiony będąwiększe.- 38 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Następnie odbywa się wyznaczanie regionów powstałych w wyniku progowania. Odbywasię ono na zasadzie tzw. „pożaru prerii”. Technika ta polega na tym, że pierwszynapotkany, nieoznaczony piksel jest traktowany jako należący do nowego regionu,następnie zaś wszystkie piksele leżące w jego sąsiedztwie są oznaczane jako elementy tegosamego regionu, o ile nie zostały już przydzielone wcześniej i o ile są do rozpatrywanegopiksela podobne pod względem określonej miary. Ponieważ w niniejszej implementacjioperuje się na obrazach dwukolorowych (z powodu wykonanego wcześniej progowania),podobieństwo dwóch pikseli jest określone w bardzo prosty sposób. Mianowicie, dwapiksele są do siebie podobne, jeżeli są tego samego koloru.Powstałe w opisany sposób regiony są następnie analizowane pod kątem ich podobieństwado typowych rozdarć lub pęknięć.4.4.1 KRYTERIUM UNIKALNOŚCI KOLORUPierwsze kryterium wynika z wymienionych powyżej punktów 1 i 2 i dotyczy główniebraków w emulsji (miejsc, gdzie jej warstwa została zdarta). Polega ono na tym, żesprawdzane jest w pierwszej kolejności czy rozpatrywany obszar ma jednolitą barwę.Odbywa się to poprzez wyznaczenie histogramów dla składowych R, G oraz B dlaobszaru. Kiedy są one gotowe, w każdym wyznaczanych jest K najczęściej występującychw nim wartości. Jeśli wszystkie one są do siebie zbliżone (tzn. leżą od siebie wodległościach nie większych niż T 1 ) to obszar uznawany jest za jednolity, a za odcieńdominujący uznawana jest średnia z K najczęściej występujących. Jeżeli rejon zostanieuznany za jednolity, badany jest następnie rozkład dominującej barwy w pozostałej częściobrazu. Jak wynika to z opisanego założenia, jeżeli w reszcie obrazu dana barwa(dokładniej, wszystkie barwy, których składowe nie różnią się o więcej niż T 2 ) występuje wnieznacznych ilościach, obszar oznaczany jest jako uszkodzony i dołączany do maski.Kryterium maksymalnej dozwolonej liczby pikseli w reszcie obrazu jest zdefiniowanejako:- 39 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”N p / N < T 3 , (3)gdzie N p to liczba pikseli o podobnej barwie w dopełnieniu rozpatrywnego regionu, N tosumaryczna liczba pikseli w obrazie, zaś T 3 jest parametrem systemu (domyślnie 0,01).Dodatkowym warunkiem jest ograniczenie na maksymalną wielkość obszaru. Ponieważ zogólnego założenia o wykrywanych automatycznie defektach wynika, że detekcjipodlegają jedynie uszkodzenia stosunkowo niewielkie, dopuszczalna liczba pikseli wobszarze jest ograniczana do N/20. Gdyby nie wprowadzić tego założenia, to za defektmogłyby być uznane duże obszary, spełniające powyższe kryteria, np. jednolite tło jakniebo czy ściana. Przykład zastosowania opisanego kryterium widoczny jest na rysunkach17 oraz 18.Rysunek 18: Obraz wejściowyRysunek 17: Obraz z rys. 18 po zastosowaniu kryteriumopisanego w punkcie 4.4.1. Za uszkodzenia uznane sąfragmenty obrazu posiadające jednolitą barwę, któradodatkowo nie występuje nigdzie indziej w obrazie.- 40 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”4.4.2 KRYTERIUM SZAROŚCIPonieważ kryterium opisane w punkcie 4.4.1. nie wykryje pęknięć, jeżeli wystąpią one wwiększej liczbie w obrazie, można wykorzystać też inną cechę charakterystyczną tej klasydefektów. Chodzi o barwę wnętrza, która jest na ogół odcieniem szarości. Aby tosprawdzić, wyznacza się, w analogiczny sposób jak w poprzedniej technice, barwędominującą w regionie. Następnie sprawdza się :1. Rozmiary regionu. Liczba pikseli powinna się zawierać między wartościamiprogowymi T 4 i T 5 . Ograniczenie górne wynika z tego samego powodu, co wpoprzednim kryterium, zaś dolne z tego, żeby nie wykrywać całkiem małychobszarów, gdzie szansa na napotkanie propocjonalnie dużej liczby szarych pikselijest znaczna;2. Czy barwa dominująca jest szarością (z dokładnością do pewnego progu tolerancjiT 6 , domyślnie 20);3. Stosunek liczby pikseli szarych w regionie (szarość określana jest z dokładnościądo progu tolerancji T 6 ) do sumarycznej liczby pikseli w nim. Powinien on być niemniejszy niż T 7 (domyślnie 0,8). W ten sposób stwierdza się w przybliżeniu, czyobszar jest szary.- 41 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 20: Obraz wejściowyRysunek 19: Obraz z rys. 20 po zastosowaniukryterium opisanego w punkcie 4.4.2. Poprawniewykryte zostało uszkodzenie przy prawej krawędziobrazu, zaś niesłusznie za uszkodzenie uznanazostała dłoń.Jeżeli wszystki te warunki będą spełnione, to obszar uznawany jest za defekt. Przykładdziałania omówionej techniki ukazują rysunki 20 i 19. Widać na nich również wadęopisanego algorytmu. Bierze on pod uwagę jedynie barwę, a nie rozpatruje innychczynników, więc za uszkodzenie mogą być uznane nie tylko rzeczywiste defekty, jak tenwidoczny w prawym dolnym rogu zdjęcia, ale też pożądane jego fragmenty, jak dłoń.Należy jednak zauważyć, że patrząc tylko na zbliżenia, widoczne na rysunku 21, ciężkojest odróżnić obszar uszkodzenia i element obrazu.- 42 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 21: Zbliżenia dwóch obszarówzidentyfikowanych jako defekty na rys. 194.4.3 KRYTERIUM KSZTAŁTUWreszcie trzecią metodą na klasyfikację obszaru jako uszkodzenia jest analiza jegokształtu. Jak wspomniano wcześniej, kształty rozdarć są na ogół charakterystyczniepodłużne. Rozpoznawanie kształtów możliwe jest dzięki współczynnikom kształtu orazniezmiennikom momentowym. Ta druga grupa cechuje się jednak silnym związaniem zkonkretnym kształtem, tzn. nadaje się do sprawdzania, czy region ma dokładnie takikształt, do jakiego dopasowane są wartości niezmienników. Ponieważ nie istnieją z góryzałożone dokładne kształty rozdarć, nie można więc też zastosować niezmienników do ichwykrywania. Dużo lepiej nadają się do tego współczynniki kształtu, które opisują takieogólne cechy obiektu jak „podłużność” czy „cyrkularność” (tzn. jak bardzo kształt jestzbliżony do koła). Najczęściej stosowanymi współczynnikami są (na podstawie [21]):1. W1=2⋅ S (4)gdzie S jest polem powierzchni obiektu. W1 jest współczynnikiem cyrkularności iwyznacza średnicę koła o obwodzie równym obwodowi rozpatrywanego regionu.2. W2= L (5)- 43 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”gdzie L jest obwodem regionu. Jest to również współczynnik cyrkularności iokreśla średnicę koła o polu równym polu obiektu. Współczynniki W1 oraz W2same w sobie nie opisują dobrze kształtu obiektów, a ponadto zależą od rozmiarówobiektu, więc nie nadają się do ogólnego zastosowania. Są jednak podstawą doobliczenia współczynnika W9 (patrz p. 9), który jest już niewrażliwy na zmianęskali.3. W3= L2⋅⋅S −14.(6)gdzie, podobnie jak wcześniej, L to obwód, a S pole obiektu. Współczynnik ten jestrównież zwany współczynnikiem Malinowskiej. Przyjmuje on większe wartości dlaobiektów bardziej wydłużonych, a mniejsze dla tych zbliżonych kształtem do koła,jednak ogólnie zakres jego zmienności jest niewielki.W4=S 2⋅ ∑i(7)r i2S jest polem obiektu, zaś r i to odległość piksela o numerze i od środka ciężkościobiektu. Zachowanie tego współczynnika jest podobne jak współczynnikaMalinowskiej. W4 to współczynnik Blaira-Blissa. Do jego obliczenia potrzebawięcej czasu i mocy obliczeniowej, dlatego nie jest stosowany w systemach czasurzeczywistego. Charakteryzuje się średnim przedziałem zmienności.5.W5= S3∑i(8)l i 2S jest polem regionu, a l i to minimalna odległość piksela o numerze i od konturuobiektu. Współczynnik ten zwany jest współczynnikiem Danielssona. Cechuje goduża zmienność i przyjmowanie małej wartości dla obiektów wydłużonych. Jegoobliczenie jest dość kosztowne.- 44 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6. W6=(9)∑in⋅∑id i 2d i 2 −1d i to odległość piksela konturu o numerze i wśród n pikseli w konturze. W6 jestzwany współczynnikiem Haralicka. Parametr ten jest złożony w wyznaczaniu, jegozakres zmienności jest niewielki, ale wykazuje się on największą odpornością naskalowanie obiektu.7. W7= r minr max(10)gdzie r min i r max są odpowiednio minimalną i maksymalną odległością konturu odśrodka ciężkości obiektu. Współczynnik ten bywa również określany jako Lp1.Określa on cyrkularność obiektu.8. W8= L maxL(11)gdzie L max jest maksymalną odległością między dwoma pikselami regionu, a L jegoobwodem. Jest to współczynnik Lp2. Oddaje on dobrze wydłużenie obiektu, o ilejego krawędź jest gładka.9. W9=2 ⋅SL(12)S jest polem, a L obwodem obiektu. Jest to zmodyfikowany współczynnikMalinowskiej, równy stosunkowi współczynników W1 oraz W2. Przyjmuje onduże wartości dla wydłużonych obiektów, a jego zakres zmienności jest podobnyjak współczynnika W4.10. W10= L hL v(13)gdzie L h to maksymalna długość obiektu w poziomie, a L v w pionie. Współczynnik- 45 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”ten, nazywany współczynnikiem Fereta cechuje się dużą wrażliwością na zmianyskali, ale jest bardzo prosty do obliczenia. Przyjmuje wartości zbliżone do 1 dlaobiektów zwartych, zaś mniejsze lub większe od 1 dla wydłużonych.Wszystkie opisane współczynniki (za wyjątkiem W1 i W2 rozpatrywanych samodzielnie)są w większym lub mniejszym stopniu odporne na skalowanie i obrót obiektu (tzn. ichwartości nieznacznie się zmieniają podczas wykonywania tych operacji).W opisywanym zastosowaniu najlepiej nadającymi się współczynnikami są W3, W9 orazW1 znormalizowany wg wzoru:W1'=W / S , (14)W3 oraz W9 dobrze opisują „podłużność” obiektów, a jak napisano we wstępnie do punktu4.3., jest to cecha bardzo typowa dla pęknięć i rozdarć. Tym więc jest podyktowany ichwybór do określania przynależności regionu do klasy defektów. Jeśli chodzi o W1', tozostał on wybrany z podobnego względu – również opisuje wydłużenie obiektu.Współczynnik W1 określa średnicę koła o obwodzie równym obwodowi badanegoregionu. Przyjmie więc on duże wartości dla obszarów o dużym obwodzie, a więc np.wydłużonych. Jeżeli teraz podzieli się otrzymaną wartość przez pole regionu, to uzyska siędwie rzeczy. Po pierwsze uzależni się obwód od pola, co pozwoli na łatwe stwierdzenie,czy obiekt jest wydłużony (jeżeli ma małe pole, ale duży obwód to musi taki być, jeżelizarówno obwód, jak i pole są znaczne, to obiekt jest zwarty). Po drugie, uniezależni sięwartość współczynnika od rozmiarów obiektu, która to zależność jest główną wadąwspółczynnika W1.Wymienione współczynniki są obliczane dla każdego z regionów, a następnie badane jestpodobieństwo ich kształtu do typowego rozdarcia. Kryterium określające, czy kształtobiektu przypomina kształt rozdarcia, zdefiniowane jest następująco:- 46 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”{W1W1TW3W3T, (15)W9W9TST 8gdzie W1, W3 oraz W9 oznaczają wartości współczynników, S jest liczbą pikseli wobszarze (polem), zaś W1T, W3T i W9T oraz T 8 oznaczają wartości progowe. Domyślnewartości dla progów współczynników to: W1T = 0,3; W3T = 0,7; W9T = 0,8.Przykład zastosowania opisanego kryterium detekcji widoczny jest na rysunkach 22 i 23.Rysunek 22: Obraz wejściowyRysunek 23: Obraz z rys. 22 po zastosowaniukryterium opisanego w punkcie 4.3.3.W przypadku wszystkich kryteriów, podobnie jak w punkcie 4.3., na powstałej w wynikudetekcji masce przeprowadzane jest filtrowanie medianowe aby wyeliminować regionyskładające się z pojedynczych pikseli. Również analogicznie dokonywana jest dylacjaotrzymanych obszarów, aby zapewnić pokrycie maską również obszarów granicznychzniekształceń.- 47 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”4.5 DETEKCJA ZAGIĘĆKolejną grupą uszkodzeń, które da się wykrywać automatycznie na podstawieniskopoziomowej analizy obrazu są ślady po zagięciach. Jeżeli fotografia była złożona, anastępnie rozprostowana, to powstaje obszar o charakterystycznym rozkładzie jasności.Własność ta została przez autora zauważona podczas analizy różnych rodzajówzniekształceń.Papier fotograficzny jest dość sztywny i po zagięciu i wyprostowaniu nie wraca dokładniedo swojego pierwotnego kształtu. W efekcie powstaje wybrzuszenie o szpiczastymzakończeniu, jak widać to na rys. 24. Kiedy zdjęcie podlega digitalizacji, czy to w procesieskanowania czy też fotografowania odbitki, na „zboczach” tego zagięcia powstają cienie zjednej, a rozjaśnienia z drugiej strony. W rezultacie, jasność w regionie artefaktumodelowo rozkłada się tak, jak to widać na rys. 25. Fakt ten może być wykorzystywanydo wykrywania tej klasy uszkodzeń.Rysunek 24: Zbliżenie zagięcia fotografii.Widoczne jest charakterystycznewybrzuszenie.- 48 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 25: Modelowy rozkład jasności pikseli w rejonie załamania. Załamaniu odpowiada skok naśrodku wykresu. Warto zauważyć, że pierwotnie obszary na lewo i na prawo od załamania były tejsamej barwy.Algorytm zaproponowany i zaimplementowany przez autora działa w sposób następujący.Obraz jest przekształcany do skali szarości, gdyż dla niniejszego algorytmu istotna jestjedynie jasność pikseli, a nie ich kolor. Następnie nad obrazem przesuwa się okno orozmiarze n (nieparzyste), który jest parametrem algorytmu. Z pikseli leżących w obrębieokna budowane są przekroje wg poniższej zasady:H k= p x k , yk∈〈− n 2 ; n 2 〉V k= p x , ykk ∈〈− n 2 ; n 2 〉 , (16)gdzie p x,y jest wartością jasności piksela w punkcie o współrzędnych x, y.Następnie powyższe przekroje są analizowane i badane pod kątem podobieństwa dowzorcowego wykresu (patrz rys. 25). Rzeczywiste układy jasności, zwłaszcza dlafotografii archiwalnych, które podlegały fizycznemu niszczeniu, mogą być nieco odmienneod wzorca jeśli chodzi o przebieg wykresu. Z tego powodu nie stosuje się analizy- 49 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”pochodnej ani innych mechanizmów bazujących na analizie matematycznej. Warunki sąmożliwie najbardziej uproszczone i wyglądają następująco:1. Na obu końcach przekroju muszą występować rejony o jednolitych wartościach(obszary w przybliżeniu poziome na wykresie jasności). Szerokość tych regionówokreślana jest jako (n+1)/r, gdzie r jest parametrem algorytmu i domyślnieprzyjmuje wartość 3. Przy okazji badania tych obszarów wyznaczane są w nichwartości średnie. Oznaczone są jako av 1 i av 2 .2. Różnica między minimalną i maksymalną wartością jasności w przedziale dotądnie badanym (środkowym) musi być większa niż t 1 , próg określany przez parametrwejściowy.3. Różnica między wartościami av h i av v , wyznaczonymi podczas badania brzegówprzekroju musi być nie większa niż t 2 , próg określany przez parametr wejściowy.Rozmiar przekroju nie powinien być zbyt duży, gdyż wówczas może być trudno spełnićwarunek 1.Przykładowy przekrój oraz zastosowanie na nim powyższych kryteriów widoczne jest narysunku 26. Czerwoną linią zaznaczono na nim przykładowy przekrój. Koloremwyróżniono regiony, gdzie wartości powinny być (i są) zbliżone. X max – X min oznaczaodległość między maksymalną i minimalną wartością w przedziale środkowym, a av 1 orazav 2 opisują wartości średnie w regionach skrajnych.- 50 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 26: Przykładowy przekrój i zastosowanie na nim kryteriów, o których mowa w punkcie 4.5Rysunek 27: Obraz, z któregopobrane zostały wartości jasnoścido wykresu na rys. 26. Naczerwono zaznaczonoumiejscowienie przekroju.Układ jasności wykorzystywany do detekcji nie jest oczywiście charakterystyczny tylko iwyłącznie dla zagięć. Może występować w innych miejscach obrazu, jednak jak wykazujedoświadczenie, dzieje się to rzadko i na ogół jedynym miejscem, gdzie można go odnaleźć- 51 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”są rejony załamań. Fakt ten uwidoczniony został w rozdziale 6 niniejszej pracy.4.6 ANALIZA TEKSTURDość rozpowszechnionym zagadnieniem, jeśli chodzi o wykrywanie uszkodzeń jest analizatekstur. Często stosuje się ją w zastosowaniach przemysłowych, wprawdzie nie do detekcjiuszkodzonych fotografii, ale defektów w fotografowanych obiektach. Analiza taka poleganajczęściej na badaniu obszaru pokrytego teksturą przy pomocy jakiegoś filtra, który dajeokreślone odpowiedzi dla obszaru pokrytego danym rodzajem tekstury. Jednym znajpowszechniej stosowanych filtrów są filtry Gabora (ang. Gabor filters). Filtr Gabora jestiloczynem funkcji Gaussa z funkcją sinusoidalną. Filtrowanie polega na splataniu obrazuwejściowego I(x,y) z dwuwymiarową funkcją filtrującą g(x,y). W efekcie otrzymuje sięodpowiedź r(x,y):r x , y =∬ I , g x− , y−d d (17)Typowym jądrem filtru g(x,y) jest:g x , y=e − x' 2 2 y ' 22 2 cos2 x' x' =x cos ysin y '=−x sin ycos (18)Interpretacja tego wzoru w kontekście przetwarzania obrazów jest następująca. Filtr dajemaksymalną odpowiedź dla konkretnego typu tekstury pojętej jako fala o określonejczęstotliwości przestrzennej, dominującej orientacji oraz przesunięcia fazowego.Odchylenie standardowe określa wielkość okna, które podlega filtrowaniu. określa owalność odpowiedzi (wartość tego parametru jest przyjęta jako stała i równa 0,5). to długość wspomnianej fali (zatem 1/ określa częstotliwość przestrzenną), a to dominująca orientacja (kąt nachylenia tekstury). definiuje przesunięcie fazowefunkcji sinusoidalnej. W praktyce parametr ten przyjmuje jedną z dwóch wartości: 0 dlafunkcji symetrycznej oraz /2 dla funkcji asymetrycznej.- 52 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Filtr Gabora o konkretnych wartościach wymienionych parametrów będzie dawałmaksymalną wartość odpowiedzi dla konkretnej częstotliwości przestrzennej i orientacji.Tak więc, aby mógł wykrywać możliwie duży zestaw tekstur należy obliczyć odpowiedźdla przynajmniej kilku wartości oraz . W praktyce często spotykanym zestawemsą trzy wartości częstotliwości oraz osiem orientacji. Taki dobór liczb sprawia, żewyjściem zestawu filtrów jest wektor 24 liczb określających odpowiedzi filtra dla różnychkombinacji częstotliwości oraz orientacji. Prosta odpowiedź często jest niewystaczająca doprawidłowego rozróżniania tekstur, dlatego stosuje się jedno z dwóch przekształceńwektora odpowiedzi:1. Energia odpowiedzi, dana wzorem:e x , y = 2r =02 x , yr x , y= (19)22. Moment zespolony modułu odpowiedzi, dany wzorem:C mn x , y=∬uiv m u−iv n 2e =u ,=vx , y du dvu= 1 cos v= 1 sin (20)W ramach niniejszej pracy zaimplementowane zostało obliczanie energii odpowiedzi.Mając odpowiedzi filtrów Gabora dla konkretnych regionów obrazu oraz wiedząc, jakapowinna być wartość wzorcowa, łatwo można stwierdzić, w którym miejscu występujedefekt. Tak właśnie robi się w zastosowaniach przemysłowych do wykrywania defektów wobiektach, które na zdjęciu są pokryte teksturą. Rozpatrując archiwalne fotografie wuniwersalnym ujęciu nie da się założyć żadnej prawidłowej struktury tekstury, a co za tymidzie nie da się wyznaczyć wzorcowych wartości odpowiedzi (niezależnie od tego, czybędą to odpowiedzi liniowe, czy po przekształceniu np. do postaci energii). Dlatego prosta- 53 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”implementacja algorytmów stosowanych przemysłowo nie przyniosłaby oczekiwanychefektów. Dobrą modyfikacją mogłoby być natomiast:1. Badanie lokalnej struktury tekstury. Można by to wykonać np. przesuwając oknopo obrazie i sprawdzając, czy wartości po przeciwnych stronach okna (np. po leweji po prawej jego stronie) są do siebie podobne pod względem odpowiedzi filtrów.Jeżeli wartości w środku byłyby inne, obszar można by uznać za uszkodzony.2. Przeprowadzenie globalnej segmentacji obrazu przyjmując jako kryterium podziałunie wartości jasności w poszczególnych punktach obrazu, ale wartości odpowiedzina filtry Gabora. W ten sposób można by wykonywać segmentację w miejscach, wktórych jest to trudne (bądź wręcz niemożliwe) przy użyciu tradycyjnegoalgorytmu bazującego na jasnościach. Przykładem takich regionów są właśnietekstury, które z punktu widzenia człowieka są jednolitymi obszarami, jednak mogąsię cechowac istotnymi różnicami jeśli chodzi o rzeczywiste jasności pikseli. Napodzielonym w ten sposób obrazie można by następnie przeprowadzić np. jeden zalgorytmów z punktu 4.4., mając nadzieję na lepsze wyniki.Okazuje się jednak, że wszystkie powyższe rozważania mają charakter raczej teoretyczny.Praktyka przetwarzania archiwalnych fotografii pokazuje, że jakość odwzorowaniaobszarów, które niegdyś były teksturami jest prawie zawsze niezadowalająca. Podczasdługiego „życia” zdjęcia w postaci odbitki, obszary pokryte teksturą ulegają rozmyciom izatarciom. Zniekształcenia te nie są na tyle istotne, aby zaburzyć ludzką percepcjęfotografii, jednak w kontekście cyfrowego przetwarzania obrazów regiony, które niegdyśbyły pokryte teksturami, obecnie albo są jednolite albo tekstura przyjmuje charakter czystostochastyczny i praktycznie niemożliwe staje się jej dyskryminacja. Kilka przykładówtakiego efektu widocznych jest na rysunkach 28 i 29.Z tej przyczyny badania autora dotyczące algorytmów analizy tekstur zakończyły sięniepowodzeniem i żaden z algorytmów z tej grupy nie został zaimplementowany wzałączonej aplikacji. Zaimplementowane zostało jedynie obliczanie odpowiedzi filtraGabora.- 54 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 28: Przykład obszaru, który pierwotnie pokryty był teksturą, obecnie jest niemal jednolity- 55 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 29: Przykład obszarów, które pierwotnie były teksturami. Obecnie obszar polewej z powodu rozmycia jest niemal stochastyczny, obszar z prawej zaś jednolity- 56 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”5 TECHNIKI NAPRAWY USZKODZONYCH OBRAZÓW5.1 WPROWADZENIEPodstawowym założeniem, jakie należy przyjąć rozpatrując w ogóle zagadnienie usuwaniadefektów z archiwalnych (czy w ogólnym przypadku jakichkolwiek) fotografii, jest to, żeilość informacji utraconej w wyniku powstania uszkodzenia nie może być zbyt duża. Jeżelijest ona znaczna (na przykład uszkodzenie obejmuje ludzką twarz, patrz też rys. 32-33),żaden ogólny automatyczny algorytm nie będzie w stanie prawidłowo jej odtworzyć. Jeśliilość utraconej informacji jest nieduża i dodatkowo może być ona wywnioskowana zpozostałej, nieuszkodzonej części obrazu, wówczas można mówić o prawidłowejautomatyzacji procesu naprawy obrazów. Należy też podkreślić, że ilość utraconejinformacji nie jest bezpośrednio związana z wielkością zaznaczonego obszaru, ale równieżz jego kształtem i umiejscowieniem w obrazie. Na przykład, zaznaczony obszar na rysunku31 jest ponad cztery razy większy niż na rysunku 32, a mimo to utracona informacja jest owiele mniejsza (co widać również przy naprawie obrazu na rysunkach 30 i 33). Powyższezałożenie jest bardzo istotne, gdyż rzutuje bezpośrednio na ocenę jakości działaniaposzczególnych algorytmów.Celem naprawiania uszkodzonych obrazów jest takie wypełnienie zaznaczonych obszarów,aby odbiorca, który po raz pierwszy widzi obraz, nie był w stanie określić, w którymmiejscu one wystąpiły. Należy tu zauważyć, że nie jest najistotniejsze, czy odtworzonyobraz będzie identyczny jak ten przed powstaniem defektu. Ważne jest, aby obszar byłwypełniony w sposób ciągły i wiarygodny. Przykładowo, naturalną konsekwencjąopisanego wyżej założenia o niewielkiej ilości utraconej informacji jest to, że jeżelizaznaczony obszar będzie w całości zawierał jakiś obiekt, to podczas rekonstrukcji obiektten nie zostanie odtworzony, gdyż w jego otoczeniu nie zachowała się żadna informacja otym, że się on tam znajdował. Jeżeli jednak obszar, gdzie znajdował się tenże obiekt będziespójny i niezauważalny pozostanie fakt użycia algorytmu naprawiającego, należy uznaćtaką próbę za udaną, mimo że porównanie obrazu oryginalnego i odtworzonego- 57 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”wskazałoby na bardzo istotne różnice.Do usuwania zniekształceń z obrazów można użyć wielu metod. W zależności od typuuszkodzenia, które chce się naprawić, oraz od typu obrazu, z jakim ma się do czynienia,należy użyć różnych algorytmów. Niektóre z nich mają bardzo ograniczone zastosowania(jak np. model addytywno-multiplikatywny, stosowany właściwie wyłącznie w przypadkupółprzezroczystych plam wywołanych wilgocią), inne są bardziej uniwersalne. Podział takiwynika przede wszystkim z tego, czy algorytm zakłada jakąś konkretną strukturę obrazu iregionu wypełnianego, czy też nie. Najbardziej uniwersalne są algorytmy zamalowywania.Polegają one na wypełnianiu danego fragmentu obrazu przy pomocy interpolacjiinformacji niskoczęstotliwościowej spoza tego obszaru, bez uwzględnienia jakiejkolwiekstruktury lokalnej (tekstury) obszaru. Można je stosować w zasadzie do każdego rodzajuartefaktu i nie czyni się żadnego założenia ani co do struktury obszaru wypełnianego ani codo jego otoczenia. Ceną za taką uniwersalność tych algorytmów jest jakość ich działania.Sprawdzają się one bardzo dobrze w dwóch przypadkach:1. Kiedy obszar wypełniany jest niewielki lub wąski i podłużny, ogólnie: jeśli dladowolnego punktu wewnątrz wypełnianego regionu najbliższy piksel nie należącydo tego regionu leży nie dalej niż x pikseli, przy czym x jest niewielkie, rzędukilku, najwyżej kilkunastu pikseli.2. Kiedy otoczenie obszaru wypełnianego jest jednolite, bądź zmienne w sposóbjednolity. Innymi słowy: jeśli gradient jasności w otoczeniu jest w przybliżeniustały.Ponieważ uszkodzenia często bywają rozmiarów większych niż kilka pikseli, a także zewzględu na to, że obszary jednolite zdarzają się stosunkowo rzadko (zwłaszcza w starychfotografiach, gdzie oprócz właściwych elementów obrazu występuje często szum typu „sóli pieprz”, który dodatkowo może zostać zintensyfikowany w procesie digitalizacji),algorytmy zamalowywania same w sobie nie są najlepszym rozwiązaniem jeśli chodzi ousuwanie defektów z fotografii. Przykłady właściwego i niewłaściwego zastosowaniaalgorytmu zamalowywania widoczne są na rysunkach 31-33.- 58 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 31: właściwe zastosowanie -obszarem do usunięcia zaznaczony naczerwono (tekst) jest w sumie duży, alelinie go tworzące są cienkieRysunek 30: naprawiony obrazRysunek 32: niewłaściwe zastosowanie –zniekształcenie jest zbyt duże, a jegootoczenie niejednoliteRysunek 33: „naprawiony” obrazBardzo często bywa tak, że otoczenie obszaru podlegającego wypełnianiu jest jednolite dlaludzkiego oka, jednak w rzeczywistości charakteryzuje się pewną lokalną strukturą. Mówisię wówczas o teksturze. W przypadku takiego właśnie otoczenia algorytmyzamalowywania zawodzą, gdyż propagują one jedynie niskoczęstotliwościową częśćinformacji, a zatem nie ma możliwości, żeby odtworzyły zawartość regionu prawidłowo.W takich wypadkach właściwą grupą algorytmów jest synteza tekstur. Ogólnie pojęcie tooznacza generację dużego obszaru pokrytego teksturą na podstawie małej próbki. Wprzypadku wypełniania luk w obrazach polega to na pobraniu próbki z otoczenia- 59 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”rozpatrywanego regionu i na jej podstawie wypełnienia jego wnętrza teksturą. Ta grupaalgorytmów sprawdza się w dużo większej liczbie przypadków niż poprzednia. Ponieważsytuacja, kiedy obszar otoczony jest jednolitą teksturą jest częstsza niż gdy wokół niegoznajdują się piksele o jednolitej barwie, odpowiednio częściej taki algorytm będziewłaściwy. W takim przypadku rozmiar i kształt zaznaczonego obszaru w zasadzie nie mająznaczenia. Synteza tekstur ma jednak jedną istotną wadę: jeżeli obszar tekstury leżyjednocześnie w obszarze zmieniającej się jasności (np. gradient wynikający z rzucanegocienia), informacja o zmianie jasności nie będzie propagowana. Wynika to z tego, żepiksele generowane w procesie syntezy tekstury są na ogół jedynie kopiami pikseliistniejących już w obrazie, jeśli więc obszar o pośrednim stopniu jasności nie istnieje, efektbędzie daleki od oczekiwanego. Innymi słowy, propagowana jest informacja o charakterzewysokoczęstotliwościowym, zaś niskie częstotliwości nie są przenoszone.Algorytmem, który łączy przydatne cechy algorytmów zamalowywania oraz syntezytekstur jest algorytm hybrydowy, opisany w dalszej części niniejszego rozdziału.Poniżej omówione zostały wymienione podstawowe algorytmy z każdej z wymienionychgrup technik służących wypełnianiu uszkodzonych obszarów. Większość z nich zostałazaimplementowana przez autora w ramach niniejszej pracy.5.2 MODEL ADDYTYWNO-MULTIPLIKATYWNYModel ten można zastosować w przypadku uszkodzeń, które nie niszczą całkowiciezawartości informacyjnej obrazu, a jedynie dodają pewien szum. Przykładowo, użycie tejtechniki jest wskazane przy defektach takich jak plamy powstałe wskutek działaniawilgoci, zaś zupełnie bezzasadne w przypadku rozdarć czy rys, gdzie nie pozostała nawetnajmniejsza część informacji w rozpatrywanym obszarze. W przypadku regionuspełniającego powyższy warunek, przyjmuje się założenie, że szum powstał na zasadziemultiplikatywnej i addytywnej, tzn. przez mnożenie oraz dodawanie wartości pikseli dopewnych współczynników. W związku z tym modeluje się go (wg [5]) jako :- 60 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”I =∗J , (21)gdzie J jest obrazem oryginalnym, bez zniekształceń, I jest obrazemzniekształconym, wejściowym, zaś i są współczynnikami zaszumienia, którewyznaczane są na podstawie otoczenia rozpatrywanego regionu w następujący sposób: dorównania (21) stosujemy obustronnie wariancję oraz wartość oczekiwaną, otrzymującnastępujący układ równań:{var I = 2 ∗var J EX I =∗EX J (22)Gdyby znane byłoJ można by wyznaczyć współczynniki i , a następnieobliczyć odtworzony obraz na podstawie poniższego równania wynikającego z (21):J =I −/ (23)Ponieważ nie jest znane J , należy dokonać jego aproksymacji przez obszarotaczający rozpatrywany region, na podstawie założenia, że informacja w zdjęciach jestrozproszona po pewnym obszarze i że obszar uszkodzony nie zawiera informacji, które niewystępują nigdzie indziej.Po wykonaniu opisanych czynności szum będzie w dużej mierze usunięty z wyjątkiemobszarów leżących wokół jego granicy, w których wielkość szumu nie jest jednolita jakwewnątrz obszaru, tylko zmienia się od zera od strony zewnętrznej do wartości wewnątrz.Usunięcie tego defektu nie jest już takie łatwe i wymaga zastosowania algorytmuzamalowywania (ang. inpainting). Ponieważ jednak obszar ten będzie zazwyczaj dośćwąski (szerokości rzędu najwyżej kilku pikseli), aby usunąć zniekształcenia możnazastosować zwyczajną interpolację, która nie powinna wprowadzić znaczących artefaktów.- 61 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”5.3 ZAMALOWYWANIE (ANG. INPAINTING)5.3.1 ALGORYTM ZAMALOWYWANIA BERTALMIOZaproponowany w [2] przez Marcelo Bertalmio i in. algorytm opiera się na sposobie, wjaki odtwarzane są luki w rzeczywistych obrazach czy fotografiach podczas prackonserwatorskich. Opiera się on na trzech podstawowych krokach ( oznacza obszarwypełniany):1. Kontury dochodzące do krawędzi wypełnianego obszaru są przedłużane do jegownętrza tak, aby ogólny układ konturów był spójny. Takie przedłużenie dzieliwnętrze rozpatrywanego regionu na kilka mniejszych.2. Regiony wewnątrz są kolorowane zgodnie z kolorami obszarów na zewnątrz(malowane jest tło).3. Domalowywane są szczegóły obrazu, czyli w terminologii cyfrowegoprzetwarzania obrazów – tekstura.Rozpatrywana technika jest iteracyjna, w trakcie jej stosowania wielokrotnie powtarzanesą kroki 1 i 2. Ponieważ krok 3 jest charakterystyczny dla innej grupy algorytmów, amianowicie syntezy tekstur, nie wchodzi on w zakres algorytmu zamalowywania. Te dwatypy algorytmów połączone są dopiero w algorytmie hybrydowym, opisanym w dalszejczęści rozdziału.Najbardziej ogólnie można zapisać algorytm jako:I n1 i , j=I n i , j t I t n i , j,∀i , j∈ (24)Gdzie n jest numerem iteracji, i oraz j to współrzędne piksela, t jest danymwspółczynnikiem szybkości naprawy, a I n t i , j jest zmianą obrazu w kroku n, którawymaga zdefiniowania. Jak wspomniano wcześniej, pierwszym krokiem jest przedłużeniekonturów do wnętrza obszaru , ale pod takim kątem, pod jakim dochodzą one dokrawędzi. Informację, która ma być przeniesiona oznaczamy L n i , j , zaś wektorkierunku, w jakim ma być ona przepropagowana N n i , j . Zmiana w kroku n może- 62 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”więc być wyrażona jako:I t n i , j= n i , j∣∇ I n i , j∣ n i , j= L n i , j⋅ N i , j ,n∣N i , j ,n∣, (25)gdzie n i , j jest rzutem wektora L n i , j na N i , j ,n . L n i , j to miarazmiany informacjiL n i , j , aN i , j ,n∣N i , j ,n∣znormalizowany kierunek tej zmiany.Celem jest przedłużenie konturów, które na obrazie można wyróżnić jako izofoty.Kierunek izofot wyznacza wektor normalny do kierunku największej zmiany jasności, azatem gradientu (będzie on wskazywał kierunek najmniejszej zmiany jasności, a więcwłaśnie przebiegu izofoty). Stąd n i , j jest mnożone przez moduł gradientu obrazu.Ponieważ algorytm ma na celu przepropagowanie informacji w sposób płynny, więcL n i , j może być określone np. jako Laplasjan. Zmiana informacji oraz wektorkierunku wyznaczane są wg następujących wzorów: L n ¿i , j=[ Ln i1, j− L n i−1, jL n i , j1−L n i , j−1] , (26)=[−I n yi , jN i , j , n I n xi , j 2 I y 2] n i , j 2,∣N i , j , n∣ I n xi , jI n x i , j 2 I n y i , j(27)Moduł gradientu obrazu jest natomiast wyliczany w następujący sposób:∣∇ I n i , j∣={ n I xbmn I xbM 2 nI xfM 2 n I xfm 2 nI ybm 2 nI ybM 2 nI yfM 2 , dla n i , j≥0 2 nI yfm 2 , dla n i , j0 , (28)- 63 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”gdzie indeksy b i f oznaczają różnicę odpowiednio w tył (tzn. np. między pikselem (x-1,y) i(x,y)) oraz w przód (tzn. np. między (x,y) i (x+1,y)), zaś m i M odpowiednio minimum imaksimum między wartością I a zerem.Obliczona w ten sposób wartość I n t i , j jest następnie, po przemnożeniu przez tdodawana do bieżącej wartości piksela w obrazie, a cały proces powtarzany. Dodatkowo,aby zapobiec przecinaniu się konturów wewnątrz wypełnianego obszaru, co kilka iteracjiwykonywane jest anizotropiczne rozmycie.Algorytm Bertalmio jest złożony i co za tym idzie, jego koszt obliczeniowy jest bardzowysoki. Nawet dla obszarów rzędu kilku tysięcy pikseli (niewiele, zważywszy, że jest topowierzchnia odpowiadająca kwadratowi o boku zaledwie kilkudziesięciu pikseli)wykonuje się on kilka czy nawet kilkanaście minut na szybkim sprzęcie. Z drugiej strony,jak się okaże w dalszej części tego rozdziału, efekty jego działania są porównywalne dodużo prostszych metod, zaś te elementy, w których się on wyróżnia (zdolność doprzynajmniej częściowego zachowywania elementów wysokoczęstotliwościowych) dozastosowania w proponowanej implementacji są zbędne. Z tego powodu algorytm tenzostał zaimplementowany jedynie w celach eksperymentalnych.5.3.2 ALGORYTM OLIVEIRAMetoda została zaproponowana przez Manuela Oliveirę i in. i opisana w [10]. Algorytmten cechuje wyjątkowa prostota, dająca jednocześnie dobre wyniki dla tych zastosowań,dla których zamalowywanie jest właściwym wyborem (patrz punkt 5.1.). Konsekwencjąmałego skomplikowania tej techniki jest również jej niski koszt obliczeniowy. Czasywypełniania nawet dużych obszarów liczone są w sekundach czy wręcz w ułamkachsekund, co jest bardzo znaczącą poprawą w stosunku do skomplikowanego algorytmuBertalmio.- 64 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Przebieg algorytmu jest następujący: na początku rozpatrywany obszar wypełniany jestjednolitym kolorem (na ogół szarością). Potem na całej przestrzeni danego regionuwielokrotnie stosowany jest filtr rozmywający, poczynając od jego krawędzi, co skutkujepropagacją informacji z najbliższego otoczenia do wnętrza. Konwolucja stosowana jestdotąd, aż podczas jednego przebiegu filtra nie zostanie zmieniona wartość żadnego pikselawewnątrz regionu wypełnianego.Ponieważ celem jest ustalenie wartości piksela jedynie na podstawie jego otoczenia, więcstosowane są jądra filtrów posiadające wartość zerową w swoim środku. Autorzyalgorytmu proponują następujące filtry:a b a c c cb 0 b c 0 ca b a c c cgdzie a=0.073235, b=0.176765, c=0.125. Oba one dają zadowalające i porównywalne dosiebie rezultaty. Autor wypróbował też większe filtry, m.in.:a b c b ab d e d bc e 0 e cb d e d ba b c b agdzie a=0.00431, b=0.01724, c=0.03017, d=0.06896, e=0.09913.Różnica między zastosowaniem filtra o wielkości okna 3x3 a większym (np. 5x5 jakpowyżej) polega na tym, że im większe okno, tym większa jest grubość otoczenia, zktórego informacja jest propagowana do wewnątrz obszaru. Dla okna 3x3 otoczenie to magrubość tylko 1 piksela, dla 5x5 dwóch pikseli itd. Różnica ta jest dla większości- 65 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”przypadków niezauważalna. Jedyną sytuacją, gdzie mogłoby to odgrywać rolę jestumiejscowienie obszaru wypełnianego wewnątrz tekstury (wówczas nawet pikseleznajdujące się obok siebie mogą być istotnie różne). Ponieważ jednak filtr taki jak powyżejz definicji swojej powoduje rozmycie obrazu, więc nawet w takim przypadku informacjawysokoczęstotliwościowa nie zostanie przeniesiona, a co za tym idzie różnica międzyużyciem różnych rozmiarów okna nie powinna być (i nie jest) istotna.5.3.3 INNE ALGORYTMY ZAMALOWYWANIAJak jest to opisane w rozdziale 5.5, na potrzeby niniejszej pracy potrzebny jest algorytmzamalowywania, który będzie dawał zadowalające wyniki dla obrazów o niskichczęstotliwościach przestrzennych. Ponieważ praktycznie wszystkie algorytmy tak sięzachowują, należy wybrać taki, który będzie miał najniższy koszt obliczeniowy i będziedziałał najszybciej. Dlatego autor zaproponował dwa algorytmy zamalowywania, które nieprzenoszą informacji wysokoczęstotliwościowej, ale są łatwe w implementacji i szybkie wdziałaniu.Pierwszy z nich polega na uzupełnianiu piksela należącego do maski wartością znanegopiksela leżącego najbliżej. Aby jeszcze przyspieszyć działanie algorytmu, nie są brane poduwagę wszystkie piksele należące do krawędzi, ale tylko te leżące na liniach prostychrozmieszczonych co 45° i przecinających się w punkcie rozpatrywanego piksela. Jest tozobrazowane na rys. 34.Rysunek 34: Piksele brane pod uwagęw algorytmie zamalowywania przyużyciu wartości najbliższego piksela- 66 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Algorytm działa bardzo szybko, jednak ma jedną zasadniczą wadę. Fragmenty otoczenia sąrozciągane do wnętrza regionu bez żadnych modyfikacji wartości tych pikseli, więc jeżeliotoczenie regionu nie będzie w przybliżeniu jednolite, wówczas wypełnienie będzie sięskładać z wyraźnie widocznych i kontrastujących obszarów, a nie gładkich przejść, jaknależałoby się spodziewać. Aby uniknąć takiego zachowania należy interpolować wartośćwypełnianego piksela, a nie przepisywać ją z otoczenia. Dlatego można zmodyfikowaćmetodę tak, aby nie wybierać wartości najbliższego piksela, ale obliczać średnią ważoną zwartości najbliższych pikseli w rozpatrywanych kierunkach (na rys. 34 są one zaznaczonena zielono) przy założeniu, że wagami będą odległości do tych pikseli.Ponieważ, jak zauważono powyżej, wartość pikseli powinna być interpolowana, zaś zdefinicji operujemy na obrazach o niskich częstotliwościach przestrzennych, możnaprzyjąć, że barwa pikseli będzie zmieniać się jednostajnie. Na tej podstawie możnazaproponować algorytm, który będzie tworzył liniowe gradienty w pionie i w poziomie,przy czym wartości graniczne będą odpowiadały wartościom znanych pikseli. Nie będziewówczas widocznych granic między regionami, a jedynie płynne przejścia od jednegokoloru do drugiego, czyli to, czego oczekuje się po algorytmie zamalowywania (cały czaspamiętając o tym, że operuje się na obszarach bez detali i ostrych krawędzi).5.4 SYNTEZA TEKSTUR5.4.1 WPROWADZENIEZagadnienie syntezy tekstur jest dość znaną i dobrze opisaną dziedziną, jednakwykorzystanie jej do wypełniania luk w obrazach nie jest szeroko stosowane. Wtradycyjnym ujęciu, działanie tych algorytmów polega na tym, że podawana jest im pewnapróbka tekstury, spełniająca warunek, iż zawiera ona największe elementy składowetekstury, a także relacje przestrzenne między nimi. Na podstawie takiej próbki algorytmtworzy obraz o dowolnych rozmiarach wypełniony teksturą nieodróżnialną od wejściowej(warunek na "odróżnialność" tekstury jest słabo zdefiniowany i na ogół pojmowany w- 67 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”sensie subiektywnej reakcji ludzkiego oka). Taki model powinien się sprawdzaćnadzwyczaj dobrze przy wypełnianiu luk w obrazach (zwłaszcza przy użyciu algorytmusyntezy tekstur w algorytmie hybrydowym, opisanym w punkcie 5.5), gdyż miejsce, gdziewystępuje defekt można by wypełnić teksturą z otoczenia uzyskując w dużej liczbieprzypadków bardzo zadawalające efekty. Problemem jest jednak podanie na wejściealgorytmu syntezy tekstur odpowiedniej tekstury referencyjnej. Gdyby obraz zawierałjedynie teksturę (jest to przypadek rozpatrywany na ogół przez autorów publikacji), jakoobszar wzorcowy można by podać po prostu dopełnienie obrazu uszkodzonego. Wrzeczywistych przypadkach oczywiście taka sytuacja nie zachodzi, dopełnienie regionuwpełnianego zawiera dużo więcej różnych obszarów o innych barwach i teksturach.Dlatego w zasadzie niemożliwe jest skonstruowanie próbki tekstury wejściowej, jakiejoczekują omawiane algorytmy. O ile problem ten daje się obejść w przypadku algorytmów,które poszukują najlepszego dopasowania piksela, takich jak te opisane w punktach 5.4.2. i5.4.3., o tyle użycie algorytmów opartych na operacjach blokowych (jak algorytm opisanyw punkcie 5.4.4.) staje się niemożliwe.Jeżeli algorytm przeszukuje teksturę referencyjną, aby znaleźć piksel o najbardziejpodobnym otoczeniu, wystarczy podać mu taki obszar, który będzie próbki takiej teksturyzawierał, nie jest istotny jego kształt ani rozmiar (przy uwzględnieniu wspomnianegowcześniej założenia, że odzwierciedla on wszystkie istotne elementy tekstury). Wprzypadku usuwania uszkodzeń z materiałów archiwalnych takim obszarem może byćjedynie otoczenie uszkodzonego fragmentu. Nie ma sensu podawanie jako wzorca całegodopełnienia maski z dwóch powodów:1. Reszta obrazu zawiera nie tylko rozpatrywaną teksturę, ale również wiele innych,jak też obszary pozbawione tekstury,2. W normalnym przypadku region wypełniany jest dużo mniejszy od całego obrazu,a więc przeszukiwanie całego zdjęcia przy każdym pikselu (czy nawet budowaniedrzewa przeszukiwania, patrz punkt 5.4.3.) będzie bardzo kosztowne obliczeniowo,przy czym, ze względu na punkt 1. nie będzie usprawiedliwione względamipraktycznymi.- 68 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Oczywiście bezpośrednie otoczenie może również zawierać więcej tekstur niż tylko ta,która powinna być przepropagowana do wnętrza, jednak szansa na to jest znaczniemniejsza niż w przypadku całego obrazu. Problem ten jest nie do uniknięcia, ale ponieważzdecydowano się na wypełnianie regionu uszkodzonego tylko jedną teksturą, w naturalnysposób tych kilka tekstur zostanie ze sobą wymieszanych.Pozostaje jeszcze kwestia określenia otoczenia, które będziemy próbkować wposzukiwaniu najlepszego dopasowania. Najlepiej byłoby zdefiniować je jako zbiór pikselileżących w pewnej maksymalnej odległości od obszaru wypełnianego (rodzaj "pierścienia"wokół niego). Można jednak też sobie je wyobrazić jako prostokąt opisany na regionie,dodatkowo poszerzony o pewne stałej szerokości "marginesy". Doświadczenie pokazuje,że nie ma istotnej różnicy między tak zdefiniowanymi otoczeniami, ze względu nałatwiejszą implementację, autor wybrał więc drugi sposób i na podstawie tak określonejpróbki tekstury wypełniany jest rozpatrywany obszar.5.4.2 ALGORYTM SYNTEZY TEKSTUR EFROS & LEUNGJednym z pierwszych i najistotniejszym dla rozwoju dziedziny algorytmem syntezy teksturjest algorytm Efrosa i Leunga ([13]). Prace nad nim zostały zainspirowane przezpropozycję Claude'a Shannona, aby automatycznie tworzyć słowa i zdania brzmiące poangielsku, jednak niekoniecznie posiadające jakikolwiek sens, przy użyciu n-gramów. Ideatego pomysłu jest następująca: modeluje się język jako uogólniony łańcuch Markova iwychodzi z założenia, że dowolnie wybrane kolejne n liter bądź słów (tworzących właśnien-gram) jednoznacznie definiuje rozkład prawdopodobieństwa następnej litery lub wyrazu.Można więc wybrać którąś z możliwych opcji (najczęściej tę najbardziej prawdopodobną)i przesunąć okno o szerokości n znaków/słów dalej, dobierając kolejny element. Powstajepytanie, skąd wziąć tabele rozkładu prawdopodobieństwa dla konkretnych n-gramów. Otóżmożna zbudować ich dobre przybliżenia dysponując odpowiednio dużą próbką języka (np.w postaci książki – ważne jest, aby język był stylowo i składniowo podobny do tego, którychce się uzyskać). Problemem może być jedynie rozmiar takiej bazy danych, gdyż- 69 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”zakładając n-znakowy kontekst oraz k znaków w alfabecie, otrzymamy k n kombinacji. Wpraktyce jednak jest to wykonalne.W dziedzinie cyfrowego przetwarzania obrazów jako elementy kontekstu przyjmuje siępiksele, a zatem założenie o modelowaniu tekstury przyjmuje postać następującą: rozkładprawdopodobieństwa wartości dowolnego piksela w obrazie zależy jedynie od jegobezpośredniego sąsiedztwa o danym rozmiarze (w szczególności nie zależy od jegoumiejscowienia w obrazie). Rozszerzenie idei Shannona na przestrzeń dwuwymiarową, wktórej operuje się podczas przetwarzania obrazów, polega jedynie na tym, że kontekst, napodstawie którego generowany jest kolejny piksel nie ma już wymiaru n, tylko n x n, zaś“liter w alfabecie”, czyli możliwych wartości pojedynczego piksela jest tyle, ile wynika zestosowanej przestrzeni barw (w najpopularniejszym modelu RGB będzie to 256). Tosprawia, że już przy n rzędu kilku, rozmiary tablic stają się niemożliwe do zarządzania (np.użycie najmniejszego możliwego prostokątnego sąsiedztwa, .czyli okna o wymiarach 3x3daje już 256 8 = 18 446 744 073 709 551 616 kombinacji). Dlatego autorzy postanowili niebudować modelu tekstury, która ma być syntetyzowana, a następnie z niego korzystać,tylko każdorazowo, dla każdego generowanego piksela, przeszukiwać obraz-próbkę iodnajdywać kandydata do uzupełnienia rozpatrywanego miejsca na podstawie sąsiedztwarozpatrywanego piksela.Na początku przedstawiony zostanie sposób syntetyzowania pojedynczego piksela,zakładając, że całe wszystkie pozostałe piksele w obrazie są znane. Następnie technika tazostanie rozszerzona na bardziej ogólny (rzeczywisty) przypadek wypełniania obszarówskładających się z więcej niż jednego piksela.Niech I będzie obrazem docelowym, syntetyzowanym na podstawie próbki tekstury I smp .Niech p∈I będzie pikselem, p jego kwadratowym otoczeniem, a d 1, 2odległością (błędem) między dwoma takimi otoczeniami. W ogólnym przypadku, jeżelidana by była tekstura nieskończonej wielkości, funkcja gęstości prawdopodobieństwa dlawartości wypełnianego piksela mogłaby być przybliżona przez histogram wszystkichwartości pikseli, dla których otoczenie jest identyczne z p . Ponieważ jednak próbka- 70 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”wejściowa I smp jest jedynie bardzo niewielkim fragmentem takiej tekstury, należyposzukiwać otoczeń nie identycznych, a jedynie podobnych (mogą bowiem nie wystąpićżadne identyczne otoczenia). Kryterium podobieństwa można definiować na wielesposobów. Autorzy algorytmu proponują odnalezienie najlepiej dopasowanego otoczenia, anastępnie określenie progu podobieństwa jako E (proponowana wartość to 0,1) z wartościbłędu dla tego najlepszego obszaru:d p , i d p, best , (29)Jako miarę odległości dwóch obszarów autorzy proponują d=d SSD * G, gdzie d SSD jesttradycyjną miarą błędu kwadratowego (suma kwadratów odległości po wszystkichpikselach w otoczeniu, ang. sum of squared distances), zaś G jest dwuwymiarowymjądrem przekształcenia gaussowskiego. Taka modyfikacja d SSD stosowana jest, abyzróżnicować piksele leżące blisko środka (króre powinny mieć większy wpływ nawyszukiwanie podobnych otoczeń) oraz te leżące dalej (które są mniej istotne).Histogram skonstruowany zgodnie z powyższą techniką może następnie być próbkowany,aby wyznaczyć wartość, która ostatecznie zastąpi wypełniany piksel. Próbkowanie to możeprzebiegać losowo (np. wybierany jest losowo jeden z k najlepszych kandydatów, byćmoże z uwzględnieniem wag wynikających z prawdopodobieństwa) lub w pełnideterministycznie. Takie podejście na ogół będzie polegało na wybraniu najbardziejprawdopodobnego kandydata. Można wówczas pominąć krok budowania histogramu, ajedynie poprzestać na znalezieniu najlepiej dopasowanego otoczenia best i wybraniuwartości centralnego piksela jako docelowej. Takie podejście zastosowane zostało wimplementacji autora niniejszej pracy.W ten sposób syntetyzowany jest pojedynczy piksel przy założeniu, że znane jest całe jegootoczenie. Nie jest to jednak prawdą w rzeczywistej sytuacji, podczas wypełniania luki wobrazie (o ile obszar wypełniany jest większy niż jeden piksel). Otoczenie wypełnianegopiksela składać się będzie po części z pikseli znanych (nie należących do maski lubzsyntetyzowanych już wcześniej), a po części z nieznanych. Należy więc ten fakt- 71 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”uwzględnić i podczas przeszukiwania obrazu referencyjnego szukać najlepszegodopasowania nie dla całego otoczenia, a jedynie dla takiego kształtu sąsiedztwa, z jakimmamy do czynienia w miejscu wypełnianego piksela, biorąc pod uwagę tylko piksele oznanych wartościach. W tym celu wyliczona odległość d między dwoma otoczeniaminormalizowana jest przez liczbę znanych pikseli w tych otoczeniach i na podstawie takiejmiary wybierany jest najlepiej pasujący kandydat.Rysunek 35: Przykłady różnychmożliwych kombinacji znanych pikseli dlaokna 3x3. Krzyżykiem zaznaczonowypełniany w danej chwili piksel. Znanesąsiedztwo (nie objęte czerwoną maską)składa się z 2, 3 lub 4 pikseli.Istotnym parametrem działania algorytmu Efros & Leung jest rozmiar otoczenia , napodstawie którego poszukiwani są kandydaci do wypełnienia luki, zwłaszcza w przypadkusyntetyzowania tekstur o naturze strukturalnej, a nie stochastycznej. Dokładniej, bardzoistotne jest porównanie tej wielkości z wielkością i rozmieszczeniem przestrzennymtekseli, gdyż wielkość otoczenia przekłada się na wielkość kontekstu, w którym widzianyjest pojedynczy piksel. Jeżeli będzie ono mniejsze niż rozmiar pojedynczego teksela,wówczas nie zostanie on w całości przeniesiony do tekstury wyjściowej, a rezultat będziebardzo daleki od oczekiwań (patrz rys. 37). Jeśli z kolei będzie ono większe od rozmiaruteksela, ale mniejsze niż odległość między dwoma sąsiednimi tekselami, wówczas wobrazie wyjściowym nie zostanie odtworzona struktura przestrzenna tesktury, czyliwzględne rozmieszczenie tekseli (patrz rys. 38). Dopiero otoczenie o takiej wielkości, że- 72 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”obejmuje zarówno pojedynczy teksel, jak i odległość między dwoma tekselami, pozwalana otrzymanie satysfakcjonujących wyników (patrz rys. 36).Rysunek39:PróbkateksturyRysunek 37: Synteza przyużyciu okna mniejszegoniż rozmiar pojedynczegookręguRysunek 38: Synteza przyużyciu okna mniejszegoniż odległość międzyokręgamiRysunek 36: Synteza przyużyciu okna odpowiedniejwielkości (obejmującegonie tylko pojedynczyokrąg, ale też odległościmiędzy elementamitekstury)Należy zauważyć, że w przypadku tekstur występujących w archiwalnych fotografiach,bardzo rzadko ma się do czynienia z teksturami o naturze ściśle strukturalnej, zwłaszczabiorąc pod uwagę ich słabą jakość po zdigitalizowaniu (patrz rozdział 4.6). Z tegowzględu, a także kierując się względami praktycznymi wynikającymi z licznychdoświadczeń autor za wystarczające uznał otoczenie wielkości 7 lub 9 pikseli.Algorytm ten ma też jednak istotną zaletę: ponieważ kształt sąsiedztwa nie jest w żadensposób narzucony, można syntetyzować piksele w dowolnej kolejności. Jest to o tyleistotne, że podczas syntetyzowania pikseli w porządku rastrowym wprowadzane będąwidoczne granice na prawej i dolnej krawędzi regionu. Aby temu zapobiec możnawypełniać piksele w porządku spiralnym, co zlikwiduje ten efekt. Żeby jednak móc tozrobić, sąsiedztwo nie może mieć ustalonego kształtu (jak np. w kolejnym algorytmie),gdyż wtedy nie będzie możliwe syntetyzowanie pikseli np. raz z lewej, a raz z prawejstrony uszkodzonego obszaru. W ramach niniejszej pracy autor zaimplementował obasposoby syntezy tekstury.Zaproponowana technika sprawdza się bardzo dobrze w syntezie tekstur, ma jednak jednązasadniczą wadę: jest niezmiernie kosztowna obliczeniowo. Dla każdego piksela wewnątrz- 73 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”maski (a może być ich nawet kilkanaście czy kilkadziesiąt tysięcy), przeszukiwany jestcały obraz, z którego próbkujemy, co na ogół prowadzi do bardzo długich czasówwykonania algorytmu, rzędu nawet kilkunastu minut dla obszaru wypełnianego wielkościok. 10 000 pikseli. O ile można to jeszcze zaakceptować w przypadku tekstur losowych,gdzie w ten sposób rzeczywiście znajdujemy najlepsze dopasowanie, o tyle przypadkutekstur o naturze strukturalnej (np. takich jak na rysunku 36) przeszukiwanie całego obrazuwejściowego dla każdego piksela już na pierwszy rzut oka wydaje się bezsensowne, gdyżdla podobnych, powtarzających się sąsiedztw operacja powtarzana będzie każdorazowo odnowa.5.4.3 ALGORYTM SYNTEZY TEKSTUR WEI & LEVOYSkuteczną próbę rozwiązania powyższego problemu podjęli Li-Yi Wei i Marc Levoy,proponując metodę opisaną w [15]. Zastosowali oni dwa istotne usprawnienia algorytmuEfrosa i Leunga. Po pierwsze, synteza tekstur przebiega wielorozdzielczościowo, zpodziałem obrazu na piramidę gaussowską, co pozwala odtwarzać elementy teksturywiększe niż rozmiar okna sąsiedztwa p . Jest to niemożliwe w tradycyjnej formiealgorytmu. Dzieje się tak, gdyż elementy o największej skali są syntetyzowane podczasprzetwarzania elementu piramidy o najniższej rozdzielczości, zaś wraz ze wzrostemprzetwarzanej rozdzielczości (kolejne poziomy piramidy) tworzone są bardziejszczegółowe elementy tekstury. Drugą modyfikacją jest fakt użycia drzewaprzeszukiwania, budowanego na podstawie tekstury wejściowej, z którego pomocąodnajdowany jest najlepszy kandydat do wypełnienia rozpatrywanego piksela. Autorzyproponują użycie techniki TSVQ (ang. tree-structured vector quantization), w aplikacjiwykorzystana została biblioteka ANN (ang. approximate nearest neighbour) [22].Pierwszym krokiem jest utworzenie piramid gaussowskich dla obrazu wejściowego I a orazwyjściowego I s (oznaczonych G a i G s ). Każda z nich składa się z L poziomów. Syntezaprzebiega w kolejności od najniższej do najwyższej rozdzielczości. Na tym poziomieabstrakcji jedyną różnicą między tym algorytmem a metodą Efrosa i Leunga jest fakt, że- 74 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”sąsiedztwo jest niejako trójwymiarowe: zawiera nie tylko piksele sąsiednie w danejrozdzielczości, ale też piksele z poziomów niższych (zarówno w propozycji autorów jak iw implementacji jest to tylko jeden niższy poziom). Konstrukcja takiego sąsiedztwaukazana jest na rys. 40. Poziom o najniższej rozdzielczości syntetyzowany jest technikąjednorozdzielczościową tak, jak w podstawowej wersji algorytmu.Rysunek 40: Konstrukcja sąsiedztwa wielopoziomowego. Punktowioznaczonego X na poziomie L piramidy odpowiada punkt Y na poziomie L+1.Wobec tego w skład sąsiedztwa punktu X wchodzą wszystkie punkty oznaczoneliterami O, Q oraz YPonieważ w algorytmie wykorzystywane jest drzewo przeszukiwania, wektory, które są wnim umieszczane muszą mieć taką samą strukturę, tzn. odpowiadać obszarom o takimsamym kształcie. Implikuje to fakt, że dla każdego syntetyzowanego piksela musi byćznany dokładnie taki sam zestaw pikseli sąsiednich. To odróżnia algorytm Weia i Levoiaod algorytmu Efrosa i Leunga, gdzie znane mogły być dowolne piksele w sąsiedztwie, amiara odległości była normalizowana tak, aby uniezależnić ją od liczby i rozmieszczeniatych pikseli. Ponieważ naturalnym porządkiem przeglądania obrazu jest porządek rastrowy,właśnie w takim porządku są syntetyzowane piksele. Co za tym idzie, sąsiedztwoskładające sie ze znanych pikseli na danym poziomie piramidy ma kształt litery L i składasię z pikseli we wcześniejszych rzędach i w bieżącym rzędzie do bieżącej kolumny(rysunek 41). Dodatkowo, na sąsiedztwo składają się piksele z niższych poziomówpiramidy, jak to zostało opisane powyżej.- 75 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 41: Charakterystycznesąsiedztwo w kształcie litery L wynikającez porządku rastrowego. Jest onostosowane m.in. w algorytmie Weia iLevoyaKolejnym etapem algorytmu jest już właściwa synteza, która przebiega od niższychpoziomów piramidy do wyższych wg następującego schematu:1. Zbudowanie drzewa przeszukiwania, zawierającego wszystkie sąsiedztwa zpiramidy G a na danym poziomie, które następnie będzie odpytywane o najlepiejpasujące otoczenie w próbce tekstury.2. Dla każdego piksela na danym poziomie, który ma być wypełniony budowane jestjego sąsiedztwo, a następnie poszukiwane jest w drzewie najbardziej do niegopodobne. Wynik wyszukiwania określa miejsce, z którego należy wziąć wartośćpiksela, żeby wstawić je w rozpatrywane miejsce.W aplikacji zastosowana została też dodatkowa modyfikacja powyższego algorytmu,również opisana przez autorów w [15]. Ma ona na celu uniknięcie efektu nieciągłościtekstury na prawym i dolnym skraju obszaru wypełnianego, który wynika z rastrowegoporządku syntezy (rysunki 43 i 42). W tradycyjnej wersji algorytmu można było uniknąćtego efektu przez zastosowanie spiralnego porządku syntezy (zagadnienie to opisane jest wpunkcie 5.4.2). W zmodyfikowanej wersji jest to niemożliwe, gdyż wszystkie sąsiedztwamuszą mieć jednakowy kształt, a nie jest to możliwe przy kolejności spiralnej (czyjakiejkolwiek innej poza rastrową). Wspomniana modyfikacja polega na tym, że tekstura- 76 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”syntetyzowana jest dwuprzebiegowo. Każdy z przebiegów ma dokładnie taką strukturę jakopisano powyżej z jedną różnicą – użyte jest inne otoczenie. Ponieważ otoczenie musizawierać jedynie znane piksele, w pierwszym przebiegu użyte są jedynie piksele zniższych poziomów piramidy, zsyntetyzowanych wcześniej (poza najniższym poziomem,który wypełniany jest podstawową wersją algorytmu). W ten sposób wstępnie wypełnianesą wyższe poziomy przy pomocy sensownych wartości. Dzieki temu można zastosowaćspiralny porządek syntezy, gdyż każdy piksel ma już otoczenie składające się ze znanychpikseli. Piksele te są następnie użyte w drugim przebiegu, już z pełnymi sąsiedztwami,zarówno z niższych jak i z bieżącej rozdzielczości, przebiegającym w innym porządku niżrastrowy (zastosowany przez autora został porządek spiralny).Rysunek 43: Obraz wejściowy z maską zaznaczoną naczerwonoRysunek 42: Obraz po syntezie tekstury. Widoczna jestnieciągłość na dolnej krawędzi maski i nieco słabiejrównież na prawejNiewątpliwą zaletą omawianego algorytmu jest szybkość jego działania. Przy użyciuimplementacji drzewa poszukiwania najbliższego sąsiada z biblioteki ANN, obszary owielkościach rzędu kilkudziesięciu tysięcy pikseli wypełniane są w czasach liczonych wsekundach. Taki skok jakościowy wynika z rezygnacji poszukiwań najlepszego kandydataw sposób wyczerpujący kosztem drobnego spadku jakości rezultatów, który jednak wopisywanym zastosowaniu jest praktycznie niewidoczny, a na pewno akceptowalny. Z tegopowodu algorytm Wei & Levoy został wybrany jako podstawowy alogrytm syntezy teksturw aplikacji.- 77 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”5.4.4 ALGORYTM SYNTEZY TEKSTUR EFROS & FREEMANZupełnie inne podejście do zagadnienia syntezy tekstur zastosowali autorzy [14]. Założylioni, że najistotniejszą cechą tekstury jest powtarzalność jej elementów. Bazując na tymstworzyli algorytm, wykorzystujący ten fakt w następujący sposób: fragmenty tekstury sąbezpośrednio powielane tak, aby wypełnić cały docelowy obszar, a następnie granicemiędzy nimi są zacierane. Najistotniejsza różnica między takim podejściem, a tymstosowanym we wcześniejszych dwóch algorytmach polega na tym, że syntetyzowane sąnaraz nie pojedyncze piksele, ale całe bloki tekstury.Podczas powielania fragmentów tekstury w sposób losowy widoczne będa granice międzyblokami. Aby tego uniknąć po pierwsze regiony ustawia się tak, że zachodzą na siebie nagranicach. Rozmiar obszaru zachodzenia ustalany jest arbitralnie, autorzy algorytmuproponują 1/6 wielkości bloku (wielkość bloku jest jedynym parametrem wejściowymalgorytmu poza próbką tekstury referencyjnej). Po drugie, bloki nie są dobierane całkiemlosowo, ale z uwzględnieniem kryterium maksymalnego podobieństwa, podobnie jak tomiało miejsce w algorytmie Efros & Leung. Robi się to w ten sposób, że wybiera się zpróbki tekstury wejściowej taki zbiór bloków, że średni błąd między obszaramizachodzenia na siebie dla tego bloku i bloków sąsiednich, już wstawionych do obrazuwyjściowego, nie przekracza wartości progowej. Autorzy proponują jako kryteriumtolerancji przyjąć 1/10 wartości błędu dla najlepiej dopasowanego bloku, zaś jako miarębłędu normę L2, czyli odległość euklidesową. W ten sposób granice między takwstawionymi blokami są wyraźnie mniej widoczne niż w przypadku całkiem losowejgeneracji obrazu wyjściowego. Mogą być one jednak nadal dostrzegalne i aby tegouniknąć stosuje się dodatkowy krok algorytmu polegający na wyznaczeniu ścieżki cięcia onajmniejszym błędzie między dwoma blokami (ang, minimum error boundary cut). Stajesię ona wówczas rzeczywistą granicą między blokami w obrazie wyjściowym., a algorytmRysunek 44: Różne sposoby powielania blków tekstury. Pierwszy to rozmieszczenie sąsiadująco zupełnie losowychbloków. W drugim stosuje się dodatkowo warunek na możliwie duże podobieństwo regionów, gdzie B1 i B2 na siebiezachodzą. Trzeci to również rozmieszczenie z minimalnym błędem na przecięciu się obszarów, ale dodatkowo też zwyznaczoną ścieżką minimalnego błędu.- 78 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”przechodzi do poszukiwania kolejnego bloku tekstury do wstawienia. Powyższe krokinaszkicowane zostały na rysunku 44.Aby wyznaczyć ścieżkę minimalnego błędu można posłużyć się wieloma różnymitechnikami np. takimi jak programowanie dynamiczne czy algorytm Dijkstry. Autorzyproponują jednak następujące podejście. Niech B 1 i B 2 będą sąsiednimi blokamizachodzącymi na siebie wzdłuż krawędzi pionowej, a Bov 1 i Bov 2 będą obszaramizachodzenia. Wówczas obszar odzwierciedlający błąd ma wymiary pojedynczego obszaruzachodzenia i jest dany wzorem:e=Bov 1−Bov 2 2 (30)Następnie obszar ten jest przeglądany wierszami (i=2..N-1, gdzie N jest wysokościąobszaru zachodzenia) i obliczane są skumulowane błędy minimalne dla wszystkich ścieżek(j oznacza numer kolumny):E i , j=e i , jmin E i−1, j −1; E i −1, j; E i−1, j1 (31)Wzór ten oznacza, że brana jest dotychczasowa minimalna ścieżka kończąca się w danejkolumnie, a jako kolejny jej krok wybierany jest ten piksel, który daje najmniejszą wartośćbłędu. Po zakończeniu iteracji, ostatni wiersz, tzn. E N-1 , zawiera wartości błędów dlaminimalnych ścieżek kończących się w kolejnych kolumnach, Następnie wybierana jestwartość najniższa, a cała ścieżka jest odtwarzana przez proces powrotów (ang. backtrace).Analogiczna procedura jest przeprowadzana dla obszarów zachodzenia leżących wzdłużpoziomej granicy. Po tym kroku znane są zarówno ścieżki minimalnego błędu dla krawędzipionowej jak i poziomej, które łączone są w punkcie ich przecięcia w granicę końcową.Omawiany algorytm jest szybki obliczeniowo, gdyż nie wykonuje się operacji dlapojedynczych pikseli, a tym bardziej nie przeszukuje się w żaden sposób obrazureferencyjnego, który służy jedynie do pobrania fragmentów już gotowej tekstury w celuwstępnego wypełnienia obszaru zamalowywanego. Jego zastosowanie do naprawy- 79 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”uszkodzonych starych fotografii jest jednak mocno ograniczone, a wręcz niemożliwe znastepujących względów:1. Opisany we wstępie do niniejszego rozdziału problem z wyborem teksturyreferencyjnej. O ile w przypadku wcześniejszych algorytmów można było jakoobszar wzorcowy potraktować dowolnie pojęte otoczenie regionu wypełnianego (aw skrajnym przypadku nawet całe jego dopełnienie), gdyż potrzebny był jedynieogólny pogląd na teksturę, jaka może się znaleźć w miejscu maski, o tyle tutajpotrzebne są konkretne bloki odpowiadające elementom tekstury, a takie może byćbardzo ciężko znaleźć, a często w ogóle będzie to niemożliwe, np. dlatego, żeobszar tekstury jest bardzo wąski.2. W przypadku starych fotografii tekstury na ogół są odwzorowane w nienajlepszejjakości. Takie drobne zakłócenia umykają ludzkiemu oku i najczęściej też niezostaną one wykryte przez algorytmy detekcji. Jeżeli jednak zniekształceniezostanie powielone, stanie się ono widoczne, a wręcz będzie się rzucało w oczy.Ogólnie, do zastosowania omawianego algorytmu potrzebna jest wysokiej jakościpróbka tekstury, którą przy rozpatrywaniu archiwalnych fotografii bardzo ciężkouzyskać.3. Opisywany algorytm sprawdza się przede wszystkim przy syntezie tekstur onaturze strukturalnej, z którymi rzadko ma się do czynienia w przypadkumateriałów archiwalnych (tego typu fotografie to w przeważającej większościportrety, rzadziej pejzaże – zatem jedyne tekstury, jakich można się spodziewać tonp. tło, faktura ubrania, ewentualnie niebo bądź trawa; nie są to jednak obszarystrukturalne). Tekstury, jakie będą syntetyzowane, prawie zawsze będąstochastyczne lub półstochastyczne, zwłaszcza biorąc pod uwagę podstawowezałożenie usuwania defektów, że uszkodzenia są lokalnie niewielkie. Zauważyćnależy, że tekstury strukturalne o dużych tekselach nie do końca spełniają tozałożenie, gdyż ilość informacji przenoszonej w elementach tekstury może byćznaczna.- 80 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”5.5 ALGORYTM HYBRYDOWY YAMAUCHI, HABER & SEIDELPonieważ algorytmy zamalowywania dobrze radzą sobie z elementaminiskoczęstotliwościowymi obrazów, zaś techniki syntezy tekstur zwysokoczęstotliwościowymi, naturalną wydaje się być próba połączenia zalet obu tychgrup algorytmów. Z takiego założenia wyszli i próbę taką podjęli autorzy [19]. Idea jestniemiernie prosta: należy wydzielić z obrazu elementy niskoczęstotliwościowe, wypełnićuszkodzony obszar korzystając z zamalowywania, a następnie na pozostałej części(zawierającej elementy o wysokich częstotliwościach przestrzennych) przeprowadzićsyntezę tekstur. Szczegóły algorytmu przedstawione są poniżej.Na wejściu algorytm otrzymuje obraz I oraz maskę binarną M, określającą, które regionynależy wypełnić. Przetwarzanie w kolejnych krokach wygląda następująco i jest równieżschematycznie przedstawione na rysunku 46. Opisane kroki dotyczą jasności pojedynczegokanału. Aby przetwarzać obrazy kolorowe, wszystkie one muszą być powtórzone dlakażdej ze składowych.1. Obraz I jest dzielony na składową wysoko- oraz niskoczęstotliwościową,odpowiednio H oraz L. Podział odbywa się przy wykorzystaniu dyskretnejtransformaty kosinusowej (ang. DCT – Discrete Cosine Transform). Ponieważoperuje ona na obrazach kwadratowych, na początku zdjęcie jest dopełniane bielą,aby spełnić ten warunek. Tak powstały obraz poddawany jest transformacie.Efektem jej wykonania jest macierz o rozmiarach obrazu wejściowego.Współrzędne określają częstotliwość przestrzenną w danym kierunku (pionowymlub poziomym), zaś wartość określona przez te współrzędne jest współczynnikiemwyrażającym, jak dużo jest w obrazie określonej pary częstotliwości. Przykładowo,wartość współczynnika w kolumnie 3 i wierszu 2 macierzy (przyjmuje sięindeksowanie od zera) określać będzie, jak często w obrazie występujedwuwymiarowa częstotliwość charakteryzująca się trzema zmianami jasności wpionie i dwoma zmianami jasności w poziomie. Dla obrazu 8x8 pikseli (jest to- 81 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”rozmiar bloku stosowany w tradycyjnym algorytmie JPEG, gdzie równieżwykorzystuje się DCT), ilustracja graficzna częstotliwości wyglądać będzienastępująco:Rysunek 45: Ilustracja graficzna dwuwymiarowychczęstotliwości DCT dla bloku 8x8 pikseliKiedy przeprowadzona zostanie transformacja, brany jest taki zestawwspółczynników , dla których suma współrzędnych nie przekracza κ (jest toparametr algorytmu, domyślnie przyjmujący wartość 10). Dla takiego podzbioruobliczana jest transformata odwrotna, w wyniku czego otrzymuje się obrazwejściowy z odfiltrowaną częścią wysokoczęstotliwościową. Ten rezultat jestobrazem L. Dopełnienie obrazu H = I – L jest składową wysokoczęstotliwościową.2. Uszkodzony obszar w składowej L jest następnie wypełniany przy użyciu jednego zalgorytmów zamalowywania. Ponieważ operuje się jedynie na niskichczęstotliwościach przestrzennych, praktycznie każdy algorytm z opisanych wrozdziale 5.3 będzie adekwatny. Autorzy algorytmu proponują użycie technikiopisanej w [10] oraz rozdziale 5.3.2. Otrzymany obraz oznaczany jest przez L*.3. Składowa H poddawana jest następnie syntezie tekstur w celu usunięcia uszkodzeń.Autorzy proponują użycie algorytmu Efrosa i Leunga, ale z dodatkowym rozbiciem- 82 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”na wiele podczęstotliwości oraz wykorzystaniem drzewa przeszukiwania. Jest to defacto wykorzystanie algorytmu Weia i Levoya i ten właśnie algorytm, wg opisu wpunkcie 5.4.3 został zaimplementowany przez autora pracy. W wyniku wypełnieniaotrzymuje się naprawiony obraz wysokoczęstotliwościowy H*.4. Ostatnim krokiem jest zsumowanie powstałych obrazów H* oraz L*, co daje wefekcie naprawiony obraz wejściowy I*. Jest on przycinany do pierwotnychrozmiarów, aby usunąć nadmiar wprowadzony w punkcie 1.Algorytm hybrydowy jest ostateczną kombinacją wymienionych i opisanych wewcześniejszych rozdziałach klas algorytmów i jest wykorzystywany jako główna technikanaprawy fotografii w aplikacji towarzyszącej niniejszej pracy.- 83 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 46: Przebieg algorytmu Yamauchi6 PRZYKŁADY ZASTOSOWANIA I ANALIZAEFEKTYWNOŚCI DZIAŁANIA OPISANYCHALGORYTMÓW6.1 WYBRANE OBRAZYDo testów algorytmów wykrywających uszkodzenia autor wybrał następujące obrazy, wdalszej części tego rozdziału nazywane dla uproszczenia odpowiednio: Port, Para1,Mężczyzna, Medalion, Dziecko i Para2. Do badania technik usuwania wykorzystane- 84 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”zostały obrazy: Para1, Mężczyzna i Medalion. Ponadto, testy sposobów naprawyuzupełniono o fragmenty obrazów, dla których wg teorii powinny one dawać dobre wyniki.Zdjęcie Szerokość Wysokość LiczbapikseliPort 299 304 90 896Para1 386 600 231 600Mężczyzna 359 600 215 400Medalion 1 313 1 704 2 237 352Dziecko 244 359 87 596Para2 689 861 593 229Tabela 1: Rozmiary obrazów wybranych do testówWszystkie testy oraz pomiary czasu wykonania dostały dokonane na maszynie AMDAthlon 3000+ (1,8 Ghz); 1,5 GB RAM w środowisku Windows XP.Rysunek 48: PortRysunek 47: Para1- 85 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 49: MedalionRysunek 50: MężczyznaRysunek 52: DzieckoRysunek 51: Para2- 86 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.2 KRYTERIA OCENYKwestia oceny jakości działania algorytmów detekcji jest mocno subiektywna, gdyż składasię na nią bardzo wiele czynników (np. wielkość uszkodzenia, jego istotność, ocena czy,przykładowo, nadruk jest uszkodzeniem), często niemożliwych do wyrażenia w sposóbliczbowy. Dlatego do oceny algorytmów detekcji przyjęte zostało jedynie jedno kryteriumliczbowe, opierające się jednak na określeniu przez człowieka jego wzorcowej wartości.Jest to liczba uszkodzeń istniejących i wykrytych w obrazie. Oczywiście dotyczy to tylkouszkodzeń określonego typu, z myslą o wykrywaniu których algorytm zostałskonstruowany. Nie jest to kryterium doskonałe, np. z tego powodu, że jeśli w obraziewystępuje jedno uszkodzenie, a wykryte zostanie również jedno, ale w zupełnie innymmiejscu, to ocena liczbowa zawiedzie. Z tej przyczyny, wyniki uzyskane podczas testów sąopisane słownie, a dodatkowym kryterium ich oceny jest czysto subiektywne odczucieautora pracy. Ocena ta dokonywana jest w skali 0-6, gdzie 0 to wynik niezadowalający(niewykrycie żadnych defektów spośród istniejących albo zupełnie błędna klasyfikacja), a6 idealny (wykryte zostały wszystkie zniekształcenia i tylko one). Ocena subiektywna jestjedynym kryterium oceny w przypadku technik naprawy obrazu, gdyż nie istnieją obrazyreferencyjne, do których można by odnieść oceną liczbową. Opisane kryteria oznaczane sąw skrócie: LD – liczba defektów, LDW – liczba defektów wykrytych, OS – ocenasubiektywna, T – czas wykonania.We wszystkich poniższych przykładach użyte zostały ustawienia domyślne algorytmów.- 87 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.3 OCENA SKUTECZNOŚCI DETEKCJI6.3.1 DETEKCJA RYSRysunek 56: Wynik wykrywania rysRysunek 57: Wynik wykrywania rysRysunek 58: Wynik wykrywania rysRysunek 53: Wynik wykrywania rysRysunek 54: Wynik wykrywania rysRysunek 55: Wynik wykrywania rys1. PortDość dobrze wykryte zostały pionowe rysy na obrazie. Kilka wierszy zostałozaznaczonych mimo tego, że nie były zadrapaniami, jednak jest to nieznaczna- 88 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”liczba.2. Para1Zaznaczona została jedna kolumna.3. MężczyznaWykryta jako rysa została krawędź ramki w obrazie, jednak można tozaakceptować, gdyż istotnie stanowi ona istotną, równą linię.4. MedalionPrawidłowo nic nie wykryto (poza drobnymi aberracjami w rogach fotografii).5. DzieckoJako rysy wykryte zostały 2 z istniejących w zdjęciu zagięć. Mają one podobnącharakterystykę, więc trudno to uznać za błędne działanie algorytmu, tym bardziej,że również są to defekty. Po uruchomieniu algorytmu z bardziej czułymiustawieniami wykryte zostały również inne zagięcia, jednak również sporo miejsc,które nie są uszkodzeniami.6. Para2Prawidłowo nic nie wykryto (poza drobnymi aberracjami w rogach fotografii).Zdjęcie LD LDW OS TPort 6 4 3 00:19Para1 0 2 4 00:50Mężczyzna 0 2 5 00:46Medalion 0 0 6 08:12Dziecko 6 2 4 00:18Para2 0 0 6 02:03Tabela 2: Ocena działania algorytmu detekcji rysNależy zauważyć, że błędne sklasyfikowanie obszarów obrazu jako rysy nie jest bardzokrytyczne, gdyż uszkodzenia takie są ze swojej definicji niewielkich rozmiarów, a zatemzastosowanie algorytmu naprawy nie powinno wprowadzić żadnych (widocznych)artefaktów.- 89 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.3.2 DETEKCJA ODBARWIEŃRysunek 61: Wynik detekcji odbarwieńRysunek 59: Wynik detekcjiodbarwieńRysunek 60: Wynik detekcjiodbarwieńRysunek 62: Wynik detekcjiodbarwieńRysunek 64: Wynikdetekcji odbarwieńRysunek 63: Wynik detekcjiodbarwień- 90 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”1. PortPrawidłowo nie zostały wykryte żadne odbarwienia.2. Para1Na fotografii nie było żadnych odbarwień typu „foxing”, jednak znajdowały siętam inne, wynikające z ubytków w zdjęciu i prześwitującego spod spodu brązowejtektury. Zostały one wykryte, nie w całości (ze względu na zróżnicowaną barwętektury), ale w znaczącej części. Zwłaszcza cenne jest wykrycie luki na górzeobrazu, gdyż w przeciwieństwie do pozostałych, wpływa ona istotnie na percepcjęzdjęcia.3. MężczyznaPrzypadek bardzo podobny do opisanego w przypadku fotografii Para1. Tu jednaknie było żadnych regionów odbarwionych wpływających istotnie na jegopostrzeganie, zaś obszary wykryte stanowią raczej szum niż rzeczywiste defekty.4. MedalionNieprawidłowo jako defekty zostały wykryte rejony wokół nogi. Mają one jednakbardziej charakter szumu niż spójnych obszarów. Ponadto, sytuacja jest tu podobnajak w opisanym poniżej przypadku zdjęcia Para2, jednak <strong>poprawa</strong> po dopełnieniudo prostokąta nie jest tak spektakularna (choć występuje).5. DzieckoPrawidłowo nie wykryto żadnych odbarwień (poza jednym punkcikiem na środku).6. Para2Z zasady tego algorytmu wynika, że działa on jedynie dla obrazówmonochromatycznych. Co za tym idzie, duże zaburzenia tej charakterystyki mogąwpływać na jakość jego działania. Doskonały przykład takiego zjawiska widocznyjest na rys. 63. Samo zdjęcie ma kształt owalny, zaś otoczenie dopełniające je doformy prostokątnej nie jest monochromatyczne z właściwym wnętrzem fotografii.Rzutuje to na efektywność wykrywania odbarwień. Dlatego na potrzeby testówopisywanego algorytmu zdjęcie zostało rozszerzone przy użyciu programu AdobePhotoshop tak, aby miało kształt prostokątny. Jak widać na rys. 65, bardzo- 91 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”znacząco wpłynęło to na wyniki. W tabeli 3 wyniki dla tej rozszerzonej postaciobrazu Para2 (widocznej również na rys. 66) wpisano w nawiasach.Rysunek 66: Obraz wejściowy (Para2) podopełnieniu do formy prostokątnejRysunek 65: Obraz z rys. 66 pozastosowaniu detekcji odbarwieńW poniższej tabeli przedstawiono ocenę działania algorytmu. Dla przejrzystości wynikówpominięto obszary, które zostały uznane za uszkodzone, a zajmowały bardzo małoprzestrzeni (rzędu kilku pikseli).Zdjęcie LD LDW OS TPort 0 0 6 00:00Para1 0 6 4 00:00Mężczyzna 0 3 5 00:01Medalion 0 2 2 00:06Dziecko 0 0 5 00:00Para2 4 2(5) 4(5) 00:02Tabela 3: Ocena działania algorytmu detekcji odbarwień- 92 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.3.3 DETEKCJA ROZDARĆ I PĘKNIĘĆ6.3.3.1 KRYTERIUM UNIKALNOŚCI KOLORURysunek 68: Wynik detekcji rozdarćprzy użyciu kryterium unikalnościkoloruRysunek 67: Wynik detekcji rozdarćprzy użyciu kryterium unikalnościkoloruRysunek 69: Wynik detekcjirozdarć przy użyciu kryteriumunikalności koloruRysunek 71: Wynik detekcji rozdarćprzy użyciu kryterium unikalnościkoloruRysunek 70: Wynik detekcji rozdarćprzy użyciu kryterium unikalnościkoloruRysunek 72: Wynik detekcji rozdarćprzy użyciu kryterium unikalnościkoloru- 93 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”1. PortPrawidłowo nie wykryto żadnych rozdarć.2. Para1Prawidłowo wykryto dwa regiony: w dolnej części obrazu oraz w prawym górnymrogu. Trzeci obszar pokrywa się częściowo z wykrytym przez algorytm detekcjiodbarwień i faktycznie jest defektem.3. MężczyznaWsyztkie trzy znalezione obszary są defektami. Ten w górnej części jest bardziejwidoczny od pozostałych, ale jednak w dwóch miejscach na dole emulsja jestwytarta.4. MedalionW górnej części, gdzie występuje rozbłysk, niesłusznie rozpoznanych zostało kilkaobszarów, a to właśnie z powodu tego rozjaśnienia. W prawym górnym roguwykryte zostało jednak zabrudzenie, które ewidentnie jest defektem (choć niecoinnego typu niż rozdarcie). Oprócz tego słusznie rozpoznany został fragmentpęknięcia w środkowej części. Również słusznie, choć w mniejszym zakresie niżpowinno to mieć miejsce, rozpoznane zostały białe obszary na środku (nawysokości brzucha). Analogicznie do obszaru objętego rozbłyskiem, kilkaregionów zostało niepoprawnie rozpoznanych w regionie mocno zacienionym, wdolnej części fotografii.5. DzieckoPrawidłowo nie wykryto żadnych rozdarć ani pęknięć.6. Para2Prawidłowo nie wykryto żadnych rozdarć ani pęknięć (poza jednym punktem naśrodku).- 94 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Zdjęcie LD LDW OS TPort 0 0 6 00:02Para1 2 3 5 00:07Mężczyzna 3 3 6 00:04Medalion 5 9 3 01:33Dziecko 0 0 6 00:01Para2 0 1 5 00:11Tabela 4: Ocena działania algorytmu detekcji rozdarć przy użyciu kryterium unikalności koloru6.3.3.2 KRYTERIUM SZAROŚCIRysunek 75: Wynik detekcji rozdarćprzy użyciu kryterium szarościRysunek 74: Wynik detekcji rozdarćprzy użyciu kryterium szarościRysunek 73: Wynik detekcjirozdarć przy użyciu kryteriumszarości- 95 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 78: Wynik detekcji rozdarćprzy użyciu kryterium szarościRysunek 76: Wynik detekcjirozdarć przy użyciukryterium szarościRysunek 77: Wynik detekcji rozdarćprzy użyciu kryterium szarości1. PortPrawidłowo nie wykryto żadnych defektów.2. Para1Prawidłowo nie wykryto żadnych defektów.3. MężczyznaWykryto dwa defekty, z czego jeden jest faktycznym uszkodzeniem, a drugi dłoniąmężczyzny. Przykład ten opisany jest w rozdziale 4.4.2.4. MedalionNie wykryto żadnego z trzech luk w powierzchni zdjęcia, mających białą barwę.Problem nie leży tu jednak w błędnym kryterium oceny, tylko w parametrachsegmentacji. Obszary te stosunkowo słabo odróżniają się od jasnobrązowawego tłai nie są dla nich tworzone osobne regiony. Po zastosowaniu innych parametrówsegmentacji zniekształcenia te zostały częściowo wykryte.5. Dziecko- 96 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Prawidłowo nie wykryto żadnych defektów.6. Para2Prawidłowo nie wykryto żadnych defektów.Zdjęcie LD LDW OS TPort 0 0 6 00:01Para1 0 0 6 00:05Mężczyzna 1 2 4 00:03Medalion 3 0 1 00:35Dziecko 0 0 6 00:01Para2 0 0 6 00:08Tabela 5: Ocena działania algorytmu detekcji rozdarć przy użyciu kryterium szarości6.3.3.3 KRYTERIUM KSZTAŁTURysunek 81: Wynik detekcji rozdarćprzy użyciu kryterium kształtuRysunek 79: Wynik detekcji rozdarćprzy użyciu kryterium kształtuRysunek 80: Wynik detekcjirozdarć przy użyciu kryteriumkształtu- 97 -Rysunek 82: Wynik detekcji rozdarćprzy użyciu kryterium kształtuRysunek 83: Wynik detekcjirozdarć przy użyciukryterium kształtuRysunek 84: Wynik detekcji rozdarćprzy użyciu kryterium kształtu


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”1. PortKilka obszarów zostało błędnie zidentyfikowanych, jednak nie jest ich dużo, aponadto można zauważyć, że są one dość podobne do potencjalnych pęknięć.2. Para1Sytuacja podobna jak przy poprzednim zdjęciu. Na uwagę zasługuje zaznaczeniedużej części napisu w dolnej części zdjęcia. Z punktu widzenia algorytmu z dużymprawdopodobieństwem jest to defekt, jednak nie istnieje prosta metodastwierdzenia, że w rzeczywistości jest to element pożądany. Fakt istnienia napisówjako potencjalnych uszkodzeń został odzwierciedlony w tabeli 6 przez wpisanie ichdo rubryki LD w nawiasach.3. MężczyznaPrzypadek analogiczny jak dla Portu i Pary1. Również zaznaczony został napis.4. MedalionBardzo dobrze wykryte zostały pęknięcia powierzchni fotografii.5. DzieckoPrawidłowo nie zostały wykryte żadne defekty.6. Para2Nie zostały zaznaczone żadne regiony poza kilkoma krawędziami. Zachowanie tozdarza się dla omawianego algorytmu i wynika ze sposobu dokonywaniasegmentacji. Zmieniając parametry segmentacji (szczególnie poziom progowania)można efekt ten wyeliminować.Zdjęcie LD LDW OS TPort 2 7 3 00:01Para1 0(2) 15 3 00:02Mężczyzna 0(3) 10 4 00:02Medalion 2 2 5 00:19Dziecko 0 0 6 00:01Para2 0 4 3 00:05Tabela 6: Ocena działania algorytmu detekcji rozdarć przy użyciu kryterium kształtu- 98 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.3.4 DETEKCJA ZAGIĘĆRysunek 87: Wynik detekcji zagięćRysunek 86: Wynik detekcji zagięćRysunek 85: Wynik detekcjizagięćRysunek 88: Wynik detekcji zagięćRysunek 89: Wynik detekcji zagięćRysunek 90: Wynik detekcji zagięć1. PortCałkowicie błędnie wykryty został jedynie obrys pakunku zawieszonego nadźwigu. Zarówno w przypadku załamujących się fal, jak i rys na zdjęciu, dopatrzyć- 99 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”się można właśnie takiej struktury jak cechująca zagięcia, przy czym jednak rysy sąrzeczywistymi defektami.2. Para1Dość nieudana próba, jako uszkodzenia oznaczone zostały regiony zupełnie niebędące defektami.3. MężczyznaPodobnie jak w przypadku Pary1, próba nieudana.4. MedalionFotografia nie zawiera zagięć, natomiast widać na niej bardzo dużo drobnychpęknięć, z których część została wykryta, co należy uznać za sukces, zwłaszcza, żenie wykrywał ich żaden ze wcześniejszych algorytmów. Ponadto żadne regiony(poza fragmentem zewnętrznej krawędzi) nie zostały oznaczone błędnie jakodefekty.5. DzieckoDuża liczba zagięć, w większości poprawnie zidentyfikowanych. Niewielka jestliczba obszarów uznanych niesłusznie za defekty i są one wszystkie niewielkichrozmiarów.6. Para2Sporo obszarów uznanych błędnie za uszkodzenia, jednak mają one wszystkiecharakter szumu (pojedyncze niewielkie obszary, rozrzucone po całym obrazie) iwynik należy uznać za dużo lepszy niż dla Pary1 i Mężczyzny.- 100 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Zdjęcie LD LDW OS TPort 0 20 3 00:01Para1 0 55 0 00:01Mężczyzna 0 51 0 00:01Medalion(dużaliczbatrudna dopoliczenia)67 5 00:12Dziecko 1 6 5 5 00:01Para2 0 20 3 00:03Tabela 7: Ocena działania algorytmu detekcji zagięć6.4 OCENA I PORÓWNANIE USUWANIA DEFEKTÓWDla lepszego zademonstrowania działania algorytmów naprawy, w punkcie 6.4przedstawione są przykłady z ręcznie wybraną maską. Przykłady kompleksowej naprawy,gdzie defekty są najpierw wykrywana, a następnie usuwane, zobaczyć można w punkcie6.5. Maski przedstawione są na rysunkach 91-95 .1 Uwzględniono jedynie duże zagięcia, a liczbę wykrytych defektów podano na podstawie przybliżenia- 101 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 91: Maska do testowania algorytmówusuwania defektówRysunek 92: Maska do testowaniaalgorytmów usuwania defektówRysunek 93: Maska do testowaniaalgorytmów usuwania defektówRysunek 94: Maska do testowania algorytmówusuwania defektówRysunek 95: Maska dotestowania algorytmówusuwania defektów- 102 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.4.1 ALGORYTM BERTALMIORysunek 97: Wynik usuwania defektówalgorytmem BertalmioRysunek 96: Wynik usuwania defektówalgorytmem BertalmioRysunek 99: Wynik usuwania defektówalgorytmem BertalmioRysunek 98: Wynik usuwania defektówalgorytmem Bertalmio- 103 -Rysunek 100: Wynik usuwaniadefektów algorytmem Bertalmio


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Wynik testu potwierdza teorię. Algorytm Bertalmio dobrze radzi sobie z elementaminiskoczęstotliwościowymi, jednak nie jest w stanie odtworzyć detali. Jest to widocznezwłaszcza na obrazie Tesktura. Również na zdjęciu Mężczyzna, uszkodzenie w prawymdolnym rogu nie jest usunięte tak, jak można by oczekiwać (tzn. z przedłużeniem pionowejkrawędzi zdjęcia). Dodatkowo, jak widać to w poniższej tabelce, czasy przetwarzania sądosyć długie, co wynika ze skomplikowania techniki.Zdjęcie OS TPara1 3 01:56Mężczyzna 4 02:16Medalion 3 19:16Niebo 5 01:26Tesktura 2 01:19Tabela 8: Ocena działania algorytmu Bertalmio- 104 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.4.2 ALGORYTM OLIVEIRARysunek 101: Wynik usuwania defektówalgorytmem OliveiraRysunek 102: Wynik usuwania defektówalgorytmem Oliveira- 105 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 104: Wynik usuwania defektówalgorytmem OliveiraRysunek 103: Wynik usuwania defektówalgorytmem Oliveira`Rysunek 105: Wynik usuwaniadefektów algorytmem OliveiraTutaj również potwierdzone zostały przewidywania. Algorytm ten nadaje się dowypełniania niewielkich obszarów, ale przy regionach szerszych (jak np. na Teksturze)rozmycie gaussowskie stosowane w tej technice powoduje niewystarczającą propagacjęinformacji. Należy jednak zauważyć, że uszkodzenia wąskie (jak np. pęknięcia naMedalionie) zostały usunięte poprawnie, zaś czasy przetwarzania są o rząd wielkościlepsze niż w przypadku poprzedniej techniki.Zdjęcie OS TPara1 2 00:05Mężczyzna 2 00:06Medalion 4 00:50Niebo 5 00:05Tesktura 1 00:05Tabela 9: Ocena działania algorytmu Oliveira- 106 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.4.3 INNE ALGORYTMY ZAMALOWYWANIAPonieważ wszystkie algorytmy z tej grupy dają bardzo zbliżone rezultaty, przedstawionyzostał tylko jeden z nich, operujący na gradientach.Rysunek 106: Wynik usuwania defektówalgorytmem gradientowymRysunek 107: Wynik usuwania defektówalgorytmem gradientowym- 107 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 108: Wynik usuwania defektówalgorytmem gradientowymRysunek 109: Wynik usuwania defektówalgorytmem gradientowymRysunek 110: Wynik usuwaniadefektów algorytmemgradientowymAlgorytm ten sprawdza się dobrze w zasadzie wyłącznie dla obszarów jednolitych oraz ostałym gradiencie. W innym przypadku powstaje charakterystyczna siatka, jaką możnazaobserwować np. na Teksturze. Ma on jednak dwie istotne zalety: nie ogranicza w żadensposób wielkości wypełnianego obszaru (jak np. Oliveira) oraz wykonuje się w bardzokrótkim czasie. Mając na uwadze fakt, że algorytm ten raczej nie jest używany sam wsobie, a jako składowa algorytmu hybrydowego, należy rozpatrywać go jako istotnąkonkurencję dla bardziej złożonych technik zamalowywania.- 108 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Zdjęcie OS TPara1 4 00:00Mężczyzna 4 00:00Medalion 4 00:00Niebo 4 00:00Tesktura 2 00:00Tabela 10: Ocena działania algorytmu gradientowego6.4.4 ALGORYTM EFROS & LEUNGRysunek 111: Wynik usuwania defektówalgorytmem Efrosa i LeungaRysunek 112: Wynik usuwania defektówalgorytmem Efrosa i Leunga- 109 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 113: Wynik usuwania defektówalgorytmem Efrosa i LeungaRysunek 114: Wynik usuwania defektówalgorytmem Efrosa i LeungaRysunek 115: Wynik usuwaniadefektów algorytmem Efrosa iLeungaWyniki osiągnięte przy użyciu tej techniki należy uznać za bardzo dobre (w zasadziejedyne niedoskonałości to artefakt w górnej części obrazu Para1 oraz nieodtworzeniegranicy chmury w zdjęciu Niebo). Dużym problemem jest natomiast kwestiaczasochłonności wykonania. O ile dla mniejszych foografii są one długie, ale możliwe dozaakceptowania, o tyle dla większych wkracza się w rejony zupełnie niepraktyczne.Zdjęcie OS TPara1 3 10:29Mężczyzna 4 16:45Medalion 5 3:07:24Niebo 4 05:37Tesktura 5 04:42Tabela 11: Ocena działania algorytmu Efrosa i Leunga- 110 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.4.5 ALGORYTM WEI & LEVOYRysunek 117: Wynik usuwania defektówalgorytmem Weia i LevoyaRysunek 116: Wynik usuwania defektówalgorytmem Weia i LevoyaRysunek 119: Wynik usuwania defektówalgorytmem Weia i LevoyaRysunek 118: Wynik usuwania defektówalgorytmem Weia i Levoya- 111 -Rysunek 120: Wynik usuwaniadefektów algorytmem Weia iLevoya


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Wyniki podobne jak w punkcie poprzednim, co jest jednak zrozumiałe z uwagi napodobieństwo budowy obu algorytmów. Małe niedokładności można dostrzec w górnychczęściach obrazów Para1 oraz Mężczyzna. Co ciekawe, subiektywnie lepszy rezultat zostałosiągnięty dla Tekstury, gdzie miejsce wypełnienia jest zupełnie niewidoczne.Zdjęcie OS TPara1 4 00:08Mężczyzna 3 00:07Medalion 4 04:10Niebo 4 00:04Tesktura 6 00:08Tabela 12: Ocena działania algorytmu Weia i Levoya- 112 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.4.6 ALGORYTM YAMAUCHIRysunek 121: Wynik usuwania defektówalgorytmem YamauchiRysunek 122: Wynik usuwania defektówalgorytmem Yamauchi- 113 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 123: Wynik usuwania defektówalgorytmem YamauchiRysunek 124: Wynik usuwania defektówalgorytmem YamauchiRysunek 125: Wynik usuwania defektówalgorytmem YamauchiPrzy zastosowaniu algorytmu hybrydowego pewne niedokładności można zaobserwowaćw górnej części obrazu Para1 oraz na Niebie. W przypadku pozostałych obrazów wynikinależy uznać za zadowalające. Na uwagę zasługuje niemal bezbłędna naprawa uszkodzeniaw prawym dolnym rogu fotografii Mężczyzna, z czym nie był w stanie poradzic sobieżaden z wcześniejszych algorytmów.Zdjęcie OS TPara1 4 04:55Mężczyzna 5 05:14Medalion 5 08:02Niebo 3 00:38Tesktura 6 01:03Tabela 13: Ocena działania algorytmu Yamauchi- 114 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.5 PRZYKŁADY KOMPLEKSOWEJ NAPRAWYJako przykłady pełnego procesu naprawy archiwalnych fotografii wybrano obrazy: Para1,Medalion oraz Mężczyzna. Algorytmy detekcji uruchomione dla tych obrazów obejmowaływykrywanie pęknięć oraz odbarwień, gdyż znajdują one uszkodzenia o największychrozmiarach, natomiast w przeprowadzonych testach wykazały się najlepszą skutecznością(głownie pojmowaną jako brak błędnego klasyfikowania obszarów jako defekty). Naobszarach wykrytych przy pomocy tych technik wykonano następnie naprawę przypomocy hybrydowego algorytmu Yamauchi. W obrazie Mężczyzna została dokonana lekkakorekta po kroku detekcji. Polegała ona na odznaczeniu wykrytej błędnie dłoni orazlekkim rozszerzeniu obszaru identyfikującego defekt w prawej górnej części fotografii.Podobne drobne rozszerzenie maski miało miejsce dla zdjęcia Medalion.Rysunek 126: Obraz wejściowy do kompleksowejnaprawyRysunek 127: Obraz wyjściowy z kompleksowejnaprawy- 115 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”Rysunek 129: Obraz wejściowy dokompleksowej naprawyRysunek 128: Obraz wyjściowy zkompleksowej naprawyRysunek 130: Obraz wejściowy dokompleksowej naprawyRysunek 131: Obraz wyjściowy zkompleksowej naprawy- 116 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”6.6 ANALIZA WYDAJNOŚCICzasochłonność wszystkich omawianych algorytmów zależy od wielkości obrazówwejściowych. Detekcje rys oraz odbarwień mają złożoność liniową (O(n)), gdyż całośćwykrywania odbywa się w jednym przebiegu po obrazie (wykrywanie rys jest iterowanepo wielu kątach, dlatego czasy wykonania są rzędu kilkudziesięciu sekund). Segmentacjawykorzystywana przy grupie technik dotyczącyh pęknięć i rozdarć odbywa się w czasieliniowym Ich odnajdowanie przy pomocy unikalności koloru ma złożoność O(n 2 ). Dlakażdego regionu musi być bowiem przeszukana pozostała część obrazu, aby stwierdzićunikalność barwy. Takiej potrzeby nie ma przy kryterium szarości, gdyż analizowane sątylko wnętrza obszarów. Zatem ta technika ma czasochłonność liniową, tak samo jak ibadanie kształtów, dzieki temu, iż obliczanie współczynników kształtu zostało takzoptymalizowane, że odbywa się podczas jednego przebiegu po obrazie. Tak samo wczasie liniowym działa detekcja zagięć, gdyż wymaga ona jedynie jednorazowegoprzejrzenia obrazu i zbadania przekrojów. Sprawdzenie jest powtarzane dla drugiejorientacji (pion-poziom), ale całościowa złożoność to O(n).Podobnie jest w przypadku technik usuwania zniekształceń, czas ich wykonania równieżzależy od rozmiaru zdjęcia. Jeśli chodzi o metodę Bertalmio to jest ona złożona liniowo,jednak ze względu na istotne skomplikowanie algorytmu, współczynnik liniowości jestduży. Inaczej jest dla algorytmu Oliveira, który również wymaga wielokrotnego przebiegupo obrazie, ale wykonywane operacje są dużo prostsze. Ma on też złożoność O(n), ale zdużo mniejszym współczynnikiem liniowości, co widać po czasach wykonania (dlaBertalmio 2 minuty przy zwykłych obrazach, aż 20 minut przy większych, Oliveria – kilkasekund dla mniejszych, niecała minuta dla większych). Wszystkie przedstawione prostetechniki zamalowywania mają złożoność liniową, wymagają tylko jednego przebiegu poobrazie. Ponadto, ponieważ są one proste, czasy ich wykonania mieszczą się w jednejsekundzie, nawet dla większych obrazów. Co do syntezy tekstur, to algorytm Efrosa iLeunga ma złożoność O(n 2 ), gdyż dla każdego piksela przeszukiwana jest teksturareferencyjna. Prowadzi to do całkowicie nieakceptowalnych czasów przetwarzania dla- 117 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”większych obrazów (liczonych w godzinach). Jeżeli do szukania wykorzysta się drzewo,przeszukiwane ono będzie w czasie logarytmicznym. Zatem złożoność algorytmu Weia iLevoya to O(n logn). Czasochłonność algorytmu Yamauchi zleży od zastosowanychtechnik składowych. Przy zastosowaniu prostego zamalowywania i algorytmu Weia iLevoya do syntezy tekstur będzie to O(n logn).6.7 WNIOSKIPodczas analizy uzyskanych wyników należy zwrócić uwagę na bardzo istotną kwestią.Otóż w sekcjach 6.3 i 6.4 wszystkie zdjęcia były przetwarzane z tymi samymi,domyślnymi zestawami parametrów wejściowych. Takie podejście było konieczne, abymożna było dokonać jakiegokolwiek porównania. W rzeczywistym zastosowaniuparametry należy dobierać pod konkretną fotografię tak, aby uzyskać jak najlepszerezultaty.Na przedstawionych przykładach widoczne jest wyraźnie, że nie ma możliwości, aby wpełni automatycznie wykryć prawidłowo wszystkie defekty. Dlatego na obecnym staniewiedzy w dziedzinie, należy opierać się na rozwiązaniach półautomatycznych, bazującychna interakcji z użytkownikiem. Również usuwanie zniekształceń, choć o wiele łatwiejsze,często również sprawia problemy, jeżeli jest całkowicie zautomatyzowane. Dzieje się tak zdwóch głównych powodów. Po pierwsze, często zdarza się, że nie jest spełnione założenieo niewielkiej ilości informacji utraconej wskutek defektu. Po drugie, zdarza się, że„naprawa” zdjęcia, która będzie poprawna w sensie przetwarzania obrazów (zachowaneizofoty, gradienty itd.) jednak nie jest tym, czego ludzkie oko w danym miejscu oczekuje.Widoczne jest, że kryteria opisane przy okazji wykrywania pęknięć i rozdarć sąstosunkowo dobre, ale zbyt często nieprawidłowo klasyfikują obszary jako defekty. Możnaby się zatem pokusić o połączenie ich w jedną technikę wykorzystującą wszystkie metodydetekcji. Wówczas kryteria te dopełniałyby się dając być może lepsze wyniki.- 118 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”7 PODSUMOWANIEPrzedstawiona została metoda detekcji uszkodzeń archiwalnych fotografii oraz sposób ichusuwania metodami cyfrowego przetwarzania obrazów. Otrzymane wyniki rekonstrukcjimożna uznać za satysfakcjonujące, chociaż byłyby one zdecydowanie lepsze, gdybyistniały pewniejsze metody wykrywania uszkodzeń. W szczególności dotyczy toartefaktów dwóch rodzajów:1. Pochodzenia „ludzkiego” (celowe uszkodzenia fotografii takie jak zszywki,stemple),2. Plam pochodzenia chemicznego, zwłaszcza, jeśli zajmują one znaczne obszary.Pierwsza grupa defektów źle podlega wykrywaniu, gdyż praktycznie niemożliwe jestodróżnienie np. stempla od rzeczywistej zawartości obrazu (o ile jeśli nie łamie on barierkolorystycznych fotografii). Można by pokusić się o wyznaczenie pewnych cechcharakterystycznych typowych uszkodzeń takich jak zszywki, otwory czy przeciągnięteprzez odbitkę sznurki, jednak zbiór rodzajów takich defektów jest na tyle liczny, że byłobyto bardzo trudne. Ponadto artefakty typu napisów czy pieczęci są zupełnie niemożliwe dowykrycia, gdyż mogą występować w praktycznie nieskończonej mnogości odmian ikształtów.Problem z drugą kategorią polega na tym, że, podobnie jak artefakty pochodzenia„ludzkiego”, tego typu zakłócenia nie mają jednolitej charakterystyki i mogą występowaćw bardzo wielu kształtach i kolorach. Jedyną cechą w miarę stałą jest to, że na całymswoim obszarze posiadają zbliżoną, jednak nie dokładnie identyczną, barwę. Nie jest tojednak fakt, który pozwalałby na jakąkolwiek dystynkcję, gdyż często tym samymcharakteryzują się elementy obrazu.Nieopisaną jak dotąd rzeczą jest zagadnienie detekcji uszkodzeń w fotografiach w sposóbautomatyczny. Autor podjął taką próbę, opierając się na założeniu, że detekcja taka możebyć przeprowadzona jedynie metodami niskopoziomowymi i lokalnymi i opierać się na- 119 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”cechach charakterystycznych dla danych klas zakłóceń. Oryginalnymi pomysłami autora sąalgorytmy wykrywania zagięć oraz różnych rodzajów plam, natomiast modyfikacjamiistniejących technik są metody detekcji zniekształceń chromatycznych oraz rys.Przeprowadzona została również analiza skuteczności różnych metod naprawy luk wobrazach i najlepsze z nich zostały połączone w implementacji algorytmu hybrydowego.W ramach pracy autor podjął też próbę zaprojektowania i implementacji algorytmuopartego o analizę tekstur, która jednak nie powiodła się ze względu na charaktermateriałów archiwalnych. Kilkudziesięcioletnie fotografie charakteryzują się tak dużymiszumami w obszarach o wysokich częstotliwościach przestrzennych, że metody badaniatekstur zawodzą. Obszar, który powinien być i oryginalnie był jednolitą teksturą, w dużympowiększeniu okazuje się mieć rozkład dużo silniej losowy niż można by się spodziewać, aco za tym idzie, zawodzą tradycyjnie stosowane algorytmy analizy.Podsumowując, system powinien przyzwoicie sprawdzać się w zastosowaniach domowychi przy pewnej interakcji z użytkownikiem, zwłaszcza jeśli zostałby rozszerzony o kolejnemoduły wykrywania dodatkowych typów uszkodzeń. Należałoby również rozpatrzyćpołączenie kryteriów detekcji rozdarć i pęknięć w jeden, spójny algorytm. Ponieważsystem jest otwarty i umożliwia łatwe pisanie i dodawanie implementacji dalszychalgorytmów, takie rozszerzenie z pewnością będzie możliwe i zwiększy jeszczeefektywność aplikacji.- 120 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”8 Bibliografia[1] Filippo Stanco, Giovanni Ramponi, Andrea de Polo, Towards the AutomatedRestoration of Old Photographic Prints: A Survey, Computer as a tool. The IEEE Region 8Volume 2, 2003, str. 370,http://svg.dmi.unict.it/iplab/administrator/users/pubblicazioni/conference/Eurocon03.pdf[2] Marcelo Bertalmio, Guillermo Sapiro, Vicent Caselles, Coloma Ballester, ImageInpainting, Proceedings of SIGGRAPH 2000, 2000, str. 417,http://www.iua.upf.es/~mbertalmio/bertalmi.pdf[3] Domenico Tegolo, Francesco Isgro, A genetic algorithm for scratch removal in staticimages, Proceedings of 11th International Conference on Image Analysis and Processing,2001, str. 507, http://ieeexplore.ieee.org/iel5/7583/20665/00957060.pdf?arnumber=957060[4] Filippo Stanco, Giovanni Ramponi, Detection of Water Blotches in AntiqueDocuments, Proceedings of 8th COST 276 Workshop, 2005, str. ,http://svg.dmi.unict.it/iplab/administrator/users/pubblicazioni/conference/Stanco_8COST276_spedito.pdf[5] Filippo Stanco, Livio Tenze, Alessia De Rosa, An Improved Method for WaterBlotches Detection and Restoration, Proceedings of IEEE ISSPIT 2004, 2004, str. 457,http://svg.dmi.unict.it/iplab/administrator/users/pubblicazioni/conference/ISSPIT_2004_stanco_final.pdf[6] Peter Kruizinga, Nicolai Petkov, Simona E. Grigorescu, Comparison of texturefeatures based on Gabor filters, Proceedings of the 10th International Conference on ImageAnalysis and Processing, 1999, str. 142,http://www.cs.rug.nl/~petkov/publications/iciap99.pdf[7] Du-Ming Tsai, Ping-Chieh Lin, K-T Huang, Defect detection in coloured texturesurfaces using Gabor filters, The Imaging Science Journal, t. 53, nr 1, 2005, str. 27,http://dx.doi.org/10.1179/136821905X26935[8] Zhen Hou, Johné M. Parker, Texture Defect Detection Using Support Vector Machineswith Adaptive Gabor Wavelet Features, Seventh IEEE Workshops on Application ofComputer Vision, t.1, 2005, str. 275,http://doi.ieeecomputersociety.org/10.1109/ACVMOT.2005.115[9] Filippo Stanco, Livio Tenze, Giovanni Ramponi, »Foxing« in vintage photographs:detection and removal, Proceedings of EUSIPCO 2004, 2004, str. 493,http://www.eurasip.org/content/Eusipco/2004/defevent/papers/cr1668.pdf[10] Manuel M. Oliveira, Brian Bowen, Richard McKenna, Yu-Sung Chang, Fast DigitalImage Inpainting, Proceedings of the International Conference on Visualization, Imagingand Image Processing (VIIP 2001), 2001, str. 261,http://www.inf.ufrgs.br/~oliveira/pubs_files/inpainting.pdf[11] Alexandru Telea, An Image Inpainting Technique Based onthe Fast MarchingMethod, Journal of Graphics Tools, t. 9, nr 1, 2004, str. 25,- 121 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”http://www.win.tue.nl/~alext/ALEX/PAPERS/JGT04/paper.pdf[12] Timothy K. Shih, Rong-chi Chang, Super-resolution inpainting, Journal of ZhejiangUniversity SCIENCE 2005, 2005, str. 487,http://www.zju.edu.cn/jzus/2005/A0506/A050602.pdf[13] Alexei A. Efros, Thomas K. Leung, Texture Synthesis by Non-parametric Sampling,IEEE International Conference on Computer Vision, 1999, str. 1033,http://graphics.cs.cmu.edu/people/efros/research/NPS/efros-iccv99.pdf[14] Alexei A. Efros, William T. Freeman, Image Quilting for Texture Synthesis andTransfer, Proceedings of SIGGRAPH 2001, 2001, str. 341,http://graphics.cs.cmu.edu/people/efros/research/quilting/quilting.pdf[15] Li-Yi Wei, Marc Levoy, Fast Texture Synthesis using Tree-structured VectorQuantization, Proceedings of SIGGRAPH 2000, 2000, str. 479,http://graphics.stanford.edu/papers/texture-synthesis-sig00/texture.pdf[16] Rupert Paget, Dennis Longstaff, Texture Synthesis via a Non-parametric MarkovRandom Field, Proceedings of DICTA-95, Digital Image Computing: Techniques andApplications, 1995, str. 547,http://www.texturesynthesis.com/papers/Paget_DICTA_1995.pdf[17] Claire Gallagher, Anil C. Kokaram, Nonparametric wavelet based texture synthesis,Image Processing, 2005 (ICIP 2005), 2005, str. 462,http://ieeexplore.ieee.org/iel5/10242/32661/01530092.pdf?arnumber=1530092[18] Raphael Bornard, Emmanuelle Lecan, Louis Laborelli, Jean-Hugues Chenot,Missing Data Correction in Still Images and Image Sequences, Proceedings of the tenthACM international conference on Multimedia, 2002, str. 355,http://brava.ina.fr/papers/INA_Raphael_Bornard/RBornard_mm2002_preprint.pdf[19] Hitoshi Yamauchi, Joerg Haber, Hans-Peter Seidel, Image Restoration usingMultiresolution Texture Synthesis and Image Inpainting, Computer Graphics International2003 (CGI'03), 2003, str. 120,http://doi.ieeecomputersociety.org/10.1109/CGI.2003.1214456[20] http://palimpsest.stanford.edu/don/dt/dt1434.html[21] Ryszard Tadeusiewicz, Przemyslaw Kohoroda, Komputerowa analiza iprzetwarzanie obrazów, Wydawnictwo Fundacji Postepu Telekomunikacji, 1997[22] www.cs.umd.edu/~mount/ANN/- 122 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”A. OPIS DZIAŁANIA PROGRAMUAplikacja zaimplementowana w ramach niniejszej pracy napisana została w języku C++przy wykorzystaniu frameworka Microsoft Foundation Classes (MFC) do tworzeniainterfejsu graficznego. Do operacji na plikach graficznych wykorzystana została bibliotekaCxImage (). Aplikacja ma charakter modułowy i opiera się o mechanizm dołączania tzw.pluginów. W nich zawarte są wszystkie implementacje algorytmów. Dodatki tworzone sąjako zwykłe biblioteki DLL (ze wsparciem dla MFC). Następnie przez odpowiedni wpis wpliku konfiguracyjnym (plugins.cfg w katalogu głównym aplikacji) dokonuje siępodłączenia biblioteki do aplikacji. Funkcja udostępniana przez plugin musi posiadaćokreśloną postać nagłówka:CxImage* funkcja(CxImage*,BOOL**,CProgressCtrl*)CxImage to klasa reprezentująca obraz z biblioteki CxImage. Jako pierwszy argumentprzekazywany jest obraz wejściowy, jako drugi maska obrazu, a jako trzeci wskaźnik naobiekt paska postępu, umożliwiający wyświetlanie stanu zaawansowania algorytmu(CProgressCtrl to wbudowana klasa MFC). W zależności od tego, czy algorytm dotyczywykrywania uszkodzeń czy ich usuwania, maska jest albo parameterem wyjściowym i jestwypełniana na podstawie kryteriów detekcji albo też parametrem wejściowymokreślającym regiony do wypełnienia.Wpis do pliku konfiguracyjnego zawiera: ścieżkę do biblioteki DLL, nazwę funkcjiudostępnianej przez bibliotekę (musi spełniać opisany format nagłówka) oraz nazwę, podktórą wywołanie funkcji będzie umieszczone w menu aplikacji. Wyświetlaniem okienekkonfiguracyjnych do definiowania parametrów algorytmów zajmują się bezpośredniobiblioteki.Program uruchamia się przez plik ImgRest.exe. Ukazuje się główne okno aplikacji, którasama w sobie umożliwia jedynie podstawowe operacje na plikach graficznych, takie jak:- 123 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”1. Otwieranie (File → Open...);2. Zapisywanie (File → Save oraz File → Save as...);3. Powiększanie, zmniejszanie i powrót do pierwotnego powiększenia widoku obrazu(ikonki , oraz ),4. Operacje na masce:a) dodawanie pikseli do maski przy użyciu jednego z trzech narzędzi: pędzla(ikonka ), zaznaczenia prostokątnego (ikonka ) oraz „różdżki” (ikonka),b) usuwanie pikseli z maski przy użyciu tych samych narzędzi, po uprzednimwciśnięciu przycisku gumki (ikonka ),c) całkowite wyczyszczenie maski (ikonka );5. Edycję ustawień narzędzi do operacji na masce (ikonka ), przez okienko:Pierwsze pole określa kształt pędzla, drugie jego rozmiar, a trzecie tolerancję„różdżki”, tzn. próg, do którego piksele sąsiadujące będą uznawane za podobne dosiebie i będą podlegały zaznaczeniu;6. Wywołanie funkcji z pluginu (menu Plugins).Zaimplementowane przez autora i standardowo podpięte do programu biblioteki są- 124 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”następujące (w kolejności alfabetycznej):1. Bertalmio – implementacja algorytmu Bertalmio,2. CrackDetection – implementacja algorytmu detekcji pęknięć,3. EfrosTextureSynthesis – implementacja algorytmu Efrosa i Leunga,4. FoldDetection – implementacja techniki detekcji zagięć,5. FoxingDetection – implementacja detekcji odbarwień,6. MultiresolutionWeiLevoy – implementacja algorytmu Weia i Levoya w postaciwielorozdzielczościowej,7. MyDerivativeApproximation – algorytm zamalowywania wykorzystującyaproksymację pochodnej,8. MySimpleInapint – algorytm zamalowywania wykorzystujący wartość najbliższegopiksela,9. MySimpleInapintWeighted – jw., ale z wykorzystaniem średniej ważonej kilkunajbliższych punktów,10. Oliveira – implementacja algorytmu Olivaira,11. ScratchDetection – implementacja techniki wykrywania rys,12. WeiLevoyTextureSynthesis – implementacja algorytmu Weia i Levoya, ale zograniczeniem do pojedynczej rozdzielczości,13. Yamauchi – implementacja algorytmu Yamauchi.- 125 -


Praca dyplomowa magisterska: Adam Małek „<strong>Automatyczna</strong> <strong>poprawa</strong> jakości materiałówarchiwalnych metodami cyfrowego przetwarzania obrazów”B. ZAWARTOŚĆ PŁYTYNa płycie załączonej do niniejszej pracy znajdują się:1. Treść pracy w formie elektronicznej – plik Praca.pdf,2. Karta informacyjna dyplomanta wg wzoru – plik Karta informacyjna.pdf,3. Aplikacja ImgRest – katalog ImgResta) Kod źródłowy aplikacji wraz z plikami projektów Microsoft Visual Studio –katalog src,b) Postać wykonywalna aplikacji wraz z dołączonymi bibliotekami frameworkaMFC, umożliwiającymi uruchomienie aplikacji również na maszynie, gdzie ówframework nie jest zainstalowany,c) Zestawy obrazów testowych wraz z plikami konfiguracyjnymi zawierającymiparametry algorytmów użytych do ich przetwarzania. Pliki mają takie nazwyjak algorytmy i rozszerzenie cfg.- 126 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!