01204483 Image Processing — Topic 09, Wavelet Transforms

Fourier, DCT, Wavelet — series ของสัมประสิทธิ์บน basis ต่างกัน

แนวคิดเดียวกันหมด: สัญญาณ = ผลรวมของ "รูปคลื่นพื้นฐาน (basis)" แต่ละแบบ คูณด้วยสัมประสิทธิ์ของมัน — เปลี่ยนแค่ว่าเลือก basis อะไร (cosine, complex exponential, wavelet) ตัวไหนสัญญาณไม่มีองค์ประกอบนั้นจริง ๆ สัมประสิทธิ์ก็ เป็น 0 ไปเอง แล้วลองดูว่าทำไมวิธีนี้เอาชนะการทำ lowpass + downsample แบบ ตรงไปตรงมาได้

Fourier Series: สัญญาณ (คาบ) = ผลรวมของ cos(k·ω₀·t) หลายฮาร์มอนิก แต่ละตัวมีสัมประสิทธิ์ของตัวเอง — คือ series ของความถี่ที่เป็นจำนวนเท่าของความถี่มูลฐาน

Fourier Transform (DFT) ทำเรื่องเดียวกัน แต่ใช้ basis เป็น complex exponential eiωt = cos(ωt)+i·sin(ωt) — สำหรับสัญญาณจริง ผลลัพธ์เทียบเท่ากับ cos/sin series พอดี

DCT ก็ series ของสัมประสิทธิ์บน cosine basis (คนละเงื่อนไขขอบเขตกับ Fourier) และ Wavelet Transform ก็ series ของสัมประสิทธิ์บน basis รูปคลื่นแบบอื่น — โครงสร้างเดียวกันทั้งหมด

เลือก basis ได้หลายแบบ: cosine (Fourier/DCT), complex exponential (DFT), หรือ Mexican Hat / Haar ใน wavelet — ดู gallery รูปคลื่นตัวอย่างที่ข้อ 2 ด้านล่าง

ตัดสัมประสิทธิ์ตัวเล็ก ๆ ทิ้ง (ให้เป็น 0) แล้ว reconstruct กลับ — เก็บแค่ตัวใหญ่ ๆ ไม่กี่ตัวก็ยังใกล้เคียงต้นฉบับมาก เพราะพลังงานสัญญาณส่วนใหญ่กระจุกอยู่ที่สัมประสิทธิ์ไม่กี่ตัว (ตามทฤษฎีบท Parseval)

ทำไมไม่ใช้แค่ lowpass + downsample เฉย ๆ? เทียบดูที่ข้อ 4 — งบตัวเลขเท่ากัน แต่การเลือก basis ที่เหมาะกับสัญญาณให้ผลลัพธ์แม่นกว่า โดยเฉพาะสัญญาณที่มีจุดกระโดดเฉพาะจุด (wavelet ชนะ) หรือสัญญาณที่มีไม่กี่ความถี่เด่น (Fourier/DCT ชนะ)

แสดงแบบ

เลือก Basis (ใช้ร่วมกันทั้ง 1D และ 2D)

1 · เลือกสัญญาณทดสอบ

สัญญาณยาว N=64 ตัวอย่าง

2 · รูปคลื่นของ Basis (1D)

3 · สัมประสิทธิ์ (Coefficients) และเก็บแค่ Top-K

มันคือ sequence ของสัมประสิทธิ์ เหมือนกันทุก transform — สิ่งที่ต่างกันมีแค่ 2 อย่าง: (1) basis function ที่ใช้ฉายสัญญาณลงไป (ข้อ 2) และ (2) ความถี่มูลฐาน/สเกลของแต่ละตำแหน่งใน sequence นั้น

8
ต้นฉบับ Reconstruct จาก Top-K
RMSE: จำนวนตัวเลขจริงที่เก็บจริง: จาก N=64

4 · เทียบกับ Lowpass Filter + Downsample แบบง่าย ๆ

ต้นฉบับ Lowpass + Downsample แล้วขยายกลับ
RMSE — Top-K (ข้อ 3)
RMSE — Lowpass+Downsample (งบใกล้เคียงกัน)

1 · เลือกภาพทดสอบ

ภาพขาวดำ 64×64 พิกเซล — ใช้ N เดียวกับสัญญาณ 1D

2 · รูปคลื่นของ Basis (2D)

3 · สัมประสิทธิ์ 2D (Coefficients) และเก็บแค่ Top-K

โครงสร้างเดียวกับ 1D ทุกอย่าง แค่สัมประสิทธิ์ตอนนี้เรียงเป็นตาราง (u,v) 2 มิติแทนเส้นเดียว — สว่าง = ขนาดสัมประสิทธิ์ใหญ่ (ใช้ sqrt เพื่อให้เห็นค่าเล็ก ๆ ด้วย ไม่ใช่ scale เชิงเส้นตรง ๆ)

Coefficient magnitude (u,v)
64
ต้นฉบับ
Reconstruct จาก Top-K
RMSE: จำนวนตัวเลขจริงที่เก็บจริง: จาก N²=4096

4 · เทียบกับ Lowpass Filter + Downsample แบบง่าย ๆ (2D)

ต้นฉบับ
Lowpass + Downsample แล้วขยายกลับ
RMSE — Top-K (ข้อ 3)
RMSE — Lowpass+Downsample (งบใกล้เคียงกัน)