Vớ dụ mó húa cho số tại q3(0,0) sẽ là 01111. Hai bit đầu tiờn 01 chỉ ra giỏ trị của node g c t i qố ạ 0(0,0) là 1, bit thứ 3 là 1 nghĩa là giỏ trị của node q1(0,0) c ng là 1, bit thũ ứ 4 tương ứng chỉ ra giỏ trị của q2(0,0) là 1, bit cuối cựng chỉ ra giỏ trị của node ớch q3(0,0) cũng là 1. Để mó húa node tiếp theo đ
q3(1,0), mó sẽ là 001. Bởi vỡ tất cả cỏc node cha của q3(1,0) đều đó được mó húa (trong bước mó húa q3(0,0) trước đú, hai bit đầu tiờn (00) chỉ ra rằng phần chờnh lệch giữa node hiện tại q3(0,0) và node cha q2(0,0) là 2. Tiến trỡnh này tiếp tục cho toàn bộ ả m ng hai chiều theo thứ ự t quột.
Mó húa khối thẻ:
Nhắc lại rằng thành phần lớp Cλl,c biểu diễn thụng tin từ những khối mó
của những băng con tại mức phõn giải l, từ thành phần ảnh c, đang nằm trong lớp λ. Thành phần này bắt đầu bằng khối thẻ, là một chuỗi bit mó chỉ ra những khối mó nào thuộc lớp, số mặt ph ng bit, i m c t và s lượng byte ẳ đ ể ắ ố được gử đ ủ ừi i c a t ng kh i mó trong ú. ố đ
Cõy thẻ được sử dụng cho t ng b ng con ừ ă để bi u di n hi u quả lớp ể ễ ệ
trong đú một khối mó xuất hiện lần đầu tiờn. Cỏc nỳt lỏ của cõy thẻ tương ng ứ
với cỏc khối mó trong băng. Đại lượng ql[m,n] ứng với những nỳt lỏ này biểu diễn chỉ s cố ủa lớp mà khối mó xuất hiện lầ đầu. n
Thụng tin này được mó húa theo một trong hai cỏch khỏc nhau, tựy
thuộc vào việc khối mó đó nằm trong lớp trước hay chưa. Nếu nú đó nằm
trong lớp trước đú, tức là λ[m,n]< , chỉ cầλ n g i 1 bit duy nh t đểử ấ thụng bỏo rằng thụng tin của khối mó cú nằm trong lớp hi n th i hay khụng. N u lu ng ệ ờ ế ồ
bit chưa nằm trong lớp trước đú, thủ tục mó húa cõy th được ti n hành. Th ẻ ế ủ
tục này tạo ra cỏc bit cần thiết để kiểm tra ql[m,n]≥λ (cụ thể là λ[m,n]≥λ).
Cõy thẻ mó húa thụng tin này hiệu quả bởi vỡ cỏc kh i mó lõn c n cú ố ậ
khuynh hướng xuất hiện trong cỏc lớp gần nhau.
Số mặt phẳng bit:
Thụng tin về độ sõu bit tố đi a tương ứng v i số lượng mặớ t ph ng bit ẳ
trong một từ mó sẽ được mó húa b ng một cõy thẻ thứ hai. ằ
Thụng tin về đ ể i m cắt:
Với m i kh i mó Bỗ ố i nằm trong l p, c n ch rừ i m c t m i cho lu ng ớ ầ ỉ đ ể ắ ớ ồ
bit của khối mó. Ký hiệu nimin là giỏ trị đ ể i m cắt tối thiểu. Với mỗi khối mó trong lớp, người ta chỉ ra độ lệch gi a i m c t m i và giỏ tr t i thi u, c th ữ đ ể ắ ớ ị ố ể ụ ể
là ni- nimin phải nằm trong khoảng 0≤ ni-nimin≤4(P-1). Độ lệch này được mó
húa sử ụ d ng sơ đồ mó húa tương tự mó húa Huffman, mó húa giỏ trị thấp (xỏc
suất cao) với số lượng bit ớt.
Thụng tin này chỉ ra s lượng byte được gử đ ủ ừố i i c a t ng kh i mó trong ố
thành phần lớp. Độ dài từ mó được mó húa thành mó hai phần, phần 1 chỉ thị
độ dài tương ứng của ph n 2. ầ
4.5.Kết luận chương 4
Chương 4 đó tập trung phõn tớch tiờu chuẩn nộn ảnh JPEG 2000. Với
JPEG2000 kỹ thuật xử lý hỡnh nh sẽ ả đạt được những kết quả rất ngo n m c ạ ụ
vỡ cú thể nộn nhỏ từ 100-200 l n mà hỡnh nh khụng sai sút bao nhiờu so v i ầ ả ớ
hỡnh ảnh gốc.
Đ ểi m khỏc bi t để kỹệ thu t JPEG2000 vượt tr i h n h n so v i JPEG ậ ộ ơ ẳ ớ đú là JPEG2000 s dụử ng k thu t nộn d a trờn bi n ỹ ậ ự ế đổi wavelet và mó húa
EBCOT, giỳp tạo nờn hiệu năng nộn tuyệt vời. K thuật mó húa theo từng ỹ
khối, theo từng khu vực ưu tiờn của hỡnh ảnh (ROI) được ỏp dụng cũng là một tiến bộ đ ỏng kể trong thuật toỏn mó húa JPEG2000.
Được ISO cụng nhận c ng cú ngh a là trong m t t ng lai gần ũ ĩ ộ ươ
JPEG2000 sẽ được thương mại húa thụng qua nền cụng nghiệp kỹ thuật số mà lợi ớch mang lại phự hợp nhất đú là chẩn đoỏn hỡnh ảnh từ xa trong Y khoa, hỡnh ảnh trờn Internet, thậm chớ cú thể là phim ảnh kỹ thuật số thụng qua định dạng Motion JPEG2000. Chắc chắn cỏc thiết bị di động như mỏy tớnh cầm tay và đ ệi n thoại di động cũng sẽ khụng bỏ qua chuẩn nộn hỡnh ảnh này…
CHƯƠNG 5: ĐÁNH GIÁ THỰC NGHIỆM CÁC THUẬT TOÁN NẫN
5.1.Thuật toỏn EZW.
5.1.1.Giới thiệu chương trỡnh
a)Giao diện chương trỡnh
Chương trỡnh nộn ảnh theo thuật toỏn EZW được thực hiện trờn phần
mềm Matlab 7.6 cú giao diện như sau:
Hỡnh 5.1: Giao diện chương trỡnh nộn EZW
Phần cấu hỡnh thụng số (Parameter configuration) cho phộp lựa chọn kiểu bộ lọc wavelet sử dụng và tỷ ệ nộn l
Phần kết quả (Result) hiển thị ế k t quả nộn với cỏc thụng số đ ỏnh giỏ là: tỷ lệ bit/pixel (bpp) và tỷ lệ tớn hiệu trờn nhiễu đỉnh (PSNR).
b)Cỏc hàm sử ụ d ng trong chương trỡnh
Phần mó nguồn của cỏc hàm được trỡnh bày trong phần phụ lục. Ch c ứ
năn của cỏc hàm sử dụn trong chương trỡnh cụ thể như sau:
Phần mó húa:
ắ Hàm function_DWT thực hi n bi n đổi wavelet tớn hiệu đưa vào: ệ ế
Tham số đầu: ma trậ ản nh, mức biến đổi wavelet, giỏ tr cỏc bộ lọc ị
phõn giải thụng thấp và thụng cao
Tham số đầu ra: m ng cỏc h s wavelet bi n đổi ả ệ ố ế
ắ Hàm function_ezw_encode thực hiện mó húa EZW:
Tham số đầu vào: cỏc h sốệ wavelet, ngưỡng EZW (đạt t i ngưỡng ớ
này, tiến trỡnh mó húa EZW sẽ ế k t thỳc)
Tham số đầu ra: ma tr n l u tr cỏc giỏ tr thu ậ ư ữ ị được sau cỏc bước
Significance và Refinement.
ắ Hàm function_huffman_encode thực hi n mó húa Huffman: ệ
Tham số đầu vào: ma tr n l u tr cỏc giỏ tr Significance và ậ ư ữ ị
Refinement.
Tham số đầu ra: lu ng bit nộn ồ
Phần giải mó:
ắ Hàm function_huffman_decode thực hi n gi i mó lu ng bit nh n được: ệ ả ồ ậ
Tham số đầu vào: lu ng bit nh n được, s bit c n gi i mó. ồ ậ ố ầ ả Tham số đầu ra: ma tr n Significance và Refinement. ậ
Tham số đầu vào: kớch c nh, giỏ tr ngưỡng kh i t o ban đầu, ma ỡ ả ị ở ạ
trận Significance và Refinement
Tham số đầu ra: cỏc h s wavelet được gi i mó ệ ố ả
ắ Hàm function_InvDWT thực hi n bi n đổi wavelet r i r c ngược: ệ ế ờ ạ
Tham số đầu vào: cỏc h s wavelet, m c phõn gi i, cỏc h s b lọc ệ ố ứ ả ệ ố ộ
tổng hợp thụng thấp và thụng cao.
Tham số đầu ra: ma tr n nh gi i mó. ậ ả ả
5.1.2.Kết quả tớnh toỏn
Thử nghiệm được tiến hành vớ ải nh bitmap Lena 8 bit kớch thước 256x256. Thuật toỏn nộn EZW sử dụng a phõn gi i wavelet v i m c phõn đ ả ớ ứ
giải là log2256 = 8. Ngưỡng EZW cho cỏc hệ số wavelet là 20. Cỏc b lọộ c s ử
dụng là: haar, db4, db7, bior 6.8. Cỏc tỷ lệ nộn CR (Compression Ratio) s ử
dụng là 5, 10, 20, 40, 80.
Hỡnh 5.2: Chất lượng ảnh với nộn EZW sử ụ d ng Haar
Bảng k t qu th c nghi m v i b l c Haar nh sau: ế ả ự ệ ớ ộ ọ ư
Tỷ lệ nộn CR Tỷ số PSNR (dB) 5 26.1821 10 25.1285 20 25.128 40 22.9023 80 20.3207 Bảng 5.1:Thụng số nộn EZW sử dụng bộ lọc Haar b)Với bộ lọc db4:
Hỡnh 5.3: Chất lượng ảnh với nộn EZW sử ụ d ng Db4
Bảng kết quả thực nghiệm với bộ lọc Db4 như sau:
Tỷ lệ nộn CR Tỷ số PSNR (dB) 5 27.6198 10 27.619 20 26.2339 40 23.7249 80 21.0853 Bảng 5.2:Thụng số nộn EZW sử dụng bộ lọc Db4 c)Với bộ lọc db7:
Hỡnh 5.4: Chất lượng ảnh với nộn EZW sử ụ d ng Db7
Bảng kết quả thực nghiệm với bộ lọc Db7 như sau:
Tỷ lệ nộn CR Tỷ số PSNR (dB) 5 27.4572 10 27.457 20 26.1853 40 23.4492 80 20.94 Bảng 5.3:Thụng số nộn EZW sử dụng bộ lọc Db7 d)Với bộ lọc bior6.8:
Hỡnh 5.5: Chất lượng ảnh với nộn EZW sử ụ d ng Bior6.8
Bảng kết quả thực nghiệm với bộ lọc Bior6.8 như sau:
Tỷ lệ nộn CR Tỷ số PSNR (dB) 5 27.5262 10 27.526 20 26.347 40 23.7899 80 21.4336 Bảng 5.4:Thụng số nộn EZW sử dụng bộ lọc Bior6.8
5.1.3.Nhận xột
Hỡnh 5.6: Đồ thị ổ t ng hợp PSNR vs CR với thuật toỏn EZW
Từ đồ th hỡnh 5.6, cú th th y v i cựng t lệị ể ấ ớ ỷ nộn, b lọộ c Haar cho ch t ấ
lượng ảnh kộm nhất. Với cỏc bộ lọc khỏc, thuật toỏn EZW cho chất lượng gần như tương đương nhau. Sự sai khỏc nh do s dụả ử ng cỏc b lọc wavelet khỏc ộ
nhau là khụng đỏng kể.
Vớ ỷi t lệ nộn CR≤20, EZW cho ch t lượng nh tương ấ ả đối t t v i ố ớ
PSNR>25 dB. Khi tỷ lệ nộn cao (CR 30), ch t lượng nh suy gi m rừ r t, cú ≥ ấ ả ả ệ
thể nhận thấy dễ dàng bằng mắt thường.
5.2.Thuật toỏn SPIHT
5.2.1.Giới thiệu chương trỡnh
Hỡnh 5.7: Giao diện chương trỡnh nộn SPIHT b)Cỏc hàm sử ụ d ng trong chương trỡnh: b)Cỏc hàm sử ụ d ng trong chương trỡnh:
Phần mó húa:
ắ Hàm function_DWT thực hi n bi n đổi wavelet tớn hiệu đưa vào: ệ ế
Tham số đầu: ma trậ ản nh, mức biến đổi wavelet, giỏ tr cỏc bộ lọc ị
phõn giải thụng thấp và thụng cao
Tham số đầu ra: m ng cỏc h s wavelet bi n đổi ả ệ ố ế ắ Hàm function_SPIHT_Encode thực hiện mó húa SPIHT:
Tham số đầu: ma tr n nh, m c bi n đổi wavelet ậ ả ứ ế
Tham số đầu ra: lu ng bit ó được mó húa ồ đ
Phần giải mó:
ắ Hàm function_SPIHT_decode thực hiện giải mó SPIHT: Tham số đầu vào: lu ng bit được mó húa ồ
Tham số đầu ra: cỏc h s wavelet được gi i mó ệ ố ả
ắ Hàm function_InvDWT thực hi n bi n đổi wavelet r i r c ngược: ệ ế ờ ạ
Tham số đầu vào: cỏc h s wavelet, m c phõn gi i, cỏc h s b lọc ệ ố ứ ả ệ ố ộ
tổng hợp thụng thấp và thụng cao.
Tham số đầu ra: ma tr n nh gi i mó. ậ ả ả
2.2.Kết quả tớnh toỏn
Thử nghiệm được tiến hành vớ ải nh bitmap Lena 8 bit kớch thước 256x256. Thuật toỏn nộn SPIHT sử dụng a phõn gi i wavelet v i m c phõn đ ả ớ ứ
giải là log2256 = 8. Cỏc bộ lọc s dụử ng là: haar, db4, db7, bior 6.8. Cỏc t lệ ỷ
nộn CR thực nghiệm là 5, 10, 20, 40, 80.
Thử nghiệm với SPIHT chưa sử dụng m t b mó húa entropy nào. ộ ộ
Trong khi thử nghiệm với EZW cần sử ụ d ng một bộ mó húa Huffman.
Hỡnh 5.8: Chất lượng ảnh với nộn SPIHT sử ụ d ng Haar
Bảng kết quả thực nghiệm với bộ lọc Haar như sau: Tỷ lệ nộn CR Tỷ số PSNR (dB) 5 37.6533 10 31.8021 20 27.7189 40 24.9142 80 22.8258 Bảng 5.5:Thụng số nộn SPIHT sử dụng bộ lọc Haar b)Với bộ lọc db4:
Hỡnh 5.9: Chất lượng ảnh với nộn SPIHT sử ụ d ng Db4
Bảng kết quả thực nghiệm với bộ lọc Db4 như sau:
Tỷ lệ nộn CR Tỷ số PSNR (dB) 5 40.1411 10 34.1128 20 29.6605 40 26.6149 80 24.3111 Bảng 5.6:Thụng số nộn SPIHT sử dụng bộ lọc Db4 c)Với bộ lọc db7:
Hỡnh 5.10: Chất lượng ảnh với nộn SPIHT sử ụ d ng Db7
Bảng kết quả thực nghiệm với bộ lọc Db7 như sau:
Tỷ lệ nộn CR Tỷ số PSNR (dB) 5 40.0608 10 34.0087 20 29.5436 40 26.5420 80 24.2254 Bảng 5.7:Thụng số nộn SPIHT sử dụng bộ lọc Db7 d)Với bộ lọc bior6.8:
Hỡnh 5.11: Chất lượng ảnh với nộn SPIHT sử ụ d ng Bior6.8
Bảng kết quả thực nghiệm với bộ lọc Bior6.8 như sau: Tỷ lệ nộn CR Tỷ số PSNR (dB) 5 40.4758 10 34.7781 20 30.2427 40 26.9799 80 24.4305 Bảng 5.8:Thụng số nộn SPIHT sử dụng bộ lọc Bior6.8 5.2.3.Nhận xột
Từ đồ th hỡnh 5.12, cú th th y s dụị ể ấ ử ng b lọộ c Haar cho ch t lượng ấ
kộm nhất. Tuy nhiờn, nhỡn chung việc sử dụng cỏc b lọc wavelet khỏc nhau ộ
Vớ ỷi t lệ nộn CR<10, b ng m t thường h u nh khụng phõn bi t được ằ ắ ầ ư ệ
sự khỏc nhau giữa ảnh tỏi tạo ra ảnh gốc do khi đú PSNR cú giỏ trị lớn. Với tỷ
lệ nộn ≤30, SPIHT vẫn cho chất lượng ảnh tương đối tốt.
Hỡnh 5.12: Đồ thị ổ t ng hợp PSNR vs CR với thuật toỏn SPIHT
5.3.So sỏnh 2 thu t toỏn nộn ậ
Đồ thị PSNR vs CR so sỏnh 2 thu t toỏn EZW và SPIHT ậ được v nh ẽ ư
trờn hỡnh dưới đõy.
T ừ đồ thị hỡnh 5.13 và 5.14, cú thể thấy SPIHT hiệu quả hơn nhi u so ề
với EZW. Cần lưu ý rằng thực nghiệm được tiến hành với SPIHT khụng cần
phải sử dụng m t b mó húa s họộ ộ ố c để gi m thụng tin d th a. Trong khi ú, ả ư ừ đ
Hỡnh 5.13: So sỏnh EZW và SPIHT với bộ ọ l c Haar
Với tỷ lệ nộn th p (CR<10), SPIHT cho ch t lượng nh r t cao trong ấ ấ ả ấ
khi với thuật toỏn EZW, chất lượng ảnh v n bẫ ị suy giả đm ỏng kể. Vớ dụ ớ v i tỷ
lệ nộn là 5 và sử dụng b lọộ c Bior6.8, SPIHT cho PSNR là 40.4758 dB (m t ắ
thường khụng phõn biệ được sựt khỏc nhau giữa ảnh gốc và ảnh khụi phục).
Trong khi đú EZW với tỷ lệ nộn 2 cho PSNR ch là 27.5262 (ch t lượng nh ỉ ấ ả
khụng cao).
Ngoài ra tớnh toỏn trong mụi trường Matlab với EZW yờu cầu thời gian xử lý lõu. Trong khi đú, thời gian tớnh toỏn SPIHT nhanh hơn nhiều.
5.5.Kết luận chương 5
Chương 5 đó trỡnh bày kết quả tớnh toỏn thực nghiệm trong mụi trường Matlab với 2 thuật toỏn nộn EZW và SPIHT. Do SPIHT là phiờn bản cải tiến của EZW nờn hiệu năng nộn của SPIHT cao hơn so với EZW.
Khi tỷ lệ nộn cao EZW và SPIHT c ng cho ch t lượng nh suy gi m. ũ ấ ả ả
Tuy nhiờn so v i tiờu chuớ ẩn nộn JPEG thỡ cỏc thuật toỏn nộn wavelet này ưu
việt hơn nhiều. Như quan sỏt ở hỡnh 5.11, với tỷ lệ nộn cao nh ch bị mờ đả ỉ i, mắt người vẫn cú được cỏi nhỡn tổng thể về ả nh hi n th , khụng cú c m giỏc ể ị ả ảnh b v v n và phõn rừ thành d ng ụ vuụng nh trong trường h p nộn JPEG ị ỡ ụ ạ ư ợ
KẾT LUẬN
Kết quả đạt được:
Luận văn đó tập trung nghiờn cứu phộp biế đổi wavelet cũng nhưn lý thuyết phõn tớch đa phõn giải. T cơ sở đừ ú, tỏc gi phõn tớch và ỏnh giỏ m t ả đ ộ
số kỹ thu t nộn nh d a trờn phộp bi n ậ ả ự ế đổi này nh EZW, SPIHT, WDR, ư
ASWDR, EBCOT…
Luận văn cũng đi sõu tỡm hiểu một tiờu chuẩn nộn ảnh ưu việt dựa trờn
bi n ế đổi wavelet đó được kiểm nghiệm trong thực tế, đú là tiờu chuẩn
JPEG2000. Đõy là lựa chọn ưu việt dần thay thế tiờu chuẩn JPEG cũ.
Ngoài ra, phần thực nghiệm của luận văn thực hiện đỏnh giỏ hai thuật toỏn nộn wavelet cơ bản là EZW và SPIHT. Qua ú m t l n n a minh ch ng đ ộ ầ ữ ứ
hiệu năng nộn vụ cựng hiệu quả của thuật toỏn nộn wavelet.
Hướng phỏt triển nghiờn cứu:
Luận văn mới chỉ tập trung nghiờn c u ng d ng c a bi n ứ ứ ụ ủ ế đổi wavelet
với ảnh tĩnh. Những ưu đ ểm của wavelet khiến nú cú thểi ỏp dụng cho xử lý hiệu quả những kiểu dữ liệ đa phương tiện khỏc như õm thanh, video… u
Thuật toỏn nộn wavelet cú khả năng ch ng nhi u cao và th hi n s c ố ễ ể ệ ứ
mạnh trong mụi trường truyền dẫn vụ tuyến chịu nhiều ảnh hưởng của tạp õm, pha đinh. Trong tương lai, tỏc giả sẽ đ i sau nghiờn c u kh năứ ả ng ch ng sai l i ố ỗ
TÀI LIỆU THAM KHẢO
Tiếng Việt:
1. Nguyễn Kim Sỏch - “Xử lý ảnh và video số” - NXB KHKT, Trang 12-38, 1997
Tiếng Anh:
2. A.Said and W.A. Pearlman - “Image compression using the spatial- orientation tree” - IEEE Int. Symp. on Circuits and Systems, Chicago, IL, trang 279–282, May, 1993.