Chương 1. Bài toán nâng cao chất lượng tiếng nói – Phương pháp tách nguồn mù o Chương 2. Kỹ thuật tách nguồn mù với thuật toán DUET o Chương 3. Triển khai thuật toán DUET nâng cao chất lượng tiếng nói o Chương 4.
Ứng dụng thuật toán DUET trong hệ thống nhận dạng tiếng nói 2 CHƯƠNG1. BÀI TOÁN NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI – PHƯƠNG PHÁP TÁCH NGUỒN MÙ Giới thiệu chương Ngày nay, với sự phát triển của khoa học công nghệ các máy móc thiết bị ngày càng trở lên thông minh và có giao diện thân thiện hơn với con người. Những năng lực của con người đang đươc sao chép dần cho các thiết bị máy móc. Và một trong những hướng đi là nhận dạng âm thanh.
Đây là một hướng đi đem lại lợi ích ở rất nhiều mặt cho nhân loại, ở cả phương diện nghiên cứu khoa học, trong công nghiệp, y tế cũng như đời sống v.v… Tuy vậy, khả năng nghe, vả xử lý âm thanh của con người vô cùng tinh vi và phức tạp, không dễ gì tái hiện lại và sao chép cho các thiết bị điện tử. Và một trong những thách thức trong quá trình xây dựng hệ thống nhận dạng tiếng nói là bài toán về xử lý nâng cao chất lượng tiếng nói. Đây cũng là một vấn đề nhận được sự lưu tâm đặc biệt và khá phát triển trong những năm gần đây. Trong nội dung của chương này, luận văn sẽ đề cập tới: - Bài toán nâng cao chất lượng tiếng nói và một số phương pháp phổ biến trong nâng cao chất lượng tiếng nói.
- Ứng dụng của phương pháp tách nguồn mù trong nâng cao chất lượng tiếng nói.1 Giới thiệu bài toán nâng cao chất lượng tiếng nói Phương pháp nhận dạng thông qua tiếng nói đang trở lên phổ biến ở rất nhiều lĩnh vực, đặc biệt là với các ứng dụng về an ninh, bảo mât. Các ứng dụng này thường được phát triển với rất nhiều các điều kiện lý tưởng, hoặc phải rất nghiêm ngặt như trong các phòng nghiên cứu. Tuy nhiên, trong hiện thực thì chất lượng tiếng nói thu được thường sai khác rất nhiều so với lý thuyết. Và do đó, tín hiệu tiếng nói đầu vào cần được xử lý trước khi đưa vào nhận dạng.1 Nâng cao chất lượng tiếng nói Trong thực tế, có rất nhiều nguyên nhân gây ra sự sai khác về tín hiệu đầu vào so với tín hiệu gốc.
Và ta thường thấy có một số các yếu tố như sau: Nhiễu cộng hưởng: Thường xuất hiện khi thu âm tiếng nói trong một môi trường có nhiễu nền đáng kể, ví dụ như ở sân bay. Tiếng vọng của âm thanh: Gây ra bởi quá trình thu xuất hiện sự dội lại của tín hiệu âm thanh. Hiệu ứng chập kênh: Thường gây ra do vấn đề kênh thu âm, khi không có sự chuẩn hóa tốt dẫn tới không triệt tiêu được các xung đáp ứng. Tạp âm: Thường xuất hiện khi thu âm trong một môi trường có quá nhiều âm thanh phức tạp.
Méo phi tuyến, nhiễu cộng hưởng điện từ băng tần rộng v. Do đó, bài toán nâng cao chất lượng tiếng nói thường nhắm tới việc bù nhiễu hoặc bù kênh gây ra do các yếu tố bất lợi trên. Và nhìn chung “chất lượng” được đề cập ở đây, tối thiểu cũng phải đáp ứng được các yếu tố như rõ ràng, dễ nhận biết, dễ nghe hoặc là phù hợp với phương pháp xử lý phía sau phần nâng cao chất lương. Tuy nhiên trong nội dung của luận văn sẽ chỉ quan tâm tới ứng dụng nâng cao chất lượng tiếng nói trong hệ thống nhận dạng, và do đó, luận văn sẽ chỉ xem xét trong 2 trường hợp nhỏ: Đơn kênh/ Đa kênh [12] và phương pháp phân tách tiếng nói.2 Các phương pháp nâng cao chất lượng tiếng nói 1.1 Kỹ thuật nâng cao chất lượng trong trường hợp đơn kênh [12] Đây là trường hợp trong đó chỉ tồn tại duy nhất một kênh tín hiệu, hay nói cách khác là chỉ có một đầu vào và một nguồn tín hiệu.
Thường gặp trong một số hệ thống thông dụng như tín hiệu điện thoại bàn hay bộ đàm, hay trong lưu trữ tín hiệu như máy thu âm. Trong trường hợp này thường giả thiết nhiễu là cố định và mức độ thay đổi của tiếng nói là biết được. Với trường hợp này người ta thường hay dùng phương pháp trừ phổ (Spectral Subtraction - SS). Tinh thần chung của phương pháp được mô tả như trong hình 1-1 và trình bày chi tiết trong [32].
Sơ đồ khối minh họa phương pháp trừ phổ. Spectral – subtraction là thuật toán được đề xuất sớm nhất trong các thuật toán được sử dụng để giảm nhiễu trong tín hiệu. Nó dựa trên một nguyên tắc cơ bản, thừa nhận sự có mặt của nhiễu, nó có thể đạt được mục đích ước lượng phổ của tiếng nói sạch bằng cách trừ đi phổ của nhiễu với phổ của tiếng nói đã bị nhiễu. Phổ của nhiễu có thể được ước lượng, cập nhật trong nhiều chu kỳ khi không có mặt của tín hiệu tiếng nói.
Thao tác đó chỉ được thực hiện đối với nhiễu không đổi hoặc có tốc độ xử lý biến đổi chậm, và khi đó phổ của nhiễu sẽ không thay đổi đáng kể giữa các khoảng thời gian cập nhật. Tín hiệu tiếng nói sạch được khôi phục bằng cách tính IDFT của tín hiệu phổ đã được trừ nhiễu. Thuật toán này là một phép tính ước lượng đơn giản vì nó chỉ gồm biến đổi DFT thuận và DFT ngược. Áp dụng kỹ thuật này, mặc dù quá trình xử lý hiệu đơn giản, nhưng nếu trong quá trình xử lý không được thực hiện một cách cẩn thận thì sẽ làm tiếng nói rất dễ bị méo.
Nếu như lấy hiệu số quá lớn thì có thể bị mất đi một phần thông tin của tiếng nói, còn nếu quá nhỏ thì sẽ vẫn còn nhiễu lẫn trong tín hiệu tiếng nói. Để khắc phục vấn đề này, người ta để xuất rất nhiều phương pháp để giảm méo trong quá trình xử lý tiếng nói bằng trừ phổ. Một số phương pháp tỏ ra khá hiệu quả trong nhiều trường hợp.2 Kỹ thuật nâng cao chất lượng trong trường hợp đa kênh [12] Kỹ thuật nâng cao chất lượng tiếng nói đa kênh tận dụng lợi thế sẵn có của đầu vào nhiều tín hiệu trong hệ thống. Nó cho phép dùng thêm một kênh thu thập nhiễu trong một thiết bị loại trừ nhiễu thích nghi, hay dùng quá trình hiệu chỉnh pha để loại bỏ các thành phần nhiễu không mong muốn, hoặc thậm chí tổ hợp cả hai quá trình trên vào một hệ thống [11].
Theo ý tưởng như vậy, có hai hệ thống khác nhau, 5 hệ thống thứ nhất dựa trên quá trình loại trừ nhiễu thích nghi và hệ thông thứ hai là dựa vào kỹ thuật định vị theo chùm (beamforming) tiếng nói thông qua quá trình xử lý theo mảng. Kỹ thuật loại trừ nhiễu thích nghi: loại trừ nhiễu thích nghi là một kỹ thuật khá hiệu quả cho nâng cao tiếng nói [6], với sự xuất hiện của một kênh phụ trợ, đi cùng với kênh chính thu thập dữ liệu tiếng nói. Nó giống như một kênh tham chiếu, có nhiệm vụ lấy mẫu tương quan hoặc tham chiếu tới nhiễu đang gây ra với tín hiệu cần quan tâm. Đầu vào tham chiếu này sẽ được lọc theo một thuật toán thích nghi.
Sau đó, ta thực hiện loại trừ nhiễu bằng cách, trừ tín hiệu ở kênh chính (gồm cả tín hiệu cần quan tâm và nhiễu ) cho tín hiệu đầu từ thuật toán thích nghi vừa rồi. Nhìn chung, mô hình của phương pháp có thể được minh họa như trong hình 1-2. Một mô hình của thiết bị loại trừ nhiễu thích nghi [38]. Kỹ thuật Beamforming nhiều đầu thu: Phương pháp này xuất phát từ các ứng dụng radar và phát hiện tàu ngầm, và có thể được thực hiện theo nhiều cách khác nhau.
Và một hướng tiếp cận trực tiếp nhất là delay-and-sum Beamforming. Ý tưởng cơ bản của hệ thống này là dựa trên giả định rằng thành phần dội hay phản xạ ngược lại chiếm một phần nhỏ, và hướng truyền của những tín hiệu cần quan tâm là đã xác định. Sau đó, thông qua một quá trình tinh chỉnh chính xác của các chức năng về pha trong mỗi đầu thu, để hiệu chỉnh thời gian trễ lan truyền của tín hiệu quan tâm đến các đầu thu, tín hiệu mong muốn có thể được tăng cường, đồng thời loại bỏ tất cả các thành phần nhiễu không được tinh chỉnh pha. Thuật toán của phương pháp có thể được minh họa như trong hình 1-3.
Kỹ thuật delay-and-sum [40].3 Phương pháp phân tách tiếng nói trong nâng cao chất lượng tiếng nói Với các kỹ thuật rất nhiều các kỹ thuật về lọc nhiễu hay loại tiếng vọng, thì phần lớn các vấn đề về nhiễu đã được loại trừ một cách rất hiệu quả, tuy nhiên, điều gì xảy ra khi “nhiễu” cũng là tiếng nói, hay nói cách khác là “ tín hiệu nhiễu ” có có cùng mọi đặc tính của tiếng nói? Rõ ràng, trong rất nhiều trường hợp, ta chỉ quan tâm tới một tiếng nói trong rất nhiều tiếng nói thu được, ví dụ như trong các đám đông, phòng họp… Bài toán được đặt ra là làm thế nào để có thể tách ra được tiếng nói cần quan tâm. Đây cũng là yêu cầu của bài toán “cocktail-party”. Và khi nhắc đến bài toán này, thường sẽ đi kèm với một lĩnh vực mà hiện nay, đang rất thu hút, và có rất nhiều các bước tiến đáng kể cũng như các ứng dụng rộng rãi – lĩnh vực tách nguồn mù – Blind Sources Separation. Trong những phần kế tiếp, luận văn sẽ trình bày một cách kỹ lưỡng hơn phương pháp này.2 Phương pháp tách nguồn mù ứng dụng trong nâng cao chất lượng tiếng nói Tai ta thường đồng thời tiếp nhận nhiều nguồn âm thanh (tiếng nói, âm nhạc, nhiễu – tiếng ồn…) khác nhau, nhưng ta vẫn có thể lắng nghe nguồn âm thanh chủ định.
Một hệ thống nhận dạng cần đạt đến khả năng thông minh như vậy. Bài toán là từ nhiều tín hiệu đã trộn lẫn, ta muốn khôi phục các tín hiệu nguồn riêng rẽ. Đây là bài toán tách nguồn mù (Blind Source Separation – BSS) [36].1 Giới thiệu chung Bài toán phân tách nguồn mù BSS (Blind Source Separation) đang được 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…Bài toán BSS cho phép ước lượng lại các nguồn tín hiệu nguồn nguyên bản mà chỉ dựa vào những dữ 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 nguồn gần như không biết. Ta có thể quan sát hình 1-4 để mường tượng rõ hơn về bài toán này.
Minh họa cho bài toán phân tách nguồn mù [36].