?

Log in

No account? Create an account
dibr
 
[Most Recent Entries] [Calendar View] [Friends View]

Wednesday, September 19th, 2012

Time Event
10:47p
дискретно-косинусный джипег
     Навеяло.
     Всякие там фотошопы, а также пакетные обработчики картинок, для (при) передискретизации джипегов сначала распаковывают джипег, а затем собственно интерполируют распакованное изображение под новое разрешение. Поскольку хорошая интерполяция - задачка та ещё, правильные программы используют хитрый матан вроде интополяции Ланцоша, а адоб уже который год жуёт bicubic, пытаясь взять не качеством, так хотя бы количеством (bicubic, bicubic smoother, bicubic sharper, bicubic automatic. Хотя, к чести адоба, прогресс по сравнению с первыми версиями bicubic виден невооруженным глазом - бикубик в PS CS6 от Lanczos уже почти не отличить, в то время как в PS6 (который без CS) муар на этом бикубике был отчётливый, "сеточка" при увеличении - тоже :-))

     Но ведь джипег - это квадратики 8*8, внутри которых сделано дискретно-косинусное преобразование, то есть разложение на косинусы (и отбрасывание "лишнего"). А косинус, если что, функция непрерывная, а значит определённая (а также непрерывная, гладкая, и прочие хорошие мат.эпитеты) везде, в том числе и в любой точке между пикселями. А значит, интерполировать под нужное разрешение (причём любое, без привязки к "блоку" 8х8) можно непосредственно при распаковке, причём это по определению будет лучше интерполяции уже после распаковки - мы используем значения "хороших" базисных функций сразу в нужных точках, без странной процедуры вычисления сначала в "ненужных" точках с последующей интерполяцией "уж как получится" в нужные, а раз базисные функции у нас хорошие - косинусы - то и результат будет гладким и слабоартефачным.

     Правда, конкретно фотошопу это не поможет - у него этап распаковки в растр с изначальным разрешением принципиально важен, он же редактор. А вот "командлайновым утилитам" - уже можно. В каком-то виде (но не как у меня, как-то по другому) оно, оказывается, есть в jpegtran. Но можно же больше! И лучше :-)

<< Previous Day 2012/09/19
[Calendar]
Next Day >>
My Website   About LiveJournal.com