Tải bản đầy đủ (.doc) (63 trang)

ỨNG DỤNG BIẾN ĐỔI WAVELET TRONG KỸ THUẬT NÉN ẢNH

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (906.95 KB, 63 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NÔNG LÂM THÀNH PHỐ HỒ CHÍ MINH

KHÓA LUẬN TỐT NGHIỆP

ỨNG DỤNG BIẾN ĐỔI WAVELET TRONG KỸ THUẬT NÉN
ẢNH

Họ và tên sinh viên: MAI QUỐC VIỆT
Ngành: CƠ ĐIỆN TƯ
Niên khóa: 2006-2010

Tháng 7/2010


ỨNG DỤNG BIẾN ĐỔI WAVELET TRONG KỸ THUẬT NÉN ẢNH

Tác gia

MAI QUỐC VIỆT

Khóa luận được đệ trình để đáp ứng yêu cầu cấp bằng Kỹ sư ngành
Cơ điện tư

Giáo viên hướng dẫn:
Ths. TRẦN THỊ KIM NGÀ

Tháng 7 năm 2010

i



Cảm ta
Em xin gởi đến Cô giáo Trần Thị Kim Ngà lời cam ơn chân thành. Cam ơn
Cô đã tận tình hướng dẫn, định hướng, tạo điều kiện giúp em hoàn thành luận văn này.
Em cũng xin chân thành cam ơn quý Thầy Cô ở khoa Cơ khí Công nghệ
Trường Đại học Nông Lâm Thành phố Hồ Chí Minh đã tận tình truyền đạt kiến thức
và định hướng cho em trong suốt khóa học.
Cuối cùng em xin cam ơn gia đình, bạn bè đã động viên giúp đỡ em trong
suốt quá trình học tập.
Xin trân trọng
Mai Quốc Việt

ii


TÓM TẮT

Với mục đích làm giam dung lượng của một bức anh số để dễ dàng trong
việc lưu trữ và truyền tín hiệu nhưng vẫn đam bao được yêu cầu về độ chính xác của
thông tin.
Từ yêu cầu đề ra, em đã tiến hành khao sát những phương pháp nén dữ liệu
hiện có trong và ngoài nước để rút ra những ưu điểm và khuyết điểm của từng phương
pháp. Kết qua khao sát đã cho thấy rằng ứng dụng biến đổi Wavelet kèm theo đó là hai
thuật toán EZW và SPIHT có nhiều ưu điểm hơn so với những phương pháp truyền
thống như: biến đổi Fourier và biến đổi Cosin. Vì vậy biến đổi Wavelet và hai thuật
toán trên đã được em sư dụng trong luận văn này
Với phương pháp như trên và sự hỗ trợ của phần mền Matlab 2008b,
chương trình nén anh dựa trên biến đổi Wavelet đã được xây dựng. Ban đầu chương
trình đã nén được đối với anh số đen trắng, với tỷ số nén thay đổi theo từng ứng dụng
cụ thể. Kết qua anh nén được từ hai thuật toán đã cho thấy rằng, nếu cùng tỷ số nén thì

ở thuật toán SPIHT cho ta chất lượng anh tốt hơn so với thuật toán EZW nhưng thời
gian để tiến hành nén lâu hơn (do số lần lặp nhiều hơn)

iii


MỤC LỤC
Trang tựa....................................................................................................................... i
Cam tạ........................................................................................................................... ii
Tóm tắt......................................................................................................................... iii
Mục lục........................................................................................................................ iv
Danh sách các chữ viết tắt.............................................................................................v
Danh sách các hình.......................................................................................................vi
Danh sách các bang....................................................................................................viii
1.1 Đặt vấn đề.........................................................................................................................1
1.2 Mục đích...........................................................................................................................1
2.1 Giới thiệu chung về nén anh số............................................................................................2
2.2 Phân loại các kỹ thuật nén anh.........................................................................................4
2.3 Tiêu chuẩn đánh giá chất lượng anh.................................................................................4
2.4. Các kỹ thuật nén anh có tổn hao......................................................................................5
2.4.1 Kỹ thuật mã hóa băng con.........................................................................................5
2.4.2. Kỹ thuật mã hóa dựa trên phép biến đổi...................................................................8
2.5. Cơ sở lý thuyết về biến đổi wavelet...............................................................................11
2.5.1. Từ biến đổi Fourier đến biến đổi wavelet...............................................................11
2.5.2. Biến đổi wavelet......................................................................................................14
2.5.3. Biến đổi Wavelet liên tục........................................................................................15
2.5.4. Biến đổi wavelet rời rạc..........................................................................................18
2.5.5. Giới thiệu về biến đổi Wavelet Haar.......................................................................21
2.5.6. Một số ứng dụng nổi bậc của biến đổi wavelet.......................................................21
3.1. Nội dung.........................................................................................................................25

3.2. Phương pháp nghiên cứu lý thuyết................................................................................25
3.2.1. Cơ sở xây dựng chương trình..................................................................................25
3.3. Phương pháp nghiên cứu thực nghiệm...........................................................................28
3.4. Phương pháp bố trí thí nghiệm và xư lí số liệu..............................................................28
4.1. Kết qua khao sát của những đề tài đã công bố...............................................................30
4.2. Kết qua tính toán thiết kế...............................................................................................30
4.2.1. Kết qua thuật toán và lưu đồ giai thuật của quá trình nén.......................................30
4.2.2. Kết qua chương trình...............................................................................................40
4.3. Kết qua khao nghiệm sơ bộ............................................................................................40
4.4. Nhận xét.........................................................................................................................44
6 Tài liệu tham khao..................................................................................................................45
7 Phụ lục....................................................................................................................................47
7.1 Những hình anh thể hiện sau khi nén với các thông số BPP và PSNR tương ứng với 2 thuật
toán EZW và SPIHT.............................................................................................................47
7.1.1 Thuật toán SPIHT....................................................................................................47
7.1.2 Thuật toán EZW.......................................................................................................49
7.2 Nội dung chương trình....................................................................................................50

DANH SÁCH CÁC CHỮ VIẾT TẮT
CWT

Continous Wavelet Transform

Biến đổi Wavelet liên tục

DFCT

Discrete Fourier Transform

Biến đổi Fourier rời rạc

iv


DCT

Discrete Cosine Transform

Biến đổi Cosine rời rạc

DPCM

Differential Pulse CodeModulation

Điều xung mã vi sai

DWT

Discrete Wavelet Transform

Biến đổi Wavelet rời rạc

IDWT

Inverse Discrete Wavelet

Biến đổi Wavelet rời rạc ngược

Transform
JPEG


Joint Photographic Experts Group

JPEG2000 Joint Photographic Experts Group

Chuẩn nén anh của Ủy ban JPEG
Chuẩn nén anh JPEG 2000.

2000
MRA

Multi Resolution Analysis

Phân tích đa phân giai

MSE

Mean Square Error

PCM

Pulse Code Modulation

Điều mã xung

PSNR

Peak Signal to Noise Ratio

Tỷ số tín hiệu đỉnh trên nhiễu


QMF

Quardrature Mirror Filters

Lọc gương cầu tứ phương

SPIHT

Set Partition in Hierarchical Trees

Phương pháp mã hóa cây phân
cấp theo vùng.

STFT

Short Time Fourier Transform

Biến đổi Fourier thời đoạn ngắn

Sai số bình phương trung bình.

DANH SÁCH CÁC HÌNH
Hình

Tên hình

trang

2.1


Sơ đồ khái quát hệ thống nén anh

3

2.2

Sơ đồ mình họa kỹ thuật mã hóa băng con

6

2.3

Sơ đồ minh họa quá trình phân ly cây bát phân

7

v


2.4

Phân ly hai mẫu thành 4 băng con

8

2.5

Sơ đồ tổng quát của biến đổi DWT 1 chiều

10


2.6

Sơ đồ tổng quát của biến đổi DWT 2 chiều

10

2.7

Biến đổi Fourier

11

2.8

Biến đổi Fourier thời gian ngắn

13

2.9

Minh họa lưới nhị tố với các giá trị của m và n

20

2.10

Sơ đồ nén tín hiệu

21


3.1

Sơ đồ cây tứ phân

26

3.2

Sơ đồ cây zero

26

4.1

Phân tích anh dựa trên biến đổi Wavelet

33

4.2

Các quan hệ trong cấu trúc kim tự tháp

34

4.3

Thứ tự truyền trong mặt phẳng bit

34


4.4

Lưu đồ giai thuật của chương trình nén anh

37

4.5

Lưu đồ giai thuật của thuật toán SPIHT

38

4.6

Lưu đồ giai thuật của thuật toán EZW

39

4.7

Giao diện chương trình nén anh

40

4.8

Mối quan hệ giữa BPP và PSNR của anh “boat.png” qua hai thuật
toán EZW và SPIHT


43

4.9

Mối quan hệ giữa BPP và PSNR của anh “lena.png” qua hai thuật
toán EZW và SPIHT

43

4.10

Mối quan hệ giữa BPP và PSNR của anh “mandrill.png” qua hai
thuật toán EZW và SPIHT

44

vi


DANH SÁCH CÁC BẢNG
Hình

Tên bảng

Trang

4.1

Kết qua nén của thuật toán SPIHT cho anh “boat.png”


41

4.2

kết qua nén của thuật toán EZW cho anh “boat.png”

41

4.3

Kết qua nén của thuật toán SPIHT cho anh “lena.png”

41

4.4

Kết qua nén của thuật toán EZW cho anh “lena.png”

42

vii


4.5

Kết qua của thuật toán SPIHT cho anh “mandrill.png”

42

4.6


Kết qua của thuật toán EZW cho anh “mandrill.png”

42

viii


Chương 1
MỞ ĐẦU
1.1 Đặt vấn đề
Trong những năm gần đây, nhu cầu về truyền dữ liệu tăng đáng kể, đặc biệt
qua thiết bị không dây như: điện thoại di động, các dịch vụ đa phương tiện trên các
thiết bị di động, email, truy cập internet, chia sẽ dữ liệu qua mạng di động, hội nghị
truyền hình…. Một trong những thách thức trong việc đáp ứng các dịch vụ dữ liệu đa
phương tiện di động là cần phai xư lí và truyền tai không dây một khối lượng rất lớn
các nội dung với dữ liệu ngày càng phong phú. Chính điều này sẽ gây ra áp lực rất lớn
đối với nhà cung cấp thiết bị cũng như các nhà quan lý băng thông của thiết bị không
dây.
Đã có rất nhiều đề tài, báo cáo khoa học trong nước và quốc tế đề cập đến
vấn đề này đặc biệt là ứng dụng biến đổi Wavelet trong kỹ thuật nén anh và video. Có
một điều trùng hợp là tất ca các tác gia đều đánh giá cao ưu điểm của biến đổi Wavelet
trong nén dữ liệu so với những biến đổi trước đây như: Fourier và Cosin…
Dựa trên những tiền đề đã có kết hợp với kiến thức về xư lý anh và tín hiệu
số tôi đã tiến hành tìm hiểu về biến đổi Wavelet và những thuật toán mã hóa tín hiệu
SPIHT và EZW để từ đó xây dựng nên chương trình nén anh số đen trắng.
1.2 Mục đích
Với mục đích ứng dụng biến đổi Wavelet kèm theo đó là thuật toán mã hóa
SPIHT và thuật toán EZW cùng với sự hỗ trợ của phần mềm Matlab 2008b để xây
dựng chương trình nén anh dùng cho anh số đen trắng, nhằm thu được anh sau nén có

dung lượng nhỏ hơn dung lượng anh ban đầu nhưng vẫn đam bao được chất lượng yêu
cầu của anh.
Luận văn cũng so sánh được ưu điểm giữa hai thuật toán SPIHT và EZW
thông qua các thông số có được từ chương trình đã được xây dựng ở trên.
1


Chương 2
TỔNG QUAN
2.1 Giới thiệu chung về nén ảnh số
Nén anh số là một đề tài nghiên cứu rất phổ biến trong lĩnh vực xư lý dữ liệu
đa phương tiện. Mục đích là làm thế nào để lưu trữ bức anh dưới dạng có kích thước
nhỏ hơn hay dưới dạng biểu diễn mà chỉ yêu cầu số bit mã hoá nhỏ hơn so với số bit
mã hóa trong bức anh gốc. Nén anh thực hiện được là do một thực tế: thông tin trong
bức anh không phai là ngẫu nhiên mà có trật tự, có tổ chức. Vì thế nếu bóc tách được
tính trật tự, cấu trúc đó thì sẽ biết được phần thông tin nào quan trọng nhất trong bức
anh để biểu diễn và truyền đi với số lượng bít ít hơn so với anh gốc mà vẫn đam bao
tính đầy đủ thông tin. Ở phía thu, quá trình giai mã sẽ tổ chức, sắp xếp lại được bức
anh xấp xỉ gần chính xác so với anh gốc nhưng vẫn thoa mãn đượcchất lượng yêu cầu
và đam bao đủ thông tin cần thiết.
Tóm lại, tín hiệu anh, video hay audio đều có thể được nén lại bởi chúng có
những tính chất như sau:
 Có sự tương quan (dư thừa) thông tin về không gian: trong phạm vi một bức
anh hay một khung video tồn tại sự tương quan đáng kể (dư thừa) giữa các
điểm anh lân cận.
 Có sự tương quan (dư thừa) thông tin về phổ: các dữ liệu thu được từ các bộ
cam biến của thiết bị thu nhận anh tồn tại sự tương quan đáng kể giữa các mẫu
thu, đây chính là sự tương quan về phổ.
 Có sự tương quan (dư thừa) thông tin về thời gian: trong một chuỗi anh video,
tồn tại sự tương quan giữa các điểm anh của các khung video.

Sơ đồ của một hệ thống nén dữ liệu tổng quát như hình 2.1

2


Trong hình 2.1, bộ mã hoá dữ liệu thực hiện quá trình nén bằng cách giam
kích thước dữ liệu anh gốc đến một mức phù hợp với việc lưu trữ và truyền dẫn trên
kênh. Tốc độ bít đầu ra của bộ mã hoá được tính là số bít cho một mẫu (điểm anh). Bộ
mã hoá kênh thực hiện việc chuyển đổi luồng bít đã được nén thành dạng tín hiệu phù
hợp ca cho việc lưu trữ và truyền dẫn, thường bộ mã hoá kênh sư dụng các kỹ thuật:
mã hoá có độ dài thay đổi - RLC (Run Length Coding), mã hoá Huffman, mã hoá số
học. Bộ giai mã thực hiện quá trình ngược lại so với bộ mã hoá.

Hình 2.1. Sơ đồ khái quát hệ thống nén ảnh.
Trong các hệ thống nén, tỉ số nén chính là tham số quan trọng đánh giá kha
năng nén của hệ thống, công thức được tính như sau:
Tỷ số nén = Kích thước dữ liệu gốc/ Kích thước dữ liệu nén
Đối với anh tĩnh, kích thước chính là số bit để biểu diễn toàn bộ bức anh.
Đối với anh video, kích thước chính là số bit để biểu diễn một khung hình video
(video frame).

3


2.2 Phân loai các kỹ thuật nén ảnh
Trong các kỹ thuật nén không tổn hao (lossless compression), anh khôi phục
giống hoàn toàn so với anh gốc. Tuy nhiên, nén không tổn hao chỉ đạt được hiệu qua
nén rất nhỏ. Trái lại, các kỹ thuật nén có tổn hao (lossy compression) có thể đạt được
hiệu qua nén cao hơn rất nhiều mà ở điều kiện cam nhận hình anh thông thường sự
mất mát thông tin không cam nhận được và vì thế vẫn đam bao chất lượng anh. Một

số kỹ thuật nén có tổn hao gồm: điều xung mã vi sai - DPCM, điều xung mã - PCM,
lượng tư hoá véctơ - VQ, mã hoá biến đổi và băng con. Ảnh khôi phục trong hệ thống
nén có tổn hao luôn có sự suy giam thông tin so với anh gốc bởi vì phương pháp nén
này đã loại bỏ những thông tin dư thừa không cần thiết.
2.3 Tiêu chuẩn đánh giá chất lượng ảnh
Để đánh giá chất lượng của bức anh (hay khung anh video) ở đầu ra của bộ
mã hoá, người ta thường sư dụng hai tham số: sai số bình phương trung bình - MSE
(mean square error) và tỉ số tín hiệu trên nhiễu đỉnh - PSNR (peak to signal to
2
noise ratio). MSE thường được gọi là phương sai lượng tư - σq (quantization error

variance). MSE giữa anh gốc và anh khôi phục được tính như sau:

MSE = σq2 =

1
(f[ j,k] − g[j,k]) 2

N j,k

(2.1)

Trong đó tổng lấy theo j, k tính cho tổng tất ca các điểm anh trong anh và N
là số điểm anh trong anh. Còn PSNR giữa hai anh (b bít cho mỗi điểm anh, RMSE là
căn bậc 2 của MSE) được tính theo công thức dB như sau:

PSNR = −20log10

RMSE
2b − 1


(2.2)

Thông thường, nếu PSNR ≥ 40dB thì hệ thống thị giác của người gần như
không phân biệt được giữa anh gốc và anh khôi phục.

4


Một tham số khác hay sư dụng trong các hệ thông viễn thông đó là tỉ số tín
hiệu trên nhiễu - SNR, tuy vậy SNR sư dụng cho một hệ thống nén anh cũng có công
thức dB như sau:

SNR = 10log10
2.4.

Encoder input energy
Noise energy

(2.3)

Các kỹ thuật nén ảnh có tổn hao
Trong phần này, tác gia lựa chọn trình bày hai kỹ thuật nén tổn hao cho nén

anh tĩnh và anh động đó là: mã hoá băng con (subband coding) và mã hoá sư dụng
phép biến đổi (transform coding). Đây là hai kỹ thuật nén điển hình và cho hiệu qua
nén cũng như chất lượng anh cao.
2.4.1 Kỹ thuật mã hóa băng con
Tư tưởng chính của kỹ thuật mã hoá băng con là: các anh được lấy mẫu ở
đầu vào được phân ly thành các băng tần khác nhau (gọi là các tín hiệu băng con). Yêu

cầu của kỹ thuật này là làm thế nào các băng con không bị chồng chéo lên nhau. Để có
thể phân ly tín hiệu ở bộ mã hoá (encoder) thành các băng con, anh được cho qua một
dàn lọc (filter bank) gọi là dàn lọc phân tích và mỗi đầu ra của dàn lọc băng con được
lấy mẫu xuống hệ số 2. Các đầu ra băng con tần số được lấy mẫu xuống sẽ lần lượt
được: lượng tư hoá độc lập bằng các bộ lọc vô hướng khác nhau, mã hoá entropy, lưu
trữ và truyền đi. Ở phía bộ giai mã (decoder), quá trình được thực hiện ngược lại: giai
lượng tư băng con tần số, lấy mẫu lên với hệ số 2, cho đi qua dàn lọc băng con tổng
hợp rồi cộng tất ca các đầu ra của bộ lọc để khôi phục lại anh.
Các bộ lọc băng con thường được thiết kế xấp xỉ thỏa mãn tiêu chuẩn của các
đáp ứng tần số không chồng chéo. Mục đích là để giai tương quan các hệ số tần số kết
qua. Đây chính là tính chất quan trọng mà quá trình lọc băng con cố gắng đạt được.
Các bộ lọc băng con được thiết kế để là các xấp xỉ với các bộ lọc chọn tần số lý tưởng,
trong đó đáp ứng tổng hợp từ tất ca các bộ lọc bao trùm tất ca băng tần của anh. Tuy
nhiên trong thực tế, sự tương quan tổng không bao giờ đạt được do những bộ lọc này
chỉ xấp xỉ với các bộ lọc lý tưởng
5


Hình 2.2. Sơ đồ mình họa kỹ thuật mã hóa băng con
Các bộ lọc sư dụng trong mã hoá băng con là các bộ lọc gương tứ phương QMF (quardrature mirror filters), do vậy chúng ta chỉ cần thiết kế các bộ lọc thông
thấp có đáp ứng H(ω), còn đáp ứng của các bộ lọc thông cao là H(ω+π) chỉ là sự dịch
pha 180o so với bộ lọc thông thấp. Sự chính xác của bộ lọc phụ thuộc vào số các hệ số
của bộ lọc. Một trong các phương pháp mã hoá băng con đó là áp dụng sự phân ly cây
bát phân để phân ly dữ liệu anh thành các băng tần khác nhau. Ý tưởng của phương
pháp này là: trước tiên lọc và lược bỏ anh để phân ly anh thành các băng con tần số
cao và thấp, sau đó tiếp tục phân ly nhưng chỉ áp dụng cho băng con tần số thấp để tạo
thành các băng con tần số cao và thấp để tiếp tục lược bỏ. Kỹ thuật này rất phổ biến và
cũng được áp dụng trong các bộ mã sư dụng biến đổi Wavelet. Đầu ra của các băng
con sau khi đã gian lược sẽ được lượng tư hoá và mã hoá độc lập. Mỗi băng con sẽ sư
dụng bộ lượng tư hoá riêng và mỗi bộ lượng tư hoá này có tốc độ lấy mẫu riêng

(bít/mẫu).
Như vậy rõ ràng mã hoá băng con không đạt được sự nén, mà nó chỉ thực
hiện việc giai tương quan dữ liệu anh gốc và tập trung năng lượng của anh vào một số
6


băng con. Nén chỉ đạt được là do sự lược bỏ anh (decimation) và do sự lượng tư hoá
(quantization).

Hình 2.3. Sơ đồ minh họa quá trình phân ly cây bát phân
Trong các hệ thống mã hoá băng con hai chiều thực tế, người ta chia miền
tần số - không gian hai chiều của anh gốc thành các băng khác nhau ở bất kỳ mức nào.
Hình 2.4 dưới đây minh hoạ việc phân ly 2 anh mẫu thành 4 băng con LL,
HL, LH và HH ở mức đầu tiên.
Nhược điểm của kỹ thuật mã hoá băng con:
Một trong những vấn đề chủ yếu của kỹ thuật mã hoá băng con đó là giai
quyết bài toán cấp phát bít (là số bít cấp cho mỗi băng con) để đạt được hiệu suất cao
nhất. Một trong những cách thực hiện là sư dụng ý tưởng cấp phát bít tối ưu cho mỗi
đầu ra băng con đã được lượng tư hoá. Tuy nhiên cách này chủ yếu thích hợp cho
trường hợp tốc độ cao (≥1bít/mẫu).
Trước khi đi vào nghiên cứu kỹ thuật mã hoá dựa trên phép biến đổi, chúng
ta sẽ tổng kết một số nhược điểm của kỹ thuật mã hoá băng con như sau:
Kỹ thuật mã hoá băng con không xác định được hệ thống mã hoá tối ưu cho
các ứng dụng tốc độ bít thấp.
Việc cấp phát bít tối ưu sẽ thay đổi khi tốc độ bít tổng thay đổi, điều này làm
quá trình mã hoá phai lặp lại hoàn toàn cho mỗi tốc độ bít xác định

7



Không hoàn toàn giai tương quan cho tất ca các băng tần, đấy là do các bộ
lọc không lý tưởng và có sự chồng chéo nhỏ giữa các băng tần liền kề. Do vậy luôn
tồn tại một sự tương quan nhỏ giữa các băng tần kề nhau và dữ liệu sẽ không được nén
hoàn toàn.
Kỹ thuật mã hoá băng con không hiệu qua khi thực hiện bù chuyển động
trong video vì rất khó để thực hiện đánh giá chuyển động ở các băng con (sai số dự
đoán là rất lớn).

Hình 2.4. Phân ly hai mẫu thành 4 băng con
2.4.2. Kỹ thuật mã hóa dựa trên phép biến đổi
Một phép biến đổi là một hàm toán học được sư dụng để biến đổi một tập
các giá trị này thành một tập giá trị khác và tạo ra một cách biểu diễn mới cho cùng
một nguồn tin. Tất ca các phép biến đổi mà luận văn trình bày dưới đây đều là không
tổn hao (lossless); với sự chính xác của các phép toán số học thì các phép biến đổi vẫn
8


bao tồn được độ chính xác ở bất kỳ mức độ nào. Nhưng hầu hết các kỹ thuật mã hoá
đều có tổn hao ở bước lượng tư hoá do có sự làm tròn giá trị cho các hệ số phép biến
đổi.
Các kỹ thuật mã hoá dựa trên phép biến đổi được sư dụng trong nén anh.
 Kỹ thuật mã hoá dựa trên phép biến đổi cosine rời rạc – DCT.
 Kỹ thuật mã hóa dựa trên phép biến đổi wavelet rời rạc DWT.
 Kỹ thuật mã hóa dựa trên phép biến đổi chồng.
2.4.2.1. Kỹ thuật mã hóa dựa trên phép biến đổi DWT
2.4.2.1.1. Biến đổi wavelet rời rạc
Trong cấu trúc khai triển Wavelet ứng dụng để phân tích và nén tín hiệu,
phương pháp phân tích đa phân giai và mã hóa băng con được đề xuất và tìm ra vào
cuối năm 1976 bởi Croisier, Esteban, Weber, Flanagan, Galand đã sư dụng tập các bộ
lọc gọi là bộ lọc đối chiếu trực giao (QMF), cho phép chia tín hiệu thành hai tín hiệu

băng con, giam tốc độ ở mỗi cấp độ phân giai. Và có thể tái tạo không bị gập phổ dù
sư dụng các bộ lọc không lý tưởng.
Nguyên tắc cơ ban trong quá trình mã hóa băng con là phân chia tín hiệu
thành nhiều dai tần số thông qua các bộ lọc thông thấp, thông dai và thông cao. Các
dai tần này gọi là các băng con. Sau đó, các băng con này sẽ được lượng tư và mã hoá
độc lập nhau, tuỳ thuộc vào tính chất thống kê và mật độ năng lượng của từng dai mà
số bit mã hoá khác nhau.
Hình 2.5 dưới đây minh hoạ dạng tổng quát của biến đổi DWT một chiều.
Theo đó tín hiệu được cho đi qua các bộ lọc thông cao và thông thấp H và G rồi được
lấy mẫu xuống (down sampling) hệ số 2 tạo thành biến đổi DWT mức 1. Biến đổi
ngược thì thực hiện ngược lại: lấy mẫu lên (up sampling) hệ số 2 rồi sư dụng các bộ
lọc khôi phục H’, G’ (lý tưởng của H’ và G’ chính là H, G).

9


Hình 2.5. Sơ đồ tổng quát của biến đổi DWT 1 chiều
Từ biến đổi DWT một chiều có thể mở rộng định nghĩa biến đổi DWT hai
chiều theo cách: Sư dụng các bộ lọc riêng biệt, thực hiện biến đổi DWT một chiều dữ
liệu vào (anh) theo hàng rồi thực hiện theo cột. Theo cách này nếu thực hiện biến đổi
DWT ở mức 1, sẽ tạo ra 4 nhóm hệ số biến đổi. Quá trình biến đổi DWT hai chiều có
thể minh hoạ như hình 2.6 dưới đây, trong đó 4 nhóm hệ số là: LL, HL, LH, HH (chữ
cái đầu tiên tương ứng đã thực hiện lọc theo hàng, chữ cái thứ hai tương ứng đã thực
hiện lọc theo cột).

Hình 2.6. Sơ đồ tổng quát của biến đổi DWT 2 chiều
2.4.2.1.2. Hai thuật toán sư dụng DWT điển hình

10



So với biến phép biến đổi DCT sư dụng trong chuẩn nén JPEG ra đời 1992,
nén anh dựa trên biến đổi DWT đã có những cai tiến đáng kể. Tuy nhiên cai tiến mang
tính đột phá sư dụng DWT để nén anh bắt đầu là kỹ thuật mã hoá - EZW (embedded
zero-tree wavelet).
Thuật toán EZW dựa trên kha năng khai thác các thuộc tính đa phân giai của
biến đổi Wavelet để đưa ra một thuật toán ít phức tạp trong tính toán mà vẫn cho hiệu
qua nén cao. Những cai tiến và nâng cấp của EZW về sau đã ra đời một số thuật toán
tương tự như: SPIHT (set partitationing in hierarchical tree - cây phân cấp phân tập)
và ZTE (zero-tree entropy coding - mã hoá entropy cây zero). Chúng ta sẽ trình bày
các thuật toán điển hình này ở chương 4.
2.5.

Cơ sở lý thuyết về biến đổi wavelet

2.5.1. Từ biến đổi Fourier đến biến đổi wavelet
2.5.1.1. Biến đổi Fourier
Mục đích của phân tích tín hiệu là lấy ra thông tin thích hợp từ tín hiệu bằng
cách biến đổi tín hiệu sang một miền khác. Về phương diện toán học, biến đổi là thay
đổi hệ tọa độ sao cho các đặc trưng bị ẩn dấu trong hệ tọa độ gốc sẽ được lộ ra trong
hệ tọa độ biến đổi. Việc biến đổi không làm mất mát thông tin chứa trong tín hiệu gốc

Biên độ

Biên độ

và phai có tính kha đao. Được minh họa như hình 2.7

Biến đổi
Fourier


Thời gian
Đ
Hình 2.7. Biến đổi Fourier

11

Tần số


Phép biến đổi thường sư dụng trong phân tích tín hiệu là phép biển đổi
Fourier được định nghĩa như sau:


F (ω ) =



f (t )e − jωt dt

ω∈R

(2.4)

−∞

với f ∈ L2 ( R ) . Biến đổi Fourier và biến đổi nghịch chỉ được xác định nếu f và biến
đổi F là kha tích tuyệt đối:

| F (ω ) |≤|| f (t ) ||L2 < ∞


(2.5)

Với hàm L2 tổng quát, biến đổi Fourier được định nghĩa thông qua một quá
trình giới hạn. Hàm phức F( ω ) được gọi là phổ tần số của f(t). Biên độ và nghịch pha

{ }

jωt
của các thành phần tần số e

cho ta tái tạo lại f(t) gọi là biến đổi Fourier nghịch

cho bởi:

1
f (t ) =




∫ F (ω )e

jωt



, t∈R

(2.6)


−∞

Biến đổi Fourier và biến đổi nghịch tạo thành một tương ứng 1-1 giữa miền
thời gian và miền tần số.

|| f ||2L2 =

1
|| F ||2L2


(2.7)

Với hệ thống như vậy, quan hệ giữa ngõ vào và ngõ ra được cho bởi tích
chập:

y (t ) =



∫ h(λ ) x(t − λ )d λ

(2.8)

−∞

Trong đó x(t), y(t) và h(t) là các tín hiệu nhập, tín hiệu xuất và đáp ứng xung
của hệ thống. Trong miền tần số công thức trên trở thành:


Y (ω ) = H (ω ). X (ω )

(2.9)
12


Như vậy một hệ thống tuyến tính bất biến theo thời gian biến đổi phổ tần số
của tín hiệu nhập bằng cách nhân với đáp ứng tần số của hệ thống.
2.5.1.2. Thiếu sót của biến đổi Fourier
Không giống như biến đổi Fourier chỉ thích hợp khi phân tích những tín hiệu
dừng (stationary), Wavelet là phép biến đổi được sư dụng để phân tích các tín hiệu
không dừng (non-stationary) - là những tín hiệu có đáp ứng tần số thay đổi theo thời
gian.
Để khắc phục những hạn chế của biến đổi FT, phép biến đổi Fourier thời
đoạn ngắn - STFT được đề xuất (thông qua hình 2.8). Chỉ có một sự khác biệt nhỏ
giữa STFT và FT: trong biến đổi STFT, tín hiệu được chia thành các khoang nhỏ và
trong khoang đó tín hiệu được gia định là tín hiệu ổn định. Để thực hiện kỹ thuật này
cần chọn một hàm cưa sổ w sao cho độ dài của cưa sổ đúng bằng các khoang tín hiệu
phân chia. Với phép biến đổi STFT, chúng ta có thể thu được đáp ứng tần số - thời

Cưa sổ
Biến đổi
Fourier
thời gian
ngắn

Tần số

Biên độ


gian của tín hiệu đồng thời mà với phép biến đổi FT ta không thực hiện được.

Thời gian

Thời gian

Hình 2.8. Biến đổi Fourier thời gian ngắn
Biến đổi STFT đối với tín hiệu liên tục thực được định nghĩa như sau:


X(f , t) = ∫ [x(t)w(t − τ)* ]e −2 jπft dt

(2.10)

−∞

Trong đó độ dài thời gian của cưa sổ là (t-τ), chúng ta có thể dịch chuyển vị
trí của cưa sổ bằng cách thay đổi giá trị t và để thu được các đáp ứng tần số khác nhau
của đoạn tín hiệu ta thay đổi giá trị τ .
13


Giai thích biến đổi STFT bằng nguyên lý bất định Heissenber

∆t.∆ω ≥

1


(2.11)


Nguyên lý này phát biểu là: Không thể biết được chính xác đồng thời thời
gian - tần số của một tín hiệu (hay không thể biết các thành phần phổ của tín hiệu ở
một thời điểm nhất định). Cái mà ta có thể biết là trong một khoang thời gian nhất
định tín hiệu có những băng tần nào. Vấn đề này liên quan đến độ rộng của hàm cưa
sổ mà chúng ta sư dụng. Nếu hàm cưa sổ càng hẹp thì độ phân giai càng tốt hơn và gia
định tín hiệu là ổn định càng có độ chính xác nhưng độ phân giai tần số lại kém đi. Ta
có các hệ qua sau:
 Cưa sổ hẹp -> phân giai thời gian tốt, phân giai tần số kém
 Cưa sổ rộng -> phân giai tần số tốt, phân giai thời gian kém
2.5.2. Biến đổi wavelet
Để vượt qua giới hạn phân giai của STFT, người ta cho biến thiên các độ
phân giai ∆t và ∆ω trên mặt phẳng thời gian – tần số để nhận được phân tích đa phân
giai (multiresolution analysis). Bằng trực giác, ta có thể sư dụng cưa sổ ngắn để phân
tích các tần số cao. Điều này kéo theo bộ lọc tương ứng phai có băng thông rộng ở tần
số cao. Ngược lại nếu tín hiệu dài và biến thiên chậm, ta sẽ dùng cưa sổ dài với phân
giai tần số tốt (băng thông hẹp ở tần số thấp). Do đó, phân giai tần số ∆ω có quan hệ
với tần số trung tâm ωc :

∆ω
=C
ωc

(2.12)

Trong đó C là hằng số.
Bằng cách sư dụng kỹ thuật này, lọc phân tích gồm các lọc thông dai với độ
rộng băng thông tương đối là hằng số được gọi là phân tích “hằng Q”. Trong phân tích
hằng Q, đáp ứng tần số của các bộ lọc phân tích trai rộng theo tỷ lệ logarit trên trục tần
số.

14


Điều này khác với STFT, các đáp ứng tần số của các bộ lọc phân tích trai
tuyến tính trên trục tần số.
Khi tất ca các đáp ứng xung của bộ lọc phân tích hằng Q là các phiên ban
được nhân tỷ lệ (giãn hay nén) của cùng một wavelet mẹ ψ (t ) :
1
2

t
ψ a (t ) =| a | ψ ( )
a


, a ∈ R \ {0}

(2.13)

2.5.3. Biến đổi Wavelet liên tục
Biến đổi Wavelet liên tục (Continuous Wavelet Transform - CWT) của một
hàm

f(t) được bắt đầu từ một hàm Wavelet mẹ (mother Wavelet) ψ (t) .

Hàm Wavelet mẹ ψ (t) có thể là bất kỳ một hàm số thực hoặc phức liên tục nào thoa
mãn các tính chất sau đây:
Tích phân suy rộng trên toàn bộ trục t của hàm ψ (t) là bằng 0. Tức là:



∫ ψ(t)dt = 0

(2.14)

−∞

Tích phân năng lượng của hàm trên toàn bộ trục t là một số hữu hạn


∫ | ψ(t)dt | < ∞
2

(2.15)

−∞

Điều kiện (3.12) có nghĩa là hàm ψ (t) phai là một hàm bình phương kha
tích nghĩa là hàm ψ (t) thuộc không gian L2(R) các hàm bình phương kha tích.
Sau khi hàm Wavelet ψ (t) được chọn, biến đổi Wavelet liên tục của một
hàm bình phương kha tích f(t) được tính theo công thức:

W(a,b) =



∫ f (t)

−∞

1

t−b
ψ* 
÷dt (2.16)
|a|  a 

15


Biến đổi này là một hàm của hai tham số thực a và b. Dấu * ký hiệu là liên
hiệp phức của ψ (t) . Nếu chúng ta định nghĩa một hàm ψ a,b (t) theo biểu thức:

1
t−b
ψ
÷ (2.17)
|a|  a 

ψ a,b (t) =

Chúng có thể viết được:


W(a,b)= ∫ f (t)ψ a,b (t)dt

(2.18)

−∞

Theo thuật toán ta gọi đây là tích vô hướng của hai hàm f(t) và hàm ψ a,b (t) .


Giá trị

1
là hệ số chuẩn hóa để đam bao rằng phân tích năng lượng của hàm
|a|

ψ a,b (t) sễ độc lập với a và b:


∫ |ψ

−∞



(t) | dt = ∫ | ψ (t) |2 dt
2

a,b

(2.19)

−∞

Với mỗi giá trị của a thì ψ a,b (t) là một ban sao của ψ a,0 (t) được dịch đi b đơn
vị trên trục thời gian. Do đó b được gọi là tham số dịch. Đặt tham số dịch b=0 ta được:

ψ a,0 (t) =

1

t
ψ ÷
|a| a 

(2.20)

Điều đó cho thấy a là tham số tỷ lệ.
Khi a>1 thì hàm Wavelet sẽ được trai rộng còn khi 0Sau đây chúng ta sẽ định nghĩa phép biến đổi ngược của biến đổi Wavelet liên tục. Gọi

ψ (ω) là biến đổi Fourier của ψ(t) :
ψ(ω) =



∫ ψ(t)e

− jωt

dt

−∞

16

(2.21)


×