Ứng dụng Wavelet trong thông tin di động

Một phần của tài liệu Tìm hiểu các phương pháp nén ảnh và ứng dụng biến đổi wavelet trong thông tin di động (Trang 58 - 67)

a. Nén ảnh bằng Wavelet

Trong các chương trước chúng ta đã thấy được ưu điểm của Wavelet trong ứng dụng nén ảnh tĩnh. Chương này xin đưa ra một giải pháp đó là vừa sử dụng biến đổi

Wavelet để khai thác khả năng nén cao, chất lượng hình ảnh đảm bảo (kỹ thuật nén ảnh bằng Wavelet thông thường) mà vẫn phù hợp với môi trường thông tin di động có

băng thông hẹp, tốc độ bít thấp và thường xuyên bị nhiễu kênh, hiệu ứng fading. Một cách tiếp cận đáp ứng được các yêu cầu trên đó là: kỹ thuật nén ảnh bằngWavelet hiệu năng với hai đặc tính quan trọng trong thuật toán: (i) giảm thiểu năng lượng tính toán để thực hiện nén ảnh và (ii) giảm thiểu năng lượng khi truyền thông cho các ứng dụng đa phương tiện trong mạng di động mà vẫn đảm bảo chất lượng của ảnh. Chi tiết của kỹ thuật sẽ trình bầy ở phần dưới đây.

Hình 3.12: Sơ đồ khối quá trình nén ảnh bằng Wavelet

Hình 3.12 chỉ ra sơ đồ khái quát quá trình nén ảnh (mã hoá nguồn). Quá trình đó như sau: ảnh mẫu được đưa qua một phép biến đổi để tạo thành tập hệ số biến đổi. Các hệ số này tiếp tục được lượng tử hoá (chia cho các giá trị cố định cho trước) để giảm dung lượng dữ liệu. Đầu ra của bước này là một luồng các số nguyên mà mỗi một trong số đó tương ứng với một chỉ số nhị phân được lượng tử hoá. Bước cuối cùng là mã hoá: các luồng dữ liệu được chuyển thành chuỗi các từ mã nhị phân (binary symbol) theo cách: các từ mã nhị phân có độ dài ngắn mã hoá cho các số nguyên có xác suất xuất hiện cao. Điều này làm giảm số bít cần truyền.Các nguyên lý mã hoá như vậy là: Huffman và RLC (mã chạy dài).

Có nhiều thuật toán sử dụng cho nén ảnh như: dựa theo phép biến đổi, lượng tự hoá véctơ hoặc mã hoá băng con. Việc lựa chọn thuật toán trong truyền thông đa phương tiện di động không chỉ phụ thuộc vào tỉ số nén đạt được, chất lượng ảnh khôi phục mà còn liên quan đến năng lượng tiêu hao cũng như khả năng trống lại lỗi bít cao hơn.

Gần đây nhóm JPEG đã phát triển chuẩn nén ảnh dựa trên biến đổi Wavelet gọi là JPEG2000 với nhiều ưu điểm. Tuy nhiên thống kê cho thấy bước biến đổi Wavelet

trong quá trình nén tiêu tốn hơn 60% thời gian CPU. Như vậy nếu tối ưu các đặc điểm của thuật toán ở bước biến đổi thì năng lượng và hiệu suất nén có thể được cải thiện đáng kể. Do đó ta tập trung vào tối ưu năng lượng tiêu hao ở bước biến đổi.

Phép biến đổi Wavelet thuận sử dụng sự phân ly 1D (một chiều) để chuyển tập các mẫu 1D thành hai băng: băng con thông thấp (Li) và băng con thông cao (Hi). Băng Li là phiên bản có độ phân giải thấp của ảnh gốc được lấy mẫu xuống

(downsampled), băng Hi biểu thị thông tin dư thừa của ảnh gốc (chỉ cần thiết khi cần khôi phục hoàn toàn ảnh gốc từ băng thông thấp). Quá trình phân ly băng con 2D chỉ là sự mở rộng quá trình phân ly băng con 1D. Toàn bộ quá trình chính là sự thực hiện quá trình phân ly 1D hai lần: đầu tiên theo hàng, rồi theo cột. Theo cách này, băng con thông thấp Li tạo thành khi phân ly theo hàng lại tiếp tục được phân ly theo cột tạo thành băng con LLi LHi. Tương tự như vậy, băng con Hi tiếp tục được phân ly thành HLi HHi. Sau mức biến đổi đầu tiên, ảnh có thể tiếp tục được phân ly bằng cách áp dụng quá trình phân ly 2D cho băng con LLi. Như vậy ảnh có thể được biến đổi ở nhiều mức. Hình 3.13 dưới đây minh hoạ quá trình phân ly ảnh 3 mức.

Hình 3.13: (a) Biến đổi Wavelet 2D mức 3 và (b) Minh hoạ bằng ảnh “CASTLE”

d. Tính toán năng lượng tiêu hao

Để thực hiện biến đổi Wavelet cần chọn một bộ lọc cho nó. Ở đây ta chọn bộ lọc có cặp Daubechies 5-tap / 3-tap do những ưu điểm sau của nó:

• Kết quả sau bộ lọc Wavelet có chứa thông tin điểm ảnh lân cận và như thế loại bỏ được hiệu ứng khối mà biến đổi DCT gặp phải

• Có tính chất đối xứng và định vị cho phép dễ dàng phát hiện đường viền, tính toán nhanh, ảnh nén có chất lượng cao.

• Dễ dàng thực hiện bằng phần cứng vì nó chỉ gồm các bộ cộng và bộ dịch nhị phân (không phải là các bộ ghép kênh và bộ chia).

(thực tế có thể chọn nhiều cặp bộ lọc khác nhau cho biến đổi Wavelet, lựa chọn cặp Daubechies 5-tap/ 3-tap ở mục này và các mục sau đều mang tính chất cục bộ, kết

quả cuối cùng vẫn không mất tính tổng quan) Phương trình của bộ lọc Daubechies 5- tap/3-tap là:

(3.15)

Để xác định hiệu năng của mỗi thuật toán, chúng ta sử dụng một ma trận không phụ thuộc vào việc thực hiện thuật toán. Chúng ta phân tích hiệu năng của nó bằng cách xác định số lần các phép toán cơ bản được thực hiện khi đầu vào cho trước, tiếp đó xác định định lượng các hoạt động chuyển mạch và đó chính là năng lương tiêu hao. Lấy ví dụ, trong phép phân ly Wavelet thuận sử dụng ở bộ lọc trên, cần 8 phép toán cộng - A(Add) và dịch - S(Shift) để chuyển những điểm ảnh mẫu thành một hệ số thông thấp. Tương tự như vậy, sự phân ly thông cao cần 2 phép toán dịch và 4 phép toán cộng. Chúng ta lập mô hình tiêu hao năng lượng của sự phân ly thông thấp/cao bằng cách đếm số các phép toán và xem chúng như là tải tính toán (computational load). Như vậy có 8*S (phép dịch) + 8*A (phép cộng) là tải tính toán cần cho một điểm ảnh trong quá trình phân ly thông thấp và 2S + 4A phép toán cho thông cao.

Với một ảnh đầu vào cho trước kích thước M x N và quá trình phân ly được áp dụng với L mức biến đổi, khi đó chúng ta có thể đánh giá được tổng tải tính toán như sau: Giả sử trước tiên chúng ta áp dụng quá trình phân ly theo chiều ngang. Nhưng do tất cả các điểm ảnh ở vị trí chẵn được phân ly thành các hệ số thông thấp và các điểm ảnh ở vị trí lẻ được phân ly thành các hệ số thông cao, tổng tải tính toán trong quá trình phân ly chiều ngang sẽ là 1/2MN(10S+12A). Lượng tải tính toán trong quá trình phân ly theo chiều dọc cũng dễ nhận ra. Do kích thước của ảnh giảm theo hệ số 4 sau mỗi mức biến đổi, tổng tải tính toán có thê được biểu diễn bằng công thức sau:

Tải tính toán với biến đổi Wavelet thường – :

Ngoài các phép toán số học, bước biến đổi cũng bao gồm một số lượng lớn các lần truy nhập bộ nhớ. Do vậy năng lượng tiêu hao trong các lần truyền dữ liệu nội và ngoại hệ thống có thể đáng kể, chúng ta ước lượng tải truy nhập dữ liệu (data-acces load) bằng cách đếm tổng số các lần truy nhập bộ nhớ trong quá trình thực hiện biến

đổi Wavelet. Tại một mức biến đổi, mỗi điểm ảnh sẽ được đọc hai lần và được ghi hai lần. Do vậy, với cùng một điều kiền cũng như cùng phương pháp đánh giá như trên, tổng tải truy nhập dữ liệu rút ra bằng số các toán tử đọc và ghi”

Tải truy nhập dữ liệu với biến đổi Wavelet thường:

(3.16)

Năng lượng tính toán tổng được tính bằng tổng trọng số của tải tính toán và tải truy nhập dữ liệu. Từ kết quả tiến hành thực nghiệm, ta thấy rằng thực hiện các phép cộng tiêu tốn năng lượng gấp đôi so với thực hiện phép dịch và năng lượng tiêu tốn cho tải truy nhập dữ liệu gấp 2.7 lần tải tính toán. Chúng ta cũng ước lượng năng lượng truyền thông bằng C*R, trong đó C là kích thước của ảnh nén (tính bằng bít) và

R là tổn hao năng lượng để truyền một bít bằng bộ phát RF.

Như vậy ta đã phân tích biên độ và nguồn gốc của tổn hao năng lượng trong biến đổi Wavelet, tiếp theo chúng ta sẽ trình bầy các kỹ thuật để tối thiểu năng lượng tiêu hao cũng như năng lượng truyền thông yêu cầu cho việc nén ảnh bằng Wavelet và truyền vô tuyến.

e. Thuật toán nén ảnh bằng Wavelet hiệu năng – EEW (adsbygoogle = window.adsbygoogle || []).push({});

Trong phần này, chúng ta trình bầy thuật toán EEW (Effective Energy Wavelet)

- một thuật toán biến đổi bằng Wavelet mà mục đích là tiết kiệm năng lượng trong khi chất lượng ảnh chỉ bị ảnh hưởng ít nhất.

EEW khai thác phân bố số học của các hệ số thông cao để khéo léo loại bỏ một số lượng lớn các mẫu trong quá trình nén ảnh. Hình 3.14 minh hoạ phân bố các hệ số thông cao (high-pass coefficients) sau khi áp dụng biến đổi Wavelet hai mức cho ảnh mẫu Lena kích thước 512 x 512. Chúng ta cũng quan sát thấy là các hệ số thông cao thường được biểu diễn bằng các giá trị số nguyên nhỏ. Lấy ví dụ, 80% các hệ số thông cao ở mức 1 (level 1) đều không vượt quá 5. Chính bởi sự phân bố số học của các hệ số thông cao và ảnh hưởng của bước lượng tử hoá đối với các hệ số có giá trị nhỏ, chúng ta có thể làm tròn các hệ số thông cao bằng 0 (và do đó loại bỏ được phép toán liên quan đến chúng) và do đó suy hao chất lượng ảnh chỉ ở mức nhỏ. Cách tiếp cận này có hai ưu điểm chính. Thứ nhất, bởi vì các hệ số thông cao không cần phải tính toán, EEW làm giảm năng lượng tính toán tiêu hao trong quá trình nén ảnh bằng

mã hoá và giải mả là kỹ thuật làm tròn (ước lượng), vì thế không có thông tin yêu cầu được truyền qua kênh vô tuyến, do đó giảm được năng lượngtiêu hao cần có.

Hình 5.14: Phân bố số học các hệ số thông cao sau phép biến đổi Wavelet mức 2

Sử dụng kỹ thuật ước lượng ở trên chúng ta đã xây dựng được thuật toán gồm hai kỹ thuật hạn chế tiêu hao năng lượng: hạn chế tính toán và truyền thông cho các hệ số thông cao: Kỹ thuật đầu tiên là loại bỏ băng con ít ý nghĩa nhất. Trong số 4 băng con ta thấy băng con đường chéo (HHi) là ít ý nghĩa nhất (xem hình 3.14), và là ứng cử viên sáng giá để loại bỏ ở trong bước biến đổi Wavelet. Chúng ta gọi kỹ thuật này là kỹ thuật “loại bỏ HH”. Ở kỹ thuật thứ 2, thì chỉ những băng con có ý nghĩa nhất (chứa thông tin độ phân giải thấp, LLi) được giữ lại còn các băng thông cao khác (LHi, HLi và HHi) đều được loại bỏ. Chúng ta gọi kỹ thuật này là kỹ thuật “loại bỏ H*” (tất cả các băng con thông cao đều bị loại bỏ trong bước biến đổi).

Tiếp theo chúng ta sẽ trình bầy chi tiết về các kỹ thuật loại bỏ HH H* và so sánh hiệu năng của hai kỹ thuật này với thuật toán sử dụng Wavelet nguyên bản (được xem là thuật toán biến đổi Wavelet không loạibỏ thông tin.

f. Hiệu năng của các kỹ thuật loại bỏ

Để thực hiện các kỹ thuật loại bỏ HH H* (EEW), chúng ta thay đổi phép biến đổi Wavelet như mô tả trong hình 3.15. Như đã giải thích ở trên trong quá trình biến đổi Wavelet, mỗi ảnh đầu vào được thực hiện phép biến đổi theo hàng rồi đến cột và phân ly ảnh thành bốn băng con (LL, LH, HL, HH). Tuy nhiên, để thực hiện kỹ thuật loại bỏ HH, thì sau khi thực hiện biến đổi theo hàng, các hệ số thông cao chỉ được đưa vào bộ lọc thông thấp mà không được đưa vào bộ lọc thông cao trong bước

biến đổi theo cột tiếp theo (trong hình 3.15 bên dưới <HH Elimination>, ký hiệu là những hình có bóng sáng). Cách làm này đã loại bỏ băng con đường chéo HH. Còn để thực hiện kỹ thuật loại bỏ H*, ảnh đầu vào được xử lý chỉ cho qua bộ lọc thông thấp trong cả quá trình thực hiện biến đổi hàng và cột. Và như vậy chúng ta cũng loại bỏ được tất cả các bước phân ly thông cao trong quá trình biến đổi.

Hình 3.15: Dữ liệu sau phép biến đổi Wavelet với hai kỹ thuật loại bỏ HH và H*

Để ước lượng hiệu năng của các kỹ thuật EEW ở trên, chúng ta sẽ tiến hành tính tải tính toán và tải truy nhập dữ liệu theo phương pháp đã đề cập ở trên. Chúng ta giả thiết rằng, các kỹ thuật tính toán chỉ được áp dụng ở E mức biến đổi đầu tiên trong tổng số L mức. Lý do là bởi vì ưu điểm của các hệ số thông cao thực hiện loại bỏ càng ý nghĩa ở các mức biến đổi thấp.

Trong kỹ thuật loại bỏ HH, tải tính toán trong quá trình thực hiện biến đổi theo hàng bằng với thuật toán Wavelet thường. Tuy nhiên, trong quá trình thực hiện biến đổi theo cột băng con thông cao là kết quả từ phép biến đổi theo dòng trước, băng con

HH không được tính. Kết quả chỉ ra rằng làm như vậy có thể tiết kiệm 1/4MN(4A+2S)

các phép toán cho tải tính toán ( nghĩa là tiết kiệm được 7.4% so với thuật toán

Wavelet thường). Và vì thế, tổng tải tính toán có thể được tính như sau:

(3.17) Bởi vì băng con thông cao sau phép biến đổi theo hàng vần cần để tính băng con HL trong phép biến đổi theo cột nên chúng ta có thể tiết kiệm số lần “đọc” trong kỹ thuật loại bỏ HH. Tuy nhiên, chúng ta chỉ tiết kiệm được 1/4 các lần “ghi” (tiết

kiệm 25%) trong quá trình thực hiện phép biến đổi theo cột. Do vậy kết quả băng con

HH được gán trước bằng 0 trước khi quá trình biến đổi được thực hiện. Do vậy, tổng tải truy cập dữ liệu sẽ được tính:

(3.18) Kỹ thuật loại bỏ H* cho kết quả đáng kể trong việc tiết kiệm năng lượng tính toán bởi đã có 3 trong tổng số 4 băng con được loại bỏ.

KẾT LUẬN

Đồ án đã trình bày các khái niệm quan trọng cần thiết của kỹ thuật nén ảnh nói chung và các nguyên tắc, cơ sở lý thuyết, thuật toán của một số phương pháp nén ảnh phổ biến như: mã loạt dài RLE, HUFFMAN, LZW, JPEG, JPEG2000.Trong đó trình bày phương pháp nén ánh JPEG2000 sử dụng biến đổi Wavelet để nén ảnh, đây là phương pháp nén ảnh đang được quan tâm phát triển vì các tính năng nổi bật so với các phương pháp khác. Phương pháp này không chỉ cho hiệu suất nén cao, chất lượng ảnh bảo đảm so với các phương pháp nén RLE, HUFFMAN, LZW, JPEG mà còn các tính năng riêng biệt do sư dụng biến đổi Wavelet để nén ảnh như : nén ảnh theo vùng (ROI), trong một ảnh các vùng hoặc các đối tượng có thể có tỷ lệ nén khác nhau, nén ảnh một lần nhưng có thể giải nén ảnh với chất lượng ảnh và kích thước ảnh khác nhau tuỳ theo yêu cầu người sử dụng ....Các phương pháp nén trình bày ở trong đồ án là những phương pháp đang được sử dụng khá rộng rãi trong nhiều lĩnh vực đặc biệt trong truyền thông cho ảnh trên mạng đảm bảo tốc độ, thời gian và chất lượng dữ liệu truyền.

Hướng phát triển của đồ án

• Đồ án mới đề cập đến các phương pháp nén ảnh tĩnh mà chưa ứng dụng chúng cho âm thanh, video, đặc biệt là biến đổi Wavelet của chuẩn JPEG2000 do đó việc đi sâu nghiên cứu tìm hiểu các họ của Wavelet là rất cần thiết.

• Nghiên cứu thêm về các giải thuật SPIHT, EZW và các ứng dụng của chúng. • Các phương pháp nén được trình bày trong đồ án đã ra đời từ nhiều năm trước

do đó cần nghiên cứu những cải tiến đối với mỗi phuơng pháp để nâng cao hiệu quả nén.

Các tài liệu tham khảo:

[1]. PGS.Nguyễn Thanh Thuỷ, Ths.Lương Mạnh Bá, Nhập môn xử lý ảnh số

[2]. Võ Đức Khánh (2003),Giáo trình xử lý ảnh , Nxb Thống kê, Hà Nội

[3]. D.Huffman , A method for the contruction of minimum –redundancy codes, Proc (adsbygoogle = window.adsbygoogle || []).push({});

IRE 40, 1098-1101 (1952)

[4]. Nguyễn Kim Sách (1997), Xử lý ảnh và video số , Nxb Khoa học và Kỹ thuật , Hà Nội .

[5]. Michael David Adams - Faouzi Kossentini - Touraji Ebrahimi - “JPEG2000 : The Next Generation Still Image Compression Standard” (2000)

[6]. Website: http://www.JPEG.org/JPEG2000.html [7]. Website: http://www.codeproject.com

Một phần của tài liệu Tìm hiểu các phương pháp nén ảnh và ứng dụng biến đổi wavelet trong thông tin di động (Trang 58 - 67)