Indholdsfortegnelse:
- Trin 1: Udvid det dynamiske område for dit billede eller dine billeder
- Begrundelse:
- Trin 2: Behandl billederne, eller udfør computervisionen, maskinlæring eller lignende
- Trin 3: Komprimer det dynamiske område af resultatet igen
- Trin 4: Du vil måske prøve nogle andre variationer
- Trin 5: Gå videre: Prøv det nu med HDR -billedkompositter
Video: Kvantimetrisk billedbehandling: 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
(Ovenstående figur illustrerer sammenligning af eksisterende billedbehandlingsmetode med kvantimetrisk billedbehandling. Bemærk det forbedrede resultat. Billedet øverst til højre viser mærkelige artefakter, der kommer fra forkert antagelse om, at billeder måler noget som lys. Nederst til højre billede viser bedre resultat ved at gøre det samme kvantimetrisk.)
I denne Instructable lærer du, hvordan du i høj grad kan forbedre ydeevnen for eksisterende billeddannelses- eller synsføler -systemer ved hjælp af et meget enkelt koncept: Kvantimetrisk billedsensor
Kvantimetrisk billedbehandling forbedrer kraftigt noget af følgende:
- Eksisterende billedbehandling, såsom billedfjerning;
- Maskinlæring, computersyn og genkendelse af mønstre;
- Bærbar ansigtsgenkender (se https://wearcam.org/vmp.pdf), AI og HI baseret vision osv.
Grundidéen er at kvantimetrisk forbehandle og efterbehandle billederne som følger:
- Udvid billedets eller billedernes dynamiske område;
- Behandl billedet eller billederne, som du normalt ville;
- Komprimer billedets eller billedernes dynamiske område (dvs. fortryd trin 1).
I tidligere instruktioner lærte jeg nogle aspekter af HDR (High Dynamic Range) sansning og kvantimetrisk sansning, f.eks. linearitet, superposition osv.
Lad os nu tage denne viden i brug.
Tag enhver eksisterende proces, du gerne vil bruge. Eksemplet, jeg vil vise, er sløring af billeder, men du kan også bruge det til næsten alt andet.
Trin 1: Udvid det dynamiske område for dit billede eller dine billeder
(Tal tilpasset fra "Intelligent Image Processing", John Wiley and Sons Interscience Series, Steve Mann, november 2001)
Det første trin er at udvide det dynamiske område af inputbilledet.
Ideelt set bør du først bestemme kameraets responsfunktion, f, og derefter anvende det inverse respons, f inverse, på billedet.
Typiske kameraer er komprimerende for dynamisk område, så vi vil typisk anvende en ekspansiv funktion.
Hvis du ikke kender svarfunktionen, skal du starte med at prøve noget simpelt, f.eks. At indlæse billedet i et billedarray, caste variablerne til en datatype som (float) eller (double) og hæve hver pixelværdi til en eksponent, som f.eks. kvadrering af hver pixelværdi.
Begrundelse:
Hvorfor gør vi dette?
Svaret er, at de fleste kameraer komprimerer deres dynamiske område. Grunden til at de gør dette er, at de fleste displaymedier udvider det dynamiske område. Dette er helt tilfældigt: mængden af lys, der udsendes af et katodestrålerør, er omtrent lig med spændingen, der er hævet til eksponenten 2,22, så når videospændingsindgangen er cirka halvvejs, er mængden af lys, der udsendes meget mindre end halvdelen.
Fotografiske medier er også ekspansive i dynamisk område. For eksempel udsender et fotografisk "neutralt" gråt kort 18% af det indfaldende lys (ikke 50% af det indfaldende lys). Dette meget lys (18%) anses for at være midt i svaret. Så som du kan se, hvis vi ser på en udgangsgraf som en funktion af input, opfører displaymedier sig, som om de er ideelle lineære displays, der indeholder en dynamisk rækkeviddeudvidelse før den ideelle lineære respons.
I den øverste figur ovenfor kan du se displayet indrammet med en stiplet linje, og det svarer til at have en ekspander før det ideelle lineære display.
Da skærme i sagens natur er ekspansive, skal kameraer være designet til at være komprimerende, så billederne ser godt ud på de eksisterende skærme.
Tilbage i gamle dage, hvor der var tusindvis af fjernsynsmodtagerskærme og kun en eller to stationer (f.eks. Kun et eller to fjernsynskameraer), var det en lettere løsning at sætte en komprimerende ikke -linearitet i kameraet end at huske alle fjernsyn og læg en i hver fjernsynsmodtager.
Ved et uheld hjalp dette også med støjreduktion. I lyd kalder vi dette "Dolby" ("companding") og tildeler et patent for det. I video skete det helt tilfældigt. Stockham foreslog, at vi skulle tage billedets logaritme, før vi behandlede dem, og derefter tage antiloggen. Hvad han ikke var klar over, er, at de fleste kameraer og skærme allerede gør dette helt tilfældigt. I stedet er det, jeg foreslog, at vi gør det stik modsatte af, hvad Stockham foreslog. (Se "Intelligent billedbehandling", John Wiley og Sons Interscience Series, side 109-111.)
På det nederste billede ser du den foreslåede anti-homomorfe (kvantimetriske) billedbehandling, hvor vi har tilføjet trin for ekspansion og komprimering af det dynamiske område.
Trin 2: Behandl billederne, eller udfør computervisionen, maskinlæring eller lignende
Det andet trin, efter dynamisk områdeudvidelse, er at behandle billederne.
I mit tilfælde udførte jeg simpelthen en dekonvolution af billedet med sløringsfunktionen, dvs. billedafsløring, som det er almindeligt kendt i den kendte teknik.
Der er to brede kategorier af kvantimetrisk billedføling:
- Hjælper folk med at se;
- Hjælpemaskiner ser.
Hvis vi prøver at hjælpe folk med at se (hvilket er det eksempel, jeg viser her), er vi ikke færdige endnu: vi skal tage det behandlede resultat tilbage i billedrummet.
Hvis vi hjælper maskiner med at se (f.eks. Ansigtsgenkendelse), er vi færdige nu (ingen grund til at gå videre til trin 3).
Trin 3: Komprimer det dynamiske område af resultatet igen
Når vi arbejder i et udvidet dynamisk område, siges det at være i "lysrum" (kvantimetrisk billedrum).
I slutningen af trin 2 er vi i lysrummet, og vi skal tilbage til billedrummet.
Så dette trin 3 handler om at komme tilbage til billedrummet.
For at udføre trin 3 skal du blot komprimere det dynamiske område for output fra trin 2.
Hvis du kender kameraets responsfunktion, skal du blot anvende det for at få resultatet f (p (q)).
Hvis du ikke kender kameraets responsfunktion, skal du blot anvende et godt gæt.
Hvis du kvadrerede billedpixel i trin 1, er det nu tid til at tage kvadratroden af hver billedpixel for at komme tilbage til dit gæt om billedrum.
Trin 4: Du vil måske prøve nogle andre variationer
Deblurring er blot et af mange mulige eksempler. Overvej f.eks. Kombinationen af flere eksponeringer.
Tag to billeder som de to, jeg har ovenfor. Den ene blev taget i løbet af dagen, og den anden om natten.
Kombiner dem for at lave et skumringslignende billede.
Hvis du bare gennemsnit dem sammen, ligner det skrald. Prøv dette selv!
Men hvis du først udvider det dynamiske område for hvert billede, derefter tilføjer dem og derefter komprimerer summenes dynamiske område, ser det godt ud.
Sammenlign billedbehandling (tilføjelse af billederne) med kvantimetrisk billedbehandling (udvidelse, tilføjelse og derefter komprimering).
Du kan downloade min kode og mere eksempelmateriale herfra:
Trin 5: Gå videre: Prøv det nu med HDR -billedkompositter
(Ovenstående billede: HDR -svejsehjelm bruger kvantimetrisk billedbehandling til augmented reality -overlays. Se Slashgear 2012 12. september)
Sammenfattende:
tag et billede, og anvend følgende trin:
- udvide billedets dynamiske område;
- behandle billedet;
- komprimere det dynamiske område af resultatet.
Og hvis du vil have et endnu bedre resultat, kan du prøve følgende:
fange en flerhed af forskellige eksponerede billeder;
- udvide det dynamiske område til lysrum, i henhold til min tidligere Instructable på HDR;
- behandle det resulterende kvantimetriske billede, q, i lysrum;
- komprimere det dynamiske område gennem tonemapping.
God fornøjelse, og klik venligst på "Jeg klarede det" og læg dine resultater, så kommenterer jeg gerne eller giver konstruktiv hjælp.
Anbefalede:
Billedbehandling baseret på brandgenkendelse og slukker: 3 trin
Billedbehandling baseret på brandgenkendelse og slukningssystem: Hej venner, dette er et billedbehandlingsbaseret branddetekterings- og slukkersystem, der bruger Arduino
Billedbehandling med Raspberry Pi: Installation af OpenCV og billedfarveseparation: 4 trin
Billedbehandling med Raspberry Pi: Installation af OpenCV og billedfarveseparation: Dette indlæg er det første af flere tutorials til billedbehandling, der skal følges. Vi ser nærmere på de pixels, der udgør et billede, lærer at installere OpenCV på Raspberry Pi, og vi skriver også test scripts for at fange et billede og også c
DIY termisk billedbehandling infrarødt kamera: 3 trin (med billeder)
DIY termisk billedbehandling infrarødt kamera: Hej! Jeg leder altid efter nye projekter til mine fysiktimer. For to år siden stødte jeg på en rapport om den termiske sensor MLX90614 fra Melexis. Den bedste med kun 5 ° FOV (synsfelt) ville være egnet til et selvfremstillet termisk kamera. At læse
En introduktion til billedbehandling: Pixy og dens alternativer: 6 trin
En introduktion til billedbehandling: Pixy og dens alternativer: I denne artikel vil vi forklare betydningen af Digital Image Processing (DIP) og årsagerne til at bruge hardware som Pixy og andre værktøjer til at lave en proces på billeder eller videoer. I slutningen af denne artikel lærer du: Hvordan et digitalt billede dannes
Moyamoya billedbehandling: 8 trin
Moyamoya billedbehandling: Moyamoya, "røgpust", " er en sjælden sygdom, der skyldes blokering af arterier ved basalganglierne, som er et område i bunden af hjernen. Sygdommen er en progressiv cerebrovaskulær sygdom, der for det meste rammer børn. Sym