• Предмет: Информатика
  • Автор: tyktyk0037
  • Вопрос задан 4 месяца назад

Дано растровий малюнок.
A) Закодувати и декодувати малюнок, якщо зображення чорно-біле (1 клітинка - 1 точка).
Б) Визначити інформаційний об'єм цього малюнка в бітах і байтах, якщо він буде представлений в 16-кольоровому зображенні?​

Ответы

Ответ дал: nullptr53
0

Ответ:

from PIL import Image

# Создаем пустое черно-белое изображение размером 100x100 пикселей

width, height = 100, 100

bw_image = Image.new("L", (width, height), 0) # Создаем черно-белое' изображение

# Сохраняем пустое черно-белое изображение

bw_image.save("пустое_черно_белое.png")

# Декодируем пустое черно-белое изображение в 16-цветное

decoded_image = bw_image.convert("P", palette=Image.ADAPTIVE, colors=16)

# Сохраняем декодированное 16-цветное изображение

decoded_image.save("декодированное_16_цветное.png")

# Определяем информационный объем

colors = 16 # 16-цветная палитра

bit_depth = colors.bit_length()

byte_depth = (bit_depth * width * height) / 8

print(f"Информационный объем в битах: {bit_depth}")

print(f"Информационный объем в байтах: {byte_depth}")

Информационный объем в битах: 5

Информационный объем в байтах: 6250.0

[Program finished]

Вас заинтересует