Tổng quan
Câu trả lời ngắn gọn là chúng có số lượng tối đa vanishing moments
cho một số nhất định support
(nghĩa là số hệ số bộ lọc). Đó là đặc tính "cực đoan" giúp phân biệt các bước sóng Daubechies nói chung. Nói một cách lỏng lẻo, nhiều khoảnh khắc biến mất ngụ ý nén tốt hơn và hỗ trợ nhỏ hơn ngụ ý ít tính toán hơn. Trong thực tế, sự đánh đổi giữa các khoảnh khắc biến mất và kích thước bộ lọc rất quan trọng đến nỗi nó chi phối cách đặt tên của sóng con. Ví dụ, bạn sẽ thường thấy các D4
wavelet được gọi là D4
hoặc db2
. Đề 4
cập đến số lượng các hệ số và2
đề cập đến số lượng khoảnh khắc biến mất. Cả hai đều đề cập đến cùng một đối tượng toán học. Dưới đây, tôi sẽ giải thích thêm về những khoảnh khắc là gì (và tại sao chúng ta muốn làm cho chúng biến mất), nhưng bây giờ, chỉ cần hiểu rằng nó liên quan đến việc chúng ta có thể "gấp" hầu hết thông tin trong tín hiệu thành nhỏ hơn như thế nào số lượng giá trị. Nén tổn thất đạt được bằng cách giữ các giá trị đó và vứt bỏ các giá trị khác.
Bây giờ, bạn có thể nhận thấy rằng CDF 9/7
, được sử dụng trong JPEG 2000
, có hai số trong tên, thay vì một số. Trong thực tế, nó cũng được gọi là bior 4.4
. Đó là bởi vì nó hoàn toàn không phải là một wavelet rời rạc "tiêu chuẩn". Trên thực tế, về mặt kỹ thuật, nó thậm chí không bảo toàn năng lượng trong tín hiệu và tài sản đó là toàn bộ lý do khiến mọi người rất hào hứng với DWT ngay từ đầu! Các con số, 9/7
và 4.4
, vẫn đề cập đến các thời điểm hỗ trợ và biến mất tương ứng, nhưng bây giờ có hai bộ hệ số xác định wavelet. Thuật ngữ kỹ thuật là thay vì orthogonal
, chúng là biorthogonal
. Thay vì đi quá sâu vào những gì có nghĩa là về mặt toán học, tôi
JPEG 2000
Một cuộc thảo luận chi tiết hơn về các quyết định thiết kế xung quanh sóng con CDF 9/7 có thể được tìm thấy trong bài báo sau:
Usevitch, Bryan E. Hướng dẫn về nén hình ảnh rốn mất hiện đại: Nền tảng của JPEG 2000 .
Tôi sẽ chỉ xem xét những điểm chính ở đây.
Rất thường xuyên, các bước sóng Daubechies trực giao thực sự có thể dẫn đến việc tăng số lượng giá trị cần thiết để biểu diễn tín hiệu. Hiệu ứng được gọi là coefficient expansion
. Nếu chúng tôi thực hiện nén mất mát có thể có hoặc không quan trọng (vì dù sao chúng tôi cũng sẽ vứt bỏ các giá trị), nhưng nó chắc chắn có vẻ phản tác dụng trong bối cảnh nén. Một cách để giải quyết vấn đề là coi tín hiệu đầu vào là định kỳ.
Chỉ coi đầu vào là kết quả định kỳ trong sự không liên tục ở các cạnh, khó nén hơn và chỉ là các tạo tác của biến đổi. Ví dụ: hãy xem xét các bước nhảy từ 3 đến 0 trong phần mở rộng định kỳ sau: . Để giải quyết vấn đề đó, chúng ta có thể sử dụng phần mở rộng định kỳ đối xứng của tín hiệu, như sau: . Loại bỏ các bước nhảy ở các cạnh là một trong những lý do Biến đổi Cosine rời rạc (DCT) được sử dụng thay vì DFT trong JPEG. Đại diện cho một tín hiệu với các cosin mặc nhiên giả định "vòng lặp từ trước ra sau" của tín hiệu đầu vào, vì vậy chúng tôi muốn các sóng con có cùng tính chất đối xứng.[ 0 , 1 , 2 , 3 ] → [ . . .0 , 1 , 2 , 3 , 0 , 1 , 2 , 3 , . . . ][ 0 , 1 , 2 , 3 ] → [ . . . , 0 , 1 , 2 , 3 , 3 , 2 , 1 , 0 , 0 , 1 ... ]
Thật không may, wavelet trực giao duy nhất có các đặc điểm cần thiết là wavelet Haar (hoặc D2, db1), chỉ là một khoảnh khắc biến mất. Ừ Điều đó dẫn chúng ta đến các bước sóng hai chiều, thực sự là các biểu diễn dự phòng, và do đó không bảo toàn năng lượng. Lý do sóng con CDF 9/7 được sử dụng trong thực tế là vì chúng được thiết kế để tiến gần đến việc bảo tồn năng lượng. Họ cũng đã thử nghiệm tốt trong thực tế.
Có nhiều cách khác để giải quyết các vấn đề khác nhau (được đề cập ngắn gọn trong bài báo), nhưng đây là những nét rộng của các yếu tố liên quan.
Khoảnh khắc biến mất
Vậy những khoảnh khắc là gì, và tại sao chúng ta quan tâm đến chúng? Các tín hiệu mượt mà có thể được xấp xỉ bằng các đa thức, tức là các hàm có dạng:
a + b x + c x2+ dx3+ . . .
Các khoảnh khắc của một hàm (tức là tín hiệu) là thước đo mức độ tương tự của nó với công suất cho trước của x. Về mặt toán học, điều này được thể hiện như một sản phẩm bên trong giữa chức năng và sức mạnh của x. Một khoảnh khắc biến mất có nghĩa là sản phẩm bên trong bằng không, và do đó, hàm không "giống" sức mạnh của x, như sau (đối với trường hợp liên tục):
∫xnđụ( x ) dx = 0
Bây giờ, mỗi wavelet rời rạc, trực giao có hai bộ lọc FIR được liên kết với nó, được sử dụng trong DWT . Một là bộ lọc lowpass (hoặc chia tỷ lệ) và cái còn lại là bộ lọc highpass (hoặc wavelet)φψ. Thuật ngữ đó có vẻ khác nhau đôi chút, nhưng đó là những gì tôi sẽ sử dụng ở đây. Ở mỗi giai đoạn của DWT, bộ lọc đường cao tốc được sử dụng để "bóc" một lớp chi tiết và bộ lọc đường thông thấp mang lại một phiên bản tín hiệu được làm mịn mà không có chi tiết đó. Nếu bộ lọc đường cao tốc có các khoảnh khắc biến mất, những khoảnh khắc đó (tức là các tính năng đa thức bậc thấp) sẽ bị nhồi vào tín hiệu được làm mịn bổ sung, thay vì tín hiệu chi tiết. Trong trường hợp nén bị mất, hy vọng tín hiệu chi tiết sẽ không có nhiều thông tin trong đó, và do đó chúng ta có thể vứt bỏ phần lớn nó.
Đây là một ví dụ đơn giản sử dụng sóng con Haar (D2). Thông thường có hệ số tỷ lệ có liên quan, nhưng tôi bỏ qua nó ở đây để minh họa khái niệm này. Hai bộ lọc như sau:
1 / 2-√
ϕ = [ 1 , 1 ]ψ = [ 1 , - 1 ]
Bộ lọc đường cao biến mất trong khoảnh khắc số 0, tức là , do đó, nó có một khoảnh khắc biến mất. Để thấy điều này, hãy xem xét tín hiệu không đổi này: . Bây giờ theo trực giác, rõ ràng là không có nhiều thông tin ở đó (hoặc trong bất kỳ tín hiệu không đổi). Chúng ta có thể mô tả điều tương tự bằng cách nói "bốn twos". DWT cho chúng ta một cách để mô tả trực giác đó một cách rõ ràng. Đây là những gì xảy ra trong một lần truyền DWT bằng sóng con Haar:x0= 1[2,2,2,2]
[2,2,2,2]→ϕψ{[2+2,2+2]=[4,4][2−2,2−2]=[0,0]
Và những gì xảy ra trên đường chuyền thứ hai, hoạt động chỉ với tín hiệu được làm mịn:
[4,4]→ϕψ{[4+4]=[8][4−4]=[0]
Lưu ý cách tín hiệu không đổi hoàn toàn vô hình đối với các chi tiết đi qua (tất cả đều xuất phát thành 0). Cũng lưu ý rằng bốn giá trị của đã được giảm xuống một giá trị . Bây giờ nếu chúng ta muốn truyền tín hiệu gốc, chúng ta có thể gửi và DWT nghịch đảo có thể tái tạo tín hiệu gốc bằng cách giả sử rằng tất cả các hệ số chi tiết đều bằng không. Wavelets với các khoảnh khắc biến mất theo thứ tự cao hơn cho phép kết quả tương tự với các tín hiệu được xấp xỉ bằng các đường, parabolas, cubics, v.v.8 8288
Đọc thêm
Tôi đang xem xét RẤT NHIỀU chi tiết để có thể tiếp cận điều trị trên. Bài viết sau đây có một phân tích sâu sắc hơn nhiều:
M. Unser và T. Blu, Các thuộc tính toán học của các bộ lọc sóng con JPEG2000 , IEEE Trans. Hình ảnh Proc., Tập. 12, không Ngày 9 tháng 9 năm 2003, trg.1080-1090.
Chú thích
Bài báo trên dường như gợi ý rằng wavelet JPEG2000 được gọi là Daubechies 9/7 và khác với wavelet CDF 9/7.
Chúng tôi đã lấy được hình thức chính xác của các bộ lọc chia tỷ lệ JPEG2000 Daubechies 9/7 ... Những bộ lọc này là kết quả của hệ số của đa thức giống như [10]. Sự khác biệt chính là bộ lọc 9/7 đối xứng. Hơn nữa, không giống như các spline hai chiều của Cohen-Daubechies-Feauveau [11], phần không đều của đa thức đã được chia cho cả hai bên, và càng đều càng tốt.Daubechies8
[11] A. Cohen, I. Daubechies và JC Feauveau, cơ sở Biorthogonal của các bước sóng được hỗ trợ nhỏ gọn, Comm Comm. Táo nguyên chất. Toán., Tập. 45, không 5, trang 485 bóng560, 1992.
Bản nháp của tiêu chuẩn JPEG2000 ( liên kết pdf ) mà tôi đã duyệt cũng gọi bộ lọc chính thức Daubechies 9/7. Nó tham khảo bài viết này:
M. Antonini, M. Barlaud, P. Mathieu và I. Daubechies, mã hóa hình ảnh bằng cách sử dụng biến đổi wavelet, xông IEEE Trans. Hình ảnh Proc. 1, trang 205-220, tháng 4 năm 1992.
Tôi chưa đọc một trong những nguồn đó, vì vậy tôi không thể chắc chắn lý do tại sao Wikipedia gọi CDF wavelet là CD2000 9/7. Có vẻ như có thể có một sự khác biệt giữa hai loại này, nhưng mọi người vẫn gọi CDF là sóng con chính thức CD2000 9/7 (vì nó dựa trên cùng một nền tảng?). Bất kể tên là gì, bài báo của Usevitch mô tả cái được sử dụng trong tiêu chuẩn.