基于音樂特征識別的音樂噴泉計算機輔助設計系統(tǒng)
音樂噴泉作為將聽覺藝術與視覺藝術相結合的藝術形式,已經(jīng)得到了廣泛的關注。目前,國內(nèi)外雖然已建有很多音樂噴泉,但大多數(shù)音樂噴泉都存在著兩方面不足:首先、音樂噴泉表演程序的設計需要音樂、舞美、電腦、自控、噴泉等專業(yè)專家的合作;其次,為了了解音樂噴泉表演程序的噴射效果,只有在硬件上進行仿真實驗。因此,對于一般的音樂噴泉系統(tǒng),其表演程序的設計非常費時費力,也正是由于這個原因,既便是美國lasvegas這樣著名的噴泉也只能表演幾首曲目。
基于上述問題,筆者設計開發(fā)了一個音樂噴泉的計算機輔助設計系統(tǒng),簡稱cad-mf。在該系統(tǒng)中,首先提取音樂的基本特征,然后在此基礎上分析音爾的曲式特征并將整首樂曲分成若干樂段,并分析出每一段音樂所表達的基本感情色彩;第二步,根據(jù)音樂的曲式和情感特片,為每個樂段匹配相應的音樂噴泉基本表演程序,從而生成最初的音樂噴泉表演程序。該表演程序可以用三維動畫進行仿真,并可以通過友好的人機界面進行修改,直至滿意。最終的表演程序經(jīng)過自動編譯,可以控制音樂噴泉按照設計的動作進行噴射,實現(xiàn)音樂與噴泉的同步。
本文引用地址:http://m.butianyuan.cn/article/21418.htm1 音樂噴泉實驗裝置
該音樂噴泉實驗裝置的草圖如圖1所示。該噴泉由13個噴頭、4組彩燈組成。其中,噴頭1~6為第一組,可以沿圓圈的切向徑向進行自由擺動;7~9為第二組,10~12為第三組,可以左右隨意搖擺;13為第三組,不能轉動。此外,這13個噴頭的噴射高度還可以有3個級別的變化。同時,該裝置中還配有4組(1~4)彩燈,由于每一組由3個不同顏色的燈泡組成,因此可以營造出多彩的光照效果。
2 系統(tǒng)概述
該系統(tǒng)由七個部分組成,如圖2。
(1)音樂特征的識別
在本系統(tǒng)中,選擇midi(musical instrument digital interface)文件作為輸入的音源。midi是音樂信號在電子樂器之間傳輸?shù)臉藴?,包括硬件接口標準以及電子音樂信號在不同硬件之間的異步串行傳輸協(xié)議[1]。midi格式的音樂文件記錄了音樂的全部樂譜和演奏的全過程,很多基本的音樂特征都可以從中直接獲得。在此基礎上,又可以進一步提取旋律、和聲、節(jié)奏等復雜特片。根據(jù)音樂基本特征和復雜特征在內(nèi)的音樂信息,最終能夠按照樂曲的結構將其分為若干樂段,并且利用模糊分類器識別出每一個樂段所帶有的感情色彩。
(2)音樂特征與噴射動作的匹配
這一部分主要是通過模糊專家系統(tǒng)將音樂特征與噴射動作進行兩個層次的匹配——段匹配和音符匹配。段匹配是指根據(jù)感情色彩為各個樂段找到合適的基本表演程序,即用于表現(xiàn)某一特定情感的典型動作序列。音符匹配則是為特定的音符安排特定的噴射動作。這兩個層次的匹配過程也就是音樂噴泉表演程序的最終設計過程,它記錄了音樂噴泉隨著音樂舞動的全部狀態(tài)。
(3)動畫仿真
當表演程序被設計出來后,如果直接在噴泉裝置上進行仿真,將是一個非常費時費力的過程。因此,設計了動畫仿真了系統(tǒng)。動畫的參數(shù)全部按照實際的噴泉實驗裝置來設計,通過動畫可以實現(xiàn)對實際噴射效果的仿真。為了做出與實際噴射相似的噴射效果,采用粒子系統(tǒng)[2]。
(4)手動修改
在觀看動畫仿真結果后,用戶可能需要對原表演程序進行修改。為了使用戶能夠在不需要了解內(nèi)部代碼的情況下對表演程序進行任意的修改,筆者開發(fā)了一個很有好的人機界面。該界面不僅可以實現(xiàn)單點修改、多點修改,還可以為整段音樂選擇另一套表演動作。
(5)打印噴泉表演流程總譜
該總譜既包括了所有音符,又包括了與音樂對應的所有噴射動作,可以對整個表演程序一目了然。
(6)編譯成控制程序
用一臺pentium iii 866mhz的pc機作為控制器,它能夠自動地把表演程序編譯成功放輸出的控制程序,從而控制音樂噴泉硬件裝置的噴射,實現(xiàn)音樂與噴泉的同步。
(7)同步播放
為了保證噴射與音樂的同步,筆者開發(fā)了同步播放程序,主要用于防止噴射相對于控制的延時。
音樂特征識別和匹配是該系統(tǒng)的核心。下面,將對這兩個子系統(tǒng)進行重點介紹。
3 音樂特征的識別
由于不同風格的音樂有著各自不同的特點,這里,選擇節(jié)奏相對穩(wěn)定、曲式相對固定的約翰·施特勞斯(johann strauss)的圓舞曲。
3.1 音樂基本特征的提取
在該系統(tǒng)中,選擇midi文件作為輸入的音源。一個midi文件含有一個header chunk和若干個track chunks。速度、節(jié)拍等全局基本特片以從header chunk中得到;而音高、音長等音符信息則可以從track chunks中獲取[3]。由于midi文件中含有大量音樂信息,因此許多音樂的基本特征都可以從中直接獲取。這里,提取了九種基本特片:音色、調(diào)性、節(jié)拍、音高、音長、音量、力度、速度和發(fā)聲時間。
3.2 音樂曲式特征的提取[4]
施特勞斯的圓舞曲多由三部分組成:主體是3~5個小圓舞曲,前面有序奏,最后有尾聲。每首圓舞曲有兩個主要旋律,用單二部曲式(ab)或單三部曲式(aba)構成??紤]到這些旋律常常由兩個非常相似的樂句組成,采用一種搜索相似旋律的方法分析音樂的曲式結構;同時,為了提高搜索效率和正確率,還兼顧了曲式結構中的和聲與節(jié)奏特點。
(1)根據(jù)節(jié)奏和調(diào)性進行初步識別
一首圓舞曲常常由幾百個小節(jié)組成,因此如果在全曲范圍內(nèi)對旋律進行搜索將會非常費時費力。樂曲節(jié)奏和調(diào)性的改變常常意味著新段落的出現(xiàn),這里首先根據(jù)這兩方面的特征對全曲進行初步劃分,為旋律搜索縮小范圍,從而提高搜索效率。
(2)利用旋律搜索進行重點識別
為了進一步提高相似旋律的搜索效率,根據(jù)古典音樂的特點,作三點假設。第一假設一個完整的樂句由16小節(jié)構成,這一假設在很多音樂結構的研究中被采用,并在多數(shù)情況下被證明是正確的。第二段設一個樂句的前4小節(jié)是全句的重點,這一假設能夠用很少的音符表征整個樂句,同時經(jīng)過檢驗是完全正確的。第三段設在眾多的樂器中,小提琴、長笛、單簧管演奏主旋律的可能性最大,這一假設被證明非常效,它幫助從十幾種樂器中迅速地找到主旋律音色,作為旋律搜索的前提。在這三個假設的基礎上,還引入一種樹狀結構“旋律樹”,用以記錄一段旋律的總體輪廓,從而實現(xiàn)對相似旋律的搜索,如圖3。該結構由四層組成:
·第一層代表一段16小節(jié)的旋律;
·第二層代表該旋律的前4小節(jié);
·第三層代表每個小節(jié)的三個正拍;
·第四層代表各個小節(jié)的正拍和半拍;
在圖3中,節(jié)奏是3/4,在旋律樹中,僅僅需要記錄相對音高。與其他記錄旋律的方法相比[5,6],該旋律樹有三個優(yōu)點:首先,由于前4小節(jié)是整段旋律的重點,旋律樹用很少的音符抓住了整段旋律的輪廊;第二,這種樹狀結構不僅記錄了旋律的輪廓,而且記錄了旋律的結構;最后,這種分層結構有利于提高搜索效率。由于上一層的音符比下一層重要,因此,如果在比較旋律樹時在上一就出現(xiàn)了不同,則無需對下面的各層進行比較就可以直接得出二者不同的結論。這種旋律樹可以用來提取和比較旋律,在實際中證明非常有效。
(3)利用和聲特征進行補充識別
經(jīng)過以上兩個步驟,大多數(shù)曲式結構可以被識別出來,但仍會有一些例外。為了進一步提高曲式識別的準確性,又利用終止式[7,8](結束一個音樂結構和結束一個樂思的和聲)對曲式結構進行了補充分析。由于和聲分析相對復雜,這里只考慮了與終止式密切相關的主和弦和屬和弦。
3.3 音樂情感特征的提取
在曲式特征識別基礎上,整個樂曲被劃分成一個個小樂段。該部分則通過對每個樂段的音響、速度、旋律等特征進行綜合分析,最終由一個模糊分類器判斷出其情感特片[9]。為了對情感特征進行合理的描述,根據(jù)在音樂心理學領域得到廣泛認可的hevner詞表[10],提出一種“情感環(huán)”的結構,如圖4。
4 模糊專家系統(tǒng)匹配
這一部分主要通過模糊專家系統(tǒng)對音樂特征進行段匹配和音符匹配兩個層次上的匹配。
4.1 段匹配
段匹配在對音樂作品進行結構分析和情感分析基礎上,根據(jù)情感色彩為每一段旋律找到最適合的基本表演程序。
(1)基本表演程序庫的建立
基本表演程序序中存放大量的基本表演程序,即表演動作序列?;颈硌莩绦虻慕Y構如圖5所示。從圖5中可以看出,每一個基本表演程序除了記載所有動作的名稱和動作時間和,還有該基本表演程序所體現(xiàn)的感情色彩。值得注意的是,這里的動作時間是指在標準速度(定義為1小節(jié)/1秒鐘)下的動作時間。因此,當樂曲速度變化時,系統(tǒng)要自動根據(jù)速度的改變調(diào)整運動時間,從而實現(xiàn)音樂與動畫的同步。
(2)表演程序控制器的建立
段匹配的結果記錄在表演程序控制器ppc(performance program controller)序列中,作為進一步設計表演程序的基礎,如圖6。表演程序控制器有六個參數(shù):第一個是控制器編號,即樂段編號;第二個是記錄該樂段旋律線的旋律樹的編號;第三、四個分別是該樂段的起始和結束小節(jié);第五個是該樂段的感情分類;最后一個則是為該樂段匹配的基本表演程序的編號。
4.2 音符匹配
音符匹配包括兩部分:首先根據(jù)樂曲速度決定基本表演程序中相鄰動作的時間間隔;其次是為關鍵音符(如強音)設計一些特殊的動作。在段匹配的基礎上,音符匹配使音樂動畫的設計做到了點面結合。
經(jīng)過段匹配和音符匹配,最初的音樂噴泉的表演程序就產(chǎn)生了,它記錄了音樂噴泉隨著音樂噴射的所有動作。
5 實驗結果
筆者在windows 2000平臺上用visual c++開始了該系統(tǒng)的原形,并選取了《藍色多瑙河》、《春之聲》、《皇帝圓舞曲》等旋特勞斯的著名圓舞曲進行了實驗。結果非常令人滿意。當基本表演程序庫中的基本表演程序很少時,噴泉的姿態(tài)變化出現(xiàn)了大量的重復,而當基本表演程序進行擴充后,噴泉的動作設計非常令人滿意。以《藍色多瑙河》為例。自動設計用了5分種時間。序曲部分是在藍色燈光下的簡單搖擺,與各個小圓舞曲對應的是或歡快、或抒情、或激昂一段段噴射動作,而尾聲則是所有水柱一齊噴射的場面。當相似的旋律出現(xiàn)時,噴射的動作是完全一樣;如果是以不同的速度出現(xiàn),則噴射的速度也會相應地改變,基本做到了視覺感受與聽覺感受的一致。經(jīng)過很少的幾處修改,該表演程序在音樂噴泉試驗裝置上與音樂進行了同步表演,結果非常令人滿意(圖7、8)。筆者還嘗試了一些其他類型的曲目,包括“times to say good-bye”(流行音樂),“swan lake”(古曲音域),“春江花月夜”(民樂)。與想象的相同,自動設計出的表演程序并不令滿意。但由于人機修改界面非常友好,用幾個小時就完成了一個樂曲的設計工作。這與傳統(tǒng)的制作方式相比,大大提高了效率。
評論