曹 野 (沈陽音樂學(xué)院,遼寧 沈陽 110000)
古琴,還擁有許多別稱:如由于組成古琴的主要材料是絲弦和桐木,因此被稱為“絲桐”;又如使用玉石等華貴材料制作的古琴,則被稱為“瑤琴”“玉琴”[1];古琴在歷史演變過程中,形成了標(biāo)準(zhǔn)的七根弦構(gòu)造,因此被廣泛地稱為“七弦琴”[2]。直到19世紀(jì)20年代,為了與鋼琴區(qū)別開,才改稱為古琴,并沿用至今[3]。古琴是中國(guó)傳統(tǒng)撥弦樂器中的一種,它擁有悠久的藝術(shù)歷史,有明確的文字記載和形象描繪,其可考的歷史上限距今已超過3000年,而關(guān)于古琴的傳說典故則可以追溯到更早的時(shí)期[4]。古琴曾被作為禮器和律法工具,加之歷代統(tǒng)治者和文人的喜愛和推崇,使得它在漢文化中地位崇高,有“士無故不彈奏琴瑟”和“左手彈琴右手書寫”的說法,在中國(guó)傳統(tǒng)四藝(琴棋書畫)中居首位,被視為高雅的代表[5]。目前對(duì)古琴的前沿研究大多采用機(jī)器學(xué)習(xí)或現(xiàn)代設(shè)備等手段進(jìn)行。有學(xué)者使用機(jī)器學(xué)習(xí)方法來研究古琴音樂恢復(fù)問題,試圖通過古琴樂譜來恢復(fù)每個(gè)音符的時(shí)值[6];也有學(xué)者通過物理傳感技術(shù)來數(shù)字重建一件傳統(tǒng)的中國(guó)古琴弦樂器,以邀請(qǐng)人們用身體去解讀這件古典樂器[7];還有學(xué)者描述了一種基于Kinect傳感器的新穎虛擬古琴應(yīng)用程序的設(shè)計(jì)與實(shí)現(xiàn),其目的是喚起用戶對(duì)古琴的興趣[8]。當(dāng)前,對(duì)于古琴的音質(zhì)性能研究相對(duì)較為稀缺。盡管學(xué)者們積極探索機(jī)器學(xué)習(xí)和現(xiàn)代設(shè)備等新技術(shù)應(yīng)用,用以恢復(fù)音樂、數(shù)字重建樂器,設(shè)計(jì)虛擬應(yīng)用以激發(fā)用戶興趣,然而對(duì)古琴音質(zhì)的深入研究卻少有。對(duì)古琴音色、共鳴特性等方面的認(rèn)知的深入挖掘,有助于進(jìn)一步理解和保護(hù)這一古老而獨(dú)特的音樂文化遺產(chǎn)。
古琴被廣泛認(rèn)為是一種非常重要的音樂傳播工具,其特有的共鳴箱設(shè)計(jì)可以有效地放大并優(yōu)化彈奏出的音頻,通過空氣的振動(dòng),使音樂的傳播更加迅速、順暢。共鳴箱的面板無疑是其中最重要的組成部分。面板的主要職責(zé)不僅是實(shí)現(xiàn)音頻的共鳴,更是在音樂播放的過程中傳遞和分配能量的關(guān)鍵環(huán)節(jié)。通過精確的設(shè)計(jì)和工藝制作,面板可以確保音樂在傳播過程中的純粹和醇厚[9]。目前,大多數(shù)古琴的面板采用泡桐木制作,其對(duì)泡桐木材的紋理、年輪寬度、裂痕等都有較高要求[10]。極少數(shù)定制且價(jià)格高昂的古琴會(huì)使用年代久遠(yuǎn)的橫梁木、棺木等“老木”材料[11],這種選材方式并不常見?,F(xiàn)在,古琴的木材選擇還停留在主觀判斷階段,完全依賴于制琴師傅的個(gè)人經(jīng)驗(yàn),通過觀察、撫摸、敲擊、聆聽等方式進(jìn)行主觀評(píng)價(jià)[9],盡管這樣的選擇方式在一定程度上提供了參考依據(jù),但其顯然缺乏科學(xué)的支持和具體的量化標(biāo)準(zhǔn)。這樣的評(píng)估過程并沒有明確的規(guī)則和規(guī)范,因此可能會(huì)引發(fā)多種問題:包括但不限于錯(cuò)誤的判斷、較大的誤差、效率的低下,以及產(chǎn)品質(zhì)量的不穩(wěn)定性。這些問題都可能會(huì)對(duì)最終的決策結(jié)果產(chǎn)生負(fù)面影響,降低決策的精確性和有效性。因此需要更加科學(xué)、規(guī)范的方法來改善這種情況,提高決策效率和準(zhǔn)確性。周力等從振動(dòng)與聲學(xué)的角度去分析與總結(jié)古箏的制作,初步探討了弦樂器面板與紋理的關(guān)系[12];傅明鑒等從制作的角度探討了古箏的音質(zhì)、音色、裝飾及市場(chǎng)等問題[13]。然而,關(guān)于古琴音質(zhì)與其面板紋理之間的關(guān)聯(lián),相關(guān)研究卻相對(duì)匱乏。雖然前沿研究在利用機(jī)器學(xué)習(xí)和現(xiàn)代設(shè)備進(jìn)行音樂恢復(fù)、數(shù)字重建以及虛擬應(yīng)用的方面取得了顯著進(jìn)展,但對(duì)古琴構(gòu)造材料的微觀特性與音響表現(xiàn)之間的關(guān)系的研究尚待加強(qiáng)。探索古琴音質(zhì)與木制面板紋理之間的關(guān)聯(lián)將有助于更全面地理解這一樂器的聲學(xué)特性,為保護(hù)和傳承古琴音樂文化提供更為深刻的理論基礎(chǔ)。
紋理是自然界中無處不在的一種現(xiàn)象,它反映了事物的組成要素在分布和特征上的某種規(guī)律,特別是與外形或手感等質(zhì)量相關(guān)的規(guī)律。通常會(huì)將紋理定義為視覺圖像中由于灰度或色彩分布的特定模式而形成的一種具有明顯有序性的現(xiàn)象。這種有序性可能體現(xiàn)在圖像的各種方面,包括但不限于顏色的深淺變化、圖像區(qū)域的邊界分布、圖像內(nèi)的形狀和結(jié)構(gòu)等。這種有序性不僅為理解和解析視覺圖像提供了重要的線索,也為圖像的進(jìn)一步處理和分析提供了基礎(chǔ)。因此,將那些在圖像的局部區(qū)域內(nèi)表現(xiàn)出不規(guī)則性,但在整體視角下又顯現(xiàn)出明顯規(guī)律性的特征定義為紋理。[14]這種特征可能在圖像的局部區(qū)域內(nèi)表現(xiàn)為顏色、亮度或形狀的不規(guī)則變化,但在更大的視角下,這些不規(guī)則的變化卻形成了一種明顯的規(guī)律性。[15]Hawkins對(duì)紋理給出了更為全面的描述:首先是某種局部“模式”在更大面積內(nèi)不斷重復(fù);其次,這個(gè)排列順序由基本單元的非隨機(jī)組合構(gòu)成;最后,各單元大體上是均勻的整體,紋理區(qū)域的任意位置結(jié)構(gòu)尺度基本相近。[16]木材完全符合評(píng)判紋理的三大要素,因此被廣泛認(rèn)為是典型的具有紋理的物質(zhì)。由于木材天然的各向異性屬性,在不同的角度進(jìn)行切割時(shí),就會(huì)呈現(xiàn)出各種不同的紋理圖案,其紋理特征是木材生長(zhǎng)輪、木射線、軸向薄壁組織等解剖分子相互交織所形成的。生長(zhǎng)輪是這些紋理的主要來源,其中包括導(dǎo)管、管胞、木纖維、射線薄壁組織等微觀細(xì)胞結(jié)構(gòu)。這些細(xì)胞在微觀層面上形成了生長(zhǎng)輪,因此無論從哪個(gè)角度進(jìn)行切割,都會(huì)看到近似平行的非交叉的線條或曲線圖案。[14]這些線條和圖案共同構(gòu)成了木材切面獨(dú)特的紋理特性,也是木材被廣泛應(yīng)用于各種場(chǎng)合的重要原因之一。[17]對(duì)于木材的紋理特性進(jìn)行具體地分析,會(huì)發(fā)現(xiàn)不同切面的紋理圖案有著明顯的差異。如觀察木材的橫截面,其紋理圖案類似于同心圓的形狀,這是由木材生長(zhǎng)輪的特性決定的。相反,如觀察木材的徑切面,其紋理圖案主要由平行的條紋構(gòu)成,這些條紋通常與木材的生長(zhǎng)方向平行。而在弦切面上,木材的紋理線條則呈現(xiàn)出近似于拋物線的形狀,這由木材的各向異性和切割角度的變化所導(dǎo)致。在現(xiàn)代科學(xué)研究中,主要通過使用圖像處理技術(shù)來對(duì)這些紋理特性進(jìn)行客觀地研究和分析。這種技術(shù)不僅可以幫助更準(zhǔn)確地理解和描述木材紋理的特性,也為木材的進(jìn)一步加工和應(yīng)用提供了重要的技術(shù)支持。
紋理一般分為兩大類型。第一種類型是規(guī)則紋理,這種紋理是由具有明確形狀的組成部分按照一定的規(guī)則和模式排列而成的,因此通常被人們稱為人工紋理。其特點(diǎn)是其構(gòu)成部分形狀明確,排列有序,容易被人們識(shí)別和理解。另一種紋理類型則截然不同,它的構(gòu)成部分并沒有明確的形狀,而是由某種顏色的分布模式構(gòu)成。這種分布模式在空間中不斷重復(fù),形成了具有特定規(guī)律性的紋理。然而,這種規(guī)律性在局部視角下常常難以察覺,只有在整體視角下才能得以體現(xiàn)。這種紋理同時(shí)具有局部的不規(guī)則性和整體的有序性,因此通常被人們稱為自然紋理。這兩種紋理類型在許多領(lǐng)域都有廣泛的應(yīng)用,包括但不限于圖像處理、計(jì)算機(jī)視覺、機(jī)器學(xué)習(xí)等。[14]作為自然界紋理的一種典范,木材紋理以其獨(dú)有的特征和圖案形式,與其他自然紋理存在顯著的區(qū)別,這種“自然”的特征,也是木材紋理的獨(dú)特魅力所在。紋理是理解和鑒別木材的重要線索,對(duì)于木材給人的感官體驗(yàn)和木制品的經(jīng)濟(jì)價(jià)值具有直接的影響。這種影響不僅體現(xiàn)在對(duì)木材本身的認(rèn)知上,也體現(xiàn)在對(duì)木制品經(jīng)濟(jì)效益的評(píng)估中。與關(guān)注木材的密度和強(qiáng)度類似,木材的顏色以及紋理等屬性也在木材質(zhì)量的檢測(cè)中起著至關(guān)重要的作用。這些特性不僅被看作是評(píng)判木材質(zhì)量和決定木材產(chǎn)品價(jià)值的關(guān)鍵指標(biāo),而且也被視為挑選高質(zhì)量裝飾和家具木材的重要材料特性參考標(biāo)準(zhǔn)。雖然紋理始終被認(rèn)為是至關(guān)重要的,但往往難以準(zhǔn)確地表達(dá)出來:因?yàn)槟静募y理的種種變化,包括豐富復(fù)雜的微觀結(jié)構(gòu),不同的樹種產(chǎn)生的各種不同的紋理等。雖然這些紋理中蘊(yùn)含了一定的規(guī)律,但很難通過簡(jiǎn)單明了的數(shù)學(xué)語言來進(jìn)行表達(dá)。目前關(guān)于木材表面紋理的表達(dá)和分析的研究,基本上還停留在定性分析為主,定量分析為輔的階段。[14]而人眼對(duì)紋理的識(shí)別,也不可避免地存在著如主觀性、局限性、持久性不足以及模糊性等問題。這就使得對(duì)木材紋理的研究變得更加困難和復(fù)雜,需要采取更多的方法和辦法,以便更好地理解和描述木材紋理。
計(jì)算機(jī)科技的快速發(fā)展和計(jì)算機(jī)視覺以及模式識(shí)別技術(shù)的日益成熟,為木材紋理的研究帶來了可能。木材紋理的研究,已經(jīng)成為計(jì)算機(jī)視覺和模式識(shí)別領(lǐng)域的關(guān)鍵研究項(xiàng)目,是此領(lǐng)域的潛在前沿領(lǐng)域。目前一些尖端的算法已經(jīng)誕生,其中包括:灰度共生矩陣分析的方法、灰度梯度共生矩陣分析的技術(shù)、隨機(jī)場(chǎng)分析的策略、分形幾何學(xué)分析的方式以及小波多分辨率分析的法則等。這些創(chuàng)新的技術(shù)提供了新的途徑來描述紋理特性,從而不再依賴于傳統(tǒng)的幾何學(xué)和數(shù)學(xué)分析的描述方法。[14]相反從紋理的宏觀特性、微觀特性、統(tǒng)計(jì)規(guī)則或者頻譜特性等多個(gè)角度進(jìn)行描述,因此更適用于復(fù)雜且結(jié)構(gòu)豐富的自然紋理的描述和分析。在這些方法中,基于數(shù)據(jù)的機(jī)器學(xué)習(xí)是現(xiàn)代智能技術(shù)的關(guān)鍵部分。[18]它從觀測(cè)數(shù)據(jù)中發(fā)現(xiàn)規(guī)律,用這些規(guī)律預(yù)測(cè)未來數(shù)據(jù),包括模式識(shí)別、神經(jīng)網(wǎng)絡(luò)等。在無需人工干預(yù)的環(huán)境下,智能控制的實(shí)質(zhì)是模擬人類的思考模式,以此來實(shí)施對(duì)復(fù)雜系統(tǒng)的自主驅(qū)動(dòng)控制。這種獨(dú)特的技術(shù),能針對(duì)那些難以構(gòu)建有效數(shù)學(xué)模型的系統(tǒng)進(jìn)行定量和定性的結(jié)合控制分析,同時(shí)也擁有實(shí)時(shí)推理決策和識(shí)別的能力。[19]目前,智能控制技術(shù)已在各個(gè)科學(xué)研究領(lǐng)域獲得了廣泛的應(yīng)用。作為這項(xiàng)關(guān)鍵技術(shù)的核心組成部分,支持向量機(jī)在定量分類層面展現(xiàn)出了其獨(dú)特的預(yù)測(cè)優(yōu)勢(shì),同時(shí)在模式識(shí)別環(huán)節(jié)也有出色的表現(xiàn),有著廣泛的應(yīng)用潛力。支持向量機(jī)通過最小化結(jié)構(gòu)化風(fēng)險(xiǎn),有效提升了其學(xué)習(xí)的泛化能力,只需要少量樣本,就能在學(xué)習(xí)的精度和能力之間找到最佳的平衡,從而實(shí)現(xiàn)最優(yōu)的推廣能力。在學(xué)習(xí)過程中,支持向量機(jī)能對(duì)數(shù)據(jù)進(jìn)行深入分析和模式識(shí)別,從而實(shí)現(xiàn)分類和回歸分析。智能技術(shù)在木材科學(xué)領(lǐng)域的應(yīng)用主要包括木材表面顏色模式識(shí)別、木材材質(zhì)預(yù)測(cè)、木材缺陷分類等方面。[19]Mallik等的主要研究對(duì)象是利用掃描電子顯微鏡放大1500倍后的微觀圖像并結(jié)合線性判別分析 (LDA)、二次分類、邏輯回歸、K 最近鄰 (KNN)、樸素貝葉斯、支持向量機(jī) (SVM) 和神經(jīng)網(wǎng)絡(luò)等方法對(duì)木材進(jìn)行分類。[20]Barmpoutis等提出了一種基于紋理分析的木材識(shí)別新方法[21]。Pramunendar等提出使用自適應(yīng)多層感知器(AutoMLP)和支持向量機(jī)(SVM)對(duì)椰子木材質(zhì)量進(jìn)行分類的實(shí)驗(yàn)方法。[22]為了自動(dòng)檢測(cè)木材表面缺陷,Song等提出了一種基于圖像塊百分比顏色直方圖和特征向量紋理特征分類的方法。[23]Ibrahim等使用了一個(gè)模糊預(yù)分類器配合一組支持向量機(jī)(SVM)來管理大規(guī)模木材數(shù)據(jù)庫并有效分類木材種類。[24]為了簡(jiǎn)化識(shí)別過程,Sugiarto等使用了計(jì)算機(jī)視覺中的方向梯度直方圖(HOG)提取木材特性和支持向量機(jī)(SVM)對(duì)木材進(jìn)行分類。[25]自然中存在大量難以鑒定的木材種類,即使對(duì)專家來說也很困難。PAN等提出一種新的方法,結(jié)合近紅外光譜(780nm—2300nm)和灰度共生矩陣紋理特征,實(shí)現(xiàn)對(duì)木材的準(zhǔn)確快速識(shí)別。[26]Ibrahim等提出了一種稱為局部二值模式(LBP)的有效特征提取技術(shù),配合常用的支持向量機(jī)(SVM)進(jìn)行分類。[27]由此可見,過去大多研究集中在利用圖像分析和機(jī)器學(xué)習(xí)技術(shù)探討木材物種的不同分類和識(shí)別方法,而用計(jì)算機(jī)分析識(shí)別樂器音板紋理并結(jié)合基于數(shù)據(jù)的機(jī)器學(xué)習(xí)來預(yù)測(cè)音板等級(jí)的研究還不多,特別是在中國(guó)傳統(tǒng)樂器古琴方面的研究更為罕見。此外,圖像采集和分析過程操作簡(jiǎn)便,經(jīng)過簡(jiǎn)單訓(xùn)練后即可快速掌握。本文擬應(yīng)用支持向量機(jī)結(jié)合古琴共鳴板材質(zhì)紋理特征進(jìn)行板材篩選預(yù)測(cè)。
選用泡桐古琴面板77張,材料均來自沈陽音樂學(xué)院音樂科技系弦樂器制作團(tuán)隊(duì),含水率在遼寧省沈陽市4月中旬時(shí)為15%左右。其中21張用于構(gòu)建訓(xùn)練數(shù)據(jù)集,56張使用訓(xùn)練好的模型對(duì)測(cè)試數(shù)據(jù)集進(jìn)行分類預(yù)測(cè)。首先對(duì)選取的77張古琴面板進(jìn)行編號(hào),在面板輪廓制作完畢階段對(duì)所有古琴紋理進(jìn)行采集,之后進(jìn)行合琴(面板和背板結(jié)合)操作,并上緊琴弦,保證能夠演奏。為避免油漆對(duì)音色音質(zhì)的影響,后續(xù)演奏時(shí)保持未上漆狀態(tài)。圖像采集選用佳能850D相機(jī),垂直掛起于被采集區(qū)域上方,高度2.5m。平行于相機(jī)左右各設(shè)置1臺(tái)傘式燈罩,增加光照,去除重影。鏡頭選擇佳能50mm定焦鏡頭,光圈f1.8,感光度ISO100,快門速度1/125秒。為避免抖動(dòng)采用遠(yuǎn)程快門操作,采集后的圖像直接輸出RAW無損格式到計(jì)算機(jī)。之后采用專家評(píng)價(jià)法對(duì)所收集的77張古琴的音質(zhì)進(jìn)行了全面的評(píng)審。在這項(xiàng)研究中,特邀了沈陽音樂學(xué)院在民族樂器制作和教學(xué)領(lǐng)域有著豐富經(jīng)驗(yàn)的專家邵申弘、盧向忱等,對(duì)制成的77張古琴進(jìn)行打分,得分情況如表1所示。對(duì)于評(píng)估項(xiàng)目及其標(biāo)準(zhǔn),借鑒了中華人民共和國(guó)國(guó)家標(biāo)準(zhǔn)GB/T16463-1996《廣播節(jié)目聲音質(zhì)量主觀評(píng)價(jià)方法和技術(shù)指標(biāo)要求》的相關(guān)規(guī)定[19],并對(duì)樂器的音質(zhì)進(jìn)行了五級(jí)評(píng)定。具體而言,“一等”被視為5分,這象征著音質(zhì)的卓越;“二等”被標(biāo)記為4分,反映了音質(zhì)的優(yōu)秀;“三等”被標(biāo)記為3分,顯示了音質(zhì)的良好;“四等”被標(biāo)記為2分,代表了音質(zhì)的普通;“五等”被標(biāo)記為1分,表示音質(zhì)較差。在進(jìn)行評(píng)價(jià)時(shí),參考了專業(yè)的音質(zhì)評(píng)價(jià)數(shù)據(jù),包括音色的優(yōu)美度、高音的明亮度、中音的柔和度、低音的渾厚度、音域的連貫性、聲音的純凈度以及表現(xiàn)的層次感等7項(xiàng)指標(biāo)進(jìn)行實(shí)地評(píng)分。根據(jù)得分的高低,將每種樂器分為1—9級(jí)。其中,1—3級(jí)被定義為高檔樂器,4—6級(jí)被定義為中檔樂器,而7—9級(jí)則被定義為低檔樂器[19],如表1所示。
表1.古琴等級(jí)專家打分表
為了實(shí)現(xiàn)編程的便利性以及對(duì)分類預(yù)測(cè)的優(yōu)化,本研究選擇Python作為主要的編程語言。Python是一種由Guido van Rossum所開發(fā)的通用編程語言,其因簡(jiǎn)潔的語法和高度可讀性而迅速受到廣泛的歡迎,目前最新的版本是Python3。在本次試驗(yàn)中,使用的操作系統(tǒng)是Windows11,而編程軟件則是Pycharm,這是一款含有全套能夠在使用Python語言進(jìn)行開發(fā)的過程中提升效率的工具的編程軟件,例如調(diào)試工具、語法高亮顯示、項(xiàng)目管理、代碼跳轉(zhuǎn)、智能提示、自動(dòng)完成、單元測(cè)試以及版本控制等功能。[28]對(duì)于Python庫的運(yùn)用,庫在這里被理解為具有相關(guān)功能模塊的集合。在本研究中,使用到的庫包括了Numpy、OpenCV、Scikit-image以及Scikit-learn等。用圖像處理軟件對(duì)采集的圖像進(jìn)行剪切、旋轉(zhuǎn),之后在Pycharm中進(jìn)行去除背景操作,過程如下:
1.將彩色圖像轉(zhuǎn)換為灰度圖像,并使用OpenCV的threshold函數(shù)對(duì)其進(jìn)行二值化處理,得到前景和背景的二值圖像thresh。使用形態(tài)學(xué)操作對(duì)thresh進(jìn)行開操作,得到背景的掩模sure_bg。
2.使用距離變換算法,對(duì)thresh進(jìn)行距離變換,得到距離變換圖dist_transform。通過ret,sure_fg = cv2.threshold(dist_transform,0.7★dist_transform.max(),255,0)得到前景的掩模sure_fg。
3.使用OpenCV的subtract函數(shù)對(duì)背景掩模和前景掩模進(jìn)行相減,得到未知區(qū)域掩模unknown,然后,使用 cv2.dilate()函數(shù)對(duì)圖像進(jìn)行膨脹操作,以便消除任何小的前景物體,確保圖像的背景被準(zhǔn)確分離。用一個(gè)$3 imes 3$ 的卷積核進(jìn)行操作,并重復(fù)該操作三次。
4.利用 cv2.distanceTransform()函數(shù)計(jì)算距離圖,以確定每個(gè)非零像素到最近零像素的距離。使用cv2.DIST_L2作為距離類型,并使用一個(gè)$5 imes 5$的卷積核進(jìn)行操作。
5.使用一個(gè)閾值來確定哪些像素屬于前景區(qū)域,哪些像素屬于背景區(qū)域。使用 cv2.threshold()函數(shù),使用 Otsu’s 二值化方法確定閾值。使用閾值的$70%$作為前景區(qū)域的閾值,然后將前景區(qū)域二值化為白色($255$)像素。
6.利用cv2.subtract()函數(shù)從膨脹后的背景圖像中減去前景圖像,以便確定不確定的區(qū)域,即前景和背景區(qū)域之間的邊緣。然后使用cv2.connectedComponents()函數(shù)將前景區(qū)域分割成多個(gè)連通組件。由于該函數(shù)僅能處理8位的單通道圖像,因此需要將前景區(qū)域轉(zhuǎn)換為無符號(hào)的8位整數(shù)格式。
7.利用cv2.watershed()函數(shù)將分割標(biāo)記應(yīng)用到原始圖像上,并將分割后的圖像分配給不同的分割區(qū)域,使用 markers 數(shù)組中的值來標(biāo)記原始圖像中的分割區(qū)域,并在分割區(qū)域周圍繪制紅色邊界。
8.使用cv2.imshow()函數(shù)顯示原始圖像和去除背景后的圖像,如圖1所示。
圖1.去除背景后的古琴圖像
根據(jù)之前的研究[29],選取連續(xù)紋理數(shù)、斷裂紋理數(shù)、最長(zhǎng)紋理值、最短紋理值、平均間距、平均角度、最大角度為定量目標(biāo)。其中連續(xù)紋理定義為橫向相鄰2個(gè)紋理間像素值小于等于2;斷裂紋理定義為橫向相鄰2個(gè)紋理間像素值大于2;最長(zhǎng)紋理值和最短紋理值的單位為mm;角度為紋理方向與水平方向夾角的絕對(duì)值。定量定義如下:
連續(xù)紋理數(shù)(Continuous texture count),指的是在給定區(qū)域內(nèi)連續(xù)出現(xiàn)的無中斷紋理或圖案的數(shù)量,橫向相鄰2個(gè)紋理間像素值小于等于2。
斷裂紋理數(shù)(Disrupted texture count),指的是在給定區(qū)域內(nèi)被中斷或打斷的紋理或圖案的數(shù)量,橫向相鄰2個(gè)紋理間像素值大于2。
最長(zhǎng)紋理值(Longest texture value),指的是在給定區(qū)域內(nèi)最長(zhǎng)的連續(xù)紋理或圖案的長(zhǎng)度,單位為mm。
最短紋理值(Shortest texture value),指的是在給定區(qū)域內(nèi)最短的連續(xù)紋理或圖案的長(zhǎng)度,單位為mm。
平均間距(Average spacing),指的是在給定區(qū)域內(nèi)連續(xù)紋之間的平均距離,單位為mm。
平均角度(Average angle),指的是在給定區(qū)域內(nèi)連續(xù)紋理之間的平均角度,角度值為紋理方向與水平方向夾角的絕對(duì)值。
最大角度(Maximum angle),指的是在給定區(qū)域內(nèi)任意兩個(gè)連續(xù)紋理之間的最大角度,角度值為紋理方向與水平方向夾角的絕對(duì)值。過程如下:
1.導(dǎo)入必要的庫:cv2、numpy、matplotlib。
2.使用cv2.imread()函數(shù)讀入圖像,并將其轉(zhuǎn)換為灰度圖像。
3.對(duì)灰度圖像進(jìn)行高斯濾波,以平滑圖像并減少噪聲。
4.使用Canny邊緣檢測(cè)算法來檢測(cè)圖像中的邊緣。
5.使用cv2.findContours()函數(shù)尋找圖像中的輪廓。
6.使用cv2.drawContours()函數(shù)在一張黑色背景上繪制輪廓,生成包含輪廓的圖像。
7.使用cv2.HoughLines()函數(shù)檢測(cè)直線。該函數(shù)使用霍夫變換來檢測(cè)直線,可以檢測(cè)直線的位置和角度。
8.使用cv2.imwrite()函數(shù)將繪制的輪廓圖像和直線圖像保存到磁盤上,如圖2所示。
圖2.紋理要素識(shí)別圖像
對(duì)生成的圖像進(jìn)行定量分析,過程如下:
1.使用PIL庫中的Image模塊讀取圖像文件,然后將其轉(zhuǎn)換為灰度圖像。
2.將灰度圖像進(jìn)行二值化,得到一個(gè)二進(jìn)制圖像。
3.利用skimage.morphology中的二值圖形態(tài)學(xué)操作去除噪聲并連接紋理區(qū)域。
4.利用skimage.measure中的label()和regionprops()函數(shù),對(duì)二值化后的圖像進(jìn)行連通組件分析和紋理特征計(jì)算,得到不同區(qū)域的相關(guān)信息,如區(qū)域大小、面積、形狀、周長(zhǎng)等。
5.使用skimage.feature中的local_binary_pattern()函數(shù),提取灰度圖像的局部二值模式(LBP)特征,并統(tǒng)計(jì)橫向相鄰的兩個(gè)像素之間的差值小于2的像素對(duì)的數(shù)量。
6.最后輸出計(jì)算結(jié)果,包括連續(xù)紋理數(shù)、斷裂紋理數(shù)、最長(zhǎng)紋理值、最短紋理值、平均間距、平均角度和最大角度,結(jié)果保存為CVC文件。結(jié)果如表2所示。
表3.訓(xùn)練集的錯(cuò)誤預(yù)測(cè)樣本,預(yù)測(cè)等級(jí)和誤差
表4.預(yù)測(cè)集的錯(cuò)誤預(yù)測(cè)樣本,預(yù)測(cè)等級(jí)和誤差
(三)支持向量機(jī)分類預(yù)測(cè)
對(duì)CVC文件進(jìn)行必要的格式編輯,把編號(hào)1—21以及22—77的古琴分割為2組,便于使用Python進(jìn)行讀取操作。之后使用SVM進(jìn)行面板等級(jí)預(yù)測(cè),過程如下及圖3所示。
圖3.支持向量機(jī)分類預(yù)測(cè)過程
1.使用pandas庫創(chuàng)建一個(gè)DataFrame數(shù)據(jù)結(jié)構(gòu),其中包括77個(gè)樣本的連續(xù)紋理數(shù)、斷裂紋理數(shù)、最長(zhǎng)紋理值、最短紋理值、平均間距、平均角度和最大角度等特征,以及所對(duì)應(yīng)的3個(gè)不同專家打分的等級(jí)。
2.選取21個(gè)樣本來構(gòu)建訓(xùn)練集。
3.讀取剩余56張古琴的相同特征數(shù)據(jù)作為預(yù)測(cè)集。
4.使用scikit-learn庫中的svm.SVC函數(shù)構(gòu)建SVM分類器,設(shè)置核函數(shù)為線性核函數(shù),正則化參數(shù)C為1.1,自適應(yīng)核函數(shù)系數(shù)gamma為auto,構(gòu)建SVM模型。
5.使用fit函數(shù)在訓(xùn)練數(shù)據(jù)集上進(jìn)行模型訓(xùn)練。
6.使用predict函數(shù)對(duì)訓(xùn)練好的測(cè)試數(shù)據(jù)集進(jìn)行分類預(yù)測(cè),得到預(yù)測(cè)標(biāo)簽。
7.使用matplotlib庫繪制原始標(biāo)簽和預(yù)測(cè)結(jié)果,比較兩者之間的差異。
8.將預(yù)測(cè)結(jié)果保存到DataFrame中,與原始測(cè)試數(shù)據(jù)合并,將結(jié)果保存為.xlsx文件。
表格3呈現(xiàn)了訓(xùn)練集中錯(cuò)誤樣本的實(shí)際等級(jí)與預(yù)測(cè)等級(jí)的誤差對(duì)照,其中認(rèn)定誤差超過±0.3的樣本為分類錯(cuò)誤[19]。圖4展示了古琴共鳴板訓(xùn)練集預(yù)測(cè)的樂器等級(jí)與專家評(píng)分的樂器等級(jí)分類圖。從結(jié)果可以觀察到,在21個(gè)訓(xùn)練樣本中,只有1個(gè)樣本的預(yù)測(cè)等級(jí)出錯(cuò),由此計(jì)算得出,訓(xùn)練集預(yù)測(cè)等級(jí)分類的正確率高達(dá)95.23%,大部分樣本誤差在±0.2范圍內(nèi)變動(dòng),顯示了訓(xùn)練集與實(shí)際樂器等級(jí)的誤差較小,訓(xùn)練結(jié)果相當(dāng)準(zhǔn)確。表格4列出了預(yù)測(cè)集中錯(cuò)誤樣本的實(shí)際等級(jí)與預(yù)測(cè)等級(jí)的誤差對(duì)照,誤差超過±0.3的被視為分類錯(cuò)誤[19]。圖5是古琴共鳴板預(yù)測(cè)集訓(xùn)練出的樂器等級(jí)與專家評(píng)分的樂器等級(jí)分類圖。從圖中可以看出,在56個(gè)古琴共鳴板素材樣本中,有2個(gè)樣本的預(yù)測(cè)等級(jí)出錯(cuò),據(jù)此計(jì)算得出,古琴等級(jí)分類預(yù)測(cè)的正確率達(dá)到96.42%,大多數(shù)樣本誤差在±0.2范圍內(nèi)變動(dòng),顯示預(yù)測(cè)集的誤差較小。驗(yàn)證過程的分類結(jié)果充分證明了該模型具有良好的泛化性。
圖4.訓(xùn)練集預(yù)測(cè)等級(jí)與專家評(píng)分等級(jí)分類圖
圖5.預(yù)測(cè)集預(yù)測(cè)等級(jí)與專家評(píng)分等級(jí)分類圖
本研究初步探索了將支持向量機(jī)算法應(yīng)用于古琴面板木材紋理分析的可行性,并嘗試建立面板質(zhì)量預(yù)測(cè)模型。研究表明,支持向量機(jī)算法可以提取部分木材紋理特征,并訓(xùn)練出具有一定分類準(zhǔn)確度的預(yù)測(cè)模型。這為傳統(tǒng)古琴制作經(jīng)驗(yàn)提供了新的參考,也為古琴面板材料的選取開辟了新的思路。但是,由于研究時(shí)間和樣本量有限,研究結(jié)果還需進(jìn)一步驗(yàn)證。這種將傳統(tǒng)工藝與前沿科技相結(jié)合的創(chuàng)新思路,可能為古琴文化的傳承提供一些啟發(fā)。后續(xù)研究需在方法論和樣本量?jī)蓚€(gè)方面進(jìn)行優(yōu)化與提升,以產(chǎn)生更系統(tǒng)可靠的研究結(jié)果??傮w而言,本研究對(duì)支持向量機(jī)在古琴面板質(zhì)量預(yù)測(cè)中的應(yīng)用進(jìn)行了初步探索,并提示了這一領(lǐng)域的進(jìn)一步研究方向,為古琴傳統(tǒng)智慧和現(xiàn)代技術(shù)的有機(jī)結(jié)合提供了有益的嘗試。
南京藝術(shù)學(xué)院學(xué)報(bào)(音樂與表演)2024年1期