Kako postaviti pametne telefone i računala. Informativni portal

Alat za obradu slike. Kratki tečaj teorije obrade slika

Segmentacija slike

Segmentacija uspostavlja karakteristične podskupove piksela ili dijeljenje slike na povezane regije, od kojih je svaka u nekom smislu "homogena". Procesi segmentacije i izdvajanja obilježja mogu se promatrati kao dodjeljivanje oznaka pikselima koje definiraju posebne klase kojima ti pikseli pripadaju. Dakle, rezultat procesa segmentacije je simbolična slika u kojoj su vrijednosti piksela oznake, a ne razine svjetline.

Klasifikacija modela slike

Za segmentaciju slika koristi se jedan ili drugi model koji daje više ili manje adekvatan opis stvarnih slika. Postoje dvije glavne klase modela slike: statistički i prostorni. Statistički modeli opisuju skup točaka ili regija slike. Prostorni modeli opisuju dekompoziciju slike na njezine sastavne dijelove ili regije.

Statistički modeli prvog reda opisuju skup pikselnih elemenata slike bez obzira na njihov položaj u prostoru. Najjednostavniji opis ove vrste je gustoća vjerojatnosti distribucije vrijednosti svjetline, koja se izračunava pomoću histograma vrijednosti svjetline. Često se vjeruje da je gustoća vjerojatnosti distribucije vrijednosti stvarne slike aproksimirana nekim standardom, na primjer, Gaussovom funkcijom gustoće vjerojatnosti ili mješavinom takvih funkcija.

Modeli prvog reda ne uzimaju u obzir da se slika sastoji od bilo kakvih koordiniranih dijelova (elementa teksture, objekata itd.). Međusobni raspored elemenata u prostoru uzet je u obzir modelima skupova slikovnih točkastih elemenata višeg reda. Jedan od modela je susjedna matrica luma vrijednosti, čiji elementi predstavljaju frekvencije parova vrijednosti luma na odabranom pomaku. U praksi se vrijednost pomaka bira dovoljno mala, jer s velikim pomakom vrijednosti svjetline postaju neovisne jedna o drugoj.

Druga metoda opisivanja prostornih odnosa između elemenata piksela slike je razmatranje gustoće vjerojatnosti distribucije vrijednosti lokalne značajke, što je često učinkovitije od korištenja gustoće vjerojatnosti distribucije vrijednosti svjetline višeg reda. . Posebno su korisne u segmentaciji slike lokalne značajke zbog prisutnosti rubova, na primjer, vrijednosti različitih diferencijalnih operatora za mjerenje gradijenta svjetline.

Statistički modeli slike također uključuju modele slučajnih polja i vremenskih serija, koji se uglavnom koriste u modeliranju teksture.

Prostorni modeli opisuju sliku u terminima regija. Slika se može predstaviti kao skup objekata u pozadini, raščlanjenih na regije na neki pravilan ili slučajan način, kao model oblika regija. Prostorni modeli općenito omogućuju izdvajanje više informacija iz slike nego modeli statistike raspodjele svjetline. Međutim, do sada se koriste samo prilično jednostavni modeli, a njihov matematički aparat zahtijeva daljnji razvoj.

Segmentacija slike prema pragu

Najjednostavnija i najčešće korištena metoda segmentacije slike je postavljanje praga. U brojnim standardnim metodama za izdvajanje dijelova slike po pragu, vrijednosti praga se određuju izravno iz histograma slike (statistički model slike prvog reda). Povijesno gledano, prva metoda u ovoj skupini metoda je mod metoda. Metoda proizlazi iz pretpostavke da slika sadrži poznati broj klasa točaka homogenih po svjetlini. Osim toga, vjeruje se da granična područja između zatvorenih područja zauzimaju relativno malo područje slike. Stoga bi na histogramu trebali odgovarati međumodnim dolinama unutar kojih su postavljeni pragovi segmentacije.

Međutim, stvarne slike se ne uklapaju dobro s iznesenim pretpostavkama. U pravilu su granice između područja nejasne, a modalna struktura histograma nedovoljno izražena. Osim toga, čak i kada histogram ima vidljive modove, njegova korita mogu biti toliko široka i ravna da je teško locirati dno korita.

Ako stvarna slika ne zadovoljava uvjete mod metode, primjenjuju se sljedeća četiri pristupa. Prvo, poboljšanje histograma, uključujući na temelju lokalnih svojstava slike pomoću informacija o gradijentu, statistike drugog reda, analize zakrivljenosti kumulativne funkcije distribucije. Drugo, aproksimacija histograma mješavinom normalnih distribucija i korištenje statističkih metoda za optimalno odvajanje ove smjese. Nedostatak ovog pristupa je velika računska složenost; štoviše, Gaussov često slabo aproksimira stvarne modove. Treće, uvođenje empirijske mjere kvalitete segmentirane slike i maksimiziranje odgovarajuće funkcije kriterija - diskriminantni pristup, entropijski pristup, pristup momentu itd. Četvrto, prijelaz na korištenje drugih statistika za izbor praga, posebice izbor praga izravno prema lokalnim značajkama. Korištenje lokalnih značajki omogućuje segmentiranje složenih stvarnih slika s višom kvalitetom.

Analiza histograma osigurava zadovoljavajuću kvalitetu segmentacije onih slika koje se sastoje od područja ujednačene svjetline. Međutim, pri odabiru malih objekata na složenoj pozadini, točke objekata ne pokazuju vidljive vrhove u histogramu svjetline. Stoga se koristi obrada s promjenjivim pragom: za male fragmente slike izrađuju se histogrami koji se provjeravaju na bimodalnost, a pronađeni lokalni pragovi interpoliraju na ostatak slike.

U djelima Osta predložen je niz algoritama koji se temelje na diskriminantnoj analizi. Neka G={0,1,...,L) - moguće vrijednosti svjetline slike. Prag dijeli raspodjelu vrijednosti svjetline slike u dvije klase C 0={0,1,...,t) i C 1={t+1,t+2,...,L}, tÎ G... Optimalni prag t* definirano kao

gdje je varijanca distribucije vrijednosti svjetline slike u cjelini, w0 je vjerojatnost slučajne točke koja pripada pozadini, https://pandia.ru/text/80/299/images/image004_46 .gif "width =" 21 "height =" 24 " > - prosječna razina svjetline pozadine (klasa C 0).

Ako se područja objekta i pozadine međusobno oštro razlikuju, histogram funkcije kriterija može biti multimodalan. Stoga je potrebno odrediti sve lokalne vrhove, što ozbiljno smanjuje konkurentnost metode.

Entropijski kriterij za izbor optimalnog praga. Koristeći ranije uvedene definicije, histogram vrijednosti svjetline može se smatrati kao L-simbolički izvor informacija s entropijom

,

gdje pi Je li vjerojatnost svjetline s vrijednošću i.

Entropija izvora je zbroj entropije objekta H 0 i pozadinska entropija H 1, a optimalni prag trebao bi dati maksimalnu vrijednost ovog zbroja:

, (2)

pri čemu .

Budući da svaki od pojmova H 0 i H 1 karakterizira ujednačenost raspodjele svjetline u odgovarajućim intervalima i naglo se smanjuje kada "vanzemaljski" fragment histograma padne u ovaj interval, maksimum entropijskog kriterija odgovarat će najboljoj opciji segmentacije. Nedostatak ove metode je što kriterijska funkcija može imati nekoliko maksimuma bliskih vrijednosti.

Za razliku od diskriminantnog pristupa, metoda očuvanja trenutka uvodi sve trenutke slike do (2 k+1) narudžba uključuje:

.

Smatra se da optimalni prag osigurava jednakost odgovarajućih momenata segmentirane i originalne slike. Međutim, ako k> 3, tada postoje poteškoće povezane s nedostatkom analitičkog rješenja problema.

Prijelaz s izbora praga prema histogramu svjetline na korištenje drugih statistika, nedvojbeno, komplicira algoritme segmentacije, ali omogućuje bolju segmentaciju složenih slika. Za odabir malih objekata izgleda obećavajuće odabrati prag izravno iz lokalnih svojstava točaka slike.

Metoda maksimalnog prosječnog kontrasta. Metoda se temelji na jednostavnom heurističkom određivanju optimalnog praga: optimalnim pragom za segmentaciju slike smatra se prag koji razlikuje više visokog kontrasta i manje niskokontrastnih razlika u svjetlini od bilo kojeg drugog praga. Kvantitativni izraz kriterija je prosječni kontrast svih razlika svjetline dodijeljenih ovim pragom. Prag koji odgovara maksimalnom prosječnom kontrastu je optimalan. Ako dvije susjedne točke x 1=(x 1,y 1) i x 2=(x 2,y 2) imaju vrijednosti svjetline f(x 1) i f(x 2) (bez gubitka općenitosti f(x 1) £ f(x 2)), zatim broj kapi dodijeljen pragom t, jednako:

gdje

Potpuni kontrast koji odgovara pragu t, jednako je:

gdje je DIV_ADBLOCK169 ">

. (3)

Na temelju matrica susjednih vrijednosti svjetline koje je predložio Haralik, razmatra se sljedeća metoda segmentacije. Za sliku, matrice zajedničkog izgleda razina svjetline parova susjednih točaka u horizontali P 1.0 i okomito P 1,90 smjerova, kao i ukupna prijelazna matrica veličine ( L+1) ´ ( L+1):

Pvh=P 1,0 +P 1,90.

Proizvoljni prag t dijeli točke slike u dvije klase S 0 i S 1, a prijelazna matrica - za 4 bloka.

Segmentacija slika s U-Netom u praksi

Uvod

U ovom postu na blogu pogledat ćemo kako Unet funkcionira, kako ga implementirati i koji su podaci potrebni za njegovu obuku. Da bismo to učinili, razmotrit ćemo:

  1. kao izvor inspiracije.
  2. Pytorchkao alat za provedbu naše ideje.
  3. Kaggle natjecanje kao mjesto gdje možemo testirati naše hipoteze na stvarnim podacima.

Članak nećemo pratiti 100%, ali ćemo pokušati implementirati njegovu bit, prilagoditi ga našim potrebama.

Predstavljanje problema

U ovom zadatku dobivamo sliku automobila i njegovu binarnu masku (koja lokalizira položaj automobila na slici). Želimo stvoriti model koji će moći odvojiti automobil od pozadine s preciznošću piksel po piksel od preko 99%.

Da bismo razumjeli što želimo, gif slika je ispod:

Slika s lijeve strane je originalna slika, s desne strane je maska ​​koja će biti primijenjena na sliku. Koristit ćemo Unet neuronsku mrežu koja će naučiti automatski kreirati masku.

  1. Unošenjem slika automobila u neuronsku mrežu.
  2. Korištenje funkcije gubitka, uspoređivanje izlaza neuronske mreže s odgovarajućim maskama i vraćanje pogreške za mrežu kako bi se otkrilo gdje mreža nije u redu.

Struktura koda

Kod je pojednostavljen što je više moguće kako bi se razumjelo kako radi. Glavni kod je u ovoj datoteci main.py , analizirajmo red po redak.

Kod

Proći ćemo kroz kod u main.py i kroz članak. Ne brinite o detaljima skrivenim u drugim projektnim datotekama, mi ćemo vam pokazati one koje trebate prema potrebi.

Krenimo od početka:

def main (): # Hiperparametri input_img_resize = (572, 572) # Veličina promjene veličine ulaznih slika neuronske mreže output_img_resize = (388, 388) # Promjena veličine izlaznih slika neuronske mreže batch_size = 3 epohe = 50 prag = 0,5 validation_size = 0,2 sample_size = Ništa # - Neobavezni parametri threads = cpu_count () use_cuda = torch.cuda.is_available () script_dir = os.path.dirname abspath_ (os.path)_ ) # Povratni pozivi za obuku tb_viz_cb = TensorboardVisualizerCallback (os.path.join (skript_dir, "../ logs / tb_viz")) tb_logs_cb = TensorboardLoggerCallback (os.path.join (script/log_dir, "..b Modelsaver)" modelsaver (..b ModelSaver) os.path.join (skript_dir, "../ izlaz / modeli / model_" + helpers.get_model_timestamp ()), verbose = True)

U prvom odjeljku definirate svoje hiperparametre, možete ih podesiti kako vam odgovara, na primjer ovisno o vašoj GPU memoriji. Optimalni parametri definirati neke korisne parametre i povratni pozivi. TensorboardVisualizerCallback je klasa koja će spremati predviđanja u tenzorska ploča u svakoj eri trenažnog procesa, TensorboardLoggerCallback pohranit će vrijednosti funkcija gubitka i "preciznosti" piksel po piksel tenzorska ploča... I konačno ModelSaverCallback će spremiti vaš model nakon završetka obuke.

# Preuzmite skupove podataka ds_fetcher = DatasetFetcher () ds_fetcher. skup_podataka za preuzimanje ()

Ovaj odjeljak automatski učitava i izdvaja skup podataka iz Kagglea. Imajte na umu da za uspješan rad ovog dijela koda morate imati Kaggle račun s prijavom i lozinkom, koji se moraju smjestiti u varijable okruženja. KAGGLE_USER i KAGGLE_PASSWD prije pokretanja skripte. Također je potrebno prihvatiti pravila natjecanja prije učitavanja podataka. To se može učiniti u karticipreuzimanje podataka o natjecanju

# Dobijte put do datoteka za neuronsku mrežu X_train, y_train, X_valid, y_valid = ds_fetcher.get_train_files (sample_size = sample_size, validation_size = validation_size) full_x_test = ds_fetcher.get_test_files (osple_backfiles join) (osple_backfiles join) (osple_backfilesC). script_dir, "../ output / submit.csv.gz"), origin_img_size, prag)

Ova linija definira uzvratiti poziv funkcija za test (ili predviđanje). Ona će spremiti predviđanja u datoteku gzip svaki put kada se proizvodi nova serija predviđanja. Dakle, predviđanja neće biti pohranjena u memoriji jer su vrlo velika.

Nakon završetka procesa predviđanja, možete poslati primljenu datoteku submit.csv.gz iz izlazne mape u Kaggle.

# - Definirajte našu arhitekturu neuronske mreže# Originalni papir ima 1 ulazni kanal, u našem slučaju imamo 3 (RGB) net = unet_origin. UNetOriginal ((3, * img_resize)) klasifikator = nn. klasifikator. CarvanaClassifier (neto, epohe) optimizator = optim. SGD (neto. Parametri (), lr = 0,01, zamah = 0,99) train_ds = TrainImageDataset (X_train, y_train, input_img_resize, output_img_resize, X_transform = aug.augment_img), train_loader = DataLoader, batch_loader = DataLoader, batch_train_medapledss, batch_sam ) valid_ds = TrainImageDataset (X_valid, y_valid, input_img_resize, output_img_resize, threshold = threshold) valid_loader = DataLoader (valid_ds, batch_size, sampler = SequentialSampler (valid_dsize), num_

ispis ( "Obuka na () uzorcima i provjera valjanosti na () uzorcima"... format (len (train_loader. dataset), len (valid_loader. dataset))) # Uvježbajte klasifikator klasifikatora. vlak (train_loader, valid_loader, epohe, povratni pozivi =)

test_ds = TestImageDataset (full_x_test, img_resize) test_loader = DataLoader (test_ds, batch_size, sampler = SequentialSampler (test_ds), num_workers = threads, pin_memory = use_cuda) # Predvidite i spremite klasifikator. predvidjeti (test_loader, povratni pozivi =) pred_saver_cb. close_saver ()

Konačno, radimo isto kao gore, ali za predviđanje. Zovemo naše pred_saver_cb.close_saver () za brisanje i zatvaranje datoteke koja sadrži predviđanja.

Implementacija arhitekture neuronske mreže

Unet članak predstavlja pristup segmentaciji medicinskih slika. Međutim, pokazalo se da se ovaj pristup može koristiti i za druge zadatke segmentacije. Uključujući i onu na kojoj ćemo sada raditi.

Prije nego što krenete naprijed, morate pročitati cijeli članak barem jednom. Ne brinite ako nemate potpuno razumijevanje matematike, možete preskočiti ovaj odjeljak kao i poglavlje Eksperimentiranje. Naš cilj je dobiti širu sliku.

Svrha izvornog članka je drugačija od naše, neke dijelove ćemo morati prilagoditi svojim potrebama.

U vrijeme pisanja rada nedostajale su 2 stvari koje su sada potrebne za ubrzanje konvergencije neuronske mreže:

  1. BatchNorm.
  2. Snažni GPU-ovi.

Prvi je izumljen samo 3 mjeseca prije Unet, a za autore je vjerojatno prerano Unet dodao je u svoj članak.

Do danas BatchNorm koristi se gotovo posvuda. Možete ga se riješiti u kodu ako želite ocijeniti članak 100%, ali možda nećete doživjeti da se web konvergira.

Što se tiče GPU-a, članak kaže:

Kako bismo smanjili troškove i maksimalno iskoristili GPU memoriju, dajemo prednost velikim ulaznim pločicama u odnosu na veliku veličinu serije i stoga smanjujemo seriju na jednu sliku

Koristili su GPU sa 6 GB RAM-a, ali sada GPU ima više memorije za smještaj slika u jednoj seriji. Trenutna serija od tri radi za GPU u GPU-u s 8 GB RAM-a. Ako nemate takvu video karticu, pokušajte smanjiti seriju na 2 ili 1.

Što se tiče metoda povećanja (odnosno izobličenja izvorne slike prema nekom obrascu) koje se razmatraju u članku, koristit ćemo različite od onih opisanih u članku, budući da se naše slike jako razlikuju od biomedicinskih slika.

Sada krenimo od samog početka dizajnom arhitekture neuronske mreže:

Ovako izgleda Unet. Možete pronaći ekvivalentnu implementaciju Pytorch u modulu nn.unet_origin.py.

Sve klase u ovoj datoteci imaju najmanje 2 metode:

  • __u tome __ ()gdje ćemo inicijalizirati naše slojeve neuronske mreže;
  • naprijed ()što je metoda koja se poziva kada neuronska mreža primi ulaz.

Pogledajmo detalje implementacije:

  • ConvBnRelu je blok koji sadrži Conv2D, BatchNorm i Relu operacije. Umjesto da ih upišemo 3 za svaki stog kodera (grupa operacija down) i stog dekodera (skupina operacija gore), grupiramo ih u ovaj objekt i ponovno ga koristimo prema potrebi.
  • StackEncoder enkapsulira cijeli nizvodni "sklad" operacija, uključujući operacije ConvBnRelu i MaxPool kao ispod:



Pratimo povlačenje posljednje operacije ConvBnRelu v x_trace i vratite ga jer ćemo spojiti ovaj izlaz pomoću stogova dekodera.

  • StackDecoder je isto što i StackEncoder, ali za operacije dekodiranja dolje okružene crvenom bojom:



Imajte na umu da uzima u obzir operaciju trim/konkatenacije (okružena narančastom bojom) prosljeđivanjem down_tensor, što nije ništa drugo do tenzor x_trace koji vraća naš StackEncoder .

  • UNetOriginal tu se događa magija. Ovo je naša neuronska mreža koja će skupiti sve male cigle iznad. Metode u tome i naprijed stvarno su lukavi, dodaju hrpu StackEncoder , središnji dio i na kraju nekoliko StackDecoder ... Tada dobivamo izlaz StackDecoder , dodajte mu konvoluciju 1x1 prema članku, ali umjesto da definiramo dva filtra kao izlaz, definiramo samo 1, što će zapravo biti naše predviđanje maske u sivim tonovima. Zatim "smanjujemo" naš izlaz kako bismo uklonili veličinu kanala (samo 1, tako da ga ne moramo pohraniti).

Ako želite razumjeti više detalja o svakom bloku, postavite točku prekida za otklanjanje pogrešaka u metodu naprijed svake klase kako biste detaljno pregledali objekte. Također možete ispisati oblik svojih izlaznih tenzora između slojeva ispisom ( x.veličina () ).

Trening neuronske mreže

  1. Funkcija gubitka

Sada u stvarni svijet. Prema članku:

Funkcija energije izračunava se pomoću soft-max-a u pikselima preko završne karte značajki u kombinaciji s funkcijom gubitka unakrsne entropije.

Činjenica je da u našem slučaju želimo koristiti koeficijent kocke kao funkciju gubitka umjesto onoga što nazivaju "energetskom funkcijom" jer je to metrika koja se koristi uKaggle natjecanje koji je definiran:

xje naše predviđanje i Y- ispravno označena maska ​​na trenutnom objektu. | X | znači kardinalnost skupa x(broj elemenata u ovom skupu) i ∩ za sjecište između x i Y.

Kod za koeficijent kocke možete pronaći u nn.gubici.SoftDiceLoss .

klasa SoftDiceLoss (nn.Module): def __init __ (self, težina = Ništa, veličina_prosjek = True): super (SoftDiceLoss, self) .__ init __ () def naprijed (self, logits, ciljevi): glatko = 1 num = targets.size (0) probs = F.sigmoid (logits) m1 = probs.view (broj, - 1) m2 = targets.view (broj, - 1) raskrižje = (m1 * m2) rezultat = 2. * (presjek.zbroj (1) + glatko) / (m1.zbroj (1) + m2.zbroj (1) + glatko) rezultat = 1 - rezultat.zbroj () / broj povratnih rezultata

Razlog zašto je raskrižje implementirano kao množenje, a kardinalnost kao zbroj () na os 1 (zbroj tri kanala) je da su predviđanja i cilj one-hot encoded vektora.

Na primjer, pretpostavimo da je predviđanje u pikselu (0, 0) 0,567, a cilj je 1, dobivamo 0,567 * 1 = 0,567. Ako je cilj 0, dobivamo 0 na tom položaju piksela.

Također smo koristili glatki faktor 1 za propagaciju unatrag. Ako je predviđanje težak prag od 0 i 1, teško ga je prenijeti natrag gubitak kocke.

Zatim uspoređujemo gubitak kocke s unakrsnom entropijom kako bismo dobili našu funkciju ukupnog gubitka, koju možete pronaći u metodi _kriterij iz nn.Klasifikator.CarvanaKlasifikator ... Prema izvornom članku, oni također koriste mapu težine u funkciji gubitka entropije kako bi dali nekim pikselima više pogreške tijekom treninga. U našem slučaju takvo što nam ne treba, pa samo koristimo križnu entropiju bez ikakve mape težine.

2. Optimizator

Budući da se ne bavimo biomedicinskim slikama, koristit ćemo svoje povećanja ... Kod se može naći u img.augmentation.augment_img... Tamo radimo slučajni pomak, rotaciju, okretanje i skaliranje.

Trening neuronske mreže

Sada možete početi učiti. Kako napredujete kroz svaku epohu, moći ćete vizualizirati predviđanja vašeg modela na skupu za provjeru valjanosti.

Da biste to učinili, morate trčati Tenzorska ploča u mapi dnevnika pomoću naredbe:

Tensorboard --logdir =. / Dnevnici

Primjer onoga što možete vidjeti u Tenzorska ploča nakon epohe 1:

Segmentacija znači odabir područja koja su homogena prema nekom kriteriju, na primjer, po svjetlini. Matematička formulacija problema segmentacije može biti sljedeća.

Neka je funkcija svjetline analizirane slike; x- konačni podskup ravnine na kojoj je
;
- cijepanje x na K neprazni povezani podskupovi
LP- predikat definiran na skupu S i uzimanje pravih vrijednosti ako i samo ako bilo koji par točaka iz svakog podskupa zadovoljava kriterij homogenosti.

Segmentacija slike
po predikatu LP particija se zove
zadovoljavanje uvjeta:

a)
;

b)
;

v)
;

d) susjedna područja.

Uvjeti a) i b) znače da svaka točka slike mora biti jedinstveno dodijeljena određenoj regiji, c) određuje vrstu homogenosti rezultirajućih regija i, konačno, d) izražava svojstvo "maksimalnosti" regija particije.

Predikat LP naziva se predikat homogenosti i može se zapisati kao:

(1)

gdje
-odnos ekvivalencije;
- proizvoljne točke iz Stoga se segmentacija može promatrati kao operator oblika:

gdje
-funkcije koje definiraju izvornu i segmentiranu sliku; -označiti ja- to područje.

Postoje dva opća pristupa rješavanju problema segmentacije, koja se temelje na alternativnim metodološkim konceptima. Prvi pristup temelji se na ideji "diskontinuiteta" svojstava slikovnih točaka u prijelazu iz jednog područja u drugo. Ovaj pristup svodi zadatak segmentacije na zadatak odabira granica područja. Uspješno rješenje potonjeg omogućuje, općenito govoreći, identificiranje i samih regija i njihovih granica. Drugi pristup ostvaruje želju da se odaberu točke slike, koje su homogene po svojim lokalnim svojstvima, i spoje ih u područje koje će kasnije dobiti ime ili semantičku oznaku. U literaturi se prvi pristup naziva segmentacija isticanjem granica područja, a drugo - segmentacija označavanjem točaka područja... Gornja matematička definicija problema omogućuje karakterizaciju ovih pristupa u smislu predikata homogenosti LP... U prvom slučaju, kao LP mora postojati predikat koji uzima prave vrijednosti na graničnim točkama regija i lažne vrijednosti na unutarnjim točkama. Međutim, može se primijetiti značajno ograničenje ovog pristupa, koje se sastoji u činjenici da particija je ovdje skup od dva elementa. U praktičnom smislu, to znači da algoritmi za odabir granica ne dopuštaju različitim oznakama da identificiraju različita područja.

Za drugi pristup, predikat LP može imati oblik definiran relacijom (5.1). Navedeni pristupi generiraju specifične metode i algoritme za rješavanje problema segmentacije.

Metoda segmentacije praga

Postavljanje praga slike znači transformaciju njezine funkcije svjetline pomoću operatora oblika

gdje s (x, y)- segmentirana slika; K - broj područja segmentacije;
- oznake segmentiranih područja;
- vrijednosti pragova, poredane tako da
.

U konkretnom slučaju, za K = 2 prag uključuje korištenje jednog praga T... Prilikom dodjele pragova, u pravilu se koristi histogram vrijednosti funkcije svjetline slike.

Algoritam segmentacije praga za pseudokod

Ulaz: mtrIntens - izvorna matrica sivih tonova;

l, r - pragovi histograma

Izlaz: mtrIntensNew - Segmentirana slikovna matrica

za i: = 0 do l-1 čini

za i: = l do r čini

za i: = r + 1 do 255 čini

LUT [i] = 255;

za i: = 1 do 100 čini

za j: = 1 do 210 čini

mtrIntensNew: = LUT]

1

Razmatraju se matematičke metode segmentacije slike Dicom standarda. Razvijaju se matematičke metode Dicom segmentacije slike za probleme prepoznavanja medicinskih slika. Dijagnoza bolesti ovisi o kvalifikacijama istraživača i zahtijeva od njega vizualnu segmentaciju, a alat za ovu dijagnozu su matematičke metode za obradu rasterskih slika. Obrada medicinskih slika dobivenih hardverom bez preliminarne obrade grafičkih podataka u većini slučajeva daje netočne rezultate. Provedeni su postupci za isticanje kontura objekata Canny metodom i dodatni algoritmi za obradu rasterskih slika. Rezultati istraživanja omogućuju izračunavanje morfometrijskih, geometrijskih i histogramskih svojstava formacija u ljudskom tijelu, potrebnih za daljnje liječenje bolesnika, te pružanje učinkovitog medicinskog liječenja. Razvijeni principi računalne analize medicinskih slika učinkovito se koriste za operativne zadatke medicinske dijagnostike specijalizirane onkološke ustanove, kao i u obrazovne svrhe.

prepoznavanje uzorka

segmentacija objekata od interesa

medicinske slike

1. Vlasov A.V., Tsapko I.V. Modifikacija Cannyjevog algoritma primijenjena na obradu rendgenskih slika // Bulletin of Science of Siberia. - 2013. - Broj 4 (10). - S. 120-127.

2. Gonzales R., Woods R. Digitalna obrada slike. - M .: Tehnosfera, 2006 .-- Str. 1072.

3. Kuljabičev Yu.P., Pivtoratskaya S.V. Strukturni pristup izboru značajki u sustavima za prepoznavanje uzoraka // Prirodne i tehničke znanosti. - 2011. - br. 4. - Str. 420–423.

4. Nikitin OR, Pasechnik A.S. Konturiranje i segmentacija u zadacima automatizirane dijagnostike patologija // Metode i uređaji za prijenos i obradu informacija. - 2009. - Broj 11. - Str. 300–309.

5. Canny J. Računalni pristup detekciji rubova // IEEE Transactions on pattern analysis and machine intelligence. - 1986. - br. 6. - P.679–698.

6. DICOM - Način pristupa: http://iachel.ru/ zob23tai-staihroe / DICOM

7. Doronicheva A.V., Sokolov A.A., Savin S.Z. Korištenje Sobel operatora za automatsko otkrivanje rubova u medicinskim slikama // Journal of Mathematics and System Science. - 2014. - God. 4, broj 4 - P. 257-260.

8. Jähne B., Scharr H., Körkel S. Principi dizajna filtera // Handbook of Computer Vision and Applications. Academic Press. - 1999.-- 584 str.

Jedan od prioritetnih smjerova u razvoju medicine u Rusiji je prijelaz na vlastite inovativne tehnologije za elektroničku registraciju, pohranu, obradu i analizu medicinskih slika organa i tkiva pacijenata. To je uzrokovano povećanjem količine informacija prikazanih u obliku slika u dijagnostici društveno značajnih bolesti, prvenstveno onkoloških, čije liječenje u većini slučajeva ima rezultat tek u ranim fazama.

Prilikom dijagnosticiranja slika standarda DICOM utvrđuje se patološko područje, a kada se potvrdi njegova patološka priroda, rješava se klasifikacijski problem: pripisivanje nekoj od poznatih vrsta ili identifikacija nove klase. Očigledna poteškoća su nedostaci u dobivenoj slici, kako zbog fizičkih ograničenja opreme tako i zbog dopuštenih granica opterećenja na ljudsko tijelo. Kao rezultat toga, softver je taj koji ima zadaću dodatne obrade slika kako bi se povećala njihova dijagnostička vrijednost za liječnika, kako bi se prikazale u prikladnijem obliku i kako bi se istakla glavna stvar iz velike količine dobivenih podataka. .

Svrha studije... Razvijaju se matematičke metode Dicom segmentacije slike za probleme prepoznavanja medicinskih slika. Dijagnoza bolesti ovisi o kvalifikacijama istraživača i zahtijeva od njega vizualnu segmentaciju, a alat za ovu dijagnozu su matematičke metode za obradu rasterskih slika. Obrada medicinskih slika dobivenih hardverom bez preliminarne obrade grafičkih podataka u većini slučajeva daje netočne rezultate. To je zbog činjenice da su u početku slike dobivene nezadovoljavajuće kvalitete.

Materijal i metode istraživanja

Kao materijal za istraživanje koriste se računalni tomogrami pacijenata specijalizirane kliničke ustanove. Prije analize stvarnih grafičkih podataka potrebno je pripremiti sliku ili izvršiti prethodnu obradu. Ova faza rješava problem poboljšanja vizualne kvalitete medicinskih slika. Korisno je cijeli proces obrade slike podijeliti u dvije široke kategorije: metode u kojima su i ulaz i izlaz slike; metode, gdje su ulazni podaci slike, a kao rezultat rada, izlazni podaci su znakovi i atributi identificirani na temelju ulaznih podataka. Ovaj algoritam ne podrazumijeva da se svaki od gore navedenih procesa primjenjuje na sliku. Zapisivanje podataka je prvi od procesa prikazanih na Sl. jedan.

Riža. 1. Glavne faze digitalne obrade grafičkih podataka

Registracija može biti prilično jednostavna, kao u primjeru kada je originalna slika digitalna. Tipično, korak registracije slike uključuje prethodnu obradu podataka, kao što je zumiranje slike. Poboljšanje slike jedno je od najjednostavnijih i najimpresivnijih područja predobrade. U pravilu, problem pronalaženja slabo prepoznatljivih piksela ili povećanja kontrasta u izvornoj slici određen je metodama poboljšanja informativnog sadržaja slika. Jedna od često korištenih metoda poboljšanja informativnog sadržaja slika je poboljšanje kontrasta slike, jer se povećavaju granice objekta od interesa. Treba imati na umu da je poboljšanje kvalitete slike u određenoj mjeri subjektivan zadatak u obradi slike. Obnova slike - ovaj zadatak se također odnosi na poboljšanje vizualne kvalitete podataka. Metode obnavljanja slike temelje se na matematičkim i vjerojatnosnim modelima deformacije grafičkih podataka. Obradu slike kao fazu treba odvojiti od koncepta obrade slike kao cjelovitog procesa promjene slike i dobivanja nekih podataka. Segmentacija, ili proces isticanja objekata od interesa, dijeli sliku na sastavne objekte ili dijelove. Automatizirani odabir objekata od interesa je u određenoj mjeri težak zadatak u digitalnoj obradi slike. Previše detaljna segmentacija otežava obradu slike ako trebate istaknuti objekte od interesa. Ali netočna ili nedovoljno detaljna segmentacija u većini zadataka dovodi do pogrešaka u završnoj fazi obrade slike. Prezentacija i opis grafičkih podataka, u pravilu, slijedi fazu isticanja objekata od interesa na slici, čiji izlaz u većini slučajeva sadrži neobrađene piksele koji tvore granice regije ili čine sve piksele slike. regije. S takvim opcijama potrebno je podatke transformirati u oblik koji je dostupan za računalnu analizu. Prepoznavanje uzoraka je proces koji dodjeljuje identifikator objektu (na primjer, "radijus") na temelju njegovih opisa. Definirajmo odnos između baze znanja i modula za obradu slika. Baza znanja (odnosno informacija o problemskom području) je na neki način šifrirana unutar samog sustava za obradu slike. To znanje može biti prilično jednostavno, kao što je detaljna indikacija objekata na slici, gdje se područje interesa treba nalaziti. Ovo znanje omogućuje ograničavanje područja pretraživanja. Baza znanja upravlja radom svakog modula za obradu i njihovom interakcijom, što je prikazano na Sl. 1 sa strelicama koje pokazuju u dva smjera između modula i baze znanja. Spremanje i ispis rezultata često također zahtijeva posebne tehnike obrade slika. Nedostatak ovih faza obrade slike u sustavu za obradu medicinske slike je u tome što greške nastale u prvim fazama obrade, na primjer, prilikom unosa ili isticanja objekata od interesa na slici, mogu dovesti do nemogućnosti ispravne klasifikacije. Obrada podataka se provodi strogo sekvencijalno, te u većini slučajeva ne postoji mogućnost povratka na prethodne faze obrade, čak i ako su prethodno dobiveni netočni rezultati. Metode u fazi predobrade prilično su raznolike - odabir objekata od interesa, njihovo skaliranje, korekcija boja, podešavanje prostorne rezolucije, promjena kontrasta itd. Jedna od prioritetnih radnji u fazi predobrade slike je podešavanje kontrasta i svjetline. Pri korištenju odgovarajućih maski moguće je kombinirati dvije faze (filtriranje i prethodnu obradu) kako bi se povećala brzina analize podataka. Konačni rezultat analize slike u većini slučajeva određen je razinom kvalitete segmentacije, a stupanj detaljnosti objekata od interesa ovisi o konkretnom zadatku. Iz tog razloga nije razvijena posebna metoda ili algoritam koji bi bio prikladan za rješavanje svih problema identificiranja objekata od interesa. Konturiranje područja namijenjeno je odabiru objekata sa određenim svojstvima na slikama. Ovi objekti u pravilu odgovaraju predmetima ili njihovim dijelovima koje dijagnostičari obilježavaju. Rezultat konturiranja je binarna ili hijerarhijska (višefazna) slika, gdje svaka razina slike odgovara određenoj klasi odabranih objekata. Segmentacija je teška faza u obradi i analizi medicinskih podataka bioloških tkiva, budući da je potrebno razgraničiti područja koja odgovaraju različitim objektima ili strukturama na histološkim razinama: stanice, organele, artefakti itd. To je zbog velike varijabilnosti njihovih parametara, niske razine kontrasta analiziranih slika i složenog geometrijskog odnosa objekata. U većini slučajeva, da bi se dobio najučinkovitiji rezultat, potrebno je dosljedno koristiti različite metode segmentacije objekata od interesa na slici. Na primjer, za određivanje granica objekta od interesa koristi se metoda morfološkog gradijenta, nakon čega se provodi segmentacija praga za područja koja su prikladna za beznačajne razlike u karakteristikama svjetline. Za obradu slika u kojima su nepovezana homogena područja različita po prosječnoj svjetlini odabrana je Cannyjeva metoda segmentacije, a istraživanja su provedena na kliničkom primjeru. Modeliranje je slabo primjenjivo za prepoznavanje stvarnih kliničkih slika. Praktično iskustvo i stručna mišljenja o ishodu analize slike su od velike važnosti. Za probnu sliku odabrana je slika kompjutorizirane tomografije na kojoj je eksplicitno prisutan predmet interesa, prikazan na sl. 2.

Riža. 2. Slika kompjuterizirane tomografije s predmetom interesa

Za implementaciju shadinga koristimo Canny metodu. Ovaj pristup je otporan na buku i u većini slučajeva pokazuje bolje rezultate od drugih metoda. Canny metoda uključuje četiri koraka:

1) prethodna obrada - zamućenje slike (smanjujemo varijancu aditivnog šuma);

2) provođenje diferencijacije zamućene slike i naknadnog izračunavanja vrijednosti gradijenta u smjeru x i y;

3) provedba ne maksimalnog potiskivanja na slici;

4) prag slike.

U prvoj fazi Cannyjevog algoritma, slika se izglađuje pomoću maske s Gaussovim filterom. Gaussova jednadžba raspodjele u N dimenzijama ima oblik

ili u konkretnom slučaju za dvije dimenzije

(2)

gdje je r polumjer zamućenja, r 2 = u 2 + v 2; σ je standardna devijacija Gaussove distribucije.

Ako koristimo 2 dimenzije, tada ova formula definira površinu koncentričnih kružnica koje imaju Gaussovu distribuciju od središnje točke. Pikseli s distribucijom različitom od nule koriste se za određivanje matrice konvolucije koja će se primijeniti na izvornu sliku. Vrijednost svakog piksela postaje ponderirani prosjek za susjedstvo. Početna vrijednost piksela poprima maksimalnu težinu (ima maksimalnu Gaussovu vrijednost), a susjedni pikseli poprimaju minimalnu težinu, ovisno o udaljenosti do njih. Teoretski, distribucija u svakoj točki na slici trebala bi biti različita od nule, što slijedi izračun težinskih koeficijenata za svaki piksel na slici. Ali u praksi, pri izračunu diskretne aproksimacije Gaussove funkcije, pikseli na udaljenosti > 3σ se ne uzimaju u obzir, jer je prilično mala. Dakle, program koji obrađuje sliku treba izračunati matricu × kako bi se zajamčila dovoljna točnost u aproksimaciji Gaussove distribucije.

Rezultati istraživanja i njihova rasprava

Rezultat Gaussovog filtera s podacima jednakim 5 za veličinu Gaussove maske i 1,9 za vrijednost parametra σ - standardna devijacija Gaussove distribucije, prikazan je na Sl. 3. Sljedeći korak je traženje gradijenta područja od interesa pomoću konvolucije zaglađene slike s derivacijom Gaussove funkcije u okomitom i horizontalnom smjeru vektora.

Za rješavanje ovog problema primijenimo Sobel operator. Proces se temelji na jednostavnom pomicanju filter maske s piksela na piksel na slici. Za svaki piksel (x, y), odgovor filtra se izračunava iz unaprijed definiranih veza. Rezultat je početni odabir rubova. Sljedeći korak je usporedba svakog piksela sa svojim susjedima duž smjera gradijenta i izračunavanje lokalnog maksimuma. Informacija o smjeru gradijenta nužna je kako bi se uklonili pikseli u blizini granice bez prekidanja same granice u blizini lokalnih maksimuma gradijenta, što znači da pikseli obruba određuju točke u kojima je lokalni maksimum gradijenta dosegnut u smjeru vektora gradijenta. Ovaj pristup može značajno smanjiti detekciju lažnih rubova i osigurava debljinu granice objekta od jednog piksela, što je empirijski potvrđeno softverskom implementacijom algoritma za segmentiranje trbušnog reza na slici kompjuterizirane tomografije prikazanoj dolje na Sl. 4.

Sljedeći korak je korištenje praga za određivanje gdje je granica na svakom danom pikselu na slici. Što je prag niži, to će više granica biti u objektu od interesa, ali će rezultat biti osjetljiviji na šum i ocrtavanje nepotrebnih slikovnih podataka. Visoki prag može zanemariti slabe rubove područja ili dobiti granicu s više područja. Razgraničenje obruba primjenjuje dva praga filtriranja: ako je vrijednost piksela iznad gornje granice, uzima maksimalnu vrijednost (granica se smatra valjanom), ako je ispod, piksel je potisnut, uzimaju se točke s vrijednošću koja pada unutar raspona između pragova fiksnu prosječnu vrijednost. Piksel se pridružuje grupi ako je dodirne u jednom od osam smjerova. Jedna od prednosti Cannyjeve metode je da se tijekom obrade slike provodi prilagodba specifičnostima segmentacije. To se postiže uvođenjem praga za izrezivanje redundantnih podataka na dvije razine. Određene su dvije razine praga, gornja je p visoka, a donja p niska, pri čemu je p visoka > p niska. Vrijednosti piksela iznad visoke vrijednosti p označene su kao da odgovaraju granici (slika 5).

Riža. 3. Primjena Gaussovog filtera na CT snimku s predmetom od interesa

Riža. 4. Suzbijanje ne-maksima na segmentiranoj slici

Riža. 5. Primjena Cannyjevog algoritma segmentacije s različitim vrijednostima razina praga

Praksa pokazuje da postoji određeni interval na ljestvici razina praga osjetljivosti na kojem je vrijednost površine predmeta od interesa praktički nepromijenjena, ali istovremeno postoji određena razina praga, nakon čega se "razbijanje ” metode konturiranja, a rezultat identificiranja područja od interesa postaje neizvjestan. Ovaj nedostatak algoritma može se nadoknaditi kombiniranjem Cannyjevog algoritma s Houghovom transformacijom za pronalaženje krugova. Kombinacija algoritama omogućuje što jasnije isticanje predmeta proučavanja, kao i uklanjanje praznina u konturama.

zaključke

Time je riješen problem formuliranja tipičnih karakteristika patoloških objekata na medicinskim slikama, što će omogućiti provođenje operativne analize podataka o specifičnim patologijama u budućnosti. Važni parametri za određivanje ocjene kvalitete segmentacije su vjerojatnosti lažnih uzbuna i promašaja - odbijanja. Ovi parametri određuju primjenu automatizacije metode analize. Segmentacija u rješavanju problema klasifikacije i prepoznavanja objekata na slikama jedan je od najvažnijih. Metode konturiranja temeljene na segmentaciji granica regija - Sobel, Canny, Prewit, Laplassian - dobro su istražene i primijenjene. Ovaj pristup je određen činjenicom da je koncentracija pažnje osobe tijekom analize slike često usmjerena na granice između više ili manje homogenih zona u smislu svjetline. Na temelju toga konture često služe kao osnova za definiranje različitih karakteristika za interpretaciju slika i predmeta u njima. Glavni zadatak algoritama za segmentiranje zona interesa je izgradnja binarne slike koja sadrži zatvorena područja strukturnih podataka na slici. U odnosu na medicinske slike, ova područja su granice organa, vena, MCC-a, kao i tumora. Razvijena načela računalne analize medicinskih slika učinkovito se koriste i za operativne zadatke medicinske dijagnostike specijalizirane onkološke ustanove i u obrazovne svrhe.

Istraživan uz potporu programa "Daleki istok", grant broj 15-I-4-014o.

Recenzenti:

Kosykh N.E., doktor medicinskih znanosti, profesor, glavni istraživač, FGBUN "Računalni centar" FEB RAS, Khabarovsk;

Levkova EA, MD, DSc, profesor, Far Eastern State Transport University, Khabarovsk.

Bibliografska referenca

Doronicheva A.V., Savin S.Z. METODA SEGMENTACIJE MEDICINSKIH SLIKA // Fundamentalna istraživanja. - 2015. - Broj 5-2. - S. 294-298;
URL: http://fundamental-research.ru/ru/article/view?id=38210 (datum pristupa: 06.04.2019.). Predstavljamo Vam časopise koje izdaje "Akademija prirodnih znanosti"

Uređivanje slika i stvaranje kolaža bilo bi prilično uzbudljivo da većinu svog vremena ne morate trošiti na mukotrpno obilježavanje objekata. Zadatak postaje još teži kada su granice objekata zamagljene ili postoji transparentnost. Alati Photoshopa kao što su magnetski laso i čarobni štapić nisu baš pametni jer se fokusiraju samo na značajke slike niske razine. Vraćaju tvrde (tvrde) granice, koje je potrebno ručno ispraviti. Adobeov pristup Semantic Soft Segmentation pomaže riješiti ovaj zastrašujući zadatak rezanjem slike na slojeve koji odgovaraju semantički značajnim područjima i dodavanjem glatkih prijelaza na rubovima.

"Meka" segmentacija

Grupa istraživača iz laboratorija CSAIL na MIT-u i švicarskog sveučilišta ETH Zürich, radeći pod vodstvom Yagyza Aksoya, predložila je pristup ovom problemu koji se temelji na spektralnoj segmentaciji, dodajući mu suvremeni napredak u dubokom učenju. Uz pomoć informacija o teksturi i boji, kao i ekstrahiranih semantičkih značajki visoke razine, iz slike se gradi graf posebne vrste. Tada se iz ovog grafa gradi Kirchhoffova matrica (Laplacian matrica). Koristeći spektralnu dekompoziciju ove matrice, algoritam generira meke konture objekata. Slika izrezana na slojeve dobivena korištenjem vlastitih vektora može se zatim koristiti za uređivanje.

Pregled predloženog pristupa

Opis modela

Razmotrimo metodu stvaranja semantički značajnih slojeva korak po korak:

1. Spektralna maska. Predloženi pristup nastavlja rad Levina i njegovih kolega, koji su prvi upotrijebili Kirchhoffovu matricu u problemu automatske konstrukcije maske. Izgradili su matricu L, koja definira parnu sličnost između piksela u nekom lokalnom području. Koristeći ovu matricu, oni minimiziraju kvadratni funkcionalni αᵀLα s korisničkim ograničenjima, gdje α specificira vektor vrijednosti transparentnosti za sve piksele danog sloja. Svaka meka kontura je linearna kombinacija K vlastitih vektora koji odgovaraju najmanjim svojstvenim vrijednostima L, što maksimizira takozvanu rijetkost maske.

2. Afinitet boja. Kako bi izračunali znakove ne-lokalne blizine boja, istraživači generiraju 2500 superpiksela i procjenjuju blizinu između svakog superpiksela i svih superpiksela u susjedstvu s radijusom od 20% veličine slike. Korištenje ne-lokalne blizine osigurava da područja s vrlo sličnim bojama ostanu koherentna u složenim scenama poput onog ispod.

Ne-lokalna blizina boja

3. Semantička srodnost. Ova faza vam omogućuje odabir semantički povezanih područja slike. Semantička blizina potiče spajanje piksela koji pripadaju istom objektu scene i kažnjava spajanje piksela različitih objekata. Ovdje istraživači iskorištavaju prethodni napredak u prepoznavanju uzoraka i izračunavaju, za svaki piksel, vektor značajke koji je u korelaciji s objektom piksela. Vektori značajki izračunavaju se pomoću neuronske mreže, o čemu ćemo detaljnije raspravljati u nastavku. Semantički afinitet, kao i boja, definiran je u terminima superpiksela. Međutim, za razliku od afiniteta boja, semantički afinitet povezuje samo najbliže superpiksele, potičući stvaranje koherentnih objekata. Kombinacija nelokalne blizine boja i lokalne semantičke blizine omogućuje stvaranje slojeva koji pokrivaju slike fragmenta jednog semantički povezanog objekta (na primjer, vegetacija, nebo, druge vrste pozadine) koje su nepovezane u prostoru.

Semantička srodnost

4. Stvaranje slojeva. U ovom koraku, koristeći prethodno izračunatu blizinu, konstruira se matrica L. Iz ove matrice se izdvajaju svojstveni vektori koji odgovaraju 100 najmanjih vlastitih vrijednosti, a zatim se primjenjuje algoritam rijetkosti koji iz njih izdvaja 40 vektora duž kojih se slojevi su izgrađeni. Zatim se broj slojeva ponovno smanjuje korištenjem k-means algoritma grupiranja na k = 5. Ovo radi bolje od jednostavnog razrjeđivanja 100 vlastitih vektora na pet, budući da tako drastično smanjenje dimenzije čini problem poništenim. Istraživači su odabrali konačan broj kontura na 5 i tvrde da je to razuman broj za većinu slika. Međutim, ovaj se broj može ručno promijeniti ovisno o slici koja se obrađuje.


Meke konture prije i poslije grupiranja

5. Vektori semantičkih značajki. Za izračunavanje semantičke blizine korišteni su vektori značajki, izračunati pomoću neuronske mreže. Neuralna mreža temelji se na DeepLab-ResNet-101, obučenoj za problem metričkog predviđanja. Tijekom treninga poticalo se maksimiziranje L2-udaljenosti između obilježja različitih objekata. Dakle, neuronska mreža minimizira udaljenost između značajki koje odgovaraju jednoj klasi i maksimizira udaljenost u drugom slučaju.

Kvalitativna usporedba sa sličnim metodama

Slike u nastavku prikazuju rezultate predloženog pristupa (označenog s "Naš rezultat") u usporedbi s rezultatima najbližeg pristupa meke segmentacije - metode spektralnog maskiranja - i dvije najsuvremenije metode semantičke segmentacije: PSPNet scena metoda obrade i metoda segmentacije objekata Mask R-CNN.


Kvalitativne usporedbe meke semantičke segmentacije s drugim pristupima

Može se zamijeniti da su PSPNet i Mask R-CNN skloni greškama na granicama objekata, a meke konture konstruirane spektralnom metodom često nadilaze granice objekata. Istodobno, opisana metoda u potpunosti pokriva objekt, ne kombinirajući ga s drugima, te postiže visoku točnost na rubovima, dodajući meke prijelaze gdje je to potrebno. Međutim, treba napomenuti da semantičke značajke korištene u ovoj metodi ne razlikuju dva različita objekta koji pripadaju istoj klasi. Kao rezultat toga, na jednom sloju je predstavljeno više objekata, što se može vidjeti na primjeru slika žirafa i krava.

Uređivanje slika s mekim semantičkim obrisima

U nastavku je nekoliko primjera kako koristiti meke putove za uređivanje slika i stvaranje kolaža. Meke staze se mogu koristiti za primjenu određenih uređivanja na različite slojeve: dodavanje zamućenja pokreta (2), zasebne prilagodbe boja za osobe i pozadine (5, 6), zasebno oblikovanje za balon, nebo, krajolik i osobu (8) ... Naravno, isto se može učiniti i korištenjem ručno kreiranih maski ili klasičnih algoritama za odabir konture, ali s automatskim odabirom semantički značajnih objekata takvo uređivanje postaje puno lakše.

Korištenje meke semantičke segmentacije za uređivanje slika

Zaključak

Ova metoda automatski stvara meke konture koje odgovaraju semantički značajnim područjima slike koristeći mješavinu informacija visoke razine iz neuronske mreže i značajki niske razine. Međutim, ova metoda ima nekoliko ograničenja. Prvo, relativno je spor: vrijeme obrade slike od 640 x 480 je 3-4 minute. Drugo, ova metoda ne stvara zasebne slojeve za različite objekte iste klase. I treće, kao što je prikazano u nastavku, ova metoda može pogriješiti u početnim fazama obrade u slučajevima kada su boje objekata vrlo slične (primjer na vrhu), ili kada se kombiniraju meke staze u blizini velikih prijelaznih područja (donji primjer).

Slučajevi pogrešaka algoritma

Međutim, meki putovi stvoreni opisanom metodom pružaju prikladan srednji prikaz slike, omogućujući vam da potrošite manje vremena i truda prilikom uređivanja slika.

Vrhunski povezani članci