1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đề tài Ứng dụng fourier vào khử nhiễu Âm thanh

15 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Ứng Dụng Fourier Vào Khử Nhiễu Âm Thanh
Người hướng dẫn Th.S. Nguyễn Hữu Hiệp
Trường học Đại học Bách Khoa
Thể loại báo cáo
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 15
Dung lượng 2,13 MB

Nội dung

TÓM TẮTBài báo cáo của nhóm 10 sẽ thể hiện nội dung liên quan đến cách sử dụng biển đổi Fourier hữu hạn để khử nhiễu âm thanh cho file âm thanh có chứa những tạp âm không mong muốn.. Từ

Trang 1

ĐẠ I H Ọ C QU Ố C GIA THÀNH PH Ố  H Ồ  CHÍ MINH

o0o

BÁO CÁO

Đề   tài “Ứ  NG D Ụ NG FOURIER VÀO

Lớ p L –  Nhóm GVHD: Th.s Nguyễn Hữ u Hiệp Thành phố  H ồ Chí Minh, tháng 12 năm 2022

1

2

3

4

5

6

7

Trang 2

MỤC LỤC 

LỜ I CẢM ƠN i 

LỜ I MỞ  ĐẦU ii 

PHẦN A TÓM TẮT 1 

PHẦN B NỘI DUNG BÁO CÁO 2 

I ĐẶT VẤN ĐỀ 2 

II NỘI DUNG 2 

1 TỔNG QUAN VỀ PHÉP BIẾN ĐỔI FOURIER 2

2 LÝ THUYẾT VẬN DỤNG  3

2.1 Định nghĩa ánh xạ tuyến tính 3

2.2 Nhân vàảnh của ánh xạ tuyến tính 3

2.3 Biểu diễn ma trận của ánh xạ tuyến tính 4

2.4 Biến đổi Fourier 4

3 SỬ  DỤNG CÔNG CỤ MATHLAB TRONG BIẾN ĐỔI FOURIER HỮ U HẠN ĐỂ KHỬ  NHIỄU ÂM THANH 6

3.1 Đoạn code sử dụng trong MATLAB 6

3.2 Giải thích code MATLAB 6

3.3 Ví dụ minh họa 7

4 KẾT LUẬN 9

TÀI LIỆU THAM KHẢO 11 

Trang 3

LỜ I CẢM ƠN 

 Trong suốt quá trình thực hiện bài tập lớn, nhóm chúng tôi đã nhận đượ c

rất nhiều sự quan tâm vàủng hộ, giúp đỡ  tận tình của thầy cô, anh chị em và bè

bạn

Ngoài ra, nhóm còn gửi lờ i tri ân chân thành nhất đến vớ i thầy Nguyễn

Hữu Hiệp là giảng viên đã hướ ng dẫn nhóm thực hiện bài tập lớ n này Sự hướ ng

dẫn của thầy đã là kim chỉ nam cho mọi hành động của nhóm và phát huy tối đa đượ c mối quan hệ hỗ trợ  giữa thầy và trò trong môi trườ ng giáo dục

Lờ i cuối, xin một lần nữa gửi lờ i biết ơn sâu sắc đến thầy và mọi ngườ i

đã dành thờ i gian chỉ dẫn cho nhóm Đây chính là niềm tin, nguồn động lực to

lớn để nhóm có thể đạt đượ c kết quả này

Chân thành cảm ơn sự giúp đỡ  của mọi ngườ i!

Nhóm 10

Trang 4

LỜ I MỞ  ĐẦU

K ỹ thuật đã mang lại nhiều lợi ích và đóng góp đáng kể cho nền văn minh

của loài ngườ i trong suốt lịch sử phát triển Trong thế kỷ hai mươi, các kỹ sư đã

thực hiện nhiều đổi mớ i phục vụ cho con người Nhưng ở  hiện tại, thế kỷ 21, kỹ  thuật đang đối mặt vớ i rất nhiều thách thức lớn như là làm cho năng lượ ng mặt

trờ i trở  nên kinh tế hơn, cung câp năng lượ ng nhiệt hạch, Để giải quyết các thách thức này, giáo dục kỹ thuật là hết sức quan trọng nhằm đào tạo những kỹ 

sư thực hiện sứ mạng trong thế kỷ 21

“Đại số tuyến tính”–  một môn học có tầm quan trọng đối vớ i sinh viên

của khối ngành kỹ thuật trường Đại học Bách khoa Thành phố Hồ Chí Minh Môn học được xem như là cánh cửa đầu tiên mở  ra để sinh viên có thể hiểu sâu

sắc đượ c ngành nghề mà mình đã chọn trong tương lai Trong môn học này,

ngườ i học có đượ c cảm hứng, sự say mê, khao khát học hỏi, sự tập trung trong

học tập, những kỹ năng làm việc nhóm, tư duy sáng tạo đổi mớ i, khả năng phản

biện, không ngại bày tỏ quan điểm cá nhân, xây dựng cho bản thân những mục tiêu và những ước mơ nghề nghiệp, có kế hoạch học tập và hành động

Dưới đây là báo cáo bài tập lớ n của nhóm!

Trang 5

PHẦN A TÓM TẮT

Bài báo cáo của nhóm 10 sẽ thể hiện nội dung liên quan đến cách sử dụng

biển đổi Fourier hữu hạn để khử nhiễu âm thanh cho file âm thanh có chứa những

tạp âm không mong muốn Bài báo cáo chỉ ra cách sử dụng Fourier và các bướ c

lập trình code để khử nhiễu âm thanh trên MATLAB Từ đó, rút ra những hiểu

biết cần thiết và kinh nghiệm trong việc xử lí tình huống, cải thiện kỹ năng làm

việc nhóm và có đượ c những hiểu biết về công cụ MATLAB cũng như cách sử 

dụng công cụ MATLAB để diễn tả các bài toán một cách cụ thể, ngắn gọn, súc tích và dễ hiểu Qua đó, biết cách xử lí một đoạn âm thanh và hiểu thêm về ứng

dụng MATLAB và lập trình

Trang 6

PHẦN B NỘI DUNG BÁO CÁO

I ĐẶT VẤN ĐỀ 

Giải trí là một nhu cầu cần thiết của con ngườ i trong cuộc sống hàng ngày

như nghe nhạc, xem phim, xem thờ i sự, Trong đó ngoài hình ảnh đầy màu sắc, thì còn một yếu tố tất yếu tạo ra sự sinh động, làm cho trải nghiệm của con ngườ i

trở  nên hoàn hảo hơn đó chính là âm thanh Như trong một bộ phim ngoài những

cuộc trò chuyện, đối thoại giữa các nhân vật thì có rất nhiều âm thanh khác như

là tiếng mưa, tiếng xe cộ, và cả những tiếngồn xung quanh khu vực ghi hình

Nếu trong một bộ phim mà lẫn quá nhiều tạp âm như thế thì sự thưở ng thức của

người xem không còn đượ c thoải mái, làm giảm đi chất lượ ng của cuộn phim,

bản nhạc

Vì thế cần đặt ra vấnđề làm sao để có thể xử lý các tạp âm, cải thiện đượ c

chất lượ ng âm thanh một cách hiệu quả và nhanh chóng?Trong lĩnh vực xử lý tín hiệu, biếnđổi Fourier rờ i rạc (DFT) chiếm vị trí hàng đầu nhờ  sự tồn tại các thuật toán hiệu quả như là biến đổi Fourier nhanh (FFT) và Fourier rờ i rạc ngượ c

II NỘI DUNG

1 TỔNG QUAN VỀ PHÉP BIẾN ĐỔI FOURIER

Biến đổi Fourier là một trong những kỹ thuật đượ c sử dụng rộng rãi nhất trong toán họcứng dụng, chẳng hạn như trong lĩnh vực xử lý tín hiệu và nén dữ 

liệu, biến đổi Fourier dựa trên ý tưở ng các hàm có tính chất phù hợ p có thể đượ c

biểu diễn bằng tổ hợ p tuyến tính của các hàm lượ ng giác Công việc ban đầu của

biến đổi Fourier là việc sử dụng các hàm lượ ng giác trong giải tích bắt nguồn từ  các công trình của nhà toán học Leonhard Euler (1707-1783), Alexis-Claude Clairaut (1713-1765) và Joseph Louis Lagrange (1736-1813)

Euler là người đầu tiên đưa ra công thức cho các hệ số của chuỗi Fourier

Dựa trên các nghiên cứu của Euler, Clairaut đã công bố công thức đầu tiên cho phép biến đổi Fourier rờ i rạc (DFT) vào năm 1754 là cái chúng ta hiện biết

 Năm 1805, Carl Friendrich Gauss (1777-1855) đã công bố công thức cho DFT

Trang 7

 Năm 1822, Joseph Fourier (1768-1830)đưa ra công trình về dòng nhiệt cung

cấp nền tảng cho phép biến đổi Fourier và nguồn gốc tên gọi của nó Năm 1965,

 James Cooley và John Tukey, đãphát minh ra thuật toán biến đổi Fourier nhanh (FFT), thuật toán này đã cho phép một loạt cácứng dụng số trong thời đại kỹ  thuật số ra đờ i Cácứng dụng này bao gồm nén dữ liệu JPEG, phân tích cấu trúc tinh thể, giải phương trình vi phân từng phần, xử lí tín hiệu nhiễu,

2 LÝ THUYẾT VẬN DỤNG

2.1 Định nghĩa ánh xạ tuyến tính

Cho  X ,Y  là hai tập hợ p khác rỗng tùy ý Ánh xạ  f  giữa X  vàY  là quy tắc

tương ứng mỗi phần tử  x X  một và chỉ một phần tử  y Y    

Hay f X : → Y  là ánh xạ, nếu     x X , ! y Y y , = f x ( )

Cho X ,Y  là hai không gian trên cùng trườ ng số K  Ánh xạ  f X : → Y  gọi là ánh

xạ tuyến tính (AXTT) nếu:

( ) ( ) ( )

 f x y + = f x + f y ( ) ( )

 f  x =   f x  

*Ghi chú: ánh xạ tuyến tính trên n

 R  chỉ chứa các số hạng bậc nhất

2.2 Nhân và ảnh của ánh xạ tuyến tính

Định nghĩa:

Cho ánh xạ tuyến tính f X : → Y  

Nhân (Ker ) của f  được định nghĩa là: Kerf =    x X f x ( ) 0 =  

Ảnh ( Im) của f  được định nghĩa là: Imf =     y Y x X y , = f x( ) 

*Ghi chú: Kerf  là nghiệm của phương trình  f x( ) 0   =  

 Imf   là tập cácảnh của f  (trong hàm số gọi là tập giá trị)

 Tính chất:

- Cho ánh xạ tuyến tính f X : → Y  

+Nhân (Ker) của f  là không gian con của X 

Trang 8

+Ảnh (Im) của f  là không gian con của Y.

+dim Kerf ( ) + dim Imf ( ) =dim X ( ) 

+Ảnh của tập sinh là tập sinh củaảnh:

 1 , , , , 2 3 n  ( ), ( ), ( ), , 1 2 3 ( n)

 X = x x x x  Imf =  f x f x f x f x  

2.3 Biểu diễn ma trận của ánh xạ tuyến tính

* Định nghĩa:ChoV  là không gian vector n chiều,W  là không gian vector m  chiều, E =  e e 1 , , , 2 en là một cơ sở  củaV ,F f f =  1 , , , 2 f  m là một cơ sở  củaW  

và f V : → W  xác định bở i x → f x ( ) là ánh xạ tuyến tính

Vì  x V  và f x ( )  W  nên theo tính chất của không gian vector thì x  luôn

biểu thị tuyến tính được qua cơ sở   E  trongV  và f x ( ) luôn biểu thị tuyến tính

được qua cơ sở  F  trongW 

Giả sử  x = x e 1 1 + x e 2 2+ +   x e n n và f x ( ) = y f 1 1 + y f 2 2+ + y f m m 

 Ta có 

1

 E  n

 x  x

 x

 

 

=  

 

 và 

1

( ) .

F  m

 y

 f x

 y

 

 

=  

 

 

Nếu tồn tại ma trận A M  m n

  sao cho     ( )

 E F 

 A x = f x  vớ i mọi x V  thì A 

đượ c gọi là ma trận của ánh xạ tuyến tính f  đối với cơ sở   E  trongV  vàF  trong

2.4 Biến đổi Fourier

a Mục đích 

Mục đích của phép biến đổi Fourier là phân chia tín hiệu dạng sóng thành các tần số riêng lẻ tạo ra nó Cụ thể hơn,phép biến đổi Fourier phân chia hàm thành tổng của hàm sin và hàm cosin, mỗi hàm có các tần số khác nhau. 

Các hàm liên tục thường đượ c xấp xỉ bằng tổ hợ p tuyến tính của hàm sin và cosin

b Biến đổi Fourier hữ u hạn

 Trong toán học, Biếnđổi Fourier rờ i rạc (DFT), đôi khi đượ c gọi là Biến

đổi Fourier hữu hạn, là một phép biến đổi trong phân tích Fourier cho các tín

Trang 9

hiệu thờ i gian rờ i rạc Đầu vào cho phép biến đổi này là một dãy hữu hạn các số 

thực hoặc số phức, làm cho phép biến đổi này trở  thành một công cụ lý tưở ng

để xử lý thông tin trongmáy tính Đặc biệt, biến đổi này đượ c sử dụng rộng rãi trong xử lý tín hiệu và trong cáclĩnh vựcliên quan đến phân tích tần số chứa trong tín hiệu, giải phương trìnhvi phân từng phần và thực hiện các phép toán

như tích chập Biến đổi này có thể đượ c tính toán nhanh chóng bằng cách sử 

dụng thuật toán Biến đổi Fourier nhanh (FFT)

Biếnđổi Fourier là một công thức toán học liênquan đến một tín hiệu

đượ c lấy mẫu trong thờ i gian hoặc không gian vớ i cùng một tần số Trong xử lý tín hiệu, thuyết biến đổi Fourier có thể tiết lộ các thuộc tính quan trọng của tín

hiệu, cụ thể là các thành phần tần số

Biến đổi Fourier được xác định cho mộtvectơ  x với n điểm đượ c lấy mẫu

thống nhất qua công thức  1  ∑   −=0   + 

c Ứ ng dụng biến đổi Fourier hữ u hạn trong khử  nhiễu âm thanh

Phép biến đổi     ×  đượ c gọi là phép biến đổi Fourier rờ i rạc của vectơ

Vectơ    ×  Có dạng    

vectơ A chứa hệ số  tại∑   cos2

−

vectơ  B chứa hệ số   tại∑   sin2

−

 Như vậy dùng phép biến đổi Fourier rờ i rạc, ta chuyển tín hiệu Xở  miền

thờ i gian thành tín hiệuở  miền tần số gồm tổng các hàmcos2

  vàsin2

Trang 10

Giả sử tín hiệu ban đầu có dạng ∑   cos2

−

0    sin2

  +tín hiệu nhiễu sau khi phân tích rờ i rạc Fourier rờ i rạc    ×  , so với hình trướ c và sau khi phân tíchta xác địnhđượ c tần số của tín hiệu chính và tần số của tín hiệu nhiễu Lọc tín hiệu nhiễu, chỉ giữ lại tín hiệu chính, sau đóthực hiện phân tích Fourier nghịch để thu đượ c tín hiệuđã đượ c khử nhiễu. 

3 SỬ  DỤNG CÔNG CỤ MATHLAB TRONG BIẾN ĐỔI

FOURIER HỮ U HẠN ĐỂ KHỬ  NHIỄU ÂM THANH

3.1 Đoạn code sử  dụng trong MATLAB

y=audioread( 'name.wav' );

L=length(y);

Y=fft(y);

sound(y);

plot(abs(Y), 'r' );

hold on ;

M=max(abs(Y));

thresh=0.1;

Ythresh=(abs(Y)>thresh*M).*Y;

sum(abs(Ythresh)>0)/L;

ythresh=real(ifft(Ythresh));

plot(abs(Ythresh), 'b' );

sound(ythresh);

3.2 Giải thích code MATLAB

- Đọc file âm thanh trong MATLAB:

y=audioread( 'noise.wav' );

- Tính toán kích cỡ file âm thanh: 

L=length(y);

- Phân tích Fourier rời rạc vector y:

Y=fft(y);

- Nghe âm thanh gốc: 

sound(y);

- Vẽ đồ thị tín hiệu gốc bằng màu đỏ: 

plot(abs(Y), 'r' );

- Giữ lại đồ thị ở trên: 

hold on ;

- Xác định giá trị lớn nhất của Y: 

M=max(abs(Y));

- Dựa vào đồ thị xác định hệ số thresh để khử nhiễu: 

thresh=0.1;

- Khử nhiễu: 

Trang 11

- Kích cỡ file âm thanh sau khi khử nhiễu: 

sum(abs(Ythresh)>0)/L;

- Biến đổi Fourier ngược lại: 

ythresh=real(ifft(Ythresh));

- Vẽ đồ thị tín hiệu sau khi khử nhiễu bằng màu xanh:  

plot(abs(Ythresh), 'b' );

- Nghe âm thanh sau khi khử nhiễu: 

sound(ythresh);

3.3 Ví dụ minh họa

 Đoạn code sử dụng cho ví dụ minh họa 

y=audioread( 'noise.wav' ); L=length(y);

Y=fft(y);

sound(y);

plot(abs(Y), 'r' );

hold on ; M=max(abs(Y));

thresh=0.1;

Ythresh=(abs(Y)>thresh*M).*Y; sum(abs(Ythresh)>0)/L;

ythresh=real(ifft(Ythresh)); plot(abs(Ythresh), 'b' );

sound(ythresh);

Trang 12

 Hình 2 Đồ thị khi chưa lọc nhiễ u

 Hình 3 Đồ thị khi đã lọc nhiễ u

Trang 13

 Hình 4 Đồ thị khi chưa lọc nhiễu màu đỏ và khi đã lọc nhiễ u màu xanh

4 KẾT LUẬN

Với đề tài được giao, nhóm đã lên kế hoạch làm việc và phân chia công việc

cụ thể cho từng thành viên, các thành viên trong nhóm vớ i tinh thần phối hợ p, nâng cao kiến thức đã hoàn thành đượ c bài báo cáo này Qua bài báo cáo nhóm

đã rút ra: 

Về kiến thứ c:

- Củng cố kiến thức về Ánh xạ tuyến tính

- Biết thêm về phép biến đổi Fourier vàứng dụng

- Hiểu một số kiến thứccơ bản về lập trình MATLAB

- Biết sử dụng MATLAB để lọc nhiễu một file âm thanh bất kỳ

Về kỹ năng:

- Có thêm những kỹ năng trong việc trao đổi làm việc nhóm, biết cách lập kế 

hoạch, sắp xếp thờ i gian hoàn thành công việc đúng tiến độ

Trang 14

- Tạo cơ hội làm quen vớ i các bạn trong một nhóm và nâng cao tình đoàn kết.

- Tiếp cận đượ c những nguồn kiến thức mớ iở  Đại học

- Làm quen với môi trường Đại học./

Trang 15

TÀI LIỆU THAM KHẢO

[1] Trần Quang Khánh,Cơ sở  Mathlabứ ng d ụng, T ậ p 1, NXB Khoa học và kỹ  thuật

[2] Pauli Anttonen (2022),Fourier transform techniques for noise reduction,

Lappeenranta-Lahti University of Technology LUT School of Engineering Science

[3] Biến đổ i Fourier,WIKIPEDIA, truy cập tại địa chỉ 

https://vi.wikipedia.org/wiki/Bi%E1%BA%BFn_%C4%91%E1%BB%95i_Fo

[4] Đặng Văn Vinh, Giáo trình Đại số  tuyế n tính, Đại học Quốc gia Thành phố 

Hồ Chí Minh

Ngày đăng: 08/12/2024, 19:53

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

TÀI LIỆU LIÊN QUAN

w