Variabilní poloměr Gaussovo rozostření, sbližování jádro

hlasů
3

Píšu Gaussovo rozostření s proměnným poloměrem (směrodatnou odchylku), tedy každý pixel obrazu je stočil použít jiný jádro. Standardní metody pro výpočet Gaussova rozostření nefungují zde: FFT, osově oddělení, opakované box-blur, všichni předpokládají, že jádro je stejná pro celý obrázek.

Teď se snažím ji přiblížit pomocí následujícího schématu:

Přibližné Gaussovské jádro K (x, y) se po částech konstantní funkce f (x, y) definované sady N osy zarovnaný obdélníky R K a koeficienty alfa k jsou:

    f (x, y) = Σ k = 1 N α k · χ R k (x, y)

Nechť g (x, y) být náš obraz, poté

    ∬ 2 K (x, y) · g (x, y) dxdy ≈ ∬ 2 f (x, y) · g (x, y) dxdy = Σ k = 1 N α k · ∬ R k g (x , y) dxdy

Integrální na RHS je jednoduchý integrál přes obdélníku, a jako takový může být vypočítána v konstantním čase precomputing dílčích částky pro celý obraz.

Výsledný algoritmus běží v O (W · H · N), kde W a H jsou rozměry obrazu a N je (pokud vím) inverzní úměrná chybou sbližování.

Zbývající část je najít dobré aproximace funkcí f (x, y). Jak nalézt optimální přiblížení k Gaussian, pokud je podáván buď počet obdélníků N (minimalizace chyby), nebo s ohledem na chyby (minimalizace počtu obdélníků)?

Položena 24/09/2011 v 21:45
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
0

Vzhledem k umístění a velikost obdélníků, by mělo být poměrně snadné přijít na své koeficienty, takže skutečným problémem je vypracování kam dát obdélníky.

Vzhledem k tomu, jste sbližování Gaussova, zdá se, alespoň rozumně omezit naši pozornost na obdélníky, jejichž střed se kryje se středem Gaussian, takže jsme vlastně mají jen 1-rozměrný problém - pracuje se na velikosti vnořené množiny obdélníků, které předpokládám jsou buď čtverce nebo jsou podobné Gaussova, pokud máte poměr stran jiný než jedna.

To lze vyřešit pomocí dynamického programování. Předpokládejme, že budete pracovat z vnějšku do středu. Ve fázi N jste vypracovali nxk tabulky, které vám umožní nejlepší možnou chybu aproximace vycházející z 1,2 ... n kruhy vnějších pixelů až 1,2, .. K různé obdélníky a velikost nejvnitřnější obdélníku odpovědný za které nejlépe chyby. Vypracovat fázi N + 1 vezmete v úvahu všechny možné velikosti pro to, co bude nejvnitřnější obdélník tak daleko, což přispívá x kroužky pixelů na vnější ploše. Práci ven alfa k tomuto obdélníku, který dává nejlepší kondici za bodů v novém prstenci a prstenci mimo to není ponecháno na vnějších obdélníků. Použitím hodnot v tabulce již vypočítané víte, že nejlepší možnou chybu získáte, když necháte až k vnější obdélníky pokrýt ty oblasti, takže můžete pracovat ven přispěl nejlepší celková chyba od toho, co je nyní N + 1 kroužky pixelů , To vám umožní vyplnit položky tabulky pro N + 1 vnější pixelů. Když jste pracovali si cestu do středu oblasti, kterou budou schopni vypracovat optimální řešení pro celou oblast.

Odpovězeno 25/09/2011 v 09:14
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more