Что значит фактическое сжатие изображения

Как работает сжатие изображений

Одним из самых важных изобретений в сфере IT абсолютно точно можно считать такой формат сжатия, как JPEG, который на сегодняшний день является стандартом в Интернете. Благодаря нему мы имеем возможность сжимать картинки, практически без визуальных потерь, в десятки, сотни и даже тысячи раз.

Если не JPEG, то наш Интернет, возможно, выглядел бы совсем иначе, и мы явно не могли бы с такой скоростью и комфортом проводить свободное время в Интернете, лайкать Инстаграмы подружек, читать новости, листать ленту ВКонтакте, да вообще все, к чему мы привыкли в нашей будничной жизни. И это все не так просто, как кажется на первый взгляд. Поэтому давайте разберемся, как же работают процессы в сжатии картинок.

Первый этап работы алгоритма заключается в том же переводе изображения в цветовое пространство YUV. Принцип его работы ничем не отличается от такового в сжатии видео. Об этом процессе подробнее мы поговорим в одном из следующих материалов.

После того, как алгоритм разбил изображение на три составляющих, начинается процесс ресемплинга для всех цветовых масок. В ходе его работы, каждые четыре рядом стоящие пикселя объединяются в один. Благодаря этому, изображение проходит первый этап фактического сжатия, тем самым теряя десятку, другую килобайт.

Далее вся картинка разделяется на блоки 8х8 пикселей.

Это необходимо для работы следующего алгоритма, по которому компьютер должен понять, какое количество деталей находится в каждом блоке, чтобы в случае если их там мало, закодировать эту часть меньшим количеством бит.

Например, если это не особо детализированная часть изображения, обладающая преимущественно близкими оттенками цвета. Вместо того, чтобы кодировать цвет каждого блока отдельно, например неба, вся такая зона изображения заливается одним цветом.

Называется весь этот процесс Дискретным Косинусным Преобразованием, который в свою очередь является разновидностью преобразования Фурье, применяемым в том числе при сжатии музыки.

В процессе его работы блоки 8х8 пикселей, раскладываются на 64 периодических перехода. Выглядят они вот так:

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

Приближаясь к последнему этапу в работе алгоритма сжатия, вступает процесс квантования и сканирования матрицы зиг-загом. После выполнения последнего, начинается, говоря простым языком, округление коэффициентов из нашей матрицы пространственных волн. Ведь среди них есть те, у которых значение равно, либо немногим больше отличается от нуля. Посему их можно сократить, удалив часть ненужной, на взгляд алгоритма, информации.

Затем идет процесс энтропийного кодирования. В конце его работы множество нулей, оставшихся после выполнения предыдущего этапа, заменяются числом, обозначающим их количество. Затем каждый из сгенерированных коэффициентов кодируется кодом Хаффмана, то есть наибольшие и наименьшие значения кодируются соответственным количеством бит.

Ну и в конце, результаты работы каждого из этапов алгоритма суммируются, приводя тем самым к общему уменьшению размера файла, зависящим от степени сжатия. Все, что осталось после кодирования, склеивается в один документ с расширением JPEG.

Сам по себе формат JPEG довольно старый, на сегодняшний день изобретено множество более совершенных алгоритмов сжатия, например WebP, который превосходит JPEG, относительно сохранения качества изображений практически на 30%. Тем не менее JPEG явно еще не собирается отправляться на заслуженный покой.

Источник

Простым языком о том, как работает сжатие файлов

Авторизуйтесь

Простым языком о том, как работает сжатие файлов

Сжатие файлов позволяет быстрее передавать, получать и хранить большие файлы. Оно используется повсеместно и наверняка хорошая вам знакомо: самые популярные расширения сжатых файлов — ZIP, JPEG и MP3. В этой статье кратко рассмотрим основные виды сжатия файлов и принципы их работы.

Что такое сжатие?

Сжатие файла — это уменьшение его размера при сохранении исходных данных. В этом случае файл занимает меньше места на устройстве, что также облегчает его хранение и передачу через интернет или другим способом. Важно отметить, что сжатие не безгранично и обычно делится на два основных типа: с потерями и без потерь. Рассмотрим каждый из них по отдельности.

Сжатие с потерями

Такой способ уменьшает размер файла, удаляя ненужные биты информации. Чаще всего встречается в форматах изображений, видео и аудио, где нет необходимости в идеальном представлении исходного медиа. MP3 и JPEG — два популярных примера. Но сжатие с потерями не совсем подходит для файлов, где важна вся информация. Например, в текстовом файле или электронной таблице оно приведёт к искажённому выводу.

MP3 содержит не всю аудиоинформацию из оригинальной записи. Этот формат исключает некоторые звуки, которые люди не слышат. Вы заметите, что они пропали, только на профессиональном оборудовании с очень высоким качеством звука, поэтому для обычного использования удаление этой информации позволит уменьшить размер файла практически без недостатков.

13–15 декабря, Онлайн, Беcплатно

Аналогично файлы JPEG удаляют некритичные части изображений. Например, в изображении с голубым небом сжатие JPEG может изменить все пиксели на один или два оттенка синего вместо десятков.

Чем сильнее вы сжимаете файл, тем заметнее становится снижение качества. Вы, вероятно, замечали такое, слушая некачественную музыку в формате MP3, загруженную на YouTube. Например, сравните музыкальный трек высокого качества с сильно сжатой версией той же песни.

Сжатие с потерями подходит, когда файл содержит больше информации, чем нужно для ваших целей. Например, у вас есть огромный файл с исходным (RAW) изображением. Целесообразно сохранить это качество для печати изображения на большом баннере, но загружать исходный файл в Facebook будет бессмысленно. Картинка содержит множество данных, не заметных при просмотре в социальных сетях. Сжатие картинки в высококачественный JPEG исключает некоторую информацию, но изображение выглядит почти как оригинал.

Читайте также:  Что значит скетчинг в рисовании

При сохранении в формате с потерями, вы зачастую можете установить уровень качества. Например, у многих графических редакторов есть ползунок для выбора качества JPEG от 0 до 100. Экономия на уровне 90 или 80 процентов приводит к небольшому уменьшению размера файла с незначительной визуальной разницей. Но сохранение в плохом качестве или повторное сохранение одного и того же файла в формате с потерями ухудшит его.

Посмотрите на этот пример.

Оригинальное изображение, загруженное с Pixabay в формате JPEG. 874 КБ:

Результат сохранения в формате JPEG с 50-процентным качеством. Выглядит не так уж плохо. Вы можете заметить артефакты по краям коробок только при увеличении. 310 КБ:

Исходное изображение, сохранённое в формате JPEG с 10-процентным качеством. Выглядит ужасно. 100 КБ:

Где используется сжатие с потерями

Как мы уже упоминали, сжатие с потерями отлично подходит для большинства медиафайлов. Это крайне важно для таких компаний как Spotify и Netflix, которые постоянно транслируют большие объёмы информации. Максимальное уменьшение размера файла при сохранении качества делает их работу более эффективной.

Сжатие без потерь

Сжатие без потерь позволяет уменьшить размер файла так, чтобы в дальнейшем можно было восстановить первоначальное качество. В отличие от сжатия с потерями, этот способ не удаляет никакую информацию. Рассмотрим простой пример. На картинке ниже стопка из 10 кирпичей: два синих, пять жёлтых и три красных.

Вместо того чтобы показывать все 10 блоков, мы можем удалить все кирпичи одного цвета, кроме одного. Используя цифры, чтобы показать, сколько кирпичей каждого цвета было, мы представляем те же данные используя гораздо меньше кирпичей — три вместо десяти.

Это простая иллюстрация того, как осуществить сжатие без потерь. Та же информация сохраняется более эффективным способом. Рассмотрим реальный файл: mmmmmuuuuuuuoooooooooooo. Его можно сжать до гораздо более короткой формы: m5u7o12. Это позволяет использовать 7 символов вместо 24 для представления одних и тех же данных.

Где используется сжатие без потерь

ZIP-файлы — популярный пример сжатия без потерь. Хранить информацию в виде ZIP-файлов более эффективно, при этом когда вы распаковываете архив, там присутствует вся оригинальная информация. Это актуально для исполняемых файлов, так как после сжатия с потерями распакованная версия будет повреждена и непригодна для использования.

Другие распространённые форматы без потерь — PNG для изображений и FLAC для аудио. Форматы видео без потерь встречаются редко, потому что они занимают много места.

Сжатие с потерями vs сжатие без потерь

Теперь, когда мы рассмотрели обе формы сжатия файлов, может возникнуть вопрос, когда и какую следует использовать. Здесь всё зависит от того, для чего вы используете файлы.

Скажем, вы только что откопали свою старую коллекцию компакт-дисков и хотите оцифровать её. Когда вы копируете свои компакт-диски, имеет смысл использовать формат FLAC, формат без потерь. Это позволяет получить мастер-копию на компьютере, которая обладает тем же качеством звука, что и оригинальный компакт-диск.

Позже вы, возможно, захотите загрузить музыку на телефон или старый MP3-плеер. Здесь не так важно, чтобы музыка была в идеальном качестве, поэтому вы можете конвертировать файлы FLAC в MP3. Это даст вам аудиофайл, который по-прежнему достаточно хорош для прослушивания, но не занимает много места на мобильном устройстве. Качество MP3, преобразованного из FLAC, будет таким же, как если бы вы создали сжатый MP3 с оригинального CD.

Тип данных, представленных в файле, также может определять, какой вид сжатия подходит больше. В PNG используется сжатие без потерь, поэтому его хорошо использовать для изображений, в которых много однотонного пространства. Например, для скриншотов. Но PNG занимает гораздо больше места, когда картинка состоит из смеси множества цветов, как в случае с фотографиями. В этом случае с точки зрения размера файлов лучше использовать JPEG.

Проблемы во время сжатия файлов

Бесполезно конвертировать формат с потерями в формат без потерь. Это пустая трата пространства. Скажем, у вас есть MP3-файл весом в 3 МБ. Преобразование его в FLAC может привести к увеличению размера до 30 МБ. Но эти 30 МБ содержат только те звуки, которые имел уже сжатый MP3. Качество звука от этого не улучшится, но объём станет больше.

Также стоит иметь в виду, что преобразовывая один формат с потерями в аналогичный, вы получаете дальнейшее снижение качества. Каждый раз, когда вы применяете сжатие с потерями, вы теряете больше деталей. Это становится всё более и более заметно, пока файл по существу не будет разрушен. Помните также, что форматы с потерями удаляют некоторые данные и их невозможно восстановить.

Заключение

Мы рассмотрели как сжатие файлов с потерями, так и без потерь, чтобы увидеть, как они работают. Теперь вы знаете, как можно уменьшить размер файла и как выбрать лучший способ для этого.

Алгоритмы, которые определяют, какие данные выбрасываются в методах с потерями и как лучше хранить избыточные данные при сжатии без потерь, намного сложнее, чем описано здесь. На эту тему можно почитать больше информации здесь, если вам интересно.

Источник

Влияет ли сжатие на качество изображения?

Довольно часто, когда дело доходит до работы с цифровыми фотографиями и рисунками, нам приходиться их сжимать. Сжатие позволяет уменьшить размер изображений и тем самым существенно упрощает размещение их на веб-сайте и отправку по электронной почте своим близким.

Несмотря на то, что прошло уже более 15 лет с момента появления формата JPEG он и по сей день является лучшим для цифровой фотографии. Под сжатием изображения следует иметь в виду JPEG сжатие, работа которого заключается в уменьшении размера изображения.

Читайте также:  какой номер у воды в майнкрафт

К сожалению, данное действие также снижает и качество изображения, хотя результат такого ухудшения далеко не всегда заметен, особенно при просмотре его на мониторе компьютера. Но благодаря Photoshop и его довольно редко используемого режима смешивания (режима наложения) становятся видны все «ужасы» JPEG сжатия.

Для того чтобы увидеть то, что происходит с изображением, мы воспользуемся режимом наложения Difference (Разница). Режим наложения (Blend Mode) Разница (Difference) приобрёл свое название в результате того, что он показывает различие между двух слоёв. Любые области из обоих слоёв, которые в точности совпадают, будут отображаться только черным цветом, и наоборот, области, в которых имеются отличия, будут отображаться в различных цветах.

Режим наложения Difference (Разница) используется очень редко, если только для создания каких-либо необычных эффектов, но он неплохо справляется с функцией по отображению мусора (да-да, именно мусора), который добавляется в результате JPEG сжатия изображения. Это совершенно не означает, что мы должны прекратить сжимать фотографии или изображения. В идеальном мире скорее да, но не в нашей реальности. Данный режим просто позволяет нам понять, что происходит с нашими фотографиями или изображениями, особенно тем из нас, кто до настоящего времени думал, что нет никакой разницы между качеством сжатого изображения и оригинала.

Перед вами скриншот с двумя открытыми документами в редакторе Photoshop, каждый из которых содержит идентичное изображение:

Но идентичны ли изображения на самом деле? Внешность порой бывает обманчива, в особенности, если это касается экрана компьютера. Откровенно говоря, они не одинаковы. Изображение, что справа – оригинал, это не подвергнутое сжатию изображение, оно было загружено непосредственно с цифровой фотокамеры. А вот изображение слева – копия оригинала, сохранённая в Photoshop с 60% качеством, что является довольно типичной ситуацией. Это означает, что к изображению слева было применено сжатие.

Понимаю, что исходя из представленного выше скриншота, сложно судить о качестве изображений и даже, если бы вы просматривали их на моем мониторе в редакторе Photoshop, то вы также с трудом могли бы ответить на вопрос, какое из изображений было подвергнуто сжатию, а какое – нет. Но в случае если бы мы распечатали их, то разница была бы очевидной, на мониторе, имеющим меньшее разрешение, чем распечатанное изображение, разницу определить не так уж и легко. По крайней мере, без использования режима наложения Difference (Разница).

Чуть раннее я говорил, что режим наложения Difference (Разница) показывает отличие между двумя слоями, и что любая область, которая в точности совпадает у данных двух слоев, отображается сплошным черным цветом. Давайте проведём тест. Для этого я возьму фото оригинал (несжатое изображение) и сделаю его дубликат, воспользовавшись клавишами Ctrl+J. В палитре слоёв у меня теперь два слоя – фото оригинал в качестве фона и его копия чуть выше, которой Photoshop дал название Layer 1.

Поскольку слой с названием Layer 1 является дубликатом фонового слоя, то они одинаковы. Теперь воспользуемся режимом наложения Difference (Разница), для того чтобы это проверить. Для этого выберите слой Layer 1 и в верхней части панели слоёв в параметре Blend Mode (Режим наложения) измените режим наложения с Normal (Обычные) на Difference (Разницу).

Обратите внимание на окно документа с включённым режимом Difference (Разница) для слоя Layer 1, мы видим, что это изображение залилось чистым чёрным цветом. В этом случае режим наложения Difference (Разница) говорит нам о том, что слои действительно идентичны:

Пойдём ещё дальше, для того чтобы убедиться, что перед нашими глазами действительно сплошной чёрный цвет. Для этого мы будем применять корректирующий слой Levels (Уровни). Перемещаемся в нижнюю часть панели слоёв и кликаем по иконке (в форме чёрно-белого кружка) New Adjustment Layer (Новый Корректирующий слой):

Теперь из списка корректирующих слоёв выбираем Levels (Уровни):

Появилось диалоговое окно Levels (Уровни). Обратите внимание на гистограмму в центре диалогового окна, на ней представлена информация о тональности, отображенной на изображении. В нашем случае все пиксели изображения отображены чисто чёрным цветом, такое происходит тогда, когда оба слоя идентичны. Следовательно, всё, что показала гистограмма – чёрная вертикальная полоска слева:

Гистограмма показала нам то, что кроме чёрного цвета посторонние цвета здесь не присутствуют. Из этого следует, что фоновый слой и слой Layer 1 на 100% одинаковы. Пока все бесспорно. Мы только что доказали факт, который каждый из нас и так знает – дубликат слоя всегда идентичен его оригиналу. Увлекательно, не так ли? Продолжим.

Чтобы выйти из диалогового окна Levels (Уровни), кликаем на кнопке Cancel (Закрыть), что в верхнем правом углу, а затем из палитры слоёв удаляем слой Layer 1, кликнув и перетащив его на пиктограмму мусорной корзины.

Теперь в палитре только фоновый слой.

А теперь давайте посмотрим, что произойдет, в результате использования того же самого приёма только в сравнении оригинала и его сжатой копии. Как я уже говорил ранее – увидеть разницу между ними на экране монитора не так-то просто. Но что же об этом нам скажет режим наложения Difference (Разница), давайте посмотрим.

Из двух открытых окон с фотографиями, я выбрал документ сжатой копией (фото слева) и при помощи инструмента Move (Перемещение) перетащил её в окно документа с фото оригиналом (справа).

Таким образом, оба изображения имеют одинаковую высоту и ширину, нажимаем клавишу Shift, а затем отпускаем кнопку мышки. Данное действие позволит нам чётко наложить копию изображения на оригинал в окне документа.

В панели слоёв у нас опять два слоя. Изображение оригинал это фоновый слой, а его сжатая версия чуть выше, на слое с названием Layer 1.

Читайте также:  что такое градиент в вязании

Еще раз меняем режим наложения Normal (Обычные) на Difference (Разница).

Итак, если оба изображения визуально одинаковы, то при применении режима наложения Difference (Разница) у нас должен получиться сплошной чёрный цвет.

Хмм. Посмотрите внимательно на изображение выше, видите на нём слабо выраженный шум? Всё зависит от вашего монитора, а точнее от его настроек. Вы можете увидеть только чёрный цвет, но я на своём мониторе вижу нечто иное, и скажу определенно, что это не тот сплошной чёрный цвет, какой получался раннее при сравнении копии слоя и оригинала. Здесь присутствует что-то ещё… И это «что-то» позволяет нам сделать вывод, что и оригинал и сжатое изображение не идентичны. Но чем же они отличаются друг от друга? Действительно ли сжатие в результате даёт какую-либо заметную разницу?

Опять воспользуемся корректирующим слоем Levels (Уровни) и с помощью гистограммы попытаемся ответить на эти вопросы. В нижней части панели слоёв кликаем по иконке New Adjustment Layer (Новый Корректирующий слой) и из списка выбираем Levels (Уровни).

На этот раз в показаниях гистограммы в её левой части что-то изменилось, это доказывает, что зрение меня не обманывало.

Как видите, чёрная вертикальная полоска стала больше, это значить, что чёрный цвет на изображении, содержит примеси других цветов а, следовательно, и обе версии изображений не одинаковы.

Ну, так в чём же собственно разница?

Всё очень просто – в мусоре. Каждый раз, сжимая изображения, мы автоматически добавляем к ним кучу мусора. Мусор или шум, можете называть это, как хотите.

Линия внизу означает то, что мы повредили изображение. Сколько же мусора добавило JPEG сжатие? Пока нам кажется, что немного, но нам и сейчас сложно это разглядеть. Поэтому кликаем по маленькому белому ползунку внизу гистограммы и перемещаем его до чёрного ползунка.

Не вдаваясь в тонкости, касаемо работы диалогового окна Levels (Уровни), поясню: этими действиями мы сделали весь шум, присутствующий на нашем изображении, ярче. Теперь нам легче его рассмотреть. Не забывайте о том что, многообразие цветов, которые вы видите на изображении, свидетельствуют о разнице между оригиналом фотографии и его сжатой версией.

Не очень приятное зрелище, не так ли? Теперь мы можем с легкостью увидеть эти посторонние цвета, свидетельствующие о повреждении, возникшие в результате JPEG сжатия.

Изображение заполнено тем, что обычно называют «артефакты сжатия», об этом, грубо говоря, можно сказать «мы взяли и испортили безупречное по качеству изображение».

То, насколько повреждается цифровое изображение, в результате применения сжатия мы уже видели, теперь возникает вопрос, что мы можем сделать по этому поводу? Не многое, к сожалению. Формат JPEG и по ныне наш лучший выбор для хранения цифровых фотографий, а когда размер файла слишком велик, у нас действительно не остаётся выбора, кроме как его сжать.

Если вы разрабатываете веб-сайт и качество для вас важнее, то вы можете обойтись без использования сжатия. Но для проектов под печать лучше всего использовать оригинальные несжатые изображения.

Источник

. УМЕНЬШИТЬ РАЗМЕР ФОТО и ОСВОБОДИТЬ МЕСТО на диске? Пакетное сжатие фото (Декабрь 2021).

Table of Contents:

Что такое компрессия?

Сжатие используется для уменьшения размера любого файла на компьютере, включая файлы изображений. Файлы сжаты, чтобы уменьшить их размер и упростить совместное использование в Интернете. Однако, когда дело доходит до фотографий, сжатие не всегда хорошо, потому что сжатие может повлиять на качество изображения.

В таком формате сжатия, который содержится в файле JPEG, вы можете поместить больше файлов на карту памяти камеры, но вы также жертвуете качеством. Продвинутые фотографы избегают сжатия, снимая RAW-файлы, которые не применяют к ним сжатие. Однако для общей фотографии сжатие, обнаруженное в JPEG, не является существенным недостатком.

Заметить компрессию

Разница в форматах сжатия может быть не заметна на ЖК-дисплее камеры или даже на мониторе компьютера. Это наиболее очевидно, когда изображение печатается, особенно если оно увеличено. Даже на качество печати размером 8 на 10 дюймов может повлиять чрезмерное сжатие. Однако, если вы просто делитесь фотографией на социальных сетях, потери качества через сжатие недостаточно, чтобы быть заметным.

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

Как работает цифровое сжатие

Цифровой датчик способен захватывать гораздо больше информации, чем человеческий глаз может обрабатывать. Поэтому часть этой информации может быть удалена во время сжатия без уведомления зрителя.

Механизм сжатия ищет любые большие области повторяющегося цвета и удаляет некоторые повторяющиеся области. Затем они восстанавливаются в изображении при расширении файла.

Два типа сжатия изображений

Два типа сжатия являются без потерь и потерями, и они означают именно то, что они звучат так, как они.

Советы по предотвращению проблем сжатия

Любой фотограф может принять меры, чтобы не потерять качество фотографий для сжатия.

Динамический диапазон и тональный диапазон в цифровой фотографии

Динамический диапазон и тональный диапазон используются для описания способности датчика изображения камеры захватить широкий диапазон тонов и цветов на изображении.

Влияние интерполяции в цифровой фотографии

Интерполяция используется в цифровой фотографии для увеличения размера изображения. Это может повлиять на качество изображения, и важно, чтобы все было правильно.

Понять Pincushion Distortion в цифровой фотографии

Источник

Сказочный портал