Những tính chất nào làm cho một số Wavelets tốt hơn so với những người khác trong việc nén hình ảnh?


40

Tôi đang cố gắng dạy bản thân nhiều hơn về nén ảnh bằng phương pháp biến đổi wavelet. Câu hỏi của tôi là: Điều gì về một số bước sóng nhất định làm cho chúng thích hợp hơn khi nén hình ảnh? Họ có dễ tính toán hơn không? Họ có tạo ra hình ảnh mượt mà hơn không? V.v ...

Ví dụ: JPEG 2000 sử dụng Whenet Cohen-Daubechies-Feauveau 9/7 ... tại sao lại như vậy?


Theo như tôi biết thì sóng con Daubechies cung cấp cơ sở trơn tru, do đó hình ảnh bị nén rất cao bị "làm mờ". Haar wavelet, ví dụ, sẽ tạo ra các tạo tác khối. Vì bạn đã đề cập đến JPEG 2000, tôi cũng muốn lưu ý rằng sơ đồ mã hóa của các hệ số sóng con khác không có tác động đến các hình ảnh được giải mã (EZW, SPIHT, ...).
Libor

Câu hỏi của bạn đã được trả lời. Đừng ngần ngại bỏ phiếu cho những người hữu ích và chấp nhận phù hợp nhất
Laurent Duval

Câu trả lời:


27

Tổng quan

Câu trả lời ngắn gọn là chúng có số lượng tối đa vanishing momentscho 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 D4wavelet được gọi là D4hoặc db2. Đề 4cậ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/74.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.

  1. 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ỳ.

  2. 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...]

  3. 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+bx+cx2+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):

xnf(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][22,22]=[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][44]=[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.


@datageist Câu trả lời tuyệt vời! Ngoài ra, một lý do khác mà 9/7 xuất hiện ở nơi đầu tiên là vì đó là một cách khác để nhân tố đa thức tái cấu trúc, với ràng buộc là các bộ lọc đối xứng . Bằng cách này, đáp ứng pha vẫn tuyến tính. (Ngược lại, một wavelet daub4, trong khi FIR, không đối xứng và tạo ra các pha phi tuyến tính trong tín hiệu được xử lý). 9/7 đã được sử dụng trong JPEG vì thiên hướng chủ quan cho chúng ta thích tuyến tính hơn các biến dạng phi tuyến tính trong hình ảnh.
Spacey

1
Bài viết hay. Thông tin trong bài viết trên wikipedia tương ứng với các nguồn được trích dẫn, về cơ bản là Daubechies "10 Bài giảng", do đó, nó có thể bị lỗi thời đối với JPEG2000. Một điều chỉnh: biorthogonal không dư thừa. Các điều kiện về giá trị sinh học áp đặt chính xác các ngân hàng bộ lọc đảo ngược. Biến đổi dư thừa bắt đầu với framelets.
Tiến sĩ Lutz Lehmann

10

Mức độ tốt của các biến đổi tín hiệu được đánh giá trên hai số liệu khác nhau: nén và trong trường hợp nén mất chất lượng, chất lượng. Nén được xác định bởi nén năng lượng nhưng chất lượng khó hơn.

Chất lượng truyền thống được đo bằng lỗi bình phương trung bình hoặc SNR trung bình trên mỗi pixel. Tuy nhiên, con người không có xu hướng đánh giá tín hiệu với MSE hoặc SNR. Con người rất nhạy cảm với tiếng ồn có cấu trúc mà MSE có xu hướng không tồn tại. Phát triển các thuật toán cung cấp các số liệu chất lượng giống như con người là một lĩnh vực nghiên cứu tích cực. Chỉ số cấu trúc tương tự (SSIM) của Bovik là một nơi tốt để bắt đầu.


6

Như một câu trả lời rất ngắn - bất kỳ biến đổi nào tốt hơn biến đổi khác khi có, cái được gọi là "thuộc tính nén năng lượng" được giải thích như sau:

"khi chỉ một phần nhỏ các hệ số biến đổi có cường độ lớn sao cho chỉ giữ một vài hệ số hiệu quả và loại bỏ hoặc lượng tử hóa khác vẫn cho phép xây dựng lại gần hoàn hảo". Tài sản như vậy có liên quan đến khả năng giải mã của các biến đổi đơn vị. "

Biến đổi với thuộc tính nén năng lượng ít hơn là biến đổi sẽ cần số ký hiệu nhỏ nhất và do đó bit ít hơn.

Biến đổi với đặc tính nén năng lượng cao nhất là DCT.

Dipan.


1
DCT chỉ có độ nén năng lượng cao nhất cho các lớp tín hiệu chưa biết. Nếu bạn có thể mô tả miền tín hiệu của bạn, bạn có thể làm tốt hơn.
totowtwo

Tôi đồng ý @totowtwo. Quan điểm của tôi là "đặc tính nén năng lượng" là thứ tạo ra một biến đổi nhất định là thứ làm cho nó thích hợp hơn cho các công cụ codec.
Dipan Mehta

5

Hình ảnh tự nhiên bao gồm các tính năng hình ảnh khác nhau, chúng ta có thể phân loại chúng thành các tính năng, kết cấu và cạnh mượt mà hoặc chậm khác nhau. Một phương pháp nén tốt là một phương pháp chuyển hình ảnh thành một miền trong đó toàn bộ năng lượng của tín hiệu được bảo toàn chỉ trong một vài hệ số.

Biến đổi fourier cố gắng xấp xỉ một hình ảnh bằng cách sử dụng sin và cosin. Bây giờ các sin và cosin có thể xấp xỉ các tín hiệu trơn tru khá chính xác, nhưng nổi tiếng là xấu đối với sự không liên tục gần đúng. Nếu bạn đã quen thuộc với hiện tượng Gibbs, bạn sẽ biết rằng người ta cần một hệ số phạm vi số lượng lớn để tránh các hiện vật xấp xỉ thời gian gián đoạn. Tuy nhiên, số lượng hệ số càng nhỏ thì nén càng tốt. Do đó, có một sự đánh đổi cố hữu giữa số lượng các hệ số và sự mất mát của phương pháp nén, mà chúng ta thường gọi là sự đánh đổi biến dạng tỷ lệ.

k2/3k1, tương ứng. Với cùng số lượng thuật ngữ, lỗi sẽ phân rã nhanh hơn đối với wavelet. Điều này có nghĩa là sóng con có khả năng nén năng lượng tốt hơn khi hình ảnh không hoàn toàn mịn (thay đổi chậm) và chứa các điểm kỳ dị.

Tuy nhiên, chúng tôi chưa có một cơ sở hoặc biến đổi nào có thể xấp xỉ các tính năng mượt mà, điểm kỳ dị, cạnh và kết cấu.


4

DCT có khả năng nén năng lượng rất tốt đối với nhiều tín hiệu phổ biến, và nó cũng kết hợp khá tốt với cách nhiễu xạ (quá trình vật lý cơ bản trong hình ảnh) hoạt động, vì nhiễu xạ có thể được biểu diễn như một hạt nhân nhiễu xạ. Những điều này mang lại cho nó rất nhiều lợi thế.

Vấn đề là các hệ số DCT nhất thiết phải được tối ưu hóa trên toàn bộ khu vực biến đổi. Điều này đòi hỏi phải tạo ra nhiều khu vực biến đổi nhỏ (khối) để năng lượng trong một khu vực không tràn sang khu vực khác khi chuyển đổi. Điều này vừa hạn chế khả năng biến đổi thành năng lượng nhỏ gọn, vừa giới thiệu các tạo tác ở nhiều ranh giới khối.

Tôi đã không làm được gì nhiều với sóng con nên tôi có thể sai, nhưng chúng được định vị nhiều hơn, với các hệ số khác nhau đại diện cho sự đánh đổi khu vực / tần số khác nhau. Điều này cho phép kích thước khối lớn hơn với ít tạo tác. Không chắc chắn trong thực tế bao nhiêu sự khác biệt mà thực sự làm cho mặc dù.


0

Khi nói về các bước sóng tốt hơn, chúng ta nên xem xét chúng có cùng một bộ mã hóa ở phía sau: hiệu suất của một phép biến đổi được đan xen rất nhiều với lượng tử hóa và mã hóa. Hiệu suất thường là: nén tốt hơn cho cùng chất lượng hoặc chất lượng tốt hơn cho cùng một nén. Nén là một biện pháp dễ dàng, chất lượng thì không. Nhưng giả sử chúng ta có một cái.

×124×4

Cuối cùng, điều này phụ thuộc vào loại hình ảnh bạn muốn nén: tất cả mục đích, hoặc tập trung, như với hình ảnh y tế, hoặc nén dữ liệu địa chấn, với một loại dữ liệu cụ thể, bị hạn chế? Ở đây một lần nữa, wavelet có thể khác nhau.

Bây giờ, các thành phần hình thái chính của hình ảnh là gì và làm thế nào để wavelet đối phó với chúng:

  • xu hướng chậm, nền tảng phát triển: những khoảnh khắc tan biến, loại bỏ đa thức trong các băng con sóng con,
  • bumps: ok với chức năng mở rộng,
  • các cạnh: bị bắt bởi khía cạnh đạo hàm của wavelet,
  • Hoạ tiết: dao động được chụp bởi khía cạnh lắc lư của sóng con,
  • phần còn lại, những gì ồn ào, không được sửa đổi: được quản lý bởi tính trực giao (hoặc quá gần).

Vì vậy, về mặt phân tích, các sóng nhỏ tốt nhất là tốt cho việc nén các tính năng trên trên toàn cầu. Về mặt tổng hợp, các bước sóng tốt nhất giảm thiểu các hiệu ứng nén, ví dụ lượng tử hóa, để mang lại khía cạnh dễ chịu cho ap. Các tính chất cần thiết trong phân tích / tổng hợp hơi khác một chút, đây là lý do tại sao các sóng con hai chiều rất đẹp: bạn có thể tách các thuộc tính phân tích (khoảnh khắc biến mất) / tổng hợp (độ mịn), mà bạn không thể làm với các thuộc tính trực giao và kích thích tăng chiều dài bộ lọc , khá bất lợi cho hiệu suất tính toán. Bổ sung, các sóng con hai chiều có thể đối xứng, tốt cho các cạnh.

Cuối cùng, bạn có muốn nén không mất dữ liệu không? Sau đó, bạn cần các sóng con giống như "số nguyên" (hoặc binlets).

Và tất cả những điều trên trộn lẫn với các vấn đề tính toán: các bước sóng tách rời, không quá dài. Và quá trình tiêu chuẩn hóa trong ủy ban JPEG.

Cuối cùng, 5/3 khá tốt cho lossless, đủ ngắn. Một số 9/7 cũng tốt. Tốt hơn nhiều so với một con sóng 13/7 ? Không thực sự, và ngay cả khi, đó là trong PSNR, không phải là tốt nhất cho chất lượng hình ảnh.

Vì vậy, các bước sóng tốt nhất là một bộ râu, cho hình ảnh truyền thống và giao tiếp cá nhân với các tác giả của

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.

làm cho tôi tin rằng khía cạnh "tốt nhất" của 9/7 không được giải thích đầy đủ, cũng không được đảm bảo.

M

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.