Задание 7: объём графики и звука

Учимся быстро считать «вес» картинки и звукового файла по их параметрам и аккуратно переводить биты в килобайты и мегабайты.

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

Задание №7 ЕГЭ — расчёт объёма графического или звукового файла. Оно опирается на пройденный материал про кодирование изображений и звука, но требует уверенно работать с формулами и кратными единицами. Главная мысль одна: любой такой объём — это «сколько кусочков» умножить на «сколько бит на кусочек». Если держать эту мысль в голове, не приходится заучивать отдельные формулы для картинок, для звука и для текста — все они оказываются одной и той же идеей в разных одеждах.

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

Растровое изображение: глубина цвета

Растровая (точечная) картинка хранится как прямоугольная сетка пикселей. Каждый пиксель — это маленький квадратик одного цвета; вместе они и складываются в изображение. Чтобы посчитать «вес» такой картинки, нужны всего две величины: сколько в ней пикселей и сколько бит уходит на запись цвета одного пикселя.

Картинка разбита на сетку пикселей $N$ штук (ширина × высота). Каждый пиксель кодируется $i$ битами — это глубина цвета. Объём:

$$I = N \cdot i$$

Глубина цвета связана с числом доступных цветов $K$ соотношением $K = 2^{i}$, откуда $i = \log_2 K$. Логика тут ровно та же, что у мощности алфавита: каждый бит удваивает число различимых вариантов, поэтому $i$ бит дают $2^i$ цветов. Запомните частые значения: 1 бит — 2 цвета, 4 бита — 16 цветов, 8 бит — 256 цветов, 16 бит — 65536, 24 бита (True Color) — около 16,7 млн цветов. В условии обычно дают либо палитру (число цветов $K$) и тогда сначала находят $i$, либо сразу глубину цвета в битах — отличать одно от другого критично.

Задача 1

Изображение $1024 \times 512$ пикселей, палитра из 256 цветов. Найти объём в килобайтах.

Шаг 1. Глубина цвета: $i = \log_2 256 = 8$ бит.

Шаг 2. Число пикселей: $N = 1024 \cdot 512 = 524288$.

Шаг 3. Объём в битах: $I = 524288 \cdot 8 = 4194304$ бит.

Шаг 4. Перевод: $4194304 / 8 = 524288$ байт; $524288 / 1024 = 512$ Кбайт.

Аккуратный приём — считать в степенях двойки: $1024 = 2^{10}$, $512 = 2^9$, $i = 2^3$ бит $= 2^0$ байт. Тогда объём в Кбайтах: $2^{10} \cdot 2^{9} \cdot 2^{0} / 2^{10} = 2^{9} = 512$ Кбайт — без громоздких умножений. Этот трюк экономит уйму времени на экзамене: пока сосед перемножает шестизначные числа в столбик и ошибается, вы складываете показатели степеней в уме. Поэтому привыкайте раскладывать размеры и глубину цвета в степени двойки сразу, как только увидели условие.

Звук: частота, разрядность, каналы

Звук в природе — непрерывная волна давления воздуха. Чтобы записать его в файл, волну оцифровывают: много раз в секунду измеряют её мгновенную громкость и каждое измерение записывают целым числом. Чем чаще измеряем и чем больше бит на одно измерение — тем точнее звук и тем больше файл. Отсюда и берутся параметры записи. Аналоговый звук оцифровывают: $f$ раз в секунду измеряют амплитуду (частота дискретизации, Гц) и каждое измерение кодируют $b$ битами (глубина/разрядность). Если каналов $c$ (1 — моно, 2 — стерео), а длительность $t$ секунд, то:

$$I = f \cdot b \cdot c \cdot t$$

Задача 2

Стереозапись длительностью 1 минута, частота дискретизации 48 кГц, разрядность 16 бит. Найти объём в мегабайтах.

Шаг 1. Переведём всё в базовые единицы: $f = 48000$ Гц, $b = 16$ бит, $c = 2$, $t = 60$ с.

Шаг 2. Объём в битах: $I = 48000 \cdot 16 \cdot 2 \cdot 60 = 92160000$ бит.

Шаг 3. В байтах: $92160000 / 8 = 11520000$ байт.

Шаг 4. В мегабайтах: $11520000 / 1024 / 1024 \approx 10{,}99$ Мбайт, то есть примерно $11$ Мбайт.

# Проверяем расчёт объёма звука и переводим в мегабайты.
f = 48000        # частота дискретизации, Гц
b = 16           # разрядность, бит
c = 2            # каналы (стерео)
t = 60           # длительность, с

bits = f * b * c * t
bytes_ = bits // 8
kb = bytes_ / 1024
mb = kb / 1024

print('Бит:', bits)
print('Байт:', bytes_)
print('Мбайт:', round(mb, 2))

Вывод:

Бит: 92160000
Байт: 11520000
Мбайт: 10.99

Обратные задачи

Задача 3

Файл несжатого моно-звука занимает 2 580 000 байт. Длительность записи — 30 секунд, разрядность — 16 бит. Найдите частоту дискретизации.

Из формулы $I = f \cdot b \cdot c \cdot t$ выражаем $f = I / (b \cdot c \cdot t)$. Объём в битах: $2580000 \cdot 8 = 20640000$ бит. Тогда $f = 20640000 / (16 \cdot 1 \cdot 30) = 20640000 / 480 = 43000$ Гц $= 43$ кГц.

Задача 4 (выбор разрядности)

Изображение $640 \times 480$ должно занять не более 150 Кбайт без сжатия. Какую наибольшую глубину цвета можно выбрать?

Лимит в битах: $150 \cdot 1024 \cdot 8 = 1228800$ бит. Число пикселей: $640 \cdot 480 = 307200$. Тогда $i \le 1228800 / 307200 = 4$ бита. Значит максимум 4 бита на пиксель (16 цветов).

Как это работает

Все формулы — частный случай алфавитного подхода: «информационный объём = количество элементов × информационный вес одного элемента». Для текста элемент — символ, вес — $\log_2 M$ по мощности алфавита $M$. Для растра элемент — пиксель, вес — глубина цвета. Для звука элемент — отсчёт амплитуды, а число отсчётов само раскладывается как $f \cdot t$ (отсчётов в секунду умножить на секунды), да ещё на число каналов.

Ключ к безошибочному ответу — единицы. В ЕГЭ переводы только степенями двойки:

$$1\,\text{байт} = 8\,\text{бит}, \quad 1\,\text{Кбайт} = 2^{10}\,\text{байт}, \quad 1\,\text{Мбайт} = 2^{20}\,\text{байт}$$

ПараметрРастровое изображениеЦифровой звук
Элементпиксельотсчёт амплитуды
Сколько элементов$N$ = ширина · высота$f \cdot t$ (на каждый канал)
Бит на элемент$i = \log_2 K$ (глубина цвета)$b$ (разрядность)
Объём$I = N \cdot i$$I = f \cdot b \cdot c \cdot t$

Частые ошибки

  • Делят на 1000 вместо 1024. В задачах ЕГЭ Кбайт = 1024 байта, Мбайт = 1024 Кбайта. Десятичные приставки тут не используют.
  • Забывают про каналы. Для стерео объём вдвое больше моно — множитель $c = 2$ обязателен.
  • Путают частоту в кГц и Гц. 48 кГц — это 48000 измерений в секунду; перед умножением переводите в Гц.
  • Берут число цветов вместо глубины цвета. В формулу идёт $i = \log_2 K$ бит, а не само $K$.
  • Смешивают биты и байты. Объём по формулам выходит в битах — не забудьте разделить на 8, прежде чем переводить в Кбайты.

Итоги

  • Растр: $I = N \cdot i$, где $N$ — число пикселей, $i = \log_2 K$ — глубина цвета.
  • Звук: $I = f \cdot b \cdot c \cdot t$ — частота, разрядность, каналы, время.
  • Считайте в степенях двойки: это убирает большинство арифметических ошибок при переводе единиц.
  • Обратные задачи решаются выражением нужной величины из той же формулы.
  • Главный контроль — единицы измерения: бит → байт (÷8) → Кбайт (÷1024) → Мбайт (÷1024).
Проверьте себя
1. Изображение 800×600 пикселей закодировано с палитрой 16 цветов. Каков его объём?
Aоколо 234 Кбайт
Bоколо 469 Кбайт
Cоколо 1875 Кбайт
Dоколо 3750 Кбайт
2. В формуле объёма звука I = f·b·c·t что обозначает множитель c?
Aглубину цвета
Bчисло каналов (1 — моно, 2 — стерео)
Cстепень сжатия
Dчастоту в килогерцах