Зв'язок між DCT та PCA


12

У мене є основні знання щодо впровадження 2D 8x8 DCT, що використовується для стиснення зображень та відео. Читаючи про Аналіз принципових компонентів, я бачу багато подібності, хоча PCA явно більш загальний. Коли я читав про DCT раніше, він завжди був представлений стосовно DFT. Отже, моє запитання полягає в тому, як DCT можна отримати з точки зору PCA? (достатньо навіть пояснень ручним розмахом)

Дуже дякую

Відповіді:


19

Основна відмінність між DCT і PCA (точніше, представляючи набір даних у основі, сформованій власними векторами його кореляційної матриці - також відомою як трансформація Кархунена Лоєва ), полягає в тому, що PCA має бути визначений щодо даного набору даних (з якого матриця кореляції оцінюється), тоді як DCT "абсолютний" і визначається лише розміром введення. Це робить PCA "адаптивним" перетворенням, тоді як DCT не залежить від даних.

Можна задатися питанням, чому PCA не використовується частіше для стиснення зображення або звуку через його адаптивності. Є дві причини:

  1. Уявіть, що кодер обчислює PCA набору даних та кодує коефіцієнти. Для реконструкції набору даних декодеру знадобляться не тільки самі коефіцієнти, а й матриця перетворення (це залежить від даних, до яких він не має доступу!). DCT або будь-яке інше незалежне від даних перетворення може бути менш ефективним для усунення статистичних залежностей від вхідних даних, але матриця перетворення заздалегідь відома і кодером, і декодером, без необхідності передачі. "Досить хороший" перетворення, яке вимагає мало бічної інформації, іноді краще, ніж оптимальне перетворення, яке вимагає додаткового навантаження бічної інформації ...

  2. Візьміть велику колекцію 8x8 плиток, витягнутих із фотографій. УтворітьN × 64NN×64матриця зі світністю цих плиток. Обчисліть PCA за цими даними та побудуйте основні компоненти, які будуть оцінені. Це дуже освічуючий експеримент! Є дуже хороший шанс, що більшість власних векторів вищого рейтингу насправді будуть схожими на вид модульованих синусоїдальних моделей бази DCT. Це означає, що для досить великого та загального набору плиток зображення DCT є дуже хорошим наближенням власних баз. Те ж саме було підтверджено і для аудіо, де власнебаза енергії логічного сигналу в смугах частот, що розточуються, за оцінкою великого обсягу аудіозаписів, близька до основи DCT (отже, використання DCT як перетворення декорреляції при обчисленні MFCC).


1
Цікаво, однак, чи не може бути побудований інший базовий набір на основі «звичайної» статистики зображень для початку та тих, що використовуються замість DCT? Я думаю, така основа не була б такою ж доброю, як PCA, але краще, ніж DCT ні?
Космічний

@pichenettes - що стосується DCT, які часто зустрічаються зображення зростаючої горизонтальної та вертикальної частоти (наприклад, goo.gl/XLMt5 )? Це зображення зображення базових функцій DCT? Якщо це так, якби я обчислював PCA / власні вектори з коваріаційної матриці цих зображень - чи по суті це дасть мені матрицю коефіцієнтів DCT?
африканський

Btw @pichenettes дякую за проникливу відповідь. Мені було відомо про пункт 1, але насправді я не вважав точкою 2.
африканський

1
@ Мохаммед: це гарне запитання, і я не знаю відповіді. Я бачу переваги у використанні DCT: простіше писати специфікації (простіше друкувати "наша трансформація - це функція закритої форми", ніж "наша трансформація - це матриця 64х64, опублікована в додатку"), жодних засідань комітетів зі стандартизації щодо того, який набір даних для підготовки перетворення на, менші таблиці пошуку для вбудовування в ПЗУ декодерів і, ймовірно, "симетрії" в матриці перетворення, які роблять можливим її апаратне прискорення порівняно з жорстоким множенням матриці 64х64 - ці переваги можуть переважати граничні коефіцієнти стискання.
пікенети

1
@trican: зображення, з яким ви пов’язали, являє собою 2-D DCT основу для плиток 8x8. Кожна з 64 маленьких плиток - це основна функція. Якщо ви візьмете велику колекцію плиток розміром 8х8 з фактичних зображень і виконаєте PCA за даними, отримана вами власна база буде досить схожа на цю.
пікенети
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.