專題更新

2018 年 8 月 16 日

今天我終於繼續做專題了,因為和同學的爸爸聊天後,發現推甄研究所的截止日都差不多在十月。 同學的爸爸發現交大要繳交的資料,有一個叫做「其他有利於審查的資料」,包含比賽得獎、檢定、還有專題……等,結果我發現我什麼都沒有,只有這學期去參加 ITSA 有得到佳作而已

這樣不行,想想比賽得獎、檢定、還有專題之中,只剩下專題是我可以掌握的了,所以就來做專題

我要來寫一個判斷音高的程式,因為唱歌是有音調的,為了要調音,程式得要知道原本的錄音是甚麼音高。 然後就去網路上搜尋方法,發現有 YIN (PDF 檔)、RAPT (PDF 檔),另外 Praat比的原理也有自己的音高判斷程式。 可是肉腳我到現在還是沒看懂以上英文名稱的文章和程式,所以只好模仿「比的原理」的音高判斷法

雖然比的原理的程式沒有公開的程式,但是用開發者工具探看之後,發現它計算音高的方式是把聲音用傅立葉轉換轉成頻率域,然後尋找上面的最高點。 我決定先用傅立葉轉換試試看,反正只是第一次嘗試

我的程式首先會使用傅立葉轉換,然後在合理的人類音高範圍內 (80 ~ 500Hz),把 1 到 4 倍頻率的音量相加,找出裡面總音量最大的,就是音高。 注意到音高和頻率是不同的概念,頻率是物理量,而音高是人類的感覺。 在某些時候,人的聲音會缺少基頻,這會導致傅立葉轉換後,找不到音高所對應到的頻率。 這稱作「消失的基頻」,此現象在男生的聲音尤其明顯。 我為了處理這個情況,才把 1 到 4 倍頻率做加總

即使使用這個技術,做出來的結果還是非常的糟,基本上只有我的高音能夠抓出來,而且還不能偵測比 A4 (男生的一點 La) 還高的音。QQ

管它的,第一次嘗試能期待什麼嗎?

順便送個奇怪的謎語,解開來答對加分喔 騙你的~~

矮東特死必可因格里許。
我只說中文。
因為挖喜北七。
挖搭西挖台灣近的死。

提示:

  1. 唸出來
  2. 我的專題
  3. 這篇貼文所說的程式
    計算出來的音高會播放出來

來寫個評論吧