Bob
(clip, float "b", float "c", float "height")
Bob
bere klip a
provádí v něm bob-deinterlaci (odstranění prokládání). To znamená, že zvětšuje každé pole na celý
snímek interpolováním mezi řádky. Horní pole je vysouváno trochu výš oproti spodním polím, takže obraz ve skutečnosti nebude
poskakovat nahoru a dolů. Nicméně, ve statických scénách se bude
objevovat blikání ("shimmer") protože interpolace ve skutečnosti nerekonstruuje druhá pole moc přesně.
Tento filtr používá pro svou špinavou práci BicubicResize
. Můžete mu zadat hodnoty b a c. Můžete také využít příležitost ke
změně vertikálního rozlišení pomocí parametru height .
Filtr bob ve skutečnosti fysicky neposouvá
pozici polí. Prostě je vrací tam kde začaly. Pokud oddělujete pole pomocí SeparateFields
() pak
máte 2 snímky poloviční výšky: řádek 0 se stane
řádkem 0 snímku 0 a řádek 1 se stane řádkem 0 snímku 1. Takže jsou nyní řádky 0
a 1 na stejném místě! Bob nyní v zásadě zvětšuje velikost každého snímku 2krát, ale v prvním použije řádky pro sudé řádky a v
druhém snímku použije původní řádky pro liché řádky, přesne jak je očekáváno. Pokud prostě zvětšíte výšku každého snímku 2krát po provedení
oddělení polí pomocí SeparateFields
(), nebude to správně, protože fyzická pozice polí se posune.
Schematicky:
Předpokládejme, že řádky 0o, 1o, 2o, 3o, ... jsou původní řádky a 0i,
1i, 2i, 3i, ... jsou interpolované řádky.
začneme s
číslo řádku | snímek 0 |
0) | 0o |
1) | 1o |
2) | 2o |
3) | 3o |
oddělíme pole
číslo řádku | snímek 0 | snímek 1 |
0) | 0o | 1o |
1) | 2o | 3o |
zdvojnásobíme výšku
číslo řádku | snímek 0 | snímek 1 |
0) | 0o | 1o |
1) | 1i | 2i |
2) | 2o | 3o |
3) | 3i | 4i |
ale to je špatně, protože fyzická pozice pole se změnila.
Bob to udělá správně
číslo řádku | snímek 0 | snímek 1 |
0) | 0o | 0i |
1) | 1i | 1o |
2) | 2o | 2i |
3) | 3i | 3o |
bob(0.0, 1.0)
Bob(0.0, 1.0) zachová původní pole pro RGB a YUY2, a zachová jas (Luma), ale ne barevnost (Chroma) u YV12.
Koeficienty filtru b=0.0 a c=1.0 vám dají 0 při x= 1.0/2.0 a 1 při x= 0. Spolu s posunutím +/-0.25 pocházejícím od polohy původních polí, získáte velmi ostrý kubický filtr s koeficienty -1/8 5/8 5/8 -1/8 na vývodech x= 0.5/1.5 pro druhé pole.
Nicméně, protože posunutí na plochách (rovinách) barevnosti je jen 0.125 pro yv12, vývody nejdou na zcela stejné vzdálenosti. Více Diskuze
$English Date: 2007/03/10 22:35:42 $
Český překlad:9.10.2008