Mã hoá Entropy

Một phần của tài liệu Bài toán về xử lý ảnh và nén ảnh JPEG2000 (Trang 75)

3.3 Kiến trúc cơ bản của tiêu chuẩn

3.3.5Mã hoá Entropy

3.3.5.1 Khối mã hoá Code blocks

Sau khi khi lượng t hoá áử , c c băng con được chia thành các khối ch ữ

nh khôật ng chồng lên nhau với thước ủa ột c m kh bối ằng kích thước ủa c k h íc thước băng con LH, HL, HH ở m phâức n giải à 1 l (128x128). Ba khối chữ

Image Components Tiles Subbands

Precincts

Code-

blocks Packets

(a)

(b)

Hình 3.18: a. Sơ đồ mô tả từ ảnh quá trình chia từ ảnh đến code-block b. Cách chia một tile thành phần thành Code-block và Precinct

nh ật (mỗi chữ nh ật được tao ra từ ỗi ă m b ng con tại cùng m một ức) kết ợp h l ại

t ành m vùng phâạo th ột n chia g hay cònói g là ọi Precinct. Mỗi Precinct lại được chia thành các khối chữ nhật không chồng lên nhau gọi là kh mã ối hoá (code-block), kích thước mỗi kh code-ối block này là 64x64 hay nh h n ỏ ơ

nhưng không được nh quá ỏ 32x32. Như ậy v , mỗi Precinct (128x128) được

chia thành 12 khối code-block kích thước 64x64.

V m bới ỗi ăng con, c c á code-block được qu ét theo thứ ự t . C c khá ối mã hoá n sau ày đó được mã hoá ành m m phth ột ặt ẳng bit tại thời đ ểi m bắt đầu ừ t m phặt ẳng bit trọng s nh ố ất MSB với các thành ph kháần c không đến m ặt

phẳngbit trọng ố thấp s nh ấtLSB. Mỗicode block được mã hoá hoàn toàn độc

l mà khôập ng tham chiếu ới t các khối trong cùng ho khôặc ng cùng m b ng ột ă

con. Mã hoá kh êối th m vào độc ập l n ày đưa ra c c lá ợi ích quan trọng: truy nh khôập ng gian ngẫu nhiên tới ộ n i dung ảnh, t c á động h hình ọc, tính toán song song, hồi ph lục ỗi (error r ilience) trong khi mes ã hoá và giải mã hoá…Các mặt phẳng bit ri ng biê ệt ủa ẫu c m trong một kh mã hoá ối được mã hoá v ới ba m cho qua code pass. Mã ỗi Code- pass thu thập ôth ng tin ngữ ảnh c và các trạng thái n trong bê được tao ra nén dòng bit. Với các thuật toán cho phép ta giải n énđộc ập l các mức khác nhau của ữ d liệu code-pas àys n .

H 3.19ình : Cách qué êt tr n mỗi ặt m phẳngbit của ỗi m code block

M m phỗi ặt ẳng bit của kh mã hoá ối được qu nh h êét ư ình tr n, bắt đầu ừ t v í ị tr đầu bên trái, 4 bít c c th nh ủa ột ứ ất được qu sau ét đó tiếp đến 4 bit của

c ột thứ hai đến khi rđộ ộng ủa c code block được quét. Sau đó, 4 bit thứ hai c c ủa ột thứ nh và c ất ứ tiếp ục t qu ét đến khi quét đến code block thấp nh ất

trong b ng con.ă M ỗibit hệ ố s trong mặt phẳng bit được mã hoá m chỉ ộttrong ba loại mã hoá sau: Significance propagation, Magnitude refinement, Clean up. M m ỗi ột loại mã ng cữ ảnh ẽ được ạo s t ra cung cấp cho mã hoá Arithmetic.

 Significance Propagation: mẫu được mã á là ho “0” là có nh m ít ất ột

m láng giẫu ềng là “1”

 Magnitude refinement: bit của ệ ố h s n là ày “1” trong mặt phẳng bit trước, các bit còn l s ại ẽ được mã hoá mã nở ày.

 Clean-up: là các mẫu chưa đựoc mã hoá bởi Significance propagation và Magnitude refinement.

Sau đây chúng ta s i sâẽ đ u vào ph mã hoá ng cần ữ ảnh và Arithmetic

3.3.5.2 Mã á ho theo ngữ ảnh c

H 3.20ình : mã hoá Entropy khối

Mỗi code-block được mã hoá m cáột ch độc ập l qua bộ mã hoá Entropy m phặt ẳng bit. Dòng bit đầu ra của ộ b mã hoá Entropy có đặc t nhúngính , dòng bit c thó ể cặt c t m iụt ại ột đ ểm bất ỳ k mà v có ẫn thể giải m . Trong ã JPEG2000, dòng bit đầu ra của ộ b mã hoá Entropy kh ng ch bao gô ỉ ồm dòng bit nhúng mà cò ó n c đường cong tỉ ệ l m -éo (R D). Đường cong này o đ độ m éo c kh mã hoá t m t x ủa ối ại ột ốc độ ác định. Trong khi mã hoá, bộ mã hoá entropy cũn đg o c t mã hoá và méo. T l mã hoá nhả ốc độ ỉ ệ ận được ông qua th

chi d dòng ều ài bit mã hoá t m iại ột đ ểm xác định ví d t iụ ại đ ểm cuối ủa ỗi c m (adsbygoogle = window.adsbygoogle || []).push({});

mặt phẳng mã hoá. Méo mã hoá thu được bằng cách o méo giđ ữa h s g và ệ ố ốc

h s khôệ ố i phục ại t cùng m i m ột đ ể

Hình 3.21 Bi di cá : ểu ễn c hệ ố s w dưới ạng d c s nh phân ác ố ị

Chúng ta sẽ ượng tử l hoá các hệ ố s wRm,nR biểu diễn úng dch ưới ạng d các số nh ị

phân: ±b1b2...bn. Ở đâ y bR1R là bit trọng ố ớn s l nhất (MSB) và bRnR là bit trọng ố s thấp nh ất LSB và ±biểu diễn ấu ủa ệ ố d c h s . Nh m tó ất cả các bit trong cùng m m ột ức trọng ố s nh ưnhau thành m m phột ặt ẳng bit. Nhóm t c ất ả

các bit bR1R c cáủa c hệ ố s ành m phth ặt ẳng bit trọng ố ớn s l nh c ất ủacode block. Sau đó làm tương t ta lự ần lượt tạođược các mặt phẳng bit trọng ố s giảm dần, người ta nói dòng bit nén đầu ra này có đặc tính nhúng nh tư ạo dòng ra bit tốc độ thấp h n thu ơ được b i viở ệc cắt cá òng c d bit t cao h n là kốc độ ơ ết qu bên ả ở

gi mã tải ừng ph cáần c hệ ố s .

Ma tr bit biận ểu di cáễn c hệ ố s lượng ử t hoá bao gồm ả c các bit và d ấu

c h sủa ệ ố. Ngoài ra, c c bit trong ma trá ận bit có x ác suất ôth ng kê kh nhau. ác X ét bit bRMRtrong hệ ố được s x mã hoá. Nếu các bit trọng ố ớn s l trong hệ ố s x n là ày 0, ta nói h s ệ ố x này không quan trọng - insignificant (bởi vì n dòng ếu

bit b gi h t iị ới ạn ại đ ểm này hoặc trước đó thì h s ệ ố x sau khi kh i phô ục lại có giá btrị ằng 0) và bit bRMR được mã hoá trong chế độ nh dận ạng bit trọng ố s (significance identification). Ngược lại n u h s nế ệ ố ày là trọng ố s , bit bRMR s ẽ được mã hoá trong chế độ refinement. Chúng ta ph n biâ ệt gi các bit nhữa ận

dạng trọng ố s và refinement bởi v bit nhì ận ạng d trọng ố s có xác su ất bit “0” cao và bit refinement thường phân bố các bit 0 v bit 1à bằng nhau. Dấu của h ệ

s s ố ẽ được mã hoá sau khi hệ ố s thay đổi significant hinh 3.22 í d nh , v ụ ư bit khác không đầu ên ti trong một h s ệ ố được mã hoá. Ma trậnbit hình trên 3.21, các bit significance identification và refinement biểu diễn các sắc áth i kh c á nhau nhu hình sau 3.23:

Hình 3.23: ma tr bit ma hoận á dính kèm

Các bit significant ident icantion, r inement vif ef à d có x ấu ác suất ông th kê không bằng nhau. Ví d n m h s lụ, ếu ột ệ ố ượng ử t xRi,jR có biên l ì cáđộ ớn th c h s láng giệ ố ếng có thể ũn c g có biên lđộ ớn. Vậy nên nếu m h s l x ột ệ ố ớn ác

thường thường là nguyên nhân d ẫn đến m c h s wột ụm ệ ố avelet láng giềng

cũng ớn l . Để t ính toán s kháự c nhau này, chúng ta sẽ mã hoá entropy c c bit á significant identification, c c bit r inement vá ef à d v ng ấu ới ữ cảnh nhúng, mỗi

ng cữ ảnh là m s nh ột ố ận được ừ t mã hoá các hệ ố s láng giềng ủa ệ ố đang c h s x . M ng cét ỗi ữ ảnh ại l phân ra c c loá ại mã hoá g kháốc c nhau gọi là Primitive. K ỹ thuật n ày được ọi g là mã hoá Entr py thíco h ứng ngữ cảnh chỉ ra trên hình 3.24.

Hình 3.24: các bit mã hoá và ng cữ ảnh. Ngữ ảnh c được tạo tra c ôừ ác th ng tin nh ận được các bit mã hoá.

Vì ng cữ ảnh xác định ừ t ôth ng tin mã hoá ó có nh , n thể ận được ở b i mã hoá và gi mã ải theo cùng m quột y tắc để ạo t ra ngữ ảnh c . C c bit trong cá ùng ng ữ

cảnh có thuộc tính thống kê tương tự nhau theo b mã hoá đó ộ entropy c thó ể đo được phân ph xác suối ất trong m ng cỗi ữ ảnh và hiệu qu n cáả én c bit.

Hình 3.25: Các h s láng giệ ố ềng ủa c bit đang x ét

 X ácđịnh ng cữ ảnhcho bit thuộc mã Significance Propagation v Cleanà -up Bảng 3.3: Ngữ ảnh c cho mã hoá nh dận ạngtrọng ố s

Băng con LH (t ng tươ ự

cho LL) ( chỉ ố s cao d ) ọc

Băng HL (high-pass ngang)

Băng HH (High-pass chéo)

h v d cont t ex h v d cont t ex d h+v cont t ex

2 x x 9 x 2 x 9 ≥3 x 9 1 ≥1 x 8 ≥1 1 x 8 2 ≥1 8 1 0 ≥1 7 0 1 ≥1 7 2 0 7 1 0 0 6 0 1 0 6 1 ≥2 6 0 2 x 5 2 0 x 5 1 1 5 0 1 x 4 1 0 x 4 1 0 4 0 0 ≥2 3 0 0 ≥2 3 0 ≥2 3 0 0 1 2 0 0 1 2 0 1 2 0 0 0 1 0 0 0 1 0 0 1

Đầu êti n, chúng bàn đến ng cữ ảnh cho mã hoá significat identification nó

đượcthống kê theo bảng 1. Ngữ ảnh c được x ác địnhtheo cách sau: Bước 1: Tập ợp h cá áng gic l ềng (adsbygoogle = window.adsbygoogle || []).push({});

Cho mỗi bit c h s , sủa ệ ố ố lượng các sign icant dif ọc ngang và chéo được đo bằngh, v v d à như hình 3.25

Bước 2 : Bảng tra cứu

Theo chiều ủ c a băng con, hệ ố s x ác định (LH,HL, HH) ngữ ảnh ủa c c bit mã hoá được chỉ ra ở 1 trong 3 phần bảng 3.3. Tổng của 9 ph n loâ ại ng cữ ảnh

dùng mã significance identification. Quá trình bảng tra cứu giảm ố ượng s l ng cữ ảnh và l àm cho xác suất biểu hiện trong mỗi ng cữ ảnh có thu được

 X ácđịnh ng cữ ảnhcho bit dấu.

Để x ác định ng cữ ảnh cho mã hoá dấu, chúng ta tính đếm dấu theo chi ều ngang h và đếm ấu d theo chi d ều ọc v. Tổng ấu d có giá -trị 1 nếu ả c hai h s chi dệ ố ều ọc và ngang mang dấu âm hoặc m h sột ệ ố mang ý ngh âm và ĩa

h s không ệ ố kia quan trọng. Có giá trị+1 nếu ả c hai hệ ố ọc s d va ngang mang quan trọng dương hoặc m h s mang h s dột ệ ố ệ ố ương và h s l là không ệ ố ại

quan trọng. Giá c ttrị ủa ổng ấu d là 0 nếu c ả hai dọc và ngang kh ng quan ô trọng hoặc m h s â và m h s dột ệ ố m ột ệ ố ương.

V t ng d d và ới ổ ấu ọc ngang h v v và à dấu, mã hoá d ng cấu ữ ảnh có thể được

t ính theo bảng 3.4

Bảng 3.4: Ngữ ảnh c và d ấu đợi cho mã hoá d ấu

tổng d ấu h -1 -1 -1 0 0 0 1 1 1 v -1 0 -1 -1 0 1 -1 0 1 Expected sign - - - - + + + + + Cont t ex 17 16 15 14 13 14 15 16 17 Ngữ ảnh ủa c c bit mã hoá refinement được tính theo bảng 3.5

 Bảng 3.5: Ngữ ảnh c cho bit Magnitude Refinement Cont t ex Miêu tả

10 Bit refinement đang xét là bit đầu ên ti sau khi nhận ạng ọng ố d tr s và không có h s ệ ốtrọng ố s n ào trong 8 hệ ố s láng giềng

11 Bit refinement đang xét là bit đầu ên sau khi nhti ận dạngtrọng ố s và có nh m h s ít ất ột ệ ố trọng ố s trong 8 hệ ố s láng giềng

12 Bit refinement đang xét là nh là ít ất đứng thứ 2 sau nhận dạng

quan trọng

Loại ng cữ ảnh S ố RLC 0 ZC (Zero coding) 1-> 9 MR 10 -> 12 SC 13->17 UN ORMIF 18

- Zero Coding: dùng mã hoá để Significance Propagation v Cleanà -up - RLC (Run Length Coding): nh– ằm làm giảm ố ượng s l ký hi ệu cần mã

hoá i. Đ ều kiện để được mã RLC là

+ 4 mẫu êli n tiếp ph t c ải ất ả phải không trọng ố s insignificance + 8 mẫu làng giềng đều ph là khôải ng trọng ố s ”

+ Các mẫu ph cùng n ải ằmtrong một kh mã hoáối . - MR (Magnitude Refinement Coding : d) ùng mã hoá để MR

- SC (Sign Coding): mã hoá n dùng mã hoá d c h s ày để ấu ủa ệ ố ngay sau khi hệ ố s tìm xácđịnhđược bit “1” đầu ê ti n.

Ngo ài 4 loại mã g ên, nh bi ốc tr để ận ết được các bit c tró ọng ố ớn s l nh là 1 ất

người ta sử ụng d mã Uniform có ng cữ ảnh là 18

00 Bit có trọng ố s lớn nhất c h s ủa ệ ố đầu êti n trong 4 hệ ố được s quét là “1”

01 Bit có trọng ố s lớn nhất c h s ủa ệ ố thứ hai trong 4 h s ệ ố được qu là ét “1”

10 Bit có trọng ố s lớn nhất c h s ủa ệ ốthứ 3 trong 4 h s ệ ố được qu là “1” ét 11 Bit có trọng ố s lớn nhất c h s ủa ệ ốthứ 4 trong 4 h s ệ ố được qu là “1” ét

 Cách thức phân o m m phđ ạn ột ặt ẳng bit thành các các m phặt ẳngbit con nh ưsau: Mã hoá Entropy trong JPEG2000 là mã hoá m phặt ẳngma trận

bit từ mặt phẳng bit quan trọng nhất tới mặt phẳngbit kém quan trọng (adsbygoogle = window.adsbygoogle || []).push({});

nh v m m phất ới ỗi ặt ẳng, ma trậnbit được chia thành 3 mặt phẳngbit con là : Significance Propagation (SP), Magnitude Refinement (MR) và Clean-up (CU). Chúng được minh hoạ các hệ ố s kh mã hoá ối trong ví dụ

minh hoạ h 3.26 ình :

Bước 1: Mặt phẳngbit quan trọng nhất: (mặt phẳng bit con CU c bủa R1R)

Đầu êti n, mặt phẳng bit quan trọng nhất được ki ểm tra và mã hoá. Vì là đầu

tiên, tất ả c các hệ s là khôố ng quan trọng, tất c cáả c bit trong mặt phẳng bit MSB thuộc mặt phẳng con CU. Bất c ứ khi nào m ột bit “1” tìm được, bit đó được ho làn trả ại h s khệ ố ác không, d cấu ủa hệ ố ẽ s s được mã hoá sau. Với

thông tin của bit mã hoá và d c h s ấu ủa ệ ố quan trọng, chúng ta có thể đ o án

được m ột dải không xác định ủa ỗi ệ ố c m h s . Gi trá khôị i phục ủa ỗi ệ ố c m h s cũng có thểthiết ập l ví dụ nh t giá gi c dư ại trị ữa ủa ải không xác định. Kết qu ả

ma tr bit lận ấy m ẫu sau khi mã hoá m phặt ẳng bit quan trọng nh ất được chỉ

trên hình 3.26 .Cha úng ta có th liể ệt kê giá khôtrị i phục đang xét và d ải

không xác định ươ t ng úng v c giá và dới ột trị ải. Bước mã hoá tiếp theo, dải

không xác định được co lại và mang một á bigi trị ểu diễn ốt ơ t h n cho mỗi h ệ

s . ố

Bước 2: Mặt phẳngbit con PS của bR2

Sau khi tất cả các bit trong mặt phẳng bit quan trọng nh ất được mã hoá, tiếp đến là mã hoá mặt phẳng bit con SP của mặt phẳng bit quan trọng ứ th 2 (bR2R). M phặt ẳng bit con SP bao gồm c ác bit c c há ệ ố s không quan trọng nhưng c ító nh m h ất ột ệ trọng láng giềng. Mã hoá ma trận bit mẫu ươ t ng ứng được chỉ ra

Một phần của tài liệu Bài toán về xử lý ảnh và nén ảnh JPEG2000 (Trang 75)