2013年2月20日 星期三

[課程] (101下)訊號與系統


課程老師: 蘇文鈺
Email: alvinsu@mail.ncku.edu.tw

課程助教: 陳奇鴻、許玲绮
Email: signalsystem13@gmail.com

====

+6/14公告行事曆!!
6/19請還沒跟老師談過的組別於此周全部完成!!!!
6/26最後一周上課。
7/3 所有組別進行demo,同樣時間同樣地點(4282)!! 請不要忘記!! 
+7/3 投影片概要範例  
請各位在報告結束後,將"投影片"、"程式碼"、"結果"以壓縮檔的形式寄到信箱。
信件標題是"Project_groupX_學號A學號B"請不要記錯!!

+7/4公告: 明天(7/5)下午 一點半 4204 尚未報告的組別請記得前來!!

====
+ 2/20 課程大綱說明
           練習題目Lab0 
連結:
   MATLAB安裝教學
   網路版安裝說明
   VPN教學

* LAB0 參考程式 (2/20更新)
(參考程式不是正確解答,只是提供一個概念。
一個問題的解法有很多種。
所以請不要拘泥於這些程式碼,
試著挑戰看看用自己的想法解決問題吧 !)

本次練習題目只是先讓各位能對Matlab有初步的認識
所以請不用緊張 : )

----

+2/27 基礎Matlab教學
           練習題目Lab1

*LAB1 參考程式(3/4更新)
(對於取樣頻率這個名詞可能還是要稍微有點概念歐!)

另外,本周(3/6)就開始有正式上課內容囉
請大家準備好課本,或是筆記本
為期中筆試做準備XD

----

+3/6 課程投影片CH1 (4/7更新)
        課程投影片CH2 (4/24更新)
        課程投影片CH3 (5/22更新)
        課程投影片CH4 (6/5更新)
        練習題目Lab2

*LAB2 參考程式 (1) (2) (3/10更新)
(這次參考程式有兩個。分別是有使用square的寫法與
不用square的寫法。給大家參考看看囉!)

----

+3/13 練習題目Lab3  *LAB3 參考程式
(本次題目大家在做積分微分動作時,請不要忘記 ΔH 與 fs 之間的關係
否則很容易算錯值。此外在程式的部分,如果有兩層的迴圈還是希望
大家能用不同的變數做運算,否則很容易有意想不到的bug產生)   (++3/29更新
----

+3/20 練習題目Lab4

*LAB4 參考程式

----

+3/27 練習題目Lab5

*LAB5 參考程式

----

+4/10 練習題目Lab6
音檔 : 011PFNOM_60.wav

*LAB6 參考程式
+6/20 檢討
1. 很多人對於interp1的使用方法不是很清楚,或是用得不好。
這個function可以直接對一整個陣列做處理,所以若是用迴圈一個一個值去算會非常花時間
2. 使用迴圈的時候範圍盡量使用變數而不是直接寫死值。這樣如果助教手邊的檔案跟同學的檔案length剛好差一的話就容易出錯囉
3. 題目中所說的C值,事實上是一個決定對訊號做壓縮/延展的處理。所以在實行上會搭配interp1而得到較快的處理方法。但有些同學在這裡誤把C當作sclalr的運算,所以得到的答案看起來好像可以,實際上是不合理的。
4. 有些人的訊號看起來像是被截斷了,這是因為你們在設定範圍的時候沒有把最大長度先設定好。以本範例來說,延遲時間最多3秒,那麼重新組合的訊號長度就會變成  length(signal)+3*fs ;或訊號會被延展成原始訊號的兩倍, 那麼長度應為length(signal)*2 。另外,把 f (n-a(i)*fs)的式子直接照打進code裡,然後為了處理n在<fs的情形就選擇直接捨棄。這樣子的作法事實上並不正確。

請大家務必了解自己的程式碼!!
----

+4/17 公告: 本周上機考臨時取消! 請大家告訴大家!!
+4/17 練習題目Lab7
本周正常上課。
+4/19 公告: 期中上機考日期訂在 5/1。
另外,期中筆試會在第三章結束後進行。  請大家好好準備!!
*聲音檔
此聲音檔的partial table

+6/21 LAB7 參考程式 envelope副程式
+6/22 檢討
1. 此題目的ab小題主要是讓大家知道"一個訊號可以由很多個不同頻率的sin波組合而成"。所以Xk(t)=Ak*sin(kw0t+pi/2), k=1,...,20 就是分別產生20個不同頻率(由變數 k 主導)、相同長度(長度由變數 t 主導)的波,再乘上振幅的強度(由變數 Ak 主導)。
接著,再以  Y(t)= exp(-t/T)*sum(Xk(t)) 式子則可以控制組合起來的波形(即使用sum)的衰減速度(由變數T,time constant主導)。如果你們去plot(exp(-t/T))就可以發現,當t = T時他的振幅恰好衰減一半(也就是一般所說的"半衰期"),所以想要得到越快衰減的波形就把T設定的越小即可。
2. c小題則是延伸前面的概念:"我要如何組合不同頻率的sin波才能得到一個類似於吉他的聲音呢?" 所以我們提供了吉他聲音組成的一些資訊,主要是其主要組成頻率與其能量、還有頻率之間的強度比例關係。由於這裡所提供的"能量"資訊的單位是dB,但是對應到前面的式子,Ak代表的是"訊號振幅的強度",我們沒辦法直接用dB的值去回推要多大強度。所以我們透過"頻率之間的強度比例關係"這個欄位來反推:"兩頻率的能量若差了6dB,則強度應差了0.5倍"。所以當你任意決定了A1的值之後就可以往後面推出所有Ak應該有的值。接著另一個重點是,sin式子裡不需要變數k了!! 因為你的"主要組成頻率"已經告訴你"由這些頻率就可以合出吉他的聲音"。不需要像前面小題,因為只知道freq = 220Hz,後面需要自己補上其2倍頻、3倍頻...這樣。


最後再提一個大家容易犯的錯,就是w0 = 2*pi*f。有些同學會直接拿主要組成頻率當w就丟下去算了,這樣是不對的歐!

----

+4/24 練習題目Lab8
+6/22 LAB8 參考程式
+6/27 檢討
這次作業就是要實作出這個系統,讓各位觀察輸入與輸出訊號的關係。主要有兩種作法,第一種就是每個元件都分開做;第二種則是直接key入最後提供的公式。雖然這兩種做出來的答案會不一樣,但這是code的問題。所以這題兩種寫法都算對,但在此提醒大家希望日後解system的時候能盡量用最後的一行式子寫比較正確。(硬要說起來,就是因為單個解會有問題才希望盡量能避免這種情形發生)

另外,有些同學會把y(t)同時放在等式的兩邊。雖然是直接把課本的式子照寫但這樣寫是錯的!!!因為y(t)放在等式右邊的話,每次在做微分/積分的時候,他都會先抓到一開始設定的y值(通常是0)下去做運算,而不是運算後的值去做運算。所以正確的作法應該要讓y(t)只放在等式的左邊才對!!(很麻煩對吧,明明就是完全一樣的公式,也不能單個處理也不能照寫一定要整理到最後y(t) = ....才有正確的結果聽起來其實很不make sense,但是這就是程式無法處理的事情。所以以後遇到解system的問題的時候各位應該就知道哪邊是有可能出問題的地方囉!)
----

+5/1 期中考 題目 = 練習題目Lab9
+6/30 期中考 參考程式
+6/30 檢討
這個題目我相信很多人都很混亂,就連助教也沒能馬上搞懂(好遜Q艸Q。所以在這裡我把幾個會有問題的地方整理一下。

Q: 這個題目,為什麼可以用"單個元件"的寫法,LAB8才說這樣會出錯不是嗎?
A: 因為這個system並不是"feedback system",也就是他的輸出不會再回過頭來影響結果。所以你要用"單個元件"寫也行,整個整理成一行"微分方程"去求解也可以,用direct formI, II也可。

Q: 為什麼同樣的式子,整理一下換個寫法怎麼就不對了 ?
A: 目前我所知道的"整理一下換個寫法"有三種不對:
     1. 解電路元件的順序 => 因為換了順序所以出錯主要是因為有些東西還沒算出來就被拿去算下一個東西。此時還沒算出來的x(i)所放的是初始值,所以會錯。
     2. 把積分轉寫成微分 => 對於所有有微分積分在裏頭的system阿~在寫程式的時候都強烈建議轉成積分的做法!!!
     舉個例子,積分式  "i = (1/L)*∫ΔVdt" 寫成code => i(t) = i(t-1) +(V(t-1)-V1(t-1))*H/L
     但是換成微分  形如 "ΔV = L*di/dt" 寫成code => V(t)-V1(t) = (i(t)-i(t-1)) *L/H
     注意到了嗎 ? 一來是這兩個式子沒辦法相等(時間單位差了 '1' !!),不過那要選哪個才對呢? 原則上如LAB8檢討所說,不要將還沒算出來的東西放在等式的右邊,所以會選積分式;二來是就算我們先算出 i(t),也不能用底下的微分式子(實際寫過就知道了,這樣寫不會照理論上去跑)。很遺憾,助教的水準無法解答這兩件事的原因。只能告訴你們,這樣寫不會得到預期的結果。
     3. 非上述情形 => 那只剩下你code寫錯了(比如(t), (t-1) 或 fs)。

*電桿: "電位差"導致"電流變化"。所以當前時刻的電位差會產生新的電流值 => 轉成code的話,i(t+1) <==  ΔV(t),which means 先有V(t) , V1(t), 才有 i(t+1)
  電容: 通過"電流"產生"電位差變化"。意即當前時刻的電流會產生新的電位差值 => 轉成code的話,ΔV(t+1) <== i(t),which means 先有i(t) 才能算出V(t)
用這樣的方式來說明,這樣大家應該比較好理解為什麼要用積分式了吧。因為積分式的form就長的形如上面所述的概念,且同時也解釋了不要將還沒算出來的東西放在等式的右邊這件事情!!

以上,希望大家能把搭配範例程式把這個部分搞懂。下次解電路就不會再遇到同樣的問題了!!

----

+5/8 公告:
下周(5/17)晚上七~十點 4282 上機補考。
下下周(5/22)課堂 期中筆試 。 範圍: Ch1~3

----

+5/15 練習題目Lab10
+7/6 LAB10 參考程式
+5/17 期中補考 題目
+7/9 期中補考 參考程式

+5/19 期中筆試訂在5/22,範圍為Ch1~3,考試時間為兩小時,請好好準備!!
另外! 可以open notebook但不能訊息交流!!!! 也不可以open book!!! 這樣提示有清楚了嗎XD 
+7/7 檢討
基本上這一題是投影片中有範例的,所以對於求解H(s)可能大家普遍會選用兩種方式來實行: a. 使用polyval函式處理,再用mag , phase(或是用angle)求得答案;b. 直接對s將每個w代數進去,並且用sqrt, imag/real 求解。原則上這兩種方法都可以,但是大家很容易在b方法出錯: 就是w帶1~10000! 錯在哪呢? 其實就是因為S可以當作是一種座標軸的轉換,(就像從時間軸轉成頻率軸,S事實上也是一種座標軸,想要更深入了解的話請參考下學期吳宗憲老師所開設的"數位系統處理"一課,對此座標會有較多的解釋)這個基底呢~基本上是吃w(角頻率,前面有學過可將有角度的東西轉成複數座標(實數+虛數part)),所以在迴圈裏頭應該是要跑1i~10000i才對!!另外還有一個錯誤很常發生,就是大家會直接拿分母得到的結果告訴我說"這就是角度"。ㄜ..sorry這樣還不是,如果參閱第三章投影片(p.56)就可以發現角度應該是分母得到的結果的負數!!

這是H的部分。接著說說大家都搞錯的部分,也就是第三小題。剛才提到,S是一種座標軸。在這個座標軸上面的system的輸入輸出的關係應該是Y(S) = H(S)*X(S)。(這裡的*代表"相乘")可是這個關係式並不能寫成Y(t) = H(t)*X(t)這樣,他不是單純的變數變換而已。考慮到座標軸再轉回以時間為基底的時候,關係式應改成: y(t) = h(t)*x(t)(這裡的*代表的是"convolution",也就是"旋積")。所以實作的方法可以有兩種:
1.第三章投影片p.58的作法,整理完後可以S與t混著使用(就等於這個公式同時在處理座標軸轉換的動作)。但是這種方法可能要對自己帶入的變數的值要很清楚,不然一下子就搞不清楚現在在處理t還是S了。所以我比較推薦第二種做法
2. 已知H(s)與x(t) => 則透過ilaplace將H(s)轉換成h(t),再與x(t)做convolution得到y(t) => laplace(y(t))
即可得到Y(s);或者將x(t)轉換成X(s)再直接與H(s)相乘也可以!
----

+5/29 練習題目Lab11
+7/8 LAB11 參考程式
+7/9 檢討: 就是解電路,這題大家幾乎都做對,所以觀念上應該是沒問題的。有錯的人可以參考看看範例程式就可以知道自己哪個元件的順序寫錯了!!

----

+6/4 聲音訊號處理軟體A、B
+6/5 練習題目Lab12
+6/19 LAB12 參考程式


----

+6/19 練習題目Lab13
----

+6/11公告!!!明天端午放假。

----

+6/26 練習題目 Lab14
----

+ 平時作業成績 (置底 3/10更新)
+ 分組名單及簡介 (置底7/9更新)

----

+7/9 各組project


====

以後對課程有任何問題都可以在這篇討論

2012年10月15日 星期一

推薦學習 ARM 的書

最近在看 ARM 相關文件, 無意間發現這本書 "ARM System Developer's Guide" 。

http://www.tenlong.com.tw/items/1558608745?item_id=22049

覺得他寫得好, 對於基本的 ARM 架構有所介紹 ,


最讓人喜歡的是他深入淺出的講解了一些在 ARM 上面運行軟體及系統的流程 。


由於我們實驗室做系統所使用的 processor 都大部分為 ARM , 看這本書可以讓功力增強不少。

以後如果要繼續耕耘系統這塊 , 這本書是很好的新生教學選擇。


可以搭配 ARM architecture reference manual,

或者任一版 cpu 的 datashit datasheet 食用, 效果更佳 ~

個人以為與其讀白算盤, 不如讀更為實用的 ARM 架構, 對於學弟的幫助更大 !

2012年9月19日 星期三

[course] Music Synthesis

作業001
給定一個單音的音樂檔案,
請用AMDF(Average Magnitude Difference Function)的方法找出其可能的週期。

作業002
給定一個單音的音樂檔案,
請用AUTOCORRELATION的方法找出其可能的週期。

作業003
給定一個單音的音樂檔案,請先將其normalize後,找出其可能的週期。
並找出其可能的 loop start, loop end,
然後取出loop start到loop end之間的音檔另存為wav檔案。

作業004
將古琴wavetable重新取樣成110Hz

作業005
用MIDI造一個110Hz的鋼琴音,並實作MIDI對ADSR的5個functions。
1.音高轉成MIDI note 53
2.音長為10.5秒
3.音量為1/2
4.速度為1/64
5.踏板為2

2012/09/19 - 下載
2012/09/26 - 下載

2012年4月27日 星期五

Building the GPU Cluster


我們有幾台 GPU Server,老師有想要將他建立成一個 GPU Cluster 的 prototype, 在Infrastructure,我們有了機器,那問題就是要如何管理這些資源(CPU, Mem, Network, GPU ...)。

我的想法是,有三個部份要做,分別為基礎建設的管理、程式介面(Platform)、用戶介面。


1. 基礎建設的管理

用以往實驗室常用的方式,就是將程式寫成 components 然後再不同台機器上運作, 接著建個 data flow 交換資料。以我的經驗,這樣的方式在多個使用者時不免會有一人當機,整車人都不能用機器。虛擬化既然這麼紅,那我們是不是用虛擬化的管理方式呢? 現有的 Hypervisor 有 VMWare, xen, kvm 等。將每個 component 放在一個虛擬機器裡頭,接著也一樣用 data flow 做溝通,萬一某台虛擬機器死翹翹,那也不會影響機器內的其他用戶,是一個可行的方法。再者跨多台機器的 Management Tool 也是很多,像是 Nimbus, OpenNebula, Eucalyptus,他們可以用來管理這些 Hypervior。如此一來,我們有了一個中控中心,可以發佈虛擬機器和關閉虛擬機器,有人要執行他的 component 們,我們就給他幾台虛擬機吧。


2. 程式介面

既然 DataFlow 是這樣一個好的傳統,那我們也許可以繼續沿用,每個用戶將他的程式寫成一個 component,然後我們將他放在虛擬機裡。他要 CPU/Mem/Network 我們就給他,他要 GPU,我們也給他。這裡比較難的地方就是要怎麼將 GPU 給虛擬化,有人有辦法請給我一點方向。好加在的是,CUDA 4.0 允許多工,多個人再一台機器上享用 GPU 也不會有太大的問題,剩下的就是 GPU 虛擬化的問題。


3. 用戶介面

前端的用戶介面,負責與使用者溝通,讓他們上傳程式,觀看結果。以往的方法都是寫個 Shell,像是小大象 Hadoop 的 Shell,但我想是不是有其他方法呢?這裡頭還需要 Build System,讓上傳的 Component 可以順利編譯。所以用戶介面要有幾個功能,包括上傳資料程式、建置系統、瀏覽結果的介面。




特別打出來,希望各位看倌、高人能給一些建議。

以後這裡就變一個討論串了,歡迎不吝嗇提出意見。

2012年4月18日 星期三

[課程] (100下)訊號與系統

2012/07/11(三) 成績出爐!!


*總成績:請點我


* 補考日期訂於2012/06/25(一)
   教室:資訊系4282電腦教室
   需要補考的同學請於當日下午2:10準時出席

   需補考同學包括上次補考請假者與對上次補考不滿意者

*期末考日期訂於2012/06/27(三)
  教室:資訊系4282電腦教室
  ******考試範圍:ch4, ch5 和 Lab 7 (2012/06/27更新)
  請大家一樣要在下午2:10準時出席

  !!!!!!!!!!! 此次期末考無論好壞與否,皆不會再行補考。請大家好好準備 : )  !!!!!!!!!!!!!




*加課日期訂於期末考當晚2012/06/27(三) 7:10~
  教室:資訊系4203
  當晚點名加分,且另有作業

=========2012/03/17=========
課程老師: 蘇文鈺
Email: alvinsu@mail.ncku.edu.tw

課程助教: 林益如
Email: lyjca.ncku@gmail.com

以後對課程有任何問題都可以在這篇討論



*課程投影片:

 Ch1 Introduction

 Ch2 CONTINUOUS-TIME SIGNALS AND SYSTEMS

 Ch3 CONTINUOUS-TIME LINEAR TIME-INVARIANT SYSTEMS (2012/04/25更新)

 Ch4 FOURIER SERIES (2012/05/02更新)

 Ch5 THE FOURIER TRANSFORM  (2012/05/30更新)

*Matlab基本界面介紹
 內容只提到我們比較常用到的部份
 另外,請下載後用ppt開,因為可以用點選的 : )


*隨堂程式:

 Lab1 方波  檢討

 Lab2 用方波合成wav檔

 Lab3 音檔處理 (2012/03/30更新)

 Lab4 ADSR (2012/04/11更新)

 Lab5 Convolution (2012/04/18更新)

 Lab6 random取點 (2012/04/25更新)
         測試音檔   (link 1)
         測試音檔   (link 2)

 Lab7 用傅立葉級數模擬square wave (2012/05/23更新)
          Code (2012/06/27更新)

 Lab8 用傅立葉級數模擬人聲發音 (2012/05/30更新)
          音檔  (2012/05/30更新)
          切好的音檔 3段 (2012/05/30更新)
          Code (2012/06/27更新)

Lab9 合成人聲發音 (2012/06/13更新)

Lab10 用bodec畫出系統的頻率響應 (2012/06/28更新)


* 期中考上機 (2012/05/09更新)
   檢討  Code (2012/05/30更新)

* 第二次期中考上機 (2012/06/06更新)
   Code (2012/06/13更新)
   成績 (2012/06/13更新) 有問題請找助教 :)


* 期中考補考 (2012/06/25更新)
   成績


* 期末考上機 (2012/06/27更新)

=========2012/03/18=========(2012/05/23更新)

*隨堂程式點名 會每週更新。有任何問題請告知助教。

=========2012/03/26=========
本週隨堂程式需要請大家先準備

用來反轉的音檔(簡單一點的,不要太複雜),和耳機(或者是小的喇叭)

:D 謝謝

=========2012/03/30=========
這是本週隨堂程式有趣的音檔 :D

分享給大家~

Lab3音檔

2012年3月9日 星期五

[課程]2012高速運算應用與多核心系統

=====2012 4/24====
MPI

0424 SPCP & MPI 課程資料

當天留下的lab是使用MPI寫矩陣相乘

交件時附上程式碼即可

在4/30前交

寄到課程助教信箱

對課程投影片有疑問可寄信至boy780828@hotmail.com

=====2012 4/17====
期末專題 project proposal

Monte Carlo Simulation of Photon Migration - 郭雅涵(蘇文鈺教授)

build a multi-core platform with Hadoop - 匡建慈(蘇文鈺教授)

Accelerating Viterbi Algorithm - 李佩靜(蘇文鈺教授)

千人交響樂 - 林益如(蘇文鈺教授)

SystemC-AMS Simulation on CUDA - 林敬倫(蘇文鈺教授)

Stereo Matching Based on Hierarchical Bilateral Disparity Structure with Unreliable Foreground Boundary Handling - 王邦威(詹寶珠教授)

加速 Disparity Estimation Using HBDS-based Graph Cut - 陳正旻(詹寶珠教授)


=====2012 3/9=====
有關課程討論部分會在這個討論串中
MIT的投影片下載
cuda課程資料下載
請報告同學把投影片寄給我由我統一公布在討論串中
課程助教 林敬倫 rurume1010@gmail.com
蘇文鈺老師 alvinsu@mail.ncku.edu.tw
=====2012 9/10====
期末專題 final project

Monte Carlo Simulation of Photon Migration - 郭雅涵(蘇文鈺教授)

build a multi-core platform with Hadoop - 匡建慈(蘇文鈺教授)

Accelerating Viterbi Algorithm - 李佩靜(蘇文鈺教授)

千人交響樂 - 林益如(蘇文鈺教授)

SystemC-AMS Simulation on CUDA - 林敬倫(蘇文鈺教授)

Stereo Matching Based on Hierarchical Bilateral Disparity Structure with Unreliable Foreground Boundary Handling - 王邦威(詹寶珠教授)

加速 Disparity Estimation Using HBDS-based Graph Cut - 陳正旻(詹寶珠教授)


加速 以CUDA實現超音波影像 即時運動追蹤技術 - 何嘉哲(王士豪教授)


2011年10月17日 星期一

ISMIR 2011 paper released

http://ismir2011.ismir.net/program.html#OS1

FYI, the accepted papers have been released. Guys who are interested in it could take a look. GL HF.

2011年8月19日 星期五

Interconnection Network

這篇文章講解interconnection network。interconnection 一直是多核心處理器設計的重要議題。如Figure 1,軟體層面,process是經由IPC溝通,而在底層的硬體,cores間得透過interconnect做溝通。


Figure 1

最primitive的interconnection network可以想做圖二,n個processors經過一個 interconnection network與m個memory做連接。


Figure 2

Interconnect Network 的設計考量有幾個
1. Operation mode : synchronous or not
2. Control strategy : switch elements是 centralized control or distributed control
3. Switching methodology : 包括 circuit switching and packet switching
3.1. Circuit switching 是指有一條實體線路從 src 接到 dst,適合bulk transfer。
3.2. Packet switching 沒有實體線路,傳輸時才決定如何 route,適合小量資料傳輸。
3.3. 當然也有結合Circuit switching和Packet Switching兩個的模式。
4. Network Topology : 就是nodes間的連接圖,又可分為 static 或 dynamic。
4.1. Static的代表link not reconfigurable
4.2. Dynamic則與 Static相反

Static 的可以用 1D、2D、3D、hypercube的方式連接,
1D : Linear


Figure 3

2D : Ring, Star, Near-Neighbor Mesh and More




Figure 4~6

3D 像是 Completely Connected, Chordal Ring等等

Dynamic 的topologies有幾類,包括single-stage、multi-stage、crossbar。Single-stage和multi-stage差別是在switch element有幾層,multi-stage的種類又有很多種,有興趣可以在 google scholar撈到很多。


-------------- 待續 --------------


References
[1] A Survey of Interconnect Networks
[2] Interconnection Networks -A Survey and Assessment

2011年7月11日 星期一

Workshop Advances in Speech Technologies (2011)

http://anasynth.ircam.fr/home/blogs/nicolas-obin/workshop-advances-speech-technologies

Axel邀請了其他三名教授來分享研究成果,剛好這場我有去聽。雖然我們lab不做speech,不過一樣都是1-D signal processing,更何況speech processing研究已行之有年,讓我們來看看現在大家在做些什麼題目。


2011年6月13日 星期一

[matlab] Cue Reader

話說,我來法國後親眼看宗鑫學長操作IRCAM的AudioSculpt真的是出神入化,再加上他們實驗的東西多半有整合進這套工具裡,包含Onset (Transient) Detection, Partial Tracking, Sinusoidal Analysis / Synthesis 等,所以學長把視窗打開後設一設參數,就跑完 tracking 的結果,然後再用滑鼠把某些 tracking 點開來標記 partial group。不過他們一樣有個問題:AudioSculpt分析的結果通常是以sdif的格式存檔的,他們必須先透過matlab程式去parse sdif檔才能將資訊匯進matlab使用。