### [yv12][yuy2]

# SpatialSoften / TemporalSoften

## SpatialSoften(clip, int radius, int luma_threshold, int chroma_threshold)
TemporalSoften(clip, int radius, int luma_threshold, int chroma_threshold, int "scenechange", int "mode")

radius: zakres klatek, które będą, w danym momencie, analizowane
luma_threshold/chroma_threshold: granica wygładzania lumy/chromy
scenechange: użycie tej opcji pomoże w ominięciu mieszania się pikseli w poprzek, co następowałoby przy zmianie sceny. 'n' definiuje maksymalną średnią zmianę piksela pomiędzy klatkami. Dobrą wartością dla 'n' są liczby z przedziału 5- 30. Jednak wymagane jest wspomaganie ISSE. [Dobrymi, początkowymi wartościami są: TemporalSoften(4,4,8,15,2)]
mode: przyjmuje wartość 1 (wyłączony) lub 2 (włączony). Mode ustawione na '2' oznacza nowy i lepszy sposób mieszania klatek, przy czym klip wynikowy będzie w lepszej jakości. Filtr z tym ustawieniem pracuje znacznie szybciej. Jednak również wymagane jest wspomaganie ISSE. (domyślnie mode przyjmuje wartość 1)

Filtry SpatialSoften i TemporalSoften usuwają szum z klipu video poprzez selektywne mieszanie pikseli. Filtry te mogą zdziałać cuda, ale również mogą usunąć drobne szczegóły jeśli argumenty przyjmą zbyt wysoką wartość. Są jednak bardzo wolne, szczególnie z dużą wartością radius, więc argument ten powinien być ustawiony na samym końcu, najpierw należy poeksperymentować z pozostałymi argumentami.
SpatialSoften zastępuje każdą próbkę w klatce ze średnią wszystkich pobliskich próbek różniących się od środkowej próbki nie więcej niż threshold. "Pobliskiej" znaczy nie bardziej odległej niż wskazuje na to argument radius. Threshold używany jest w luma_threshold dla próbek kanału Y (jasność) i w chroma_threshold dla próbek kanałów U i V (kolor).
TemporalSoften ma podobne działania, z wyjątkiem, że analizuje ten sam piksel w pobliskich klatkach, a nie pobliskie piksele w tej samej klatce. Wszystkie pobliskie klatki są analizowane. Filtr ten jest mniej skuteczny niż filtr SpatialSoften.
Najlepszym wyjściem będzie zabawa z argumentami tych filtrów. Można się wtedy dowiedzieć co one dokładnie robią. Np. jeden z trzech argumentów niech przyjmie bardzo wysoką wartość, a reszta argumentów - niską. Ustawienie każdego z trzech argumentów na ‘0’ będzie powodowało bardzo wolne działanie filtra przy pozostawieniu klipu video bez widocznej zmiany.
TemporalSoften wygładza oddzielnie lumę i chromę, natomiast SpatialSoften wygładza te kanały tylko wtedy, gdy za równo luma jak i chroma mają podany threshold.

### translated by Slim