Кадр придатний для обраного формату. Система виконує лише технічну підготовку: кадрування, масштаб, вихідну різкість і перетворення кольору під папір.
Магістерський проєкт · F3 Комп’ютерні науки · ХНАДУ, 2026
Чи добре це фото виглядатиме на папері?
ПРОЯВ·ЛАБ оцінює кадр у масштабі майбутнього відбитка, пояснює висновок простими словами і готує файл до друку під обраний формат і папір.
- 7
- показників якості, виміряних у масштабі відбитка
- 6
- форматів друку: від 9×13 до A4
- 0
- файлів на сервері: обчислення у браузері
Чотири можливі висновки
Для кожного кадру система обирає один із чотирьох класів. Клас залежить не лише від самого файлу, а й від формату, на якому його друкуватимуть.
Кадр готується без участі людини. У режимі «Покращення» система м’яко виправляє шум, експозицію, відтінок і легке розмиття. У режимі «Задум» вона кадр не змінює, тож суттєвий дефект відправляє його на ручну перевірку.
Дефект автоматично не виправити (сильне розмиття, важке стиснення, вибиті світла) або обраний режим його не виправляє. Система показує кадр «до» і «після», а рішення ухвалює людина.
Кадр замалий для формату або втратив деталі. Система підказує найбільший формат, на якому він виглядатиме добре.
Що відбувається з фото
П’ять кроків від завантаженого файлу до файлу для друку. Перші чотири займають 1–2 секунди на кадр.
- Читання файлуJPEG, PNG, WebP, HEIC з iPhone; поворот за EXIF, колір із вбудованого профілю.
- Масштаб відбиткаКадр обрізається під пропорції формату і зводиться до сітки друку: 300 ppi для малих форматів, 240 ppi для 20×30 і A4.
- Сім показниківРоздільність, різкість, шум, вибиті тіні й світла, експозиція, відтінок, стиснення JPEG.
- PQI і рішенняПоказники зводяться в індекс придатності до друку PQI від 0 до 1, далі правило рішень обирає клас.
- Підготовка файлуКадрування, масштаб, корекція (за потреби), вихідна різкість під папір, ICC-перетворення, JPEG 300 dpi.
Лабораторія
Додайте фото з телефона чи камери. Оцінка оновлюється, щойно ви змінюєте формат чи папір.
Тут з’являться ваші кадри. Додайте кілька фото кнопкою вище або перетягніть їх у поле: добрі, темні, змазані, переслані через месенджер. Для кожного буде висновок, PQI і розбір семи показників.
Методи
Як ПРОЯВ·ЛАБ оцінює і готує кадр
Головна ідея: оцінювати не файл, а відбиток. Той самий кадр може бути чудовим на 10×15 і слабким на 20×30, тому всі показники рахуються після зведення кадру до розміру й роздільності друку.
1. Масштаб відбитка
Спочатку кадр повертається за EXIF, а формат орієнтується так само, як кадр. Далі система визначає ефективну роздільність, тобто скільки пікселів файлу припаде на дюйм паперу:
де w, h — ширина і висота кадру в пікселях; W, H — ширина і висота формату в міліметрах. Для друку з полями мінімум замінюється максимумом.
Після цього кадр обрізається під пропорції формату і масштабується з коефіцієнтом k = ppirec / PPIeff. Для 10×15 виходить зображення 1800×1200 пікселів — рівно стільки, скільки буде на папері. Зменшення робиться усередненням за площею, тож дрібний шум, якого на відбитку не видно, згладжується так само, як при розгляданні фото в руках. Збільшення робиться інтерполяцією, і нестача деталей стає розмиттям, яке потім знаходить метрика різкості.
2. Норми роздільності
Людина з нормальним зором розрізняє деталі з кутовим розміром близько однієї кутової мінути. Звідси роздільність, за якої окремих пікселів на відстані d уже не видно:
Фото в руках розглядають з відстані близько 300 мм, звідки P ≈ 291 ppi. Великі відбитки дивляться з відстані, близької до діагоналі: для 20×30 це 366 мм і 238 ppi. Після округлення отримано 300 ppi для форматів до 15×20 і 240 ppi для 20×30 та A4. Мінімально допустимою прийнято роздільність близько двох третин норми.
3. Сім показників
Кожен показник відповідає за один вид дефекту і має фізичний зміст, тому висновок можна пояснити людині, а не лише видати число.
4. Індекс придатності до друку PQI
Кожен показник x переводиться в частинну бажаність d від 0 до 1 функцією Харрінгтона. Коефіцієнти a і b знаходяться за двома опорними точками: «добре» значення дає d = 0,80, «погане» — d = 0,20.
Індекс PQI — зважене середнє геометричне частинних бажаностей. Середнє геометричне обрано тому, що один дуже поганий показник, наприклад сильне стиснення, неможливо «перекрити» добрими значеннями інших.
5. Правило рішень
Крім PQI, правило перевіряє найменшу частинну бажаність і те, чи можна виправити дефект автоматично. Умови перевіряються згори донизу; спрацьовує перша, що виконалась.
| Висновок | Умова | Що робить система |
|---|---|---|
| Не рекомендовано | dres < 0,20 або PQI < 0,20 | підказує менший формат або радить знайти оригінал файлу |
| Готово до друку | PQI ≥ 0,63 і всі di ≥ 0,37 | виконує лише технічну підготовку |
| Підготуємо автоматично | PQI ≥ 0,37, суттєві дефекти виправні в обраному режимі, k ≤ 2 | готує кадр без участі людини |
| Ручна перевірка | решта випадків | показує «до» і «після», рішення за людиною |
Суттєвим вважається дефект з d < 0,37. Невиправні — мала роздільність (збільшення не додає деталей), стиснення JPEG, вибиті тіні й світла (там немає деталей), розмиття з d < 0,30 і шум з d < 0,20. Решту виправляє режим «Покращення». Режим «Задум» кадр не змінює: експозиція і відтінок у ньому вважаються задумом фотографа й на висновок не впливають, а суттєві шум чи розмиття відправляють кадр на ручну перевірку з підказкою увімкнути «Покращення».
6. Підготовка файлу
Режим «Задум»
Для оброблених кадрів. Лише технічні кроки: кадрування під формат, масштаб до 300 ppi, вихідна різкість під папір і перетворення кольору в ICC-профіль паперу. Тон і колір не змінюються.
Режим «Покращення»
Для кадрів зі смартфона. Додатково частково виправляє експозицію, баланс білого і шум. Силу різкості підбирає зворотним зв’язком: шукає найменшу силу, за якої розмиття b знижується до 0,30, а шум не перевищує max(1,6σ; 3).
Радіус вихідної різкості задається в міліметрах відбитка: 0,10 мм для глянцевого паперу і 0,11 мм для напівматового Luster, на якому зображення виходить м’якшим. На зашумлених кадрах сила різкості зменшується, щоб не підсилювати зерно.
Колір перетворюється бібліотекою Little CMS у профіль пари «принтер + папір». Метод відображення гамуту обирається автоматично: якщо поза гамутом паперу більше 5 % кольорів кадру, береться перцептивний метод, інакше — відносний колориметричний з компенсацією точки чорного.
7. Технології
- JavaScript без фреймворків. Одне ядро працює у браузері й у Node.js.
- Web Worker. Важкі обчислення не блокують сторінку.
- Little CMS (WebAssembly). Керування кольором і аналіз гамуту.
- libheif (WebAssembly). Фото HEIC з iPhone у браузерах, які їх не відкривають; Display P3 → sRGB.
- Власний кодувальник JPEG. Без субдискретизації кольору (4:4:4), з ICC-профілем і 300 dpi у заголовку.
- Приватність. Фото не залишають пристрій: немає сервера, на який їх можна завантажити.
Перевірка
Перевірка на реальних фото
Завантаження результатів…