Вообще говоря, он работает так же, как и для людей.
Вы смотрите на фотографию дома и говорите: «Я вижу белый дом, 3 окна, дверь, траву снаружи и белый забор».Детали, такие как количество, положение и ориентация каждой травинки, точная текстура краски на доме и т. Д. Для нас не имеют значения.
Аналогично, когда вы сжимаете изображение, вы сбрасываете детали до тех пор, покаВы достигаете нужного размера файла.По меньшей мере, изображение может быть описано одним значением, усредняя каждый цвет пикселя в изображении.Вы идете оттуда.
Одна из распространенных техник, которая похожа на мой домашний пример, - это создание «слов» для описания больших характеристик изображения, которые часто повторяются.В общем смысле это называется кодированием по длине прогона (RLE), но это может быть намного больше, чем просто повторяющиеся шаблоны.Например, вы можете описать с помощью идентификатора 0 что-то, похожее на 4 вертикальных зеленых пикселя, и вставить его по всей картинке, чтобы обозначить траву.
Методы, используемые для сжатия изображений, безграничны, я советую пройти пару курсов в колледже, если вы заинтересованы в этом, так как вам нужен довольно сильный опыт в исчислении и распознавании образов даже для наименее эффективных методов.