# MipSmooth

## Přehled

autor: Klaus Post (Sh0dan)
verze: 1.12
stáhnout: http://www.avisynth.org/warpenterprises/
kategorie: Prostorově-časové vyhlazovače
požadavky:

- YV12 & YUY2 & RGB Barevné prostředí
- ISSE podpora
- šířka dělitelná 4 pro YV12 a 8 pro YUY2

## Popis

Toto je MipSmoother - znovu stvořené SmoothHiQ a Convolution3D. MipSmooth byl vytvořen pro umožnění vyhlazení větších oblastí pixelů než 3x3(x3), pro odstranění bloků a vyhlazení nízkofrekvenčního šumu. Doufám, že tento filtr, bude lepší než C3D k vyhlazení rovinných ploch a gradientů. Měl by být dobrý pro animovaný materiál, ale ve skutečnosti také docela pěkně pomáhá obyčejným filmům.

## Syntaxe

Základní syntaxe: `MipSmooth()` - všechny parametry jsou volitelné.

Rozšířená syntaxe:

`MipSmooth` (clip, optional arguments)

Je řada argumentů, které řídí jak silné vyhlazení bude použito:

přednastavení = "MovieHQ" / "MovieLQ" / "AnimeHQ" / "AnimeLQ" / "VHS" / "Rainbow" / "Custom"

Načtěte vestavěné přednastavení jako nové výchozí. Podívejte se do kapitoly s přednastavením pro více informací.

    spatial = 5,
    temporal = 4,
    spatial_chroma =6,
    temporal_chroma =54,
    scenechange = 2.0

Všechna čísla jsou platná v rozsazích 0 - 255 a toto definuje prahovou hodnotu pro každý režim smíchání.
Prahové hodnoty mohou být srovnány s hodnotami C3D, kromě vyšších prahových hodnot vyhlazují mnohem méně než C3D.
Výchozí nastavení jsou docela konzervativní, a jen mírně vyhlazují plochy.

"Temporal influence" (časové ovlivnění) je nahrazeno celkovou detekcí změny scény (scenechange). Změny scény vypnou časové (temporal) zpracování v obou směrech. Použijte "show = true" pro zobrazení hodnot v každém snímku.

method = "strong" / "soft" / "supersoft" / "superstrong" - výchozí: "supersoft"
Toto nastavení řídí, jak silné rozmazání bude použito. Nastavení strong způsobí, že filtr bude mít větší účinek, zatímco soft je jemnější. Obecně strong by měl dát nejlepší výsledky na animovaných filmech, a soft by měl být nejlepší pro běžný filmový materiál.
SuperSoft / SuperStrong používají mírně odlišný přístup, a obecně vedou k méně artefaktům. Tyto dva jsou celkově trochu měkčí než režimy bez super.

downsizer = "reduce", "point", "bilinear", "bicubic", "lanczos" - výchozí: "reduce"
upsizer = "point", "bilinear", "bicubic", "lanczos" - default: "bilinear"
Tyto dva parametry řídí jak jsou vytvořeny mapy s nižším rozlišením. Zde by nemělo mít moc velký vizuální dopad použití různých resizerů (měničů velikosti). Experimenty jsou vítány!

scalefactor = 0.5
Tato možnost nastavuje měřítko (scale) každé mipmapy. Je to jak moc je každý snímek redukován v každé iteraci. Původní rozlišení je násobeno touto hodnotou. Použitelné hodnoty jsou od 0.2 do 4.0, i když doporučené hodnoty jsou jen mezi 0.4 a 1.5. Když je toto nastaveno na 1.0 neprovádí se žádné prostorové (spatial) rozmazání, ale to se nedoporučuje - použijte místo toho = 0. Experimentujte s hodnotami nad 1.0 - mohli by být užitečné.
Toto ovlivní rádius rozmazání. Čím je hodnota scale menší, tím větší rádius rozmazání - a také dostanete větší crosstalk - přeslechové poruchy.

    MipSmooth(downsizer="lanczos", upsizer="bilinear", scalefactor=1.5, method = "strong")

Například skript výše vytváří velmi pěkné, jemné vyhlazení, ale je velmi pomalý.

weigh = true / false
Tato možnost volí zda by měly být mipy vážené, podle toho jak jsou rozmazané. Nejvíce rozmazané mipy jsou váženy nejníže. Tato možnost je shodná s "Weighed Average" v SmoothHiQ, nebo "soft" maticí (matrix) v Convolution3D.

Tato možnost má efekt jen, když je použit režim SuperMip. Snižuje objem rozmazání pokud je zapnuta, takže může být použita pro dosažení vyšších prahových hodnot bez artefaktů.

show = true / false
Zobrazuje informaci o rozdílech změny scény, a použitých nastavení.
Toto nastavení nebude mít žádný efekt v režimu RGB24 - použijte místo něj RGB32!

storecustom = true / false
Toto zachová použitá nastavení v registru.
Pro opětovné vyvolání těchto přednastavení později použijte parametr preset = "custom" parameter.
Toto se nestane automaticky výchozími parametry.

## Přednastavení

Přednastavení jsou sadou vestavěných nastavení pro usnadnění vašich začátků. U jmen parametrů nezáleží na velikosti písma.

Všechna přednastavení jsou načtena jako výchozí hodnoty. To znamená, že je stále možné vyladit přednastavená nastavení nastavením jednotlivých parametrů.

Například: MipSmooth(preset = "movieHQ", scenechange = 8) použije MovieHQ, ale s nastavením scenechange na 8.

MovieHQ

Toto přednastavení je pro přírodní filmy ve vysoké kvality.

    Spatial: 4
    Temporal: 5
    Spatial Chroma: 5
    Temporal Chroma: 7
    Scenechange: 2.0
    Method: SuperSoft
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.85
    Weigh = true

MovieHQ2

Toto přednastavení je pro přírodní filmy ve vysoké kvality.

    Spatial: 2
    Temporal: 2
    Spatial Chroma: 3
    Temporal Chroma: 3
    Scenechange: 2.5
    Method: SuperSoft
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.75
    Weigh = true

MovieLQ

Toto přednastavení je pro přírodní filmy, které potřebuje více vyhlazení, pro odstranění více bloků a šumu.

    Spatial: 8
    Temporal: 7
    Spatial Chroma: 10
    Temporal Chroma: 8
    Scenechange: 3.5
    Method: SuperSoft
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.65
    Weigh = true

MovieLQ2

Toto přednastavení je pro přírodní filmy, které potřebuje více vyhlazení, pro odstranění více bloků a šumu.

    Spatial: 4
    Temporal: 4
    Spatial Chroma: 5
    Temporal Chroma: 5
    Scenechange: 3.5
    Method: SuperStrong
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.65
    Weigh = true

VHS

    Spatial: 9
    Temporal: 6
    Spatial Chroma: 10
    Temporal Chroma: 9
    Scenechange: 5.0
    Method: SuperStrong
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.60
    Weigh = true

AnimeHQ

Toto je pro mírné odstranění bloků a restauraci gradientu. Má více prostorového vyhlazení než obyčejné video, aby pomohlo obnovit rovinnost a gradient ploch.

    Spatial: 6
    Temporal: 8
    Spatial Chroma: 6
    Temporal Chroma: 8
    Scenechange: 5.0
    Method: SuperSoft
    Downsizer: Bicubic
    Upsizer: Bicubic
    Scalefactor: 0.60
    Weigh = true

AnimeLQ

Toto je pro více zašumělý materiál s více bloky a šumem.

    Spatial: 5
    Temporal: 5
    Spatial Chroma: 5
    Temporal Chroma: 7
    Scenechange: 5.5
    Method: SuperStrong
    Downsizer: Bilinear
    Upsizer: Bicubic
    Scalefactor: 0.5
    Weigh = true

Rainbow

Toto by mělo pomoci odstranit duhové chvění. Podívejte se na toto vlákno z Doom9 pro info a alternativy. Snižuje scalefactor pro ještě větší odstranění duhy, ale více rozmazává barevnost.

    Spatial: 0
    Temporal: 0
    Spatial Chroma: 255
    Temporal Chroma: 255
    Scenechange: 2.0
    Method: SuperStrong
    Downsizer: Bilinear
    Upsizer: Bilinear
    Scalefactor: 0.65
    Weigh = true

Custom

Toto bude nastavení.
Pokud nejsou do registru uložena žádná nastavení, vyskočí chyba.
Kdykoliv je možné použít "storecustom = true" což uloží aktuální nastavení do registru, a ta budou pak použita jako uživatelské parametry

## Příklady & Triky:

Zkuste experimentovat s docela tvrdým změkčováním s velmi nízkými prahovými hodnotami. Například:

    MipSmooth(spatial=2, temporal=2, method="superstrong", scalefactor=0.75, weigh=true)

Toto je docela dobré nastavení pro velmi kvalitní materiál, které bude stabilizovat obraz a umožní mnohem lepší kompresi a stále udržuje docela vysoké množství detailů. Tyto režimy jsou implementovány jako přednastavení "MovieHQ2" a "MovieLQ2" .

    MipSmooth(spatial=255, scenechange=0, method="soft")
    # Toto bude dávat velmi měký obraz - vídaný v některých komerčních pořadech a soap operách.

    MipSmooth(spatial=255, scenechange=0, method="strong", scalefactor=0.65)
    # Toto bude velmi vyhlazovat obraz podobně jako měkké gaussovo rozmazání.

    MipSmooth(spatial=255, scenechange=255, temporal=255, method="superstrong", scalefactor=0.6, weigh=false)
    # Toto bude dávat také velmi měkký obraz s určitým časovým rozmazáním.

Při správném oříznutí před tímto filtrem, použijte parametr "align=true", dostupný od verze AviSynth 2.5.3 a pozdější. To provede ve většině případů mírné urychlení.

## Informace na pozadí

"Mip" pochází z "MipMap", což je termín používaný v realtime 3D-graickém světě, a v podstatě popisuje podvzorkovanou verzi textury (bitmapových ploch 3D objektů), která je použita, když je objekt daleko. MipMapy jsou vždy poloviční velikosti původního obrazu.

To co MipSmooth dělá, je ve skutečnosti velmi jednoduché:

Bere zdrojový snímek, a vytváří tři nové verze, každý s poloviční velikostí toho předchozího. To je prováděno použitím ReduceBy2, nebo volitelného resizeru. Tyto snímky jsou pak všechny zvětšeny zpátky na původní velikost pomocí BilinearResize. Tyto snímky jsou pak porovnány s původním, a pokud je rozdíl pod prahovou hodnotou, je informace použita pro výsledný pixel.

To samé se provádí pro předchozí a následující snímek - a všechny tyto tři snímky a jejich "rozmazané" mipmapy jsou použity pro rekonstrukci každého pixelu.
Prahová hodnota je přizpůsobena tak, že více rozmazané obrazy jsou dány nižší prahovou hodnotou než ostřejší verze.

Supermip nejdřív vytváří tři snímky (supermipy) z prostorově rozmazaných obrazů a dělá časové změkčení na těchto třech snímcích. To významně redukuje artefakty při silném odšumění/rozmazání.

## Další možná vylepšení

- Upravitelný počet mipů.
- Příklady obrázků v dokumentaci.
- GUI.

`$English Date: 2004/08/13 21:57:25 $`

`Český překlad:15.2.2009`