Ваше завдання - зробити зображення sRGB на 24 BPP та вивести одне і те ж зображення, збільшене до розміру 3x, на червоні, зелені та сині субпікселі. Отримане зображення буде зроблене повністю з чистого чорного, червоного, зеленого та синього пікселів.
Кожен піксель із вихідного зображення при збільшенні зображення створює розташування 9 пікселів, які можуть бути або вимкненими (тобто відповідним кольором або чорним). Конкретна композиція використовує три стовпці червоного, зеленого та синього у такому порядку:
(Зверніть увагу, що межі цих "пікселів" призначені лише для демонстрації.)
Оскільки кожен з дев'яти субпікселів може бути увімкненим або вимкненим, вам доведеться квантовати вхідне зображення та використовувати різні шаблони підпікселів для досягнення 3 рівнів яскравості.
Для кожного підпікселя на зображенні:
- Для рівнів кольору 0-74 всі субпікселі повинні бути чорними.
- Для рівнів кольорів 75-134 середній підпіксель повинен бути відповідним кольором, а інші два - чорним.
- Для рівнів кольорів 135-179 середній підпіксель повинен бути чорним, а інші два - відповідним кольором
- Для рівнів кольору 180-255 всі три субпікселі повинні бути відповідного кольору
Я вибрав ці діапазони рівнів, тому що це те, що трапилося, щоб виглядати добре
Застосуйте це перетворення до кожного пікселя на зображенні та виведіть зображення, що збільшує підпіксель.
Приклади однопіксельних
rgb (40, 130, 175) створить такий малюнок:
rgb (160, 240, 100) створить такий малюнок:
Приклади повного зображення
Зображення походять із Вікіпедії
Правила та примітки
- Введення та вихід можуть бути у будь-якому зручному форматі, будь то фактичні файли зображень або (можливо, вкладені) списки значень RGB.
- Ви можете припустити, що пікселі знаходяться у кольорі простору sRGB з 24BPP.
Щасливого гольфу!