最近突然覺得自己常常耍廢摸魚得過且過感覺未來會暴死,經過深刻的反省之後決定把這學期上課的內容整理成筆記放到 blog 裡,希望這個系列能夠安穩落地。因為目前才剛開始教所以分類會有些隨便,以後滾動調整吧~
Week1# 關於訊號#
訊號:資訊的流動
訊號處理:生成、轉換和解釋資訊的關鍵技術
數位訊號處理:使用電腦處理訊號
訊號的分類與轉換# 訊號主要分為兩大類 :
連續時間訊號 (Continuous-time, CT) :標記為 x ( t ) x(t) x ( t )
離散時間訊號 (Discrete-time, DT) :標記為 x [ n ] x[n] x [ n ] ,其中 n n n 為整數 ( 0 , 1 , 2 , … ) (0, 1, 2, \ldots) ( 0 , 1 , 2 , … )
連續時間訊號經過取樣(Sampling)後轉換為離散訊號,取樣率是一個至關重要的參數,它決定了你每秒鐘要抓取多少個點。取樣率越高,還原出來的訊號就越接近原始的連續狀態。
類比轉數位 (A/D Conversion)# 訊號從連續時間訊號轉為類比訊號需要經過兩個步驟,分別是取樣(Sampling)以及量化(Quantization):
C T → S a m p l i n g D T → Q u a n t i z a t i o n D i g i t a l CT \xrightarrow{Sampling} DT \xrightarrow{Quantization} Digital CT S am pl in g D T Q u an t i z a t i o n D i g i t a l
取樣(時間離散化) :將 x ( t ) x(t) x ( t ) 轉換為 x [ n ] x[n] x [ n ] ,決定了訊號的頻率範圍
取樣週期(T T T ):兩次取樣之間的時間間隔
取樣率/頻率(f s f_s f s ):f s = 1 T f_s = \frac{1}{T} f s = T 1
關係式:t = n ⋅ T t = n \cdot T t = n ⋅ T
量化(數值離散化) :將連續的振幅值轉為有限精度的數位資料,決定了訊號的動態範圍與細節
基礎離散時間訊號#
單位樣本序列 (Unit Sample Sequence / Impulse)
標記為 δ [ n ] δ[n] δ [ n ] ,其定義如下 :
δ [ n ] = { 1 , n = 0 0 , n ≠ 0 δ[n] =
\left\{
\begin{array}{ll}
1, & n = 0 \\
0, & n \neq 0
\end{array}
\right. δ [ n ] = { 1 , 0 , n = 0 n = 0
單位步階序列 (Unit Step Sequence)
標記為 u [ n ] u[n] u [ n ] ,其定義如下 :
u [ n ] = { 1 , n ≥ 0 0 , n < 0 u[n] =
\left\{
\begin{array}{ll}
1, & n \ge 0 \\
0, & n < 0
\end{array}
\right. u [ n ] = { 1 , 0 , n ≥ 0 n < 0
指數序列 (Exponential Sequence)
形式為 x [ n ] = A ⋅ α n x[n] = A \cdot \alpha^n x [ n ] = A ⋅ α n ,A A A 與 α \alpha α 可為實數或複數
重要數學性質與表示法# 任意序列的表示 (Representation of Arbitrary Sequence)# 任何離散序列 x [ n ] x[n] x [ n ] 都可以表示為一組加權且延遲的單位脈衝之和 :
寫成一般式(a k a_k a k 即為 x [ k ] x[k] x [ k ] 的值):
x [ n ] = ∑ k = − ∞ ∞ a k ⋅ δ [ n − k ] = ∑ k = − ∞ ∞ x [ k ] ⋅ δ [ n − k ] x[n]=\sum_{k=-\infty}^\infty {{\color{#3071c4} a_k} \cdot \delta[n-k]}=\sum_{k=-\infty}^\infty {{\color{#3071c4} x[k]} \cdot \delta[n-k]} x [ n ] = k = − ∞ ∑ ∞ a k ⋅ δ [ n − k ] = k = − ∞ ∑ ∞ x [ k ] ⋅ δ [ n − k ]
u [ n ] u[n] u [ n ] 與 δ [ n ] \delta[n] δ [ n ] 的關係
累加關係: u [ n ] = ∑ k = 0 ∞ δ [ n − k ] u[n]=\sum_{k=0}^\infty \delta[n-k] u [ n ] = ∑ k = 0 ∞ δ [ n − k ] 或 u [ n ] = ∑ k = − ∞ n δ [ k ] u[n]=\sum_{k=-\infty}^n \delta[k] u [ n ] = ∑ k = − ∞ n δ [ k ]
差分關係: δ [ n ] = u [ n ] − u [ n − 1 ] \delta[n]=u[n]-u[n-1] δ [ n ] = u [ n ] − u [ n − 1 ]
在處理複數指數訊號時常用到:
歐拉公式:e j ϕ = cos ϕ + j sin ϕ e^{j \phi}=\cos \phi+j\sin \phi e j ϕ = cos ϕ + j sin ϕ
極座標表示:A = ∣ A ∣ e j ϕ 1 A=|A| e^{j \phi_1} A = ∣ A ∣ e j ϕ 1 ,α = ∣ α ∣ e j ϕ 2 \alpha= |\alpha| e^{j \phi_2} α = ∣ α ∣ e j ϕ 2
因此 x [ n ] = A α n = ∣ A ∣ ∣ α ∣ n e j ( n ϕ 2 + ϕ 1 ) x[n]=A \alpha^n= |A| |\alpha|^n e^{j(n \phi_2 + \phi_1)} x [ n ] = A α n = ∣ A ∣∣ α ∣ n e j ( n ϕ 2 + ϕ 1 )
✍️TODO 以後想到再補圖
Week2# 訊號取樣的影響 (Effect of Signal Sampling)# 基本定義# 假設一個連續時間訊號 x ( t ) = cos ( ω t ) x(t) = \cos(\omega t) x ( t ) = cos ( ω t )
ω \omega ω :角頻率 (Radian Frequency),單位:rad/s(徑度/秒)
t t t :連續時間,單位:sec(秒)
NOTE 複習一下高中內容:在圓周運動或簡諧運動的數學推導中,如果使用「圈數」,公式裡會不斷出現 2 π 2 \pi 2 π 這個係數,顯得累贅。為了讓方程式更簡潔,我們直接把 2 π 2 \pi 2 π 乘進去,定義出角頻率(以 ω \omega ω 表示)
取樣過程(Sampling Process)#
每隔 T T T 秒取樣一次,T T T : 取樣週期 (Sampling Period)
時間 t : 0 , T , 2 T , 3 T , … t = n T n = 0 , 1 , 2 , 3 , … \begin{aligned}
{\text{時間 } t\text{:}} & 0, T, 2T, 3T, \ldots \\
t &= nT \\
n &= 0, 1, 2, 3, \ldots
\end{aligned} 時間 t : t n 0 , T , 2 T , 3 T , … = n T = 0 , 1 , 2 , 3 , …
離散化
x ( t ) = cos ( ω t ) ↓ t = n T x ( n T ) = cos ( ω n T ) ⇓ x [ n ] = cos ( ω n T ) \begin{aligned}
x(t) &= \cos(\omega {\color{#3071c4}t}) \\
&\downarrow {\color{#3071c4}t = nT} \\
x({\color{#3071c4}nT}) &= \cos(\omega {\color{#3071c4}nT}) \\
&\Downarrow \\
x[n] &= \cos(\omega nT)
\end{aligned} x ( t ) x ( n T ) x [ n ] = cos ( ω t ) ↓ t = n T = cos ( ω n T ) ⇓ = cos ( ωn T )
取樣頻率轉換
取樣頻率:f s = 1 T f_s = \frac{1}{T} f s = T 1 Hz,取樣角頻率為 ω s = 2 π T \omega_s = \frac{2 \pi}{T} ω s = T 2 π rad/s
TIP ω = 2 π f → f = 1 T ω = 2 π T \omega = 2 \pi f \xrightarrow{f = \frac{1}{T}} \omega = \frac{2 \pi}{T} ω = 2 π f f = T 1 ω = T 2 π
離散時間的週期性 (Periodicity in Discrete Time)# 假設這裡有兩個訊號:x x x 和 x 1 x_1 x 1
{ x = cos ( ω t ) x 1 = cos ( ( ω + ω s ) t ) \left\{
\begin{array}{ll}
x &= \cos(\omega t) \\
x_1 &= \cos((\omega + {\color{#3071c4}\omega_s})t)
\end{array}
\right. { x x 1 = cos ( ω t ) = cos (( ω + ω s ) t ) 很明顯這是兩個不一樣頻率的訊號,但如果我們對它們進行採樣,會發現一個很有趣的現象:
x 1 ( t ) = cos ( ( ω + ω s ) t ) ↓ t = n T x 1 [ n ] = cos ( ( ω + ω s ) n T ) ∵ ω s = 2 π T ∴ x 1 [ n ] = cos ( ( ω + 2 π T ) ⋅ n T ) = c o s ( ω n T + 2 π T ⋅ n T ) = c o s ( ω n T + 2 π n ⏟ 2 π 的整數倍,不影響值 ) = c o s ( ω n T ) \begin{aligned}
x_1(t) &= \cos((\omega+\omega_s)t) \\
&\downarrow t = {\color{#3071c4}nT} \\
x_1[n] &= \cos((\omega+\omega_s){\color{#3071c4}nT}) \\
&\because \omega_s = \frac{2\pi}{T} \\
\therefore x_1[n] &= \cos((\omega+\frac{2\pi}{T})\cdot nT) \\
&= cos(\omega nT+\frac{2\pi}{\cancel{T}}\cdot n\cancel{T}) \\
&= cos(\omega nT+{\underbrace{2\pi n}_{\color{#e53935}{2\pi\text{ 的整數倍,不影響值}}}}) \\
&= cos(\omega nT)
\end{aligned} x 1 ( t ) x 1 [ n ] ∴ x 1 [ n ] = cos (( ω + ω s ) t ) ↓ t = n T = cos (( ω + ω s ) n T ) ∵ ω s = T 2 π = cos (( ω + T 2 π ) ⋅ n T ) = cos ( ωn T + T 2 π ⋅ n T ) = cos ( ωn T + 2 π 的整數倍,不影響值 2 πn ) = cos ( ωn T ) 可以觀察到雖然 x x x 跟 x 1 x_1 x 1 不同,但取樣後都是 c o s ( ω n T ) cos(\omega nT) cos ( ωn T ) ,∴ x [ n ] = x 1 [ n ] \therefore x[n] = x_1[n] ∴ x [ n ] = x 1 [ n ] 。
NOTE 這裡再假設一個 x 2 ( t ) = cos ( ( − ω + ω s ) t ) x_2(t) = \cos((-\omega+{\color{#3071c4}\omega_s})t) x 2 ( t ) = cos (( − ω + ω s ) t ) ,取樣後會得到 x 2 [ n ] = cos ( − ω n T ) x_2[n] = \cos(-\omega nT) x 2 [ n ] = cos ( − ωn T ) ,但因為 cosine 是偶函數,所以 x 2 [ n ] = cos ( − ω n T ) = cos ( ω n T ) = x [ n ] x_2[n] = \cos(-\omega nT) = \cos(\omega nT) = x[n] x 2 [ n ] = cos ( − ωn T ) = cos ( ωn T ) = x [ n ]
我們可以得到一個結論,在離散的世界裡,很多不同頻率的連續波,採樣後居然會看起來一模一樣,這個就是所謂的 「混疊現象」(Aliasing Phenomenon) 。
🔗圖片來源:https://www.ni.com/docs/zh-TW/bundle/labwindows-cvi/page/advancedanalysisconcepts/aliasing.html
奈奎斯特-香農取樣定理 (Nyquist-Shannon Sampling Theorem)# 我們現在知道如果取樣頻率不夠高,就會在這種週期性的訊號上產生混疊現象,那如果不想要產生混疊現象的話,具體來說需要多高的取樣頻率呢?奈奎斯特-香農取樣定理 給出了答案,並定義了所謂的奈奎斯特頻率 (Nyquist Frequency) ,又或者稱作奈奎斯特極限 (Nyquist Limit) 。
奈奎斯特極限: 能被系統唯一表示的最高頻率為 ω s 2 \frac{\omega_s}{2} 2 ω s
發生混疊的條件: 如果輸入訊號的最高頻率 ω N > ω s 2 \omega_N > \frac{\omega_s}{2} ω N > 2 ω s ,就會發生混疊
取樣定理: 假設一個連續時間訊號 x ( t ) x(t) x ( t ) ,它是一個頻帶受限訊號 (band-limited signal) ,最高頻率為 ω N \omega_N ω N ,寫成數學式:X ( j ω ) = 0 for ∣ ω ∣ ≥ ω N X(j\omega) = 0 \text{ for } |\omega| \ge \omega_N X ( jω ) = 0 for ∣ ω ∣ ≥ ω N (所有比 ω N \omega_N ω N 大的頻率都不存在 → X ( j ω ) = 0 \rightarrow X(j\omega) = 0 → X ( jω ) = 0 )。如果我們以 ω s ≥ 2 ω N \omega_s \ge 2\omega_N ω s ≥ 2 ω N 的頻率對其進行取樣,那麼這個連續訊號 x ( t ) x(t) x ( t ) 就可以 唯一地 (uniquely) 被它的離散取樣點 x [ n ] x[n] x [ n ] 所決定。換句話說,只要取樣正確,就能拿這些離散的點拼湊回原本的 x ( t ) x(t) x ( t )
頻帶受限訊號 (Band-Limited Signal)
指其頻譜能量集中在有限的頻率範圍內的訊號,簡單來說,它的頻率是有上限的 (ω m a x < ∞ \omega_{max} < \infty ω ma x < ∞ )。
完美還原訊號的數學條件# if ω s ⏞ 取樣頻率 ≥ 2 ω N ⏞ 最高訊號頻率 i.e. , Nyquist Limit ω s 2 ω N ≤ ω s 2 ⇒ ω s ≥ 2 ω N ω s = 2 π T ⇒ T = 2 π ω s \begin{aligned}
&\text{if } \overbrace{\omega_s}^{\color{#3071c4}\text{取樣頻率}} \ge \overbrace{2\omega_N}^{\color{#e53935}\text{最高訊號頻率}} \\
&\text{i.e. , Nyquist Limit } \frac{\omega_s}{2} \\
&\omega_N \le \frac{\omega_s}{2} \color{#3071c4}{\Rightarrow \omega_s \ge 2\omega_N} \\
&\omega_s = \frac{2\pi}{T} \Rightarrow T = \frac{2\pi}{\omega_s}
\end{aligned} if ω s 取樣頻率 ≥ 2 ω N 最高訊號頻率 i.e. , Nyquist Limit 2 ω s ω N ≤ 2 ω s ⇒ ω s ≥ 2 ω N ω s = T 2 π ⇒ T = ω s 2 π 反混疊濾波器(Anti-aliasing Filter)# ✍️TODO 以後補
範例與練習# Ex.1# Determine which input signals to a digital filter or DSP system will be aliased by the given period Т Т Т ?
x ( t ) = 2 cos ( 10 t ) , T = 0.1s x(t) = 2\cos(10t)\text{ , T = 0.1s} x ( t ) = 2 cos ( 10 t ) , T = 0.1s
x ( t ) = 8 cos ( 15 t ) , T = 0.2s x(t) = 8\cos(15t)\text{ , T = 0.2s} x ( t ) = 8 cos ( 15 t ) , T = 0.2s
Ans
ω s = 2 π T = 2 π 0.1 = 20 π \omega_s = \frac{2\pi}{T} = \frac{2\pi}{0.1} = 20\pi ω s = T 2 π = 0.1 2 π = 20 π
Nyquist Frequency: ω s 2 = 10 π ≈ 31.4 \frac{\omega_s}{2} = 10\pi\approx 31.4 2 ω s = 10 π ≈ 31.4
∴ ω N = 10 < ω s 2 \therefore \omega_N = 10 < \frac{\omega_s}{2} ∴ ω N = 10 < 2 ω s ,沒有混疊
同理,ω s 2 = 2 π 0.2 2 = 5 π ≈ 15.7 \frac{\omega_s}{2} = \frac{\frac{2\pi}{0.2}}{2} = 5\pi\approx 15.7 2 ω s = 2 0.2 2 π = 5 π ≈ 15.7
∴ ω N = 15 < ω s 2 \therefore \omega_N = 15 < \frac{\omega_s}{2} ∴ ω N = 15 < 2 ω s ,沒有混疊
Ex.2# Determine if the following signals will be aliased. If the signal is aliased into having the same sample value as a lower frequency sinusoidal signal, determine the lower sinusoidal signal.
x ( t ) = 7 cos ( 25 t ) , T = 0.1s x(t) = 7\cos(25t)\text{ , T = 0.1s} x ( t ) = 7 cos ( 25 t ) , T = 0.1s
x ( t ) = 3 cos ( 160 t ) , T = 0.02s x(t) = 3\cos(160t)\text{ , T = 0.02s} x ( t ) = 3 cos ( 160 t ) , T = 0.02s
Ans
ω s 2 = 2 π 0.1 2 = 10 π ≈ 31.4 \frac{\omega_s}{2} = \frac{\frac{2\pi}{0.1}}{2} = 10\pi\approx 31.4 2 ω s = 2 0.1 2 π = 10 π ≈ 31.4
∴ ω N = 25 < ω s 2 \therefore \omega_N = 25 < \frac{\omega_s}{2} ∴ ω N = 25 < 2 ω s ,沒有混疊
ω s 2 = 2 π 0.02 2 = 50 π ≈ 157 \frac{\omega_s}{2} = \frac{\frac{2\pi}{0.02}}{2} = 50\pi\approx 157 2 ω s = 2 0.02 2 π = 50 π ≈ 157
∴ ω N = 160 > ω s 2 \therefore \omega_N = 160 > \frac{\omega_s}{2} ∴ ω N = 160 > 2 ω s ,有混疊
✍️TODO 發生混疊後的低頻波計算之後補
未完待續…
NOTE 部份圖片來源自:陳榮銘 教授 數位訊號處理課程投影片