Deep Image Prior - Deep Image Prior
Deep Image Prior je typ konvoluční neurální sítě používané k vylepšení daného obrazu bez předchozích tréninkových dat kromě samotného obrazu. Neuronová síť je náhodně inicializována a použita jako předtím k řešení inverzních problémů, jako je redukce šumu , super rozlišení a inpainting . Statistika obrazu je zachycena spíše strukturou generátoru konvolučních obrazů, než jakoukoli dříve naučenou schopností.
Metoda
Pozadí
Inverzní problémy, jako je redukce šumu , super-rozlišení a malování, lze formulovat jako optimalizační úkol , kde je obraz, poškozená reprezentace tohoto obrazu, je datový termín závislý na úkolu a R (x) je regulátor . To vytváří problém s minimalizací energie.
Hluboké neuronové sítě se učí generátor / dekodér, který mapuje náhodný vektor kódu na obrázek .
Metoda poškození obrazu použitá ke generování je vybrána pro konkrétní aplikaci.
Specifika
V tomto přístupu je předchozí nahrazen implicitním předchozím zachyceným neurální sítí (kde pro obrázky, které mohou být vytvořeny hlubokými neuronovými sítěmi a jinak). Tím se získá rovnice pro minimalizátor a výsledek procesu optimalizace .
Minimalizátor (obvykle sestup gradientu ) začíná od náhodně inicializovaných parametrů a sestupuje do místního nejlepšího výsledku, aby poskytl funkci obnovení.
Overfitting
Parametr θ lze použít k obnovení jakéhokoli obrazu, včetně jeho šumu. Síť se však zdráhá zachytit šum, protože obsahuje vysokou impedanci, zatímco užitečný signál nabízí nízkou impedanci. To má za následek, že se parametr θ blíží dobře vypadajícímu lokálnímu optimu , pokud počet iterací v procesu optimalizace zůstává dostatečně nízký, aby nepřekročil data.
Aplikace
Odšumění
Principem potlačení šumu je obnovení obrazu z hlučného pozorování , kde . Distribuce je někdy známá (např. Profilovací senzor a fotonový šum) a může být volitelně začleněna do modelu, i když tento proces funguje dobře při slepém odšumění.
Jako datový termín se používá kvadratická energetická funkce , která se zapojí do rovnice, čímž se získá problém s optimalizací .
Super rozlišení
Super rozlišení se používá ke generování verze obrazu x s vyšším rozlišením. Datový člen je nastaven na místo, kde d (·) je operátor převzorkování, jako je Lanczos, který decimuje obraz faktorem t.
Malování
Inpainting se používá k rekonstrukci chybějící oblasti v obraze . Tyto chybějící pixely jsou definovány jako binární maska . Datový termín je definován jako (kde je produkt Hadamard ).
Rekonstrukce blesku bez blesku
Tento přístup lze rozšířit na více obrázků. Přímým příkladem, který autor zmínil, je rekonstrukce obrazu za účelem získání přirozeného světla a jasnosti z dvojice blesk-ne-blesk. Rekonstrukce videa je možná, ale vyžaduje zohlednění prostorových rozdílů optimalizací.
Implementace
- Referenční implementace přepsán v Pythonu 3.6 se PyTorch 0.4.0 knihovny byl propuštěn autorem pod Apache 2.0 licencí: deep-image-před
- TensorFlow založené realizaci napsaný v Pythonu 2 a vydané pod CC-SA 3.0 Licence: deep-image-předchozího tensorflow
- KERAS založené implementace napsaný v Pythonu 2 a povolený pod GPLv3 : machine_learning_denoising
Reference
- ^ jo (2012-12-11). "profilovací senzor a fotonový šum .. a jak se ho zbavit" . darktable.
- ^ „DmitryUlyanov / Deep-image-prior“ . 3. června 2021.
- Uljanov, Dmitrij; Vedaldi, Andrea; Lempitsky, Victor (30. listopadu 2017). "Priorita hlubokého obrazu". arXiv : 1711.10925v2 [ cs.CV ].