chuong 5-nen du lieu audio va video
----------------------- Page 1-----------------------
Chương 5: Nén dữ liệu audio và video
Chương 5
NÉN DỮ LIỆU AUDIO VÀ VIDEO
5.1. GIỚI THIỆU
Tín hiệu audio và video khi biến đổi thành tín hiệu số thì dung lượng dữ liệu là
rất lớn, làm ảnh hưởng đến việc lưu trữ cũng như truyền dẫn tín hiệu. Số lượng dữ
liệu được tạo ra bởi ADC của tín hiệu audio và video nhiều đến mức audio và video
số sẽ không sử dụng được nếu dữ liệu này không giảm xuống. Thực tế, khả năng
nén dữ liệu audio và video là một trong những phương pháp cho phép hệ thống số
sử dụng ít dải band tần hoặc khả năng lưu trữ nhưng đồng thời lại tạo ra chỉ tiêu cao
hơn và giá thấp hơn hệ thống analog.
5.2. CÁC THUỘC TÍNH NÉN
Những minh họa trên hình 5.1, nén dữ liệu luôn được thực hiện hai quá trình
bổ sung nén và giải nén. Nén thường chỉđược thực hiện trong những phần của hệ
thống có sẵn khả năng chứa dữ liệu hay giới hạn tốc độ dữ liệu như các kênh thông
tin hay thiết bị lưu trữ. Bộ phận nén hoạt động ởđầu ra của bộ phận hệ thống bị nén,
và bộ phận giải nén hoạt động tại điểm mà dữ liệu phải ngược trở lại định dạng ban
đầu. Bộ phận nén và giải nén có thểđược đặt trên cùng một box hoặc ở khoảng cách
xa nhau, ví dụ như khi dữ liệu được nén để phát quảng bá tới nhiều người sử dụng ở
những địa điểm khác nhau. Mỗi người sử dụng phải giải nén trước khi sử dựng dữ
liệu.
Dữ liệu Nén Kênh truyền Giải nén Dữ liệu
đầu vào đầu ra
Hình 5.1. Quá trình nén dữ liệu
5.2.1. Các thuật toán
Việc mô tả chi tiết về mặt kỹ thuật của kỹ thuật nén được gọi là thuật toán. Một
thuật toán thường được miêu tả theo phương diện toán hạng, tuy nhiên các phương
tiện khác như sơđồ khối, biểu đồ xác định thời gian cũng có thểđược sử dụng. Mặc
dù số lượng các phương pháp nén chung bị giới hạn, do vậy dẫn dến hiện tượng tồn
tại một số lượng lớn các thuật toán. Do các bộ nén và giải nén đều phải thực hiện
quá trình xử lý tương đương đối với hệ thống, vấn đề chuẩn hóa các thuật toán trở
nên rất quan trọng.
132
----------------------- Page 2-----------------------
Chương 5: Nén dữ liệu audio và video
5.2.2. Nén tổn hao và nén không tổn hao
Một ưu thế lớn của hệ thống số là các nhà thiết kế hệ thống được phép chọn
khả năng tái tạo dữ liệu (và thông tin mà nó biểu thị ) một cách hoàn hóa. Các
phương pháp mã hóa và phát hiện sửa lỗi giúp các hệ thống lớn lưu trữ, xử lý, và
truyền dữ liệu mà không gây lỗi cho dù nó phải thực hiện bao nhiêu lần đi nữa. Đây
là cơ sở cho hệ thống máy tính tài chính trên toàn thế giới, xử lý hàng tỷđô la mà
không nhầm lẫn một đồng xu nào. Thậm chí trong hệ thống này, có thể sử dụng nén
dữ liệu nhưng phải là nén không tổn hao tức là phương pháp nén sẽ không gây ra
bất cứ một tổn hao nào cho dữ liệu. Đây là khả năng hoàn toàn có thể bởi vì hầu hết
dữ liệu thật đều có chứa các mô hình lặp lại của một vài dạng mà nén mà bộ xử lí có
thể tìm ra và sau đó sắp xếp để truyền một cách có hiệu quả hơn. Nhìn chung, thuật
toán nén không tổn hao không phụ thuộc vào việc nhận biết bất cứ thông tin gì về
dữ liệu sẽđược truyền-nó sẽ hoạt động với bất cứ loại dữ liệu nào, nhưng chỉ tiêu
(cấp độ nén) có thể phụ thuộc vào một vài con số thống kê dữ liệu.
Nén không tổn hao được sử dụng cho audio và video nhưng khả năng của nó
rất hạn chế. Hầu hết kĩ thuật nén audio và video đều là nén tổn hao, tương đương
với việc một số dữ liệu có thể bị tổn hao hoặc thay đổi. Tuy nhiên, tên của trò chơi
là để tìm những dữ liệu có thể bị loại bỏ bởi bộ xử lí nén nhưng sẽ không ảnh hưởng
đến hình dạng của ảnh hay âm thanh đến tay người nghe khi tín hiệu được tái tạo lại
để hiển thị. Nếu tổn hao hoạt động bởi vì các tín hiệu audio và video số có thể chứa
thông tin đóng góp vào quá trình tái tạo âm thanh như khi được nhìn hoặc nghe sử
thật bởi một người nào đó. Sơđồ nén tổn hao phụ thuộc vào hiểu biết về kiểu dữ
liệu, định dạng và sử dụng của nó.
Tiêu chí trên đây cho nén tổn hao không chỉ là mối quan tâm duy nhất ; cấp độ
tổn hao có thể chấp nhận được phụ thuộc vào quá trình nào sẽđược sử dụng nén
trong một hệ thống. Ví dụ, trong quá trình sản xuất và sản xuất hậu kì, rất ít tổn hao
có thểđược chấp nhận trước khi nó bắt đầu ảnh hưởng không tốt tới quá trình xây
dựng chương trình. Do vậy mà nhà sản xuất sẽ không chấp nhận nén tổn hao, tại đầu
cuối của hệ thống sau cho hình ảnh được rõ ràng đến người xem.
5.2.3. Nén đối xứng - không đối xứng
Các kỹ thuật nén có sự tham gia của một lượng xử lý nào đó để nén dữ liệu và
sau đó, lượng xử lý cần nhiều hơn để giải nén dữ liệu ởđầu cuối của hệ thống. Các
quá trình này thường cần tới số lượng và số lần tham gia rất đáng kể của phần cứng
cũng như phần mềm để thực hiện mỗi quá trình. Nén đối xứng có nghĩa là quá trình
nén và giải nén gần bằng nhau về lượng tham gia của phần cứng, phần mềm và thời
gian xử lý. Ví dụ, nếu thỏa mãn việc nén video trong thời gian thực trên một máy
133
----------------------- Page 3-----------------------
Chương 5: Nén dữ liệu audio và video
tính cá nhân và sau đó phát lại trên cùng hệ thống thì khi đó thuật toán đối xứng là
hoàn toàn thích hợp.
Tuy nhiên, thuật toán đối xứng hoạt động trên một hệ thống nhỏ phải đặt giới
hạn cho độ phức tạp của hệ thống được sử dụng. Như sẽ thấy sau này, hiệu quả của
nén có thểđược cải thiện bằng cách sử dụng những thuật toán phức tạp hơn, thậm
chí ngay khi giải nén được thực hiện trên một hệ thống nhỏ. Điều này dẫn đến khả
năng xảy ra các thuật toán không đối xứng, tức là quá trình nén yêu cầu một hệ
thống lớn, chuyên dụng và có thể không hoạt động trong thời gian thực, nhưng quá
trình giải nén lại được thực hiện trong thời gian thực, trên một hệ thống nhỏ, có giá
thành thấp. Nén không đối xứng rất quan trọng đặc biệt trong các hệ thống phát lại
chúng như truyền hình quảng bá hay CD-ROM. Nhiều khi, nén có thểđược thực
hiện trước trên hệ thống lớn, được lưu trữ, và sao chép để sau này phân phối cho các
phương tiện truyền tới người sử dụng.
5.2.4. Cấp độ nén
Sẽ thỏa mãn nếu như việc xác định số lượng cấp độ nén thực hiện bởi một hệ
thống đặc biệt và sau đó so sánh với các hệ thống khác theo cách này. Người ta
thường hay đề cập đến tỷ lệ nén, là tỷ lệ giữa dữ liệu vào và dữ liệu ra của quá trình
nén. Với kỹ thuật nén không tổn hao, đây là phương pháp rất hiệu quả khi nội dung
thông tin của dữ liệu không đổi. Tuy nhiên, tỷ lệ nén là một thuật ngữ không thỏa
mãn với nén không tổn hao, trừ khi nó có đủ thông tin bổ xung về số lượng tổn hao
tín hiệu do nén gây ra.
Một cách tốt hơn để so sánh các sơđồ nén tổn hao là trích chỉ tiêu tín hiệu của
hệ thống ở tốc độ dữ liệu đã cho hoặc tốc độ dữ liệu cho mức xác định của chỉ tiêu
kỹ thuật. Tuy nhiên, điều này trở nên khó khăn bởi vì nén có thểđưa vào các thông
số rất khó xác định số lượng. Cuối cùng, có nhiều cách đánh giá chủ quan yêu cầu
để so sánh giữa các hệ thống nén tổn hao, nhưng phải tránh việc trích dẫn tỷ số nén.
Nhiều trường hợp đòi hỏi hệ thống video số hoạt động với tốc độ dữ liệu ổn
định. Ví dụ, một hệ thống truyền dẫn có thể có tốc độ dữ liệu không đổi, môi trường
tốc độ không đổi như CD-ROM hoặc các phương tiện phân phối khác. Thuật toán
nén có tổn hao có thểđược thiết kế cho tốc độ dữ liệu cốđịnh bằng cách cho phép
biến thiên một lượng của độ giảm chất lượng ảnh. Điều ngược lại cũng có thể xảy
ra, chất lượng ảnh ổn định với tốc độ dữ liệu thay đổi. Trong cả hai trường hợp, các
quyết định điều phải thực hiện một cách chính xác trong quá trình nén.
5.3. CÁC PHƯƠNG PHÁP CHUNG
Một số phương pháp nén chung cùng tồn tại, song các thuật toán chỉ sử dụng
một trong sốđó. Phần này sẽđề cập đến một trong những phương pháp chung này
134
----------------------- Page 4-----------------------
Chương 5: Nén dữ liệu audio và video
5.3.1. Các phương pháp không tổn hao
Mặc dù nén không tổn hao không thường được sử dụng cho audio hay video
song những phương pháp như thế vẫn được sử dụng như một phần của thuật toán
tổn hao. Mọi phương pháp không tổn hao đều phụ thuộc vào những con số thống kê
dữ liệu nào đó mặc dù chúng không cần biết rõ sẽ biểu thị dữ liệu nào. Phụ thuộc
vào các ứng dụng, do vậy nhiều phương pháp không tổn hao đôi khi gay ra tổn hao
cách lấy xấp xỉ trong các tính toán của mình.
5.3.1.1 Mã độ dài thay đổi
Dữ liệu nói chung có thể có chứa các giá trị lặp lại một số lần, ví dụ như trong
một hình được ghi biểu đồ mẫu có một vùng đồng màu. Các pixel kề nhau trong
vùng này sẽ có cùng giá trị. Dữ liệu này có thểđược nén bằng cách nhận biết khi
nào thì một chuỗi các giá trị lặp lại xảy ra và truyền giá trị một lần cùng với mã thứ
hai biểu thị việc tính toán số lần giá trị lặp lại. Đây được gọi là mã có độ dài thay
đổi (RLE). RLE phải có phương tiện để nhờđó bộ giải nén có khả năng nhận biết
khi nào giá trị RLE xảy ra. Điều này thường được thực hiện bằng cách tạo ra một
giá trị dự trữ, giá trị này không bao giờ hoặc hiếm khi xuất hiện trong các giá trị của
dữ liệu. Ví dụ, giá trị 25510 trong một hệ thống 8 bit có thểđược dự trữ với mục
đích này. Giá trị dự trữđó được gọi là mã thoát. Khi bắt gặp mã thoát, bộ giải nén sẽ
biến hai giá trị tiếp theo biểu thị một giá trị pixel và số lần lặp lại của nó. Điều này
được minh họa trên hình 5.2.
6 giá trị lặp
010 022 079 000 010 063 063 063 063 063 063 241 254 198 087
010 022 079 000 010 255 063 006 241 254 198 087
Đếm lặp
Giá trị
Mã thoát
Hình 5.2. Ví dụ về mã độ dài thay đổi
Do vậy, một đối tượng đơn lặp lại sẽ lấy ba từ dữ liệu để truyền, vì vậy sẽ
không có độ tăng ích khi sử dụng phương pháp này cho đến khi có hơn ba từ lặp lại.
Lưu ý là không cần thiết phải ngăn dữ liệu đầu vào có chứa giá trị mã giải thoát đã
dự trữ. Nếu điều này xảy ra, hai mã thoát có thểđược truyền cùng nhau đểấn định
là từ dữ liệu có giá trị thoát.
5.3.1.2. Mã thống kê
135
----------------------- Page 5-----------------------
Chương 5: Nén dữ liệu audio và video
Nén dữ liệu cũng có thể thực hiện bằng cách quan tâm đến việc thống kê của
dữ liệu đầu vào. Nếu biết chắc chắn các giá trị từđược sử dụng nhiều hơn giá trị từ
khác, người ta có thể thiết lập một hệ thống mã để chuyển các giá trị sự kiện xuất
hiện nhiều với một mã ngắn (ít bit), ngược lại các giá trị xuất hiện ít hơn có thể sử
dụng các mã bit dài hơn. Một hệ thống mã sử dụng nguyên lý này là mã Morse
trong điện báo. Trong các hệ thống số, phương pháp phổ biến nhất là nguyên lý này
là dùng mã Huffman, nó được sử dụng rộng rãi trong các thuật toán nén video. Mã
Huffman hoạt động ở mức bit, một ví dụ trên hình 5.3. Hiệu quả của mã phụ thuộc
vào khả năng nhận biết trước xác suất xuất hiện của sự kiện PS của mỗi giá trị dữ
liệu. Một cây nhị phân được tạo từ các giá trị sắp xếp theo bậc giảm dần của xác
suất. Các mã được tạo bằng cách đọc từđầu ra của cây nhị phân (từđiểm A) ngược
trở lại đầu vào của cây nhị phân, và lấy các giá trị bit từ mỗi nhánh. Giống như
phương pháp thích ứng mô hình, bộ nén phải thiết lập một bảng các thông số hay
bảng tra cứu và gửi kèm theo dữ liệu tới bộ giải nén. Mã thống kê cũng được gọi là
mã entropy.
Giá trị Ps Mã
0 0,04 0
1 0,15 100
2 0,10 101
3 0,10 1100
4 0,08 1101
5 0,07 1110
6 0,05 11110
7 0,05 11111
Giá trị 3 4 0 0 0 1 0 21bit
Mã 110011010001000 15bit
Hình 5.3. Ví dụ mã hóa Huffman giá trị 3 bit
Hình 5.3. Ví dụ mã Huffman giá trị 3 bit
5.3.2 Các phương pháp tổn hao
Các phương pháp nén tổn hao vốn cần phải quan tâm tới định dạng dữ liệu
cũng như ý nghĩa ứng dụng của tất cả các bit hoặc từ trong dữ liệu. Việc quan tâm
đến người sử dụng dữ liệu và khả năng nhìn hoặc nghe của họởđiều kiện nhìn xác
136
----------------------- Page 6-----------------------
Chương 5: Nén dữ liệu audio và video
định cũng rất cần thiết. Ví dụ, nếu video chỉđược xem ở tỉ lệ nhìn rộng, một số
thông tin chi tiết có thể bị khử một cách cẩn thận mà người xem không thể nhận biết
được. Mặc khác, nếu các điều kiện nghe và nhìn được yêu cầu nhiều hơn, rất ít
thông tin bị mất mà không được báo. Trong trường hợp đó phải cần đến các phương
pháp nén tinh xảo hơn.
5.3.2.1 Cắt bỏ
Trong các phương pháp khử dữ liệu không cần thiết gồm có hai phương pháp
là cắt bỏ và lấy mẫu con. Cắt bỏ là xóa đi một vài trong số những bit kém hiệu quả
nhất từ các mẫu. Đây chính là tái lượng tửđã được đề cập trong chương trước và nó
phải được thực hiện riêng để duy trì càng nhiều thông tin càng tốt.
Với những điều kiện lý tưởng, các mẫu thành phần video phải có tối thiểu là 8
bit/pixel, nhưng dưới những điều kiện xem kém lý tưởng hơn, phải giảm tới 6
bit/pixel mà không gây ra sự suy giảm đáng kể nào. Bởi vì SNR lượng tử sẽ giảm
6dB trong mỗi bit được khử, cho nên việc cắt bỏ không phải là một giải pháp tốt,
hơn nữa giảm dữ liệu sẽ kéo theo chỉ tiêu giảm.
Quá trình lấy mẫu audio chất lượng cao cần đến ít nhất là 16 bit/mẫu. Tuy
nhiên, rất nhiều hệ thống audio có thể hoạt động hiệu quả với mức thấp như 8
bit/mẫu, đặc biệt đối với lời nói, tại đó dải thông có thể bị hạn chế và tiêu chuẩn
chính đề ra là dễ hiểu.
5.3.2.2. Lấy mẫu con
Các mẫu được sử dụng rộng rãi cho thành phần độ chói nhiều hơn là cho các
thành phần video hiệu màu. Kỹ thuật này dựa trên cơ sở thực tế là mắt người có độ
phân giải với màu sắc kém hơn với độ chói, vì vậy dải tần tín hiệu màu (tỷ lệ lấy
mẫu) có thểđược giảm mà người xem không nhận thấy được sự suy giảm. Đây
được gọi là lấy mẫu con hoặc là giảm tỷ lệ lấy mẫu và như trong truyền hình analog,
đó là một phần của hầu hết các hệ thống nén video số. Lấy mẫu con giảm giới hạn
Nyquist tới giá trịđược biểu thị bởi tỷ lệ lấy mẫu con và cũng phải cần đến quá trình
lọc riêng để tránh chồng phổ.
5.3.2.3 Các bảng màu
Đối với một vài mục đích của video, có thể giảm số lượng bit/pixel bằng cách
biến bản thân giá trị pixel thành một chỉ số trong bảng các giá trị màu được chọn lọc
từ một số lượng bit/pixel rất lớn. Ví dụ, tiêu chuẩn PC VGA cung cấp một chếđộ 8
bit/pixel có khả năng lựa chọn 256 màu sắc từ một bảng màu 18 bit. Các hệ thống
khác sử dụng các số bit khác nhau, 256 màu sẽ làm cho việc tái tạo ảnh tự nhiên
kém hơn nhưng, dưới những điều kiện thích hợp, việc tái tạo có thể có kết quả tốt
đáng ngạc nhiên. Điều này đặc biệt đúng nếu các màu sắc của bảng được chọn lọc
137
----------------------- Page 7-----------------------
Chương 5: Nén dữ liệu audio và video
cho từng ảnh một. Có thể cải thiện được ảnh tốt hơn bằng cách sử dụng kỹ thuật
dithering để tạo được các màu không có trong bảng bằng cách thay đổi màu sắc ở
các pixel kề nhau. Nếu người xem ở khoảng cách xa vừa đủ, họ sẽ không nhận thấy
các pixel độc lập, mắt sẽ tổng hợp các pixel kề nhau thành những màu sắc phối hợp.
Tuy nhiên các bảng màu có những hạn chế rất nghiêm trọng nếu áp dụng cho
ảnh động, bởi vì chuyển động của các ảnh tự nhiên sẽ tạo ra các hiệu ứng giả mà
người xem có thể nhận thấy rõ (ví dụ như hiệu ứng đường viền). Đối với ảnh động,
tốt hơn hết là sử dụng màu trực tiếp với nhiều số bit/pixel hơn (ví dụ 16) và sử dụng
các phương pháp nén khác.
5.3.2.4. Mã vi sai
Đối với cả audio và video, lượng thay đổi biên độ từ mẫu này tới mẫu khác
khiến sự phân bổ xác suất giảm theo biên độ. Nếu tính đến điều này thì người ta có
thể nén bằng cách ghi mã vi sai giữa các mẫu hơn là bản thân chúng. Nếu các vi sai
biên độ lớn ít xảy ra, các giá trị vi sai có thểđược truyền với số bit nhỏ hơn số bit
chứa trong mẫu ban đầu. Quá trình ghi mẫu này được gọi là PCM vi sai (DPCM) và
là thành viên của một mã lớn hơn đó là mã dựđoán. Trong DPCM đơn giản, việc dự
báo một mẫu được dựa trên mẫu trước cộng với một số gia.
50
0
47 53 58 60 57 50 40 30 26 26 26 26 26 27 27 28 29 30 32 47 80 96 90 61
Khác biệt 6 5 2 -3 -7 -10 -10 -4 0 0 0 0 1 1 1 2 15 23 16 -6 -29
Làm tròn 4 bit 6 5 2 -3 -7 -7 -7 -7 -2 0 0 0 1 1 1 2 8 8 8 8 8
Quá tải
50
Ban đầu
0
47 53 58 60 57 50 42 35 28 26 26 26 26 27 27 28 29 30 32 40 48 56 64 72
Hình 5.4 PCM vi sai: a)mã hoá DPCM;b)giải mã DPCM
138
----------------------- Page 8-----------------------
Chương 5: Nén dữ liệu audio và video
Trong DPCM, khi một giá trị vi sai lớn xuất hiện, hệ thống DPCM sẽ bị quá tải
(slope overload), có thể gây ra hiện tượng méo nhất thời khá nghiêm trọng, xem
hình 5.4(b). Lưu ý là một vài giá trị vi sai đã được sửa để giúp hệ thống khôi phục
lại từ hiện tượng quá tải. Điều này được thực hiện bằng kiến trúc dựđoán được
miêu tả dưới đây.
Một dạng tiến bộ hơn của DPCM đã được phát triển nhằm cải thiện chỉ tiêu kỹ
thuật với các giá trị vi sai thay đổi, mối quan hệ giữa các bit của giá trị vi sai và vi
sai thực mà chúng biểu diễn được điều chỉnh dựa vào mức độ các giá trị vi sai lớn
tín hiệu. Ví dụ, một hệ thống tiêu biểu có thể có 4 bit cho các giá trị vi sai, nó có khả
năng cho phép 16 bước tái tạo khác nhau. Tuy nhiên, nếu các vi sai tín hiệu hoạt
động ở các mức thấp 16 bước tái tạo vi sai này có thểđược làm nhỏđi. Nếu các vi
sai trong tín hiệu tăng, một cơ cấu thích ứng sẽ tăng kích cỡ của các bước lên, vì vậy
các mức 16 bước có thể truyền vi sai lớn. Đây được gọi là DPCM thích ứng
(ADPCM) thường được sử dụng cho nén audio. ADPCM có thể thực hiện nén theo
tỉ lệ 4:1 trên các tín hiệu audio nói chung. Vẫn có thể có một vài hiện tượng méo
xảy ra khi cơ cấu thích ứng dịch chuyển kích cỡ của các bước thực hiện, nhưng khi
tính đến cấp độ nén, điều này có thể chấp nhận được cho nhiều mục đích.
5.3.2.5 Mã dựđoán
Hình 5.5 là một sơđồ khối minh họa cách thức DPCM được sử dụng phổ biến
như cơ cấu ghi mã dựđoán. Khối bộ dựđoán thực hiện quá trình dựđoán mẫu tiếp
theo từ mẫu hoặc các mẫu trước. Kết quả của bộ dựđoán sau đó sẽđược so sánh với
mẫu tiếp theo và vi sai được truyền đi. Bên thu, sau đó có thể tái tạo lại các mẫu
bằng cách sử dụng các giá trị vi sai và một modul bộ dựđoán giống bên phát.
+
Đầu vào Bộ lượng tử Đầu ra
-
Bộ dựđoán
a)
+
Đầu vào Đầu ra
+
Bộ dựđoán
b)
Hình 5.5. Mã dựđoán: a) mã hóa, b) giải mã
139
----------------------- Page 9-----------------------
Chương 5: Nén dữ liệu audio và video
Đối với DPCM, bộ dựđoán chỉđơn giản là so sánh mẫu trước với mẫu tiếp
theo để tạo ra giá trị vi sai, giá trị vi sai sẽđược truyền đi. Tuy nhiên, người ta có
thể xây dựng các bộ dựđoán phức tạp hơn, ví dụ như bộ dựđoán đường dốc đánh
giá mẫu tiếp theo dựa vào đường dốc giữa hai mẫu trước…Sự thành công của
phương pháp này phụ thuộc vào quá trình phát triển thuật toán dựđoán dùng để tính
toán các đặc tính của dữ liệu nén.
5.3.2.6. Mã lời nói
Với đặc thù của điện thoại, rất nhiều phương pháp đã được phát triển đặc biệt
cho việc ghi mã theo kỹ thuật số của giọng nói hay lời thoại. Tiêu chuẩn cho điện
thoại là PCM tuyến tính với quá trình lượng tử hóa luật μở 8000 mẫu/giây và 8
bit/mẫu, cho tốc độ dữ liệu là 64 kbit/giây. Tuy nhiên, nhiều phương pháp nén tiên
tiến đôi khi được sử dụng để giảm tốc độ dòng bit cho những mục đích riêng biệt.
Phương pháp tốt nhất cho ghi mã lời nói là dựa vào lấy mẫu dải âm thoại của người
cho hệ thống điện tử. Kỹ thuật này có thể hoạt động rất tốt với lời nói, nhưng nó
không hiệu quảđối với các âm thanh nói chung. Các phương pháp này được trình
bày trong lý thuyết điện thoại.
5.3.2.7. Mã chuyển đổi
Xử lý trực tiếp với các mẫu tín hiệu ban đầu không phải là cách tốt nhất để
biểu lộ sự dư thừa về tín hiệu có thể bị loại bỏ trong khi nén đặc biệt với video, vì
đây thường là tín hiệu hai hoặc ba chiều (ngang, dọc, và thời gian). Do vậy phải nhờ
đến một cách khác gọi là chuyển đổi, là sự biểu diễn xen kẽ thông tin có thể thực
hiện bằng quá trình xử lý toán học. Mọi chuyển đổi đều phải thực hiện cả quá trình
ngược lại quá trình chuyển đổi được thực hiện trong quá trình giải nén.
Đối với các ảnh, việc coi khối pixel hai chiều là một đơn vị rất hữu ích. Một sự
lựa chọn đơn giản là lấy 8 pixel ở mỗi hướng, tổng số là 64 giá trị. Hãy quan sát về
mặt không gian, một khối 8×8 chỉ là một mảnh nhỏ của một hình, thậm chí còn
không thể nhận biết được cái gì, nhưng bằng cách chuyển đổi nó sang miền tần số,
các thành phần được quan sát thấy hết sức quan trọng đối với công đoạn tái tạo hoàn
chỉnh. Điều này chủ yếu dựa trên nguyên tắc các tần số không gian cao khó nhìn
thấy được hơn so với các tần số không gian thấp.
Sự chuyển đổi đầu tiên áp dụng lý thuyết này là chuyển đổi cosin rời rạc
(DCT), có liên quan đến chuyển đổi Fourier thường được sử dụng để trích các thành
phần tần số của một dạng sóng tùy ý. Chuyển đổi Fourier hoạt động trên những
dạng sóng liên tục (analog) nhưng phiên bản hoạt động trên một nhóm các mẫu lấy
từ một dạng sóng tương tự cũng có thểđáp ứng được. Sự chuyển đổi dựa vào các
mẫu này đã cho ra tiền tố “rời rạc”. Chuyển đổi Fourier cho dù có rời rạc hay không
thì cũng phát ra một tập hợp các thành phần tần số cosin và sin, có thểđược quan sát
140
----------------------- Page 10-----------------------
Chương 5: Nén dữ liệu audio và video
giống như một tập hợp các thành phần tần số có các giá trị pha và biên độ. Có thể
đơn giản hơn khi sự chuyển đổi Fourier rời rạc được thực hiện trên một tập hợp các
mẫu dữ liệu tiếp theo các ảnh phản chiếu của chúng theo trục thời gian. Thành phần
sin của chuyển đổi Fourier có thể hủy bỏ, chỉđể lại các thành phần cosin. Đây là
chuyển đổi cosin rời rạc. Nó có đặc tính là một khối 8×8 của 64 mẫu được chuyển
thành một khối 8×8 của thành phần cosin biểu thị tần số không gian ở hai chiều. Xét
về mặt toán học, nó có thểđược biểu thị dưới dạng:
7 7 + Π( ) ( + )
x u y v π
1 2 ⎡1 ⎤2 ⎡1 ⎤
F u v C u C v f x y ( ) ( )
( ) ( ) , , cos ∑∑ cos (5.1)
4 x 0 y 0 ⎢⎣ 16 ⎦⎥ ⎢⎣ 16 ⎦⎥
Trong đó: là các chỉ số trong khối 8x8 của pixel.
u và v là là các chỉ số trong khối 8×8 của các hệ sốđầu ra
1
C w( ) với w=0
2
C w( ) 1 với w>0
Từ (5.1) diễn đạt thành lời có ý nghĩa là mỗi hệ số DCT được tính toán bằng
cách lấy tổng của tất cả các mẫu đầu ra với một hàm trọng số cosin, hàm này phụ
thuộc vào vị trí của hệ sốở mảng đầu ra và vị trí của mỗi mẫu trong mảng đầu vào.
Đây là một phép tính đồ sộ ngay cả khi đã đơn giản hóa, nó vẫn thường được thực
hiện trong một IC thông thường. Một vài đặc điểm của IC được minh họa trên hình
5.7. Đầu ra của quá trình xử lý DTC là một mảng 8×8 giá trị biểu thị biên độ các
thành phần tần số không gian (5.7b) trong khối 8×8 đã được xử lý. Tại điểm này,
quá trình xử lý DTC không tạo ra nén, có 64 pixel trong khối và hiện tại có 64 hệ số
DTC. Tuy nhiên, các hệ số này lại tạo điều kiện thuận lợi cho quá trình xử lý tiếp
theo trong quá trình nén.
Tần số chiều ngang
50 20 10 0 0 2 0 0
c
ọ 30 15 12 0 0 0 0 0
d
u 12 11 10 0 0 1 0 0
ề
i
h
DCT c 5 6 0 0 0 3 0 0
ố
s
0 3 4 0 3 0 0 0
n
ầ 2 0 0 0 0 1 0 0
T
0 0 0 0 0 0 0 0
0 0 2 0 0 0 0 0
50 20 30 12 15 10 0 12 11 5 0 6 10 0 0 2 0 0 0 3 2 0 0 4
0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 3 3 0 0 0 0 0 0 2 0 0 1 E0B
Hình 5.6. Chuyển đổi cosin rời rạc:a) khối 8×8 pixel,
b)khối 8×8 hệ số, c) đọc ra zic-zag
141
----------------------- Page 11-----------------------
Chương 5: Nén dữ liệu audio và video
Việc xếp các hệ số theo trật tự tần số tăng dần là rất có ích như minh họa trên
hình 5.6c, đây được gọi là xếp theo trật tự zic-zăc. Tại đó các thành phần tần số cao
hơn thường là các giá trị 0 hoặc nhỏ hơn. Bởi vì các thành phần tần số này không
quá quan trọng, nên chúng có thểđược lượng tử hóa thô mà không cần mất nhiều
thông tin trong hình. Vì vậy, chỉ cần thiết phải truyền các thành phần tần số có giá
trị không phải là 0, và dữ liệu sẽ giảm một cách đáng kể. Ở một vài điểm nào đó, tất
cả các hệ sốđều là 0. Một dấu hiệu đánh dấu kết thúc khối (EOB) được đặt tại đó và
cũng sẽ không có một giá trị nào được sử dụng nữa. Các hệ số còn lại thường được
mã hóa với mã RLE entropy
5.3.2.8. Bù chuyển động
Ảnh động tạo ra sự dư thừa đáng kể từ khung hình này đến khung hình kế tiếp.
Rất nhiều phần trong khung hình có thông tin không thay đổi, một vài phần có thể
đứng im và các phần khác có thể là các phần của khung hình trước vừa dịch chuyển
đi chút ít. Theo nguyên lý này, bất cứ thứ gì đã tồn tại trong khung hình trước đều
không cần phải được truyền lại, nó chỉ cần được sao chép bằng máy thu hình từ một
bản lưu trữ của khung hình trước. Chức năng chỉ ra cái mới hoặc cũ trong một
khung hình được gọi là bù chuyển động. Đây là một trong những nhiệm vụ phức tạp
nhất của nén video, thực tế hiệu quả của bù chuyển động luôn bị hạn chế do khả
năng tính toán và tốc độ.
Khung hình trước Khung hình dự báo
Vector chuyển động
Khung hình hiện tại Khung hình còn lại được truyền
_
Hình 5.7. Bù chuyển động
142
----------------------- Page 12-----------------------
Chương 5: Nén dữ liệu audio và video
Cũng như với mã chuyển đổi, bù chuyển động được dựa vào quá trình xử lý
ảnh trong khối. Đưa ra một khung hình (đầu tiên) hoàn chỉnh như là điểm xuất phát,
các khối từ khung hình tiếp theo (thứ 2) được lấy và so sánh với các vùng của khung
hình thứ nhất để xác định xem có điểm nào trùng khớp ở bất cứ vị trí nào trên khung
hình thứ nhất hay không. (Khối có thểđã dịch chuyển giữa các khung hình). Nếu
tìm thấy điểm trùng khớp, một vector chuyển động sẽđược tạo ra cho máy thu sử
dụng để dựđoán vùng của khung hình thứ hai bằng cách sao chép nó từ khung hình
thứ nhất. Biết rằng số lượng chuyển động giữa các khung hình thường không quá
lớn nên chỉ cần thiết tìm kiếm một khu vực nhỏ xung quanh vị trí của khối được
kiểm tra. Thậm chí như vậy, số lượng thao tác tính toán ởđây cũng rất lớn và có thể
cần thiết phải hạn chế phạm vi tìm kiếm so với thực tế cần thiết. Các khối không
được tìm thấy ở khung hình trước phải được mã hóa bằng các phương tiện khác và
truyền đi đầy đủ.
Hình 5.7 là sơđồ của quá trình này, nó minh họa hoạt động trong một cảnh chỉ
có một vật chuyển động nhỏ (một con chim) nhưng có camera dõi theo. Điều này có
nghĩa là cảnh phải trải qua một hiệu ứng quay quét, ởđây hầu hết các khối của
khung hình mới tồn tại ở những vị trí tương tự trong khung hình trước, vì vậy có thể
sử dụng cấp độ nén cao hơn cho loại cảnh này.
5.4. CÁC THUẬT TOÁN THÔNG DỤNG
Các nguyên tắc được bàn trong phần trước nhìn chung đều được sử dụng với
các thuật toán thông dụng. Phần này sẽđề cập đến một số thuật toán để chỉ ra cách
thức hoạt động của nó.
5.4.1. JPEG
Ảnh động chỉ là một chuỗi các hình đang được truyền ở tốc độđủđể người
xem có thể nhìn thấy như là một ảnh chuyển động liên tục. Một phương pháp nén
ảnh động là nén từng ảnh một và truyền kết quả thu được thành một dòng bit đơn.
Bất cứ một phương pháp nén hình ảnh chuyển động nào cũng có thểđược sử dụng
nhưng một trong những phương pháp nén tốt nhất đã được phát triển bởi JPEG của
ISO/IEC và được gọi là nén JPEG.
Tiêu chuẩn nén ảnh JPEG không phải là một thuật toán đơn lẻ mà giống như là
một hộp công cụ của các kỹ thuật nén, nó có các chếđộ (mode) và các sự lựa chọn
với các ứng dụng nén hình dạng chuyển động liên tục trên phạm vi lớn. Có thể lựa
chọn cả nén tổn hao và nén không tổn hao, số bit/mẫu khác nhau, các độ phân giải
khác nhau, và một vài thuật toán khác nhau. Có bốn chếđộ hoạt động:
Không tổn hao-ảnh được tái tạo lại một cách chính xác. Toàn bộ các chếđộ
khác bị tổn hao.
143
----------------------- Page 13-----------------------
Chương 5: Nén dữ liệu audio và video
Liên tục-chếđộ này mã hóa theo trật tựảnh đã được quét, đây là cách thông
thường mà ảnh vẫn được xử lý.
Tăng dần-đây là phương pháp mã hóa đa đường truyền đi một ảnh thô trước
tiên, ảnh này sẽ nhanh chóng được hiển thịở máy thu. Tiếp sau đó là các
quá trình mã hóa lặp lại với độ phân giải theo thứ tự tăng cao hơn, có thể
được hiển thị nhằm đưa ra chất lượng ảnh ngày càng tốt hơn.
Thứ bậc-trong chếđộ này, ảnh được mã hóa ở nhiều độ phân giải, người sử
dụng có thể chọn độ phân giải để hiển thịảnh.
Việc cung cấp sự lựa chọn cấu hình trong JPEG có nghĩa là tiêu chuẩn có thể
phù hợp cho nhiều ứng dụng khác nhau và có thể nâng cấp trong tương lai để có thể
tiếp tục nghiên cứu và phát triển công nghệ nén hình. Đây là đặc điểm rất quan
trọng và thỏa mãn đối với các tiêu chuẩn nén.
ảnh Mã hóa Tạo định Định dạng Giải mã ảnh tái
nguồn JPEG dạng xen kẻ giải mã JPEG tạo
Bảng đặc Bảng đặc
điểm kỹ điểm kỹ
thuật thuật
Hình 5.8. Kiến trúc JPEG
Hình 5.8 là một sơđồ khối của kiến trúc JPEG. Ảnh nguồn được mã hóa dưới
sựđiều khiển của một hoặc nhiều bản đặc điểm kỹ thuật. Dữ liệu đã mã hóa được
đặt vào định dạng xen kẽ JPEG để phát tới người sử dụng. Đây là định dạng có thể
được lưu trữ hoặc truyền. Ởđầu thu, bảng đặc điểm kỹ thuật và dữ liệu mã hóa được
tách riêng và quá trình xử lý ngược lại được thực hiện để khôi phục ảnh ban đầu.
Tất cả các loại hình mã hóa, trừ chếđộ không tổn hao, đều dựa vào DCT. Hình
5.9 minh họa quá trình xử lý chi tiết cho chếđộ hoạt động liên tục. Mỗi thành phần
của hình nguồn được chia thành các khối 8x8 pixel. Quá trình xử lý DTC trước
được sử dụng cho khối này. Việc này cho kết quả là một số DC và 63 thành phần
tần số cao hơn, mỗi một thành phần sẽđược lượng tử hóa theo một bảng 64 giá trị
lượng tử.
Bảng lượng tử này là đặc điểm kỹ thuật đầu tiên của thuật toán; nó phải do
người sử dụng cung cấp và trở thành một phần của dòng dữ liệu được truyền tới
máy thu. Người sử dụng có thểđiều khiển sự thỏa hiệp giữa cấp độ nén và chất
lượng của ảnh bằng cách xác định bảng. Nội dung của bảng lượng tử là kích cỡ của
144
----------------------- Page 14-----------------------
Chương 5: Nén dữ liệu audio và video
bước sẽđược sử dụng; các giá trị của hệ số DCT được chia cho kích thước của bước
tương ứng và kết quảđược làm tròn tới số bit đã xác định. Vì vậy, giá trị lượng tử
lớn hơn sẽ cho kết quả là lượng tử thô và điều đó có nghĩa là các giá trị lớn hơn sẽ
được làm tròn về 0.
Nguồn từ DCT Trật tự Lượng Mã hóa
khối 8x8 trước zig-zac tử entropy
Xác định
xen kẻ
Bảng đặc Bảng đặc
điểm kỹ điểm kỹ
thuật thuật
Hình 5.9. Xử lý JPEG cho chếđộ hoạt động liên tục
Tiếp theo quá trình lượng tử hóa, hệ số DC được mã hóa ngược lại với các hệ
số DC của khối hình trước, 63 hệ sốđã lượng tử sau đó được đặt theo trật tự zic-zac
và được mã hóa thống kê theo cả phương pháp Huffman hoặc theo phương pháp số
học như trình bày trong tiêu chuẩn. Trong cả 2 trường hợp, phải cần đến một đặc
điểm kỹ thuật của bảng thứ hai để xác định ghi mã thống kê. Một lần nữa người sử
dụng có thể thay đổi bảng này đểđiều khiển chỉ tiêu nén.
Bước cuối cùng của quá trình mã hóa là tập hợp dữ liệu nén và đặc điểm kỹ
thuật của bảng vào một dòng bit một chiều theo định dạng xen kẽ, điều này được
minh họa trên hình 5.10. Các phần khác nhau của dòng bit xen kẽ bị làm mất tính
tuyến tính bởi các mã đã đánh dấu, các mã này bao gồm hai byte- byte thứ nhất là
tất cả các số 1 (0xFF trong mã HEX) và byte thứ hai là bất cứ giá trị nào khác ngoài
0 hoặc 0xFF.(Lưu ý rằng nếu một byte 0xFF xảy ra trong dữ liệu của dòng bit, nó sẽ
được mã hóa như là 0xFF00 để tránh bị coi như là một dấu hiệu). Các dấu này trông
giống như các mã giải thoát đã được mô tả cho RLE trong phần 5.3.1.1
I F Header Quét 1 Quét 2 Quét n I
O O ….. O
S S khung E
S Header Dữ liệu mã
O
S quét hóa entropy
Hình 5.10. Định dạng xen kẻ JPEG
145
----------------------- Page 15-----------------------
Chương 5: Nén dữ liệu audio và video
Byte thứ hai của dấu hiệu xác định kiểu dấu hiệu và một vài kiểu dấu hiệu có
các thông số bổ sung kèm theo. Trong trường hợp này hai byte đầu tiên sau dấu hiệu
luôn chỉ rõ độ dài của khối thông số tiếp theo. Vì vậy, ví dụ một header của khung
hình có một dấu hiệu đặc biệt được xác định, và sau đó một thông sốđộ dài sẽ chỉ rõ
có thêm bao nhiêu byte trong header. Đây là một phương pháp thông dụng để xác
định các header của dòng bit.
Như minh họa trên hình 5.10, dữ liệu của hình đã mã hóa cho một hình đơn (
khung hình) được truyền đi trong khối được gọi là quét, (đối với các định dạng DCT
liên tục) bao gồm tất cả thành phần của ảnh dưới dạng được chèn. Các đặc điểm kỹ
thuật của bảng được phát đi trước tiên, vì vậy chúng có thểđáp ứng cho quá trình
giải nén dữ liệu quét xảy ra sau này. Header của khung hình và header quét có chứa
chi tiết định dạng ảnh và quá trình giải nén của nó.
Nén JPEG có thể thực hiện nén dữ liệu ảnh với bộ phân giải tự nhiên cao,theo
tỉ lệ 10:1 hoặc hơn với sự suy giảm có thể nhìn thấy rõ rệt. Một vài ảnh có thểđược
nén nhiều còn một vài ảnh khác có thểđược nén ít và tất nhiên, các điều kiện nhìn
cũng sẽảnh hưởng đến cấp độ nén có thể chấp nhận được.
5.4.2 M-JPEG
Định dạng giao diện JPEG hỗ trợ cho nhiều quá trình quét trong một khung
hình và nếu các quá trình quét tương ứng với các khung hình của một dòng ảnh
động. Tức là khi ấy ảnh động được nén. Do một dòng chuyển động thường phải
chịu sự suy giảm ảnh nhiều hơn một ảnh thường bởi vì hiệu ứng trung bình của
khung hình có thểđạt được trong nhiều trường hợp là rất nhiều hơn cả tỉ lệ nén 10:1
đã đề cập ở trên. Phương pháp này đôi khi được sử dụng do có thể thực hiện những
ý đồ nén quan trọng với quá trình xử lý đơn giản hơn so với hệ thống nén chuyển
động phức tạp như MPEG. Đây được gọi là JPEG chuyển động hay M-JPEG. Bởi vì
tiêu chuẩn JPEG được sử dụng chỉ cho hình nên có không có phần cung cấp cho
thành phần audio được yêu cầu cùng với ảnh động.
5.4.3 MPEG
Nén JPEG quan tâm đến nén sự dư thừa không gian trong các ảnh nhưng
không chú ý tới bất cứ sự dư thừa nào tồn tại giữa các khung hình liên tục của một
dòng ảnh động. Một tập đoàn nghiên cứu khác IEC/ISO, tập đoàn chuyên gia ảnh
động (MPEG) được thành lập để chuyên giải quyết vấn đề này và cho đến nay họđã
chuẩn hóa hai định dạng: MPEG-1 Và MPEG-2 .Sự khác nhau giữa tiêu chuẩn này
nằm ở tốc độ dữ liệu và chất lượng ảnh – MPEG-1 được thiết kế cho tốc độ truyền
dữ liệu tới tận 1,5 Mb/s và hoạt động trong giới hạn này đểđạt được các ảnh có chất
lượng tốt nhất có thể. MPEG-2 hoạt động với tốc độ dữ liệu tới 20 Mb/s và cho chất
ảnh cao hơn; nó được sử dụng cho ảnh của hệ thống HDTV cũng như trong hệ
146
----------------------- Page 16-----------------------
Chương 5: Nén dữ liệu audio và video
thống ATV Grand Alliance đã được chuẩn hóa bởi ATSC và trong truyền hình
quảng bá phát vệ tinh. Ởđây sẽ bàn đến phiên bản của MPEG-2.
Nén MPEG áp dụng cho tất cả các quá trình như của JPEG bao gồm DCT,
lượng tử hóa, mã entropy và cộng thêm bù chuyển động để nén dư thừa xen kẽ
khung hình. Như với JPEG, các quá trình này được thực hiện theo cách thức rất linh
hoạt, cho phép người sử dụng điều chỉnh nén để phù hợp với những ứng dụng
chuyên biệt và nội dung của ảnh.
Khoảng
cách dòng
Dòng
quét
Mẫu tín hiệu chói Mẫu tín hiệu CB
Mẫu tín hiệu C C , C cùng vị trí
R B R
Hình 5.11. Mô hình lấy mẫu không gian MPEG-2
MPEG-2 sử dụng quá trình lấy mẫu con các thành phần hiệu màu theo tỉ lệ 2:1
theo cả hàng dọc và hàng ngang. Nó khác với quá trình lấy mẫu con của ITU-R
Ree.BT.601,chỉ lấy mẫu con theo hang ngang. Với lý do này, và cũng để thừa nhận
là tốc độ dữ liệu của độ chói bị giảm xuống bởi một hệ số 2 khác so với tỉ lệ 4:2:2,
lấy mẫu con MPEG-2 được gọi là 4:2:0. Mô hình lấy mẫu không gian được minh
họa trên hình 5.12. Các mẫu CR và CB có cùng vị trí không gian nhưng vị trí nó bị
dịch chuyển đi một nửa độ cao của dòng so với các mẫu độ chói. Điều này được
thực hiện để các vị trí lấy mẫu độ chói sẽ như nhau cho cả nguồn quét cách dòng,
hoặc có thể tăng dần; tuy nhiên với yêu cầu là giá trị của mẫu phải được nội suy từ
những mẫu lấy đồng thời với mẫu độ chói.
Do cần thiết phải giảm mô hình lấy mẫu thành khối 8x8 cho DTC và quá trình
xử lý bù ảnh động, quá trình lấy mẫu con 4:2:0 cần đến một quan niệm là khối khác:
147
----------------------- Page 17-----------------------
Chương 5: Nén dữ liệu audio và video
khối lớn .Đây là một nhóm 2x2 gồm khối độ chói 8x8 (vì vậy sẽ là 16x16) có liên
quan đến 2 khối mẫu các thành phần hiệu màu 8x8, một cho C và một cho C B . Hầu
R B
hết quá trình xử lý MPEG-2 đều thực hiện với khối lớn do chúng là đơn vị không
gian nhỏ nhất có thểđược biểu thị bởi một số tích phân của các khối 8x8 cho tất cả
các thành phần tín hiệu.
I B P B P B P B I
1 2 3 4 5 6 7 8 9
1 3 2 5 4 7 6 9 8
Hình 5.12. Thứ tự khung MPEG
Hình 5.12. Biểu diễn mô hình lấy mẫu không gian
Với phần bù chuyển động, mỗi khung hình đều được dựa vào vị trí sai từ
khung hình trước, song phải bắt đầu quá trình khung hình thứ nhất. Vì vậy, MPEG-2
cung cấp các khung hình hoàn toàn tự mã hóa giống nhưảnh của JPEG. Các khung
hình này được gọi là khung hình 1. Các khung hình được dựđoán từ khung hình
trước bằng bù chuyển động được gọi là khung hình P. Một kiểu khung hình thứ ba
cũng được cung cấp dựa vào dựđoán từ khung hình trước và khung hình tiếp theo –
đây được gọi là dựđoán hai hướng. Nhưng khung hình này được gọi là khung hình
B. Khung hình B có thểđược nén thậm chí nhiều hơn khung hình P nhưng yêu cầu
phải có một khung hình mới ở bộ giải mã trước khi khung hình B được giải nén, do
vậy phải sử dụng cách thức truyền các khung hình không theo thứ tự trong dòng
truyền. Đây cũng không phải là vấn đề quá khó, trừ phi phải cần lưu trữ nhiều hơn ở
máy thu và cộng thêm khoảng trễ vào quá trình nén và giải nén. Tiêu chuẩn cung
cấp cho đặc điểm này và ứng dụng của nó được xác định ở thời điểm mã hóa.
Hình 5.13 là sơđồ một chuỗi khung hình, minh họa cách sử dụng của khung
hình I-P và B và trật tự truyền xảy ra. Do I là các khung hình được nén ít nhất, nên
ứng dụng của nó phải được tối thiểu hóa đểđạt được tốc độ dữ liệu thấp nhất nhưng
I vẫn yêu cầu theo định ký cho dòng video để bản thân nó có thể phục lại sau khi
chuyển mạch kênh hoặc ngưng hoạt động do lỗi. Tiêu chuẩn nêu rõ, ít nhất cứ 133
148
----------------------- Page 18-----------------------
Chương 5: Nén dữ liệu audio và video
khung hình sẽ xuất hiện khung hình I-hầu hết các hệ thống đều cung cấp số khung
hình nhiều hơn như vậy .Điều này được xác định ở bộ mã hóa.
Nén phần lỗi
dự báo
Đầu vào DCT Lượng tử Mã hoá Video đã
video hóa dòng bit mã hóa
Vector chuyển động
Đánh giá Bù chuyển Lượng tử DCT
chuyển động động hóa ngược ngược
Lưu trữ
khung hình
Lưu trữ khung hình tái tạo
Hình 5.13. Quá trình xử lý MPEG
Hình 5.14 là một sơđồ khối xử lý nén MPEG-2 trình bày các nguyên lý đã đề
cập từ trước tới giờ.Quá trình xử lý được thực hiện trên khối 8x8 tại một thời điểm.
Nếu khung hình hoặc khối lớn, được ghi mã hóa trong các pixel sẽ trực tiếp vào quá
trình xử lý DTC. Đối với các khối đã ghi mã xen kẽ, bước đầu tiên là thực hiện bù
ảnh động sử dụng các khung hình mỏ neo lưu trữ từ khung hình trước khung hình
sắp tới. Kết quả này được sử dụng so sánh với các pixel đầu vào và các visai để khối
chuyển tới quá trình xử lý DCT.Ởđầu ra của DTC ,các hệ sốđược lượng tử hóa
theo bảng lượng tử. sẽ có các bảng khác nhau, phụ thuộc vào việc sử dụng ghi mã
trong hay mã xen kẽ. Kết quả của quá trình lượng tử hóa được sắp xếp theo trật tự
và sử dụng mã entropy để truyền.
Một vòng bổ sung sẽ giải mã các vi sai của DCT vì vậy, các khung hình dự trữ
được sử dụng cho bù chuyển động sau này bị suy giảm bởi quá trình lượng tử hóa từ
việc tích tụ khi các khung hình được dựđoán từ khung này đến khung khác.
Quá trình mã hóa phải có sự lựa chọn liên quan đến kiểu dựđoán khung hình
và lượng tử hóa. Những sự lựa chọn này có thểđược thực hiện dựa trên cơ sở khối
lớn, nếu cần. Vì vậy, nó trở thành một nghệ thuật để khởi động bộ mã hóa nhằm, đạt
được khả năng nén tốt nhất với tốc độ dữ liệu cho trứơc. Tham gia vào quá trình này
còn có bộ mã hóa có khả năng tựđộng hóa rất tinh xảo.
5.4.4. Video của máy tính cá nhân
Mặc dù video MPEG được sử dụng cho máy tính cá nhân và đưa ra những chi
149
----------------------- Page 19-----------------------
Chương 5: Nén dữ liệu audio và video
tiết tuyệt vời, song vẫn cần đến một phần cứng chuyên biệt, trừ trường hợp ở nhưng
máy tính cá nhân cực nhanh. Một số thuật toán nén khác nhau đã phát triển một
cách đặc biệt. ứng dụng riêng cho máy tính cá nhân. Các thuật toán này tạo ra sự
thỏa hiệp khác nhau giữa cấp độ nén và chất lựợng ảnh để giảm các yêu cầu tính
toán cho quá trình giải mã.Hầu hết các thuật toán này được thiết kế như các hệ
thống không đối xứng. Một số tiêu chuẩn đã sẵn sangf đáp ứng là Indeo của Intel,
Video cho Windows của Microsoft, Quick time của Apple (cho Macinstosh và các
máy tính cá nhân dùng Window ) và CinePark của SuperMac. Trong những trường
hợp này, phần mềm giải mã đã sẵn sàng cung ứng nhưng phần mềm giải mã hóa (và
cả phần cứng )thường là độc quyền và phải mua. Do là độc quyền nên chi tiết của
các thuật toán này không đữợc bàn đến ởđây.
5.4.5 Audio AC-3
Hệ thống audio của hệ thống ATSC ATC là một ví dụ nén audio sốđiển hình.
Hệ thống này cung cấp tới 5.1 kênh âm thanh vòm stereo chất lượng cao, với tổng
tốc độ dự liệu 385 kb/s (kênh 0.1 là kênh loa trầm phụ có tần số thấp ). Bộ mã hóa
AC-3 tạo ra một dòng bít tổng hợp có thểđược đóng gói và trộn với gói video trong
hệ thống vận chuyển ATSC.
Như trong hệ thống nén video MPEG, nén audio AC-3 được thực hiện bằng
cách chuyển đổi tốc độ dự liệu thành miền tấn số, đông thời đây cũng là mục tiêu
cho lượng tử hóa thô. Tuy nhiên, đối video,việc chuyển đổi tần số, thời gian được
thực hiện khác. Các mẫu audio đầu vào ở tấn số 48 khz được tập hợp các khối ghép
512 mẫu. Mỗi mẫu đầu vào được biểu thị thành hai trong số các khối. và bằng cách
sử dụng một loạt mờ chồng giữa các khối, khả năng nghe thấy sự ghép khối được
loại bỏ.
Mã hóa hình
bao phổ
Đầu vào Bộ lọc băng
audio PCM phân tích
Chỉđịnh bit
Lượng tử Định dạng Dòng bit đã
khung AC-3 mã hóa
Hình 5.14. Sơđồ khối bộ mã hóa AC-3
Hình 5.14 là sơđồ khối của bộ mã hóa AC-3. Các khối mẫu được chuyển
thành hệ số nhờ bộ xử lý băng của bộ lọc phân tích. Đầu ra của bộ xử lý này là một
chuỗi các hệ số trong một định dạng dấu phẩy đặc biệt .Các số mũ biểu thị phổ tín
150
----------------------- Page 20-----------------------
Chương 5: Nén dữ liệu audio và video
hiệu thô và được mã hóa riêng rẽ từ phần định trị của định dạng dấu phẩy
động.Dòng bít ởđầu ra cho mỗi trong số 6 khối audio được tập hợp thành một
khung audio biểu thị 1536 mẫu audio trước khi nén hoặc 32 ms audio. Cấu trúc của
khung được minh họa trên hình 5.17. Khung bắt đầu bằng một từđộng bộ,tiếp theo
là một header thông tin dòng bit (BSI) mô tả sự phân phối audio. Sau đó đến dự liễu
audio được nén cho 6 khối mẫu và một mã phát hiện sửa lỗi CRC ở cuối. Khung
cũng chuẩn bịđầy đủ cho dự liệu phụ trợ không bắt buộc.
I
S
ộ B Khối Khối Khối Khối Khối Khối
b
r x C
g e audio audio audio audio audio audio u R
n d A C
ồ a
Đ e 0 1 2 3 4 5
H
Hình 5.17. Cấu trúc khung AC-3
Cùng với nén, hệ thống AC-3 cũng đưa ra một vài đặc điểm thú vị khác tạo
điều kiện thuận lợi cho quá trình tái tạo âm thanh chất lượng cao. Một đặc điểm
đáng lưu ý là hệ thộng có thể có cấu hình của nén dải rộng. Trong rất nhiều hoạt
động. thường phải sử dụng nén dải rộng của audio để cải thiện vấn đề trào kệnh và
khả năng nghe được âm thanh trong các môi trường nghe kém hoặc nghe với trang
thiết bị tái tạo có công suất hạn chế . Nếu điều này được thực hiện ở cuối quá trình
chèn, nó sẽ buộc người xem phải sử dụng cùng một dải giới hạn, không cần quan
tâm đến chất lượng của thiết bị và môi trường tái tạo. Với AC-3, nén giải động xảy
ra ởđầu thu nhờ các mã nén được truyền cùng với các tín hiệu. Vì vậy, máy thu có
thể chọn số lượng nén để áp dụng . Và dải động gốc đầy đủ cũng sẵn sàng cung cấp
cho những hệ thống có khả năng tái tạo lại nó.
Một đặc đỉểm khác của AC-3 là tiêu chuẩn hóa âm lượng. Khi chuyển mạch
giữa các nguồn, hoặc các kênh tín hiệu khác nhau, người ta thường gặp phải sự thay
đổi âm lượng thành phần đối thoại của audio. Điều này rất khó kiểm soát bởi vì các
ứng dụng khác nhau cần đến các số lượng khoảng trống trên mức đối thoại để phù
hợp với âm thanh khác. Tiêu chuẩn AC-3 đặt ra yêu cầu phải có một thông sốđược
truyền cùng với audio để nhận dạng mức mà tại đó đối thoại được thiết lập trong
toàn bộ dải động audio.Giá trị này có thểđược sử dụng ở máy thu để tiêu chuẩn hóa
tất cả các kênh, vì vậy đối thoại luôn có cùng âm lượng.
151
Bạn đang đọc truyện trên: Truyen247.Pro