Лабораторна №03
ВІД ПІКСЕЛІВ ДО КОЕФІЦІЄНТІВ

Менше даних.
Більше розуміння.

Досліджуйте, як DCT та вейвлет Хаара зберігають зображення.
Один оригінал, два перетворення, наочне порівняння.

↗ Відкрити звіт
01 Вхідне зображення
PNG, JPG, WebP, BMP · до 20 МБ
02 Збережені коефіцієнти15%
Більше стисненняБільше деталей
03 Параметри
DCT: блок 8 × 8 · DWT: Хаар

Порівняння результатів

Підготовка зображення…

Original

Оригінал
512 × 512
PSNR∞ дБ
Еталонне зображення262 144 px

DCT

Косинусне
8 × 8
PSNR ⓘ— дБ
Вибрано коефіцієнтів—
Значущих: —

DWT

Вейвлет Хаара
3 рівні
PSNR ⓘ— дБ
Вибрано коефіцієнтів—
Значущих: —

Змінюйте частку коефіцієнтів, щоб дослідити баланс якості та стиснення.

ВІД СПОСТЕРЕЖЕННЯ ДО ВИМІРЮВАННЯ

Три рівні. Два методи.

Експерименти для поточного зображення. Оберіть рядок, щоб побачити результат.

ЗбереженоКоефіцієнтівDCT, дБDWT, дБ
Обчислення експериментів…

Однакова кількість вибраних позицій для обох методів.

Якість відновлення PSNR, дБ
DCTDWT Хаара
ⓘ

Коефіцієнти ≠ розмір файлу. Частка показує кількість вибраних позицій після перетворення. Кодування, індекси та заголовки тут не враховуються. PNG використовується лише для збереження результатів.

ПРОЗОРА МАТЕМАТИКА

Що відбувається всередині

∿

DCT · блоки 8 × 8

Кожен блок множиться на власноруч побудовану ортонормовану матрицю косинусів. Після відкидання коефіцієнтів виконується обернене множення.

A = C · B · Cᵀ
B̂ = Cᵀ · Â · C
⌁

DWT · вейвлет Хаара

Попарні суми й різниці рядків та стовпців виділяють наближення і деталі. Наступні рівні працюють з піддіапазоном LL.

a = (x + y) / √2
d = (x − y) / √2
↗

PSNR · вимірюємо якість

Похибка обчислюється між початковими та відновленими 8-бітними пікселями. Більше значення PSNR відповідає меншій середньоквадратичній похибці.

MSE = Σ(I − Î)² / (W · H)
PSNR = 10 log₁₀(255² / MSE)
Умови експерименту та особливості реалізації

Обидва методи обробляють яскравість зі зсувом −128; після відновлення додається 128. Кольорові файли переводяться у відтінки сірого за формулою Y = 0,299R + 0,587G + 0,114B. Прозорість накладається на біле тло. Зображення масштабується зі збереженням пропорцій лише за потреби, до обраної максимальної сторони.

Розміри доповнюються крайовими пікселями до кратності max(8, 2ᴸ), однаково для DCT і DWT. Частка коефіцієнтів рахується від доповненого масиву; PSNR — лише для початкової області. Вибирається рівно K = round(N · p / 100) найбільших за модулем коефіцієнтів окремо для кожного методу, включно з можливими нульовими. Значущими вважаються |c| > 10⁻⁹.

Перед PSNR значення обмежуються діапазоном [0; 255] та округлюються. Якщо MSE = 0, PSNR = ∞. Вбудовані зразки синтетичні й детерміновані: вони дозволяють повторити експеримент без зовнішніх файлів. Реалізація не використовує готових функцій DCT/DWT.

Зображення

Зображення у початковому розмірі. Натисніть Esc для закриття.