Audio Signal Processing

12. harmonic model, F0 detection

yomatozu 2024. 8. 29. 14:20

이번 주제는 harmonic model이다.

 

harmonic model 의 식은 다음과 같이 표현할 수 있다.

 

고조파의 형식은 정현파와 매우 유사한 형태이지만 다른점이 있다.

 

정현파는 단일 주파수를 가지는 순수한 소리인 반면, 고조파는 그 기본 주파수의 배수로 구성된 더 복잡한 파형을 형성하여 소리의 음색을 풍부하게 만든다.

 

또한 스펙트럼으로 변환하면 

 

고조파를 이해하기 위해서는 정현파, 파셜, 고조파의 개념을 명확히 구분할 필요가 있다.

  • 정현파: 기본 주파수만으로 이루어진 순수한 파형으로, 피크가 하나의 주파수에만 집중된 형태
  • 파셜: 기본 주파수 외에도 다른 주파수 성분들이 포함된 파형으로, 다양한 피크가 나타날 수 있다. 이는 외부 사운드의 영향이나 다른 주파수 성분들에 의해 발생한다.
  • 고조파: 기본 주파수와 그 배수 주파수들로 이루어진 파형으로, 피크들이 이 배수 주파수에 나타난다. 노이즈나 소프트웨어 오류로 인해 예상치 못한 피크가 추가될 수 있다.

 

F0 detection은 가장 낮은 기본 주파수(Fundamental Frequency)를 찾는 과정이다. 이는 소리의 높낮이를결정한다. 

 

아래는 audiocorrelation function식이다. r_x[l]은 신호 x[n]가 특정 지연 l만큼 이동했을 떄, 원래 신호와 얼마나 유사한지를 나타내는 값이다. l이 0일 때는신호가 자기 자신과 비교되므로 항상 최대값을 가지며 l이 커지면 유사성이 줄어드는 경향이 있다. 

 

하지만 피아노 사운드와 같은 경우에는 잘 작동하지 않는다. 이와 비슷한 알고리즘인 YIN식을 보자.

 

YIN알고리즘은 작은 값을 가질 수록 두 소리가 유사하다는 아이디어로 고안된 식이다. 악기의 기본 주파수를 측정하는 데 있어 매우 일반적인 알고리즘일 정도로 중요한 알고리즘이다.

 

그렇다면 스펙트럼의 기본 주파수란 대체 뭐길래 찾아내려고 하는걸까? 

 

기본주파수란 주어진 음파의 가장 낮은 주파수 성분이며 스펙트럼에서 여러 개의 피크가 있을 때 이들 중 가장 낮은 주파수이자 다른 고조파들의 기준이 되는 주파수가 바로 기본 주파수이다.

 

따라서 소리 스펙트럼의 기분 주파수인 F0은 스펙트럼 피크를 가장 잘 설명하는 고조파 급수의 공약수라 할 수 있다.

 

아래 함수는 주파수 성분의 차이에 대해 가중치를 부여하고 이 값을 정규화하여 조정하기 위한 함수다.

 

아래함수에서 p는 주파수의 차이에 대한 가중치 조절을 위한 값, q는 특정 성분의 진폭을 조정하는 가중치이다.

아래는 통상적으로 쓰이는 값이다.

'Audio Signal Processing' 카테고리의 다른 글

* Window_size, Hop_size, FFT_size  (0) 2024.09.02
13. harmonic model analysis  (0) 2024.08.29
11. sinusoidal model analysis  (0) 2024.08.28
10. sinusoidal model_3  (0) 2024.08.28
09. sinusoidal model_2  (0) 2024.08.27