Smanjenje šuma putem usrednjavanja slike. Alat za obradu slika


Postoje tužne situacije u životu kada nema dovoljno svjetla, ali nije moguće otvoriti (više) otvor blende ili povećati brzinu zatvarača. Implikacija je da je "loša" fotografija bolja od fotografije koja nedostaje. Što da napravim? Tolerirati. Ili upotrijebite mali trik - uzmite nekoliko okvira i primijenite prosjek.

ISO6400, bio je/sada je.

Prvo ćete morati snimiti nekoliko identičnih (što više, to bolje) fotografija.

Jedna iz serije. Kao što vidite, čak i pri znatno smanjenoj veličini, količina buke je zastrašujuća.

Za prosjek, sve to učitajte u Photoshop dokument u obliku slojeva.
Ako je snimanje obavljeno iz ruke, slojeve je potrebno prethodno poravnati fotospajanjem (ovdje) ili pomoću naredbe Edit - Auto-Align Layers.
Zatim, za prosjek, postavite prozirnost slojeva: za donji 100%, sljedeći 50%, 33%, 25%, ...

Mnogo je prikladnije koristiti način slaganja, posebno pri dodavanju velika količina fotografije.

Otvorite Photoshop i dajte naredbu File - Scripts - Load Files into Stack (Datoteka - Skripte - Load files into stack)
Označite potvrdni okvir Stvori pametni objekt nakon učitavanja slojeva, po izboru pokušajte automatski poravnati izvorne slike.
Tako smo dobili jednu grupu ili hrpu. Nema potrebe raditi nikakvu magiju s transparentnošću, jer... za izvođenje izračuna na hrpi postoji zaseban izbornik Sloj - Pametni objekti - Način hrpe (Slojevi - Pametni objekt - Mod hrpe). Kod obrade fotografija i videa važna su samo dva načina - mean (prosječenje ili aritmetička sredina) i medijan (medijan), ostali se koriste kod obrade medicinskih, znanstvenih i forenzičkih slika itd. Ako se način slaganja promijeni, izračun se ponovno izvodi (s izvornim, a ne prethodnim rezultatom).
Uzmimo u obzir 100% usjev sa različitim područjima i usporediti rezultate.

Slijeva na desno: original, medijan, prosjek. Korišteno je desetak okvira.




Kako radi? U slučaju srednjeg načina rada, svjetlina svakog piksela dodaje se kanal po kanal i rezultat se dijeli s brojem fotografija. Na primjer: (3+2+1+2+9+3+1)/7=3
U srednjem načinu rada, prosječna vrijednost se bira iz niza 1,1,2, 2 ,3,3,9 - prosjek 2. Tj jake pojedinačne razlike nemaju učinka.
S praktične točke gledišta, to znači da će pokretni objekti ostaviti trag samo ako su prisutni u nekoliko okvira serije. Međutim, mean će bolje nadvladati buku.

Općenito, usjevi govore sami za sebe - nijedna obrada jednog okvira neće moći tako učinkovito smanjiti buku, jer veličina buke u u ovom primjeru premašuje veličinu nekih dijelova.

Kada je ova metoda primjenjiva?
- kod snimanja s nedovoljnim osvjetljenjem pri kratkim brzinama zatvarača (nema postavke brzine zatvarača ili je ograničena kamerom, nema stativa, nema načina za dugotrajno snimanje itd.)
- ako je potrebno, smanjite šum pri niskom iso, na primjer, prije aktivne naknadne obrade.

Gdje neće pomoći?
- pri snimanju pokretnih objekata (iako je moguće selektivno uklanjanje šuma u stacionarnim područjima).
- neće eliminirati stalnu komponentu buke

20. kolovoza 2009. u 22:21

Čišćenje slike od šuma, neke metode

  • Blog o Gil algoritmima

Ako ste vidjeli sliku koja se dobiva u modernim digitalnim fotoaparatima bez obrade, onda znate da izgleda jednostavno užasno. Ispunjen je bukom. Još kad skineš sliku na komp i već je prošla interna obrada u kameri, ako je povećate i pogledate pojedinačne piksele, možete vidjeti koliko se hrabro digitalni algoritmi bore protiv šuma i gube u ovom neravnopravnom ratu.
Neki algoritmi brišu male dijelove naravno, poznati su po tome Mobiteli Nokia. U nekim slučajevima detalji ostaju, ali su okruženi otocima u boji složenog oblika, to se vidi na Sony kamerama. I tako dalje - svaka metoda ima svoje probleme.

Koja sredstva postoje za uklanjanje te buke, a koja ne krše tuđe patente? Nadam se da će ova kratka recenzija biti od pomoći.

1. Prijelaz na koordinate svjetlina-boja.
Ova konverzija se može izvesti na više načina: HSV, L*a*b, itd. Iz nekih razloga u koje nećemo ulaziti:
- ljudsko oko je puno manje osjetljivo na detalje informacija o boji nego na informacije o svjetlini
- šum u komponenti boje, naprotiv, mnogo je veći nego u komponenti svjetline
Stoga jednostavno filtriranje komponente boje + obrnuto obnavljanje obično čini sliku puno boljom.

2. Srednji filtar.
dobro na jednostavan način Da biste očistili sliku od šuma, upotrijebite srednji filter Im_new(x,y)=median(dx=-1..1,dy=-1..1)Im(x+dx,y+dy).
Ova metoda ima mnogo varijacija, evo samo nekoliko:
2.1 Korak 1: izračunajte M1=medijan(C, Cnorth, Csouth); M2=medijan(C, Istok, Czapad); M3 = medijan (C, Cne, Csw); M4=medijan(C, Cnw, Csw); ovdje su Cnort, Cne,...Cnw osam susjednih piksela iz susjedstva 3x3, C je središnji piksel
Korak 2 - izračunajte Ma=medijan(C, M1, M2); Mb=medijan(C, M3, M4);
Korak 3 - izračunajte Csmooth=medijan(C, Ma, Mb);
Korak 4 - zamijenite C sa Csmooth.
2.2 Korak 1: poredajte piksele iz susjedstva 3x3 uzlaznim redoslijedom, P...P.
Korak 2: Ako je središnji piksel jednak P - zamijenite ga s P, ako je središnji piksel jednak P - zamijenite ga s P, u ostalim slučajevima ostavite ga nepromijenjenim.
Ovaj smjer koristi Kodak, kao i većina skenera i faks uređaja.

3. Filtri koji kontroliraju količinu korekcije
Ova metoda prvo predlaže grubo izglađivanje slike, na primjer pomoću niskopropusnog filtra, bilateralnog filtra ili nečeg drugog. I onda je ovaj postupak gotov
Im_novo(x,y)=Im(x,y)+S(Im(x,y)-Im_glatko(x,y),prag).
Funkcija odašiljača S može biti strukturirana na različite načine, na primjer ovako:
S(x,prag) = x ako je -prag prag; S(x,prag)=-prag ako je x<-threshold. Если выбрать threshold примерно равным величине шума, то весь шум пропадет, а детали и мелкие объекты останутся четкими.

4. Bilateralni filter
Vrlo zanimljiv filter, izumljen 2003. godine. Upućujem vas na internet za opise.
Evo prilično dobrog članka: scien.stanford.edu/class/psych221/projects/06/imagescaling/bilati.html
Zanimljiva varijanta bilateralnog filtra je i T-filter:
Korak 1: Pronađite sve piksele u susjedstvu čije se vrijednosti razlikuju od originalnog piksela ne više od zadanog praga.
Korak 2: Izračunajte prosjek ovih pronađenih piksela i spremite vrijednost.

5. Filtrira pomoću spektralne reprezentacije signala
Tako radi npr. Photoshop. Bit ideje je izvesti Fourierovu transformaciju u blizini svakog piksela, zatim izbrisati visoke frekvencije i napraviti inverznu transformaciju.
Umjesto Fourierove transformacije koriste se i druge ortogonalne baze, ponekad vrlo zamršene. Zapravo, radi se o cijeloj obitelji metoda.

6. Filtri koji ističu dominantni smjer
Ovi filteri u svakoj točki prvo pronađu dominantni smjer (smjer gradijenta svjetline), a zatim usrednjavaju signal samo u okomitom smjeru. Na taj način linije i fini detalji ostaju jasni. Dobre varijacije ovog algoritma također uzimaju u obzir vrijednosti matrice druge derivacije.
Ovo je cijela obitelj algoritama, čiji se opisi mogu naći i na internetu.

7. Lokalna klasifikacija fragmenata
Ovi filtri posebno dobro funkcioniraju s posebnim slikama kao što su tekst, zvjezdano nebo itd.
Prvo se sastavlja baza podataka tipičnih elemenata takve slike, na primjer, nekoliko stotina fragmenata od NxN piksela koji su već očišćeni od šuma.
Algoritam radi ovako: susjedstvo svakog piksela uspoređuje se s tim fragmentima i odabire se onaj koji je najsličniji. Tada se vrijednost originalnog piksela u prljavoj slici zamjenjuje vrijednošću sličnog piksela koji se nalazi na istom mjestu u čistom fragmentu.

8. Na kraju ću dati “jednostavnu” metodu koja se također može koristiti u nizu slučajeva.
Korak 1: Smanjite sliku (pomoću nekog pametnog algoritma za smanjenje veličine)
Korak 2: Povećajte veličinu (pomoću nekog pametnog algoritma za povećanje veličine)
Činjenica je da algoritmi za upscaling/downscaling mogu biti vrlo moćni (Lanczosov filter, fraktalne metode itd.), pa je rezultat sasvim zadovoljavajući. Ista metoda može se koristiti kao jednostavna, ali prilično učinkovita kompresija.

Šumovi mogu biti slučajni analogni, impulsni i različiti tipovi determinističkih.

Slučajni analogni šum

Slučajni analogni šum generiran je, u pravilu, zrnastom strukturom fotografskog materijala u kojem je original izrađen. Šumovi postaju relevantni pri povećanjima većim od 8x.

Kako bi se uklonio takav šum, koriste se metode filtriranja izravnavanja.

Rad ovih metoda temelji se na digitalnom filtriranju usrednjavanjem vrijednosti signala u blizini očitanog piksela. U programima poput PhotoShopa ti se filtri protiv alijasa nazivaju Blur, Gaussian Blur.

Zamućenje će dati izravno usrednjavanje. Gaussian Blur uvodi težine piksela u matricu prosjeka prema Gaussovom zakonu.

Zamućenje je zastarjelo jer vam ne dopušta podešavanje stupnja usrednjavanja. Stupanj zaglađivanja podešava se ponovljenom primjenom filtra.

Gaussian Blur je moderniji. U njemu možete podesiti parametar usrednjavanja, čime se podešava izglađivanje.

Mora se imati na umu da uporaba takvih filtara može dovesti do gubitka oštrine slike, budući da se ne usrednjava samo struktura šuma, već i pikseli koji tvore granicu slike. U nekim slučajevima, preporučljivo je dodatno provesti postupak maskiranja neoštrih nakon postupka zaglađivanja.

Slučajni impulsni šum

Slučajni impulsni šum odnosi se na relativno rijetko smještene pojedinačne nedostatke, kao što su ogrebotine i čestice prašine. Kada se primjenjuje na njih, postupak zaglađivanja obično nije učinkovit zbog činjenice da je veličina takvih nedostataka prilično velika.

Da bi se uklonili takvi nedostaci, koriste se filtri rang-ordinalne klase. Takvi filtri rangiranja stvaraju niz piksela duž linije, poredaju te nizove postavljajući ih uzlaznim redoslijedom, odbacuju minimalne i maksimalne vrijednosti piksela koje bi mogle biti neispravne i pronalaze prosječnu vrijednost u ovom nizu. Ova prosječna vrijednost stavlja se umjesto analiziranih piksela.

Na taj način mogu se ukloniti relativno manji nedostaci kao što su ogrebotine i prašina. U principu, moguće je promijeniti duljinu serije i tako odabrati veće nedostatke.

Međutim, za prilično velike nedostatke koji premašuju duljinu niza piksela, ova metoda nije primjenjiva.

Ovo je metoda koju koristi filtar za prašinu i ogrebotine.

Za veći impulsni šum potrebno je pribjeći poluautomatskom retuširanju, u kojem se nedostaci slike uklanjaju zamjenom neispravnih piksela obojanim pikselima iz njihove neposredne okoline. Piksel se odabire iz neposredne okoline i postavlja na neispravno mjesto.


U softveru se ovaj postupak naziva žigom i zahtijeva značajno ulaganje vremena. Prije nastavka takvog postupka, potrebno je tijekom reprodukcije analizirati sliku na skali povećanja i eliminirati one nedostatke koji će biti uočljivi na ovoj skali. U principu, isti postupak se može koristiti za urednički ispravak, kada je potrebno nadopuniti neke izgubljene detalje slike.

Deterministički šum slike

Najupečatljiviji predstavnik determinističkog šuma slike je rasterska struktura slike, ako se kao izvornik koristi tiskani otisak.

Čitanje rasterske slike može rezultirati neželjenom interakcijom rasterske strukture slike s novom rasterskom strukturom generiranom tijekom postupka ispisa fotografije.

Postoje dva moguća načina za rješavanje ovog problema:

1. eliminacija rasterske strukture izvornika tijekom skeniranja i obrade. U tu svrhu koriste se metode slične metodama filtriranja blende pri čitanju slike s većim otvorom blende ili njihov digitalni analog, odnosno usrednjavanje piksela i formiranje prosječnog signala.

Teorijski i eksperimentalno je pokazano da se najbolji rezultati postižu usklađivanjem veličine otvora s dimenzijama rasterskog elementa rasterske strukture izvornika. Stoga je tijekom procesa skeniranja potrebno točno odrediti rastersku lineaturu koja je korištena u originalu i odabrati filtar za derasterizaciju u skladu s tom lineaturom.

Za određivanje lineature rastera u izvorniku moguće je koristiti posebne testove. Neki suvremeni programi, na primjer LinoColor, omogućuju određivanje linije tijekom preliminarnog procesa skeniranja i postavljanje optimalnog filtra za destrakciju u skladu s tim.

Nedostaci ove eliminacije:

1) gubitak oštrine slike;

2) zbog različitih kutova rotacije rasterskih struktura slike za različite boje, ne dolazi do potpune koordinacije otvora za derastraciju i rasterske strukture i neizbježna su zaostala kolebanja slike (stvaranje moiréa).

2. čitanje strukture rastera uz njezino potpuno očuvanje. Kao rezultat toga, kod čitanja tri rasterske slike odvojene bojama, dobit ćemo sačuvanu rastersku strukturu. Zapravo ćemo dobiti sliku u sustavu SMUK. Ta se slika zatim može prenijeti u Lab, čime se gubi informacija o strukturi rastera. Zatim prebacite svu obradu u Lab i idite u SMUK s njegovom rasterskom strukturom.

Da biste to učinili, potrebno je čitati u visokoj rezoluciji. CopiDot je odgovarajući softver za prijenos SMUK-a u Lab.

Trenutna poteškoća je u tome što čitanje slika u boji ima značajne poteškoće. Stoga se ova vrsta CopiDot tehnologije trenutno koristi za čitanje rasteriziranih i bojama odvojenih fotoformi.

Ova tehnologija, koja se u posljednje vrijeme jako razvila, posebno je zanimljiva zbog potrebe za korištenjem neke vrste arhivskih okvira za fotografije C-t-P (computer-printed form) tehnologije.

3. Rerastering pomoću rastera nepravilne strukture (frekvencijski moduliran).

Podešavanje vrijednosti intenziteta

Moguće je postaviti vrijednosti intenziteta na slici pomoću funkcije imadjust, gdje je određen raspon intenziteta rezultirajuće slike.

Pogledajmo primjer povećanja kontrasta slike niskog kontrasta redistribucijom vrijednosti podataka u cijelom rasponu.

I = imread("pout.tif"); J = imajust(I);

Izvorna slika

Imshow(J) lik, imhist(J,64)

Slika prikazuje pretvorenu sliku i njen histogram. Imajte na umu da kao rezultat povećanja kontrasta slike, histogram ispunjava cijeli raspon.


Konvertirana slika i njezin histogram

Opis podešavanja ograničenja raspona

Moguće je opisati raspon početnih i rezultirajućih vrijednosti pomoću funkcije imadjust. Da bi to učinila, funkcija imadjust navodi raspone u obliku dva vektora kao argument. Prvi vektor sadrži najmanju i najveću vrijednost intenziteta izvorne slike, koja će biti prikazana rasponom svjetlina navedenih u drugom vektoru.

Bilješka.
Imajte na umu da vrijednosti intenziteta moraju biti između 0 i 1, bez obzira na format slike. Ako je slika u formatu uint8, raspon vrijednosti sadrži 255 gradacija, a za sliku u formatu sadrži 65535 gradacija.

Na primjer, smanjenje kontrasta slike postiže se smanjenjem raspona intenziteta. Na slici ispod, muški kaput je pretamni i ne pokazuje nikakve detalje. Ali to se može ispraviti pomoću funkcije imadjust preslikavanjem raspona izvorne uint8 slike u raspon pretvorene slike. Ova pretvorba značajno će proširiti dinamički raspon i poboljšati vizualnu percepciju tamnih područja slike. Također imajte na umu da će sve vrijednosti intenziteta iznad 51 biti prikazane kao 255, tj. bijela.

I = imread("snimatelj.tif"); J = imajust(I,,); imshow(I) lik, imshow(J)


Slika nakon pretvorbe dinamičkog raspona

Postavljanje granica automatske korekcije

Obično, kada koristite funkciju imadjust, postoje dva glavna koraka:

  1. Pogledajte histogram i odredite granice vrijednosti intenziteta.
  2. Opišite te granice za buduću upotrebu u funkciji imadjust.

Jednostavniji način za opisivanje ovih granica je korištenje funkcije stretchlim.

Ova funkcija izračunava histogram slike i automatski određuje granice podešavanja raspona. Funkcija stretchlim vraća ove vrijednosti kao vektor, koji se koristi kao argument u funkciji imadjust. Na primjer,

I = imread("riža.png"); J = imajust(I,stretchlim(I),);

Prema zadanim postavkama, stretchlim koristi vrijednosti intenziteta koje predstavljaju donjih 1% (0,01) i gornjih 1% (0,99) raspona kao granice prilagodbe.

Gama korekcija

Funkcija imadjust čini najmanje vrijednosti još manjim, a najveće još većim. Prema zadanim postavkama, međuvrijednosti se prikazuju linearno. Na primjer, vrijednosti intenziteta koje su u sredini raspona intenziteta izvorne slike odgovaraju onim vrijednostima intenziteta koje su u sredini raspona transformirane slike.

U funkciji imadjust možete navesti dodatni argument koji opisuje stupanj gama korekcije. Ovisno o gama vrijednosti, odnos između vrijednosti izvorne i konvertirane slike možda neće biti linearan. Stoga vrijednosti intenziteta koje su u sredini raspona intenziteta izvorne slike ne odgovaraju onim vrijednostima intenziteta koje su u sredini raspona transformirane slike.

Parametar gama može imati vrijednosti od 0 do beskonačnosti. Ako je gama 1 (zadano), tada je transformacija linearna. Ako je gama manja od 1, tada je raspon s malim vrijednostima intenziteta komprimiran, a raspon s velikim vrijednostima intenziteta rastegnut. Ako je gama veća od 1, tada je obrnuto - raspon s malim vrijednostima intenziteta je rastegnut, a raspon s velikim vrijednostima intenziteta je rastegnut.

Gore navedeno prikazano je na slici. Tri krivulje pretvorbe prikazuju prikaz vrijednosti intenziteta na različitim gama vrijednostima - manje od, jednako i veće od jedan. (Na slici x-koordinata predstavlja vrijednosti intenziteta izvorne slike, a y-koordinata predstavlja vrijednosti intenziteta rezultirajuće slike.)


Prikazuje tri različite postavke gama korekcije

Pogledajmo primjer gama korekcije slike. Imajte na umu da se pri korištenju funkcije imadjust rasponi podataka izvora i rezultirajućih slika opisuju kao prazne matrice. Ako se tako opisuju, tj. kao prazne matrice, funkcija imadjust koristi cijeli raspon. Rezultat ovog pristupa prikazan je na slici.

Imread("forest.tif") I = ind2gray(X,map); J = imajust(I,,,0,5); imshow(I) lik, imshow(J)


Slika prije i poslije primjene gama korekcije

Prilagodljivo izjednačavanje histograma s ograničenim kontrastom

Alternativa je upotreba funkcije histeq, koja izvodi izjednačavanje prilagodljivog histograma ograničenog kontrastom pomoću funkcije adapthisteq. Funkcija radi s cijelom slikom, a funkcija adapthisteq može raditi s malim područjima slike. Povećava se kontrast svakog dijela slike, što je povezano s promjenom oblika histograma. Nakon što se izvrši izjednačavanje, funkcija adapthisteq spaja rubove lokalnih regija pomoću bilinearne interpolacije, eliminirajući umjetno stvorene granice.

Kako biste izbjegli povećanje šuma na slikama, možete koristiti funkciju adapthisteq s posebnim parametrima za ograničavanje kontrasta, što je posebno važno za homogena (ujednačena) područja.

Za ilustraciju, razmislite o korištenju funkcije adapthisteq kada ispravljate kontrast na slici. Izvorna slika ima nizak kontrast, s većinom vrijednosti intenziteta koncentriranim u sredini raspona. Funkcija adapthisteq ravnomjerno raspoređuje vrijednosti intenziteta u cijelom rasponu.

I = imread("pout.tif"); J = adapthisteq(I); imshow(I) lik, imshow(J)


Slika nakon obrade kontrastom ograničenog adaptivnog izjednačavanja histograma (i njegovog histograma)

Dekorelacijsko rastezanje

Dekorelacijsko rastezanje poboljšava omjer boja na slici, uzimajući u obzir korelacijske ovisnosti. Kada poboljšavate slike, vrlo je važno pronaći granicu za poboljšanje kako pretjerano poboljšanje ne bi rezultiralo nepostojećim detaljima. Stoga je preporučljivo koristiti metodu rastezanja dekorelacije, koja se implementira funkcijom decorrstretch.

U većini slučajeva, broj NBANDS boja na slici je tri. Funkcija dekorelacije može se koristiti bez obzira na broj boja u paketu.

Prilikom pretvaranja vrijednosti izvornih boja slike, raspon prikaza se u većini slučajeva povećava. Intenziteti boja svakog piksela pretvaraju se u vlastiti prostor boja s kovarijancijskom ili korelacijskom matricom s dimenzijom NBANDSxNBANDS, razvlače, poravnavaju i transformiraju natrag.

Primjer istezanja dekorelacije

Primijenimo operacije dekorelacije i istezanja na neke slike iz biblioteke koja se nalazi u imdemos direktoriju Matlab sustava. Knjižnica uključuje LANDSAT sliku male rijeke u Coloradu. Obradimo ovu sliku metodom istezanja dekorelacije:

  1. Slika se sastoji od sedam traka, koje moraju biti predstavljene s tri vidljive boje: A = multibandread("littlecoriver.lan", , ... "uint8=>uint8", 128, "bil", "ieee-le", . .. ("Bend", "Izravno",));
  2. Provedite dekorelacijsko rastezanje: B = decorrstretch(A);
  3. Vizualizacija rezultata: imshow(A); lik; imshow(B)

Usporedimo dvije slike. Izvorna slika ima izrazito ljubičastu (crveno-plavu) nijansu, a rezultirajuća slika ima prošireniji raspon boja.


Slika male rijeke u Coloradu prije (lijevo) i nakon (desno) rastezanja dekoracije

Pokažimo širenje boja različitih raspona slika prije i nakon dekorelacije i poravnanja:

RA = A(:,:,1); gA = A(:,:,2); bA = A(:,:,3); slika, dijagram3(rA(:),gA(:),bA(:),"."); grid("uključeno") xlabel("Crveno (pojasa 3)"); ylabel("Zelena (pojasa 2)"); ... zlabel("Plava (Pojas 1)") rB = B(:,:,1); gB = B(:,:,2); bB = B(:,:,3); slika, dijagram3(rB(:),gB(:),bB(:),"."); grid("uključeno") xlabel("Crveno (pojasa 3)"); ylabel("Zelena (pojasa 2)"); ... zlabel("Plava (Pojas 1)")


Širenje boja različitih raspona slike prije i poslije dekorelacije i izjednačavanja

Dodatno rastezanje linearnog kontrasta

Razmotrimo sada istu transformaciju, ali ćemo govoriti o rastezanju linearnog kontrasta, koje je primjenjivo nakon istezanja dekorelacije:

Imshow(A); C = decorrstretch(A,"Tol",0.01); lik; imshow(C)

Usporedimo originalnu i pretvorenu sliku.


Slika male rijeke u Coloradu nakon istezanja dekorelacije i istezanja linearnog kontrasta

Linearno rastezanje kontrasta još je jedan dodatni način poboljšanja nakon rastezanja raspona boja slike. U našem slučaju, rastezanje raspona boja odnosi se na svaku komponentu boje.

Za detaljnije informacije pogledajte opis funkcije stretchlim.

Bilješka.
Linearno rastezanje kontrasta može se primijeniti kao zasebna operacija nakon izvođenja rastezanja dekorelacije pomoću funkcija stretchlim i imadjust. Ovo je jedan od alternativnih načina, međutim, često ne dovodi do dobrih rezultata za slike koje su predstavljene u formatu uint8 i uint16. Ovaj rezultat se objašnjava raspodjelom piksela u rasponu (ili ). Opcije funkcije decorrstretch omogućuju vam da zaobiđete ovo ograničenje.

Uklanjanje buke

Digitalne slike podložne su različitim vrstama šuma. Nekoliko je glavnih uzroka šuma, koji ovise i o načinu snimanja. Na primjer:

  • Ako je slika dobivena skeniranjem fotografskog filma, zrnca filma su izvor šuma. Pojava šuma također se može objasniti oštećenjem samog filma ili uzrokovanim uređajem za skeniranje.
  • Ako je slika snimljena digitalno, mehanizam za generiranje podataka (CCD detektor, kvantizacija) je izvor šuma.
  • Elektronički prijenos slikovnih podataka također može biti izvor šuma.

Aplikacija nudi nekoliko načina za potpuno ili djelomično uklanjanje šuma sa slika. Razvijene su različite metode za uklanjanje različitih vrsta buke. Među njima

  1. Korištenje linearnog filtriranja;
  2. Korištenje srednjeg filtriranja;
  3. Korištenje adaptivnog filtriranja.

Kako bi se pokazao učinak gore navedenih metoda, aplikacija ima funkciju imnoise, koja slici dodaje razne vrste šuma. Pogledajmo primjere korištenja ove funkcije.

Korištenje linearnog filtriranja

Linearno filtriranje može se koristiti za uklanjanje određenih vrsta šuma. Za to su prikladni filtri kao što su usrednjavanje i Gaussov filtar. Na primjer, filtar za izračunavanje prosjeka koristi se za uklanjanje zrnatosti sa slika. Budući da je vrijednost intenziteta svakog piksela jednaka prosječnom intenzitetu okolnih piksela, to rezultira potiskivanjem zrnatosti.

Korištenje srednjeg filtriranja

Medijansko filtriranje slično je korištenju filtra za izračunavanje prosjeka, gdje je vrijednost intenziteta svakog piksela prosjek intenziteta piksela odgovarajućeg susjedstva. U mnogim je slučajevima korištenje srednjeg filtra za rješavanje problema uklanjanja šuma učinkovitije od konvencionalnog izračunavanja prosjeka. Korištenje srednjeg filtriranja dovodi do manjeg izobličenja granica u usporedbi s operacijom izračunavanja prosjeka. Funkcija medfilt2 izvodi srednje filtriranje.

Bilješka.
Medijansko filtriranje je redoslijedno-statističko filtriranje i poznato je i kao filtriranje ranga. Za detaljnije informacije pogledajte opis funkcije ordfilt2.

Pogledajmo primjer usporedbe upotrebe filtra za izračunavanje prosjeka i funkcije medfilt2 za uklanjanje buke soli i papra. Učinak ove vrste šuma je da nasumično odabrani pikseli postaju crni ili bijeli (to jest, dodjeljuju im se ekstremne vrijednosti iz postojećeg raspona). U oba slučaja, veličina korištenog susjedstva je 3x3.

Korištenje adaptivnog filtriranja

Funkcija wiener2 temelji se na Wiener filtru (vrsta linearnog filtra) za prilagodljivu lokalnu obradu slike. Ako je standardna devijacija intenziteta piksela u određenom lokalnom području velika, tada wiener2 izvodi malo izglađivanje. Ako je ovo odstupanje malo, tada je područje zaglađivanja veće.

Ovaj je pristup često učinkovitiji od konvencionalnog linearnog filtriranja. Još jedna prednost adaptivnog filtra je ta što čuva rubove i druge visokofrekventne dijelove slikovnih objekata. Međutim, Wienerov filtar zahtijeva više vremena računanja nego linearni filtar.

Funkcija wiener2 radi bolje s "bijelim" šumom, kao što je Gaussov šum. Razmotrimo primjer korištenja wiener2 funkcije za obradu slike Saturna, koja je šumna s Gaussovim šumom. Za interaktivnu demonstraciju filtriranja šuma, možete koristiti nrfiltdemo.

RGB = imread("saturn.png"); I = rgb2siva(RGB); J = imnoise(I,"gaussian",0,0.005); K = Wiener2(J,); imshow(J) lik, imshow(K)


Slika s šumom (lijevo) i filtrirana slika (desno)

Slike s različitim vrstama šuma koriste se za demonstraciju rada metoda smanjenja šuma. Za generiranje ovih slika koristi se funkcija imnoise. Usput, slike prikazane u ovom odjeljku generirane su pomoću ove funkcije.

Sliku mogu oštetiti šumovi i smetnje različitog podrijetla, kao što su šum videosenzora, zrnasti šum u foto materijalima i greške u kanalu odašiljača. Njihov utjecaj može se minimizirati korištenjem klasičnih statističkih metoda filtriranja. Drugi mogući pristup temelji se na korištenju drugih heurističkih metoda za prostornu obradu.

Šum video senzora ili greške u prijenosnom kanalu obično se pojavljuju na slici kao diskretne promjene u izoliranim elementima koji nemaju prostornu korelaciju. Iskrivljeni elementi često se prilično razlikuju od susjednih elemenata. Ovo zapažanje poslužilo je kao osnova za mnoge algoritme koji omogućuju smanjenje šuma.

Korištenje digitalnog filtriranja slike može značajno poboljšati kvalitetu slike dobivene tijekom UWB detekcije. Zatim ćemo razmotriti korištenje linearnog filtriranja za izglađivanje šuma na slici (niskopropusno filtriranje), naglašavajući granice objekata korištenjem visokopropusnog filtriranja, kao i metodu srednjeg filtriranja za uklanjanje pulsnog tipa šuma.

Riža. Slika 7 objašnjava jednostavnu metodu smanjenja šuma praga u kojoj se svjetlina svih elemenata slike mjeri sekvencijalno.

Riža. 3.7. Metoda smanjenja šuma praga.

Ako svjetlina određenog elementa premašuje prosječnu svjetlinu grupe obližnjih elemenata za određenu vrijednost praga, svjetlina elementa zamjenjuje se prosječnom svjetlinom:

Ako
]

Budući da je šum prostorno dekorisan, njegov spektar ima tendenciju da sadrži više prostorne frekvencije od spektra normalne slike. Stoga jednostavno niskopropusno prostorno filtriranje može poslužiti kao učinkovito sredstvo za izglađivanje buke. Niz Q veličine MM izlazne slike formiran je diskretnom konvolucijom niza F veličine NN izvorne slike s nizom za izravnavanje H veličine LL prema formuli

Izglađivanje buke omogućeno je niskopropusnim filtriranjem pomoću H polja s pozitivnim elementima. Ispod su tri vrste nizova za izglađivanje, koje se često nazivaju maskama za uklanjanje šuma:

Ti su nizovi normalizirani kako bi se dobilo jedinstveno pojačanje tako da postupak smanjenja šuma ne uzrokuje pomak u prosječnoj svjetlini obrađene slike. Ako zahtijevano smanjenje šuma uključuje korištenje velikih nizova, preporučljivo je izvršiti konvoluciju neizravno pomoću Fourierove transformacije, jer to obično rezultira dobitkom u količini izračuna.

Naglašavanje granica.

U elektroničkim sustavima za skeniranje slike, dobiveni video signal može se propustiti kroz električni visokopropusni filtar. Drugi način obrade skeniranih slika je korištenje neoštrog maskiranja. U ovom slučaju, slika se takoreći skenira s dva preklapajuća otvora, od kojih jedan odgovara normalnoj razlučivosti, a drugi smanjenoj razlučivosti. Kao rezultat, dobiva se niz normalne slike F (j, k) odnosno niz nejasne slike F L (j, k). Zatim se formira niz maskiranih slika

F M (j, k) = c F (j, k) - (1-c) F L (j, k),

gdje je C koeficijent proporcionalnosti. Obično se vrijednost C kreće od 3/5 do 5/6, tj. Omjer komponenata je normalan, a smanjena bistrina varira od 1,5 do 5.

Poboljšanje rubova također se može postići izvođenjem diskretnog filtriranja prema jednadžbi (1) korištenjem visokofrekventnog impulsnog odziva H. Ispod su tri tipične maske za izvođenje visokopropusnog filtriranja:




Ove se maske razlikuju po tome što je zbroj njihovih elemenata jednak jedinici.

Drugi način naglašavanja granica je takozvana statistička diferencijacija. Vrijednost svjetline svakog elementa podijeljena je statističkom procjenom standardne devijacije (j,k)

G (j,k) = F (j,k) /  (j,k).

Standardna devijacija

izračunava se u nekom susjedstvu N(j,k) elementa s koordinatama (j,k). Funkcija
- prosječna vrijednost svjetline izvorne slike u točki s koordinatama (j,k), približno određena izglađivanjem slike pomoću operatora niskopropusnog filtriranja prema formuli (3.1). Poboljšana slika, predstavljena nizom G (j,k), razlikuje se od originalne slike po tome što je njezina svjetlina veća na granicama, čiji su elementi različiti od susjednih elemenata, a niža u svim ostalim područjima. Treba napomenuti da je naglašavanje korisnih granica popraćeno povećanjem komponenti šuma.

Srednji filtar.

Medijansko filtriranje je tehnika nelinearne obrade signala koju je razvio Tukey. Ova je metoda korisna za smanjenje šuma na slici. Jednodimenzionalni srednji filtar je klizni prozor koji pokriva neparan broj elemenata slike. Središnji element zamijenjen je medijanom svih elemenata slike u prozoru. Medijan diskretnog niza

a 1 , a 2 , ..., a N za neparan N je element za koji postoji (N-1)/2 elementa manja ili jednaka njemu u vrijednosti, (N- 1)/2 veća od ili jednaka tome u vrijednosnoj veličini. Neka prozor sadrži elemente slike s razinama 80, 90, 200, 110, 120; u ovom slučaju, središnji element treba zamijeniti vrijednošću 110, koja je medijan uređenog niza 80, 90, 110, 120, 200. Ako je u ovom primjeru vrijednost 200 odstupnica šuma u monotono rastućem nizu, tada će srednje filtriranje pružiti značajno poboljšanje. Naprotiv, ako vrijednost 200 odgovara impulsu korisnog signala (kada se koriste širokopojasni senzori), tada će obrada dovesti do gubitka jasnoće u reproduciranoj slici. Dakle, srednji filtar u nekim slučajevima osigurava potiskivanje šuma, u drugim uzrokuje potiskivanje neželjenog signala.

Srednji filtar ne utječe na funkcije koraka ili zuba pile, što je općenito poželjno svojstvo. Međutim, ovaj filtar potiskuje impulsne signale čije je trajanje manje od polovice širine prozora. Filtar također uzrokuje izravnavanje vrha trokutaste funkcije.

Mogućnost analize učinka srednjeg filtra je ograničena. Može se pokazati da je medijan umnoška konstante K i niza f(j) jednak

med( K f(j) )=K med(f (j)).

Osim,

med( K+ f(j) )=K + med(f (j)).

Međutim, medijan zbroja dva proizvoljna niza f (j) i g(j) nije jednak zbroju njihovih medijana:

med( g(j)+ f(j) )=med(g(j))+ med(f (j)).

Moguće su različite strategije za primjenu srednjeg filtra za suzbijanje buke. Jedan od njih preporučuje da se počne s srednjim filtrom, čiji prozor pokriva tri elementa slike. Ako je slabljenje signala beznačajno, prozor filtra se proširuje na pet elemenata. To se radi sve dok srednje filtriranje ne počne činiti više štete nego koristi. Druga mogućnost je izvođenje kaskadnog srednjeg filtriranja signala pomoću fiksne ili varijabilne širine prozora. Općenito, ona područja koja ostaju nepromijenjena nakon jednog tretmana filtrom ne mijenjaju se nakon ponovljene obrade. Područja u kojima je trajanje impulsnih signala manje od polovice širine prozora bit će podložna promjenama nakon svakog ciklusa obrade.

Koncept srednjeg filtra može se lako generalizirati na dvije dimenzije korištenjem dvodimenzionalnog prozora željenog oblika, poput pravokutnog ili približno kružnog. Očito je da dvodimenzionalni medijan filtar s prozorom veličine LL pruža učinkovitije potiskivanje buke od sekvencijalno primijenjenih vodoravnih i okomitih jednodimenzionalnih medijan filtara s prozorom veličine L1; 2D obrada, međutim, rezultira značajnijim slabljenjem signala.

Srednji filtar potiskuje raspršeni impulsni šum učinkovitije nego glatki šum. Medijansko filtriranje slika u svrhu suzbijanja šuma treba smatrati heurističkom metodom. Ne može se koristiti slijepo. Umjesto toga, trebali biste provjeriti svoje rezultate kako biste bili sigurni da je srednje filtriranje odgovarajuće.