"Информатика (базовый уровень)", Угринович Н.Д.
Растровая графика — способ представления изображений с помощью сетки точек, или пикселей. У каждого пикселя свой цвет, поэтому фотографии и рисунки можно хранить и обрабатывать на компьютере. Подробность изображения связана с числом пикселей, а количество доступных цветов — с глубиной цвета. Эти параметры помогают оценить качество картинки и размер файла, а знание способов сжатия объясняет, почему одни файлы уменьшаются без потери качества, а другие — с потерями.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Растровое изображение — изображение, представленное прямоугольной сеткой отдельных точек, каждая из которых имеет свой цвет. Например, цифровая фотография хранится как множество таких точек. Это представление подходит для изображений с плавными переходами оттенков, а описание сетки позволяет компьютеру сохранять и обрабатывать картинку.
Пиксель — минимальный элемент растрового изображения, которому задаётся цвет. Слово образовано от английского picture element — «элемент изображения». Если рассматривать картинку при большом увеличении, её можно увидеть как набор цветных квадратов; каждый квадрат соответствует пикселю. Понимание этого элемента помогает объяснить, из чего складывается изображение и почему оно меняется при увеличении.
Разрешение растрового изображения — количество пикселей по горизонтали и вертикали; общее число пикселей равно их произведению. Размер 800 × 600 означает 800 точек по ширине и 600 по высоте, а всего — 480 000 точек. Разрешение нужно, чтобы оценивать потенциальную подробность картинки и рассчитывать количество элементов, которые предстоит хранить.
Глубина цвета — количество бит, отведённых для кодирования цвета одного пикселя; от неё зависит число доступных цветов. Если для пикселя выделено n бит, возможны до 2ⁿ комбинаций двоичного кода. Этот параметр нужен для оценки разнообразия оттенков и объёма данных на каждый пиксель.
Растровая картинка строится точка за точкой: компьютер хранит цвет каждого пикселя в определённом порядке. При отображении программа считывает эти значения и размещает точки на экране, и из-за малых размеров отдельных элементов глаз обычно воспринимает их как цельное изображение. Чем больше пикселей приходится на ту же область, тем меньше деталей теряется при передаче мелких контуров и переходов. Однако каждый дополнительный пиксель тоже нужно закодировать, поэтому рост числа точек увеличивает объём данных.
Цвет пикселя компьютер сохраняет как двоичный код — последовательность нулей и единиц. При глубине n бит существует 2ⁿ разных последовательностей, поэтому можно задать до 2ⁿ вариантов цвета. Например, 8 бит дают 256 кодов: от 00000000 до 11111111. Чем больше бит выделено для каждой точки, тем больше оттенков можно различить, но тем больше места занимает кодирование того же числа пикселей.
Для оценки объёма несжатого изображения сначала находят общее число точек, умножая ширину на высоту в пикселях. Затем результат умножают на глубину цвета: так получают количество бит, необходимое для кодирования всех пикселей. Чтобы перейти к байтам, число бит делят на 8, поскольку один байт содержит 8 бит. Такой расчёт показывает, почему файл с большим разрешением или большей глубиной цвета обычно требует больше места, хотя фактический размер файла может измениться из-за формата и сжатия.
При увеличении растровой картинки программа показывает каждый исходный пиксель на большей площади экрана. Между исходными точками можно сгладить границы или рассчитать промежуточные оттенки, но это не возвращает реальные детали, которые не были записаны. Поэтому на сильном увеличении контуры часто выглядят ступенчатыми, а отдельные квадраты становятся заметными. Чтобы сохранить мелкие детали при крупном отображении, исходному изображению нужно достаточное разрешение.
Сжатие уменьшает объём данных, которые нужно хранить или передавать. При сжатии без потерь данные кодируются компактнее, но после распаковки изображение можно восстановить точно. Сжатие с потерями сокращает файл сильнее, удаляя часть информации, которую алгоритм считает менее заметной; из-за этого восстановленная картинка может отличаться от исходной. Выбор способа зависит от задачи: для точного сохранения данных подходят методы без потерь, а для уменьшения размера фотографии иногда используют сжатие с потерями.
| Параметр | Что показывает | Как влияет на изображение или файл |
|---|---|---|
| Размер в пикселях | Горизонтальное и вертикальное число пикселей | Определяет детализацию и число пикселей |
| Глубина цвета | Число бит для кодирования цвета одного пикселя | Определяет количество возможных цветов и объём данных |
| Сжатие | Способ уменьшения объёма файла | Может уменьшать объём без потерь или с потерями качества |
Чтобы оценить детализацию и число элементов, смотрите на размер в пикселях. Для оценки доступных оттенков и объёма кода на каждую точку используйте глубину цвета. Строка о сжатии помогает понять, за счёт чего файл стал меньше и может ли это повлиять на качество.
Задача 1. Изображение имеет размер 80 × 60 пикселей. Сколько в нём пикселей? Нужно найти общее количество точек, а не складывать размеры сторон: в каждой строке находится 80 пикселей, таких строк — 60. Поэтому используем произведение ширины и высоты.
Ответ: в изображении 4800 пикселей.
Задача 2. Цвет пикселя кодируется 8 битами. Сколько различных цветов можно закодировать? Каждый бит может иметь одно из двух значений — 0 или 1, поэтому для восьми позиций число сочетаний равно 2, умноженному на себя восемь раз. Это соответствует правилу 2ⁿ, где n — количество битов.
Ответ: можно закодировать до 256 различных цветов.
Задача 3. Найдём объём несжатого изображения размером 1024 × 768 пикселей при глубине цвета 24 бита. Сначала определяем число пикселей, затем количество бит для всех точек. В конце переводим результат в байты и мегабайты; по условию 1 Мбайт = 2²⁰ байт, поэтому делить нужно именно на 1 048 576.
Ответ: 2 359 296 байт, или 2,25 Мбайт. Это расчёт для несжатых данных без учёта служебной информации файла.
Разрешение иногда путают с глубиной цвета, потому что оба параметра влияют на качество и размер файла. Но разрешение связано с количеством пикселей, а глубина — с количеством бит на цвет одной точки. Проверьте себя: если речь о ширине и высоте в пикселях, это разрешение; если о битах на пиксель, это глубина цвета.
Можно решить, что увеличение изображения добавляет ему детали: на экране оно действительно занимает больше места. На самом деле программа увеличивает уже имеющиеся точки, а не получает новые сведения об объекте. Представьте, что рассматриваете мозаику через лупу: плитки становятся крупнее, но узор не обогащается. Если при увеличении видны квадраты или ступенчатые края, значит, исходных деталей недостаточно.
При подсчёте объёма забывают умножить число пикселей на глубину цвета или оставляют результат в битах, хотя спрашивали байты. Такие ошибки появляются, когда вычисление выполняют в один шаг и не подписывают единицы. Запишите отдельно число пикселей, биты, байты и мегабайты: для перехода от битов к байтам делите на 8, а при переводе в Мбайты учитывайте указанное соотношение единиц.
Иногда считают, что любое сжатие портит изображение. Это происходит из-за того, что некоторые распространённые форматы действительно используют сжатие с потерями. Но методы без потерь сохраняют возможность восстановить исходные данные точно. Чтобы проверить, какой случай перед вами, выясните, изменяются ли данные при распаковке, а не ориентируйтесь только на то, что файл стал меньше.
Для расчётов с растровыми изображениями нужны знания о двоичном кодировании: именно двоичные последовательности задают цвет пикселя. Также важно уметь измерять информацию и переводить биты в байты, иначе объём будет записан в неподходящих единицах. Эти навыки позволяют самостоятельно оценить размер несжатого изображения.
Понятия пикселя, разрешения и глубины цвета пригодятся при работе с цифровыми фотографиями, сканерами и графическими редакторами. Они помогают выбирать настройки, понимать, почему снимок выглядит нечётким после увеличения, и сравнивать качество изображений. Связь с общей темой представления графической информации в компьютере показывает, как изображение превращается в данные, которые можно хранить и передавать.
Что такое пиксель?
Пиксель — минимальный элемент растрового изображения, которому задаётся цвет. Из множества таких точек складывается картинка.
Чем разрешение отличается от глубины цвета?
Разрешение показывает, сколько пикселей расположено по ширине и высоте изображения. Глубина цвета показывает, сколько бит отведено для кодирования цвета каждого пикселя.
Как узнать, сколько цветов можно закодировать заданной глубиной цвета?
Нужно вычислить 2ⁿ, где n — глубина цвета в битах. Например, при 8 битах можно закодировать 2⁸ = 256 цветов.
Как рассчитать объём несжатого растрового изображения?
Умножьте ширину изображения в пикселях на высоту, а затем на глубину цвета. Получится объём в битах; чтобы перевести его в байты, разделите результат на 8.
Почему растровое изображение теряет чёткость при сильном увеличении?
При увеличении становятся заметны исходные пиксели, из которых состоит изображение. Программа может увеличить их размер, но не восстановить детали, которых не было в исходной сетке.
1.2.2. Растровая графика