1. Trang chủ
  2. » Luận Văn - Báo Cáo

Một số phương pháp nén âm thanh và xây dựng chương trình thử nghiệm

75 33 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 75
Dung lượng 1,37 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Sự phát triển ồ ạt này đã dẫn tới ngành công nghệ phần cứng không thể đáp ứng được những đòi hỏi về lưu trữ, đồng hành với sự phát triển này đó chính là mạng Internet với số lượng người

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 KHOA CÔNG NGHỆ THÔNG TIN -

NGUYỄN THỊ NAM

MỘT SỐ PHƯƠNG PHÁP NÉN ÂM THANH VÀ XÂY DỰNG CHƯƠNG TRÌNH

THỬ NGHIỆM

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC

Chuyên ngành: Tin học

Người hướng dẫn khoa học ThS LƯU THỊ BÍCH HƯƠNG

Trang 2

LỜI CẢM ƠN

Lời đầu tiên em xin chân thành cảm ơn sự hướng dẫn tận tình của cô

giáo Th.S Lưu Thị Bích Hương, khoa Công nghệ thông tin, trường Đại học

Sư phạm Hà Nội 2

Trong suốt thời gian thực hiện khóa luận, mặc dù rất bận rộn trong công việc nhưng cô vẫn dành nhiều thời gian và tâm huyết trong việc hướng dẫn em Cô cung cấp cho em rất nhiều hiểu biết về một lĩnh vực mới khi em mới bắt đầu bước vào thực hiện khóa luận

Em cũng xin chân thành cảm ơn các thầy, cô giáo trong khoa Công nghệ thông tin, cũng như các thầy, cô giáo trong trường đã giảng dạy và giúp

đỡ em trong 4 năm học vừa qua Chính các thầy, cô giáo đã xây dựng cho chúng em những kiến thức nền tảng và kiến thức chuyên môn để em có thể hoàn thành khóa luận tốt nghiệp và chuẩn bị cho những công việc của mình sau này

Cuối cùng em xin bày tỏ lòng biết ơn tới gia đình và bạn bè đã giúp đỡ động viên em rất nhiều trong suốt quá trình học tập để em có thể thực hiện tốt khóa luận này

Tuy đã có những cố gắng nhất định nhưng do thời gian và trình độ có hạn nên chắc chắn khóa luận này còn nhiều thiếu sót và hạn chế Kính mong nhận được sự góp ý của thầy, cô giáo và các bạn

Hà Nội, tháng 05 năm 2014

Sinh viên

Nguyễn Thị Nam

Trang 3

LỜI CAM ĐOAN

Tên em là: NGUYỄN THỊ NAM

Sinh viên lớp: K36 – Tin học, khoa Công nghệ thông tin, trường Đại học Sư phạm Hà Nội 2

Em xin cam đoan:

1 Đề tài “Một số phương pháp nén âm thanh và xây dựng chương trình thử nghiệm” là sự nghiên cứu của riêng em, dưới sự hướng dẫn của cô

giáo Th.S Lưu Thị Bích Hương

2 Khóa luận hoàn toàn không sao chép của tác giả nào khác

Nếu sai em xin hoàn toàn chiu trách nhiệm

Hà Nội, tháng 05 năm 2014 Người cam đoan

Nguyễn Thị Nam

Trang 4

MỤC LỤC

MỞ ĐẦU 1

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 4

1.1 Lý thuyết xử lý tín hiệu số 4

1.1.1 Tín hiệu và hệ thống rời rạc 4

1.1.2 Phép biến đổi Fourier rời rạc 9

1.2 Các khái niệm về âm thanh 11

1.2.1 Sóng cơ 11

1.2.2 Sóng âm 14

1.3 Nén âm thanh 21

CHƯƠNG 2: MỘT SỐ PHƯƠNG PHÁP NÉN ÂM THANH 23

2.1 Các phương pháp nén không có tổn thất 23

2.1.1 Mã hóa Huffman 25

2.1.2 Mã Huffman sửa đổi 27

2.1.3 Mã hóa số học 28

2.1.4 Giải thuật Lempel-Ziv-Welch (LZW) 28

2.2 Các phương pháp nén có tổn thất 31

2.2.1 Các phương pháp nén âm thanh đơn giản 33

2.2.2 Nén âm thanh dùng mô hình âm - tâm lý 33

2.2.3 Nén âm thanh MPEG 34

2.3 Nén âm thanh file *.WAV theo chuẩn MPEG 36

2.3.1 Tập tin dạng sóng (WAVE FILE) 36

2.3.2 MPEG 43

Trang 5

CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM 59

3.1 Bài toán 59

3.2 Xây dựng chương trình 59

3.2.1 Giới thiệu chương trình 59

3.2.2 Thiết kế giao diện 59

3.2.3 Kết quả thực nghiệm 63

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 65

1 Kết luận 65

2 Hướng phát triển 65

TÀI LIỆU THAM KHẢO 67

Trang 6

DANH MỤC CÁC HÌNH

Hình 2.1: Định dạng dòng dữ liệu bit 26

Hình 2.2: Ngưỡng che trên thước đo băng giới hạn 34

Hình 2.3: Định dạng dòng dữ liệu bit 35

Hình 2.4: Khả năng của âm thanh MPEG ứng với các tần số lấy mẫu tại các bit khác nhau 45

Hình 2.5: Hiệu ứng che (Masking) 46

Hình 2.6: Đồ thị ngưỡng nghe với các tần số khác nhau 46

Hình 2.7: Đồ thị thí nghiệm che tần số với âm thử có tần số 1KHz 47

Hình 2.8: Đồ thị thí nghiệm che tần số với âm thử có tần số 1KHz 48

Hình 2.9: Đồ thị thí nghiệm che nhất thời cho các mức to khác nhau của âm thử 48

Hình 2.10: Đồ thị thí nghiệm che nhất thời cho âm thử với các tần số khác nhau 49

Hình 2.11: Lược đồ mã hóa âm thanh theo Perceptual Subband 50

Hình 2.12: Tỉ số nén cần phải đạt tới 100% chất lượng CD với các bộ mã hóa và giải mã khác nhau 53

Hình 3.1: Form giao diện chương trình 60

Hình 3.2: Form chọn tệp tin cần nén 60

Hình 3.3: Form tệp tin âm thanh cần nén 61

Hình 3.4: Form chọn địa chỉ cần lưu file nén 61

Hình 3.5: Form định chỉ số tốc độ bit của tập tin đích 62

Hình 3.6: Form chọn tần số lấy mẫu của tập tin đích 62

Hình 3.7: Giao diện của quá trình nén thành công 63

Hình 3.8: Thông tin của tập tin trước khi nén 63

Hình 3.9: Thông tin của tập tin sau khi nén 64

Trang 7

DANH MỤC CÁC BẢNG

Bảng 2.1: Cấu trúc của WAVE FILE 40Bảng 2.2: Chi tiết về các lớp 54Bảng 2.3: Độ phân giải các lớp 57

Trang 8

DANH MỤC CÁC TỪ VIẾT TẮT

DFT Discrete Fourier Transform DFS Discrete Fourier Series DCT Discrete Cosine Transform FFT Fast Fourier Transform PCM Pulse Code Modulation WAV WAVE: WAVE Form Audio File Format FLAC Free Lossless Audio Codec

ALAC Apple Lossless Audio Codec APE Monkey‟s Audio

MP3 Moving Picture Experts Group 1 Layer 3 ACC Advanced Audio Coding

WMA Windows Media Audio LZW Lempel Ziv Welch DRM Digita Rights Management LPC Linear Predictive Coding CELP Code Excited Linear Predictor API Applycation Program Interface RIFF Resource Interchange File Format DVD Digital Versatile Disc

MDK Multimedia Development Kit SDK Software Development Kit

Trang 9

MỞ ĐẦU

1 Lý do chọn đề tài

Công nghệ thông tin là ngành công nghiệp mũi nhọn của thế giới nói chung và của Việt Nam nói riêng, nó đã phát triển mạnh mẽ không ngừng trong những năm gần đây Khi đời sống được nâng lên, khoa học kỹ thuật phát triển, nhu cầu về giải trí cũng đa dạng lên, các loại hình giải trí không ngừng gia tăng và ngày càng phong phú, đa dạng các loại hình giải trí như: Trò chơi điện tử, nghe nhạc, xem phim và đặc biệt là những trò chơi dạng không gian ba chiều Sự phát triển ồ ạt này đã dẫn tới ngành công nghệ phần cứng không thể đáp ứng được những đòi hỏi về lưu trữ, đồng hành với sự phát triển này đó chính là mạng Internet với số lượng người tham gia truy cập ngày càng lớn, nhu cầu của họ thì ngày càng phong phú và đa dạng về tất cả các loại hình nói trên Do đó tốc độ truy cập, tốc độ truyền tải trên mạng được quan tâm hơn để người dùng không phải sốt ruột ngồi chờ tải những trang web mà mình truy cập, không phải cảm thấy khó chịu khi tải xuống những tập tin âm thanh và những bài hát mà họ ưa thích vì đường truyền quá chậm trong khi công nghệ phần cứng đã phát triển mạnh Chính vì vậy các nhà nghiên cứu phần mềm đã chú ý đến việc phát triển phần mềm để hỗ trợ phần cứng

Họ đã tạo ra những chương trình, phần mềm hỗ trợ tích cực cho phần cứng, từ

đó đã ra đời những phần mềm nén âm thanh, nén hình ảnh, nén video, tách âm thanh từ những tệp tin video… để tạo ra những dạng âm thanh, hình ảnh, video như: MINDI, MPEG, MP3, MP4…; những tệp tin ảnh dạng: GIF, JPEG… với dung lượng lưu trữ vô cùng nhỏ mặc dù chất lượng có giảm đi đôi chút nhưng không đáng kể so với những gì nó đạt được để truyền tải, truy cập nhanh hơn

Trong nghiên cứu về nén âm thanh, người ta đã từng biết đến các chuẩn nén khá phổ biến như: MPEG, MP3, JPEG Hiện nay, con người đã nghiên cứu và đưa ra rất nhiều thuật toán nén nhằm đáp ứng các yêu cầu khác nhau

Trang 10

trong thực tiễn Xuất phát từ những yêu cầu đó, tính năng của mỗi chương trình nén cũng khác nhau Tuy nhiên, tất cả các thuật toán nén đó vẫn phải dựa trên các tiêu chí như: tỉ lệ nén, tốc độ nén, khả năng nén, hiệu suất nén và chất lượng âm thanh sau khi nén

Từ hướng tiếp cận trên, đồng thời với mong muốn tiếp cận với các công nghệ mới, bổ sung các kiến thức về khoa học kỹ thuật hiện đại, cũng như tổng kết những kỹ năng, kiến thức trong suốt quá trình học tập tại trường,

em xin chọn đề tài “Một số phương pháp nén âm thanh và xây dựng chương trình thử nghiệm”

2 Mục tiêu nghiên cứu

Mục tiêu của luận văn là tìm hiểu về các phương pháp mã hóa và nén

âm thanh Đồng thời xây dựng một chương trình nén âm thanh file *.WAV theo chuẩn MPEG trên nền Framework.Net với ngôn ngữ lập trình C#

3 Nhiệm vụ nghiên cứu

Nghiên cứu, tìm hiểu một số phương pháp nén âm thanh cơ bản Đi sâu nghiên cứu phương pháp nén âm thanh theo chuẩn MPEG

4 Đối tượng nghiên cứu

Đối tượng nghiên cứu của khóa luận là các phương pháp nén âm thanh

5 Phạm vi nghiên cứu

Chương trình nén âm thanh được xây dựng để ứng dụng trong việc tạo

ra các phần mềm hỗ trợ phần cứng Nén âm thanh được sử dụng trong mã hóa MP3, internet radio, đĩa CD nhằm giảm kích thước của tín hiệu Trong phạm vi khóa luận này, em đi nghiên cứu về một số phương pháp nén âm thanh cơ bản, đồng thời xây dựng chương trình nén nhằm giảm dung lượng của một tập tin âm thanh có phần mở rộng là WAV và thu được một tập tin khác sau khi nén có phần mở rộng là MP3

Trang 11

6 Phương pháp nghiên cứu

a Phương pháp nghiên cứu lý luận

Nghiên cứu qua việc đọc sách, báo và các tài liệu liên quan nhằm xây dựng cơ sở lý thuyết và các biện pháp cần thiết để giải quyết các vấn đề của khóa luận

b Phương pháp chuyên gia

Tham khảo ý kiến của các chuyên gia để có thể thiết kế chương trình phù hợp với yêu cầu thực tiễn

c Phương pháp thực nghiệm

Thông qua quan sát thực tế, yêu cầu của cơ sở, những lý luận được nghiên cứu và kết quả đạt được qua những phương pháp trên

7 Ý nghĩa khoa học và thực tiễn

Ý nghĩa khoa học: Thuật toán nén âm thanh file WAVE theo chuẩn MPEG được tìm hiểu, nghiên cứu sẽ bổ sung thêm một phương pháp về nén

âm thanh

Ý nghĩa thực tiễn: Chương trình thực nghiệm nếu thành công sẽ góp một phần nhỏ trong lĩnh vực nén âm thanh nhằm giảm tốc đô truy cập, tốc độ truyền tải trên mạng, để người dùng không phải cảm thấy khó chịu khi tải xuống những tập tin âm thanh và những bài hát mà họ ưa thích vì đường truyền quá chậm

8 Bố cục của khóa luận

Ngoài phần mở đầu, kết luận và tài liệu tham khảo, khóa luận gồm các chương sau:

Chương 1: Cơ sở lý thuyết

Chương 2: Một số giải thuật nén âm thanh

Chương 3: Xây dựng chương trình thử nghiệm

Trang 12

là hàm của một hay vài biến độc lập Ví dụ: Tín hiệu âm thanh là sự thay đổi

áp suất không khí theo thời gian, tín hiệu hình ảnh là hàm độ sáng theo hai biến không gian

Theo qui ước chung, tín hiệu được coi là hàm theo một biến độc lập và

là biến thời gian

Tín hiệu số (Digital signal) là tín hiệu rời rạc (theo biến độc lập thời gian) đồng thời có biên độ cũng rời rạc hóa (lượng tử hóa)

b Đáp ứng xung trong hệ tuyến tính bất biến

Tín hiệu vào x(n) được gọi là tác động, tín hiệu ra y(n) được gọi là đáp ứng của hệ xử lý Ta có quan hệ:

 ( ))

(n T x n

Trong đó: T là phép biến đổi x ( n )  y ( n )

Một hệ thống là tuyến tính nếu thỏa nguyên lý xếp chồng: Giả sử y1(n)

và y2(n) là đáp ứng của hệ tương ứng với tác động vào là x1(n) và x2(n) Hệ là tuyến tính nếu và chỉ nếu:

a.x1(n) b.x2(n) a.y1(n) b.y2(n)

Như vậy, một hệ tuyến tính có thể xử lý tổng tác động như là các tác động này được xử lý độc lập, sau đó các đáp ứng tương ứng sẽ được cộng lại

Trang 13

Một tín hiệu x(n) bất kỳ có thể biểu diễn:

Trong đó: hk (n) gọi là đáp ứng xung của hệ đối với tác động là xung (n-k)

Theo công thức trên, hệ tuyến tính vẫn còn tùy thuộc vào thời điểm tác động k Một hệ tuyến tính là bất biến (theo thời gian) nếu tín hiệu vào bị dịch

đi một đoạn thời gian là k thì tín hiệu ra cũng chỉ dịch một đoạn k, tức mọi

hk(n) trở thành h(n-k)

Nhƣ vậy mọi hệ tuyến tính bất biến đều đƣợc đặc trƣng hoàn toàn bằng đáp ứng h(n), biết h(n) ta hoàn toàn tính đƣợc đáp ứng y(n) của tín hiệu vào x(n)

Công thức trên còn đƣợc gọi là Tổng chập của hai tín hiệu x(n) và h(n)

và còn đƣợc ký hiệu:

) (

* ) ( ) ( n x n h n

c Tính chất của tổng chập của hệ tuyến tính bất biến

 Tính giao hoán:

) (

* ) ( ) ( n x n h n

x( ) ( )

) (

* ) ( n x n h

h( ) ( )

 Tính phân phối:

 ( ) ( )  ( ) * ( ) ( ) * ( )

* ) ( n h1 n h2 n x n h1 n x n h2 n

Trang 14

Như vậy, từ tính chất giao hoán ta thấy rằng: Hai hệ tuyến tính bất biến

có đáp ứng xung là h1(n) và h2(n) được mắc nối tiếp nhau sẽ tương đương với một hệ có đáp ứng xung:

) (

* ) ( )

( n h1 n h2 n

và thứ tự mắc nối tiếp không quan trọng

Từ tính chất phân phối, hai hệ tuyến tính bất biến mắc song song nhau

sẽ tương đương với một hệ có đáp ứng xung bằng tổng hai đáp ứng xung:

) ( ) ( ) ( n h1 n h2 n

)()(

)()

(

2

1

n y n h

n h n

) ( ) ( )

( )

( n h1 n h2 n y n

d Hệ nhân quả (causal system)

Các hệ có tín hiệu ra chỉ phụ thuộc vào tín hiệu trong quá khứ và hiện tại được gọi là các hệ nhân quả, tức phải có tác động vào (nguyên nhân) thì mới có tác động ra (kết quả)

Định lý: Hệ tuyến tính bất biến là nhân quả nếu đáp ứng xung h(n) = 0

( )

(

k

k h k n x n

( )

(

N

k

k h k n x n

y

Trang 15

Mở rộng cho tín hiệu: tín hiệu nhân quả là tín hiệu bắt đầu khác 0 từ thời điểm 0

Định lý: Một hệ tuyến tính bất biến là ổn định nếu và chỉ nếu đáp ứng

xung thỏa mãn điều kiện sau: 

f Phương trình sai phân tuyến tính hệ số hằng

Ta chỉ khảo sát các hệ thống tuyến tính bất biến và có thể đặc trưng bởi các phương trình sai phân có hệ số hằng Mối liên hệ giữa tín hiệu vào x(n) và tín hiệu ra y(n) có dạng như sau:

k y n k b x n r a

)()

(

Trong đó: Tập các hệ số ak và br đặc trưng cho hệ tuyến tính bất biến

g Biểu diễn các hệ rời rạc trong miền tần số

 Phép biến đổi Fourier của tín hiệu rời rạc:

Với tín hiệu vào x(n)= ejn (có tần số =2f) và đáp ứng xung h(n), ta

có tín hiệu ra:

) ( )

( n ejn H ej

Hàm H(ej) gọi là đáp ứng tần số của hệ, biểu diễn đáp ứng của hệ thống theo hàm của tần số đối với dãy tác động ejn, nó cho biết sự thay đổi về biên độ và pha theo tần số khi tín hiệu đi qua hệ

H(ej) là một hàm số phức và có thể biểu diễn theo phần thực và ảo:

Trang 16

H(ej)= Hr(ej)+ jHi(ej)

Hoặc theo biên độ và pha:

H(ej)= | H(ej)| ejargH(ej ) (02)

H(ej) là hàm liên tục theo  và tuần hoàn với chu kỳ 2 Ta có thể khai triển nó thành chuỗi Fourier, ngược lại h(n) có thể được tính toán từ H(ej) bằng các công thức tính hệ số khai triển chuỗi Fourier:

2

1)(

e n h e

k e A t

T jk

T A

0

0

) / 2 (

.)

e k x e

 Phổ biên độ, phổ pha và phổ năng lượng:

Do X(f) là một hàm phức nên ta có thể biểu diễn dưới dạng modul và argument:

X (f) = |X (f)| ej arg [ X (f)]

Trang 17

Hàm modul X(f) theo f được gọi là phổ biên độ của tín hiệu x(n), còn hàm (f)=arg[X(f)] được gọi là phổ pha

Cuối cùng (f)=|X(f)|2 được gọi là phổ năng lượng, biểu diễn sự phân

bố theo tần số của năng lượng tín hiệu x(n)

h Định lý lấy mẫu Shannon

Một tín hiệu tương tự xa(t) có dải phổ hữu hạn với giới hạn trên là

Fmax(Hz), tức là phổ bằng 0 khi f nằm ngoài dải (- Fmax,Fmax) Ta sẽ chỉ có thể khôi phục lại xa(t) một cách chính xác từ các mẫu xa(n.Ts) nếu như:

Fs 2Fmax

hay Ts 1/(2Fmax)

Khôi phục lại tín hiệu tương tự từ tín hiệu lấy mẫu:

Ta có thể khôi phục lại tín hiệu xa(t) bằng cách cho tín hiệu lấy mẫu đi qua một mạch lọc thông thấp lý tưởng (low-pass filter) có đáp ứng tần số

Hlp(f) với tần số cắt là fc = Fs/2 Phổ của tín hiệu xa(t) sẽ được lọc lại chính xác chỉ với điều kiện: Fs  2Fmax

Nghĩa là thỏa mãn định lý lấy mẫu Khi đó trong không gian tần số:

Xa(f) = X(f).Hlp(f) Còn trong không gian thời gian:

Xa(t) = x(nTs)*hlp(t) Trong đó: hlp(t) là đáp ứng xung của mạch lọc thông thấp lý tưởng có biên độ dải thông là Ts

1.1.2 Phép biến đổi Fourier rời rạc

a Chuỗi Fourier rời rạc của tín hiệu rời rạc tuần hoàn

Tín hiệu tuần hoàn xp(n) là tuần hoàn với chu kỳ N nếu:

xp(n)= xp(n+N), với mọi n Đối với tín hiệu rời rạc, ta khai triển Fourier theo hàm:

k(n) = ej(2k/N)n, k=0,1, 2

Trang 18

Các hàm điều hòa phức rời rạc chỉ có N tín hiệu phân biệt nhau vì tín hiệu sai khác nhau là bội của N thì đều nhƣ nhau:

k(n) = k  N(n) = k  2N(n) = ej(2k/N)nĐối với tín hiệu tuần hoàn và rời rạc xp(n), ta có chuỗi Fourier rời rạc (DFS):

b Biến đổi Fourier rời rạc của tín hiệu có độ dài hữu hạn (DFT: Discrete Fourier Transform)

Việc biểu diễn Fourier cho tín hiệu rời rạc có độ dài hữu hạn gọi là

phép biến đổi Fourier rời rạc (DFT)

Tín hiệu có độ dài hữu hạn là tín hiệu có giá trị khác 0 trong một khoảng hữu hạn thời gian nào đó và bằng 0 trong khoảng còn lại Đây là loại tín hiệu tồn tại trong thực tế vì chúng ta chỉ có thể quan sát mọi tín hiệu trong một khoảng thời gian là hữu hạn từ N1 đến N2 Để đơn giản hoá, ta có thể qui ƣớc tín hiệu x(n) tồn tại trong khoảng thời gian: 0  n  M-1, tức là:

M = N2 - N1+1

Với tín hiệu x(n) này đƣợc dùng nhƣ là một chu kỳ tín hiệu, ta có thể xây dựng tín hiệu xp(n) tuần hoàn với chu kỳ N bằng cách xếp chồng tuần hoàn:

Trang 19

x n = xp(n) 0 ≤ n ≤ N − 1

0 n còn lại

c Phép biến đổi nhanh fourier

Fast Fourier Transform (FFT) là một giải thuật rất hiệu quả để tính DFT Công thức biến đổi DFT:

 10

/ ) 2 (

).

( )

(

N

k

N kn j

e n x k

0

) 1 2 ( 2

)

12()

2()

nk

W n x k

1 2 /

0 2

)

()

nk N

ev n W x n W x

k X

) ( )

( )

Các môi trường chất khí, chất lỏng, chất rắn là môi trường đàn hồi

Trang 20

 Sự hình thành sóng trong môi trường đàn hồi:

Do tính chất của môi trường đàn hồi nên nếu tác dụng lên phân tử nào

đó của môi trường thì phân tử này rời khỏi vị trí cân bằng bền

Do tương tác, các phân tử lân cận một mặt kéo phân tử A về vị trí cân bằng, mặt khác nhận một phần năng lượng do phân tử A truyền sang, do đó cũng dao động theo, hiện tượng này xảy ra liên tiếp tạo thành sóng Sóng đàn hồi (sóng cơ) là sự lan truyền dao động trong môi trường đàn hồi Sóng cơ không thể truyền được trong chân không, vì chân không không phải là môi trường đàn hồi

Trong khi truyền dao động, các phân tử của môi trường không di chuyển theo các dao động được lan truyền mà chỉ dao động quanh vị trí cân bằng của nó

 Một số khái niệm về sóng:

Nguồn sóng: Là ngoại vật gây ra kích động sóng

Tia sóng: Là phương truyền sóng

Môi trường sóng: Là không gian mà sóng truyền qua

Mặt sóng: Là mặt chứa những điểm (phân tử) có cùng trạng thái dao

động tại một thời điểm nào đó Tia sóng luôn vuông góc với mặt sóng

Sóng cầu: Mặt sóng là những mặt cầu phân bố đều trong không gian,

tâm là nguồn sóng Trong môi trường đồng chất và đẳng hướng sẽ có sóng cầu Đối với sóng cầu tia sóng trùng với bán kính của mặt cầu

Sóng phẳng: Mặt sóng là những mặt phẳng song song nhau, tia sóng

vuông góc với mặt sóng Nếu nguồn sóng ở rất xa môi trường đang xét thì mặt sóng có thể coi là những mặt phẳng song song

Sóng dọc: Là sóng trong đó các phân tử của môi trường dao động

quanh vị trí cân bằng trên phương trùng với tia sóng Khi có sóng dọc, trên phương của tia sóng các phân tử của môi trường khi thì bị nén chặt, khi thì giãn ra làm cho các phân tử của môi trường có chỗ dày, chỗ thưa

Trang 21

Sóng ngang: Là sóng trong đó các phân tử của môi trường dao động

quanh vị trí cân bằng trên phương vuông góc với tia sóng

 Nguyên nhân gây ra sóng ngang và sóng dọc:

Tùy tính chất của môi trường đàn hồi mà trong đó có thể xuất hiện sóng ngang hay sóng dọc

+ Khi một lớp của môi trường bị lệch đối với lớp khác làm xuất hiện các lực đàn hồi có xu hướng kéo lớp bị lệch về vị trí cân bằng thì trong môi trường đó có thể truyền được sóng ngang Vậy vật rắn là một môi trường có tính chất đó

+ Nếu trong môi trường không có các lực đàn hồi khi các lớp song song bị lệch đối với nhau thì sóng ngang không thể hình thành được Chất lỏng và chất khí là những môi trường đó

Khi bị biến dạng nén hay căng mà trong môi trường có các lực đàn hồi xuất hiện thì trong môi trường đó có thể truyền được sóng dọc Chẳng hạn khi

bị nén, chất lỏng hay chất khí sẽ tăng áp suất, lực nén giữ vai trò lực đàn hồi

Như vậy trong chất lỏng và chất khí chỉ có sóng dọc truyền được, còn trong chất rắn có thể truyền được cả hai loại sóng

b Các đặc trưng của sóng

 Vận tốc truyền sóng (C):

Là quãng đường mà sóng truyền được trong một đơn vị thời gian

 Bước sóng :

Là quãng đường mà sóng truyền được sau một thời gian bằng 1 chu kỳ

T Như vậy  là khoảng cách bé nhất giữa các phân tử dao động cùng pha Theo định nghĩa ta có:  = CT

 Chu kỳ và tần số:

Chu kỳ T là thời gian cần thiết để sóng truyền được 1 bước sóng  Tần số f là số chu kỳ thực hiện được trong 1 giây:

f = 1/T (Hz)

Trang 22

y thì:

X = asin(t + y/c) Đối với sóng cầu thì biên độ a của dao động sóng tại vị trí cách nguồn bằng bán kính r, tỉ lệ nghịch với r, phương trình sóng có dạng:

X = a/r sin(t – r/c)

1.2.2 Sóng âm

a Dao động âm và sự truyền dao động

Sóng âm là một loại sóng cơ có biên độ dao động nhỏ mà thính giác nhận biết được Thí dụ: Dao động phát ra từ dây đàn, mặt trống đang rung động Sóng âm là một loại sóng cơ nên mọi khái niệm và hiện tượng về dao động và sóng cơ trên đây đều áp dụng cho sóng âm

Trong không khí cũng như trong mọi chất khí khác, những dao động truyền đi dưới dạng sóng dọc, khi đến tai người những dao động có tần số từ

16 đến 20000 Hz sẽ gây cảm giác đặc biệt về âm

Các dao động đàn hồi có tần số f > 20000 Hz là sóng siêu âm

Các dao động đàn hồi có tần số f < 16 Hz là sóng hạ âm

Mỗi âm có một tần số riêng, đơn vị của tần số là Héc (Hz) với định nghĩa: “Héc là tần số của một quá trình dao động âm trong đó mỗi giây thực hiện được một dao động”

1 Héc (Hz) = 1 dao động / 1 giây Việc phân chia sóng hạ âm, sóng siêu âm và sóng âm (âm thanh) liên quan tới khả năng sinh lý của thính giác

Trang 23

b Đơn vị vật lý của âm thanh

Âm thanh hay tiếng động mà con người nhận biết được do tác động của sóng âm lên màng nhĩ tai

Các dao động âm phát ra từ nguồn lan truyền trong môi trường đàn hồi như không khí dưới dạng sóng đàn hồi gọi là sóng âm Sóng âm đến kích động màng nhĩ tai gây cảm giác về âm, do đó cần phân biệt hai loại đại lượng về âm:

- Đại lượng âm khách quan: Những đại lượng thuần túy vật lý, không phụ thuộc vào tai người

- Đại lượng âm chủ quan: Những đại lượng tâm lý vật lý phụ thuộc vào tai người

 Đại lượng âm khách quan

Áp suất âm

Khi sóng âm tới một mặt nào đó, do các phân tử môi trường dao động tác dụng lên mặt đó một lực gây ra áp suất Áp suất ở đây là áp suất dư do sóng âm gây ra ngoài áp suất khí quyển

Trong phạm vi nghe được, áp suất âm trong khoảng từ 2.10-4 đến 2.102

bar, chênh lệch 106 lần, đó là một phạm vi rất rộng

Cường độ âm (I)

Cường độ âm ở một điểm nào đó trên phương đã cho trong trường âm

là số năng lượng âm đi qua đơn vị diện tích của mặt S vuông góc với phương truyền âm, tại điểm đó trong đơn vị thời gian

Một vài cường độ âm đáng chú ý:

Người nói thường: I = 2.10-3

W/m2 Còi ô-tô: I = 5 W/m2 Còi báo động: I = 3.000 W/m2 Trong điều kiện chuẩn (to = 20oC, áp suất 760mmHg):

Vận tốc âm trong không khí: C = 340 m/s

 = 0,00121 gr/cm3

Trang 24

 = Cp/Cv = 1,4 Trong tính toán người ta quy ước lấy âm đơn tần số f = 1000 Hz làm chuẩn để so sánh (gọi là âm chuẩn) Đối với âm chuẩn, trong phạm vi nghe được:

Áp suất âm nhỏ nhất: Pmin = 2.10-4 bar Cường độ âm nhỏ nhất: Imin = 10-16 W/cm2

Áp suất âm và cường độ âm lớn nhất mà tai người có thể chịu được là:

Pmax = 2.102bar

Imax = 10-4 W/cm2Công suất âm nhỏ nhất có thể nghe thấy được Wmin = 10-12 Watt

 Đơn vị âm chủ quan

Tai người trung bình có thể nhận được những sóng âm có tần số từ 16 đến 20000 Hz, hiệu quả này có liên quan tới khả năng sinh lý của tai người

Như vậy, âm thanh là một hiện tượng tâm lý vật lý, không phải bất cứ sóng âm nào tới tai cũng gây ra cảm giác âm thanh như nhau Âm có tần số khác nhau gây ra cảm giác khác nhau

Cường độ âm nhỏ nhất của một sóng âm xác định mà tai người nghe thấy được gọi là “Ngưỡng nghe” Âm có tần số khác nhau giá trị ngưỡng nghe cũng khác nhau Tai người có thể nghe rõ nhất với âm có tần số trong khoảng

từ 1000 đến 3000 Hz, trong phạm vi này cường độ âm ngưỡng nghe nhỏ nhất Những tần số khác, tai kém thính hơn, ngưỡng nghe có giá trị lớn hơn

Đối với âm chuẩn, cường độ và áp suất ở ngưỡng nghe bằng:

Po = 2.10-5 N/ m2

Io = 10-12 W/m2

Do cảm giác âm thanh phụ thuộc vào đặc tính sinh lý của tai người, cho nên phải có một số đại lượng đặc trưng cho cảm giác âm thanh phụ thuộc vào tai người, những đại lượng như vậy gọi là đại lượng âm chủ quan

Trang 25

Bel và decibel (db)

Theo định lý sinh lý của Vebe-Fécne, cảm giác nghe to đối với một âm không tỉ lệ thuận với cường độ âm của âm đó Khi cường độ âm tăng từ Io tới

I thì cảm giác nghe to tăng tỉ lệ với lg(I/Io) Do đó người ta dùng thang lôgarit

cơ số 10 để đo mức cảm giác so với mức ngưỡng

Mức ngưỡng gọi là mức zero qui ước:

lg(I/Io) = lg(10-12/ 10-12) = 0 bel Đơn vị là (Bel) hay (db): 10db = 1 bel

P: áp suất âm có ích của âm đang xét (N/m2)

Po: áp suất âm của âm chuẩn ở ngưỡng nghe Thực tế áp suất âm là đại lượng cơ bản hơn cường độ âm, nên thường dùng mức áp suất âm sau đó suy ra mức cường độ âm Đơn vị chung là bel hay db Đơn vị này cũng dùng để đo mức công suất, mức năng lượng âm

Vài mức áp suất âm đáng chú ý:

Nói chuyện thường: 30db Nói chuyện to : 70db

 Quãng độ cao (quãng tần số)

Quãng tần số của hai âm là khoảng cách tần số của hai âm đó Nếu một

âm tần số là f1, một âm khác tần số là f2 (f2 > f1) thì f2 / f1 = 2x

Khi x = 1 tức f2 / f1 = 2 gọi là 1 quãng tần số (hay 1 ốc-ta)

Trang 26

Khi x = 1/2 tức f2 / f1 = 1.41 gọi là nửa ốc-ta

Khi x = 1/3 tức f2 / f1 = 1.26 gọi là 1/3 ốc-ta

- Mức áp suất âm của 1 ốc-ta bằng mức áp suất âm của 1/2 ốc-ta cộng thêm 3db

- Mức áp suất âm của 1 ốc-ta bằng mức áp suất âm của 1/3 ốc-ta cộng thêm 5db

Vì quãng tần số của một âm qui định độ cao của âm đó nên còn gọi là quãng độ cao Theo tập quán âm nhạc thì quãng độ cao gọi là quãng 8 (bát độ)

Chẳng hạn: Âm LA, tần số f = 440 Hz tăng 1 bát độ là tăng gấp đôi tần

- Mức tần phổ là mức áp suất âm trong chiều rộng của dải tần số bằng 1

- Một âm có mức tần phổ B không đổi với mọi tần số gọi là tiếng ồn trắng

- Một âm có tần phổ gián đoạn được đặc trưng bằng “mức dải tần số” với định nghĩa: Mức dải tần số là mức áp suất âm trong chiều rộng của dải tần

số lớn hơn 1 Hz

c Đặc tính sinh lý về sự cảm thụ âm thanh

 Mức to, độ to, mức âm cảm giác

Mức áp suất âm, mức cường độ âm trên đây vừa mang tính chất chủ quan vừa mang tính chất khách quan vì những đại lượng này xác định từ những đại lượng thuần túy vật lý Vấn đề có ý nghĩa to lớn trong thực tế là cần biết được sức mạnh của âm thanh đo bằng tai người

Trang 27

Mức to, độ to của một âm là sức mạnh cảm giác do âm thanh gây nên trong tai người, không những phụ thuộc vào áp suất âm mà còn phụ thuộc vào tần số của âm đó

Thí dụ: 2 âm có tần số 100 Hz và 1000 Hz áp suất âm đều bằng 0,02

bar nhưng nghe to nhỏ khác nhau, âm 1000 Hz nghe to hơn âm 100 Hz Muốn nghe to bằng âm 1000 Hz thì âm 100 Hz phải có áp suất bằng 0,25

bar Như vậy, tai người không nhạy đối với âm 100 Hz bằng âm 1000 Hz Tần số càng thấp tai người càng kém nhạy

âm bằng 64 db sẽ có cùng mức to bằng 20 Fôn, bằng mức to của âm 1000 Hz mức áp suất bằng 20 db

- Muốn biết mức to của một âm bất kỳ phải so sánh với âm chuẩn

- Đối với âm chuẩn, mức to ở ngưỡng nghe là 0 Fôn, ngưỡng chói tai là

Trang 28

- Độ to là một thuộc tính của thính giác, cho phép phán đoán tính chất mạnh yếu của âm thanh Căn cứ vào độ to mà sắp xếp âm từ nhỏ tới to

- Mức to tăng 10 Fôn thì độ to tăng gấp đôi và ngược lại

 Âm điệu và âm sắc

Âm điệu chỉ âm cao hay thấp, trầm hay bổng Âm điệu chủ yếu phụ thuộc vào tần số của âm, tần số càng cao, âm nghe càng cao; tần số càng thấp

âm nghe càng trầm

Âm sắc chỉ sắc thái của âm du dương hay thô kệch, thanh hay rè, trong hay đục Âm sắc phụ thuộc vào cấu tạo của sóng âm điều hòa, biểu thị bằng

số lượng các loại tần số, cường độ và sự phân bố của chúng quanh âm cơ bản

Âm sắc có quan hệ mật thiết với cường độ, âm điệu và thời gian âm vang, sự trưởng thành và tắt dần của trường âm

Khi hai ca sĩ cùng hát một câu ở cùng một độ cao, ta vẫn phân biệt được giọng hát của từng người Khi đàn ghi-ta, sáo, kèn cùng tấu lên một đoạn nhạc ở cùng một độ cao, ta vẫn phân biệt được tiếng của từng nhạc cụ Mỗi người, mỗi nhạc cụ phát ra những âm có sắc thái khác nhau mà tai ta phân biệt được Đặc tính đó của âm chính là âm sắc

Âm sắc là một đặc tính sinh lý của âm, được hình thành trên cơ sở các đặc tính vật lý của âm là tần số và biên độ Thực nghiệm chứng tỏ rằng khi một nhạc cụ phát ra một âm có tần số f1 thì đồng thời cũng phát ra các âm có tần số f2 = 2f1, f3 = 3f1

Âm có tần số f1 gọi là âm cơ bản hay họa âm thứ nhất, các âm có tần số

f2, f3 gọi là các họa âm thứ hai, thứ ba Âm cơ bản bao giờ cũng mạnh nhất, các họa âm có tác dụng quyết định âm sắc của âm cơ bản, giúp ta phân biệt các nguồn âm khác nhau Chẳng hạn, tiếng đàn Pianô và tiếng sáo tuy cùng một âm cơ bản nhưng lại rất dễ phân biệt, nguyên nhân là do số lượng, cấu trúc những họa âm quanh âm cơ bản của chúng khác nhau Họa âm càng nhiều âm nghe càng du dương phong phú

Trang 29

 Thính giác định vị (hiệu ứng Stereo)

Khi nghe âm tuy mắt không nhìn thấy nguồn âm nhưng có thể xác định chính xác vị trí của nguồn âm Đặc điểm này là kết quả của hai tác dụng:

- Do cường độ, độ to, âm sắc của âm đến hai tai không giống nhau

- Do hai âm đến hai tai lệch pha nhau, vì thời gian đến tai không giống nhau

Cường độ, độ to của âm đến hai tai chênh lệch nhau là do nhiễu xạ gây

ra Âm có tần số f < 1000 Hz sự chênh lệch cường độ do nhiễu xạ gây ra rất

bé nhưng ở những tần số cao, sự chênh lệch này có thể đạt tới 20 - 30 db

Do khả năng định vị của tai như vậy nên khi nghe âm có thể tập trung chú ý vào nguồn âm cần nghe, bỏ qua một cách tự nhiên những âm không cần nghe Nhờ hiệu quả này mà tiếng ồn bị phủ lấp hoặc giảm nhỏ một cách tự nhiên Nếu chỉ nghe âm một tai thì hiệu quả này mất

 Nghe âm và chênh lệch thời gian

Tương tự như tác dụng lưu ảnh của mắt, tai người cũng có tác dụng lưu âm Thí nghiệm với nhiều thính giác bình thường cho thấy rằng, nếu hai âm như nhau đến tai người cách nhau < 50 ms thì tai người không phân biệt được, nghe như một âm duy nhất

1.3 Nén âm thanh

Nén âm thanh là một dạng của nén dữ liệu, nhằm giảm kích thước của tín hiệu, trong đó lượng dữ liệu trong một dạng sóng được ghi lại giảm xuống mức độ khác nhau và như thế trong quá trình nén sẽ có hoặc không có một số mất mát về chất lượng của âm thanh Nén âm thanh được sử dụng trong mã hóa MP3, internet radio, đĩa CD

Âm thanh số là âm thanh được ghi trên đĩa CD và định dạng tệp tin âm thanh WAV được sử dụng chuẩn định dạng Pulse - Code Modulation (PCM) PCM là những tín hiệu âm thanh gốc và hoàn toàn không được nén

Trang 30

Theo chuẩn PCM, mỗi giây âm thanh đƣợc lấy mẫu với tần số lấy mẫu 44.1KHz, mỗi mẫu đƣợc diễn tả bởi 16 bit dữ liệu Có nghĩa trong 1 phút nhạc / âm thanh có: 44100 đợt lấy mẫu x 2 kênh trái phải x 2 bytes (vì 16 bit

= 2 bytes) x 60 giây = 10.584.000 bytes = 10.1 Mb

Tóm lại, 1 giây của âm thanh gốc sẽ có bitrate là 1411 kbps

Có 2 loại nén âm thanh: Nén âm thanh không có tổn thất dữ liệu (Lossless compression) và nén âm thanh có tổn thất dữ liệu (Lossy compression)

Trang 31

CHƯƠNG 2 MỘT SỐ PHƯƠNG PHÁP NÉN ÂM THANH

2.1 Các phương pháp nén không có tổn thất

Hàng ngày, trong quá trình làm việc với máy tính, để nén một tệp tin tài

liệu gửi cho đồng nghiệp, đã có rất nhiều người sử dụng Zip hoặc Rar làm

định dạng nén

Tệp tin tài liệu được nén, sau khi qua Zip hoặc Rar sẽ trở nên nhỏ hơn

rất nhiều nhưng khi người nhận nhận được tệp tin, người dùng sẽ giải nén và

có được tệp tin tài liệu gốc đã tạo Thực chất, đó là việc tìm ra những quy luật

lặp của dữ liệu và qua đó tìm một cách hiển thị khác tối ưu hơn, tốn ít dữ liệu

hơn

Như vậy, khi người nhận nhận tệp tin và giải nén, Zip và Rar đóng

nhiệm vụ sử dụng những chuỗi dữ liệu nén đó tập hợp và tạo lại tệp tin gốc

ban đầu

Đó cũng là mục đích của định dạng âm thanh nén không mất dữ liệu

(lossless) Với cấu trúc trên của Zip hoặc Rar thì bạn có thể thấy rõ rằng: Đối

với nén âm thanh không có tổn thất thì đầu vào là âm thanh gốc của CD, cố

gắng tìm ra những quy luật âm thanh và sau đó thực hiện quá trình nén Việc

nén này là không cao vì dữ liệu âm thanh rất đa dạng và sử dụng nhiều dữ

liệu Hiện tại, mức độ nén cao nhất có thể của kĩ thuật nén không có tổn thất

bằng khoảng 1/3 dung lượng của âm thanh gốc Do đó, mỗi album lossless sẽ

có dung lượng khoảng 200 đến 300 Mb

Khi giải nén hoặc khi nghe lossless điều chắc chắn đạt được đó chính là

tín hiệu gốc của âm thanh CD (44.1KHz, 16bit, 1411Kbps) Điều này giúp

cho mọi người yêu âm nhạc luôn đòi hỏi âm thanh trung thực nhưng không có

điều kiện có CD gốc hoặc muốn sử dụng máy tính làm nơi lưu trữ albums

Các định dạng file âm thanh dạng Lossless như: FLAC, ALAC, APE

Trang 32

+ FLAC

FLAC (Free Lossless Audio Codec) là một định dạng dùng để nén các

dữ liệu âm thanh Không giống như định dạng MP3, ACC hay Vorbis, FLAC

là một kỹ thuật nén âm thanh nhưng không làm mất thông tin Cũng như mọi

kỹ thuật nén nói chung, lợi ích lớn nhất của FLAC là làm giảm đáng kể nhu cầu về khả năng đường truyền và dung lượng lưu trữ Các nguồn âm thanh thông thường khi nén với FLAC sẽ giảm kích thước từ 30 đến 40 phần trăm

FLAC là một định dạng khá được ưa chuộng hiện nay và cũng có khá nhiều máy nghe nhạc hỗ trợ định dạng này, việc giải mã FLAC không phụ thuộc vào quá trình mã hóa, tức là mã hóa chậm nhưng giải mã vẫn khá nhanh Hiện nay, FLAC có 9 mức chia theo mức độ từ 0 - 8 và bitrate giao động trong khoảng 600 - 1100 kbps, mức càng cao thì thời gian mã hóa càng lâu để dung lượng giảm xuống Điểm đặc biệt khiến FLAC dần trở thành một chuẩn nén âm thanh được ưa chuộng là khi một nguồn âm thanh (đĩa CD, băng từ, đĩa than ) được nén dưới dạng FLAC, khi cần có thể được giải nén

để tái tạo bản sao có chất lượng y như bản gốc FLAC vừa thích hợp cho việc thưởng thức hàng ngày và vừa thích hợp cho việc lưu trữ âm thanh lâu dài

+ ALAC

ALAC (Apple Lossless Audio Codec) có đuôi là m4a, định dạng này được sáng lập bởi Apple, dành riêng cho các thiết bị của họ, sau này nó trở nên phổ biến hơn khi được sử dụng trên các thiết bị của hãng khác, tuy nhiên vẫn không phổ biến như FLAC hay APE

Về cơ bản, ALAC của Apple giống như FLAC, là chuẩn lossless thông dụng hiện nay, nó cho phép chuyển đổi các bản nhạc gốc thành nhạc số nén nhưng không làm giảm chất lượng âm thanh, mất dữ liệu nhạc so với nhạc MP3 hay các định dạng nén khác Bởi vậy, ALAC cũng là định dạng được nhiều người chơi âm thanh và nghe nhạc chất lượng cao ưa chuộng Tuy

Trang 33

nhiên, các thiết bị của Apple lại có hạn chế với người dùng khi không sử dụng được định dạng này hoặc phải cài thêm phần mềm mới từ hãng thứ ba

+ APE

APE cũng là một định dạng lossless thông dụng được phát triển bởi Monkey‟s Audio (có đuôi là APE) Tuy nhiên, nó chưa phổ biến trên các máy MP3 bằng FLAC vì một bộ xử lý âm thanh giải mã MP3 là hiển nhiên và việc giải mã FLAC không phức tạp hơn MP3

 Nguyên lý

Nguyên lý của phương pháp Huffman là mã hóa các bytes trong tệp dữ liệu nguồn bằng biến nhị phân Nó tạo mã độ dài biến thiên là tập hợp các bits Đây là phương pháp nén kiểu thống kê, những ký tự xuất hiện nhiều hơn

Trang 34

Bước 3: Nhóm no tin cuối thành một tin phụ, tin này có xác suất bằng tổng tin thành phần Mỗi tin thành phần được đánh dấu bằng một ký hiệu mã

Bước 4: Xếp các tin còn lại và tin phụ theo thứ tự xác suất giảm dần Bước 5: Nhóm m tin cuối thành một tin phụ

Bước 6: Lặp lại bước 4 và 5 cho đến khi toàn bộ nguồn tin thành một tin Bước 7: Lặp từ mã cho tin xi Từ mã của tin xi là dãy các ký hiệu mã dùng để đánh dấu xi mà các tin phụ có chứa xi theo thứ tự từ lần tạo nhóm cuối cùng

 Xét ví dụ

Thống kê lượng tin:

Ký hiệu A B C D E

Số lần 15 7 6 6 5 Khi đó ta có: X = {A, B, C, D, E}

Trang 35

2.1.2 Mã Huffman sửa đổi

Các giải thuật trên đây yêu cầu kiến thức về thống kê là điều mà khó

có thể thực hiện (Ví dụ: âm thanh, hình ảnh sống )

Ngay cả khi nếu điều đó là có thể làm được thì chi phí cho nó khá nặng, đặc biệt khi có nhiều bảng phải được truyền mà mô hình non-order() được sử dụng, nghĩa là việc đưa vào tính toán sự ảnh hưởng của các ký hiệu trước đó với xác suất của ký hiệu hiện hành

Giải pháp đưa ra là dùng giải thuật sửa đổi cho thích hợp Việc mã hóa Huffman sửa đổi được khảo sát sau đây với ý tưởng là làm thế nào có thể áp dụng vào các giải thuật nén thích hợp khác

While ((c = decode (input)) != eof) {

Trang 36

Trong suốt quá trình cập nhật, cây Huffman sẽ được duy trì tính kế thừa, các nút (nút trong và nút lá) được sắp xếp theo thứ tự tăng dần của trọng lượng

Khi cần thiết trao đổi, nút xa nhất với trọng lượng W được trao đổi với nút mà trọng lượng của nó tăng lên 1 đơn vị W+1

Lưu ý: Nếu nút trọng lượng W có cây con bên dưới nó thì cây con đó cũng phải dời cùng với nó

Giả sử mẫu tự là [X,Y] và P(X) = 2/3, P(Y) = 1/3

Nếu ta chỉ quan tâm với chiều dài mã hóa là 2 thông điệp, thì ta có thể ánh xạ tất cả thông điệp có thể có vào những đoạn trong phạm vi [0 1]

XX XY XY YY

Để mã hóa thông điệp, chỉ dùng vừa đủ số bit cần thiết cho mỗi đoạn Tương tự, ta có thể ánh xạ tất cả chiều dài 3 thông điệp vào các đoạn trong [0 1]

Nói chung, số bit được xác định bằng kích thước của đoạn

 Ví dụ: Đoạn đầu tiên là 8/27, cần 2 bit 2/3 bit cho mỗi ký tự

Đoạn cuối là 1/27, cần 5 bit

Vậy cần -[logp] bit để biểu diễn cho đoạn có kích thước p và ý tưởng

để xác định xác suất là dùng mô phỏng: Bắt đầu bằng việc đoán tần số của một ký hiệu, cập nhật tần số cho mỗi ký hiệu mới

2.1.4 Giải thuật Lempel-Ziv-Welch (LZW)

LZW là một phương pháp nén được phát minh bởi Lempel - Zip và Welch

Nó hoạt động dựa trên một ý tưởng rất đơn giản là người mã hoá và người giải mã

Trang 37

cùng xây dựng bảng mã Bảng mã này không cần được lưu kèm với dữ liệu trong quá trình nén, mà khi giải nén, người giải nén sẽ xây dựng lại nó

Ưu điểm của phương pháp nén LZW là bên nhận có thể tự xây dựng bảng mã mà không cần bên gửi phải gửi kèm theo bản tin nén

Nhược điểm của thuật toán này là tốn nhiều bộ nhớ, khó thực hiện dựa

trên các mảng đơn giản (bé hơn 64KB)

Ngày đăng: 15/07/2020, 14:19

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] – Đặng Văn Chuyết, Nguyễn Tuấn Anh, “ Cơ sở lý thuyết truyền tin”, Nhà xuất bản Giáo dục, 2007 Sách, tạp chí
Tiêu đề: “ Cơ sở lý thuyết truyền tin”
Nhà XB: Nhà xuất bản Giáo dục
[2] – KTS. Việt Hà, Nguyễn Ngọc Giả, “Giáo trình âm học kiến trúc”, Trường Đại học Kiến trúc, 1993 Sách, tạp chí
Tiêu đề: “Giáo trình âm học kiến trúc”
[3] – Quách Tuấn Ngọc, “Xử lý tín hiệu số”, Nhà xuất bản giáo dục, 1997. Tiếng Anh Sách, tạp chí
Tiêu đề: “Xử lý tín hiệu số”
Nhà XB: Nhà xuất bản giáo dục
[4] – John G.Proakis, Dimitris G.Manolakis, “Digital Signal Processing”, Prentice Hall Sách, tạp chí
Tiêu đề: “Digital Signal Processing”
[5] – Paul M.Embree, Bruce Kimble, “C Language Algorithms for Digital Signal Process”, Prentice Hall.Địa chỉ Internet Sách, tạp chí
Tiêu đề: “C Language Algorithms for Digital Signal Process”

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w