Tách âm dùng phương pháp phân tích thành phần độc lập
Bạn đang xem tài liệu "Tách âm dùng phương pháp phân tích thành phần độc lập", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
tach_am_dung_phuong_phap_phan_tich_thanh_phan_doc_lap.pdf
Nội dung text: Tách âm dùng phương pháp phân tích thành phần độc lập
- TÁCH ÂM DÙNG PHƯƠNG PHÁP PHÂN TÍCH THÀNH PHẦN ĐỘC LẬP ( THUẬT TOÁN FASTICA ) Quách Nguyễn Lệ Hiền Trường đại học sư phạm kỹ thuật TP. HCM TÓM TẮT: Mọi sự vật, hiện tượng trong tự nhiên đều không xuất hiện hoặc biến đổi đơn độc mà xuất hiện đồng thời với sự xuất hiện và biến đổi của các sự kiện khác trong mối quan hệ tương tác, phụ thuộc và ảnh hưởng lẫn nhau vừa mang tính quy luật vừa mang tính ngẫu nhiên. Trong âm thanh thường ít khi xảy ra sự cô lập. Khi có nhiều tín hiệu ở các khoảng tần số khác nhau được trộn lại, ta có thể lọc ra từng tín hiệu riêng biệt như lúc ban đầu. Còn nếu các tín hiệu nằm trong cùng khoảng tần số (ví dụ nhiều người cùng nói, tiếng hát trên nền nhạc, nhiều bản nhạc cùng chơi ), ta không thể dùng phương pháp lọc hay phân tích phổ thông thường để tách. Quá trình này được gọi là tách nguồn. Bài toán được đặt ra là, từ nhiều tín hiệu đã được trộn lẫn, làm thế nào để khôi phục lại từng tín hiệu nguồn riêng lẻ? Bài toán tách nguồn mù (Blind Source Separation - BSS). Trong hơn chục năm qua, người ta đã phát triển một phương pháp mới giúp giải bài toán nêu trên rất hiệu quả, đó là phân tích thành phần độc lập (Independent Component Analysis – ICA). Có nhiều thuật toán ICA cho các ứng dụng khác nhau. Báo cáo trình bày ứng dụng ICA cho tách âm trường hợp số nguồn bằng số trộn (xác định). Chúng tôi thực nghiệm trên nhiều loại tín hiệu. Kết quả rất tốt. Từ khóa: Tách nguồn mù, Phân tích thành phần độc lập, xác định. ABSTRACT: All subjects and natural phenomena very rarely appear or transform individually but concurrently with emergence and transformation of others in the interactive relationships, dependencies and influence to each other. It might be methodical or random. In acoustics, isolation rarely happens. When multiple signals in different frequency ranges are mixed together, we can filter out individual signal as in the beginning. If the signals are in the same frequency range (for example: people are talking or singing , many songs are being played ), we can’t use filtering methods or conventional spectrum analyzer to separate them. This process is called source separation. The problem here is how to separate them from each other? Human ear at the same time always received many sound sources, but we always listen and recognize the sound source intentional. A processing system, recognition or control should achieve such goal. Results of the problem separating voice signal is the basis for many practical applications related to speech processing. The results of the process with good separation, the result of new speech processing is accurate. Over the last decade, people have been developing a new method to solve blind source separation (Blind Source Separation - BSS) very efficiently, which is independent component analysis (Independent Component Analysis-ICA). In this thesis, acoustical source separation method will be performed using independent component analysis (flastICA algorithm). The methodology and application of the proposed method to mixed sounds, mainly focused on the source separation from a mixture of observations (the mixture), will be presented here. Keywords: Blind Source Separation, independent component analysis, determine. 1. GIỚI THIỆU liệu hỗn hợp thu được tại các cảm biến khảo sát và đặc trưng của kênh truyền cũng như các tín hiệu Bài toán xử lý tín hiệu mù Blind Signal Processing nguồn gần như không biết (hình 1). (BSP) trong khoảng 20 năm trở lại đây là một lĩnh vực khá mới mẻ thu hút được rất nhiều sự quan tâm nghiên cứu và ứng dụng trong nhiều lĩnh vực xử lý tín hiệu khác nhau: tách âm, nhận dạng tín hiệu y sinh vv Nguyên lý chung của kỹ thuật BSS là phân tích các tín hiệu quan sát được thành một tập hợp các nguồn cơ sở với các đặc tính về không gian, phổ hay thời gian – tần số duy nhất. Bài toán BSS cho phép ước lượng lại các Hình 1: Mục đích của phân tách nguồn mù là chỉ sử tín hiệu nguồn nguyên bản mà chỉ dựa vào những dữ dụng tín hiệu hỗn hợp lai trộn để tìm lại tín hiệu gốc.
- 2. MÔ HÌNH PHÂN TÁCH NGUỒN MÙ - BSS đây được gọi là mô hình lai trộn tức thời (instantaneous mixing model). Tổng quát bài toán được phát biểu như sau: cho M hỗn hợp lai trộn tuyến tính từ N nguồn tạo qua ma trận ICA là phương pháp thống kê giải quyết bài lai trộn M x N không biết trước A. Bài toán phân tách toán BSS hoặc phân tách tín hiệu mù ( blind signal nguồn mù BSS yêu cầu phân tích cấu trúc dữ liệu khảo separation). Nguồn “source” ở đây có nghĩa là tín sát và tách các nguồn gốc từ hỗn hợp lai trộn này. Khi hiệu nguyên thủy, như là âm phát ra từ mỗi người M N, có thể thực hiện bằng cách xây dựng ma trận nói trong bài toán cocktail-party. Mù “blind” có giải lai trộn W, với W=A-1. Để đảm bảo phân tách nghĩa là biết rất ít về ma trận lai trộn, và các giả được, các điều kiện cần tuân theo định lý Darmois [1]: thiết về tín hiệu nguồn hầu như không đáng kể.Để các nguồn là phi Gauss và độc lập thống kê. Số chiều thuận tiện, ta sử dụng các ký hiệu vectơ – ma trận của quá trình lai trộn ảnh hưởng đến tính phức tạp của thay cho tổng ở các phương trình trên. Theo đó mô bài toán. Nếu M= N, ma trận lai trộn A được xem là hình lai trộn được viết lại như sau: xác định chẵn (Even-determined) hay xác định x = A s (2) (Determined), các tín hiệu nguồn được phân tách qua Điều kiện giới hạn trong ICA: biến đổi tuyến tính. Nếu M > N, ma trận A được xem - Các thành phần độc lập được xem là độc lập là trên xác định (Over-determined) , có thể ước lượng thống kê. các nguồn qua tối ưu bình phương tối thiểu hoặc biến - Các thành phần độc lập phải có phân bố phi đổi tuyến tính giả nghịch đảo ma trận. Nếu M < N quá Gauss. trình lai trộn được xem như dưới xác định (Under- - Ma trận lai trộn là vuông. determined) và hệ quả là khôi phục các tín hiệu gốc phức tạp hơn và luôn được thực hiện qua kỹ thuật phi Các điểm không xác định trong ICA: tuyến [2]. - Không thể xác định phương sai (năng lượng) Trong báo cáo này, chúng tôi thực hiện tách âm với của các thành phần độc lập. mô hình lai trộn tức thời - xác định, có số tín hiệu - Không thể xác định thứ tự của các thành phần độc lập phân ly. nguồn cần ước lượng bằng số tín hiệu thu được tại các cảm biến (N=M). 4. THUẬT TOÁN FASTICA ĐƯỢC THỰC HIỆN THEO CÁC BƯỚC SAU: 3. PHƯƠNG PHÁP PHÂN TÍCH THÀNH PHẦN ĐỘC LẬP - ICA 1. Chọn m là số nguồn tín hiệu cần đánh giá, gán p 1 Để định nghĩa ICA, ta có thể sử dụng mô hình các 2. Khởi tạo ngẫu nhiên giá trị vector đơn vị wp biến thống kê. Khảo sát n biến ngẫu nhiên x1(t), , 2 xn(t) là tổ hợp tuyến tính của n biến ngẫu nhiên s1(t), thoả mãn: wp 1 , sn(t): 3. Gán xi ai1s1 ai2s2 ainsn , với i = 1, , n (1) TT với aij, i, j = 1, , n là các hệ số thực. Mô hình này mô w Ezgwz Egwzw tả quá trình phát sinh lai trộn của các thành phần sj. 4. Thực hiện trực giao hoá theo phương pháp Các thành phần độc lập sj (thường được viết tắt thành Gram-Schmidt : ICs _ independent components) là các biến ẩn (latent p 1 variables), có nghĩa là không thể khảo sát trực tiếp T wp w p w p w j w j chúng và các hệ số aij cũng không biết. Tất cả thông j 1 tin có được chỉ là các biến ngẫu nhiên xi, và ta phải 5. Gán wp w p/ w p ước lượng tìm cả các hệ số lai trộn aij và ICs si mà chỉ sử dụng thành phần lai xi. kk 1 6. Xét điều kiện hội tụ wwpp,1 . Nếu Ở đây thông tin chỉ số thời gian t được bỏ qua bởi thuật toán chưa hội tụ , trở lại bước 3. vì trong mô hình ICA cơ sở, giả thiết rằng mỗi thành 7. Gán pp 1nếu pm trở lại bước 2. phần lai xi cũng như mỗi thành phần độc lập sj là một biến ngẫu nhiên, thay vì là một tín hiệu thời gian hay chuỗi thời gian. Các giá trị khảo sát xi(t), chẳng hạn tín hiệu micro trong bài toán cocktail-party là các mẫu của biến ngẫu nhiên này. Đồng thời bỏ qua các thời gian trì hoãn có thể xuất hiện trong quá trình lai trộn, vì vậy
- 5. LƯU ĐỒ THUẬT TOÁN CHO QUÁ TRÌNH giá chủ quan qua việc quan sát dạng sóng, nghe âm MÔ PHỎNG THUẬT TOÁN FASTICA. phát lại ở loa so với nguồn âm gốc. N 1 Start en2 () n 0 (3) E NN 11 Loại bỏ giá trị trung bình của x s22()() n y n nn 00 n 2 Khởi tạo 1 MSE y n s n (4) n n 1 Quy tâm Thực nghiệm 1: (nguồn âm gốc: bốn tín hiệu) Trắng hóa dữ liệu Trong minh họa đầu tiên, chúng ta giả thiết có 4 tín hiệu nguồn. Các tín hiệu trộn là tổ hợp tuyến Khởi tạo cho ICA tính của các tín hiệu nguồn được biểu diễn theo phương trình sau: xt1 ast 11 1 ast 12 2 ast 13 3 ast 14 4 Tính toán thành phần độc lập xt ast ast ast ast 2 21 1 22 2 23 3 24 4 (5) xt ast ast ast ast No 3 31 1 32 2 33 3 34 4 xt4 ast 41 1 ast 42 2 ast 43 3 ast 44 4 Hội tụ No Tất cả các thành phần? Yes In kết quả End Hình 2: Tín hiệu nguồn ban đầu 6. THỰC NGHIỆM TÁCH ÂM VÀ KẾT QUẢ Chúng tôi triển khai thực nghiệm trên PC sử dụng ngôn ngữ Matlab thực hiện tách âm trong trường hợp xác định với mô hình lai trộn tức thời. Thu sẵn số nguồn âm thực nghiệm vào máy tính ở tốc độ lấy mẫu 8KHz, và mã hoá PCM 16 bit. Chiều dài mỗi đoạn dữ liệu âm là 10s. Thực hiện trộn âm từ các nguồn âm đó. Để đơn giản, giả sử theo cách thức trình bày ở phần trước tức là bỏ đi các phản xạ và các trì hoãn của phòng. Dữ liệu trộn được cho qua bộ phân tích ICA với giải thuật tách âm fastICA (bao gồm quy tâm, trắng hóa và ước lượng). Kết quả là các nguồn âm được tách ra độc lập. Kết quả là các âm phân tách độc Hình 3: Tín hiệu trộn lập được đánh giá khách quan bằng hệ số E là sự khác nhau giữa tín hiệu vào và tín hiệu sau khi tách và thông số MSE (Mean Squared Error) là sai số trung Hình 4 đưa ra một sự minh họa của bốn tín hiệu bình giữa tín hiệu gốc và tín hiệu khôi phục và đánh được đánh giá bởi phương pháp ICA (thuật toán FastICA). Chúng ta có thể thấy rằng những tín hiệu
- là rất giống với những tín hiệu gốc ban đầu. Có thể sai Nguồn Tín hiệu E MSE khác yếu tố âm hoặc dương, nhưng dạng sóng đã được si tách yi phục hồi. s1 y2 4,5934 0,9151 s2 y1 4,5652 0,9142 Bảng 1: Kết quả đánh giá thực nghiệm 2 Thực nghiệm 3: Phân tách tiếng nói, tiếng hát và nhạc không lời, ba nguồn phát s gồm một giọng nam, một giọng hát và một nhạc không lời được trộn để tạo hỗn hợp x. Kết quả tách y thu được đánh giá trên các dạng sóng và kết quả đánh giá rất tốt. Hình 4: Tín hiệu ước lượng theo phương pháp ICA Hình 6: Biểu diễn các tín hiệu trong thực nghiệm 3, si,, xi yi tương ứng các tín hiệu nguồn, tín hiệu Thực nghiệm 2: lai trộn và tín hiệu ước lượng được. Kết quả phân tách rất tốt khi quan sát dạng sóng của tín hiệu và Phân tách tiếng nói người, hai nguồn phát s kết quả đánh giá khách quan đều rất tốt. Thứ tự các gồm một giọng nữ (S1) và một giọng nam (S2) nguồn âm nhận được và kết quả đánh giá như sau: được trộn để tạo hai hỗn hợp x . Kết quả có sự thay đổi về biên độ và trật tự các nguồn. Tuy Nguồn Tín hiệu E MSE nhiện, kết quả thu được là tiếng nói tách rời nhau tách từ hỗn âm lai trộn. 4,5081 1,1124 1 s1 0 s2 y3 4,4533 1,1157 -1 0 1 2 3 4 5 6 7 8 s3 y2 3.7254 0,8775 4 x 10 0.5 s2 0 Bảng 2: Kết quả đánh giá thực nghiệm 3 -0.5 -1 0 1 2 3 4 5 6 7 8 4 x 10 20 x1 0 -20 0 1 2 3 4 5 6 7 8 4 x 10 10 x2 0 -10 0 1 2 3 4 5 6 7 8 4 x 10 20 y1 0 -20 0 1 2 3 4 5 6 7 8 4 x 10 20 y2 0 -20 0 1 2 3 4 5 6 7 8 4 x 10 Hình 5: Biểu diễn các tín hiệu trong thực nghiệm 2
- Hình 6: Biểu diễn các tín hiệu trong thực nghiệm 3 Thực nghiệm 4: Phân tách hỗn hợp tiếng hát và nhạc không lời, năm nguồn phát s gồm ba giọng hát khác nhau và 2 nhạc không lời. Kết quả tách (ước lượng) y thu được đánh giá trên các dạng sóng và kết quả đánh giá rất tốt. Hình 7: Biểu diễn các tín hiệu trong thực nghiệm 4. Kết quả phân tách rất tốt khi quan sát dạng sóng của tín hiệu và kết quả đánh giá khách quan đều rất tốt. Nguồn Tín hiệu E MSE si tách yi s1 y1 4.2282 1,1304 s2 y2 5.1248 1,0842 s3 y4 4.5929 1,1076 s4 y3 4.5639 1,1091 s5 y5 3.9791 0,8907 Hình 7: Biểu diễn các tín hiệu trong thực nghiệm 4 Bảng 3: Kết quả đánh giá thực nghiệm 4 Thực nghiệm 5: Lai ghép từ tập nhiều loại tín hiệu: tiếng nói, tiếng hát, nhạc không lời, người hát có nhạc, tất cả mười nguồn âm. Kết quả tách (ước lượng) y thu được đánh giá trên các dạng sóng và kết quả đánh giá rất tốt.
- Hình 8: Biểu diễn các tín hiệu trong thực nghiệm 4
- Nguồn Tín hiệu E MSE [4] Hyvarinen, A. Survey on independent component analysis. Neural Computing urveys,2: si tách yi 94:128,2000. s1 y2 5.0099 1,0886 [5] Hyvarinen, A., Karhunen,J., and Oja, s2 y5 4.5652 0,9142 E.independent component analysis. John Wiley & s3 y4 4.5080 1,1124 Sons, Inc, 2001. [6] Lauri Savioja, “Modeling Techniques foer y6 4.2282 1,1304 s4 Virtual Acoustics”. Helsinki University of s5 y1 5.1247 1,0842 Technology, 1999. s6 y3 4.5932 1,1077 [7] A.Kulowski. Algorithmic representation of the s7 y9 4.5641 1,1092 ray tracing technique. Applied Acoustics, 1985. [8] J. Borish. Extension of the image model to 3.9794 0,8908 s8 y8 arbitrary polyhedra. J.Acoust. Soc. Am., 75(6): s9 y7 4.1771 0,8996 1827-1836. 1984. s10 y10 4.1429 1,1366 [9] D.Botteldooren. Finite-difference tim-domain simulation of lowfrequency room acoustic problems.J.Acoust.Soc.Am., 98(6):3302-3308, Bảng 4: Kết quả đánh giá thực nghiệm 5 1995. [10] H. Lehnert and J. Blauert. Rrinciples of 7. KẾT LUẬN binaural room simulation. Applied Acoustics, 36(3- Như vậy, chúng tôi đã thực hiện thành công ứng 4):259-291, 1992. dụng kỹ thuật ICA giải quyết bài toán BSS trong việc [11] Aapo Hyvarinen, Juha Karhunen, Erkkl Oja, tách âm. Các thực nghiệm được tiến hành với các đặc Independent component analysis, John Wiley & trưng âm khác nhau như nguồn giọng nam, nguồn đặc Sons, Inc, 2001. trưng giọng nữ, có nguồn là nhạc không lời. Điều này [12] Aapo Hyvarinen, Erkkl Oja “Independent cho thấy sức mạnh và tính hiệu quả của kỹ thuật ICA component analysis: Algorithms and Analysis,” trong ứng dụng tách âm. Các kết quả thực nghiệm Neural Networks, 13(4-5):411-430, 2000. được đánh giá khách quan với các hệ số E và hệ số [13] Trương Tấn Quang, Nguyễn Hữu Phương. SRN và chủ quan bằng việc quan sát dạng sóng tín Tách âm dùng phương pháp phân tích thành phần hiệu, nghe âm phát lại đều đạt kết quả tốt. độc lập , Tạp chí phát triển KH&CN, tập 9, số 2 - 2006 . Kỹ thuật ICA là phương pháp xử lý tín hiệu dựa [14] Vương Hoàng Nam. Phương pháp phân tích trên đặc trưng thống kê, cho phép xử lý nhiều nguồn thành phần độc lập, luận văn tốt nghiệp chuyên đề tín hiệu thay vì chỉ một nguồn tín hiệu đơn thuần dựa nghiên cứu sinh trường ĐHBK Hà Nội, 2011. trên đặc tính phổ. Thật sự phương pháp ICA đã trở Thông tin liên hệ: thành một công cụ phân tích thống kê mới bên cạnh các kỹ thuật truyền thống như PCA, FCA Các kỹ Họ tên: Quách Nguyễn Lệ Hiền thuật về phân tích nguồn mù này đã có nhiều nghiên cứu phát triển và chắc rằng các giới hạn cũng như điều Đơn vị: Trường THPT Bình An - Bình Dương kiện ràng buộc của mô hình ICA cơ sở sẽ được giải Điện thoại: 0987014244 quyết trong một tương lai gần. Email: quachhien151288@gmail.com TÀI LIỆU THAM KHẢO [1] David B.Roe, Jay G.Wilpon, “Voice Xác nhận của giảng viên hướng dẫn Communication Between Humans and Machines”.National Academy of Sciences, 1994. [2] Hyvarinen, A. and Oja. A fast fixed-point algorithms for independent component analysis. Neural Computation, 9:1483-1492,1997. [3] Hyvarinen, A.Fast and robust fixed-point algorithms for independent component analysis. IEEE Trans. On Neural Networks, 2001. PGS.TS Dương Hoài Nghĩa
- BÀI BÁO KHOA HỌC THỰC HIỆN CÔNG BỐ THEO QUY CHẾ ĐÀO TẠO THẠC SỸ Bài báo khoa học của học viên có xác nhận và đề xuất cho đăng của Giảng viên hướng dẫn Bản tiếng Việt ©, TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH và TÁC GIẢ Bản quyền tác phẩm đã được bảo hộ bởi Luật xuất bản và Luật Sở hữu trí tuệ Việt Nam. Nghiêm cấm mọi hình thức xuất bản, sao chụp, phát tán nội dung khi chưa có sự đồng ý của tác giả và Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh. ĐỂ CÓ BÀI BÁO KHOA HỌC TỐT, CẦN CHUNG TAY BẢO VỆ TÁC QUYỀN! Thực hiện theo MTCL & KHTHMTCL Năm học 2016-2017 của Thư viện Trường Đại học Sư phạm Kỹ thuật Tp. Hồ Chí Minh.