Домашнє завдання

Зображення очима компʼютера

Усе робимо на тому самому синтетичному фото телефона, що й у практиці: функція make_phone_photo() уже написана в зошиті, скопіюй її до себе й працюй далі. Нічого завантажувати не треба.


рівень 1Рівень 1 — База

Паспорт чужого зображення.

Зміни в генераторі три числа: висоту й ширину знімка (наприклад, на 480 × 640) і колір корпусу (зроби його світлим, скажімо 200, 205, 210). Згенеруй фото заново й склади для нього паспорт: shape, dtype, min, max, size, nbytes, а також середнє по кожному з трьох каналів окремо.

Потім візьми будь-який квадрат 8 × 8 усередині нового корпусу й роздрукуй його числами в сірому.

Зроблено, якщо:


рівень 2Рівень 2 — Плюс

Виділення за кольором, яке не боїться освітлення.

Напиши дві функції, кожна повертає булеву маску того самого розміру, що знімок:

Обидві мають шукати зелений індикатор. Далі побудуй серію з семи варіантів освітлення: помнож знімок на 0.4, 0.55, 0.7, 0.85, 1.0, 1.15 і 1.3 (з обрізанням по 255) і для кожного порахуй, скільки пікселів знайшла кожна функція.

Побудуй графік: по горизонталі — множник яскравості, по вертикалі — кількість знайдених пікселів, дві криві й горизонтальна пряма на рівні справжньої кількості (1439 пікселів для оригінального розміру знімка).

Зроблено, якщо:


рівень 3Рівень 3 — Виклик

Розтягування гістограми з нуля.

Реалізуй функцію stretch_contrast(gray_image), яка приймає сіре зображення й повертає нове, де найтемніший піксель став 0, а найсвітліший — 255, а всі проміжні розтягнуті пропорційно. Формулу виведи сам: тобі потрібні лише мінімум, максимум і одна лінійна залежність.

Вимоги до реалізації:

Застосуй до притемненого варіанта (gray × 0.45) і покажи чотири речі поруч: притемнене фото, його гістограму, розтягнуте фото, його гістограму.

Зроблено, якщо:


Підказки