Tải bản đầy đủ (.pdf) (79 trang)

Liên kết mã nguồn và mã kênh : Luận văn ThS. Kỹ thuật điện tử - viễn thông: 60 52 70

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 (2.19 MB, 79 trang )

----------

NGUYỄN THỊ MAI

L Ê KẾ MÃ

Ồ V MÃ KÊ

LUẬ VĂ



N TỬ - VIỄ

Hà Nội – 2012


NGUYỄN THỊ MAI

L Ê KẾ MÃ

Ồ V MÃ KÊ

Ngành: Công nghệ Điện tử - Viễn thông
Chuyên ngành: Kỹ thuật điện tử
Mã số: 60 52 70

LUẬ VĂ




N TỬ-VIỄ

ỚNG DẪN KHOA H C: PGS.TS.Trịnh nh Vũ

Hà Nội – 2012


MỤC LỤC
Trang phụ bìa
Lời cam đoan
Mục lục
Danh mục các ký hiệu và chữ viết tắt
Danh mục các bảng
Danh mục các hình vẽ, đồ thị
MỞ ĐẦU
Chương 1: TỔNG QUAN VỀ MÃ KếT HỢP NGUỒN – KÊNH
1.1

Quan điểm mã tách biệt theo định lý Shannon ............................
1.1.1. Mô hình mã tách biệt ....................................................
1.1.2. Mã nguồn ......................................................................

1
1
1

1.1.2.1. Khái niệm Entropi .............................................

1


1.1.2.1.1. Đối với nguồn không nhớ rời rạc .......

2

1.1.2.2. Định lý mã nguồn Shanon .....................

2

1.1.3 Mã kênh .........................................................................

3

1.1.3.1 Thông tin tương hỗ ............................................

3

1.1.3.2. Định lý Mã kênh ..............................................

3

1.2. Yêu cầu phát triển mã kết hợp nguồn kênh................................

3

1.3. Một số kỹ thuật mã kết hợp .......................................................
1.3.1. Ứng dụng UEP để truyền hình ảnh sử dụng mã kênh Turbo

4
4


1.3.2. Phân bố tốc độ tối ưu mã nguồn kênh...............................

5

1.3.3. Mã nguồn-kênh liên kết ràng buộc ...................................

6

1.3.4. Kỹ thuật dựa trên dư thừa nguồn ......................................

6

1.3.5.Giải mã nguồn kênh được nguồn trợ giúp .........................

7

1.3.6. Giải mã liên kết nguồn kênh của nguồn mã VLC ...........

7


Kết luận ..............................................................................................

7

Chương 2: MÃ NGUỒN NÉN ẢNH JPEG

2.1 Cấu trúc file ảnh ..............................................................................

9


2.1.2.1. Phần header .........................................................................

9

2.1.2.2. Bảng màu.............................................................................

9

2.1.2.3. Dữ liệu ................................................................................

9

2.2 Kỹ thuật nén JPEG ..........................................................................

10

2.2.1. Giới thiệu chung về nén ảnh số .............................................

10

2.2.2. Phân loại các phương pháp nén ảnh/video .............................

12

2.2.2.1. Nén ảnh có tổn hao và nén ảnh không tổn hao .........

12

2.2.2.2. Mã hóa dựa trên phép biến đổi và mã hóa tiên nghiệm .


13

2.2.2.3. Mã hóa băng con .........................................................

13

2.2.2.4. Tiêu chuẩn đánh giá chất lượng mã hóa ảnh................

14

2.2.3. Mã hóa dựa trên phép biến đổi DCT ........................................

14

2.2.3.1. Chuyển đổi không gian màu

15

2.2.3.2. Biến đổi Cosin rời rạc hai chiều.................................

16

2.2.4. Lượng tử ..................................................................................

17

2.2.5. Mã hóa Entropy

19


...................... .........................................

2.2.5.1. Mã hóaHuffman .................. .......................................

19

2.2.5.1.1. Mã Huffman cơ sở (basic Huffman encoding)

19

2.2.5.1.2. Mã hóa Huffman động

22

2.3 Phân loại tham số DC và AC ..........................................................

22

2.3.1. Tham số DC ..........................................................................

22


2.3.2. Tham số AC .................................... .........................................
Kết luận

................................................................................

23

23

Chương 3: MÃ KÊNH TURBO ĐA TốC
3.1 Mã chập ...........................................................................................

24

3.1.1. Mã chập ( Covolotional code) .................................................

24

3.1.2. Mã hóa mã chập ............................. .........................................

24

3.1.3.Các phương pháp phân tích hoạt động của mạch mã hoá mã chập

26

3.1.3.1.Phương pháp bảng ............... .........................................

26

3.1.3.2. Phương pháp đa thức kết nối ........................................

27

3.1.3.3. Phương pháp sơ đồ trạng thái ......................................

28


3.1.3.4.Phương pháp sơ đồ cây ................................................

30

3.1.3.5. Phương pháp sơ đồ lưới .... .........................................

31

3.2 Sơ đồ Mã Turbo đa tốc theo kiểu đục lỗ .........................................

32

3.2.1 Mã hóa Turbo ................................... .........................................

32

3.2.2. Giải mã turbo ................................... .........................................

35

3.2.2.1 Tổng quan về các thuật toán giải mã ..............................

35

3.2.2.2 Mô hình hệ thống

.........................................

37


3.2.2.3 Thuật toán MAP ................... .........................................

38

3.2.2.4 Thuật toán MAX-Log-MAP

.........................................

45

3.2.2.5 Thuật toán Log-MAP ............. .........................................

49


3.2.3. Sơ đồ khối mã Turbo theo kiểu đục lỗ .....................................

50

Chương 4: LIÊN KẾT MÃ NGUỒN VÀ MÃ KÊNH
4.1 Kịch bản mô phỏng, tiêu chuẩn đánh giá ........................................

52

4.2 Kết quả mô phỏng ...........................................................................

52

4.2.1. Kết quả mô phỏng truyền ảnh JPEG ......................................


53

4.2.2. Kết quả mô phỏng truyền ảnh JPEG qua kênh với tốc độ khác nhau
................................................................................................................
52
4.2.3. Kết quả mô phỏng truyền ảnh JPEG qua kênh sử dụng kỹ thuật EEP
................................................................................................................
54
4.2.4. Kết quả mô phỏng liên kết mã nguồn và mã kênh (truyền ảnh JPEG qua
kênh sử dụng kỹ thuật UEP) .................................................................
57
4.3 Nhận xét kết quả .........................................................................

57

Kết luận .................................................................................................

58


DANH MỤC CÁC KÝ HIỆU THUẬT NGỮ VÀ CHỮ VIẾT TẮT
2-D

two-dimensional

Hai chiều

3G


third generation

Thế hệ thứ 3

4G

fourth generation

Thế hệ thứ 4

APP

posteriori probability

Xác suất hậu nghiệm

ARQ

automatic repeat request

Gửi yêu cầu tự động

AWGN aditive white Gaussian noise

Nhiễu Gauss trắng cộng tính

BER

it error rate


Tỷ lệ bít lỗi

BPSK

binary phase shift keying

Khóa dịch pha nhị phân

CSI

channel state information

Thông tin trạng thái kênh

DCT

iscrete cosine transform

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

DFT

discrete Fourier transform

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

DPCM

differential pulse code modulation


Điều chế xung mã vi sai

EEP

equal error protection

Sửa lỗi đồng đều

IDCT

inverse discrete cosine transform

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

ISCD

iterative source-channel decoding

Lặp lại giải nguồn- kênh

MAP

maximum a posteriori

Xác suất cực đại

ML

maximum-likelihood


Xác suất có thể

JPEG

Joint Photographic Experts Group

Kết nối nhóm hình ảnh

JSCC

joint source-channel coding

Liên kết mã nguồn - kênh

JSCD

joint source-channel decoding

Giải mã liên kết ngồn - kênh

PSNR

peak signal-to-noise ratio

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

RSC

recursive systematic convolutional


Mã chập hệ thống đệ quy

SAI
nguồn

source a posteriori information

Thông tin tiên nghiệm của

SNR

signal-to-noise ratio

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


VLC

variable-length code (coding)

Mã chiều dài thay đổi


DANH MỤC CÁC BẢNG

Bảng 2.1. Bảng mã Huffman cho hệ số DC và AC ………………. …. 20
Bảng 3.1: Bảng mã hóa ………………………………………………….29
Bảng 3.2: Các đa thức sinh ……………………………………………...31



DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1: Sơ đồ khối hệ thống thông tin truyền thống……… …………………….1
Hình 1.2: Sơ đồ khối liên kết mã nguồn và mã kênh ……………………………5
Hình 2.1: Sơ đồ khối của quá trình mã hóa JPE ………………………………..12
Hình 2.2: Sơ đồ khối của quá trình giải mã JPEG………… …………………...12
Hình 2.3: Sơ đồ khối của hệ thống chuyển đổi mã ……………… ………………15
Hình 2.4: Mô hình quét Zig-Zag ……

………………………………………..19

Hình 2.5: Ví dụ xây dựng từ mã Huffman ………… …………………………...22
Hình 2.6: Sơ đồ khối DPC............................................................... ……………...24
Hình 3.1a: Mã xoắn hệ thống X(2, 1, 3). ………………………………………...27
Hình 3.1b: Mã xoắn không hệ thống X(2, 1, 2) ………………… ……………… 27
Hình 3.1c: Mạch điện mã hoá mã xoắn Vaayner Esse ………………………….. 28
Hình 3.2: Sơ đồ trạng thái ………………………………………………………...32
Hình 3.3: Sơ đồ cây ……………………………………………………………… 34
Hình 3.4: Bộ mã hóa turbo .....................................................................................35
Hình 3.5: Bộ mã hóa turbo tốc độ 1/3 dựa trên RSC(2,1,4) ..................................36
Hình 3.6: Bộ hoán vị …………………………………………..............................38
Hình 3.7: Bộ ánh xạ hoán vị ...................................................................................38
Hình 3.8 Các thuật toán giải mã dựa trên Trellis ...................................................39
Hình 3.9: Mô hình hệ thống ........................................................... ...................... 40
Hình 3.10: Bộ mã hóa RSC tốc độ ½ ........................................... .........................42
Hình 3.11: Biểu đồ trạng thái truyền đối với bộ mã RSC(2,1,2) ............................43
Hình 3.12: Sơ đồ lưới cho mã chập RSC(2,1,2) ....................................................44
Hình 3.13: Mã hóa turbo và đục lỗ. ............................................... ........................51
Hình 4.1: Truyền ảnh JPEG …………………………………................................53
Hình 4.2: Truyền ảnh JPEG qua kênh với tốc độ khác nhau...................................54
Hình 4.3: Truyền ảnh JPEG qua kênh sử dụng kỹ thuật EEP .................................55

Hình 4.4. Liên kết mã nguồn và mã kênh ...............................................................56


MỞ ĐẦU
Trong những thập kỷ qua truyền thông tốc độ có nhu cầu ngày càng cao. Với
sự tích hợp của công nghệ không dây và các dịch vụ đa phương tiện truyền tải
hình ảnh chất lượng cao và video đã trở thành một trong những mục tiêu chính
cho các thế hệ (3G và 4G) của hệ thống mạng điện thoại di động. Định lý tách
Shannon cho thấy: trong điều kiện lý tưởng, mã nguồn và mã hóa kênh có thể
được xử lý riêng mà không bị mất bất kỳ hiệu suất cho toàn bộ hệ thống. Tuy
nhiên, định lý này chỉ đúng trong điều kiện lý tưởng: mã nguồn có kích thước
vô hạn, mã kênh dài vô hạn và không hạn chế thời gian trễ.
Hệ thống thông tin thực tế không đáp ứng các yêu cầu như vậy. Vì vậy, liên
kết mã nguồn và mã kênh có thể làm giảm méo tín hiệu cũng như hạn chế thời
gian trễ. Có nhiều kỹ thuật sử dụng cho liên kết mã nguồn và mã kênh. Chống
lỗi không đồng đều (UEP) sử dụng mã kênh Turbo là một trong những kỹ thuật
được sử dụng trong liên kết mã nguồn – mã kênh.
Luận văn rình bày tổng quan về kết hợp mã nguồn – kênh, kỹ thuật nén ảnh
JPEG và mã kênh Turbo. Kết quả mô phỏng cho thấy rằng kỹ thuật chống lỗi
không đồng đều (UEP) cho thấy chất lượng ảnh tái tạo ở bên thu tốt hơn khi
truyền ảnh sử dụng kỹ thuật chống lỗi đồng đều (EEP).
Với những lý do trên tôi đã chọn đề tài cho luận văn thạc sĩ là: “liên kết mã
nguồn và mã kênh.”
Ngoài phần mở đầu và kết luận, luận văn gồm có ba chương với nội dung như
sau:
Chương 1: Tổng quan về mã kết hợp nguồn – kênh
Chương 2: Mã nguồn nén ảnh JPEG
Chương 3: Mã kênh Turbo đa tốc
Chương 4: Kết quả mô phỏng và thảo luận



1

Chương 1: Tổng quan về mã kết hợp nguồn – kênh
1.1. Quan điểm mã tách biệt theo định lý Shannon
1.1.1. Mô hình mã tách biệt
Lý thuyết mã hóa Shannon cho rằng: có thể xây dựng một hệ thống
thông tin tối ưu với mã nguồn và mã kênh riêng biệt. Sơ đồ khối của một
hệ thống truyền tin truyền thống:

Thông tin
nguồn


nguồn

Source

Encoder

Mã kênh

Điều chế

Thiết
kế
tách

Kênh
nhiễu

Channel

Thông tin
nhân

Giải điều
chế nguồn

Giải điều
chế kênh

Giải điều chế

Decoder

Destlation

Mã hóa kênh

Mã hóa nguôn

Thiết kế kết hợp

Hình 1.1: Sơ đồ khối hệ thống thông tin truyền
thống.


2

Hệ thống trên bao gồm các khối mã hóa nguồn và mã hóa kênh. Mã hóa

nguồn gồm: bộ mã hóa và giải mã (bên thu). Tương tự mã hóa kênh gồm:
bộ mã hóa và giải mã kênh, bộ điều chế và giải điều chế. Thiết kế hệ
thông tin tách biệt mã nguồn và mã kênh được chứng minh bởi định lý
tách Shannon trong nhiều thập kỷ qua.
Sau đây là tóm tắt cơ sở lý thuyết hoạt động của các khối này.

1.1.2. Mã nguồn
1.1.2.1. Khái niệm Entropi
1.1.2.1.1. Đối với nguồn không nhớ rời rạc
Entropi H được định nghĩa là giá trị trung bình thống kê của lượng tin, đó
là lượng tin trung bình chứa trong một ký tự bất kỳ của nguồn tin.
Xét nguồn tin X sinh ra N ký tự độc lập thống kê
.
Nguồn tin này được gọi là nguồn tin rời rạc không nhớ. Entropi của
nguồn tin này là:
H ( X )

 ( P ( x) log
nx

x

1
)
P x ( x)

(1.1)

  E[log P x ( X )]


Px(x) là xác suất chọn ký tự thứ x
Với E[  ( x)] là kỳ vọng của hàm f(x)
Lý thuyết thông tin đã chứng minh giá trị lớn nhất của Entropy là: Hmax=
log2 X, đạt được khi độc lập và đồng xác suất.
1.1.2.1.2. Đối với nguồn có nhớ rời rạc
Đối với các nguồn tin, việc sinh ra ký tự sau không độc lập thống kê với
các ký tự sinh ra trước đó (gọi là nguồn có nhớ) thì công thức entropy
trên không đủ tổng quát để tính được entropy chính xác.
Trong trường hợp này phải xét đến Entropy có điều kiện. Ví dụ với
nguồn có nhớ một ký tự, nghĩa là ký tự sau được chọn phụ thuộc vào một
ký tự trước đó. Entropi được tính như sau:


3

H(X | Y) 



xX , yY

  E[log

P

X |Y

( x, y ) log

2


1
Pxy ( X | Y )

(1.2)

( X | Y )]

Trong đó: Pxy(x,y) xác suất nguồn chọn X và Y, Px/y(x,y) là xác suất nguồn
chọn X nếu trươc đó đã chọn Y có điều kiện của X theo Y.

1.1.2.2. Định lý mã nguồn Shanon
Cho X là tập hợp các ký tự từ nguồn rời rạc không nhớ, với entropi H(x)
hữu hạn. Một ký tự J từ nguồn được mã hóa thành từ mã có chiều dài N .
Cho
xác suất lỗi Pe của một khối giải mã có thể nhỏ tùy ý nếu:
R

N
 H (x)  
J

(1.3)

Nếu J đủ lớn. Ngược lại:
R  H (X )  

(1.4)

Khi đó Pe tiến tới 1 khi J đủ lớn

Định lý mã nguồn chỉ ra rằng: số bít trung bình để mã hóa một ký tự từ
nguồn rời rạc không nhớ ít nhất phải bằng entropi của nguồn thì tín hiệu ở
phía thu không bị biến dạng.

1.1.3 Mã kênh
1.1.3.1 Thông tin tương hỗ
Thông tin tương hỗ là lượng bất định ở lối vào, được phân giải bởi quan
sát ở lối ra. Thông tin tương hỗ
của hai biến ngẫu nhiên X và Y
là:
I ( X ;Y )  H ( X )  H ( X | Y )
 H (Y )  H (Y | X )

(1.5)

1.1.3.2. Định lý Mã kênh
Cho 1 kênh không nhớ rời rạc và không có thông tin phản hồi có
dung năng kênh C.


4

Với
,tỷ lệ thông tin Rlỗi xuất hiện lớn nhất sẽ nhỏ hơn  .
Ngược lại với mã có tỷ lệ R> C thì tồn tại 1
lớn hơn rất nhiều 

mà xác suất của lỗi


Định lý mã kênh cho thấy chỉ có thể truyền tin cậy nếu tốc độ truyền
nhỏ hơn dung năng của kênh.

1.2. Yêu cầu phát triển mã kết hợp nguồn kênh
Hạn chế của kỹ thuật mã tách biệt là chỉ đúng với khối mã dài và trễ
không bị hạn chế. Điều này không đúng với thực tế, nhất là đối với các
dịch vụ thời gian thực. Do đó nếu thiết kế kết hợp và phân phát tài
nguyên hệ thống tối ưu cho các phần mã nguồn, mã kênh đến tận điều chế
có thể cung cấp hiệu quả tốt hơn từ đầu đến cuối. Điều này mở ra một
lĩnh vực nghiên cứu mới là: mã và giải mã kết hợp nguồn-kênh (JSCC/D)
cho truyền tin vô tuyến được nghiên cứu và phát triển trong những năm
gần đây. Sơ đồ khối của kỹ thuật này có thể trình bày như sau:


5

SSI
Mã hóa
nguồn
Coding

Điều
khiển
JSCC
CSI

Mã hóa
kênh

Điều chế


Coding

CSI

CSI

Kênh
truyền

CSI

DRI
JSCD
Giải mã
nguồn

Điều khiển

Giải mã
kênh

Coding

SAI

Decoding

Giải điều
chế


Hình 1.2: Sơ đồ khối liên kết mã nguồn và mã kênh

Trong sơ đồ này, thông tin về mức độ quan trọng của những bit nguồn (SSI)
được truyền từ bộ mã hóa nguồn sang bộ mã hóa kênh, dựa vào thông tin này,
bộ mã kênh sẽ kích hoạt cấp độ mã kênh bảo vệ thích hợp (mà không làm đồng
đều như kỹ thuật mã tách biệt) cho các bít nguồn này. Tương tự thông tin tình
trạng kênh truyền (CSI) có thể được đưa ngược từ bộ mã hóa kênh hoặc bộ điều
chế về bộ mã hóa nguồn để kích hoạt tỷ lệ mã hóa nguồn cho phù hợp với điều
kiện kênh. (chẳng hạn không cần mã quá chi tiết khi tình trạng kênh không tốt).
Ở phía thu, thông tin tiên nghiệm của nguồn (SAI) cùng với thông tin về độ tin
cậy giải mã (DIR) được truyền giữa bộ giải mã nguồn và bộ giải mã kênh, để có
thể giải mã kênh điều khiển giải mã nguồn và lặp đi lặp lại giải mã nguồn kênh.


6

1.4. Một số kỹ thuật mã kết hợp
1.3.1. Ứng dụng UEP để truyền hình ảnh sử dụng mã kênh Turbo
UEP là kỹ thuật chống lỗi không đồng đều. Như đã nói ở trên, trong nhiều
ứng dụng nén đa phương tiện (mã nguồn), các bít đầu ra của bộ mã có tác động
khác nhau về chất lượng của nguồn tái tạo, một số chuỗi bít đóng góp nhiều hơn
cho độ trung thực của hình ảnh và nhạy cảm hơn với các lỗi bít, một số bít thì
ngược lại. Do đó một kỹ thuật trực quan là áp dụng chống lỗi mạnh mẽ hơn cho
các bít có tác động mạnh hơn tới chất lượng của tín hiệu. Khái niệm này tương
ứng với việc thay đổi mức bảo vệ của những bít này.
Thực hiện UEP với mã hóa nguồn thường liên quan đến phân vùng dữ liệu:
phân vùng một chuỗi bít mã hóa thành các nhóm bít với độ nhạy khác nhau. Với
mã hóa kênh, sử dụng mã sửa lỗi như mã RCPC và mã CRPT có thể cung cấp
mức độ chống lỗi khác nhau cho các nhóm bít nhạy cảm khác nhau. Các mã này

cung cấp tốc độ khác nhau thông qua kỹ thuật đục lỗ.
UEP là khái niệm đơn giản nhưng là kỹ thuật hiệu quả của JSCC. Các hệ số
DC và hệ số biến đổi cosin rời rạc của AC của hình ảnh mã hóa JPEG có tác
động khác nhau đến tái tạo hính ảnh, vì thế có thể áp dụng UEP để mã hóa hình
ảnh JPEG. Kỹ thuật UEP sử dụng mã hóa Turbo đa tốc với hai tỷ lệ mã khác
nhau cho thành phần AC và DC của ảnh JPEG.
1.3.2. Phân bố tốc độ tối ưu mã nguồn kênh
Đối với tốc độ truyền cố định, điều quan trọng là phân phối tốc độ cho mã
nguồn và mã kênh. Tốc độ mã nguồn cao, méo do nén nguồn sẽ ít còn tốc độ mã
kênh thấp cho khả năng hiệu chỉnh lỗi mạnh. Ưu điểm của phân phối tốc độ tối
ưu cải thiện toàn thể chất lượng tín hiệu mà không mở rộng băng tần. Thực tế
cho thấy nên phân tốc độ mã kênh cao khi SNR thấp, còn nên phân tốc độ mã
nguồn cao khi SNR cao. Tuy nhiên chiến lược phân tối ưu tùy thuộc các tham
số khác nhau: loại nén nguồn, loại mã kênh, mô hình kênh, SNR và độ rộng
băng.
Hochwald and Zeger thiết lập các giới hạn để tối ưu tốc độ của mã kênh để
giảm thiểu sự biến dạng trung bình của hệ thống truyền tin. Nghiên cứu này
được mở rộng để tìm được giới hạn trên và giới hạn dưới của tốc độ mã hóa
kênh cho kênh truyền có nhiễu Gaussian. Nghiên cứu cân bằng tốc độ mã nguồn
và mã kênh để truyền hình ảnh sử dụng nén mã nguồn VQ và mã kênh Turbo.
Ruf và Modestino trình bày phương pháp đánh giá tỷ lệ biến dạng khi kết hợp
mã hóa nguồn kênh sử dụng mã hóa hình ảnh Wavelet và mã hóa nhị phân


7

RCPC cho truyền tin trên kênh nhiễu và phát triển lý thuyết thông tin cho hệ
thống này.
Một lớp con của JSCC là phân phối tốc độ nguồn - kênh cho truyền ảnh lũy
tiến. Dòng bít cho tốc độ đích R1 có thể nhận được như là tiền tố của dòng bit

cho tốc độ đích R2.(R2>R1).
Sherwood đề nghị phương pháp mới cho truyền ảnh lũy tiến. Bằng cách đóng gói
mã CRC trong để phát hiện lỗi và mã ngoài RCPC để hiệu chỉnh lỗi nhằm bảo vệ
dòng bit nhúng mã SPIHT qua kênh ồn. Giải mã dựa trên dò tìm dây lưới. Nếu một
nhánh được chọn theo giải mã Viterbi không thỏa mãn kiểm tra CRC, bộ giải mã sẽ
chọn nhánh tiếp theo tiếp tục cho đến khi CRC thỏa mãn hoặc đạt một số nhánh
nhất định được xem xét.
Vấn đề phân phối tốc độ cho truyền ảnh lũy tiến dùng hệ thống tương tự như sau:
Các bít ra từ mã nguồn nhúng được đóng gói với độ dài L bit. Mỗi gói được bảo vệ
bằng mã kênh Cn để tạo nên gói kênh Kn bit. Ký hiệu Pn là xác suất có ít nhất 1 bit
lỗi trong gói thứ n của bộ giải mã. Gọi dn là méo còn lại sau khi giải mã thành công
n gói đầu tiên. Méo tổng cộng cho kênh không nhớ là:
D  d0

N 1

n

N

p   d p  (1  p )  d  (1  P)
1

n 1

n

n 1

i 1


i

N

(1.6)

i 1

Ở đó N là số gói truyền tổng cộng. Một chiến lược phân tốc độ tối ưu trong đó mô
tả số gói nguồn được truyền N và dãy mã kênh C1, C2,…,CN được phân cho mỗi
N
gói. Tối thiểu (1.6) với điều kiện n1  n  B ( B tổng cộng tốc độ bít được truyền) .
Hoặc là thay cho tối thiểu méo trung bình, một tiêu chuẩn gần tối ưu là tối thiểu
PSNR trung bình hay cực đại số trung bình các bit nguồn nhân được không lỗi.
Appadwedula đã trình bày kỹ thuật dựa trên gradient để tối thiểu méo trung bình
(1.6), tuy nhiên không cho lời giải chính xác cho tối ưu toàn thể. Chande đã giải bài
toán tối ưu dung lập trình động và sẽ phức tạp thời gian O(B2)…
Nhận xét rằng: Các bộ mã nguồn để truyền ảnh lũy tiến tạo nên một lớp cấp bậc
chất lượng lối ra. Một lớp mã RCPC dựa trên mã mẹ tốc độ thấp như nhau được
dùng để cung cấp tốc độ mã kênh khác nhau thông qua đục lỗ. Thêm nữa thực tế
chỉ một mã kênh được dùng, chúng ta có thể tổ hợp phương pháp giải mã lặp
nguồn-kênh và mã RCPC để bảo vệ truyền ảnh lũy tiến qua kênh ồn
1.3.3. Mã nguồn-kênh liên kết ràng buộc
Trước tiên mã nguồn được thiết kế tối ưu như kênh không ồn. Khi kênh
có ồn mã nguồn được tối ưu lại đối với điều kiện kênh đã cho: các bộ mã nguồn


8


nhúng như tập các phần trong cây phân cấp hay bộ mã JPEG-2000 dựa trên tính
chất nhúng cho phép người dùng mã vào khôi phục nguồn tăng dần từng bậc khi
kênh không ồn. Vì thế một bộ mã nguồn nhúng có thể được dùng để đạt được
việc truyền ảnh lũy tiến, nó cho phép bộ giải mã và khôi phục lại nguồn tại các
tốc độ khác nhau từ dòng bít cố định tốc độ giống nhau. Dẫu rằng tính chất
nhúng là mong muốn cho truyền ảnh lũy tiến, song nó làm cho dòng bit dễ bị
lỗi.
1.3.4. Kỹ thuật dựa trên dư thừa nguồn
Quan sát rằng không có mã nào loại bỏ hết dư thừa làm cơ sở phương
pháp này. Có 2 loại dư thừa: 1 là dư thừa do phân bố không đều các ký
hiệu nguồn mã, loại 2 là dư thừa do tương quan giữa các ký hiệu nguồn
mã. Kỹ thuật JSCC trong trường hợp này không cố gắng loại bỏ dư mà sử
dụng dư này như một dạng mã kênh ẩn mà không cần một bộ mã kênh
hiện.
Có 2 loại chiến lược giải mã trong điều kiện này. Một là cực đại xác suất
sau của dãy được truyền bằng cách ước lượng xác suất cực đại (MAP).
Phương pháp khác là cực tiểu MSE của dãy khôi phục. Đối với phương
pháp ước lượng xác suất cực đại sử dụng thuật toán Viterbi hoặc thuật toán
của chương trình động. Đối với phương pháp MSE, liên kết mã hóa nguồn
kênh được xem như mô hình Markov ẩn, giải mã MSE được xem như ước
lượng trung bình của mô hình MHH.
1.3.5.Giải mã nguồn kênh được nguồn trợ giúp
Với mã hóa nguồn, căn cứ vào đặc tính thống kê có thể tiên nghiệm được
thông tin bên phía thu. Nguồn mà có thể cung cấp thông tin tiên nghiệm này thu
được khi giải mã nguồn- kênh.
Mã Tubo cung cấp phương pháp hiệu quả thông qua thuật toán giải mã BCJR
để tích hợp nguồn mà có thể cung cấp thông tin tiên nghiệm. Hệ thống giải mã
Turbo dựa trên thay đổi thông tin bên ngoài để xử lý nguồn nhị phân không nhớ
với phân bố xác suất không đều. Một phương pháp kết hợp nguồn kênh sử dụng
mã hóa Turbo trên vòng Modulo M, với M là kích thước của bộ mã nguồn.

Thông tin tiên nghiệm dựa trên thống kê nguồn thu được từ lượng tử hóa
DPCM. Mối tương quan còn lại giữa các mã DPCM thu được thông qua lặp đi
lặp lại giải mã nguồn kênh.


9

Trong một số trường hợp, bộ giải mã kênh có thể được thông tin phản hồi về độ
tin cậy của giải mã từ bộ giải mã nguồn. Mặt khác, tín hiệu ra của bộ giải mã
kênh có thể cung cấp thông tin hữu ích cho bộ giải mã nguồn.
1.3.6. Giải mã liên kết nguồn kênh của nguồn mã VLC
Giải mã liên kết nguồn kênh của nguồn mã VLC là một kỹ thuật được phát
triển mạnh trong những năm gần đây. VLC được sử dụng phổ biến như mã
Entropy cho các chuẩn mã hóa ảnh và video, vì vậy giải mã liên kết nguồn kênh
của nguồn mã VLC là kỹ thuật được ứng dụng nhiều trong truyền thông hình ảnh
và video. Mã ảnh dùng mã độ dài thay đổi như mã có chiều dài thay đổi (VLC).
VLC được dùng ở tầng cuối bộ mã để loại bỏ dư thừa thống kê từ nguồn tương
quan. Mã VLC có hệ số nén cao, song ngược lại nó rất nhạy với ồn, thậm chí một
bit lỗi có thể làm cho các bit còn lại không dùng được, nếu như không có yếu tố
khác khôi phục lại đồng bộ trong bộ giải mã độ dài thay đổi.
Công việc đầu tiên của kỹ thuật này là xử lý dữ liệu mã hóa VLC là ước
lượng MAP trên dữ liệu mã hóa VLC. Ước lượng MAP dẫn tới kích thước của
bảng ký tự của trạng thái mắt lưới tăng theo thời gian mặc dù nó là hằng số với
mã FLC.
Lặp lại JSCD của mã Huffman và mã Turbo đã cho thấy kết quả truyền tín
hiệu tốt hơn so với giải mã tách biệt mã Huffman và mã Turbo.

Kết luận: Trong chương này nêu các khái niệm cơ bản của mã tách biệt và mã
kết hợp mã nguồn kênh và một số kỹ thuật của kết hợp cơ bản.



10

Chương 2: Mã nguồn nén ảnh JPEG

2.1 Cấu trúc file ảnh
Có nhiều định dạng file ảnh như: BPM, PCX, JPEG,…. Tất cả các định dạng file
ảnh này đều có cấu trúc chung. Cấu trúc chung của một file ảnh bao giờ cũng có ba
phần cơ bản là phần đầu (header), bảng màu (palette) và dữ liệu (data). Một vài ảnh
được sử dụng trong Windows hay XWindows để tạo giao diện như Icon, Cursor...
thì có thêm phần nhận dạng resource (resource id).
2.1.2.1. Phần header
Phần header cho biết các thông tin về bản thân ảnh như chiều dài, chiều rộng, vị trí
bắt đầu hiện trên thiết bị (màn hình, máy in, máy vẽ...), số màu..., và cho biết về
cấu trúc file ảnh như kiểu nén dữ liệu, vùng bắt đầu dữ liệu, vị trí bảng màu...
2.1.2.2. Bảng màu
Phần bảng màu dùng để lưu trữ mô tả theo dạng Red - Green - Blue cho tập hợp
các màu dùng trong ảnh. Sở dĩ cần có bảng màu cho mỗi ảnh vì số màu thể hiện
được trên thiết bị hiện nay còn hạn chế, cụ thể là trên màn hình VGA và Super
VGA chỉ có 256 màu (màn hình 16 triệu màu còn chưa phổ biến). Trong khi đó các
ảnh tự nhiên màu sắc lại rất phong phú và khi được đưa vào máy tính dưới dạng
ảnh màu thì mỗi ảnh lại sử dụng một tập hợp màu khác nhau. Vì vậy, để có thể lưu
trữ, hiển thị và xử lý trên các ảnh, người ta quyết định việc lưu trữ và hiển thị mỗi
màu dưới dạng một chỉ số X nào đó, mà cách thể hiện của màu mang chỉ số X này
được quyết định bởi giá trị của thành phần thứ X trong palette màu.
Ví dụ một điểm màu được lưu trữ với mã số là 5, đối với ảnh có palette màu P
mà thành phần P[5] = (R:0, G:0, B:0) thì sẽ được hiện ra màu đen, đối với ảnh có
palette màu thành phần P[5] = R:0, G:0, B:255) sẽ hiện ra màu xanh dương rất
sáng, còn nếu palette màu của ảnh có P[5] = R:255, G:255, B:255) thì sẽ hiện ra
màu trắng. Bằng cách này tại mỗi thời điểm người ta có thể hiện trên thiết bị từng

ảnh khác nhau có các tập hợp màu hoàn toàn khác nhau, hoặc đối với các ảnh mà
palette màu không khác nhau nhiều lắm, người ta có thể thực hiện việc ghép hai
palette theo thuật toán nào đó để cùng hiện một lúc mà không làm thay đổi nhiều về
độ trung thực của ảnh.
2.1.2.3. Dữ liệu


11

Phần dữ liệu ảnh, đối với ảnh bitmap là dãy các điểm màu xếp theo thứ tự, có
nén hoặc không nén, còn đối với ảnh vector thì là các lệnh vẽ metafile hoặc GDI
(Graphics Device Interface) nhằm vẽ ra các đối tượng trong ảnh.
2.2 Kỹ thuật nén JPEG
2.2.1. Giới thiệu chung về nén ảnh số
Trong những thập kỷ gần đây, truyền thông thị giác có tầm quan trọng và ảnh
hưởng rất nhiều tới đời sống và sự phát triển của con người. Thông tin thị giác rất
phong phú nhưng nó cần dải băng thông rất lớn để truyền thông tin. Cùng với sự
phát triển mạnh mẽ của máy tính và sự ra đời của Internet thì việc tìm một phương
pháp nén ảnh để giảm bớt không gian lưu trữ thông tin và truyền thông tin trên
mạng nhanh chóng đang là một yêu cầu cần thiết. Trong những năm gần đây, có rất
nhiều các phương pháp đã và đang được nghiên cứu rộng rãi để thực hiện nén ảnh.
Tất cả đều với một mục đích chung là làm thế nào để biểu diễn một ảnh với ít bit
nhất để có thể tối thiểu hoá dung lượng kênh truyền và không gian lưu trữ trong khi
vẫn giữ được tính trung thực của ảnh. Điều này tương đương với việc biểu diễn ảnh
có độ tin cậy cao nhất với tốc độ bit nhỏ nhất.Tốc độ bit được đo bằng số bit trên
một điểm ảnh (pixel). Tốc độ bit đối với ảnh đen trắng khi chưa được nén là 8
bit/pixel và đối với ảnh màu là 24 bit/pixel. Các kỹ thuật nén hiên nay cho phép
dung lượng ảnh được nén giảm 30 đến 50 lần so với ảnh gốc mà ảnh vẫn giữ được
độ trung thực cao.
Nén ảnh được thực hiện là do một thực tế: thông tin trong bức ảnh không phải là

ngấu nhiên mà có trật tự, cấu trú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 ảnh để biểu diễn và
truyền đi với số lượng bít ít hơn so với ảnh gốc mà vẫn đảm bảo tính đầy đủ thông
tin. Ở phía thu, quá trình giải mã sẽ tổ chức, sắp xếp lại gần chính xác so với ảnh
gốc nhưng vẫn thỏa mãn chất lượng yêu cầu, đảm bảo đủ thông tin cần thiết và thị
giác con người không phát hiện được sự mất mát thông tin đó. Như vậy, tín hiệu
ảnh, video có thể nén được vì những tính chất sau:
 Có sự tương quan (dư thừa) thông tin về không gian: Trong phạm vi một
bức ảnh hay một khung video có sự tương quan đáng kể giữa các điểm
ảnh lân cận.
 Có sự tương quan (dư thừa) thông tin về thời gian: Trong một chuỗi ảnh
video tồn tại sự tương quan giữa các điểm ảnh của các khung video.
 Có sự tương quan (dư thừa) thông tin về phổ: Các dữ liệu thu được từ các
bộ cảm biến của thiết bị thu nhận ảnh 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ổ.


12

Nén dữ liệu của hệ thống gồm: quá trình nén ở phía phát và giải nén ở phía thu.
Quá trình nén gồm ba bước chính: rời rạc, lượng tử và mã hóa Entropy. Sơ đồ khối
của bộ mã hóa và giải mã JPEG:
Khối con 8x8

DCT

Lượng
tử

Dữ liệu ảnh thô

Bảng
lượng tử

Mã hóa
Entropy

Bảng mã
Huffman

Hình 2.1: Sơ đồ khối của quá trình mã hóa JPEG

Chuỗi bit
nén


13

Chuỗi bit
nén

Giải

Entrop
y

Lượng
tử

DTC


Bảng lượng
tử

Bảng mã
Huffman

Dữ liệu ảnh tái tạo

Hình 2.2: Sơ đồ khối của quá trình giải mã JPEG

Công đoạn chính là chia nhỏ bức ảnh thành nhiều vùng nhỏ (thông thường là những
vùng 8x8 pixel) rồi sử dụng biến đổi cosin rời rạc để biến đổi những vùng thể hiện
này thành dạng ma trận có 64 hệ số thể hiện "thực trạng" các pixel. Điều quan trọng
là ở đây hệ số đầu tiên có khả năng thể hiện "thực trạng" cao nhất, khả năng đó
giảm rất nhanh với các hệ số khác. Nói cách khác thì lượng thông tin của 64 pixels
tập trung chủ yếu ở một số hệ số ma trận theo biến đổi trên. Trong giai đoạn này có
sự mất mát thông tin, bởi không có biến đổi ngược chính xác. Nhưng lượng thông
tin bị mất này chưa đáng kể so với giai đoạn tiếp theo. Ma trận nhận được sau biến
đổi cosin rời rạc được lược bớt sự khác nhau giữa các hệ số. Đây chính là lúc mất
nhiều thông tin vì người ta sẽ vứt bỏ những thay đổi nhỏ của các hệ số. Như thế khi
bung ảnh đã nén ta sẽ có được những tham số khác của các pixel. Các biến đổi trên
áp dụng cho thành phần U và V của ảnh với mức độ cao hơn so với Y (mất nhiều
thông tin của U và V hơn). Sau đó thì áp dụng phương pháp mã hóa của Huffman:
Phân tích dãy số, các phần tử lặp lại nhiều được mã hóa bằng ký hiệu ngắn
(marker). Khi bung ảnh người ta chỉ việc làm lại các bước trên theo quá trình
ngược lại cùng với các biến đổi ngược.
2.2.2. Phân loại các phương pháp nén ảnh/video
2.2.2.1. Nén ảnh có tổn hao và nén ảnh không tổn hao
Trên cơ sở lý thuyết thông tin, nén ảnh, video gồm hai loại: nén tổn hao và nén
không tổn hao. Nén không tổn hao, tín hiệu được tái tạo không sai khác so với bản

gốc, tuy nhiên phương pháp nén này không mang lại hiệu quả nén cao. Với phương
pháp nén tổn hao, tín hiệu tái tạo bị suy giảm so với bản gốc vì một số thông tin dư


14

thừa bị loại bỏ trong quá trình nén. Kết quả là hiệu suất nén cao hơn nhiều và trong
điều kiện cảm nhận hình ảnh thông thường không cảm nhận được sự mất mát thông
tin và vì thế vẫn đảm bảo chất lượng hình ảnh vì. Chất lượng hình ảnh là yếu tố
quan trọng nhất trong các ứng dụng nén tín hiệu hinh ảnh. Dù áp dụng nén tổn hao
hay nén không tổn hao, thì thông tin của tín hiệu tái tạo không mất mát trong điều
kiện cảm nhận hình ảnh thông thường. Một số kỹ thuật nén có tổn hao như: điều
chế xung mã (PCM), điều chế xung mã vi sai (DPCM), lượng tử hóa vector (VQ),
mã hóa biến đổi và băng con.
2.2.2.2. Mã hóa dựa trên phép biến đổi và mã hóa tiên nghiệm
Kỹ thuật nén dạng sóng là kỹ thuật xây dựng một mô hình trên cơ sở số liệu
thống kê của điểm ảnh hoặc chuỗi ảnh. Đây là kỹ thuật sử dụng phổ biến cho các
chuẩn quốc tế của hình ảnh/video như tiêu chuẩn của JPEG, MPEG. Kỹ thuật nén
hình ảnh trên dạng sóng được xây dựng cho nén hình ảnh hai chiều, nhưng nó cũng
có thể được mở rộng để nén tín hiệu video với chiều thứ ba là chiều thời gian. Kỹ
thuật nén dạng sóng bao gồm mã hóa biến đổi và mã hóa tiên nghiệm.
Mã hóa tiên nghiêm, dựa trên mối tương quan về không gian giữa các điểm ảnh
trong một hình ảnh. Đối với mã hóa tiên nghiệm các giá trị mang thông tin đã được
gửi đi hay đang sẵn có sẽ được sử dụng để dự đoán các giá trị khác và chỉ mã hóa
sự sai lệch giữa chúng. Phương pháp này đơn giản và rất phù hợp với đặc tính cục
bộ của bức ảnh. Kỹ thuật DPCM là kỹ thuật mã hóa tiên nghiệm tiêu biểu.
Trong khi đó mã hóa biến đổi được thực hiện như sau: trước tiên là thực hiện
phép biến đổi với ảnh để chuyển sự biểu diễn của ảnh từ miền không gian sang một
miền biểu diễn khác. Các phép biến đổi thường là: DCT- biến đổi cosin rời rạc,
DWT- biến đổi Wavelet rời rạc. Sau đó thực hiện mã hóa các hệ số biến đổi đó

khác dựa trên phép biến đổi là chuyển đổi thông tin thị giác từ miền không gian
sang miền tần số như Cosin rời rạc hay biến đổi dạng sóng và sau đó mã hóa hệ số
chuyển đổi đó. Phương pháp này có hiệu quả nén cao hơn rất nhiều so với phương
pháp nén tiên nghiệm vì chính các phép biến đổi đã gói gọn toàn bộ năng lượng
bức ảnh chỉ bằng số ít các hệ số, số lớn các hệ số còn lại ít có ý nghĩa hơn sẽ bị loại
bỏ sau khi lượng tử hóa và như vậy lượng dữ liệu truyền đi nhỏ hơn rất nhiều.
Trong phương pháp mã hóa tiên nghiệm, sai lệch giữa ảnh gốc và ảnh tiên nghiệm
vẫn còn ý nghĩa sau khi lượng tử hóa, chính điều này làm cho phương pháp mã hóa
tiên nghiệm có nhiều dữ liệu truyền đi hơn so với phương pháp mã hóa dựa trên
phép biến đổi.
2.2.2.3. Mã hóa băng con


×