Du kan se side 5 i dette dokument for nogle modeller, der anvender denne teknik. Fordelen er, at eftersom upsampling håndteres ved hjælp af traditionelle metoder, behøver CNN’et kun at lære at forfine det grove billede, hvilket er enklere. Da vi ikke anvender transponerede konvolutioner her, kan man desuden omgå checkerboard-artefakter. Ulempen er dog, at de foruddefinerede upsamplingmetoder kan forstærke støj og forårsage sløring.
I dette tilfælde sendes de lavopløste billeder som sådan til CNN’erne. Upsampling udføres i det sidste lag ved hjælp af et lærbart lag.
Et typisk netværk med post-upsampling. (Kilde)
Førdelen ved denne metode er, at udtrækningen af funktioner foretages i det lavere dimensionelle rum (før upsampling), og dermed reduceres den beregningsmæssige kompleksitet. Desuden kan modellen trænes end-to-end ved at anvende et lærbart upsampling-lag.
Gruppe 3- Progressiv upsampling
I ovenstående gruppe blev der, selv om beregningskompleksiteten blev reduceret, kun anvendt en enkelt upsampling-foldning. Dette gør indlæringsprocessen vanskeligere for store skaleringsfaktorer. For at afhjælpe denne ulempe blev en progressiv upsampling-ramme vedtaget af værker som Laplacian Pyramid SR Network (LapSRN) og Progressive SR (ProSR). Modellerne i dette tilfælde bruger en kaskade af CNN’er til progressivt at rekonstruere billeder med høj opløsning ved mindre skaleringsfaktorer på hvert trin.
Et typisk progressivt upsampling-netværk. (Kilde)
Ved at dekomponere en vanskelig opgave i enklere opgaver reduceres indlæringsvanskelighederne betydeligt, og der kan opnås bedre resultater. Desuden kan læringsstrategier som f.eks. pensumindlæring integreres for yderligere at reducere indlæringsvanskelighederne og forbedre den endelige præstation.
Gruppe 4 – Iterativ op- og nedadgående sampling
En anden populær modelarkitektur er timeglas- (eller U-net-) strukturen. Nogle varianter, såsom Stacked Hourglass-netværket, anvender flere timeglasstrukturer i serie og veksler effektivt mellem processen med op- og nedadgående prøvetagning.
Et typisk iterativt op- og nedadgående prøvetagningsnetværk. (Kilde)
Modellerne under denne ramme kan bedre udvinde de dybe relationer mellem LR-HR-billedparrene og dermed give rekonstruktionsresultater af højere kvalitet.
Loss-funktioner
Loss-funktioner bruges til at måle forskellen mellem det genererede højopløselige billede og det højopløselige billede i grundsandheden. Denne forskel (fejl) bruges derefter til at optimere den overvågede læringsmodel. Der findes flere klasser af tabsfunktioner, hvor hver af dem straffer et andet aspekt af det genererede billede.
Ofte anvendes mere end én tabsfunktion ved at vægte og summere de fejl, der opnås fra hver tabsfunktion for sig. Dette gør det muligt for modellen at fokusere på aspekter, som flere tabsfunktioner bidrager med samtidig.
total_loss = weight_1 * loss_1 + weight_ 2 * loss_2 + weight_3 * loss_3
I dette afsnit vil vi undersøge nogle populære klasser af tabsfunktioner, der anvendes til træning af modellerne.
Pixeltab
Pixelvis tab er den enkleste klasse af tabsfunktioner, hvor hver pixel i det genererede billede sammenlignes direkte med hver pixel i det jordbaserede sandhedsbillede. Der anvendes populære tabsfunktioner som L1- eller L2-fortab eller avancerede varianter som Smooth L1 loss.
Plot af Smooth L1 loss. (Kilde)
PSNR-metrikken (omtalt nedenfor) er stærkt korreleret med den pixelvise forskel, og derfor maksimerer en minimering af pixeltabet direkte PSNR-metrikværdien (hvilket indikerer god ydeevne). Pixeltab tager imidlertid ikke hensyn til billedkvaliteten, og modellen giver ofte perceptuelt utilfredsstillende resultater (ofte mangler højfrekvente detaljer).
Indholdstab
Dette tab evaluerer billedkvaliteten på baggrund af den perceptuelle kvalitet. En interessant måde at gøre dette på er ved at sammenligne de høje karakteristika i det genererede billede og det jordbaserede sandhedsbillede. Vi kan opnå disse high level features ved at lade begge billeder passere gennem et forud trænet billedklassifikationsnetværk (f.eks. et VGG-Net eller et ResNet).
Indholdstab mellem et jordnært sandhedsbillede og et genereret billede. (Kilde)
Overstående ligning beregner indholdstabet mellem et jordnært sandhedsbillede og et genereret billede, givet et forudtrænet netværk (Φ) og et lag (l) i dette forudtrænede netværk, hvor tabet beregnes. Dette tab tilskynder det genererede billede til at være perceptuelt ens med det faktiske billede. Af denne grund er det også kendt som det perceptuelle tab.
Teksturtab
For at gøre det muligt for det genererede billede at have samme stil (tekstur, farve, kontrast osv.) som grundsandhedsbilledet, anvendes teksturtab (eller stilrekonstruktionstab). Et billedes tekstur, som beskrevet af Gatys et. al, defineres som korrelationen mellem forskellige funktionskanaler. Funktionskanalerne fås normalt fra et funktionskort, der er udtrukket ved hjælp af et på forhånd trænet billedklassifikationsnetværk (Φ).
Beregning af Gram-matrixen. (Kilde)
Korrelationen mellem feature maps repræsenteres af Gram-matrixen (G), som er det indre produkt mellem de vektoriserede feature maps i
og j
på lag l
(vist ovenfor). Når Gram-matricen er beregnet for begge billeder, er det ligetil at beregne teksturtabet, som vist nedenfor:
Beregning af teksturtabet. (Kilde)
Gennem brug af dette tab motiveres modellen til at skabe realistiske teksturer og visuelt mere tilfredsstillende resultater.
Total Variation Loss
Total Variation Loss (TV) bruges til at undertrykke støj i de genererede billeder. Det tager summen af de absolutte forskelle mellem nabopixels og måler, hvor meget støj der er i billedet. For et genereret billede beregnes TV-tab som vist nedenfor:
Total Variation Loss bruges på et genereret billede med høj opløsning. (Kilde)
Her iterer i,j,k
over henholdsvis højden, bredden og kanalerne.
Adversarial Loss
Generative Adversarial Networks (GAN’er) er i stigende grad blevet anvendt til flere billedbaserede applikationer, herunder Super Resolution. GAN’er består typisk af et system med to neurale netværk – generatoren og diskriminatoren – der duellerer mod hinanden.
Givet et sæt målprøver forsøger generatoren at producere prøver, der kan narre diskriminatoren til at tro, at de er ægte. Discriminatoren forsøger at adskille ægte (mål) prøver fra falske (genererede) prøver. Ved hjælp af denne iterative træningsmetode får vi i sidste ende en Generator, der er rigtig god til at generere prøver, der ligner målprøverne. Følgende billede viser strukturen af en typisk GAN.
GANs in action. (Kilde)
Forbedringer af den grundlæggende GAN-arkitektur blev indført for at forbedre ydeevnen. Park et. al. anvendte f.eks. en diskriminator på funktionsniveau for at indfange mere meningsfulde potentielle attributter i virkelige højopløselige billeder. Du kan tjekke denne blog for at få en mere udførlig oversigt over fremskridt inden for GAN’er.
Typisk har modeller, der er trænet med adversarial loss, bedre perceptuel kvalitet, selv om de måske taber på PSNR sammenlignet med dem, der er trænet på pixeltab. En mindre ulempe er, at træningsprocessen for GAN’er er en smule vanskelig og ustabil. Der arbejdes dog aktivt på metoder til at stabilisere GAN-træning.
Metri
Et stort spørgsmål er, hvordan vi kvantitativt kan evaluere vores models ydeevne. Der anvendes en række teknikker (eller metrikker) til vurdering af billedkvalitet (IQA) til det samme formål. Disse målinger kan groft sagt inddeles i to kategorier – subjektive målinger og objektive målinger.
Subjektive målinger er baseret på den menneskelige observatørs perceptuelle vurdering, mens objektive målinger er baseret på beregningsmodeller, der forsøger at vurdere billedkvaliteten. Subjektive målinger er ofte mere “perceptuelt nøjagtige”, men nogle af disse målinger er uhensigtsmæssige, tidskrævende eller dyre at beregne. Et andet problem er, at disse to kategorier af målinger måske ikke er i overensstemmelse med hinanden. Derfor viser forskere ofte resultater ved hjælp af målinger fra begge kategorier.
I dette afsnit vil vi kort udforske et par af de almindeligt anvendte målinger til at evaluere ydeevnen af vores superopløsningsmodel.
PSNR
Peak Signal-to-Noise Ratio (PSNR) er en almindeligt anvendt objektiv måling til at måle rekonstruktionskvaliteten af en tabsgivende transformation. PSNR er omvendt proportional med logaritmen af den gennemsnitlige kvadrerede fejl (MSE) mellem det jordbaserede sandhedsbillede og det genererede billede.
Beregning af PSNR. (Kilde)
I ovenstående formel er L den maksimale mulige pixelværdi (for 8-bit RGB-billeder er den 255). Da PSNR kun tager hensyn til forskellen mellem pixelværdierne, repræsenterer den ikke så godt den perceptuelle kvalitet, hvilket ikke er overraskende.
SSIM
Strukturel lighed (SSIM) er en subjektiv måleenhed, der anvendes til at måle den strukturelle lighed mellem billeder, baseret på tre relativt uafhængige sammenligninger, nemlig luminans, kontrast og struktur. Abstrakt set kan SSIM-formlen vises som et vægtet produkt af sammenligningen af luminans, kontrast og struktur, der beregnes uafhængigt af hinanden.
SSIM er et vægtet produkt af sammenligninger som beskrevet ovenfor. (Kilde)
I ovenstående formel er alfa, beta og gamma vægtene for henholdsvis luminans-, kontrast- og struktur-sammenligningsfunktionerne. Den almindeligt anvendte repræsentation af SSIM-formlen er som vist nedenfor:
Geodkendt repræsentation af SSIM-formlen. (Kilde)
I ovenstående formel repræsenterer μ(I)
middelværdien af et bestemt billede, σ(I)
repræsenterer standardafvigelsen af et bestemt billede,σ(I,I')
repræsenterer kovariansen mellem to billeder, og C1, C2
er konstanter, der er fastsat for at undgå ustabilitet. For at gøre det kortfattet forklares betydningen af begreberne og den nøjagtige afledning ikke i denne blog, og den interesserede læser kan gå til afsnit 2.3.2 i dette dokument.
På grund af den mulige ujævne fordeling af billedets statistiske egenskaber eller forvrængninger er det mere pålideligt at vurdere billedkvaliteten lokalt end at anvende den globalt. Mean SSIM (MSSIM), som opdeler billedet i flere vinduer og beregner gennemsnittet af den SSIM, der opnås ved hvert vindue, er en sådan metode til at vurdere kvaliteten lokalt.
Da SSIM evaluerer rekonstruktionskvaliteten ud fra det menneskelige visuelle systems perspektiv, opfylder den under alle omstændigheder bedre kravene til den perceptuelle vurdering.
Andre IQA-scorer
I det følgende er der anført nogle andre metoder til vurdering af billedkvalitet uden forklaring. Den interesserede læser kan henvise til dette dokument for at få flere oplysninger.
Mean Opinion Score (MOS)
Task-based Evaluation
Information Fidelity Criterion (IFC)
Visual Information Fidelity (VIF)
Conclusion
Denne blogartikel dækkede noget indledende materiale og procedurer for træning af deep learning-modeller til superopløsning. Der findes faktisk mere avancerede teknikker, der er indført af den nyeste forskning, som kan give bedre resultater. Desuden kunne forskning i veje som uovervåget superopløsning, bedre normaliseringsteknikker og bedre repræsentative metrikker i høj grad fremme dette område. Den interesserede læser opfordres til at eksperimentere med deres innovative idéer ved at deltage i udfordringer som PIRM Challenge.