[непроверенная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
→‎Кодирование: Убрал избыточные данные о квантовании (о нём есть отдельная статья), добавил уточнение об арифм. кодировании.
→‎Кодирование: Уточнение, дополнение, пояснение.
Строка 15:
Motion JPEG использует внутрикадровое сжатие с потерями на основе [[Дискретное косинусное преобразование|дискретного косинусного преобразования]] (ДКП). Эта математическая операция преобразует каждый кадр/поле видеоизображения из пространственной области в частотную область (область преобразования). Психовизуальная модель, основанная на особенностях восприятия изображений человеком, удаляет высокочастотную информацию, загрубляя резкие переходы яркости и оттенков цвета. Коэффициенты ДКП [[Квантование (обработка сигналов)|квантуются]], квантованные коэффициенты затем без потерь упаковываются в выходной битовый поток с использованием [[Код Хаффмана|кодов Хаффмана]] либо с помощью [[Арифметическое кодирование|арифметического кодирования]]. Почти все программные реализации MJPEG позволяют пользователям контролировать степень сжатия (а также другие параметры) и достигать компромисса качества изображения и размера файла. При аппаратных решениях параметры кодирования как правило предварительно выбраны и зафиксированы.
 
В MJPEG применяется схема только внутрикадрового сжатия (по сравнению с более сложными схемами вычисления с межкадровым сжатием). В то время, как современные видеоформаты с межкадровым сжатием, такие как MPEG1, MPEG2, H.264/MPEG-4 AVC и им подобные, достигают реальной степени сжатия 1:50 и более, отсутствие в MJPEG межкадрового сжатия ограничиваеткак егоправило эффективностьне допозволяет получать коэффициенты сжатия, превосходящие 1:20 и менее, в зависимости от допустимости пространственных искажений в декодированных кадрах видеопоследовательности. Так как кадры сжимаются независимо друг от друга, MJPEG требует меньше вычислительных ресурсов и оперативной памяти на этапе кодирования. Однако, декодирование MJPEG может оказаться более затратным, чем при аппаратнойиспользовании реализациимежкадрового сжатия, поскольку, во-первых, предполагает полное декодирование в MJPEG каждого макроблока изображения, тогда как при использовании схем с межкадровым сжатием часть макроблоков, помеченных как "skip", не декодируется, а берётся из предыдущих кадров. Во-вторых, время выполнения процедур хаффменовского декодирования и обратного ДКП зависит от информационной насыщенности декодируемого макроблока изображения, которая при отсутствии межкадрового сжатия оказывается значительно большей, чем при его наличии (в первом случае декодируется полное изображение, во втором — разностное, то есть не само изображение, а лишь его отличие от предсказанного по предыдущим кадрам).
 
При внутрикадровой схеме сжатия в MJPEG качество изображения зависит непосредственно от статической (пространственной) сложности каждого видеокадра. Кадры с большими гладкими переходами или монотонными областями хорошо сжимаются, и, вероятно,при будутвысоких степенях сжатия содержатьсодержат помимо оригинальных деталей видимые артефакты сжатия в виде блоков размером 8х8 пикселей, несколько видимыхотличающиеся артефактовпо сжатияяркости и оттенку цвета. Появление их связано с грубым квантованием низкочастотных коэффициентов ДКП. Кадры, имеющие сложные текстуры, тонкие кривые линии, склонныпомимо проявлятьартефактов ДКП-артефакты,блочности такиесодержат кактакже эффектартефакты, Гиббсапроявляющиеся (появлениев виде шума вокруг тонких линий и на резких границах) и(так блочность.называемый Видео сжатое MJPEG также нечувствительно кэффект сложности движенияГиббса), т.связанные е.с изменениегрубым сквантованием течениемвысокочастотных временикоэффициентов ДКП.
 
Для форматов QuickTime Apple определила два типа кодирования: MJPEG-A и MJPEG-B. MJPEG-B не сохраняет структуру JPEG файлов внутри видеофайла, следовательно, невозможно извлечь кадр в файл JPEG без незначительного измененияреконструкции заголовка JPEG.
 
== Преимущества и недостатки ==