專利名稱:基于手部動作感應的虛擬演奏系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及一套基于手部動作感應的虛擬演奏系統(tǒng)。
技術背景隨著計算機系統(tǒng)性能快速提升,許多在音樂制作上使用的硬件已經(jīng)轉化成 為軟件實現(xiàn)。大量優(yōu)質的軟音源相繼出現(xiàn),使得人們不必再花費幾十萬甚至上 百萬的資金去購買音色上好的三角鋼琴就能聽到世界頂級鋼琴發(fā)出的聲音甚至 進行演奏。與此同時,建立在軟件層面的虛擬樂器也相繼涌現(xiàn)出來,虛擬吉他手、REAL GUITAR等虛擬樂器軟件有著豐富的演奏功能和優(yōu)質的音色。利用軟音源技術的虛擬樂器是樂器發(fā)展的一種新趨勢。但目前市場上虛擬 樂器的發(fā)展很大程度上還停留在軟件層面上。硬件層面上大量采用的依然是 MIDI鍵盤控制器,其人機交互方式仍然沒有擺脫鍵盤的形式,其輸入方式與真 實樂器的彈奏手法相差甚遠。因此,如何改進虛擬樂器的人機交互方式已成為 本領域技術人員亟待解決的技術問題。Virtual Air Guitar Company Oy生產(chǎn)的Air Guitar是目前該領域較為成功的產(chǎn) 品。它通過網(wǎng)絡攝像頭識別使用者的手勢,但這是以網(wǎng)絡攝像頭能拍到使用者 的手為前提,有一定的局限性,如果使用者背對這攝像頭或者手在攝像頭的視 覺范圍之外,系統(tǒng)便會失效。它將手勢信息輸入音樂智能模塊進行處理,控制 產(chǎn)生聲音,但音樂智能模塊原理是將兩只手視為兩個點,兩個點的連線等效于 弦,這僅僅相當于彈奏一根弦發(fā)聲,與真實的吉他相差甚遠。同時它利用地面 上的兩個踏板控制開始和停止,給使用者帶來不便。專利號為200480004097.8,名稱為"虛擬現(xiàn)實音樂手套系統(tǒng)"的專利提出 了一種虛擬現(xiàn)實音樂系統(tǒng)。它的手套組件結合有可變形管并將可變形管連接到 信號啟動器上,以此來識別手部動作,但這僅僅能識別手指的彎曲動作,只能 實現(xiàn)擊打類的樂器功能,不能完全滿足樂器演奏的需求。它通過按鍵式按鈕來 切換樂器、模式,給使用者帶來了很大的不便。因此該專利所述虛擬現(xiàn)實音樂 系統(tǒng)無法給使用者帶來近似真實的樂器演奏感受和舒適的人機交互體驗。發(fā)明內(nèi)容本發(fā)明的目的是提供一種利用手套進行人機交互的虛擬樂器,其彈奏手法 與彈奏真實樂器相同或相似,使操作者自然、靈活地進行虛擬演奏。本發(fā)明的另一目的是實現(xiàn)用一雙手套演奏笛子、鋼琴、吉他三種樂器。 本發(fā)明還能將樂器的演奏聲音和特效場景反饋給操作者,使操作者更加直接、更加自然地進行演奏。為了達到上述目的,本發(fā)明提供了一套基于手部動作感應的虛擬演奏系統(tǒng),包括數(shù)據(jù)采集手套,對手部動作進行感應; 機器視覺模塊,對手部位置信息進行感應;傳輸模塊,將數(shù)據(jù)采集手套和機器視覺模塊采集的信息傳到處理模塊; 處理模塊,從接收到的手部信息中識別出樂器演奏的動作,并產(chǎn)生樂器的 演奏聲音和特效場景;外圍設備,將聲音和場景反饋給操作者。本發(fā)明提供的虛擬演奏系統(tǒng)其彈奏手法與彈奏真實樂器相同或相似,還能 將樂器的演奏聲音和特效場景反饋給操作者,使操作者更加直接、更加自然地 進行演奏。
圖l為系統(tǒng)總體結構示意圖。圖2為系統(tǒng)硬件實現(xiàn)示意圖。圖3為手部信息采集電路流程圖。圖4為傳感器安裝位置圖。圖5為系統(tǒng)軟件平臺層次結構圖。圖6為渲染實現(xiàn)流程圖。圖7為虛擬演奏場景。圖8為聲音引擎處理流程圖。其中,1一紅外LED, 2—彎曲傳感器,3—加速度傳感器,4一氣壓傳感器。
具體實施方式
如圖1所示,本發(fā)明總體方案是利用數(shù)據(jù)采集手套和機器視覺模塊采集手 部的動作以及位置信息,并傳輸?shù)教幚砟K;處理模塊產(chǎn)生樂器的演奏聲音和 特效場景,并利用外圍設備反饋給使用者。系統(tǒng)硬件實現(xiàn)如圖2所示。整個系統(tǒng)包括數(shù)據(jù)采集手套、USB攝像頭、傳 輸模塊、處理模塊、音箱和顯示器。所述數(shù)據(jù)釆集手套包括安裝在手套上的彎曲傳感器、加速度傳感器、氣壓傳感器、紅外發(fā)光二極管(LED)和主控芯片,傳感器根據(jù)彈奏需要安置;傳感器的輸出信號經(jīng)過信號調(diào)理電路并用A/D進行采樣,然后傳給主控芯片,并經(jīng)傳輸模塊傳到處理模塊。所述數(shù)據(jù)采集手套上的手部信息采集電路流程如圖3所示。每只數(shù)據(jù)采集 手套上使用了 5個彎曲傳感器、1個加速度傳感器、1個氣壓傳感器,總共有9 路信號。由于各個傳感器的輸出信號均為模擬信號,因此需要A/D將傳感器的 輸出信號進行采樣。系統(tǒng)選用的主控芯片集成了多路模數(shù)轉換器(ADC),但是 若耍系統(tǒng)對9路信號進行采集,就要使信號分時進入ADC端口。本系統(tǒng)選用八 選一多路選擇開關,將五個手指的彎曲傳感器輸出和加速度傳感器的3路輸出 接入選擇開關,然后將選擇開關輸出接到主控芯片的ADC1,將氣壓傳感器的輸 出接ADC2。這樣就可以通過對主控芯片編程實現(xiàn)在一個采樣周期內(nèi)完成對9 路信號的采樣,并將得到的信息通過傳輸模塊傳給處理模塊。同時利用主控芯 片的I/O 口實現(xiàn)對紅外LED的控制。所述數(shù)據(jù)采集手套,在制作時傳感器應當根據(jù)彈奏需要安置。彎曲傳感器 用于感應手指彎曲,應放置于手指背面;加速度傳感器感應手掃弦加速度,將 其置于手背上;氣壓傳感器感應吹氣動作,放在拇指上;紅外LED是用于攝像 頭對手部位置信息的捕捉,三個紅外LED組成一個陣列置于中指前端。傳感器 在手套上的安置位置如圖4所示。所述傳輸模塊,既可以選用有線方式,也可以選用無線方式。所述有線方 式是通過傳輸線進行傳輸;所述無線傳輸方式為藍牙傳輸、紅外傳輸或ZigBee 傳輸?shù)?。本系統(tǒng)選用ZigBee無線傳輸模塊實現(xiàn)數(shù)據(jù)采集手套信息的傳輸,選用 傳輸線實現(xiàn)機器視覺模塊信息的傳輸。所述系統(tǒng)的機器視覺模塊,采用了紅外LED作為光源,利用紅外濾光片來 進行噪聲抑制。攝像頭捕獲的數(shù)據(jù)通過USB接口傳到處理模塊。所述處理模塊包括手套信息處理模塊、機器視覺處理模塊、虛擬演奏場景 模塊和音頻合成引擎,分別完成手部動作識別實現(xiàn)、機器視覺實現(xiàn)、圖形實現(xiàn) 和聲音實現(xiàn)的功能。在這個架構的基礎上系統(tǒng)還實現(xiàn)了用手部動作發(fā)出各種控 制命令,用一雙手套演奏笛子、鋼琴、吉他三種樂器和即興模式、引導模式、 創(chuàng)作模式三種功能模式。系統(tǒng)軟件平臺層次結構如圖5所示。所述手套信息處理模塊通過傳輸模塊得到手部動作信息,從而計算出相應 的手部動作。所述系統(tǒng)的機器視覺處理模塊,由于攝像頭提供的單幀捕獲存儲格式為 BMP,使得系統(tǒng)可以對圖像直接處理,在BMP圖像中釆用RGB彩色模型來表6示像素點。系統(tǒng)通過RGB空間向灰度空間的轉換以及二值化處理,進行坐標運 算可得到光心的坐標,實現(xiàn)對手部位置信息的捕捉。
所述虛擬演奏場景模塊包括演奏廳構建模塊、樂器模型導入模塊、攝像機 漫游模塊、演奏特效實現(xiàn)模塊、視口和面板設置模塊以及音頻可視化窗口模塊。 場景實現(xiàn)需要多幀的場景渲染。其中所述演奏廳,由地面、左側面、右側面、 正面這四個基本四邊形面構成。對這四個四邊形面進行貼圖渲染,從而構成了 演奏廳場景。所述樂器模型導入,即將樂器模型經(jīng)世界變換、坐標變換等過程, 放置在場景的正確位置上。所述攝像機漫游,即在場景中架設一架攝像機,改 變攝像機的位置坐標和指向方向,可以達到在場景中漫游的效果。所述演奏特 效包括燈光效果、音符蹦出漸隱、沖擊波光柱三種特效。對于場景的燈光效果, 使用的是基于頂點的光照系統(tǒng)實現(xiàn)。對于音符蹦出漸隱特效,采用粒子系統(tǒng)技 術實現(xiàn)。對于沖擊波光柱特效,實現(xiàn)主要依靠構建一個圓環(huán)的頂點模型和一個 圓柱的頂點模型,貼上沖擊波的紋理貼圖實現(xiàn)。所述視口和面板設置,是定義 一個矩形目標區(qū)域,在區(qū)域內(nèi)繪制場景。在本系統(tǒng)的設計中,屏幕顯示分為兩 個部分,屏幕的上3/5部分是三維演奏場景,下2/5部分是一個狀態(tài)面板。對于 不同的演奏模式有相應的內(nèi)容顯示。所述音頻可視化窗口,就是將聲音用圖形 表達出來。系統(tǒng)采用傅立葉變換的方式分析音頻流,并將聲音的各頻率段上的 幅值用2D圖形顯示出來。
每幀場景渲染實現(xiàn)流程圖如圖6所示,包括以下步驟
(1) 設置場景視口;
(2) 設置燈光效果;
(3) 渲染演奏廳;
(4) 渲染樂器;
(5) 攝像機架構;
(6) 判斷是否彈奏樂器,如果彈奏,則繼續(xù)以下步驟
(7) 實現(xiàn)沖擊波光柱特效;
(8) 實現(xiàn)音符漂浮漸隱特效;
(9) 設置面板視口;
(10) 渲染狀態(tài)面板。 系統(tǒng)虛擬演奏場景效果圖如圖7所示。
所述音頻合成引擎,利用聲音加載技術實現(xiàn)。系統(tǒng)在聲音加載時采用了流 緩沖技術,這種方法保證了音頻文件只在需要時從硬盤動態(tài)調(diào)入到內(nèi)存中,從 而節(jié)約了內(nèi)存空間。聲音加載還存在加載格式的問題,當所有的緩沖都使用同一種聲音格式而且硬件輸出也是使用這種格式,那么混音將不需要在格式轉換 上花任何的工夫,從而達到最優(yōu)的效果。聲音引擎對音樂處理的流程如圖8所 示。
本發(fā)明通過在處理模塊中增加對各種手部動作的處理,從而實現(xiàn)通過手部 動作發(fā)出各種控制命令,如樂器選擇、演奏樂器的切換、演奏模式選擇、菜單 的選擇等,完全脫離了傳統(tǒng)的按鍵式輸入方式。
所述控制命令,是通過特定傳感器相互組合實現(xiàn)的,在避免控制動作與樂 器彈奏動作相同的前提下,盡量使所有動作簡潔易懂。例如剛進入演奏系統(tǒng) 時是樂器選擇場景,通過機器視覺識別手的移動實現(xiàn)三種樂器的選擇,然后雙 手握拳確認樂器選擇。三個樂器演奏場景之間的切換則是通過與各個樂器彈奏 動作相仿的動作實現(xiàn)的。要切換到笛子演奏場景便左手握拳同時向左手的氣壓 傳感器吹氣;要切換到鋼琴演奏場景便同時握住雙手向下甩;要切換到吉他演 奏場景便握住右手,左手做掃弦動作。
在處理模塊中增加對手部動作的處理,還可以實現(xiàn)用一雙手套演奏笛子、 鋼琴、吉他三種樂器。
所述笛子演奏,利用氣壓傳感器和彎曲傳感器來識別笛子的演奏動作,實 現(xiàn)了與真實笛子完全相同的指法。使用兩只手除小指和大拇指外的六個手指進 行演奏,同時利用氣壓傳感器感應吹氣氣壓,判斷操作者是否在進行笛子演奏。
所述鋼琴演奏,利用彎曲傳感器和機器視覺來識別鋼琴的演奏動作。系統(tǒng) 采用了三個音區(qū),音區(qū)的控制通過機器視覺來實現(xiàn),它可以識別手套的空間坐 標位置,并映射到屏幕顯示區(qū)域,即將攝像頭的視場進行X方向的均勻分割。 默認中央C所在的小字組為中心音區(qū)。在每個音區(qū)內(nèi)有CDEFGAB音級,這些 音級可通過手套不同手指來對應彈奏。
所述吉他演奏,利用彎曲傳感器和加速度傳感器來識別吉他的演奏動作。 系統(tǒng)在操作控制上采用了樣本與控制一一對應的實現(xiàn)方式,即每個單獨的指部 動作對應一個單獨的樂音。同時系統(tǒng)還利用加速度傳感器感應手的掃弦動作, 判斷操作者是否在進行吉他演奏。
本系統(tǒng)通過在處理模塊中增加演奏模式處理模塊,實現(xiàn)即興演奏,引導演 奏,創(chuàng)作演奏三種演奏模式。
所述即興演奏即自由彈奏的模式,下面板以動畫的方式實時顯示樂器當前 演奏動作狀態(tài)。
所述引導演奏,即下面板區(qū)域是引導面板,有一個樂譜可視化的導引方式。 系統(tǒng)通過樂譜導引提示用戶在相應的時間按下相應的鍵。從而引導用戶進行相應樂曲的演奏。
所述創(chuàng)作演奏,即下面板區(qū)域是創(chuàng)作面板。在樂器的演奏過程中,面板上 自動顯示所彈奏的音符,音高及音長,并將顯示內(nèi)容存成樂譜文件。
所述外圍設備包括音箱與顯示器。它們將樂器的演奏聲音和特效場景反饋 給使用者,給使用者帶來近似真實、舒適的樂器演奏感受。
權利要求
1、一種基于手部動作感應的虛擬演奏系統(tǒng),其特征在于包括數(shù)據(jù)采集手套,對手部動作進行感應;機器視覺模塊,對手部位置信息進行感應;傳輸模塊,將數(shù)據(jù)采集手套和機器視覺模塊采集的信息傳到處理模塊;處理模塊,從接收到的手部信息中識別出樂器演奏的動作,并產(chǎn)生樂器的演奏聲音和特效場景;外圍設備,將聲音和場景反饋給操作者。
2、 如權利要求1所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于所述數(shù)據(jù)采集手套包括安裝在手套上的彎曲傳感器、加速度傳感器、氣壓傳感器、紅外發(fā)光二極管和主控芯片;傳感器的輸出信號經(jīng)過信號調(diào)理電路并用A/D進行采樣,然后傳給主控芯片,并經(jīng)傳輸模塊傳到處理模塊;傳感器根據(jù)彈奏需要安置;彎曲傳感器用于感應手指彎曲,放置于手指背面;加速度傳感器感應手掃弦加速度,將其置于手背上;氣壓傳感器感應吹氣動作,放在拇指上;紅外發(fā)光二極管用于攝像頭對手位置信息的捕捉,三個紅外發(fā)光二極管組成一個陣列置于中指前端。
3、 如權利要求1所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于所述機器視覺模塊,采用紅外LED作為光源,利用紅外濾光片來進行噪聲抑制。
4、 如權利要求1所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于所述處理模塊包括手套信息處理模塊、機器視覺處理模塊、虛擬演奏場景模塊和音頻合成引擎,分別完成手部動作識別、機器視覺實現(xiàn)、圖形實現(xiàn)和聲音實現(xiàn)的功能。
5、 如權利要求4所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于所述機器視覺處理模塊通過RGB空間向灰度空間的轉換以及二值化處理,進行坐標運算得到光心的坐標,實現(xiàn)對手部位置信息的捕捉。
6、 如權利要求4所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于所述虛擬演奏場景模塊包括演奏廳構建模塊、樂器模型導入模塊、攝像機漫游模塊、演奏特效實現(xiàn)模塊、視口和面板設置模塊以及音頻可視化窗口模塊;所述演奏廳,由地面、左側面、右側面、正面這四個基本四邊形面構成,對這四個四邊形面進行貼圖渲染,從而構成了演奏廳場景;所述樂器模型導入模塊將樂器模型放置在場景的正確位置上;所述攝像機漫游模塊通過改變攝像機的位置坐標和指向方向,達到在場景中漫游的效果;所述演奏特效實現(xiàn)模塊實現(xiàn)演奏的特殊效果;所述視口和面板設置模塊定義一個矩形目標區(qū)域,在區(qū)域內(nèi)繪制場景;所述音頻可視化窗口將聲音用圖形表達出來。
7、 如權利要求4所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于所述音頻合成引擎利用聲音加載技術實現(xiàn);系統(tǒng)在聲音加載時采用了流緩沖技術,并且所有的緩沖以及硬件輸出都使用同一種聲音格式。
8、 如權利要求1所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于在處理模塊中增加對各種手部動作的處理,實現(xiàn)通過手部動作發(fā)出各種控制命令。
9、 如權利要求1所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于在處理模塊中增加對各種手部動作的處理,實現(xiàn)用一雙手套演奏笛子、鋼琴、吉他三種樂器。
10、 如權利要求1所述的基于手部動作感應的虛擬演奏系統(tǒng),其特征在于在處理模塊中增加演奏模式處理模塊,實現(xiàn)即興演奏,引導演奏,創(chuàng)作演奏三種演奏模式。
全文摘要
本發(fā)明涉及一套基于手部動作感應的虛擬演奏系統(tǒng),包括數(shù)據(jù)采集手套,對手部動作進行感應;機器視覺模塊,對手部位置信息進行感應;傳輸模塊,將數(shù)據(jù)采集手套和機器視覺模塊采集的信息傳到處理模塊;處理模塊,從接收到的手部信息中識別出樂器演奏的動作,并產(chǎn)生樂器的演奏聲音和特效場景;外圍設備,將聲音和場景反饋給操作者。本發(fā)明提供了一種利用手套進行人機交互的虛擬樂器,其彈奏手法與彈奏真實樂器相同或相似,使操作者自然、靈活地進行虛擬演奏,同時還能將樂器的演奏聲音和特效場景反饋給操作者,使操作者更加直接、更加自然地進行演奏。
文檔編號G10H1/34GK101504832SQ20091008085
公開日2009年8月12日 申請日期2009年3月24日 優(yōu)先權日2009年3月24日
發(fā)明者付夢印, 劉中金, 琦 梁, 賈挺祥 申請人:北京理工大學