본문 바로가기

음성

(4)
다채널 음성인식을 위한 Multi-channel speech processing(Spatial information/ Beamformer) Beamformer를 알기위해 시작한 공부가 multi-channel speech processing의 전반적 내용에 대한 궁금증으로 이어졌다. 지금까지는 single channel에서의 processing에 대해서만 다뤄왔는데, 2개 이상의 마이크를 이용한 speech signal을 어떻게 처리하는 지에 대해, 내가 공부해보려고 정리하는 포스팅이 될 것이다. multi-channel speech recognition(다채널 음성인식)은 어떤 흐름으로 진행되는지 살펴보고, 다채널음성인식을 위한 전처리의 내용을 집중해서 살펴볼 것이다. 본 포스팅은 이 논문을 정리하였다. Multi-channel speech processing 어디에 쓰는가? 채널=마이크갯수 라고 생각하면 된다. 내가 받는 signal이 ..
LPC(Linear Prediction Coding, 선형예측부호화)와 formant estimation LPC에 대한 소개 음성신호처리에서 강력한 음성분석기법중 하나가 바로바로 Linear predictive analysis이다. 이 기법은 음성의 생성모델의 파라미터 (그 중 vocal tract 필터)를 예측하는 좋은 방법이다.(이에 대해 아래에 자세히 설명예정) 이 기법은 여러분야에 쓰일 수 있는데 첫째로 낮은 bit rate로 전송(통신)을 하기위한 신호의 한가지 표현으로 쓰일 수도 있고. 압축하여 저장하는데에 쓰일 수도 있다. 또한 automatic speech나 화자인식에 쓰일 수있다. 이번 포스팅에서는 실제적인 음성application에 널리 쓰이는 Linear predictive analysis에 대해 소개할 것이다. Linear prediction방법은 LPC 즉, speech를 coding..
Speech production and perception(음성의 생성과 인지) Speech Chain speech coding이나 speech recogntion등의 speech를 처리하는 실질적인 시스템을 만들기 위해서는 실제로 인간이 어떻게 speech를 통해 서로 communication하는지 아는 것은 매우 중요하다. 결국 우리는 인간이 하는 음성의 인식과정을 기계가 모사하도록 만들고싶기 때문이다. 우리가 말하고 그 말을 듣고 이해하는 과정을 알아보도록 하자. 음성이 생성되어 전달되는 과정을 네트워크의 5계층처럼 단계별로 나누어 표현할 수 있겠다. ​Linguistic level: 어떤 생각이나 아이디어를 표현하기 위해서 어떤 sound로 말을 할지 basic sound를 선택하는 레벨 Physiological level : vocal tract의 구성요소들이 언어학적 발화..
STFT(Short-Time Fourier Transform)와 Spectrogram의 python구현과 의미 음성신호처리에서 아주 기본적인 feature로 spectrogram이 존재한다. spectrogram을 많이 쓰지만 왜 짧은 시간으로 나눠서 Fourier transform을 하는 지에 대해 생각하지 않고 쓰는 경우가 많다. Python에서 함수 한 줄로 구할 수 있는 spectrogram의 구현을 먼저 알아보고 후에 그 의미도 알아보자. STFT 와 Spectrogram python 구현 Spectrogram은 위와 같은 그림으로 표현할 수 있다. x축은 시간 축(단위: frame), y축은 주파수를 의미한다. 그리고 각 시간당 주파수가 가지는 값을 값의 크기에 따라 색으로 표현하여 3차원을 2차원으로 표현하게 된다. 즉, 시간의 흐름을 가지는 푸리에 변환이라고 생각할 수 있다. 각각의 frame(짧은..