Прошлая статья нашла своих читателей, а поэтому продолжаем! В этот раз поговорим о JPEG... Что нам нужно знать про JPEG и почему этот парень заслуживает отдельной статьи? А знать нам для начала нужно то, как JPEG устроен. Начнем с того, что в JPEG не используется RGB, вместо него мы имеем дело с YCbCr. Из чего состоит YCbCr? Продолжим. Второй факт о JPEG — он не хранит цвет каждого пикселя. Вместо этого JPEG использует DCT-сжатие: Каждый блок преобразуется в частотное пространство с помощью DCT (дискретное косинусное преобразование). Высокие частоты, как правило, уменьшаются (зависит от степени сжатия) Что такое DCT? Это способ представить изображение (а в нашем случае каждый блок) в виде матрицы коэффициентов (или же по-другому частот), описывающих его Но сперва посмотрим, как изменения этой матрицы скажутся на изображении. Примеры приведены с изменением частоты на 70% для пущей наглядности. Но для нашей задачи требуется изменение всего на 1 bit. А следовательно, изменения бу