Как стать автором
Обновить

Комментарии 7

Я думаю статья привлекла бы больше внимания если бы вы хотя бы в общих чертах рассказали сообществу что это за матрицы и что, черт побери, такое этот «квантизатор». Для многих хабр — это довольно серьезный канал расширения кругозора. Небольшие пояснения в статье что к чему, как и зачем люто приветствуются…
Могу и это написать. Просто я думал, что читатели хабра довольно начитаны о таких понятиях, как квантизатор, дискретно-косинусное преобразование и др. К тому же об этом есть много инфы на просторах инета и даже на Википедии. А ведь копипастить не приветствуется! Если есть массовая потребность в освещении аспектов кодирования — конечно постараюсь. А она есть?
Даже если и нет, то здесь всегда найдется много людей, готовые узнать что-то новое. И если это новое преподносится понятным языком, то это только приветствуется. Вы же пишете статью для массовой аудитории. Не все конечно разбираются в вашей области, но многим было бы интересно разобраться. Если лень писать азы, дайте хотябы ссылки на википедию в тексте. Я понимаю, что тот кто заинтересовался может и сам нагуглить и посмотреть, но можно же сэкономить людям время.
«Для примера взял маленький кусочек из фильма с хорошим качеством, разрешение 720х304… Вывод: матрица юзабельна на любых разрешениях,»
Вы тоже любите экстаполировать??

Люди которые изобрели компрессию видео, уже все до вас сделали — не только алгоритм изобрели но и нашли оптимальные параметры квантования. И поверьте, для того чтоб определить оптимальные матрицы они брали не малький кусочек фильма, а большой набор разнообразных видео-данных и оценивали качество не «на глазок» а с помощью численных и субъективных метрик.

К слову сказать, для субъективного теста качества видео, необходимый минимум респондентов — 30 чел, это если они рандомно набраны, а если bias какой то есть, то нужно больше. Потом полученные результаты усредняются, аутлаеры выкидываются (всегда будет как минимум 5% зрителей с теми или иными нарушениями зрения), ну и так далее следуя научным традициям…

Нет, я не люблю экстраполировать. Я делал покадровую сверку «на глазок» различных видеоотрезков: с высоким разрешением и низким, с чёткими краями объектов, с фоном, где цвет имеет плавный переход и т.д. Но зачем я буду вываливать читателям все нюансы исследования? Ведь в конечном итоге всё сводится к практическому применению матрицы и я убедился, что она пригодна. Как ещё я должен убеждать читателей? Возьмите и сами проведите такой эксперимент: закодируйте нединамичный отрывок стандартной матрицей H263 с постоянным квантизатором и потом с теми же настройками моей матрицей. Сравните размеры файлов и качество покадрово. Если вы скажете, что H263 делает более качественную картинку с меньшим размером — я признаю, что лоханулся.

А если вас не устраивает метод «на глазок», то это тот же древний спор о сравнении mp3 256Kbit и цифрового оригинала. Дело в том, что на практике 99% людей не в состоянии услышать разницу. Так стоит ли раздувать слона о недостаточности визуальной сверки?
Вы советуете вместо стандартного параметра «сила компрессии» менять непосредственно матрицу квантования.
(Пусть даже для устарелого алгоритма компрессии и достаточно невысокого разрешения уровня DVD).

Как человек, слегка знакомый с математикой компрессии видео (хотя люди которые сильно хорошо с ней знакомы сидят буквально в одной комнате со мной и наверно уже строчат очередные патенты для следующего после HEVC стандарта.компрессии), я удивился узнав что какие-то манипуляции с матрицей квантизации могут на что то сильно повлиять.

Я могу понять, если вы найдете специфический контент, например мультики (или вообще что нибудь оригинальное, типа видео УЗИ-обследования :) на котором присутствуют резкие переходы цвета и/или отсутствие текстур или какие то другие особенности; и для которого специально-подготовленные матрицы квантования дают лучшую компрессию при том же уровне качества. Это бы имело какой-то смысл.
Возможно, даже имело бы смысл если бы вы нашли оптимальную матрицу для вашего конкретного фильма, и похвастались бы уменьшением размера файла (хотя возможность double-pass компрессии поставит под вопрос выгоду от такой матрицы).
Для общего пользования ваша матрица ни чем не лучше, а скорее даже и хуже чем стандартная. Что если я хочу закомпрессировать свой собственный фильм? К кому мне обращаться? Писать вам email, «а не подскажите ли вы мне наилучшую матрицу квантования, уважаемый? »?

Ну и ваш последний аргумент про то что 99% людей не способно уловить разницу подрывает остатки вашей аргументации. Нафиг чего то менять, если и так все работает и никто не заметит разницы.
Начну с конца. То, что 99% людей не различают mp3 256Kbit и цифровой оригинал — это факт, были исследования, можете найти в инете. Вообще mp3 был создан в институте Фраунгофера, они же и выпустили наиболее качественный энкодер, и 320Kbit не с потолка взято, ибо есть наука психоакустика, и то, что 320Kbit предел для mp3 — тоже не зря сделано. Аналогичная история с JPEG, где качество 100 всё равно отличается от оригинала, но на глаз это увидеть невозможно (делал сверку в масштабе 1000%). Поэтому никто на самом деле не хранит jpeg-фотки в качестве 100, а в 90 вполне достаточно.

Теперь о моей матрице. Смысл в ней есть, ибо при квантизаторе 4 она делает лучшую картинку соответственно восприятию многих людей (и не спрашивайте, почему я в этом уверен. Даже ребёнок может задолбать учёного, пытаясь вытянуть ответ на очевидные вещи, типа «а почему солнце восходит на востоке, а садится на западе?», «а почему Земля не плоская?», «а почему все люди не могут иметь IQ 150?»). А при квантизаторе 4 размер файла получается очень небольшим. Так что мой результат с одного прохода поспорит с любым результатом в два прохода – выгода очевидна.

А ещё собственную матрицу можно использовать для получения файлов, которые потом будут обрабатываться, например в VirtualDub. Для этого нужно кодировать с квантизатором 2 и желательно все коэффициенты уменьшить на 4. И качество будет лучше, чем при стандартных настройках.

Вы сказали: «я удивился, узнав, что какие-то манипуляции с матрицей квантизации могут на что-то сильно повлиять». Сделайте простой эксперимент: зайдите в настройки кодэра, выставьте любую кустомную матрицу и измените первое число во втором квадрате на 40 или больше (в моей матрице это число 12). Закодируйте несколько кадров и откройте результат в VirtualDub. Увидите и всё поймёте. И тогда нам не придётся писать длинные и бессмысленные комменты.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации