luận văn về hệ thống tìm kiếm âm thanh QBH trong cơ sở dữ liệu đa phương tiện và ứng dụng
1 Lời cảm ơn Trước hết chúng em xin bày tỏ lời cảm ơn chân thành và sâu sắc nhất đến TS. Nguyễn Hải Châu, người thầy đã hướng dẫn em trong đề tài này. Đây là đề tài mới và nhiều khó khăn nhưng nhờ sự động viên và hướng dẫn nhiệt tình của thầy em đã có kết quả như hôm nay. Em xin gửi lời cảm ơn chân thành đến các thầy cô trong khoa CNTT - Trường Đại học Công Nghệ vì những kiến thứ c quý báu mà các thầy cô đã truyền dạy trong bốn năm vừa qua. Những kiến thức này có giá trị đối với chúng em trong quá trình thực hiện luận văn, cũng như trong quá trình xây dựng sự nghiệp trong tương lại. Cảm ơn bạn bè đã luôn bên cạnh giúp đỡ hướng dẫn tôi trong quá trình nghiên cứu, tìm hiểu khóa luận này. Cuối cùng con xin cảm ơn bố mẹ và các anh chị đã luôn động viên giúp đỡ con vượt qua những khó khăn để hoàn thành khóa luận này. Mặc dù đã rất cố gắng tập trung nghiên cứu khóa luận song sẽ không tránh khỏi những thiếu sót mong các thầy cô thông cảm. Chân thành cảm ơn 2 Tóm tắt Trong luận văn này chúng tôi xin trình bày những hiểu biết của mình về những vấn đề sau đây: • Rút trích đặc trưng về giai điệu từ một đoạn thu âm của người dùng • Biểu diễn đặc trưng giai điệu phù hợp cho quá trình tìm kiếm • Phương pháp tìm kiếm hay truy vấn giai điệu mong muốn trong cơ sở dữ liệu trên đặc trưng đã chọn Âm thanh truy vấn được thu âm từ người sử dụng sẽ được rút trích đường biểu diễn cao độ (pitch sequence) hay còn gọi là tần số cơ bản f 0 . Chuổi cao độ sẽ được dùng để tính đặc trưng đường biên giai điệu và đặc trưng này sẽ được dùng trong quá trình tìm kiếm với phương pháp Dynamic Time Warping (DTW) Khóa luận tốt nghiệp này được thực hiện trong khuôn khổ đề tài nghiên cứu mang mã số QC.08.01, Đại học Quốc gia Hà Nôi. 3 Mục lục Danh mục hình vẽ Danh mục các từ viết tắt 4 Từ viết tắt Tiếng anh Tiếng việt QBH Query by humming Truy vấn bởi giai điệu SIFT Simple inverser filter tracking Bộ lọc nghịch đảo đơn giản ACF Autocorrelation function Hàm tự tương đồng DNA Deoxyribo Nucleic Acid Chuỗi axit HMM Hidden Markov Model Phương pháp ẩn Markov MMDBMS Multimedia Database Management Systems Các hệ thống quản lý cơ sở dữ liệu đa phương tiện MELDEX Melody Index Chỉ mục giai điệu DTW Dynamic Time Warping Thuật toán thời gian động Warping KNN K-nearist neighbour K- hàng xóm gần nhất MIDI Musical Instrument Digital Interface Giao diện kỹ thuật số dành cho nhạc cụ CSDL Database Cơ sở dữ liệu RA Recursive Alignment Thuật toán đệ quy MSN Microsoft Network Dịch vụ Internet cung cấp bởi Microsoft QBSH Query by Singing/Humming Truy xuất bởi giai điệu và lời hát MaART Musical and Audio Retrieval tools Công cụ tìm kiếm nhạc MIR Muscal Information Retrieval Hệ thống tìm kiếm âm nhạc 5 LỜI MỞ ĐẦU Ngày nay nhu cầu của con người càng ngày càng lớn hơn. Sự phát triển của Internet, Google, Yahoo, MSN… là những tên tuổi được biết đến trong lĩnh vực cung cấp dịch vụ tìm kiếm tài liệu qua mạng. Với những dịch vụ tìm kiếm tài liệu qua mạng. Với những dịch vụ này người dùng có thể tìm kiếm các tài liệu, hình ảnh, video, hay những tài nguyên khác có trên Internet qua từ khóa. Cho đến nay, phương pháp tìm kiếm bằng t ừ khóa vẫn là phương pháp chủ đạo trong các hệ thống truy vấn thông tin và tìm kiếm dữ liệu. Tuy nhiên, phương pháp này cũng thể hiện những hạn chế và khả năng ứng dụng của nó trong loại dữ liệu không phải là văn bản. Với dữ liệu hình ảnh, việc tìm kiếm phụ thuộc rất nhiều vào việc gán nhãn cho hình ảnh trong dữ liệu. Phương pháp này xa rời với bản chất của hình ảnh là màu sắc và đường nét. Trong âm nhạc, phương pháp này cũng tỏ ra những mặt hạn chế của nó. Bản chất của âm nhạc là giai điệu, nhưng hầu hết các từ khóa không thể hiện được tính chất này của bản nhạc. Tìm kiếm dựa vào thông tin nhạc sĩ, ca sĩ và lời bài hát là những ứng dụng chính trong truy vấn thông tin âm nhạc hiện nay.Tưởng tượng rằng khi bạn đang nghe một bài hát nào đó và r ất thích nó và bạn muốn nghe lại nó. Nhưng bạn không biết tên bài hát hay tên tác giả của nó. Bạn bắt đầu hỏi bạn bè của bạn, ngân nga giai điệu đó lên. Không có một ai biết để giúp bạn, bởi vậy bạn sẽ rơi vào bế tắc. Vì vậy phát sinh ra máy tìm kiếm âm nhạc như hệ thống QBH như vậy để thỏa mãn nhu cầu của con người. Hệ thống giúp người dùng tìm kiếm dễ dàng hơ n dựa trên giai điệu được hát hay ngân nga từ người dùng. Trong luận văn này tôi sẽ trình bày những hiểu biết của mình về một hệ thống tìm kiếm âm thanh dựa vào giai điệu được hát ngân nga (humming) từ người dùng. Đề tài:”Hệ thống tìm kiếm âm thanh QBH trong cơ sở dữ liệu đa phương tiện và ứng dụng” Chương 1 Giới thiệu về hệ thống tìm kiếm âm thanh Chương 2 Các vấ n dề nghiên cứu liên quan Chương 3 Hệ thống truy vấn âm nhạc qua giọng hát Chương 4 Thực nghiệm, kết quả và hướng phát triển tìm kiếm âm nhạc 6 Chương 1. GIỚI THIỆU VỀ HỆ THỐNG QUERY BY HUMMING (QBH) 1.1 Giới thiệu Hệ thống truy vấn Query by Humming (QBH) là một hệ thống được phát triển dựa trên nền một hệ thống cơ bản gọi là MIR (Music information retrieval). Mục đích của hệ thống MIR để xử lý thông tin âm nhạc và tìm kiếm cơ sở dữ liệu âm nhạc bởi nội dung. MIR là một hệ thống bao gồm nhiều ngành khoa học nghiên cứu về việc truy xuất thông tin từ âm nhạc. Bao gồm: • Các phương pháp tính toán cho việ c phân lớp, lấy mẫu, phân cụm – sự trích chọn đặc trưng nhạc với dạng đơn và đa âm, việc ghép nối, lấy mẫu tương tự, và sự truy xuất. • Theo các phương pháp và cơ sở dữ liệu thông thường, những ứng dụng của việc phát hiện và nhận dạng âm nhạc một cách tự động, phần nhạc đệm tự động, sự định tuyến và l ọc cho các bản nhạc và các truy vấn nhạc, ngôn ngữ truy vấn, các chuẩn và siêu dữ liệu khác hoặc các giao thức cho việc xử lý và truy xuất nhạc, các hệ thống đa xử lý và sự phân bổ tìm kiếm • Phần mềm cho MIR là các trang web có ý nghĩa các chủ đề nhạc số, các phương thức thông minh, các phần mềm cộng tác liên quan, tìm kiếm cơ bản trên web và sự truy xuất có ý nghĩa (semantic retrieval), tìm kiếm bởi giai điệu (QBH), nhận dạ ng âm thanh (acoustic fingerprinting). • Sự nhận dạng bản nhạc, sự hiểu biết, sự ảnh hưởng và các cảm xúc – các chuẩn đo độ tương tự âm nhạc, các tham biến có cú pháp, các tham biến có ý nghĩa, các mẫu nhạc, cấu trúc, kiểu và thể loại, các phương pháp luận giải thích về âm nhạc • Sự phân tích âm nhạc và trình bày các kiến thức tổng kết tự đông, trích dẫn, sự xuống cấp, sự chuyể n đổi, các mẫu hình thức của âm nhạc, các khía cạnh về số hóa và những đặc trưng, chỉ mục âm nhạc và siêu dữ liệu. Phân tích lý thuyết vo hướng âm nhạc là một sự bổ sung cho sự tìm kiếm âm nhạc MIR với những từ khóa và quy mô của tín hiệu âm nhạc mù là một sự theo đuổi không bình thường. 7 Sau đây chúng ta cùng tìm hiểu về phương pháp tìm kiếm âm nhạc dựa vào giai điệu qua hệ thống QBH dưới đây. 1.2 Cấu trúc của hệ thống Query by humming (QBH) QBH (Query by humming) là một hệ thống truy vấn dựa trên nền tảng cơ bản về nội dung của hệ thống tìm kiếm âm nhạc MIR [phần 1.1 ở trên]. Hệ thống truy vấn thông tin âm nhạc sẽ nhận thông tin giai điệu truy vấn từ người dùng và trích xuất thông tin đặc trưng cần thiết của giai điệu. Đặc trưng giai điệu sẽ được đem so sánh với những đặc trưng giai điệu có sẵn trong cơ sở dữ liệu. Hệ thống trả về danh sách các bài hát có giai điệu tương đồng, được sắp xếp theo thứ tự nhất định. [5, 6, 11] Ta thấy, hệ thống cần những phần xử lý như sau. [Xem chi tiết Hình 1] • Xử lý tín hiệu truy vấn từ người dùng: Nhận giai điệu truy vấn từ người dùng và rút trích đặc trưng thích hợp • Biểu di ễn đặc trưng: thông tin giai điệu của bài hát trong cơ dữ liệu cũng như trong tín hiệu truy vấn được biểu diễn dưới dạng thích hợp để sử dụng trong quá trình tìm kiếm. • Tìm kiếm (Matching module): Đặc trưng giai điệu được đem so sánh với các đặc trưng có sẵn trong cơ sở dữ liệu. Trong quá trình xử lý này, điểm đánh giá đọ tương đồng sẽ được tính cho các bài hát. Kết qu ả trả về sẽ là một danh sách có thứ tự các bài hát trong cơ sở dữ liệu. Mô hình đơn giản của một hệ thống truy vấn thông tin âm nhạc dựa trên giai điệu được biểu diễn hình dưới đây: 8 Hình 1: Mô hình hệ thống truy vấn thông tin âm nhạc bằng giọng hát hoặc giai điệu Có những hệ thống lại được cấu tạo khác đôi chút giống như hệ thống Sloud QBH cơ bản dựa theo cấu trúc cơ bản của hệ thống QBH ở trên nhưng có phần khác: Cấu trúc của một hệ thống tìm kiếm Sloud QBH bao gồm hai phần là khách và phần chủ - bao gồm các cơ sở dữ liệu các giai điệu. [5] 9 Phần khách của máy là một giao diện web nhận dạng và định vị trí các nốt của một giai điệu được huýt sáo vào. Phần này dùng để chuyển đổi một truy vấn sang định dạng mà cho phép việc tìm kiếm trở nên thiết thực. 9 Phần chủ có nhiệm vụ nối truy vấn mà được đưa đến với các đoạn giai điệu trong cơ sở dữ liệu để trả về kết quả cho người dùng. 9 Sơ đồ minh họa như sau : 9 Hình 2: Sơ đồ máy tìm kiếm QBH khác Máy tìm kiếm QBH thực hiện những chức năng sau: a. Cung cấp âm thanh được “hum” vào dưới dạng MIDI, ví dụ nhận dạng cao độ và thời gian mà các note được hum vào. b. Cung cấp sự biểu thị của việc nhận dạng đường viền cao độ trong khi đang hát trong thời gian thực; c. Cho phép chơi lại giai điệu nhận dạng, biến đổi trong MIDI, trước khi đưa ra truy vấn d. Tạo chỉ mục giai điệu và gửi m ột truy vấn đến mạng chủ Sloud QBH e. Cung cấp việc bố trí các đại diện các note tìm kiếm và kết kết quả trả về [5] 10 1.3 Những ảnh hưởng đến việc tìm kiếm chính xác và hiệu quả [6] 1.3.1 Người không thể đưa ra một truy vấn hoàn hảo Dù là người dùng có trí nhớ hoàn hảo về từng giai điệu khác nhau, người đó có thể bắt đầu tại một khóa sai hoặc là có thể truy vấn nhiều nốt tắt cao độ ở trên khắp giai điệu. Thỉnh thoảng có thể bỏ rơi vài nối hoặc thêm vào vài nốt mà nó không tồn tại trong giai điệu bình thường. Thêm vào đó, không người dùng nào mong đợi có thể hát hoàn hảo đúng nhịp điệu như bài hát chứa trong cơ sở dữ liệu. Cuối cùng, bởi vậy không ai chấp nhận các khác một cách qua lại một truy vấn hum vào có thế chứa bất kỳ một sự kết hợp của các nối này. 1.3.2 Bắt chính xác cao độ và các nốt từ việc ngân nga giai điệu của người dùng Việc bắt chính xác cao độ và trường độ từ truy vấn của ngườ i dùng đưa vào thì rất khó thực hiện. 1.3.3 Thu vào thông tin giai điệu từ một file nhạc ghi. Khó để thực hiện điều này vì việc đưa ra một cách đúng đắn giai điệu từ một bài hát được đưa ra là một trường nghiên cứu trên bản thân nó nhưng hoàn toàn chỉ trích bởi một truy vấn chính xác bởi CSDL. Tạo một truy vấn hoàn hảo sẽ ít dùng nếu cơ sở dữ liệu chứa nh ững đại diện không chính xác của các bài hát. [6] 1.4 Những thách thử chính [8] 1.4.1 Sắp xếp một tập dữ liệu thích hợp cho bài Các tập hợp âm nhạc có thể được chia ra một cách ngắn gọn thành hai loại: những cái mà cung cấp các bài hát hoặc các phần nhỏ của bài hát như là các âm thanh số, cái mà ghi lại dưới dạng sóng, và những phần cung cấp chúng như là việc sao chép các chuỗi của những trường hợp riêng biệt ví dụ như các note (với cao độ và trường độ) và các dấu lặng.Thật khó trong việc s ắp xếp bao hàm nhiều khía cạnh, chất lượng cao, tổ chức tốt các tập hợp nhạc chính xác. 1.4.2 Sao chép lời hát thành các nốt Khi người dùng hát hoặc huýt sáo đưa vào các giai điệu thì việc chuyển đổi chúng thành các nốt thì đang là vấn đề bởi vì người dùng được phép ghi lại giai điệu [...]... điệu và đánh giá độ tưong đồng của các đặc trưng Cơ sở dữ liệu bao gồm 183 bài hát Hệ thống hỗ trợ tìm kiếm tại bất kỳ vị trí nào trong bản nhạc và hỗ trợ file midi đa âm sắc Tuy nhiên, 14 phần pitch tracking khá chậm và là phần tốn nhiều thời gian nhất trong toàn hệ thống Thời gian tìm kiếm sẽ chậm đáng kể nếu như có nhiều bài hát trong cơ sở dữ liệu Cũng do nhược điểm của việc hỗ trợ MIDI đa âm sắc,... giải bít và wavFile là file dạng wav được ghi vào Xem chi tiết [25, 26] Trong Matlab hỗ trợ rất nhiều hàm và công cụ hữu ích cho việc xử lý, phân tích âm thanh từ micro Nó cho phép bạn thao tác dễ dàng với các tín hiệu âm thanh đầu vào thu được 2.2 Biểu diễn nội dung dữ liệu Lựa chọn phương pháp biểu diễn dữ liệu là điều rất quan trọng, vì nó ảnh hưởng đến phương pháp truy vấn, tìm kiếm dữ liệu, và những... và cũng đã đề xuất sử dụng những phương pháp tìm kiếm dựa trên đặc trưng này như: Linear Scaling và Dynamic Time Warping (xem phần 2.3.2) Roger Jang và Hong-Ru Lee đã phát triển phương pháp Progressive Filtering và ứng dụng vào truy vấn âm nhạc Đây là phương pháp giúp truy vấn trên cơ sở dữ liệu lớn Việc này đem lại nhiều hứa hẹn cho ứng dụng thương mại hoá về truy vấn âm nhạc bằng giọng người hát 1.5.8... lớn trong lĩnh vực truy vấn âm nhạc bằng giọng hát Nhóm nghiên cứu đã thực hiện một bộ dữ liệu QBSH Corpus với 48 bài hát và 2797 tập tin thu âm truy vấn mẫu Dữ liệu này rất có ích cho việc phát triển và đánh giá độ tốt của những hệ thống truy vấn âm nhạc bằng giọng hát Nhóm cũng đã đề xuất sử dụng đặc trưng continuous pitch (hay pitch sequence) trong tìm kiếm 15 giai điệu và cũng đã đề xuất sử dụng. .. lên máy chủ và nhận về kết quả Hệ thống Echo sử dụng hai phương pháp để làm tăng kết quả tìm kiếm Phương pháp thứ nhất là sử dụng ngưỡng động để phân lớp pitch contour Thay vì chấp nhận xếp vào lớp Up (U) khi giá trị cao độ của note hiện tại lớn hơn giá trị cao độ của note liền trước, Echo phân tích những bài hát trong cơ sở dữ liệu và xác định ngưỡng thích hợp Phương pháp tương tự cũng áp dụng với rhythm... nhạc cụ đệm…) vẫn làm tốn thời gian tìm kiếm 1.5.6 Vocal Search Hệ thống tìm kiếm trực tuyến được phát triển bởi Bryan Pardo et al (Trường đại học Northwestern, USA) Nhóm nghiên cứu sử dụng đặc trưng Pitch Interval để biểu diễn và phương pháp Local String Alignment (tham khảo phần 2.3.4.2) để tìm kiếm giai điệu Ứng dụng được xây dựng trên nền Java Applet và cơ sở dữ liệu gồm những bài hát của ban nhạc... gũi với người dùng thông thường trong các phương pháp truy vấn thông tin âm nhạc Trong những hệ thống này, một đoạn thu âm của giọng hát hay ngân nga từ người dùng sẽ được biến đổi và bài hát có thông tin tương ứng với đoạn thu âm sẽ được trả về từ cơ sở dữ liệu Các kết quả sẽ được sắp xếp theo thứ tự dựa trên tính gần giống với bản thu âm của mẫu truy vấn (xem Hình 1) Hệ thống phải xử lý để chấp nhận... người mà thường yêu cầu tìm một phần của âm nhạc dựa trên một vài note được hát vào Nó được thiết kế lại để trong các phần mềm ứng dụng thư viện số Một phân tích cho việc dùng logs đã chỉ ra mà hầu hết nguwofi dùng thì đang đưa một truy vấn text trên một chủ đề không chắc chắn để thấy tràng các giai điệu (tunes) kết quả của việc tìm kiếm Một người có thể cũng tìm kiếm cơ sở dữ liệu bởi việc chơi truy... đặc trưng của mẫu âm thanh truy vấn Trong phần này, chúng ta sẽ xem xét một vài hệ thống truy vấn âm nhạc và những đề tài nghiên cứu có liên quan Xem trong [Chương 5 của 16] 1.5.1 Shazam Hiện nay, trong nước chưa có đề tài nghiên cứu nào về truy vấn thông tin âm nhạc được công bố rộng rãi.Shazam (http://www.shazam.com.vn/) là một ứng dụng dùng để nhận dạng bản thu âm thông qua hệ thống mạng điện thoại... ta xây dựng một máy chủ cho việc xử lý các đoạn chỉ số the melodic và một máy khách cho việc truy xuất các đoạn giai điệu giống nhau từ cơ sở dữ liệu Gần đây LSH được áp dụng ví dụ trong việc công nhận âm nhạc và trong dấu tay âm thanh. Ý tưởng của thuật toán LSH như sau Thuật toán LSH là thuật toán tìm kiếm K hàng xóm gần nhất hoặc tìm kiếm xấp xỉ K hàng xóm gần nhất • Truy vấn lân cận K gần nhất KNN . dùng. Đề tài: Hệ thống tìm kiếm âm thanh QBH trong cơ sở dữ liệu đa phương tiện và ứng dụng Chương 1 Giới thiệu về hệ thống tìm kiếm âm thanh Chương. đạo trong các hệ thống truy vấn thông tin và tìm kiếm dữ liệu. Tuy nhiên, phương pháp này cũng thể hiện những hạn chế và khả năng ứng dụng của nó trong