Mối quan hệ giữa DCT và PCA


12

Tôi có kiến ​​thức triển khai cơ bản về DCT 2D 8x8 được sử dụng trong nén ảnh & video. Trong khi đọc về Phân tích thành phần nguyên tắc, tôi có thể thấy rất nhiều điểm tương đồng, mặc dù PCA rõ ràng là chung chung hơn. Khi tôi đọc về DCT trước đây, nó luôn được trình bày liên quan đến DFT. Vì vậy, câu hỏi của tôi là làm thế nào DCT có thể được bắt nguồn từ quan điểm PCA? (ngay cả một lời giải thích sóng tay là đủ)

Cảm ơn nhiều

Câu trả lời:


19

Sự khác biệt chính giữa DCT và PCA (chính xác hơn, đại diện cho một tập dữ liệu trong cơ sở được hình thành bởi người bản địa của ma trận tương quan của nó - còn được gọi là Karhunen Loeve Transform ) là PCA phải được xác định đối với tập dữ liệu đã cho (từ đó ma trận tương quan được ước tính), trong khi DCT là "tuyệt đối" và chỉ được xác định bởi kích thước đầu vào. Điều này làm cho PCA trở thành một biến đổi "thích ứng", trong khi DCT không phụ thuộc vào dữ liệu.

Người ta có thể tự hỏi tại sao PCA không được sử dụng thường xuyên hơn trong nén hình ảnh hoặc âm thanh, vì tính thích ứng của nó. Có hai lý do:

  1. Hãy tưởng tượng một bộ mã hóa tính toán PCA của một tập dữ liệu và mã hóa các hệ số. Để xây dựng lại tập dữ liệu, bộ giải mã sẽ cần không chỉ các hệ số mà còn cả ma trận biến đổi (nó phụ thuộc vào dữ liệu mà nó không có quyền truy cập!). DCT hoặc bất kỳ biến đổi độc lập dữ liệu nào khác có thể kém hiệu quả hơn trong việc loại bỏ các phụ thuộc thống kê trong dữ liệu đầu vào, nhưng ma trận biến đổi được biết trước bởi cả bộ mã hóa và bộ giải mã mà không cần truyền nó. Một biến đổi "đủ tốt" đòi hỏi ít thông tin bên đôi khi tốt hơn một biến đổi tối ưu đòi hỏi thêm một lượng thông tin bên ...

  2. NN×64ma trận với độ sáng của gạch này. Tính toán PCA trên dữ liệu này và vẽ sơ đồ các thành phần chính sẽ được ước tính. Đây là một thử nghiệm rất giác ngộ! Có một cơ hội rất tốt là hầu hết các eigenvector được xếp hạng cao hơn sẽ thực sự trông giống như kiểu sóng hình sin được điều chế của cơ sở DCT. Điều này có nghĩa là đối với một tập hợp các ô hình ảnh đủ lớn và chung chung, DCT là một xấp xỉ rất tốt của hàm riêng. Điều tương tự cũng đã được xác minh đối với âm thanh, trong đó hệ sinh thái cho năng lượng tín hiệu log trong các dải tần cách nhau, ước tính trên một khối lượng lớn các bản ghi âm, gần với cơ sở DCT (do đó sử dụng DCT làm biến đổi giải mã khi tính toán MFCC).


1
Thật thú vị, tuy nhiên, có thể không xây dựng một bộ cơ sở khác dựa trên số liệu thống kê hình ảnh 'thông thường' để bắt đầu và những hình ảnh được sử dụng thay vì DCT? Tôi tưởng tượng một cơ sở như vậy sẽ không tốt như PCA, nhưng tốt hơn DCT không?
Spacey

@pichenettes - liên quan đến DCT, những hình ảnh thường thấy về việc tăng tần số ngang và dọc (ví dụ như goo.gl/XLMt5 ) là gì? Đây có phải là hình ảnh đại diện cho các chức năng cơ bản của DCT không? Nếu đó là trường hợp, nếu tôi tính PCA / eigenvector từ ma trận hiệp phương sai của những hình ảnh này - về cơ bản điều này có cho tôi ma trận hệ số DCT không?
trican

Btw @pichenettes cảm ơn rất nhiều vì câu trả lời sâu sắc của bạn. Tôi đã biết về điểm 1, nhưng chưa thực sự xem xét điểm 2.
trican

1
@Mohammad: đây là một câu hỏi hay và tôi không biết câu trả lời. Tôi thấy những lợi thế khi sử dụng DCT: viết thông số kỹ thuật dễ dàng hơn (in dễ dàng hơn "biến đổi của chúng tôi là hàm dạng đóng" này so với "biến đổi của chúng tôi là ma trận 64x64 được xuất bản trong phụ lục"), không có cuộc họp ủy ban tiêu chuẩn nào về đào tạo tập dữ liệu nào biến đổi trên, các bảng tra cứu ít hơn để nhúng vào ROM của bộ giải mã và có thể là "đối xứng" trong ma trận biến đổi giúp tăng tốc phần cứng của nó so với phép nhân ma trận 64x64 tàn bạo - những ưu điểm này có thể vượt trội hơn mức tăng nén biên.
pichenettes

1
@trican: hình ảnh bạn liên kết để thể hiện cơ sở DCT 2 chiều cho gạch 8 x 8. Mỗi trong số 64 gạch nhỏ là một chức năng cơ bản. Nếu bạn lấy một bộ sưu tập lớn 8 x 8 từ hình ảnh thực tế và thực hiện PCA trên dữ liệu, thì bản địa bạn sẽ nhận được sẽ khá giống với điều đó.
pichenettes
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.