← Все вопросы
Задание 7 КЕГЭ: как посчитать объём файла изображения (RGB, глубина цвета)?
13
Седьмое часто про растровое изображение: дано разрешение (например, 1024×768) и количество цветов в палитре. Нужно найти объём файла в килобайтах. Какой порядок действий и где обычно ошибаются?
3 ответа
26
✓ Принятый ответ — помог автору
Шаги: 1) глубина цвета i (бит на пиксель) = log2(количество цветов); 2) всего пикселей = ширина × высота; 3) объём в битах = пиксели × i; 4) делишь на 8 → байты, на 1024 → Кбайты.
import math
w, h = 1024, 768
colors = 256
i = math.ceil(math.log2(colors)) # бит на пиксель
bits = w * h * i
kb = bits / 8 / 1024
print(kb, 'Кбайт') # 768.0
Частые ошибки: (1) путают «количество цветов» и «бит на пиксель» — это связаны через log2; (2) забывают, что 1 Кбайт = 1024 байта, а не 1000; (3) делят сразу на 1024, минуя деление на 8. Делай по порядку бит → байт → Кбайт, и почти не ошибёшься.
Лев Герасимов Звук считается так же: частота × разрядность × время × каналы → биты · 13 месяцев назад
8
Глубина цвета i = log2(числа цветов), объём = W*H*i, дальше /8 и /1024.
4
W * H * log2(colors) / 8 / 1024 — и следи за единицами.
Ваш ответ
Войдите, чтобы ответить на вопрос.