# PeachSmoother

## Přehled

autor: Lindsey Dubb
verze: 1.0c
stáhnout: http://www.avisynth.org/warpenterprises/
kategorie: Prostorově časové vyhlazovače
požadavky: YUY2 Barevné prostředí

## Úvod

Toto je další filtr, který očišťuje obraz zprůměrováním vizuálního šumu mezi snímky i uvnitř snímků.

Peach je navržen tak, aby se vypořádal se zvláštnostmi TV vysílání. Automaticky se sám jemně vyladí pro dobrou i pro špatnou kvalitu signálu a příjmu, a může se dokonce rozumně vypořádat s některými druhy interferencí. Je to ohromné!

Filtr prověřuje obraz, odvozuje množství šumu v obrazu, a využívá odhad k určení jak vyrušit tento šum. K rozlišení mezi šumem a pohybem, filtr používá korelací uvnitř i mezi poli, stejně jako lokálních barevných rozdílů. Stupeň jistoty o pohybu, šumu, a detailech je použit pro rozhodnutí jaký mix předchozích, aktuálních, a okolních barev zobrazit.

Aby jste mohli Peach použít, musí být váš počítač schopen pracovat s SSE instrukcemi. Česky to znamená, že budete potřebovat Pentium 3, Athlon, novější Celeron, nebo nějaký ještě novější procesor.

Tento filtr pracuje v YUY2 barevném prostředí. takže pokud je váš klip enkódován v RGB barvách, budete muset nejdříve použít ConvertToYUY2().

Peach Smoother AVISynth filtr napsal Lindsey Dubb, copyright 2002. Pokud máte nějaké, komentáře, problémy, nebo návrhy, uvítám, když mi pošlete email nebo napíšete na Doom9 AVISynth Fórum.

## Nastavení

NoiseReduction
Celé číslo od 1 do 200; 35 je výchozí

Občas filtr neví jestli změna v obrazu pochází od šumu nebo od pohybu. Když to nastane, je na výběr — předpokládat pohyb, a obraz bude šumější pokud se zmýlíte. Nebo předpokládat šum, a chyba pak rozmaže pohyb.

Nastavení NoiseReduction vás nechá říci filtru jak se rozhodnout. Nastavte ho nízko, a počítač bude pracovat bezpečně, vyhne se všem částem obrazu s možným pohybem. Nastavte ho vysoko, a šum bude výrazně snížen — za cenu rozmazání a ztráty detailů v pomalých pohybových oblastech. Tato volba je ovlivněna množstvím šumu — čím víc šumu je v obrazu, tím víc ho bude nutné rozmazávat aby se redukoval.

Neexistuje dokonalý způsob jeho výběru — prostě zkuste různé hodnoty až bude vypadat tak hezky jak jen to je možné. Komedie a dramata jsou pravděpodobně nejlepší materiál pro trefení nastavení, protože velké záběry obličejů umožňují opravdu snadno rozeznat rozmazání. (To je proto, že zvlášť dobře vidíme poruchy ve tvářích.)

Pamatujte, že se tento filtr automaticky upravuje na množství šumu v obrazu. Takže jakmile máte nastavení, jaké se vám líbí, můžete ho použít jak pro čisté tak pro zašumělé video.

Nicméně, existují dva druhy videa, které si zasluhují trochu zvláštní rozvahy: kreslené filmy a sport. U kreslených můžete použít mnohem vyšší NoiseReduction, protože animace má sklon mít méně jemných detailů. A u sportu (nebo jiného videa s neustálým pohybem) je velmi malý účinek šumového filtru, takže ho můžete prostě přeskočit.

Než jemně vyladíte toto nastavení, ujistěte se, že je filtr schopen odhadnout šum ve vašem klipu. Udělejte to použitím parametru Dot, popsaným níže.

Stability
Celé číslo od -100 do 100; 20 je výchozí

Toto nastavení říká filtru, jak moc smíchat barvy, když není jisté, jestli tam je pohyb. Pro zachování malého množství šumu v celém obrazu, snižte toto nastavení. Pro získání opravdu čistě vypadajícího obrazu použijte vyšší hodnotu. Nenastavujte ho ale příliš vysoko, jinak obdržíte plakátovitost (posterization).

Bez ohledu na vaše nastavení Stability , filtr vždy zachová určité množství variací za účelem zachování barevné hloubky původního obrazu.

DoSpatial
Logický; TRUE je výchozí

Toto nastavení rozhoduje zda chcete, aby filter použil prostorové vyhlazení. Je to velmi jemný vyhlazovač, a je použit většinou na málo kontrastní, pohybové části obrazu. Filtr je trochu rychlejší, když je prostorové filtrování vypnuto.

Spatial
Celé číslo od 0 do 400; 100 je výchozí

Toto určuje jak silné prostorové vyhlazení bude použito. Je to měřeno v procentech, relativně k množství časového vyhlazení. Ale Peach upřednostňuje použití časového vyhlazení kde je to možné, takže prostorové vyhlazení se spustí jen když časové vyhlazení selže.

Dot
Logický; FALSE je výchozí

Je to... malý zelený bod!

S touto možností se objeví malinký zelený bod, když je potvrzen odhad šumu v aktuálním snímku. Zobrazí poblíž levého horního rohu obrazu — konkrétně o 16 níže a 16 doprava od levého horního rohu. Bod (dot) je ukazatelem, že filtr určil hodnotu šumu. Obecně se vypne, když je celý obraz v rychlém pohybu — Když je tolik pohybu, že filtr přestává věřit aktuálnímu odhadu. V takovém případě filtr pracuje vážením předchozích dobrých hodnot.

Pokud je obraz v neustálém pohybu, bude tak pracovat dokud filtr dokáže určit úroveň šumu. Interference má také sklon prodlužovat odhad šumu — čas odhadu závisí na druhu a množství interferencí.

Readout
Logický; FALSE je výchozí

Aby pomohl rozhodnout jak moc vyhlazovat, tento filtr měří šum ve videu. Když zapnete Readout, toto měření se zobrazí ve výstupu.

Uvidíte dvě čísla. Prvním je měření střední úrovně šumu. Druhým je míra nejnižšího množství šumu viděného kdekoli v obrazu. To nabízí myšlenku, o tom jak moc se šum ve videu mění. Tyto odhady se budou měnit podle průběhu videa.

Čísla jsou měřeny jako předpokládané absolutní změny v jednotlivém pixelu (jak jeho barevnosti tak jasu) mezi dvěma sousedními snímky.

To poskytuje objektivní měření šumu. To je také způsob jak zjistit hodnoty pro NoiseLevel a možnost Baseline, popsané níže.

NoiseLevel a Baseline
Dvě nastavení — každé je desetinné číslo od 0.0 do 100.0; ve výchozím stavu nepoužité

Místo odhadování úrovně šumu můžete říci filtru Peach přesně, kolik šumu je v obrazu.

Aby jste to tak provedli, změňte hodnoty jak pro NoiseLevel tak pro Baseline. Aby jste dostali tyto hodnoty, použijte možnost Readout, popsanou výše. Všimněte si, že Baseline by nikdy neměl být větší než NoiseLevel.

Proč by jste chtěli zadávat tato čísla? Protože Peach bere čas když zjišťuje množství šumu. A v řídkých případech se může ošklivě mýlit. (To je obvykle způsobeno scénami s mraky kouře a prachu, což může Pach chybně označit za šum.) Zadáním hodnot šumu, nebude odhad nikdy kolísat. Přeskočení odhadu šumu také urychlí zpracování.

Na druhou stranu, některá videa opravdu mají různé množství šumu. V takovém případě vám bude mnohem lépe s obvyklou detekcí šumu filtru Peach.

ShowMotion
Logický; FALSE je výchozí

Toto je jiná obskurní diagnostika. Když je to zapnuto, filtr bude ukazovat svůj odhad zda se objevil pohyb. Bílé oblasti jsou definitivně pohyblivé, černé oblasti jsou definitivně statické. Šedé oblasti jsou šedé oblasti.

Debug
Logický; FALSE je výchozí

Tato možnost má význam jen pro stout of heart. Pro vysvětlení jeho výstupu se podívejte na komentáře dole FLT_AdaptiveNoise.c .

## O filtru Peach

### Kolik redukce šumu bych měl použít?

Ať rozhodnou vaše oči. Já rád udržuji nastavení celkem nízko — rozmazané tváře vypadají hůře než malé poruchy.

Překvapivě může malé množství variací barev vylepšit obraz. Přepnutím zpět a vpřed mezi barvami je obraz schopen dát dojem barvy někde mezi. Šum může také překrýt umělé struktury v obrazu a tím vám usnadňuje ignorovat chyby.

S tímto na mysli, se Peach snaží ponechat malé množství barevných variací. Ve výsledku vám nikdy nedá plně stabilní obraz. To je pravděpodobně špatné pro kompresi, ale zlepší to kvalitu obrazu.

### Vidím hodně rozmazání v dřívějších částech mého konstantně pohybujícího se (nebo velmi tmavého) videa. Co bych měl udělat pro zlepšení výsledků?

Pokud vidíte hodně rozmazání, zkuste použít možnost Dot . Pokud se ukáže zelený bod, pak je problém takový, že Peach nebyl schopen zjistit kolik tam bylo šumu.

Existuje několik způsobů jak to vyřešit. Nejlepším je zapnout možnost Readout a sledovat pozdější část videa, kde je obraz statický. Poznamenejte si hodnoty NoiseLevel a Baseline ze statické části. Pak je zadejte do vašeho příkazu, a celá sekvence by měla vypadat dobře.

Pokud vaše video nemá žádné statické části, tak by jste měli prostě přeskočit tento filtr. Časový vyhlazovač neudělá moc dobrého pro čistě vysoce pohyblivý materiál.

Další způsob jak vyřešit tento problém je vložit nějaké statické video (ze stejného klipu) na začátek sekvence. To umožní filtru Peach odhadnout šum před tím než se ukáže rychlý materiál.

### Obraz vypadá trochu měkký. Je něco, co s tím mohu udělat?

Zkuste snížit nastavení Stability.

## Šum obecně

### Jaký je nejlepší způsob odstraňování šumu?

Přesvědčte se, že máte dobrý signál. Šum může pocházet ze shluků kabelů, špatných spojení, slabého výkonu a uzemění, špatně navržené video karty, elektrických pomůcek (cokoli od vypínačů světla až po různé počítačové komponenty) nebo ze špatného zdroje videa. Tyto problémy jsou mimo rámec tohoto souboru nápovědy. Navrhl bych podívat se na AV Science Forum ’s Home Theater Computers FAQ and board, kde jsou tyto náměty podrobně diskutovány.

### Měl bych použít šumový filtr?

To záleží na tom co sledujete. Sport a příroda zobrazující obecně — skutečně cokoli s pohyblivou nízkokontrastní texturou — nebývají dobře zpracovány časovými vyhlazovači. To je proto, že textura vypadá hodně jako šum.

Peach pracuje dobře s obtížným materiálem a vypíná se tam kde je detekován pohyb. To způsobuje překvapivě málo problémů s polovými sporty dokud šum pozadí není příliš špatný. Ale to není perfektní — Automobilové závody jsou obzvláště rozmazané. Když to nastane, je nejlepší přeskočit jakékoli časové vyhlazovače.

Jinak je obecně dobré použít šumový filtr.

### Kolik šumových filtrů bych měl použít?

Buďte velmi opatrní při používání více než jednoho. Spuštění více časových šumových filtrů může způsobit, že další filtry budou příliš důvěřovat svému odhadu šumu/pohybu. To obvykle vede k plakátovitosti (posterization), skvrnitosti (speckling), a pruhovitosti (banding).

Spuštění prostorového filtru po Peach Smoother může pracovat celkem dobře, protože jeho prostorové vyhlazení je celkem jemné — prostě se jen přesvědčte, že nespustíte prostorový filtr jako první (před Peach).

### Kam bych měl ve svém skriptu vložit šumový filtr?

Obecně je nejlepší filtrovat šum jak nejdříve je to jen možné. To je zvlášť pravdou pro Peach, protože jeho odhad šumu může být zkreslen některými filtry. Například, Pokud dáváte titulky do vašeho videa, Peach může detekovat chybějící šum v titulcích.

U prokládaného materiálu je velmi dobrý nápad umístit filtr před odstraňování prokládání. To je proto, že dobrá redukce šumu může významně zlepšit přesnost odstraňování prokládání.

Pro inverzní telecine je situaci horší posoudit. Ale podle empirického pravidla je přece jen lepší spustit redukci šumu první.

Výjimkou k tomuto pravidlu je hřebenové (comb) filtrování. Jakékoli hřebenové filtry by měli běžet před snižováním šumu, protože šumový filtr jinak bude interpretovat barevné poruchy jako pohyb.

### Mohou jiné triky pomoci snížit šum?

Pokud používáte Bt8x8 kartu, můžete vypnout Odd a Even Luma Peaking. Zapnutí horizontálního filtru karty sníží šum, ale také ztratí některé detaily.

## Změny filtru

- Version 0.9a — Initial release
- Version 0.9b — Allowed parameters to be set; Different defaults; Corrected to deal with Y = 16 black; Additional orange smoke
- Version 0.9c — Added parameter checking
- Version 0.9d — Corrected to allow spatial smoothing of more than 100%
- Version 0.9e — Filter now turns off when jumping between frames
- Version 0.9f — Filter now handles interlaced material correctly; The smoothing option has been rescaled to something closer to a real percentage; Different defaults; Yet more orange smoke
- Version 0.9g — Enabled spatial (but not temporal) smoothing when jumping between frames; Turning off spatial smoothing now improves speed; enabled prefetching for a speedup; improved parameter handling
- Version 0.9h — Provided a (legible) onscreen readout of the amount of noise. Allowed noise values to be supplied by the user. Allowed spatial smoothing in the first frame.
- Version 1.0a — Improved determination of amount of spatial smoothing to use. Improved horizontal correlation code. Improved accuracy of noise estimate readout. Made temporal color combination closer to the theoretical goal. (Side effect: you might want to drop your NoiseReduction by about ten points.) Increased role of spatial correlation in motion estimates. Changed the name of the Estimates option to Readout.
- Version 1.0b — Provided a display of the internal motion estimate with the ShowMotion option. Allowed negative Stability settings.
- Version 1.0c — Moved the readout a little further from the edge of the screen.

`$English Date: 2004/08/17 20:31:18 $`

`Český překlad:10.5.2009`