Detectarea zonelor falsificate din imagini JPEG [616727]
Universitatea “Politehnică” din București
Facultatea de Electronică, Telecomunicații și Tehnologia Informației
Detectarea zonelor falsificate din imagini JPEG
Lucrare de disertație
prezentată ca cerință parțială pentru obținerea titlului de
Master în domeniul Telecomunicații
programul de studii de masterat Telecomunicații
Conducă tor științific: Absolvent: [anonimizat]. Dragoș VIZIREANU George Vlăduț GHIOC
2018
Cuprins
Listă cu figuri și tabele ………………………….. ………………………….. ………………………….. ………………………….. .. 5
Acronime ………………………….. ………………………….. ………………………….. ………………………….. ……………………. 8
Introducere ………………………….. ………………………….. ………………………….. ………………………….. ………………… 9
Capitolul 1. Istoria manipulată prin imagini trucate ………………………….. ………………………….. …………… 10
1.1 Așa -zișii inamici ………………………….. ………………………….. ………………………….. ………………………….. . 10
1.2 Motivele pentru care ne lăsăm păcăliți ………………………….. ………………………….. …………………………. 14
Capitolul 2. Imaginea digitală ………………………….. ………………………….. ………………………….. ………………… 20
2.1 Scurt istoric ………………………….. ………………………….. ………………………….. ………………………….. ……… 20
2.2 Descriere ………………………….. ………………………….. ………………………….. ………………………….. …………. 22
2.2.1 Rezoluția digitală ………………………….. ………………………….. ………………………….. ………… 23
2.3 Informații utile din spatele unei fotografii ………………………….. ………………………….. …………………….. 24
2.3.1 Criptare cu chei simetrice (secrete) ………………………….. ………………………….. ……………. 24
2.3.2 Criptare cu chei asimetrice (publice) ………………………….. ………………………….. ………….. 24
Capitolul 3. Tehnici de recunoaștere a imaginilor trucate ………………………….. ………………………….. ……. 26
3.1 Localizarea zonelor de îmbinare dintre imagini blurate ………………………….. ………………………….. ….. 26
3.1.1 Extracția tipurilor de blur din imagine ………………………….. ………………………….. ……….. 27
3.1.2 Detectarea și clasificarea tipurilor de blur ………………………….. ………………………….. …… 28
3.1.3 Localizarea fină a îmbinării ………………………….. ………………………….. ………………………. 29
3.2 Extragerea contrastului ………………………….. ………………………….. ………………………….. ………………….. 30
3.2.1 Detectarea intensității contrastului local ………………………….. ………………………….. …….. 31
3.2.2 Detectarea intensificății contrastului per total ………………………….. ………………………….. 31
3.3 Detectarea sistemului de iluminare bazat pe schimbarea spațiului ………………………….. ………………… 34
3.3.1 Prezentare generală a detectării falsificării ………………………….. ………………………….. ….. 36
3.3.2 Descrierea ………………………….. ………………………….. ………………………….. ………………….. 37
3.3.3 Clasificarea perechilor de fețe ………………………….. ………………………….. …………………… 39
3.3.4 Clasifica rea falsului ………………………….. ………………………….. ………………………….. …….. 40
3.3.5 Detectarea falsurilor ………………………….. ………………………….. ………………………….. ……. 40
Capitolul 4. Depistarea zonelor clonate din imagine ………………………….. ………………………….. ……………. 42
4.1 Descompune imaginea color în componentele R, G și B. ………………………….. ………………………….. .. 42
4.2 Împărțiți fiecare componentă în blocuri suprapuse ………………………….. ………………………….. …………. 42
4.3 Calculați histograma LBP a fiecărui bloc ………………………….. ………………………….. ……………………… 44
4.4 Găsim distanțele fiecărei perechi de blocuri ………………………….. ………………………….. ………………….. 47
4.4.1 Algoritmul de distanță Kolmogorov -Smirnov ………………………….. ………………………….. 47
4.5 S ortarea distanței în ordine crescătoare ………………………….. ………………………….. ………………………… 49
4.6 Verificarea existența unor perechi de blocuri ………………………….. ………………………….. ………………… 50
4.7 Extragerea MSB a fiecărui canal de culori din blocurile filtrate ………………………….. …………………… 50
4.8 Calculul histogramei fiecărui bloc în toate cele trei culori (Blocurile filtrate) ………………………….. … 50
4.9 Găsirea distanței între o pereche de blocuri în toate cele trei culori după calculul histogramelor
MSB -urilor ………………………….. ………………………….. ………………………….. ………………………….. ……………. 51
4.10 Eliminarea blocurilor nedorite ………………………….. ………………………….. ………………………….. ………. 51
4.11 Umplerea blocurilor (com une) supraviețuitoare cu culoarea albă ………………………….. ……………….. 51
Capitolul 5. Rezultate și discuții experimentale ………………………….. ………………………….. …………………… 52
5.1 Setul de imagini ………………………….. ………………………….. ………………………….. ………………………….. .. 52
5.2 R ezultatele experimentului pentru tipul falsificat doar copiere -mișcare ………………………….. ………… 52
5.3 Rezultate experimentale pentru adăugarea zgomotului Gauss alb ca post -procesare ……………………. 52
5.4 Rezultatele experimentului pentru tipul de falsificare a rotației ………………………….. ……………………. 53
Concluzii ………………………….. ………………………….. ………………………….. ………………………….. ………………….. 54
Bibliog rafie ………………………….. ………………………….. ………………………….. ………………………….. ………………. 55
Anexe ………………………….. ………………………….. ………………………….. ………………………….. ………………………….. .
1.Algoritmul principal ………………………….. ………………………….. ………………………….. ………………………….. ..
2.Algoritm cu LBP ( model binar local) ………………………….. ………………………….. ………………………….. ……..
3.Algoritmul de distanță Kolmogorov -Smirnov ………………………….. ………………………….. ………………………
Listă cu figuri și tabele
Figura 1.1 – Aceasta este singura dovadă “autentică” cu Monstrul din Loch Ness, fiind totuși contrazisă de
Stewart Campbell specificând că proporția animalului nu este reală. ………………………….. ………………… 10
Figura 1.2 – Ștergerea din fotografii a lui Leon Troțki, mai ales din timpul Revoluției din Octombrie ……… 11
Figura 1.3 – Îndepărtarea șefului poliției secrete sovi etice, Nikolai Ejov ………………………….. …………………. 12
Figura 1.4 – Dispar oameni, rând pe rând (reprezentanți ai Partidului Comunist), până când rămâne Stalin
singur în fotografie ………………………….. ………………………….. ………………………….. ………………………….. .. 13
Figura 1.5 – Retușarea în fotografii ținând cont de aspect este din 1895, când autorii Robert Johnson și Arthur
Brunel Chatwood au apărat această tehnică ………………………….. ………………………….. ………………………. 14
Figura 1.6 – Pentru că prim -ministrul canadian William Lyon își dorea să pară că este un personaj politic mai
impunător, în 1939, când Regina Elisabeta și regele George al VI -lea au vizitat Canada și Statele Unite,
l-au îndepărtat din fotografie pe rege. Această vizită fiind și un moment istoric, fiind prima dată când un
monarh în funcție a făcut o astfel de vizită ………………………….. ………………………….. ………………………… 15
Figura 1.7 – Portretul în picioare al lui Lincoln a fost creat imediat după Războiul Civil, însă nu Lincoln a
pozat pentru el. Un antreprenor necunoscut l -a creat prin tăierea -și-lipirea unei fotografii cu Lincoln pe
un portret al liderului confederat, John Calhoun. Asta pentru că nu au fost făcute deloc portrete cu Lincoln
pozând „în stil eroic” în timpul vieții sale. ………………………….. ………………………….. ………………………… 16
Figura 1.8 – În 2003, un fotograf, Brian Walski a combinat două fotografii care prezentau două momente
diferite, care a dus la un scandal monstru, reprezentând astfel un soldat britanic care urla la refugiații din
Irak. De fapt soldatul a cerut cetățenilor să se ascundă de forțele irakiene care tocmai ce deschisese focul.
………………………….. ………………………….. ………………………….. ………………………….. ………………………….. . 17
Figura 1.9 – Poză cu Osama Bin L aden, care a rupt internetul în 2011, unde prezenta dovada morții acestuia,
dar aparent s -au găsit dovezi precum partea de jos a feței a fost decupată și atașată în Photoshop unui alt
cadavru ………………………….. ………………………….. ………………………….. ………………………….. ……………….. 18
Figura 1.10 – Titlu folosit împreună cu poza procesată: “Război în Donețk: atacuri cu avioane de vânătoare,
oamenii fug din locuințe, automobile arse, o mulțime de răniți” ………………………….. ………………………. 18
Figura 1.11 – Imagini trucate cu liderul nord -coreean la televiziunea rusă de stat. În stânga: captură de ecran
din timpul emisiunii difuzate de Pervîi Kanal pe 3 iunie 2018. În dreapta: fotografie difuzată de Ministerul
rus de Externe pe 31 mai. ………………………….. ………………………….. ………………………….. …………………… 19
Figura 2.1 – Pictură rupestră care se găsește în peștera Altamira din Spania ………………………….. …………….. 20
Figura 2.2 – Camera obscură al lui Leornardo da Vinci [3] ………………………….. ………………………….. ……….. 21
Figura 2.3 – Evoluția aparetelor fotografice [3] ………………………….. ………………………….. ……………………….. 22
Figura 2.4 – Reprezentarea unor palete de culori în Photoshop (Grayscale, RGB, CMYK, HSB, Lab) ……. 23
Figura 2.5 – O mărire a imagini duce la scăderea clarității și putem observa fiecare pixel reprezentate prin
acele pătrățele [3] ………………………….. ………………………….. ………………………….. ………………………….. ….. 24
Figura 2.6 – Schema de principiu a unui sistem de criptare cu chei simetrice ………………………….. …………… 25
Figura 2.7 – Schema de principiu a unui sistem de criptare cu chei asimetrice ………………………….. ………….. 25
Figura 3.1 (a) O imagine autentică cu estompare neclară. (b) Imagine manipulată prin împărțirea unei regiuni
neclare a mișcării în imaginea (a), careare tipuri de neclarități inconsistente în partea dreaptă (neclaritatea
mișcării) și partea stângă (estompare în afar a focusului). ………………………….. ………………………….. ……. 26
Figura 3.2 – Cadrul propus pentru localizarea fragmentării imaginii neclară. ………………………….. ……………. 27
Figura 3.3 – Distribuțiile valori lor pixelilor estimate din mișcarea liniară (a) și (b); (c) și (d) mișcare neliniară;
(e) și (f) simetrie în afara ariei de focalizare și (g) și (h) sfera asimetrică a neclarității necunoscute în
figura 3.2. ………………………….. ………………………….. ………………………….. ………………………….. …………….. 28
Figura 3.4 Rezultatele detecției pe o imagine compusă. (a) și (b) două imagini sursă; (c) imagine compusă din
ambele surse; (d) harta metrică înclinată a (d) Metoda Stamm și Liu și (e) metoda propusă.
Blocksize = 200. ………………………….. ………………………….. ………………………….. ………………………….. …… 30
Figura 3.5 – Distribuția cumulativă a valorilor 𝐹 calculate din imaginile UCID și versiunile lor JPEG. …… 32
Figura 3.6 – Vârf / spațiu – decalaj c auzat de maparea valorilor pixelilor. Un coș de vârf / spațiu apare la
y = 254, respectiv 4. ………………………….. ………………………….. ………………………….. …………………………. 33
Figura 3.7 – Definirea unui recipient cu spațiu zero -înălțime la 𝑘. ………………………….. ………………………….. 34
Figura 3.8 – Imagini false create prin lipire. (a) Conman Dimitri de Angelis (dreapta) alături de fostul
președinte american Bill Clinton (stânga). (b) Imagine falsă a fostului președinte (centru) al Braziliei, care
pretinde un moment din viața personală a acestuia cu un lider de bandă criminală (stânga). …………….. 35
Figura 3.9 – Privire de ansamblu asupra clasificării și detecției falsificării imaginilor propuse me todologie. 36
Figura 3.10 – Proiectarea cadrului de detectare a îmbinării imaginilor. ………………………….. ……………………. 39
Figura 3.11 – Diferențele dintre hărțile iluminante ICC și GGE. Regiunile evidențiate exemplifică modul în
care, diferența dintre ICC și GGE, este mărirea imagini false. În special, obrazul drept al chipului fals
variază de la o culoare portocalie (în IIC) până la o culoare albăstruie (în GGE). A ceasta este o schimbare
drastică. O regiune asemănătoare a unei fețe normale, care variază de la o intensitate de albastru la alta.
Acest tip de variație poate fi capturată prin diferența dintre culoari descriptori, care ne îndrumă spre un
nou mod de a ide ntifica cel mai probabil fața falsă. ………………………….. ………………………….. ……………. 41
Figura 4.1 – Exemplu de imagine descompusă în culori R.G.B. ………………………….. ………………………….. …. 42
Figura 4.2 – Diagrama de ba ză după care se bazează metoda propusă ………………………….. ……………………… 43
Figura 4.3 – Calculul LBP -ului original ………………………….. ………………………….. ………………………….. ……… 44
Figura 4.4 – Exemple ale operatorului LBP ext ins. ………………………….. ………………………….. …………………… 45
Figura 4.5 – Ilustrație a similitudinii histogramei LBP între blocurile copiate și lipite și diferența dintre piesele
care nu sunt copiate în trei componente color. ………………………….. ………………………….. …………………… 46
Figura 4.6 – Rezultatul comparației K -S ………………………….. ………………………….. ………………………….. ……… 48
Tabelul 4.1 – Combinarea tuturor blocurilor aplicabile ………………………….. ………………………….. ……………… 49
Tabelul 4.2 – Sortarea distanțelor ………………………….. ………………………….. ………………………….. ……………….. 49
Tabelul 4.3 – Verificarea existența unor perechi de blocuri ………………………….. ………………………….. ……….. 50
Figura 4.7 – Exemplu de rezultat final. ………………………….. ………………………….. ………………………….. ……….. 51
Figura 5.1 – Exemplu pentru tipul falsificat doar copiere -mișcare ………………………….. ………………………….. . 52
(Imaginea originală / Imaginea falsificată doar prin copiere -mișcare / Rezltatul zonei false) …………………… 52
Figura 5.2 – exemplu de adăugare a WGN cu varianță 0,01 ca post -procesare, după falsificarea de tip doar
copiere -mutare (Imagi nea originală / Imaginea falsificată doar prin copiere -mișcare / Adăugare WGN /
Rezltatul zonei false) ………………………….. ………………………….. ………………………….. …………………………. 53
Figura 5.3 – Exemplu de copiere a imaginilor cu o rotașie de 100 ………………………….. ………………………….. .. 53
Acronime
DPI – dots per inch (puncte pe țol)
PPI – un inch (un țol)
PX sau P – pixeli
MPx sau MP – megapixeli
RGB – model de culoare – Red, Green, Blue
CMYK – model de culoare – Cyan, Magenta, Yellow, Key
Lab – model de culoare
HSL – model d e culoare
DTP – DeskTop Publishing
EXIF – Exchangeable image file format (format comutabil pentru fișiere imagine)
LDA – Linear Discriminant Analysis ( Analiza Discriminanților Liniari )
DCT – Transformata Cosinus Discretă
LBP – model binar local
9
Introduce re
Utilizarea software -urilor sofisticate de editare foto, manipularea imaginii poate fi efectuată cu
ușurință, iar detectarea imaginilor manipulate este dificilă prin viziunea umană. De când imaginile pot fi
folosite în jurnalism, investigațiile poliției și ca dovezi ale instanței, manipularea imaginii poate fi o amenințare
la adresa securității oamenilor și a societății noastre.
De-a lungul istoriei noastre, populația a fost înșelată cu imagini manipulate, care au adus câștiguri
financiare, notorietate, războaie, manipulare în masă etc.
Am să încep în al primul capitol prin exemplificarea unor astfel de imagini false , de-a lungul istoriei
noastre, ca să conștientizăm gravitatea acestui fenomen. Nu exclud faptul c ă există și o parte utilă, pentru că
reuși m să realizăm reclame atractive, să ne “retu șăm” ca să ne ascundem imperfecțiunile, să realizăm imagini
digitale artistice, să ne exprimăm sentimentele, trăirile, gândurile prin artă cu ajutorul acestui fenomen; ne este
de ajutor în tot ce ține de domeniil e: artă, publicitate, film etc. Dar și aici, există părți negative: riscăm să ne
pierdem identitatea, să trăim într -o lume falsă, digitală, virtuală, să naștem boli ca anxietatea, dorință mortuară
de a fi altcineva, dacă nu mai reușim să mai facem distincț ia dintre realitate și fals. Prin urmare, detectarea
manipulării imaginilor este o problemă importantă, iar dezvoltarea de metode fiabile pentru examinarea
integrității imaginilor și detectarea imaginii manipulate este necesară.
Aceste exemple sunt toate așa de prezentare și de conștientizare, dar să vorbim și despre imaginea
digitală în sine, despre cum se poate lucra cu ea, ce informații ascunde în spatele ei , când a apărut . Toate aceste
aspecte le găsim în al doilea capitol.
O dată ce ne-am familiarizat cu tot ce ține despre imaginea digitală, am pregătit în al treilea capitol,
câteva tehnici propuse de oameni pasionați de acest subiect. Aceste tehnici țin cont de următoarele atribute:
luminozitatea din unghiuri diferite, nuanțe de blur diferite, detecta rea zonelor de contrast diferit, zone/ obiecte
clonate din imagine , extragerea unor informații utile despre imagine din metadata. Fiecare tehnică va fi
prezentată în câteva rânduri, fiind însoțite cu exemple.
În al patrulea capitol, prezint tema propusă de mine, un algoritm scris în programul Matlab, care
depisteaz ă zonele/obiectele clonate din imagine. Există explicații amănunțite, pas cu pas, urmate de capturi
foto, diagrame, fotografiile de test. Rezultatele acestui experiment sunt prezentate în capitolu l 5, urmate de
concluziile trase după derularea acestui experiment.
10
Capitolul 1. Istoria manipulată prin imagini trucate
De-a lungul deceniilor, o bună parte a informațiilor despre evenimentele de răsunet, nu corespunde
adevărului. Motivul principal est e folosirea acestor informații în scopul propagandei de stat, ca exemplu, știrile
sunt folosite nu pentru informarea publicului, ci pentru impunerea unor opinii convenabile anumitor forțe. 1
Mai departe voi prezenta câteva exemple de manipulare prin imagin i trucate din istoria noastră:
Până în prezent, există o imagine manipulată foarte cunoscută cea cu Monstrul din Loch Ness, care
pe lângă faptul că a stârnit oroare, a luat naștere în acea zonă o afacere de turism, în orașul Drumnadrochit. Au
deschis si un Centru Oficial de Expozitii dedicat acestui monstru, unde încă încearcă să convingă populația
prin prezentări de filme, nenumărate poze și relatări al unor așa ziși martori al acestui fenomen. Este de înțeles
acest lucru ținând cont că acest fenomen este foarte important pentru acea zonă, fiind o importanță financiară.
Figura 1.1 – Aceasta este singura dovadă “autentică ” cu Monstrul din Loch Ness, fiind totuși contrazisă de
Stewart Campbell specificând că proporția animalului nu este reală .
1.1 Așa-zișii inamici
În perioada sovietică toată lumea care se învârtea în anturaje cu putere, știa că apar atul de fotografiat
nu întotdeauna arată adevărul, deoarece era o obișnuință. Dar abia după ce a fost doborât Zidul Berlinului, au
ieșit la iveală miile de fot ografii care arătau propaganda mincinoasă a lui Stalin și cum a făcut oameni să
dispară din poze, dar și din realitate, oameni care căutau să îi ia locul.
Stalin este surprins într-o imagine alături de nenumeroși susținători apropiați sau politici, care de la
bun început l -au susținut. Printre aceștia se afla și un vechi prieten, Leon Troțki. După o vreme Stalin își cam
schimbase părerea despre unele persoane, judecându -i că sunt dușmani ai statului și au fost asasinați și șterși
din fotografiile în care se afla și Stalin, pentru a nu bate la ochi nimănui și a schimba cursul istoric al trecutului.
1The Museum of Hoaces . http://hoaxes.org/photo_database , accesat la data 01.06.2018
11
Figura 1.2 – Ștergerea din fotografii a lui Leon Troțki , mai ales din timpul Revoluției din Octombrie
12
Acest Leon Troțki , prieten bun și a lui Lenin , îî împărtăș ea convingerile idealiste despre poporul
comunist. În 1929 a fost deportat din Uniunea Sovietică , pentru că devenise un impediment pentru Stalin .
Troțki nu s-a oprit și mereu a criticat faptul cum proceda Stalin, acest lucru ducând inevitabil la uciderea lui
Troțki și îndepărtarea lui din fotografii, mai ales din cele în care era sau putea fi considerat un erou .
Figura 1.3 – Îndepărtarea șefului poliției secrete sovietice, Nikolai Ejov
13
Alt personaj eliminat de Stalin și oamenii săi, este chiar șeful poliț iei secrete sovietice, Nikolai Ejov.
Acesta nu a fost asasinat, ci judecat într -un proces unde oameni nevinovați erau obligați să recunoască crime
împotriva Uniunii Sovietice și al conducătorului Stalin, urmând cu siguranță ca toți să fie găsiți vinovați, având
ca pedeapsă moartea. El a fost judecat pentru mai multe fapte, dintre care trădare și spionaj, chiar și încercare
de al asasina pe Stalin în 1940.
Figura 1.4 – Dispar oameni, rând pe rând (reprezentanți ai Partidului Comunist), până când rămâne Sta lin
singur în fotografie
14
Exist ă o fotografie făcută în Leningrad, în 1926 care are un cusur și mai interesant, unde dispar
oameni, rând pe rând (reprezentanți ai Partidului Comunist), până când rămâne Stalin singur în fotografie.
Cum procedau în acele vre muri? Acopereau zona cu cerneală sau vopsea, ori ștergea fin cu o lamă,
ori tăiau fizic din poză cu o foarfecă. Zguduitor e faptul că dacă dispărea o persoană dintr -o fotografie, însemna
că ori urma să fie asasinată, ori deja se întâmplase.
1.2 Motivele pe ntru care ne lăsăm păcăliți
Scopul fotografiei era de avea posibilitatea de a magazina fizic amintiri, dar noi, oamenii, am
dezoltat, găsind mai multe scopuri. Nu mereu ne place cum arătăm noi sau ce ne înconjoară și atunci mereu
am încercat să corectăm as ta, chiar și în fotografii. Noi o facem oricum deja în multe domenii: cum arată
mâncarea, casa interior și exterior, hainele noastre etc. Iar în imagini aproape că nu mai vedem realitatea mai
ales în metodele de publicitate sau știri.
Figura 1.5 – Retușa rea în fotografii ținând cont de aspect este din 1895, când autorii Robert Johnson și
Arthur Brunel Chatwood au apărat această tehnică
Astăzi e mult mai ușor în Photoshop să scoți toate imperfecțiunile și o fac tot mai mulți tineri, în mod
special, pentru pozele postate pe rețelele de socializare, pentru a crea iluzia de grandoare și frumusețe stabilită
de o societate bolnavă după perfecțiune. Dacă ar fi existat Photoshop și pe vremea lui Stalin și a altor
conducători, ar fi fost un vis îndeplinit pentru ei .
15
Figura 1.6 – Pentru că prim -ministrul canadian William Lyon își dorea să pară că este un personaj politic
mai impunător, în 1939, când Regina Elisabeta și regel e George al VI -lea au vizitat Canada și Statele Unite ,
l-au îndepărtat din fotografie pe re ge. Această vizită fiind și un moment istoric, fiind prima dată când un
monarh în funcție a făcut o astfel de vizită
Oamenii parc ă vor să fie păcăliți și ei au mare încredere în imagini, li se par cele mai relevante dovezi,
chiar dacă ei sunt conștienți c ă acele imagini pot fi trucate. Dacă le pui în față o declarație de orice natură, când
le atașezi și o imagine alături, acea declarație prinde mai multă credibilitate, chiar dacă ambele, și imaginea și
declarația, sunt false.
Un specialist în falsificarea fotografiilor, Hany Farid, spunea că ne lăsăm -păcăliți așa ușor pentru că
nici nu ne pricepem să deosebim o imagine reală, de una falsă. Ne pricepem să recunoaștem anumite trăsături
cum ar fi o față, dar nu sunt în stare să analizăm cu atenție cum bate l umina, reflecțiile ei și de aceea nu suntem
în stare să găsim diferențele unei imagini reale față de una falsă, dar nici invers. Creierul nostru, astfel, percepe
tot ce e într -o imagine, ca și cum totul s -a întâmplat 100%.
16
Figura 1.7 – Portretul în pici oare al lui Lincoln a fost creat imediat după Războiul Civil, însă nu Lincoln a
pozat pentru el. Un antreprenor necunoscut l -a creat prin tăierea -și-lipirea unei fotografii cu Lincoln pe un
portret al liderului confederat, John Calhoun. Asta pentru că nu a u fost făcute deloc portrete cu Lincoln
pozând „în stil eroic” în timpul vieții sale.
Dar conducătorii de astăzi au acces la super aparatură , conducători care au pornit războaie pe baza
acestor înșelăciuni, ca de exemplu căutarea și prinderea lu Saddam Hus sein când au venit cu dovezi false cum
că acesta ar avea armament nuclear, americanii recunoscând imensa greșeală, dar după ce au pus stăpânire pe
pământurile care adăpostesc zăcăminte de petrol, după ce au preluat controlul acelor state, după judecarea lu i
Saddam Hussein și omorârea lui. Cazuri sunt foarte multe și din păcate până aflăm adevărul, ei își ating scopul
cu aceste înșelăciuni. Vezi figurele 1.8 și 1.9.
Pe 27 mai 2014, rețelele sociale au fost agasate cu o imagine care reprezenta orașul Donetsk din
Ucraina, în flăcări, în urma unui atac aerian din partea Rusiei. Culmea e că există o fotografie izbitor de
asemănătoare a zonei, dar fără flăcări. Într -un final locuitorii orașului a confirmat că nu a existat nici un incident
în zonă, rezultând că ima ginea cu flăcările este cu adevărat o mascaradă politică și de război, pentru a informa
greșit populația celorlalte națiuni. Vezi figura 1.10.
Prin faptul că axistă această opțiune, a înșelătoriei și prin faptul că este tot mai des folosită, în
momentul în care chiar dorești să prezinți printr -o imagine, o realitate, de foarte multe ori, imaginea este pusă
sub semnul întrebării. Ne și place să facem scandal și să dramatizăm, cu asta ne hrănim, pentru că probabil
altfel ne -am plictisi . Aceasta este o mare pr oblema, autenticitatea unei fotografii și a realismului prezentat.
Acea vorbă, “camera nu minte niciodat ă”, este pusă tot mai mult la îndoială.
17
Figura 1.8 – În 2003, un fotograf, Brian Walski a combinat două fotografii care prezentau două momente
diferit e, care a dus la un scandal monstru, reprezentând astfel un soldat britanic care urla la refugiații din
Irak. De fapt soldatul a cerut cetățenilor să se ascundă de forțele irakiene care tocmai ce deschisese focul.
18
Figura 1.9 – Poză cu Osama Bin Laden, ca re a rupt internetul în 2011, unde prezenta dovada morții
acestuia, dar aparent s -au găsit dovezi precum partea de jos a feței a fost decupată și atașată în Photoshop
unui alt cadavru
Figura 1.10 – Titlu folosit împreună cu poza procesată: “Război în Don ețk: atacuri cu avioane de
vânătoare, oamenii fug din locuințe, automobile arse, o mulțime de răniți”
19
Figura 1.11 – Imagini trucate cu liderul nord -coreean la televiziunea rusă de stat . În stânga: captură de
ecran din timpul emisiunii difuzate de Pervîi Kanal pe 3 iunie 2018 . În dreapta: fotografie difuzată de
Ministerul rus de Externe pe 31 mai .2
Evoluția este foarte importantă, dar îmi e teamă că de multe ori ne pune bețe în roate motiv pentru
care credibilitatea este pusă la încercare, precum că unele evoluții ar fi sau nu utile. Faptul că în trecut doar
pictorii aveau această putere de a relata neadevărul, imaginația, dar cu toate astea, tu ca privitor, știai că sunt
șanșe foarte mari să nu reprezinte adevărul, dar faptul că fotografiile pot face acela și lucru, dar la o scară atât
de mare încât să fie foarte dificil de a face distincția dintre imaginația unui individ și purul adevăr, este foarte
gravă. Această joacă este foarte periculoasă.
2 Fotografie preluată de pe adevarul.ro , accesat la data 05.06.2018
20
Capitolul 2. Imaginea digitală
2.1 Scurt istoric
Imaginea în sine prezintă o imortalizare a unei întâmplări, unui fenomen, unor persoane sau orice
este important unei persoane într -un moment al vieții sale. Primele “imagini” apărute ar putea fi picturile
rupestre care se găsesc in peștera Altamira din Spania, fiind considerate primele manifestări artistice ale omului
în Era Preistorică.
Figura 2.1 – Pictură rupestră care se găsește în peștera Altamira din Spania3
De mii de ani, omul își dezvoltă latura artistică, evoluând, dă naștere imaginilor digitale de astăzi ,
ele fiind modalitatea principala de a stoca amintiri. Să vedem care este evoluția dezvoltării acestui domeniu:
Aristotel găurește o cutie și observă că la celălalt capăt imaginea apare răsturnată, descoperind
camera obscură.
În 1500, sunt construite tot ma i multe camere obscure Leonardo da Vinci, Cardan, camere care
permiteau pictorilor să observe contururile formelor, pictând cu mai multă ușurință după acestea.
3 Poză preluată de pe pinterest.ro , accesat la data 10.06.2018
21
Figura 2.2 – Camera obscură al lui Leornardo da Vinci [3]
În 1570, napolitanul Gianbatista del la Porta explică acest fenomen în detaliu.
Alchimiștii descoperă că clorura de argint expusă la lumină, se înnegrește , ca exemplu în 1727,
profesorul de medicină Johann Heinrich Schultze face aceasă descoperire.
Camerele obscure se perfecționează cu oglinz i la 450si obiective interschimbabile, în 1775, de către
opticianul George Friedrich Brader.
În 1777, chimistul suedez Scheele continuă studiul făcut de 1727, profesorul de medicină Johann
Heinrich Schultze al luminii care acționează cu clorura de argint.
“Fixatorul” fotografiei clasice – hiposulfatul de sodiu. În 1819, John Herschel îî descrie proprietățile.
Primele fotografii rezultate prin acțiunea luminii, au apărut în 1822, realizate de către Nicehore
Niece, expunând o placă metalică tratată cu substan ță fotosensibilă (bitum de iudeea), câteva ore la soare,
urmând să fixeze imaginea prin spălare cu ulei de lavandă. Acesta colaborează în 1826 cu Louis Daguerre
pentru a înbunătății acest proces de fixare al imaginilor, dar din păcate nu reușește să fie în viață, murind la
1833, când colegul său de cercetare, Daguerre, în 1835, folosește plăci de cupru argintate care sunt tratate în
vapori de ion și astfel obține o expunere de doar câteva minute. Imaginile erau fixate cu soluție de clorură de
sodiu, după ce plăcuțele erau developare în vapori de mercur .
Așadar, în 1839, Louis Daguerre primește Legiunea de Onoare, de la o comisie a Academiei
Franceze, care îî brevetează invenția, fiind pus în panoul de onoare ca inventatorul fotografie.
Ulterior, fotografia c lasică a suferit nenumărate schimbări, transformări, urmărind să reducă durata
de realizare a acesteia, accentuarea culorilor, nuanțelor, tot ce ține de calitate și diminuarea procesului de
fotografiat și mai ales, tema noastră, manipularea ei, evoluând at ât de mult, făcând vâlvă atât în domeniul
tehnologic, cât și cel artistic.
Prin multe transformări impuse indirect de jurnaliști i, care erau trimiși la distanțe mari, iar pentru a
realiza o fotografie, trebuia să ia cu ei un mini laborator, dorința de a fi cât mai eficienți în transmiterea
22
informațiilor, fotografia și procesul fotografierii a evoluat remarcabil până când a apărut imaginea digitală de
astăzi.
Figura 2.3 – Evoluția aparetelor fotografice [3]
2.2 Descriere
Ce este o imagine digitală? Este o reprezentare grafică bidimensională (imagini 2D), care în spate
este o mulțime de valori numerice, fiind codificate și decodificate dupa diferite sisteme și proceduri.
O imagine digitală este compusă din pixeli, care în spate este un șir de numere, foarte lung, fiecare
cifra reprezentând o intensitate de lumină sau culoare pe acea zonă de pixel. Din motive de stocare, au apărut
mai multe metode ca aceste imagini să fie comprimate ca să ocupe mai puțin spațiu și decomprimate în
momentul în care ajung în zona de destinație, depinde de situația. Noi nu vedem toate aceste lucru, ci doar
imaginea în sine, dar putem sesiza dacă copia nu mai arată la fel de clară ca originalul, în această situație,
imaginea posibil a fost comprimată de mai multe ori și a pierdut an umite informații utile. Depinde și de metoda
folosită.
Imaginile digitale pot fi făcute cu ajutorul camerelor de fotografiat digital, aparatelor de scanat,
programele specifice creării unei imagini artistice etc.
Imaginile pot fi de foarte multe tipuri, e le fiind comprimate diferit, având calități diferite, fiind
folosite în diferite activități și pentru diferite scopuri. Există de mai multe dimensiuni, sau care sunt formate
cu diferite segmente de culori, luminozități, ocupând spații diferite.
Spuneam că imaginile sunt foarmate din pixeli. Fiecare pixel reprezintă coordonatele fiecărui punct
al imaginii care mai reprezintă și caracteristici ale semnalului de culoare sau lumină.
Imaginilie digitale sunt și imaginile din spațiu, hărți, tomografii etc.
Prin rezoluția digitală putem stabili cu mai multă exactitate cât de clară este o imagine sau cât de
detaliată este mulțimea de valori din spatele imaginii. O imagine digitală nu este catalogată după dimensiuni
fizice ca fotografiile fizice. Cele digitale pot fi măsurate în pixeli (ex. 800×600 px) sau în megapixeli (0,50
Mpx). Exemplu 2𝑀𝑝~1.92𝑀𝑝=1600 𝑝𝑥×1200 𝑝𝑥= 20000 𝑝𝑥×100 𝑝𝑥. Numărul de megapixeli se
23
rotunjește la cel mult două cifre după virgulă. Rezoluția se poate măsura și în dpi. De exemplu p entru imaginilie
folosite în paginile de pe internet, este recomandat ca imaginile să fie 72 dpi, pentru o afilare mut mai rapidă
a lor, dar pentru varianta de print, pentru a păstra cât mai mult din informațiile utile ale claritații, este
recomandat 300 d pi. Noțiunea de DPI este folosită cel mai des în domeniu de tipărire și scanare, deoarece cu
cât DPI -ul este mai mare cu atât știi sigur că imaginea reală este mai clară, oferind mai multe detalii.
Să revenim la pixeli. Fiecărui pixel i se paote atribui va lori de 1, 2, 4, 8, 16, 32 sau mai mulți biți
pentru fiecare culoare, lumină sau transparență. Ca exemplu un pixel cu 1 bit, formează cel mult o imagine
alb/negru, matricea din spate fiind alcătuită doar din valorile 1 și 0. La 8 biți putem observa deja o imagine
formată din 256 de nuanțe de gri, numotă grayscale, pentru o imagine RGB este nevoie de 24 de biși, iar cele
de CMYK, Lab sau HS B au nevoie de 32 de biți. Lista poate continua, existând în acest domeniue nenumărate
versiuni.
Figura 2.4 – Repreze ntarea unor palete de culori în Photoshop (Grayscale, RGB, CMYK, HSB, Lab)
2.2.1 Rezoluția digitală
Numărul absolut de pixeli ai unei imagini digitale definește așa -numita rezoluție digitală a unei
imagini. O imagine dreptunghiulară din memoria calculatoru lui poate de exemplu avea o rezoluție digitală de
1.600 x 1.200 pixeli (lungimea și lățimea). Dacă pixelii sunt patrați, atunci și raportul dintre laturile imaginii
este 1.600:1.200, ceea ce se exprimă mai practic prin 4:3. (Alte raporturi des folosite sun t 3:2, 16:9, 1:1 ș.a.)
Într-un sens înrudit, rezoluția digitală se mai indică și prin numărul total de pixeli ai imaginii, în acest exemplu
1.920.000 px, sau 1,92 megapixeli (Mpx), în care caz însă se pierde informația despre raportul între laturile
imagin ii.
24
Figura 2.5 – O mărire a imagini duce la scăderea clarității și putem observa fiecare pixel reprezentate prin
acele pătrățele [3]
2.3 Informații utile din spatele unei fotografii
Exif este un standard pentru suplimentarea datelor fotografiei propriu -zise cu date despre fotografie
(metadate), ca de ex. : data la care a fost făcută fotografia, marca și modelul aparatului de fotografiat, timpul
de expunere , coorodonatele GPS unde a fost făcută poza și altele.
Imaginea digitală poate fi folosită și în trans miterea unor mesaje criptate, pentru nu a ajunge
informația pe mâna cui nu trebuie. Acest proces se numește criptografie. Definiția științifică: criptografia este
știința creării și menținerii mesajelor secrete, în sensul imposibilității citirii lor de căt re neautorizați. Aceasta
se poate face în mai multe metode:
2.3.1 Criptare cu chei simetrice (secrete)
Criptosistemele cu chei simetrice sunt sisteme de criptare pentru care cheile folosite la criptare și
decriptare sunt identice. Criptarea cu chei simetri ce cuprinde mai multe metode: Criptarea XOR simplă , Cifrul
Caesar , Cifruri de substituție avansate sau Cifrul Vigenere . Vezi figura 2.6.
2.3.2 Criptare cu chei asimetrice (publice)
Criptosistemele cu chei asimetrice sunt sisteme de criptare pentru care che ile folosite la criptare și
decriptare sunt diferite. La criptare se utilizează o cheie publică, iar la decriptare o cheie privată (secretă).
Deoarece este imposibilă deducerea unei chei din cealaltă, una dintre chei este făcută publică, fiind pusă la
dispoziția oricui dorește să transmită un mesaj cifrat. Doar destinatarul, care deține cea de -a doua cheie, poate
descifra și utiliza mesajul. Exemple de metode de criptare cu chei asimetrice: Schimbul de chei Diffie -Hellman
sau Cifrul Rivest -Shamir Adleman (R SA). Vezi figura 2.7.
25
Figura 2.6 – Schema de principiu a unui sistem de criptare cu chei simetrice
Figura 2.7 – Schema de principiu a unui sistem de criptare cu chei asimetrice
Mesaj
necriptat
Mesaj
criptat
Mesaj
criptat
Mesaj
necriptat
Emițător
Receptor
Criptare cu cheie unică
Decriptare cu cheie unică
Schimb de chei – canal sigur
Transmisie
Mesaj
necriptat
Mesaj
criptat
Mesaj
criptat
Mesaj
necriptat
Emițător
Receptor
Criptare cu cheie publică
Decriptare cu cheie privată
Transmisie
26
Capitolul 3. Tehnici de recunoaștere a imaginilor truca te
În urma cerce tării mele despre cum să detectăm zonele manipulate dintr -o imagine jpeg, am găsit
câteva tehnici propuse de oameni pasionați de acest subiect. Aceste tehnici țin cont de următoarele atribute:
luminozitatea din unghiuri diferite, nuanțe de blur diferite, d etectarea zonelor de contrast diferit , extragerea
unor informații utile despre imagine din metadata.
3.1 Localizarea zonelor de îmbinare dintre imagini blurate
Într-o imagine neclară modificată generată în momentul îmbinării mai multor imagini, regiunea
îmbinată și imaginea originală pot conține diferite tipuri de blur. Localizarea zonei de îmbinaredintr -o imagine
este o provocare atunci când falsificatorul folosește unele operații de postprocesare ca antiforic pentru a elimina
anomaliile de urmărire sau es tomparea limitei regiunilor îmbinate.Astfel de operațiuni elimină artefactele care
fac dificilă detectarea îmbinării.4
Khosro Bahrami, Alex C. Kot, Leida Li și Haoliang Li au venit cu o propunere ambițioasă. Ei propun
un nou cadru pentru împărțirea imagini lor neclare localizate pe baza neconcordanței parțiale de neclaritate.
Îmbinarea imaginilor este unul dintrecele mai frecvente tipuri de manipulare a imaginilor. În
împărțirea imaginilor neclare, dacă imaginea originală și bucata lipită, au diferite tipuri de neclarități, pot
apărea neconcordanțe între tipurile de neclarități din diferite regiuniîn imaginea manipulată. Ei se concentrează
pe detectarea acestui tipde neconcordanță pentru localizarea îmbinării într -o imagine neclară.Cu toate acestea,
falsifica torul poate elimina anomalia introdusă deurme le de lipire și de a face o imagine vizual plăcută după
unele operații de post -procesare, cum ar fi redimensionarea imaginii manipulate într -o dimensiune mai mică
sau estomparea regiunii limită a îmbinării. Astf el de operațiuni elimină artefactele folosite de multe tehnici
existente pentru a face dificilă detectarea lipirii.
Figura 3.1 (a) O imagine autentică cu estompare neclară. (b) Imagine manipulată prin împărțirea unei
regiuni neclare a mișcării în imagine a (a), careare tipuri de neclarități inconsistente în partea dreaptă
(neclaritatea mișcării) și partea stângă (estompare în afara focusului).
Figura 3.1 (a) prezintă o imagine autentică cu estompare neclară și (b) o imagine manipulată prin
împărțirea unei regiuni neclare a mișcării în imaginea (a). Imaginea manipulată (b) are două tipuri diferite de
4Khosro Bahrami, Alex C. Kot, Leida Li și Haoliang Li – Blurred Image Splicing Localization by Exposing
Blur Type Inconsistency . https://www.researchgate.net , accesat la data 23.05.2018.
27
neclarități parțiale, unul în stânga și unul pe partea dreapta. Partea dreaptă (regiunea lipită) cu blur de mișcare
indică mișcarea camerei în raport cu scena î n timp ce partea stângă (imaginea originală) are neclaritatea
estompată. Ținând cont că obiectele (pereții și clădirea) din aceste regiuni sunt staționare, astfel de
inconsecvențe în tipurile de neclarități pot fi utilizate pentru localizarea îmbinării. Ob iectivul este localizarea
regiunii îmbinate într -o imagine neclară subestimată prin explorarea tipurilor de neclarități parțiale. Tipurile
de neclarități naturale dintr -o imagine pot fi în afara zonei de focalizare sau neclaritate de miscare. Blurul
necuno scut este cauzat de plasarea unui obiect din adâncimea de câmp a camerei sau stabilirea incorectă a
lungimii de către focalizator. Blurul de mișcare este generat datorită mișcării camerei sau aobiectului. În plus,
este foarte comun ca cineva să estompeze a rtificial o regiune a unei imagini cu ajutorul uneltelor specifice de
editare . Atât blurul natural, cât și artificial, cea mai simplă formă de mișcare și de estompare sunt specificate
prin mișcarea liniară și respectiv cilindrică.
Proiectul propus pentru l ocalizarea îmbinării este prezentatîn figura 3.2 care este structurat în trei
etape. În primul rând, depist ăm tipurile de blur aflate în imagine , generate de împărțirea imaginii în blocuri.În
al doilea rând, depistăm blocurile d in imagin e care sunt în afar a focusului sau în mișcare, pe baza
unorcaracteristici. În al treilea rând, aplicăm o metodă care prin creșterea preciziei limitelor dintre aceste
blocuri la nivel de pixel , depistăm zona de lipire . Datorită gradului de estompare sau a imaginii conținut,
detectarea diferitelor tipuri de neclarități într -o imagine împărțită nu este ușor în viziunea umană. Cadrul
propus poate fi folosite pentru a diferenția tipurile de blur și de mișcare neclară dintr -o imagine.
Figura 3.2 – Cadrul propus pentru localizare a fragmentării imaginii neclară.
Următoarele secțiuni oferă pași detaliați în acest cadru propus.
3.1.1 Extracția tipurilor de blur din imagine
În etapa prezentată în figura 3.2 (a), obiectivul este extragerea tipuril or de estompare a unei imagini
neclar e cu posibilitate a de a exista o zonă de îmbinare . Imaginea este împărțită în blocuri, denotate estimativ
ca nuclee locale neclar e. Având o imagine color 𝐵 de dimensiune 𝑀 × 𝑁, o convertim într-o imagine cu scală
gri și apoi partiția 𝐺 în blocurile 𝐺𝑖,𝑗 cu pixeli 𝐿×𝐿 și 𝑑 (𝑑<𝐿) suprapuse, unde i și j sunt indicele pentru
blocuri le diferite (1 ≤ 𝑖 ≤ 𝑀 /(𝐿−𝑑), 1 ≤ 𝑗 ≤ 𝑁/(𝐿−𝑑)). Pentru un bloc de imagine 𝐺𝑖,𝑗, procesul de
estompare a imaginii este dat de :
𝐺𝑖,𝑗=𝐼𝑖,𝑗∗𝐾𝑖,𝑗+𝑁𝑖,𝑗 (1)
unde 𝐼𝑖,𝑗 reprezintă un bloc de imagine ascuțit, 𝐾𝑖,𝑗 este un nucleu blurat reprezentat de o matrice
bidimensională cu dimensiunea de 𝐾×𝐾, 𝑁𝑖,𝑗 este matricea de zgomot și ' ∗' denotă convoluția.
28
Figura 3.3 – Distribuțiile valorilor pixelilor estimate din mișcarea liniară (a) și (b); (c) și (d) mișcare
neliniară; (e) și (f) simetrie în afara ariei de focalizare și (g) și (h) sfera asimetrică a neclarității
necunoscute în figura 3.2.
Așa cum am menționat mai înaint e, distribuțiile în afara focalizării și nucleele de mișcare neclar e au
statistici diferite.
3.1.2 Detectarea și clasificarea tipurilor de blur
În această secțiune, încorporăm tipul de neclaritate propus pentru a clasifica tipul de bl urare a imaginii
𝐺𝑖,𝑗 în out-of-focus sau în mișcare. Noi generăm o nouă caracteristică 𝑣𝑖,𝑗, combinând 𝑦𝑖,𝑗 și 𝜎𝑖,𝑗pentru
reducerea dimensiunilor. Prin reprezentare a 𝑦𝑖,𝑗 și 𝜎𝑖,𝑗 ca vectorul caracteristic 𝑥𝑖,𝑗=[𝑦𝑖,𝑗𝜎𝑖,𝑗]𝑇, definim o
mapare 𝑣𝑖,𝑗=𝑓(𝑥𝑖,𝑗). În general, maparea optimă 𝑣𝑖,𝑗=𝑓(𝑥𝑖,𝑗) este o funcție neliniară. Din moment ce nu
există un mod sistematic de a genera transformare a non-liniară, vom reduce dimensionalitatea bazată pe
transform area liniară a LDA, pentru a da randament :
𝑣𝑖,𝑗=𝑤𝑇𝑥𝑖,𝑗=[𝑤𝑦𝑤𝜎][𝑦𝑖,𝑗𝜎𝑖,𝑗]𝑇 (2)
unde 𝑤=[𝑤𝑦𝑤𝜎]𝑇 este vectorul care proiectează axele 𝛾 și 𝜎 pe o linie. Pentru a găsi cea mai bună
proiecție, Discri minatorul Liniar al lui Fisher sugerează o maximizare între clase împrășt iind și minimizarea
dispersiei în interiorul clasei. Punerea în aplicare a aceast ei regul i pentru două tipuri de blururi în afara
focalizării și a zonei de mișcare, randamentele :
𝑤=𝑆𝑤−1(𝑒𝑂−𝑒𝑀) (3)
unde 𝑒𝑂=[𝑒𝑦𝑂𝑒𝜎𝑂]𝑇 și 𝑒𝑀=[𝑒𝑦𝑀𝑒𝜎𝑀]𝑇sunt vectorii mediei dintre 𝑦𝑖,𝑗 și 𝜎𝑖,𝑗 în out-of-focus și în
mișcare , respectiv 𝑆𝑤 este matricea scatter ob ținut de la:
𝑆𝑤=𝑆𝑂+𝑆𝑀 (4)
unde 𝑆𝑂 și 𝑆𝑀 sunt variantele lui 𝑦𝑖,𝑗 și 𝜎𝑖,𝑗 în out-of-focus și în mișcare . Utiliz ând funcți a generat ă
de𝑣𝑖,𝑗 , formăm un clasificator binar de tipuri de blur al blocului de imagine 𝐺𝑖,𝑗, notat ca 𝐵𝑖,𝑗, în out -of-focus
sau în mișcare , unde :
𝐵𝑖,𝑗=𝑓(𝑥)={′𝑀′(𝑏𝑙𝑢𝑟 𝑑𝑒 𝑚𝑖ș𝑐𝑎𝑟𝑒),𝑑𝑎𝑐ă 𝑣𝑖,𝑗≥𝜌−𝑥,
′𝑂′(𝑏𝑙𝑢𝑟 𝑑𝑒 𝑜𝑢𝑡−𝑜𝑓−𝑓𝑜𝑐𝑢𝑠),𝑑𝑎𝑐ă 𝑣𝑖,𝑗≤𝜌−𝑥, (5)
29
și 𝜌 este prag ul care discriminează tipul de neclaritate al unuiblocul de imagini în out-of-focus sau
în mișcare .
Prin definirea a două clase, inclusiv a neclarității în afara zonei de focalizare ca fiind clasa pozitivă
și a zonei neclar e a mișcării ca clasă negativă, rata reală pozitivă (TPR) și rata reală negativă (TNR) sunt
precizia de detectare a neclarității a zonelor în out-of-focus, respectiv în mișcare . Pragul 𝜌 este ales astfel
pentru a maximiza media TPR și TNR pe un set imagini. De asemenea, pentru a calcula vectorul de proiecție
𝑤, vom folosi antrenament set de imagini în afara focalizării și mișcări neclară. Utilizarea calculând ρ și w,
vom măsura performanța pentru set de testare.
Deoarece blocurile fără conținut (blocuri netede) nu sunt fiabile în detecta rea tipurilor de blur, vom
folosi o metodă pentru a le selecta. Pentru început folosim un detector de pixeli de margini . Apoi, fiecare bloc
este clasificat ca neted pe baza numărului de pixeli de margine. În cazul în care numărul de pixeli de margine
este mai mare decât un prag, blocul este considerată ca non -neted, altfel este un bloc neted. Pentru un bloc de
64 × 64, pragul este ales 0,2% din total ul numărul ui de pixeli din bloc.
Blocurile netede sunt prezentate în figura 3.2 (b) în culoare gri. După clas ificarea tipului de
neclaritate, se aplică o rafinare pentru a clasifica blocurile netede pe baza tipului de neclaritate alcel or mai
apropiate blocuri non-netede. Pentru imaginea manipulată este prezentat în figura 4.2 (b)rezultatul de
clasificare al blocur ilor de imagini înainte și dupărafinament în cazul în care toate blocurile sunt clasificate în
out-of-focus șiîn mișcare . O astfel de clasificare împarte imagineaîn 𝑠regiuni 𝑅1,𝑅2,…,𝑅𝑠, unde 𝑠 se poate
schimba de la 2 la [𝑀
𝐿−𝑑]×[𝑁
𝐿−𝑑](numărul blocurilor al imagini i).
3.1.3 Localizarea fină a îmbinării
După generarea a 𝑠 regiuni 𝑅1,𝑅2,…,𝑅𝑠, creștemprecizia limit ă a regiunilor la nivelul pixelilor.
Pentru a definii blocurile de graniță , cel puțin un ul din cei 4 pixeli vecini trebuie să provină dintr -o regiune
diferită. Ca exemplu, pentrudouă regiuni 𝑅1 și 𝑅2 prezentate în figura 3.2 (c) cu alb și respectiv negru, blocurile
de margine sunt indicateîn culoarea gri. În al doilea rând, atribuim etichetele "1","2",…,"𝑠" lapixeli i tuturor
blocurilor fără limite în regiunile 𝑅1,𝑅2,…,𝑅𝑠. Pixelii rămași ai blocurilor limită suntnemarca ți.
În al treilea rând, aplicăm o nouă tehnică pentru propagareetichetel or de la pixeli i etichetați la pixe lii
neetichetați cuinterpolare. Folosind matrița Laplacian, interpolareapoate fi formulată prin minimizarea unei
funcții de cost. Ace astă funcție de cost este consider ată intensitatea pixelilor în plus față de etichetepentru a
diferenția pixelii pe baza int ensităților diferite.Deoarece este probabil ca intensitatea pixelilor în jurul
valoriilimit ăal regiunii îmbinate față de imaginea originală să fie diferită , consider ăm intensitatea pixelilor
calimita de localizare care poate fi atins. După ce ați atributeti chete tuturor pixelilor blocurilor de frontieră ,
generăm în regiunile 𝑅1,𝑅2,…,𝑅𝑠 de la pixelii corespunzători.Un exemplu de localizare fină este prezentat în
figura 3.2(c).
După generarea regiunilor 𝑅1,𝑅2,…,𝑅𝑠,o decizie u mană estenecesar ă pentru a indica regiunea
împărțită. Astfel de neconcordanțe pot fi descoperite pe baza unor fapte pentru a detecta posibilul fals:
1) Într -o imagine cu estompare neclară, obiecte le staționare ; ex.:clădirea, nu ar trebui să aibă
mișcare est ompată .
2) Într -o imagine cu mișcare de mână sau cu mișcare a camerei,toate obiectele ar trebui să aibă blur
de mișcare, cu excepția cazului în care obiectuleste staționar în raport cu camera.
Într-un astfel de caz, regiunea îmbinată și imaginea originală suntdiferențiate de regiunile diferite de
blur. De exemplu, pentruimaginea prezentată în figura 3.2, deoarece obiectele (pereții și clădirea)sunt
staționare, în timp ce tipurile neclare sunt diferite, detectămregiuni originale și lipite.
30
Cu toate acestea, această metodă poate fi aplicată numai la imagini neclare. În plus, fiecare tehnică
funcționează când există o ipoteză specifică.
3.2 Extragerea contrastului
Ca retușare al falsului , îmbunătățirea contrastului este de obicei folosit pentru a regla luminoz itatea
și contrastul al imagini lor digitale. Utilizatorii rău intenționați pot, de asemenea, să efectueze îmbunătățire de
contrast pentru crearea unei imagini false, dar realiste. La fel de important este d etect area îmbunătățir ii
contrastului pentru a veri ficia originalitatea și autenticitatea imaginilor digitale. Pentru ace st lucru, Gang Cao,
Yao Zhao, Rongrong Ni și Xuelong Li, propun un algoritm pentru a detecta contrastul îmbunătăți t implic at în
manipul area imagini i digitale. 5 Se concentre ază pe detect area contrastului îmbunătățit la nivel general aplicat
la imaginile comprimate anterior JPEG, care sunt pe scară largă în aplicații reale. Artefactele vârfului / distanței
histogramei suportate prin comprimarea JPEG și mapările valorilor de pixeli sunt ana lizate teoretic, și distinse
prin identificarea diferenței dintre zero și înălțime a amprentelor digitale.
O dată cu dezvoltarea rapidă a tehnologiei editării digitale , manipularea imaginii digitale devine mai
degrabă convenabil ă și ușo ară. În timp ce bene ficiază de procesarea legală a imaginilor, utilizatorii rău
intenționați ar putea folosi astfel de manipulări în alte scopuri . În prezent, falsificări le de imagine sunt pe scară
largă pe Internet și alte aplicații legate de securitate cum ar fi supravegher ea și recunoașterea care utilizează
imagini care prin urmare, afecte ază. Orice eveniment, știre sau informație care e livrată prin imagini ar putea
deveni mai puțin credibile. În aplicarea legii și înregistrarea știrilor, este, de asemenea, necesar să se v erifice
originalitatea și autenticitatea imagini lor digitale și stabilirea istoricul ui manipulării imaginilor pentru a obține
mai multe informații.
Figura 3.4 Rezultatele detecției pe o imagine compusă. (a) și (b) două imagini sursă; (c) imagine compusă
din ambele surse; (d) harta metrică înclinată a (d) Metoda Stamm și Liu și (e) metoda propusă. Blocksize =
200.
5Gang Cao, Yao Zhao, Rongrong Ni și Xuelong Li – Contrast Enhancement -Based Forensicsin Digital
Images . https://www.researchgate.net , accesat la data 23.05.2018
31
3.2.1 Detectarea intensității contrastului local
În metoda de detectare a contrastului la nivel mondial6 , al M. C. Stamm și K. J. R. Liu, se ap lică
blocurilor de imagini pentru detectarea îmbunătățirilor locale. În practică, cele două imagini sursă utilizate
pentru crearea unui compozit , imaginea poate avea temperatură de culoare diferită sau contrast diferit. Pentru
a face imaginea compusă mai r ealistă, îmbunătățirea contrastului este efectuată în mod obișnuit într -una sau
ambele surse. În astfel de scenarii, imaginea compusă a fost creată prin aplicarea îmbunătățirii contrastului
într-o regiune cu o singură sursă și pot fi detectate prin metoda lui M. C. Stamm și K. J. R. Liu . Cu toate
acestea, dacă îmbunătățirea contrastului este aplicată în ambele regiuni, o astfel de metodă poate eșua din
moment ce toate codurile sunt detectate ca cele îmbunătățite. Așa cum se arată în figura 4.4, o imagine co mpusă
(c) este creată prin copierea a unei regiun i a imaginii sursă (a) și lipirea pe o altă sursă , imaginea (b). Pentru a
potrivi percepția regională a contrastului, cele două regiuni sursă sunt îmbunătățite prin mapări diferite
utilizând instrumentul "Cu rve" din Adobe Photoshop. Figura 3.4 (d) arată rezultatul de detecție al metodelor
Stamm și Liu, unde regiunea falsificată nu poate fi distinsă corect. Un astfel de rezultat ilustrează faptul că
metoda lor nu reușește să detecteze ambele surse de imagine c ompozite îmbunătățite.
3.2.2 Detectarea intensificății contrastului per total
În această secțiune, Gang Cao, Yao Zhao, Rongrong Ni și Xuelong Li, propun un algoritm eficient
care poate detecta sporirea globală a contrastului atât în cazul necomprimat imagi ni JPEG și comprimate
anterior.
A. Art efactele Vârf/ Spațiu provocate de compresia JPEG
Metodele a le M. C. Stamm și K. J. R. Liu , nu reușesc să detecteze îmbunătățirea contrastului în JPEG
comprimat anterior sau de joasă calitate a imagini. Pentru a investi ga motivele acestei ineficiențe, se analizează
impactul compresiei JPEG asupra histogramelor.
Comprimarea JPEG a unei imagini pe 8 biți de culoare gri include următorii pașii: deplasarea
valorilor pixelilor din intervalul [0,255] la [−128,127], 8 × 8 diviziuni de blocuri, bloc de transformare
discret de cosinus (DCT), cuantificarea și codarea entropiei. În imagini le originale , există regiuni mai mult sau
mai puțin plate. Odată ce ați aplicat DCT, numai coeficientul DC este mare, în timp ce ceilalți sunt mi ci în
blocuri plane. După cuantificare, este rezonabil să presupunem că există blocurile în care doar coeficientul DC
cuantificat este non -zero. După DCT invers, blocul plat decomprimat denotată de 𝐼𝑏 poate fi calculată ca :
𝐼𝑏(𝑖,𝑗)=𝑟𝑜𝑢𝑛𝑑(𝑞𝑛𝑑
8+128) (1)
aici, 𝑖,𝑗 = 0,1,2,…,7 sunt coordonate locale ale pixelilor. 𝑟𝑜𝑢𝑛𝑑(·) este operatorul de rotunjire.
𝑞 este etapa de cuantizare DC. 𝑛𝑑=𝐿,𝐿+1,𝐿+2,…,𝑈 reprezintă coeficientul cvadratat DC, unde 𝐿=
𝑟𝑜𝑢𝑛𝑑 (−128 × 8/𝑞) și 𝑈=𝑟𝑜𝑢𝑛𝑑 (127 × 8/𝑞) sunt dedus e din definițiile din standardul de comprimare
JPEG.
Fie 𝑐=𝑞/8=𝑇1/𝑇2, astfel încât 𝑇1,𝑇2∈𝑍 sunt relativ prim e. 𝐼𝑏(𝑖,𝑗) prin 𝑛𝑑 este în mod inerent o
mapare rotundă pe scară, care s -a dovedit a avea o anumită periodicitate. Mai precis, fie Ψ𝑐(𝑏)={𝑛𝑑|𝑏=
𝑟𝑜𝑢𝑛𝑑(𝑐𝑛𝑑)} fisetul de 𝑛𝑑 mapat la aceeași valoare 𝑏. Cardinalitatea |Ψ𝑐(𝑏)| este periodic în 𝑏 cu perioada
𝑇1. Rețineți că |Ψ𝑐(𝑏)| este nonconstant dacă 𝑞≠1,2,4,8. Din cauza unor astfel de periodice și proprietățile
neconstant ei, vârfurile candidatului pot apărea în nivel de histogramă gri la 𝑘, unde
6M. C. Stamm and K. J. R. Liu – Forensic detection of image manipulation using statistical intrinsic
fingerprints . https://www.researchgate.net , accesat la data 23.05.2018
32
𝑘∈{𝑏′|𝑏′=arg max
𝑏∈{0,1,…,255}(|Ψ𝑐(𝑏)|)} (2)
Regiunile plane mai mari și cuantificarea DC mai mare ca treapt ă ar determina mai multe
compartimente de vârf evidente. Chiar și pentru un bloc cu coeficienți de AC cuantizați, non -zero, după
decompresie, numărul de niveluri de pixeli gri scad într-o oarecare măsură . Deci, histograma globală este încă
predispusă discontinuit ății.
Rezistența artefactelor vârf / spațiu pe histogramă suportate de Compresia JPEG poate fi, de
asemenea, măsurată cu ajutorul valorii metric e a energiei de înaltă frecvență 𝐹.
𝐹=1
𝑁∑|𝑏(𝑤)𝐺(𝑤)| (3)
𝑤
Figura 3.4 prezintă distribuția cumulativă a lui 𝐹 calculat din imaginile UCID și versiunile lor
comprimate7 . Aceasta demonstrează că 𝐹 de peste 85% necomprimat , imaginile sunt sub 0.06, care pot fi
considerate ca fiind prag apro ximativ pentru determinarea apariției vârfurilor. După compresie, valorile F ale
imaginilor cresc și cele mai multe acestea devin mai mari de 0,06. Mai mult, cu cât 𝑄 este mai mic, cu cât 𝐹
devine mai mare. Astfel de rezultate validează că artefactele vârf / spațiu există într -adevăr în majoritatea
imaginilor JPEG de calitate medie / joasă.
Figura 3.5 – Distribuția cumulativă a valorilor 𝐹 calculate din imaginile UCID și versiunile lor JPEG.
7 G. Schaefer and M. Stich, “UCID – An uncompressed colour image database,” in Proc. SPIE , Storage and
Retrieval Methods and Applications for Multimedia , vol. 5307, San Jose, CA, USA, 2004, pp. 472 –480
33
B. Art efactele Vârf/Spațiu provocate de îmbunătățirea contras tului
Pentru a investiga impactul îmbunătățirii contrastului asupra histogramei, se scrie o histogramă a
unei imagini îmbunătățite, ℎ𝑌 la fel ca
ℎ𝑌(𝑦)=∑ℎ𝑋(𝑥)𝑙(𝑚(𝑥)=𝑦) (4)
𝑥
unde 𝑙(·) denotă funcția indicator definită ca 𝑙(𝑢)=1, dacă 𝑢=1; 𝑙(𝑢)=0, în caz contrar. ℎ𝑋 este
histograma imagin ii original e. Această ecuație arată că fiecare valoare a lui ℎ𝑌 trebuie să fie egală cu o singură
valoare a ℎ𝑋, o sumă de valori ℎ𝑋 distincte sau zero, în funcție de curba de mapa re tangent cu panta. Drept
rezultat, vârfuri impulsive vor apărea în ℎ𝑌 la valorile 𝑦 la care au fost mapate multipl u valori i 𝑥, cum ar fi
𝑦=254 în figura 4 .6. În mod similar, vor apărea decalaje în ℎ𝑌 la 𝑦, pentru exemplu, 𝑦=4 într-o astfel d e
ilustrație, la care nu există valori 𝑥 au fost cartografiate.
Figura 3.6 – Vârf / spațiu – decalaj cauzat de maparea valorilor pixelilor. Un coș de vârf / spațiu apare la y
= 254, respectiv 4.
Cu toate acestea, există o diferență notabilă între artefactele vârf/ spațiu de la îmbunătățirea
contrastului și cele de la comprimarea JPEG. Când nu sunt mapate valori ale pixelilor primare, apar mereu în
imaginile îmbunătățite. Dimpotrivă, la zero spațiul gol este absent în imagini comprimate de când există lipsa
unei mapări de valo ri distincte a pixelilor aplicate tuturor pixelilor. O relație de mapare a valorii obișnuite a
pixelilor există în plan , dar nu și în alte regiuni. Prin urmare, înălțimea zero caracteristica de decalaj poate fi
utilizată pentru a dete cta îmbunătățirea contrastului la nivel per total atât în imagini necomprimate, cât și în
imagini comprimate.
34
C. Algoritmul de detecție a contrastului îmbunătățit propus
Pe baza analizelor de mai sus, se propune îmbunătățirea contrastului de detecție, după cum urmează.
1) Se obține histograma nivelului de gri normalizat al imaginii ℎ(𝑥).
2) Detectați coșului la 𝑘 ca un compartiment de spațiu zero -înălțime , dacă acesta satisface:
{ ℎ(𝑘)=0
𝑚𝑖𝑛{ℎ(𝑘−1),ℎ(𝑘+1)}>𝜏
1
2𝑤1+1∑ℎ(𝑥)>𝜏𝑘+𝑤1
𝑥=𝑘−𝑤1 (5)
Aici, prima sub -ecuație asigură că coșul curent este nul. Pentru a defini un coș cu decalaj, a doua
subeciză păstrează două coșuri vecine mai mari decât pragul 𝜏, așa cum se arată în figura 3.6. Pentru a exclude
decalajul de înălțime zero care po ate fi detectat incorect în histogramă, media coșurilor învecinate (2𝑤1+1)
ar trebui să fie mai mare decât 𝜏, așa cum este constrânsă de a treia subechivație. Experimentele arată că 𝑤1=
3 și 𝜏=0,001 sunt adecvate. Rețineți că ne concentrăm asupra detectării izolate de recipiente cu decalaj de
înălțime zero, dar care nu sunt conectate, care sunt rareori prezente în mijlocul histogramelor.
3) Aflăm numărul de coșuri cu decalaj zero, notat ă de 𝑁𝑔. Dacă este mai mare decât pragul de decizi e,
contrastul este detectat, altfel nu.
Figura 3.7 – Definirea unui recipient cu spațiu zero -înălțime la 𝑘.
3.3 Detectarea sistemului de iluminare bazat pe schimbarea spațiului
În această metodă , explorăm spații transformate, reprezentate de hărți de i luminat din imagine,
pentru a propune o metodologie pentru selectarea formelor complementare de caracterizare vizuală pentru o
detectare eficientă și automată a imaginii fals e. Combinăm indicatorii statistici furnizați de diferiți descriptori
de imagine care explorează caracteristicile de culoare, formă și textur ă. Ne concentrăm pe detectarea falsurilor
de imagini care conțin persoane și acestea prezintă o metodă de localizare a falsificării, în special a feței unei
persoan e într-o imagine. Tiago Carvalho , Fábio A. Faria, Hélio Pedrini, Ricardo da S. Torres și Anderson
Rocha au făcut e xperimente efectuate pe trei diferite seturi de date cu acces deschis arată potențialul metodei
propuse pentru identificarea falsurilor de imagini care conțin persoane. În pr imele două seturi de date (DSO -1
35
și DSI -1), metoda propusă a atins o precizie de clasificare de 94% și respectiv 84%, o remarcabil ă îmbunătățire
în comparație cu stadiul tehnicii metode i. În cele din urmă, la evaluarea celui de -al treilea set de date care
cuprinde imagini interogate descărcate de pe Internet, de asemenea, ei prezintă o analiză detaliată a imaginilor
țintă.8
Într-o societate în care rețelele sociale au devenit instrumente puternice de comunicare și sunt mai
omniprezente decât oricând, aceast a este acum prioritar pentru a proiecta și a implementa metode care să
garanteze autenticitatea informațiilor difuzate. Imagin ea, spre exemplu, considerată una dintre cele mai
puternice comunicări media, apar ca cele mai împărtășite documente la aceste reț ele sociale, în principal ,
pentru că permit dispozitivel or mobile actuale ca oricine să poată captura mii de imagini oriunde, oricând. În
acest context, dezvoltarea metodelor de verificare a autentici entății imaginii este o nevoie reală a societății
modern e.
Figura 3.8 – Imagini false create prin lipire. (a) Conman Dimitri de Angelis (dreapta) alături de fostul
președinte american Bill Clinton (stânga). (b) Imagine falsă a fostului președinte (centru) al Braziliei , care
pretinde un moment din viața person ală a acestuia cu un lider de bandă criminală (stânga) .
Această verificare ar putea fi la fel de simplă ca verificarea unei imagin i dacă a atins scopuri de
îmbunătățire a expoziției (de exemplu, luminozitate sau contrast) sau la fel de complex e ca detectar ea în cazul
în care imaginea a fost manipulată cu scopul de a înșela privitorul , în cele din urmă .
Una dintre cele mai frecvente operațiuni de manipulare a imaginilor este îmbinarea sau compoziția.
Se compune din utilizarea a două părți sau mai multe imagi ni diferite pentru a construi o nouă imagine care să
ilustreze un moment care nu s -a întâmplat niciodată în spațiu și timp. Nu este dificil să găsești cazuri în care
oamenii utilizează compoziția imaginilor pentru a -și dobândi propriile avantaje comerciale sau personale.
Era digitală, cu toate facilitățile sale, are, de asemenea, nenorocirile sale. Un a dintre e le, împuternicit
de dispozitive de calcul ieftine și software -uri puternice de editare de imagini, este de manipulare a foto.
Cu puțin efort și un ins trument adecvat de manipulare a imaginii (de exemplu, Adobe Photoshop sau
Gimp), pe care oamenii obișnuiți le pot crea capodopere ce ilustrează foto grafi i incredibil de credibile. În plus,
calitatea și puterea este în continuă creștere d e la software -ul de editare a imaginilor , au făcut o împărțire a
8 Tiago Carvalho, Fábio A. Faria, Hélio Pedrini, Ricardo da S. Torres și Anderson Rocha – Illuminant -Based
TransformedSpaces for Image Forensic s. https://www.researchgate.net , accesat la data 23.05.2018
36
imaginilor la a un nivel complet nou de credibilitate a și dificultate a de detectare. Aceste dificultăți duc la
necesitatea dezvoltării în mod egal a unor metode sofisticate pentru detectarea indicatorilor de im agine rămași
de la falsificatori.
Metode care explorează un anumit grad de inconsecvență de iluminare pentru detectarea lipirii de
imagini au fost în centrul atenției mul tor cercetători de peste un deceniu. Practic, ele pot fi împărțite în două
tipuri de a bordări: (a) cele care caută inconsecvențe în mediul sursei de lumină; și (b) cele care caută
inconsecvențe în culoarea sursă de lumină estimată din imagine.
3.3.1 Prezentare generală a detectării falsificării
Procesul de detectare a îmbinării se bazează î n general pe experiența experților și cunoștințele de
bază. Acest proces de obicei, este consumatoare de timp și predispus la erori , pentru ca îmbinări le de imagine
sunt tot mai sofisticate și o analiză fonetică (de exemplu, vizuală) poate să nu fie sufici ent pentru a detecta
falsurile.
Metoda lor de detectare a îmbinării imaginilor, care este specifică pentru identificarea compozitelor
de oameni, este dezvoltat cu scopul de aminimizarea interacțiunii cu utilizatorul. Sarcina de detectare a
îmbinării constă în etichetarea unei imagini noi între două clase predefinite (real și fals) și ulterior arătând cu
fața probabilitatea mai mare de a fi fața falsă. În acest proces, modelul de clasificare este creat pentru a indica
clasa la care noua imagine aparține.
Metodologia de detectare a falsificării imaginii cuprinde patru etape principale :
1) Descriere: se bazează pe algoritmi pentru estimarea hărții luminii , a spațiul ui de reprezentare
transformat al imaginii de intrare și extragere a imaginilor vizuale (de exemp lu, culoare, textura și forma), care
codifică informațiile extrase în caracteristică vectori;
2) Clasificarea perechilor de fețe: se bazează pe algoritmi care utilizează vectorii de imagine pentru
a învăța intra – și inter -clasă modele lor de imagini pentru a clasifica fiecare nou a caracteristică de imagine
vector;
3) Clasificarea falsului: constă în etichetarea unei imagini noi într-una din clasele existente
cunoscute (reale și false) bazat pe modelul de clasificare învățat anterior și pe tehnici de descrier e;
4) Detectarea falsurilor: odată știind că o imagine este falsă, această etapă vizează identificarea feței
care este mai probabilă a fi fals ă în imagine.
Figura 3.9 oferă o imagine de ansamblu asupra metodei a cărei pași vor fi să fie rafinat ă în secțiun ile
următoare.
Figura 3.9 – Privire de ansamblu asupra clasificării și detecției falsificării imaginilor propuse metodologie.
37
3.3.2 Descriere a
Într-un adevărat scenariu criminalistic, o precizie îmbunătățită în fals , detectarea este mult mai
importantă d ecât o aplicație în timp real. Prin urmare, în această prezentar e, autorii propun să extind ă
complexitatea descrierii imaginilor. Descrierea augmentată este dublă: în primul rând, pentru a spori
clasificarea cu precizie; în al doilea rând, pentru a capta m ai multe detalii în imagine și indicii într -un spațiu
iluminat transformat, adesea imperceptibili cu o analiză vizuală.
Metoda lor folosește o combinație de algoritmi diferiți pentru calcularea spațiilor iluminate
transformate, reprezentarea de astfel de iluminări în spații de culoare diferite și o varietate largă a descriptorilor
de imagine pentru a explora diferite și complementare proprietăți ale fiecărei metode pentru a obține o mai
robustă și o reprezentare eficientă a imaginii pentru detectarea falsu rilor. Acest proces de descriere este împărțit
în 5 etape, în care este descrisă Figura 3 și descrise după cum urmează :
1) Reprezentarea imaginilor în spațiul iluminat transformat : În general, literatura de specialitate
descrie două clase principale de alg oritmi pentru estimarea hărților de iluminat și reprezentând astfel o imagine
de intrare ca o hartă iluminantă: bazată pe statistici și fizică. Pe de o parte, algoritmii de estimare a spațiului
iluminat sunt bazați pe statistici care se bazează pe ipotezel e legate de statisticile pixelilor de imagine . Pe de
altă parte, metodele de estimare a spațiului iluminat bazate pe fizică se bazează pe formulările teoretice despre
modul în care lumina interacționează cu obiectele (de exemplu, având în vedere modelul de reflecție
dichromatică). Având în vedere că ambele clase de metode de estimare a spațiului iluminat captează informații
diferite de iluminare a imaginii și profitarea strategiei propuse de Riess și Angelopoulou9, care împarte
imaginea în grupuri mici cu o culoare similară (numită superpixel i) pentru a estima iluminatul local la fiecare
superpixel, metoda propusă de aici folosește aceste avantaje diferite , tipuri de informații pentru a obține
caracteristici complementare în proces de detectare a falsificări i.
𝑘𝑒𝑛,𝑝,𝜎=(∫|𝜕𝑛𝑓𝜎(𝑥)
𝜕𝑥𝑛|𝑝
𝑑𝑥)1
𝑝 (1)
unde 𝑥 reprezintă o coordonată a pixelilor, 𝑘 este un factor de scalare, |·| este valoarea absolută, 𝜕
operatorul diferențial, 𝑓𝜎(𝑥) este intensitățile observate l a poziția 𝑥, netezite cu un nucleu Gaussian 𝜎, 𝑝 este
norma Minkowski și 𝑛 este ordinul derivat.
În schimb, pentru captarea informațiilor bazate pe fizică, folosim o variantă a spațiului de
cromaticitate cu intensitate inversă (IIC) propusă de Riess și Angelopoulou. În acest model de estimare
modificată, intensitatea 𝑓𝑐(𝑥) și cromaticitatea 𝜒𝑐 (𝑥) a unui canal de culoare 𝑐 ∈ {𝑅,𝐺,𝐵} la poziția 𝑥 este
reprezentată de
𝜒𝑐 (𝑥)=𝑚(𝑥)1
∑ 𝑓𝑖(𝑥)𝑖∈{𝑅,𝐺,𝐵}+𝑦𝑐 (2)
În această ecuație, 𝛾𝑐 reprezintă cromaticitatea iluminatului în canalul 𝑐, în timp ce 𝑚 (𝑥) capturează
în principal influențe geometric e, adică poziția luminii, orientarea suprafeței și poziți a camer ei.
2) Alegerea modelului spațiului de culoare și extracției feței: Unele modele de spațiu de culoare sunt
mai potrivite pentru extragere a caracteristici lor semnificative decât altele în funcție de cererea țintă. În plus,
nu există cercetarea în domeniul criminalisticilor digitale arătând dacă este sau n u specifică , spațiul de culoare
este mai potrivit pentru a reprezenta indicii de imagine când analizarea falsurilor, în special atunci când se
utilizează hărți iluminante. Prin urmare, având în vedere că unele tehnici de descriere sunt mai multe potrivit e
9 C. Riess and E. Angelopoulou – Scene illumination as an indicator of image manipulation, in Proc. Inf.
Hiding Workshop, vol. 6387. 2010, pp. 66 –80.
38
pentru spații de culori specifice, acest pas transformă iluminatul hărții în diferite reprezentări de spațiu de
culoare pentru mai mult explorare și studiu.
Ei propun pentru a spori numărul de spații de culoare explorate pentru a captura cele mai mici nuan țe
prezente în astfel de hărți care nu sunt vizibile în reprezentarea originală a unei imagini transformate într -o
reprezentarea hărții iluminante. Considerăm laboratorul, HSV și spațiile de culoare RGB originale normalizate.
Ei au alese astfel de spații d e culoare, care sunt alegeri populare în imagine prelucrarea literaturii. Odată ce
defin im un spațiu de culoare, extragem toate fețele prezente în imaginea investigată utilizând o casetă de
restricționare manuală definită de utilizator.
3) Extragerea carac teristicilor din iluminatul hărții : De la fiecare față extrasă în pasul anterior,
trebuie să găsim indicatori care să permită identificarea imaginilor îmbinate . Aceste informații sunt prezente
în diferite proprietăți vizuale (de exemplu, textura, forma, cu loarea) și devine detectabil atunci când
transformăm imagin ea suspectă într-o reprezentare iluminată a hărții.
Textura, de exemplu, ne permite să caracterizăm fețele prin care iluminatoarele sunt dispuse în mod
similar atunci când se compară doua fe țe. În mod diferit față de proprietățile de textură, sunt prezente
proprietățile formei în iluminatul de chipuri false, uneori, au intensități distincte ale pixelilor în comparație cu
formele prezente în iluminatul ale fețelor care aparțin imaginii analizate inițial.
În acest moment, este important să subliniem faptul că iluminatul hărțil or sunt estimate dintr -o
subdiviziune a spațiului imaginii (superpixel), care pot, într -o oarecare măsură, să influențeze textura și
performanțele descriptorilor de formă.
Potri vit Riess și Angelopoulou, atunci când hărțile iluminate sunt analizate de către un expert pentru
detectarea falsurilor, principal a caracteristică observată este culoarea. Astfel, în această metodă, ei au decis
pentru a adăuga tehnici de descriere a culori i, extrase din spații iluminate transformate, ca un indiciu vizual
important pentru a fi codificat în procesul de descriere. Descrierea de culoare consideratătehnicile sunt ACC,
BIC, CCV și LCH.
ACC este o tehnică bazată pe corelograme de culoare și codifi că informațiile spațiale ale imaginii.
Această tehnică de descriere a culorii este foarte robust atunci când se ocupă de schimbări în aspect și formă,
informații care sunt reprezentate indirect într -o hartă iluminată , permițându -le să compar e fețele în dif erite
poziții. BIC captează proprietățile de graniță și interioară într -o imagine și le codifică într -o histogramă
cuantificată. CCV este o tehnică bine cunoscută pe bază de segmentare a culorilor adesea folosit ă ca bază în
mai multe analize. LCH este o te hnică de descriere a culorii locale, care codifică distribuțiile de culoare ale
regiunilor de dimensiuni fixe ale imagin ii. Acest lucru poate fi util atunci când se compară regiuni similare (de
ex. fruntea) extrasă din harta luminată în două fețe diferite.
4) Caracteristica față și caracteristicile perechelor asociate : date că în această tehnică avem în
vedere mai multe variante de spații iluminate transformate, reprezentări de spațiu de culoare și descriere 𝐷, 𝐷
este un descriptor de imagine alcătuit din triple t (spațiul transformat al spațiului iluminat , reprezentarea
spațiului de culoare și tehnica de descriere).
În cele din urmă, pentru a detecta un fals, ei spun c ă trebuie să analizăm dacă partea suspectă a
imaginii este compatibilă cu alte părți din aceeași imagine. Mai exact, atunci când încercăm să detectăm falsuri
implicând compozite de fețe ale oamenilor, trebuie să comparăm dacă o față suspectă este în concordanță cu
alte fețe din imagine. În cel mai rău caz, toate fețele sunt suspecte și trebui e să fie în comparație cu ceilalți.
Astfel, în loc de a analiza fiecare imagine se confruntă separat, după construirea 𝐷 pentru fiecare față a
imaginii, codificăm vectorii caracteristicilor fiecărei perechi de fețe de subanaliza într -un vector caracterist ic
𝑃, construit direct prin suprapunerea a doi vectori caracteristic i 𝐷.
39
3.3.3 Clasificarea perechilor de fețe
În această secțiune, autorii metodei prezintă detalii despre etapele clasificării . Atunci când utilizați
diferi te hărți iluminante , spații de c uloare și tehnici de descriere, întrebarea evidentă este cum să selectați
automat cele mai importante pentru a păstra și combina pentru îmbunătățirea performanței de clasificare. În
acest scop, luăm avantajul selecției clasificatorului și a cadrului de fuz iune propus de Faria10.
Fie 𝐶 un set de clasificatori în care fiecare clasificator 𝑐𝑗∈ 𝐶 (1 <𝑗 ≤ | 𝐶 |) este compus dintr -o
trupă care cuprinde un altgoritm de învățare (de exemplu, Naïve Bayes, k -Neighbors Neighbors și
SupportVector Machines) și u n singur descriptor de imagine 𝐷.
Inițial, toți clasificatorii 𝑐𝑗∈ 𝐶 sunt instruiți asupra elementelor a unui set de antrenament e 𝑇. În
continuare, rezultatele fiecărui clasificator : pesetul de validare 𝑉, diferit de 𝑇, este calculat și stocat într – o
matrice 𝑀𝑉, unde | 𝑀𝑉 | = | 𝑉 | × | 𝐶 | și | 𝑉 | este numărul de imagini dintr -un set de validare 𝑉 și | 𝐶 |
este numărul de clasificatori. Probele efective de formare și validare sunt cunoscute ca prioritate .
În cele ce urmează, este folos it ca intrare pentru a selecta un set 𝐶∗ ⊂ 𝐶 a clasificatorilor care sunt
candidați buni pentru a fi combinați. În acest proces de selecție, cinci măsuri de diversitate sunt calculate pentru
a atinge gradul de acord / dezacord între toți clasificatori i disponibili în 𝐶. În cele din urmă, 𝐶∗, care conține
cel mai mult proiectorii clasificatori și care satisfac un prag 𝑇 definit selectat. 𝑇 este un prag definit în termeni
de medie cu exactitate în rândul tuturor clasificatorilor folosind setul de validare 𝑉.
Având în vedere un set de vectori 𝑃, extrași din noi imagini 𝐼, vom folosi fiecare clasificator 𝑐𝑘∈
𝐶∗ (1 <𝑘 ≤ | 𝐶∗ |) ladetermină eticheta (falsă sau reală) a acestor vectori de caracteristici, producerea
rezultatelor 𝑘. Rez ultatele 𝑘 sunt folosite ca intrări pentru tehnica de fuziune (în acest caz, votul majoritar)
care ia decizia finală privind definirea fiecărei caracteristici pereche , vectorul 𝑃 extras din 𝐼.
Figura 3.10 prezintă o vedere granulară a acestei detectări de cadru fals . Figura 3.10- (2) prezintă
întreaga selecție a clasificatorului și procesul de fuziune.
Figura 3.10 – Proiectarea cadrului de detectare a îmbinării imaginilor.
10 F. A. Faria, J. A. dos Santos, A. Rocha, and R. da Silva Torres – A framework for selection and fusion of
pattern classifiers in multimedia recognition . Pattern Recognit. Lett., vol. 39, no. 4, pp. 52 –64, Apr. 2014.
40
3.3.4 Clasificarea falsului
Având în vedere o imagine care conține 𝑞 oameni, es te caracterizată cu un set 𝑆={𝑃1,𝑃2,· · ·,𝑃𝑚}
fiind 𝑚 = 𝑞 × (𝑞−1)
2 și 𝑞 ≥ 2. Autorii adoptă o strategie care prioritizează detectarea falsurilor. Prin urmare,
dacă orice vector caracteristic pereche 𝑃 ∈ 𝑆 este clasificat ca fals, clasific ând imaginea ca fiind falsă. În caz
contrar, îl clasifică ca original sau non -fals.
3.3.5 Detectarea falsurilor
Având în vedere o imagine pe care a u clasificat -o drept falsă, perfecționează o analiză care arată ce
parte a imaginii este rezultatul un ei acomp oziții. Acest pas a fost trecut cu vederea în lucrarea propusă de
Carvalho11. Deoarece vom găsi perechea cu cea mai mare probabilitate în loc de fața cu cea mai mare
probabilitate de a fi falsă , vor proceda în felul următor: beneficiem de estimările harții iluminate pe principii
diferite (bazate pe statistici și bazate pe fizică) , motivul fiind tehnicile menționate mai sus care pot produce
harta iluminată cu aspecte diferite pentru aceeași imagine. Într -o trecere , analizele hprșii iluminate ale acestor
două modele diferite, au realizat că aspectul în ceea ce privește culorile în harta iluminată generate pentru fețe
curate sunt foarte asemănătoare în GGE și IIC. Cu toate acestea, atunci când o imagine conține o față falsă,
diferența (în ceea ce privește aspect ul culorii) între GGE și IIC este că fața falsă este mărită. Figura 4.10
prezintă un exemplu de acest lucru.
Pe baza acestei observații de culoare, având în vedere o imagine pe care o avem deja clasificat ă ca
fals, ei propun, pentru fiecare față 𝑓, un des criptor 𝑓𝑣𝑟
𝑓𝑣𝑟=|𝑓𝑐𝐼𝐼𝐶−𝑓𝑐𝐺𝐺𝐸| (3)
unde 𝑓𝑐𝐼𝐼𝐶 și 𝑓𝑐𝐺𝐺𝐸 sunt vectori extrași multidimensionali, folosind un anumit descriptor de imagine
color (de exemplu, BIC, ACC etc), de la hărțile IIC și GGE.
Clasificăm ca rezultat , vectorul multidimensional de funcții 𝑓𝑣𝑟 și colectarea celor două clase de
ieșire , probabilitățile acestui vector de intrare.
11 T. J. de Carvalho, C. Riess, E. Angel opoulou, H. Pedrini, and A. Rocha – Exposing digital image forgeries
by illumination color classification . IEEE Trans. Inf. Forensics Security, vol. 8, no. 7, pp. 1182 –1194, Jul. 2013.
41
Figura 3.11 – Diferențele dintre hărțile iluminante ICC și GGE. Regiunile e videnți ate exemplifică modul în
care, diferența dintre ICC și GGE , este mări rea imagini false. În special, obrazul drept al chipului fals
variază de la o culoare portocal ie (în IIC) până la o culoare albăstruie (în GGE). Aceasta este o schimbare
drastică. O regiune a semănăto are a unei fețe n ormale, care variază de la o intensitate de albastru la alta.
Acest tip de variație poate fi capturat ă prin diferența dintre culoar i descriptori, care ne îndrumă spre un nou
mod de a identifica cel mai probabil fața falsă .
42
Capitolul 4. Depistarea zonel or clonate din imagine
Propun o detecție a falsificării imaginii bazată pe modelul binar local (LBP) și cel mai semnificativ
bit (MSB) ca extracție de caracteristici și distanțe histograme ca procedură de potrivire. În figura 4.2, de la
pagina 4 4, este preze ntată schema bloc generală a metodei propuse.
În secțiunile următoare, fiecare componentă din diagrama bloc este descrisă în detaliu.
4.1 Descompune imaginea color în componentele R, G și B.
Pentru a utiliza separat informațiile de culoare, mai întâi imagi nea de intrare este descompusă în
canalele R (roșu), G (verde) și B (albastru).
Un exemplu de imagine color descompusă în componentele R (roșu) , G (verde) , B (albastru) este
prezentat în Figura 4.1.
Figura 4.1 – Exemplu de imagine descompusă în culori R. G.B.
4.2 Împărțiți fiecare componentă în blocuri suprapuse
În a doua etapă, cele trei canale de culoare vor fi divizate în blocuri, fiecare bloc are o dimensiune
de 𝑀×𝑀 pixel cu suprapunere de 𝑁×𝑁 pixeli. Numărul total de blocuri pentru fiecare canal d e culoare de
dimensiune 𝑆×𝑆 poate fi calculat folosind următoarea formulă:
Numărul total de blocuri = [(𝑆−𝑀
𝑁)+1]×[(𝑆−𝑀
𝑁)+1] (1)
De exemplu, dacă dimensiunea imaginii este 200×200, dimensiunea blocului este de 20×20, iar
dimensiunea suprap usă este de 10×10, atunci numărul de blocuri din fiecare componentă de culoare este
[(200−20
10)+1]×[(200−20
10)+1]=19×19=361
43
Figura 4.2 – Diagrama de bază după care se bazează metod a propus ă
Descompunem
imaginea în
componente RGB
Descompunem
componenta în blocuri
suprapuse
Se calculează
histograma LBP a
fiecărui bloc
Găsim distanța fiecărei
perechi de blocuri și le
sortăm în ordine
ascendentă
Păstrăm o cincime din
distanțele găsiteDescompunem
componenta în blocuri
suprapuse
Se calculează
histograma LBP a
fiecărui bloc
Găsim distanța fiecărei
perechi de blocuri și le
sortăm în ordine
ascendentă
Păstrăm o cincime din
distanțele găsite
Păstrăm perechile de
blocuri care sunt
comune în
componentele R, G, B
Îndepărtăm perechile
de blocuri adiacente
Păstrăm numai acele
perechi de blocuri care
au o distribuția
similară cu 3 MSB
Marcăm aceste
perechi de blocuri cu
alb pentru vizualizare
Descompunem
componenta în blocuri
suprapuse
Se calculează
histograma LBP a
fiecărui bloc
Găsim distanța fiecărei
perechi de blocuri și le
sortăm în ordine
ascendentă
Păstrăm o cincime din
distanțele găsite
44
4.3 Calculați histograma LBP a fiecărui bloc
LBP este un t ip de caracteristică utilizat pentru clasificarea în viziunea unui computer. De asemenea,
operatorul de analiză a texturii LBP este definit ca o măsură de textură invariantă la scară gri, derivată dintr -o
definiție generală a texturii într -o vecinătate loc ală. Forma actuală a operatorului LBP este destul de diferită
de versiunea sa de bază. Definiția originală este extinsă la cazuri înrudite și au fost dezvoltate o serie de
extensii.
Operatorul LBP original formează etichete pentru pixelii de imagine prin p ragul de vecinătate 3×3
a fiecărui pixel cu valoarea centrală și luând în considerare rezultatul ca număr binar. Histograma acestor 28=
256 etichete diferite , poate fi apoi utilizată ca descriptor de textură. Formal, dat fiind un pixel la (𝑥𝑐,𝑦𝑐),
rezultatul LBP poate fi exprimat în formă zecimală ca:
𝐿𝐵𝑃𝑃,𝑅(𝑥𝑐,𝑦𝑐)=∑𝑠(𝑖𝑝−𝑖𝑐)2𝑝𝑝−1
𝑝=0,𝑢𝑛𝑑𝑒 𝑠(𝑥)={1,𝑑𝑎𝑐ă 𝑥≥0
0,𝑎𝑙𝑡𝑓𝑒𝑙 (2)
Unde 𝑖𝑐 și 𝑖𝑝 sunt valorile nivelului de gri ale pix elilor centrali și ai pixelilor înconjurători ai lui 𝑃
din zona cercului cu o rază 𝑅, în cazul inițial 𝑃=8 și 𝑅=1, (după cum se arată în figura 5.3).
Figura 4.3 – Calculul LBP -ului original
Valoarea pixelului central este scăzută de la fiecare dintre cei opt vecini ai săi. Dacă rezultatul de
scădere este pozitiv sau egal cu zero este codat cu 1, altfel este codat cu 0. Cele opt valori binare sunt
concatenate în sensul acelor de ceasornic pentru a forma un număr binar pe 8 biți. Valoarea zecimală
cores punzătoare numărului binar generat este apoi utilizată ca etichetă pentru pixelul dat.
Limitarea operatorului de bază LBP sunt micile zone 3×3 care nu pot capta caracteristici dominante
cu structuri de mari dimensiuni. Apoi, operatorul a fost extins pentru a folosi zone de dimensiuni diferite.
Folosind zonele circulare și interpolând bilinear valorile pixelilor permit orice rază și număr de pixeli din
vecinătate. Vom folosi ecuația de mai sus, care este aceeași ecuație utilizată în cazul inițial, dar diferi te valori
ale 𝑃 și 𝑅. Figura 4.4 prezintă câteva exemple ale operatorului LBP extins.
Un exemplu de compilație
LBP
Pragul de model = 11110001
(de la dreapta la stânga )
Greutăți 1 + 16 + 32 + 64 +
128 LBP = 241
45
Figura 4.4 – Exemple ale operatorului LBP extins.
Histograma LBP normalizată este utilizată ca vector caracteristic pentru blocul corespunzător.
Histograma are 256 de nuclee care corespund valorilor de 256 de gri. Motivul din spatele folosirii LBP este că
sunt interesat de textura, care rămâne similară în zona copiată și lipită, chiar și după post -procesarea aplicată
după falsificare. Prin urmare, modelul texturii poat e fi un bun indicator de detectare a falsificării.
Un model uniform este o altă extensie al operatorului LBP original. S -a constatat că anumite modele
conțin mai multe informații decât altele, astfel încât este posibil să se folosească un subset mic din nu mărul
total de modele 2𝑝 pentru a descrie orice textură. Acest subset de modele este numit șabloane uniforme și este
notat ca 𝐿𝐵𝑃(𝑃,𝑅)𝑈2.
Pentru orice model binar local, acesta poate fi considerat ca neuniforme, dacă conține cel mult două
tranziții de biți de la 0 la 1 sau invers. De exemplu, 00000000 (0 tranziții), 11001111 (2 tranziții) și 01110000
(2 tranziții) sunt uniforme, în timp ce 11001001 (4 tranziții) și 01010010 (6 tranziții) nu sunt uniforme. Se
observă că în imaginile texturale, modelele uniforme reprezintă până la aproape 90,6%, 85% și 70% din toate
modelele atunci când sunt folosite zonele (8,1), (8,2) și respectiv (16,2). În calculul histogramei LBP, toate
modelele uniforme au nuclee separate în histogramă, în timp ce toate mod elele neuniforme sunt atribuite unui
singur nucleu gol .
46
Figura 4.5 – Ilustrație a similitudinii histogramei LBP între blocurile copiate și lipite și diferența dintre
piesele care nu sunt copiate în trei componente color.
Figura 4.5 oferă un exemplu de hi stograme LBP de patru blocuri, dintre care trei reprezintă copiere,
iar cealaltă nu este copiată în trei componente color. Pentru simplificare, blocurile sunt desenate ca ne –
47
suprapuse. Din figură vedem că blocurile copiate (numărul blocului 23, 28, 63) au histograme LBP similare
într-o componentă de culoare, în timp ce gazda numărului blocului 79 este total diferită.
4.4 Găsim distanțele fiecărei perechi de blocuri
Există mai multe moduri de a calcula diferența (distanța) dintre blocurile imaginii. În aceas tă
secțiune, ne vom concentra pe distanța de la metoda Kolmogrov -Smirnov, dat fiind faptul că ne -a dat cel mai
bun rezultat în acest algoritm, alte distanțe cum ar fi metricul blocului urban și cel euclidian vor fi menționate
doar ca referințe.
4.4.1 Algor itmul de distanță Kolmogorov -Smirnov
În statistici, testul Kolmogorov -Smirnov (testul KS) este un test nonparametric pentru egalitatea
distribuțiilor de probabilități unidimensionale, care pot fi utilizate pentru a compara o mostră cu o distribuție
de prob abilitate de referință (test KS cu un eșantion) sau pentru a compara două mostre (testul KS cu două
eșantioane). Statistica Kolmogorov -Smirnov cuantifică o distanță între funcția de distribuție empirică a
eșantionului și funcția de distribuție cumulată a d istribuției de referință sau între funcțiile de distribuție
empirică a două eșantioane. Distribuția nulă a acestei statistici se calculează în ipoteza nulă că eșantioanele
sunt extrase din aceeași distribuție (în cazul celor două eșantioane) sau că eșantio nul este extras din distribuția
de referință (în cazul unui singur eșantion). În fiecare caz, distribuțiile considerate în ipoteza nulă sunt
distribuții continue, dar ele sunt nerestricționate.
În testul cu două eșantioane, ipoteza nulă 𝐻0 este aceea c ă două probe sunt extrase din aceeași
distribuție, iar ipoteza alternativă 𝐻𝑎 este aceea că acestea sunt extrase din diferite distribuții.
Fie 𝑓𝑛1(𝑥) și 𝑓𝑛2(𝑥) două histograme (eșantioane) de mărime 𝑛1 și 𝑛2 trasate din două funcți i de
densitate continuă, 𝑓1(𝑥) și respectiv 𝑓1(𝑥). Ipoteza nulă, 𝐻0 și ipoteza alternativă, 𝐻𝑎, sunt:
{𝐻0: 𝑓1(𝑥)=𝑓2(𝑥),−∞≤𝑥≤∞
𝐻𝑎: 𝑓1(𝑥)≠𝑓2(𝑥),−∞≤𝑥≤∞ (3)
Putem calcula funcția de distribuție cumulată empirică (ECDF), 𝐹𝑛1(𝑥) și 𝐹𝑛1(𝑥) ca:
𝐹𝑛1(𝑥𝑟)=∑𝑓𝑛1(𝑥)𝑥𝑟
𝑥=𝑥0 (4)
𝐹𝑛2(𝑥𝑟)=∑𝑓𝑛2(𝑥)𝑥𝑟
𝑥=𝑥0 (5)
Statisticile de testare K -S, 𝐷, sunt definite ca distanța maximă absolută dintre cele d ouă ECDF:
𝐷=max
𝑥|𝐹𝑛1(𝑥)−𝐹𝑛2(𝑥)| (6)
Kolmogorov și Smirnov au arătat că valoarea 𝑝-bidirecțională poate fi aproximată ca:
𝑄𝐾−𝑆(𝜆𝐾−𝑆)=2∑(−1)𝑗−1exp (−2𝑗2𝜆𝐾−𝑆2)∞
𝑗=1 (7)
48
Unde:
𝜆𝐾−𝑆=[√𝑁𝑒+0.12+0.12
√𝑁𝑒]∙𝐷 (8) 𝑁𝑒=𝑛1∙𝑛2
𝑛1+𝑛2 (9)
Testul este neparametric prin faptul că nu se face nicio ipoteză privind distribuția variabilelor sau
distribuția între cele două funcții de densitate empirică.
Statisticile test ului K -S (adnotarea Denumită 𝐷) calculează diferența absolută maximă dintre
funcțiile de distribuție cumulativă empirică (Axa y) a două Histograme (Axa x) pentru a determina dacă acestea
sunt extrase din aceeași distribuție sau nu, așa cum se arată în fig ura 4.6.
Figura 4.6 – Rezultatul comparației K -S
În programul propus , voi calcula distanțele pentru fiecare pereche de blocuri într -un singur canal de
culoare (R, G, B) utilizând algoritmul Kolmogorov Smirnov, deoarece datele de intrare pentru acest algo ritm
vor fi luate din pasul anterior (ieșirea din histograme).
Dacă avem 19×19 blocuri (361 blocuri, ca exemplu, vezi secțiunea 4.2), numărul total de calcul al
distanțelor dintre orice perech e de blocuri ne va da un rezultat de 64980 distanțe utilizând fo rmula de permutare
după cum urmează:
Permutare =(361)!
[(361−2)!∗(2!)]=64,980
49
Tabelul 4.1 prezintă o mostră a modului în care rezultatul va fi:
Combinarea tuturor blocurilor aplicabile .
Numărul primului bloc Numărul al -2lea bloc Distanța calculată
1 2 0.0034
1 3 0.0072
1 4 0.0123
… … …
64,978 64,979 0.0321
64,978 64,980 0.0012
64,979 64,980 0.0078
Tabelul 4.1 – Combinarea tuturor blocurilor aplicabile
4.5 Sortarea distanței în ordine crescătoare
După calcularea distanțelor pentru fiecare perech e de blocuri pentru toate histogramele, luăm în
considerare o valoare de prag de aproximativ 1/5 din combinațiile aplicabile, ceea ce înseamnă că vom rearanja
distanțele calculate în ordine ascendentă și vom păstra numai primele distanțe din distanțele tot ale.
Rezultatul al acestei etape poate fi reprezentat conform tabelului 4.2 (Aplicabil pentru toate
histogramele cu trei culori):
Sortarea distanțelor
Numărul primului bloc Numărul al -2lea bloc Distanța calculată
(Sortate în ordine ascendentă)
98 100 0.0012
145 276 0.0034
332 312 0.0072
99 100 0.0078
176 47 0.0123
356 34 0.0321
… … …
Tabelul 4.2 – Sortarea distanțelor
50
4.6 Verificarea existența unor perechi de blocuri
Ca o măsură de potrivire, păstrăm doar perechile de blocuri care există doar în c ele trei liste de
distanțe sortate, adică verificăm dacă există o pereche de blocuri (de exemplu Blocul 4 și Blocul 60) există
toate cele trei distanțe din cele trei culori; dacă există, o păstrăm, altfel eliminăm acea pereche din listă.
După aplicarea ace stei etape, listele sortate vor fi reduse dramatic. Să considerăm că găsim patru
blocuri existente în toate cele trei liste sortate, rezultatul va fi la fel ca în Tabelul 4.3.
Verificarea existența unor perechi de blocuri
Numărul primului bloc Numărul al -2lea bloc Distanța calculată
(Sortate în ordine ascendentă)
169 100 0.0012
113 21 0.0034
146 310 0.0072
29 144 0.0078
Tabelul 4.3 – Verificarea existența unor perechi de blocuri
Blocurile existente găsesc o imagine preliminară a blocurilor copiate și lipite în imaginea testată.
4.7 Extragerea MSB a fiecărui canal de culori din blocurile filtrate
În acest pas, extragem cei trei MSB (cei mai semnificativi biți) din fiecare canal de culoare pentru
blocurile sortate și filtrate din pasul anterior.
Ne conc entrăm pe MSB, deoarece MSB sunt mai puțin afectate de post -procesarea falsului de
imagini. De exemplu, dacă adăugăm zgomot pentru a ascunde urme de fals, nu va crea prea multe distorsiuni
vizuale și, prin urmare, nu va schimba MSB -urile.
După extragerea c elor trei MSB -uri, fiecare canal de culoare va rămâne în aceeași dimensiune, dar
fiecare element va fi mărginit în intervalul de la 0 la 7.
4.8 Calculul histogramei fiecărui bloc în toate cele trei culori (Blocurile filtrate)
Prin calcularea histogramei fi ecărei perechi de blocuri în toate cele trei canale de culoare, vom
extrage variația tonală a fiecărui bloc care va reprezenta distribuția de pixeli în fiecare ton în blocul utilizat.
Deoarece am folosit doar MSB -ul fiecărui canal de culoare, baza de calcu l a histogramelor va fi de
8, ceea ce înseamnă că toți pixelii ( 20×20) din fiecare bloc (Blocurile filtrate) vor fi distribuite pe tonul a 8
nivele, fiecare bloc după aplicarea funcției de histogramă pe ea, va consta din 8 elemente.
Calculăm histogramele M SB pentru blocurile 1 și 2 ale fiecărei perechi de blocuri.
51
4.9 Găsirea distanței între o pereche de blocuri în toate cele trei culori după
calculul histogramelor MSB -urilor
În acest pas, se calculează distanțele dintre blocurile filtrate de la primul și a l doilea utilizând
histogramele care se bazează pe valorile MSB, scopul căruia este găsirea unui alt criteriu pentru eliminarea
blocurilor nedorite sau pentru eliminarea falsurilor pozitive (a doua fază de filtrare).
4.10 Eliminarea blocurilor nedorite
Folosind al doilea criteriu de filtrare bazat pe distanțele calculate între blocurile 1 și 2 din etapa
anterioară (provenite din valorile MSB), luăm în considerare o valoare de prag pentru a elimina blocurile
nedorite.
Prin utilizarea metodei de încercare și eroare, am constatat că fiecare imagine are valoarea pragului
unic, care va fi explicată în detaliu în secțiunea cu rezultatele experimentale.
4.11 Umplerea blocurilor (comune) supraviețuitoare cu culoarea albă
În ultimul pas, reflectăm rezultatele pe imag inea de test ca reprezentare grafică utilizând culoarea
(poate fi orice altă culoare) pentru a da o reprezentare vizuală a rezultatelor programului.
Rezultatul final poate fi prezentat ca în figura 4.7.
Figura 4.7 – Exemplu de rezultat final.
52
Capitolul 5. Rezultate și discuții experimentale
Au fost efectuate mai multe experimente pentru a evalua metoda de detectare a falsificării imaginii.
Pentru experimente, am folosit Matlab R2018a, sistem pe 64 de biți pentru a finaliza experimentele prin metoda
propusă. Specificația hardware a fost 2,6 GHz Intel Core i7 și 8 GB RAM.
5.1 Setul de imagini
Trei tipuri diferite de falsuri, care sunt (a) doar copiere -mișcare fără rotire, scalare sau reflexie, (b)
rotație atunci când partea copiată este rotită înainte de l ipire și (c) sunt aplicate pe 30 de imagini originale.
Imaginile originale sunt clasificate pe baza conținutului, în cazul imaginilor cum ar fi animale, clădiri, peisaje
naturale și obiecte.
În următoarele secțiuni, prezentăm rezultatele experimentelor pe baza tipului de falsuri.
5.2 Rezultatele experimentului pentru tipul falsificat doar copiere -mișcare
Figura 5.1 prezintă exemple ale imaginilor de copiere, în cazul în care partea lipită nu are rotire. De
asemenea, nu se aplică post -procesarea imaginii. Im aginea reală se obține prin scăderea imaginii falsificate din
imaginea originală și apoi transformarea acesteia în alb -negru. Această imagine cu adevărat este utilizată
pentru a determina corectitudinea metodei.
Figura 5.1 – Exemplu pentru tipul falsific at doar copiere -mișcare
(Imaginea originală / Imaginea falsificată doar prin copiere -mișcare / Rezltatul zonei false)
5.3 Rezultate experimentale pentru adăugarea zgomotului Gauss alb ca post –
procesare
Zgomotul Gaussian alb (WGN) este adăugat ca o etapă de post-procesare pentru a ascunde urmele
de fals și metoda propusă este evaluată în această condiție. Pe măsură ce falsificatorii adaugă o cantitate foarte
mică de zgomot, astfel încât vizibilitatea să nu fie distrasă, am efectuat experimente cu cantitate m ică de
zgomot care este cuantificată de varianța de 0,01.
53
Figura 5.2 – exemplu de adăugare a WGN cu varianță 0,01 ca post -procesare, după falsificarea de tip doar
copiere -mutare (Imaginea originală / Imaginea falsificată doar prin copiere -mișcare / Adăug are WGN /
Rezltatul zonei false)
5.4 Rezultatele experimentului pentru tipul de falsificare a rotației
Figur a 5.3 arată un exemplu de copiere a imaginilor cu o rotașie de 100. De asemenea, nici o post –
procesare nu este aplicată imaginii.
Referindu -se la re zultatele obținute în cazul copierii cu rotație, poate fi cel mai grav scenariu pentru
metoda propusă de detectare a detectării falsificării.
Figura 5.3 – Exemplu de copiere a imaginilor cu o rotașie de 100
În secțiunea anexe , de la sfârșitul lucrării, sunt prezentate algoritmii pe care i -am folosit pentru tema
propusă (3 la număr: algoritmul principal, de comandă; algoritmul cu LBP și algoritmul de distanță
Kolmogorov -Smirnov), fiind atașate și explicații/ comentarii la fiecare comandă.
54
Concluzii
În general și în timpul lucrului pentru acest proiect am încheiat următoarele:
– Utilizarea modelului binar local poate da o idee bună (preliminară) despre partea copiată -lipită în
imaginea manipulată. În consecință, am folosit -o ca o fază de filtrare.
– Utilizarea MSB dă o mai bună potrivire decât LSB în extragerea funcțiilor de imagine, așa că am
folosit -o ca o a doua etapă de filtrare pentru a elimina capacitatea de detectare a falsificării.
– Finalizarea distanțelor dintre o pereche de blocuri poate fi impr egnată folosind algoritmi diferiți; în
acest proiect am folosit algoritmul " Kolmogorov Smirnov".
– Programul se bazează pe luarea în considerare a unei valori de prag manuale . Pentru a doua etapă
de filtrare (utilizând histograme MSB), vom considera acest punct drept o lucrare viitoare pentru automatizarea
acestui proces folosind un anumit algoritm.
Zgomotul în imaginile falsificate, adăugarea unei bucăți copiate și rotite în imaginea falsă, pot crea
probleme la unele imagini, rulând programul propus.
Un pr ogram ideal și complet ar fi să conțină teste pentru orice situație (cele enumerate mai sus, în
Capitolul 4 și multe altele).
55
Bibliografie
1 The Museum of Hoaces . http://hoaxes.org/photo_database , accesat la data 01.06.2018
2 Fotografie preluată de pe adevarul.ro, accesat la data 05.06.2018
3 Poză preluată de pe pinterest.ro, accesat la data 10.06.2018
4 Khosro Bahrami, Alex C. Kot, Leida Li și Haoliang Li – Blurred Image Splicing Localization by
Exposing B lur Type Inconsistency . https://www.researchgate.net , accesat la data 23.05.2018.
5 Gang Cao, Yao Zhao, Rongrong Ni și Xuelong Li – Contrast Enhancement -Based Forensicsin
Digital Images . https://www.researchgate.net , accesat la data 23.05.2018
6 M. C. Stamm and K. J. R. Liu – Forensic detection of image manipulation using statistical
intrinsic fingerprints . https://www.resear chgate.net , accesat la data 23.05.2018
7 G. Schaefer and M. Stich, “UCID – An uncompressed colour image database,” in Proc. SPIE,
Storage and Retrieval Methods and Applications for Multimedia , vol. 5307, San Jose, CA, USA,
2004, pp. 472 –480
8 Tiago Carval ho, Fábio A. Faria, Hélio Pedrini, Ricardo da S. Torres și Anderson Rocha –
Illuminant -Based TransformedSpaces for Image Forensics . https://www.researchgate.net ,
accesat la data 23.05.2018
9 C. Riess and E. Ange lopoulou – Scene illumination as an indicator of image manipulation, in
Proc. Inf. Hiding Workshop, vol. 6387. 2010, pp. 66 –80.
10 F. A. Faria, J. A. dos Santos, A. Rocha, and R. da Silva Torres – A framework for selection and
fusion of pattern classifiers in multimedia recognition . Pattern Recognit. Lett., vol. 39, no. 4, pp.
52–64, Apr. 2014.
11 T. J. de Carvalho, C. Riess, E. Angelopoulou, H. Pedrini, and A. Rocha – Exposing digital image
forgeries by illumination color classification . IEEE Trans. Inf. F orensics Security, vol. 8, no. 7, pp.
1182 –1194, Jul. 2013.
Anexe
1.Algoritmul principal
%Ștergerea tuturor variabilelor
în spațiul de lucru MATLAB.
clear all
%Ștergerea ecranului MATLAB.
clc
BLOCK_S = 20;
OVERLAP_S = 10;
MSB_TH = 60;
%Citirea un ei imagini și salvarea
acesteia în variabila "imagine
originală".
original_image=imread('Original.j
pg');
% Decuparea imaginii citite cu
200×200 pixeli și salvarea
acesteia în variabila
'cropped_image'.
cropped_image =
imcrop(original_image,[0 0 200
200]);
imwrite(cropped_image,'Cropped.jp
g')
% Copiem o parte mică (40×40
pixeli) din imaginea decupată
(200×200 pixeli) pornind de la
pixelul # 100 pe axa x și pe axa
y.
image_copy=imcrop(cropped_image,[
90 90 39 39]);
% Inserăm imaginea copiată pe
imaginea tă iată pornind de la
pixelul # 20 pe axa x și pe axa y
for i=1:length(image_copy)
for j=1:length(image_copy)
for k=1:3
cropped_image(i+20,j+20,k)=image_
copy(i,j,k);
end
end
end
%Salvăm imaginea trucată
imwrite(cropped_im age,'forged.jpg
')
%Afișăm imaginea decupată și cea
trucată
subplot(1,2,1)
imshow(imread('cropped.jpg'))
xlabel('Imaginea originală
decupată')
subplot(1,2,2)
imshow(cropped_image)
xlabel('Imaginea trucată')
%Descompunem imaginea trucată în
culorile R, G & B .
R = cropped_image(:,:,1);
G = cropped_image(:,:,2);
B = cropped_image(:,:,3);
%Ștergem variabilele de care nu
mai avem nevoie
clear original_image
cropped_image image_copy1
image_copy
%–
% Împărțirea R, G & B în blocuri,
fiecare bloc are o dimensiune de
BLOCK_S cu suprapunere de
OVERLAP_S pixeli.
%–
%Folosim dimensiunea unui bloc de
40×40 pixeli
block_size = [BLOCK_S BLOCK_S];
%Dimensiunea de suprapunere este
20×20 pixeli
overlapping_size = [OVERLAP_S
OVERLAP_S];
tot_block_row = (( size(R, 1) –
BLOCK_S) / OVERLAP_S) + 1;
tot_block = tot_block_row *
tot_block_row;
tot_block_pair = tot_block *
(tot_block – 1) / 2;
retain_block_pair =
floor(tot_block_pair / 16);
startPos = 0: overlapping_size:
size(R, 1) – block_size;
%–
% Împărțim R în blocuri de
suprapunere
%–
Sub_R = cell(numel(startPos),
numel(startPos));
for i = 1:numel(startPos)
for j = 1:numel(startPos)
Sub_R{i,j} =
R(startPos(i)+(1:block_size),
startPos(j)+(1:block_size));
end
end
%–
% Găsirea histo gramei fiecărui
bloc pentru culoarea "Sub_R" prin
găsirea histogramei fiecărui
bloc.
%–
for i = 1:tot_block_row
for j = 1:tot_block_row
temp =
single(cell2mat(Sub_R(i,j)));
Hist_R{i,j}=lbp(temp);
end
end
%Ștergem variabilele de care nu
mai avem nevoie
clear Sub_R temp
%–
% Împărțim G în blocuri de
suprapunere
%–
Sub_G = cell(numel(startPos),
numel(startPos));
for i = 1:numel(startPos)
for j = 1:numel(startPos)
Sub_G{i,j} =
G(startPos(i)+(1:block_size),
startPos(j)+(1:block_size));
end
end
%–
% Găsirea histogramei fiecărui
bloc pentru culoarea "Sub_G" prin
găsirea histogramei fiecărui
bloc.
%–
for i = 1:tot_block_row
for j = 1:tot_block_row
temp =
single(cell2mat(Sub_G(i,j)));
Hist_G{i,j}=lbp(temp);
end
end
%Ștergem variabilele de care nu
mai avem nevoie
clear Sub_G temp
%–
% Împărțim B în blocuri de
suprapunere
%–
Sub_B = cell(numel(startPos),
numel(startPos));
for i = 1:numel(startPos)
for j = 1:numel(startPos)
Sub_B{i,j} =
B(startPos(i)+(1:block_size),
startPos(j)+(1:block_size));
end
end
%–
% Găsirea histogramei fiecărui
bloc pentru culoarea "Sub_B" prin
găsirea histogramei fiecărui
bloc.
%–
for i = 1:tot_block_row
for j = 1:tot_block_row
temp =
single(cell2mat(Sub_B(i,j)));
Hist_B{i,j}=lbp(temp);
end
end
%Ștergem variabilele de care nu
mai avem nevoie
clear temp Sub_B
%–
% Găsirea distanței pentru
fiecare pereche de blocuri în
culoarea 'Sub_R' și salvarea
rezultatului în variabila
'Distance_R'.
%–
% Convertirea Sub_R din forma
"Matrix" în forma "o singură
coloană".
Hist_R = reshape(Hist_R,1,[])';
counter=1;
x_R=1;
y_R=1;
index_R=1;
for i=1:(tot_block) -1 %
Contoar pentru indexul blocului
X.
for j=(i+1):( tot_block) %
Contoar pentru indexul blocului
Y.
temp =
kolmogorov_smirnov_distance(doubl
e(Hist_R{i,1}),
double(Hist_R{j,1}));
x_R(counter)=i;
y_R(counter)=j;
Distance_R(counter)=temp;
index_R(counter)=counter;
counter=counter+1;
end
end
R_Final=[index_R' x_R' y_R'
Distance_R'];
%Ștergem variabilele de care nu
mai avem nevoie
clear Hist_R temp x_R y_R
Distance_R index_R
%–
% Găsirea distanței pentru
fiecare pereche de blocuri în
culoarea 'Sub_G' și salv area
rezultatului în variabila
'Distance_G'.
%–
% Convertirea Sub_G din forma
"Matrix" în forma "o singură
coloană".
Hist_G = reshape(Hist_G,1,[])';
counter=1;
x_G=1;
y_G=1;
index_G=1;
for i=1:(tot_block) -1 %
Contoar pentru indexul blocului
X.
for j=(i+1):(tot_block) %
Contoar pentru indexul blocului
Y.
temp=
kolmogorov_smirnov_distance(doubl
e(Hist_G{i,1}),
double(Hist_G{j,1}));
x_G(counter)=i;
y_G(counter)=j;
Distance_G(counter)=temp;
index_G(counter) =counter;
counter=counter+1;
end
end
G_Final=[index_G' x_G' y_G'
Distance_G'];
%Ștergem variabilele de care nu
mai avem nevoie
clear Hist_G temp x_G y_G
Distance_G index_G
%–
% Găsirea distanței pentru
fiecare pereche de blocuri în
culoarea 'Sub_B' și salvarea
rezultatului în variabila
'Distance_B'.
%–
% Convertirea Sub_B din forma
"Matrix" în forma "o singură
coloană".
Hist_B = reshape(Hist_B,1,[])';
counter=1;
x_B=1;
y_B=1;
index_B=1;
for i=1:(tot_block) -1 %
Contoar pentru in dexul blocului
X.
for j=(i+1):(tot_block) %
Contoar pentru indexul blocului
Y.
temp=
kolmogorov_smirnov_distance(doubl
e(Hist_B{i,1}),
double(Hist_B{j,1}));
x_B(counter)=i;
y_B(counter)=j;
Distance_B(counter)=temp;
index_B(counter)=counter;
counter=counter+1;
end
end
B_Final=[index_B' x_B' y_B'
Distance_B'];
%Ștergem variabilele de care nu
mai avem nevoie
clear Hist_B temp x_B y_B
Distance_B index_B
%–
% Sortarea distanțelor în ordine
ascendentă pen tru Distance_R.
%–
R_Final=sortrows(R_Final,4);
%–
% Sortarea distanțelor în ordine
ascendentă pentru Distance_G.
%–
G_Final=sortrows(G_Final,4);
%–
% Sortarea distanțelor în ordine
ascendentă pentru Distance_B.
%–
B_Final=sortrows(B_Final ,4);
%–
% Păstrarea primelor 1/5 blocuri
perechi din totalul R_Final cu
indicii.
%–
R_Final=R_Final(1:retain_block_pa
ir,:);
%–
% Păstrarea primelor 1/5 blocuri
perechi din totalul G_Final cu
indicii.
%–
G_Final=G_Final(1:retain_block_pa
ir,:);
%–
% Păstrarea primelor 1/5 blocuri
perechi din totalul B_Final cu
indicii.
%–
B_Final=B_Final(1:retain_block_pa
ir,:);
%–
% Verificarea existenței oricăror
indici de perechi de blocuri
(Matched) în toate cele trei
liste sortate Final_R, Final_G &
Final_B.
%–
x=1;
temp=0;
for i=1:retain_block_pair
temp=R_Final(i);
for j=1:retain_block_pair
if
isequal(temp,G_Final(j))
for
k=1:retain_block_pair
if
isequal(temp,B_Final(k))
Matching_I ndices_R(x) = i;
%Salvarea indiciilor găsiți
Matching_Indices_G(x) = j;
Matching_Indices_B(x) = k;
x=x+1;
end
end
end
end
end
if
exist('Matching_Indices_R','var')
disp('Number of Existing
Indices :')
length(Matching_Indices_R)
%–
% Tăiem listele pentru a
păstra numai indicii potriviți.
%–
for w =
1:length(Matching_Indices_R)
Final_Result_R(w,1:4) =
R_Final(Matching_Indices_R(w),1:4
);
Final_Result_G(w,1:4) =
G_Final(Matching_Indices_G(w),1:4
);
Final_Result_B(w,1:4) =
B_Final(Matching_Indices_B(w),1:4
);
end
%Ștergem variabilele de care
nu mai avem nevoie
clear R_Final G_Final B_F inal
Matching_Indices_B
Matching_Indices_G
%–
% Găsirea MSB a primelor
blocuri finale selectate (MSB_R1,
MSB_G1 & MSB_B1).
%–
Final_Image=imread('forged.jpg');
nBins = [0:7];
for w =
1:length(Matching_Indices_R) %
Pornind de la primul bloc
selectat în culoarea R, G & B.
counter=1;
R1 =
(rem(Final_Result_R(w,2) -1 ,
tot_block_row)) * OVERLAP_S + 1;
R2 =
(ceil(Final_Result_R(w,2) /
tot_block_row) – 1) * OVERLAP_S +
1;
for i=R1:(R1+(BLOCK_S -1))
for j=R2:(R2+(BLOCK_S –
1))
MSB_RR1 =
bitget(Final_Image(i,j,1),8);
MSB_RR2 =
bitget(Final_Image(i,j,1),7);
MSB_RR3 =
bitget(Final_Image(i,j,1),6);
MSB_R1(w,counter)
= MSB_RR1*4 + MSB_RR2*2 +
MSB_RR3*1;
MSB_GG1 =
bitget(Final_Image(i,j,2),8);
MSB_GG2 =
bitget(Final_Image(i,j,2),7);
MSB_GG3 =
bitget(Final_Image(i,j,2),6);
MSB_G1(w,counter)
= MSB_GG1*4 + MSB_GG2*2 +
MSB_GG3*1;
MSB_BB1 =
bitget(Final_Image(i,j,3),8);
MSB_BB2 =
bitget(Final_Image(i,j,3),7);
MSB_BB3 =
bitget(Final_Image(i,j,3),6);
MSB_B1(w,counter)
= MSB_BB1*4 + MSB_BB2*2 +
MSB_BB3* 1;
counter=counter+1;
end
end
end
for w =
1:length(Matching_Indices_R)
Hist_R1{w}=histc(MSB_R1(w,:),nBin
s);
Hist_G1{w}=histc(MSB_G1(w,:),nBin
s);
Hist_B1{w}=histc(MSB_B1(w,:),nBin
s);
end
%– % Găsirea MSB a blocurilor
secundare selectate finale
(MSB_R2, MSB_G2 & MSB_B2).
%–
for w =
1:length(Matching_Indices_R) %
Pornind de la primul bloc
selectat în culoarea R, G & B.
counter=1;
R1 =
(rem(Final_Result_R(w,3) -1 ,
tot_block_row)) * OVERLAP_S + 1;
R2 =
(ceil(Final_Result_R(w,3) /
tot_block_row) – 1) * OVERLAP_S +
1;
for i=R1:(R1+(BLOCK_S -1))
for j=R2:(R2+(BLOCK_S –
1))
MSB_RR1 =
bitget(Final_Image(i,j,1),8);
MSB_RR2 =
bitget(Final_Image(i,j,1),7);
MSB_RR3 =
bitget(Final_Image(i,j,1),6);
MSB_R2(w,counter)
= MSB_RR1*4 + MSB_RR2*2 +
MSB_RR3*1;
MSB_GG1 =
bitget(Final_Image(i,j,2),8);
MSB_GG2 =
bitget(Final_Image(i,j,2),7);
MSB_GG3 =
bitget(Final_Image(i,j,2),6);
MSB_G2(w,counter)
= MSB_GG1*4 + MSB_GG2*2 +
MSB_GG3*1;
MSB_BB1 =
bitget(Final_Image(i,j,3),8);
MSB_BB2 =
bitget(Final_Image(i,j,3),7);
MSB_BB3 =
bitget(Final_Image(i,j,3),6);
MSB_B2(w,counter)
= MSB_BB1*4 + MSB_BB2*2 +
MSB_BB3*1;
counter=counter+1;
end
end
end
for w =
1:length(Matching_Indices_R)
Hist_R2{w}=histc(MSB_R2(w,:),nBin
s);
Hist_G2{w}=histc(MSB_G2(w,:),nBin
s);
Hist_B2{w}=histc(MSB_B2(w,:),nBin
s);
End
%–
% Găsirea dista nțelor între
blocurile selectate utilizând
rezultatele histogramei MSB.
%–
for w =
1:length(Matching_Indices_R)
% Găsirea distanțelor
între blocurile din MSB_R1 și
MSB_R2.
dR1_2(w) =
kolmogorov_smirnov_distance(doubl
e(cell2mat(Hist_R 1(w))),
double(cell2mat(Hist_R2(w))));
% Găsirea distanțelor
între blocurile din MSB_G1 &
MSB_G2.
dG1_2(w) =
kolmogorov_smirnov_distance(doubl
e(cell2mat(Hist_G1(w))),
double(cell2mat(Hist_G2(w))));
% Găsirea distanțelor
între blocurile din MSB_B1 și
MSB_B2.
dB1_2(w) =
kolmogorov_smirnov_distance(doubl
e(cell2mat(Hist_B1(w))),
double(cell2mat(Hist_B2(w))));
end
%–
% Verificarea blocurilor
filtrate pentru ștergerea
blocurilor nedorite.
%–
counter2 = 0;
for w =
1:length(Matching_Indices_R)
if ((dR1_2(w) < MSB_TH) &&
(dG1_2(w) < MSB_TH) && (dB1_2(w)
< MSB_TH))
counter2 = counter2 +
1;
Final_Result_R1(counter2) =
Final_Result_R(w,2);
Final_Result_R2(counter2) =
Final_Re sult_R(w,3);
end
end
%–
% Umplerea blocurilor comune
cu culoarea albă.
%–
Final_Image=imread('forged.jpg');
for w = 1:counter2 %
Completarea primului bloc în R, G
& B cu culoarea albă.
% White_Blocks_R(1,w) =
Final_Result_R(w,2);
R1 =
(rem(Final_Result_R1(w) -1 ,
tot_block_row)) * OVERLAP_S + 1;
R2 =
(ceil(Final_Result_R1(w) /
tot_block_row) – 1) * OVERLAP_S +
1;
R11(w) = R1;
R12(w) = R2;
R1 =
(rem(Final_Result_R2(w) -1 ,
tot_block_row)) * OVERLAP_S + 1;
R2 =
(ceil(Final_Result_R2(w) /
tot_block_row) – 1) * OVERLAP_S +
1;
R21(w) = R1;
R22(w) = R2;
% Blocurile din vecinătate în
perechi de blocuri, sunt
eliminate
N_dist(w) =
power(((R11(w) -R21(w))^2 +
(R12(w)-R22(w))^2), 0.5);
if (N_dist(w) > MSB_TH)
for
i=R11(w):(R11(w)+(BLOCK_S -1))
for
j=R12(w):(R12(w)+(BLOCK_S -1))
Final_Image(i,j,1)=255;
Final_Image(i,j,2)=25 5;
Final_Image(i,j,3)=255;
end
end
for
i=R21(w):(R21(w)+(BLOCK_S -1))
for
j=R22(w):(R22(w)+(BLOCK_S -1))
Final_Image(i,j,1)=255;
Final_Image(i,j ,2)=255;
Final_Image(i,j,3)=255;
end
end
end
end
figure
imshow(Final_Image)
xlabel('Imagine trucată')
else
disp(' Nu există nici un
rezultat!')
end
2.Algoritm cu LBP (model binar local )
function result = lbp(varargin) %
(imagine, rază, vecini,
cartografiere, modul)
% Verifică numărul de argumente
de intrare.
error(nargchk(1,5,nargin));
image=varargin{1};
d_image=double(image);
if nargin==1
spoints= [-1 -1; -1 0; -1 1; 0
-1; -0 1; 1 -1; 1 0; 1 1];
neighbors=8;
mapping=0;
mode='h';
end
if (nargin == 2) &&
(length(varargin{2}) == 1)
error('Argumentele de
intrare');
end
if (nargin > 2) &&
(length(varargin{2}) == 1)
radius=varargin{2 };
neighbors=varargin{3};
spoints=zeros(neighbors,2);
% Pasul cu rotirea
a = 2*pi/neighbors;
for i = 1:neighbors
spoints(i,1) = –
radius*sin((i -1)*a);
spoints(i,2) =
radius*cos((i -1)*a);
end
if(nargin >= 4)
mapping=varargin{4};
if(isstruct(mapping) &&
mapping.samples ~= neighbors)
error('Hartă
incompatibilă');
end
else
mapping=0;
end
if(nargin >= 5)
mode=varargin{5};
else
mode='h';
end
end
if (nargin > 1) &&
(length(varargin{2}) > 1)
spoints=varargin{2};
neighbors=size(spoints,1);
if(nargin >= 3)
mapping=varargin{3};
if(isstruct(mapping) &&
mapping.samples ~= neighbors)
error('Hartă
incompatibilă');
end
else
mapping=0;
end
if(nargin >= 4)
mode=varargin{4};
else
mode='h';
end
end
% Determinăm dimensiunile
imaginii de intrare.
[ysize xsize] = size(image);
miny=min (spoints(:,1));
maxy=max(spoints(:,1));
minx=min(spoints(:,2));
maxx=max(spoints(:,2));
% Dimensiune bloc, fiecare cod
LBP este calculat într -un bloc de
dimensiune bsizey * bsizex
bsizey=ceil(max(maxy,0)) –
floor(min(miny,0))+1;
bsizex=ceil(max(maxx,0)) –
floor(min(minx,0))+1;
% Coordonate de origine (0,0) în
bloc
origy=1-floor(min(miny,0));
origx=1-floor(min(minx,0));
% Dimensiunea minimă permisă
pentru imaginea de intrare
depinzând de raza operatorului
LBP utilizat.
if(xsize < bsizex || ysize <
bsizey)
error('Imagine de intrare prea
mică. Ar trebui să fie cel puțin
(2*rază+1) x (2*rază+1)');
end
% Calculăm dx și dy;
dx = xsize – bsizex;
dy = ysize – bsizey;
% Umplem matricea pixelului
central C.
C =
image(origy:origy+dy,origx:origx+
dx);
d_C = double(C);
bins = 2^neighbors;
% Inițializăm matricea
rezultatelor cu zerouri.
result=zeros(dy+1,dx+1);
% Calculăm imaginea codului LBP
for i = 1:neighbors
y = spoints(i,1)+origy;
x = spoints(i,2)+origx;
fy = floor(y); cy = ceil(y); ry
= round(y);
fx = floor(x); cx = ceil(x); rx
= round(x);
% Verificăm dacă este necesară
interpolarea.
if (abs(x – rx) < 1e -6) &&
(abs(y – ry) < 1e -6) % Nu este necesară
interpolarea, utilizăm tipuri de
date originale
N = image(ry:ry+dy,rx:rx+dx);
D = N >= C;
else
% Este necesară interpolarea,
utilizăm imagini de tip dublu
ty = y – fy;
tx = x – fx;
% Calculăm greutățile de
interpolare.
w1 = (1 – tx) * (1 – ty);
w2 = tx * (1 – ty);
w3 = (1 – tx) * ty ;
w4 = tx * ty ;
% Calculăm valorile pixelilor
interpolate
N =
w1*d_image(fy:fy+dy,fx:fx+dx) +
w2*d_image(fy:fy+dy,cx:cx+dx) +
…
w3*d_image(cy:cy+dy,fx:fx+dx) +
w4*d_image(cy:cy+dy,cx:cx+dx);
D = N >= d_C;
end
% Actualizăm matricea
rezultatelor.
v = 2^(i -1);
result = result + v*D;
end
% Aplicăm maparea dacă este
definită
if isstruct(mapping)
bins = mapping.num;
for i = 1:size(result,1)
for j = 1:size(result,2)
result(i,j) =
mapping.table(result(i,j)+ 1);
end
end
end
if (strcmp(mode,'h') ||
strcmp(mode,'hist') ||
strcmp(mode,'nh'))
% Returnăm cu histograma LBP
dacă mode este egal cu 'hist'.
result=hist(result(:),0:(bins –
1));
if (strcmp(mode,'nh'))
result=result/sum(resul t);
end
else
% În caz contrar, returnăm o
matrice de întregi nesemnate
if ((bins –
1)<=intmax('uint8'))
result=uint8(result);
elseif ((bins –
1)<=intmax('uint16'))
result=uint16(result);
else
result=uint32(result);
end
end
end
3.Algoritmul de distanță Kolmogorov –
Smirnov
function
d=kolmogorov_smirnov_distance(XI,
XJ)
m=size(XJ,1); % numărul de
eșantioane din p
p=size(XI,2); % dimensiunea
eșantioanelor
assert(p == size(XJ,2)); %
dimensiuni egale
assert(size(XI,1) == 1); % o
singură mostră
d=zeros(m,1); % initialize
output array
cxi=cumsum(XI,2); % histograme
cumulative
cxj=cumsum(XJ,2); % histograme
cumulative
for i=1:m
for j=1:p
d(i,1) = max(d(i,1),
abs(cxi(1,j) – cxj(i,j))) ;
end
end
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Detectarea zonelor falsificate din imagini JPEG [616727] (ID: 616727)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
