В сжатии JPEG потери происходят во время квантования и во время преобразования DCT.
Почему мы получаем много нулей после квантования после DCT-преобразования IN JPEG Image Compression.
В сжатии JPEG потери происходят во время квантования и во время преобразования DCT.
Почему мы получаем много нулей после квантования после DCT-преобразования IN JPEG Image Compression.
Я мог неправильно понять ваш вопрос. Получение «много нулей» - это весь смысл квантования. Нули кодируются неявно, добавляя к каждому символу в коде Хаффмана префикс количества нулей до следующего коэффициента.
Квантование в сжатии JPEG выполняется путем целочисленного деления каждого коэффициента с соответствующим значением в таблице квантования. Если коэффициент меньше значения в таблице квантования, он станет равным нулю.
В декодере коэффициенты умножаются на значения в таблице квантования, так что они восстанавливаются до своего прежнего значения (более или менее), если коэффициент не равен нулю.
После преобразования DCT компрессор делит каждое выходное значение DCT на «коэффициент квантования» и округляет результат до целого числа. Чем больше коэффициент квантования, тем больше данных теряется. Из-за округления вы можете увидеть много нулей. Полученные коэффициенты содержат значительное количество избыточных данных. Следующее сжатие Хаффмана удалит избыточность без потерь, что приведет к уменьшению размера данных JPEG.
То, что сказал @Dragon66, верно: матрица DCT делится на матрицу количественного определения и округляется до целого числа, в результате чего получается 0, когда коэффициент достаточно высок.
Причина этого заключается в том, что человеческий глаз более чувствителен к шуму в более низких пространственных частотах, но игнорирует большую часть шума в более высоких.
Когда вы обрабатываете пиксельную матрицу с помощью DCT и получаете результирующую матрицу, коэффициент в верхнем левом углу представляет собой среднюю яркость пиксельного блока. Двигаясь вправо, коэффициенты представляют возрастающую горизонтальную пространственную частоту. Двигаясь вниз, коэффициенты представляют возрастающую вертикальную пространственную частоту.
Таким образом, матрица количественной оценки имеет более высокие компоненты, перемещающиеся в правый нижний угол. Информация, потерянная, когда коэффициент достигает 0 в этих позициях, менее важна для самого изображения, поскольку она представляет компоненты с более высокой частотой.
Полное объяснение здесь: http://www.media-matters.net/docs/resources/Digital%20Files/MPEG/MPEG%20Encoding%20Basics.pdf