這段講座把變換基底(change of basis)的線性代數觀念,與實際的影像/視訊壓縮應用連結起來,重點如下:
- 影像為高維向量:一張灰階影像可視為向量 x ∈ R^n(例如 512×512 的影像 n = 512^2;彩色影像則為三倍長度)。以像素為標準基底表示時,鄰近像素值高度相關,標準基底在壓縮上通常不是好的選擇。
- 變換基底與壓縮流程:
- 把影像分成小區塊(JPEG 常用 8×8 區塊),每個區塊在原基底有 64 個像素值。
- 對每個區塊做基底變換(例如傅立葉基或小波基),得到係數向量 c(這一步是無失真、可逆的:x = W c,c = W⁻¹ x)。
- 做壓縮(有失真):把小的係數捨棄或做量化(thresholding / quantization),只保留重要的幾個係數,然後用這些係數重建近似影像。這樣可以大幅降低資料量。
- 常見基底與選擇條件:
- 傳統 JPEG 用的近似是基於傅立葉(頻域)思想;JPEG2000 與較新方法採用小波(wavelets)。
- 好的基底應符合兩個關鍵條件:一是能快速做正變換與逆變換(例如 FFT 或快速小波變換);二是對常見訊號能產生稀疏表示(只需少數係數即可近似原訊號),以利高壓縮率且視覺影響低。
- 小波基底示意:講者以一維 8 維的小波基為例:包含常數向量(全 1)、半段 1/-1、四分之一 1/-1、以及局部 1/-1 等向量,這些向量多為 ±1 與 0,並可做成正交(或正交化)基底,使變換與逆變換都很快(若為正交且單位長,逆矩陣即為轉置)。小波能比傅立葉更好地表現局部突變與多解析度結構。
- 視訊的時間相關性:影像序列相鄰幀高度相關(物體位置小幅移動),因此視訊壓縮還會利用時間預測(prediction + residual):只編碼預測誤差,再對誤差做壓縮,能比逐幀獨立壓縮效果更好。
- 實務例子:FBI 的指紋庫從紙本到數位後仍需壓縮以便快速檢索,實際上會選擇合適基底並做索引;講者亦提到影片壓縮造成畫面「卡頓(jumpy)」正是因為訊號被壓縮處理。
- 變換與矩陣表示的數學連結:
- 若 W 的欄向量是新基底向量,基底變換的關係為 x = W c(舊坐標 x,基底係數 c),因此 c = W⁻¹ x。
- 對一個線性變換 T,在不同基底下的矩陣表示會不同,但兩者是相似(similar)矩陣:若 M 為變換基底的矩陣,則兩個矩陣 A 與 B 滿足 A = M B M⁻¹(或等價地 B = M⁻¹ A M)。也就是基底改變會以 M 與 M⁻¹ 在兩側夾進去,M 即是欄為新基底在舊基底坐標的矩陣。
- 建構矩陣的實務方法:給定基底 v1,…,vn,矩陣 A 的第 j 欄就是 T(v_j) 在同一基底下的坐標;若所選基底為特徵向量(eigenvectors),則矩陣會是對角化的(最佳情況),但求特徵向量通常成本太高。
總結:影像/視訊壓縮本質上是「變換基底 + 在新基底下稀疏化 + 捨棄小係數」的工程;選擇基底要考量計算速度(能否快速做正逆變換)與表示稀疏性(少量係數能重構訊號)。線性代數提供描述變換、基底與矩陣之間關係的嚴謹語言(包括相似矩陣、基底變換矩陣的角色),而傅立葉與小波是實務上常見且成功的基底設計。
