13.1 음성 부호화에서의 ADPCM 13.2 G.726 ADPCM 13.3 보코더 13장 기본 오디오 압축 기술 13.1 음성 부호화에서의 ADPCM 13.2 G.726 ADPCM 13.3 보코더 멀티미디어시스템 2010-2학기
13.1 음성부호화에서의 ADPCM ADPCM은 ITU의 음성 압축 표준인 G.721, G.723, G.726, G.727의 핵심을 구성. 이러한 표준들 사이의 차이점은 비트율 (샘플당 3에서 5비트)과 알고리즘의 몇 가지 세부사항을 포함. 기본 입력은 μ-법칙으로 부호화된 PCM 16비트 샘플. 멀티미디어시스템 2010-2학기
그림 13.1: “오디오” 단어의 파형: (a) 음성 샘플, 샘플당 8kHz/16 bits에서의 선형 PCM (b) 음성 샘플, 4bits/sample에서 G.721로 압축된 오디오로부터 복원 (c) (a)와 (b) 사이의 차분 신호.
13.2 G.726 ADPCM ITU G.726은 ITU 표준 G.721과 G.723을 대신함. 원리: 간단한 방법으로 고정 양자화기(fixed quantizer)를 적 응적으로 동작하고, 사용된 부호어의 다른 크기는 8kHz 샘 플링 비율에서 16kbps, 24bps, 32kbps 또는 40kbps에 이름. 멀티미디어시스템 2010-2학기
표준은 신호의 현재 스케일에 의존해서 모든 차분 값 en에 대해 변화되는 상수 α를 정의함. 스케일된 차분 신호 gn은 다음과 같이 정의됨: 은 예측된 신호 값. gn은 양자화를 위해 양자화기로 보내짐.
그림 13.2: G.726 양자화 입력 값은 인수 α와의 차분 비율. α를 변화시킴으로써, 양자화기는 차분 신호의 범위 내 에서 변화에 적응할 수 있음. ᅳ 역방향 적응적 양자화 기(backward adaptive quantizer)
역방향 적응적 양자화기 역방향 적응적(backward adaptive) 양자화기는 원칙 적으로 다음과 같은 경우 중 어느 것을 인지함으로써 동작. 너무 많은 값들이 0에서 멀리 떨어진 값으로 양자화 됨 ᅳ 만약 f의 양자화기 단계 크기가 너무 작으면 일어남. 너무 많은 값들이 너무 자주 0에 가까운 값으로 쏠림 ᅳ 만약 양 자화기 단계 크기가 너무 크면 일어남. Jayant 양자화기(Jayant quantizer)는 단지 하나의 블 럭을 받은 후에 역방향 양자화기 단계 크기에 적응하는 것을 허용. Jayant 양자화기는 만약 양자화된 입력이 양자화기 범위 밖의 레 벨이면 단순히 단계 크기를 확장하고, 만약 입력이 0에 가깝다 면 단계 크기를 줄임. 멀티미디어시스템 2010-2학기
Jayant 양자화기의 단계 크기 Jayant 양자화기는 각 레벨에 대해 승수 값 Mk를 할당 하는데, 0에 가까운 레벨에 대해서는 1보다 더 작은 값 을 밖의 레벨에 대해서는 1보다 더 큰 값을 할당. 간단화 공식에 의해 신호 fn을 위한 양자화기 단계 크 기 ∆는 이전 신호 값 fn-1을 위해 양자화된 값 k에 따라 변함. 신호의 양자화된 버전은 변화를 유도하기 때문에, 이 것은 실제로 역방향 적응적 양자화기임.
G.726 ᅳ 역방향 적응적인 Jayant 양자화기 G.726을 α에 의해 나누어진 입력 차분 신호 en의 대수 에 기반을 둔 고정된 양자화기 단계를 사용. 나눔 수 α는 다음과 같음: 일반적으로 차분 값이 작을 때와 클 때를 구별하기 위 해, α는 다음의 두 차분으로 나누어짐. 잠긴(locked) 부분 αL ᅳ 작은 차분 값을 위한 스케일 인수 잠기지 않은(unlocked) 부분 αU ᅳ 큰 차분에 빠르게 적응 이것은 로그 양(log quantities) ßL 과 ßU에 대응. 즉: * A는 음성을 위해서 1근처의 값으로 음성 대역 데이터를 위해서 0 근처 의 값으로 변화함.
“잠기지 않은” 부분은 방정식에 의하여 적응됨. 여기서 Mk 는 k번째 레벨을 위한 Jayant 승수. 잠긴 부분은 잠기지 않은 부분으로부터 약간 변형. 여기서 B는 2-6 정도의 작은 수. G.726 예측기는 꽤 복잡: 그것은 이전 6개 신호 값 fn으로 부터 6개의 양자화된 차분과 2개의 복원된 신호 값의 선 형 결합을 사용함.
13.3 보코더 보코더(Vocoders) - 모뎀 신호와 같은 다른 아날로그신 호가 사용될 때 유용하게 적용되지 않는 음성 부호기로 사용. 두드러진 특징들을 가능한 한 적은 비트로 획득할 수 있는 음성 모델링과 관련 있음. 때를 맞춰 음성 파형의 모델을 이용(LPC(선형 예측 부호화) 보 코딩), 또는 … → 신호를 주파수 성분으로 분해하고 그것을(채널 보코더와 포만 트 보코더) 모델링 함. 음성의 보코더 시뮬레이션은 아직 완벽하지 않음. 멀티미디어시스템 2010-2학기
위상 둔감도 음성 파형의 완전한 복원은 지각적으로 확실히 불필요: 필요한 것은 어떤 시점의 에너지의 양이 적절해야 하고 신호는 올바른 소리를 내야 함. 위상(Phase)은 시간의 함수 안에서 시간 독립 변수의 이동. 우리가 피아노 키를 두드리면, 대략 사인곡선 소리 cos(wt)와 w=2πf를 생성한다고 가정. 만약 우리가 위상 이동 π/2를 생성하기 위해 충분한 시간을 기 다리고, 음향 cos(2wt + π/2)를 갖는 다른 키를 두드리면 그림 13.3에서 실선과 같은 파형을 생성. 이 파형은 cos(wt) + cos(2wt + π/2)의 합. 멀티미디어시스템 2010-2학기
그림 13. 3: 실선: 위상 쉬프트를 갖는 두 코사인의 중첩. 점선: 위상 쉬프트가 없음 그림 13.3: 실선: 위상 쉬프트를 갖는 두 코사인의 중첩. 점선: 위상 쉬프트가 없음. 파형은 매우 다르나, 지각적으로 소리는 같음. 만약 우리가 두 번째 건반을 두드리기 전에 기다리지 않는 다면, 이 파형은 cos(wt) + cos(2wt)가 됨. 하지만 실제로 그것 들이 위상에서 이동 되었지만, 지각적으로 두 건반은 같은 소리로 들리게 됨.
채널 보코더 보코더는 1~2kbps의 낮은 비트율에서 동작될 수 있 음. 그렇게 하기 위해서, 채널 보코더는 다른 주파수 성분을 분리하기 위해 먼저 필터 뱅크를 적용함. 그림 13.4: 채널 보코더
위상 둔감도(Phase Insensitivity)에 기인함(즉, 에너지만 중 요): 파형은 그것의 절대값으로 “정류된다(rectified)”. 필터 뱅크는 각 주파수 범위에 대해 상세적인 파워 레벨을 유도 함. 서브밴드 부호기는 신호를 정류하지 않고, 더 넓은 주파수 대역 을 사용할 것임. 채널 보코더는 또한 일반적인 음성의 음조(pitch)(낮음- 베이스 또는 높음-테너)와 음성의 자극(excitation)을 결 정하기 위해 신호를 분석. 채널 보코더는 소리 모델을 묘사하는 자극 매개변수의 벡터를 생성하기 위해 소리관 전달 모델(vocal tract transfer model)을 적용하고 그 소리가 유성음(voiced)인지 무성음(unvoiced)인지를 추측. 멀티미디어시스템 2010-2학기
포만트 보코더 포만트(Formants): 음성 샘플에서 나타나는 두드러 진 주파수 성분은 그림 13.5에서 보여줌. 원리 : 가장 중요한 주파수만 부호화함. 그림 13.5: 실선은 그림 6.15의 음성 샘플의 처음 40msec에서 나타난 주파수를 보여줌. 점선은 유사한 주파수가 1초 뒤에 여전히 존재하여, 이 주파수가 쉬프트된 것을 보여줌.
선형 예측 부호화(LPC) LPC 보코더(LPC vocoders)는 신호를 주파수 영역으 로 변환하기 보다 오히려 파형으로부터 직접 음성의 두 드러진 특징을 추출. LPC 특징: 주어진 자극으로부터 생성되는 소리관 소리의 시변 모델(time- varying model)을 이용. 전송되는 것은 소리관의 형성과 자극을 모델링하는 매개변수의 세트이지 실제신호나 차분신호가 아님 ⇒ 적은 비트율. “선형(Linear)”에 대하여: 출력 소리관 모델에 의해 생 성된 음성 신호는 현재 음성 출력에다 이전 모델 계수 의 두 번째 항 선형이 더해진 것의 함수로써 계산됨. 멀티미디어시스템 2010-2학기
LPC 부호화 처리 LPC는 현재 세그먼트가 유성음인지 무성음인지의 결 정에 의해 시작: 무성음을 위해: 넓은 대역 잡음 발생기(wide-band noise generator) 는 소리관 시뮬레이터로 입력되는 샘플 값 f(n)을 생성. 유성음을 위해: 펄스열 발생기(pulse train generator)는 f(n) 값을 생 성. 모델 매개변수 ai : 실제 음성과 소리관 모델에 의해 생성된 음성 사이의 차를 최소화하는 최소 제곱 방정식의 집합을 이용하여 계산되고, 음성 매개 변수를 획득한 잡음 또는 펄스열 발생기에 의해 자극 됨. 멀티미디어시스템 2010-2학기
LPC 부호화 처리(계속) 만약 입력 값 f(n)에 대해 출력 값 s(n)을 생성한다면, 출 력은 p 개의 이전 출력 샘플 값에 달려있음: G - ”이득” 인자 계수; ai - 선형 예측기 모델에서 값 LP 계수는 다음의 최소화 문제를 해결함으로써 계산될 수 있음:
LPC 부호화 처리(계속) ai 의 미분 계수를 가지고 그것을 0으로 두면, p개의 방 정식 집합을 얻음: Φ(i,j) = E{s(n-i)s(n-j)}라 두면, 아래 식을 얻음:
LPC 부호화 처리(계속) 자기 상관도 방법은 LP계수를 계산하기 위해 자주 사 용되는 방법: sw(n) = s(n+m)w(n) - 시간 m으로부터 시작하는 윈도우된 음성 프 레임
LPC 부호화 처리(계속) Φ(i, j)가 Φ(i, j)= R(|i-j|)로 정의될 수 있기 때문에, R(0) ≥ 0 일 때 행렬{Φ(i, j)}은 양의 대칭 행렬이 되고 LP계수를 계산하기 위한 빠른 스키마가 존재함:
LPC 부호화 계수(계속) 이득 G는 아래와 같이 계산될 수 있음:
부호 자극적인 선형 예측(CELP) CELP(Code Excited Linear Prediction)는 간단한 LPC 모델의 부족한 품질을 완화하기 위한 더 복잡한 부 호기 집합. CELP는 자극의 더 복잡한 기술을 이용: 자극 벡터의 전체 집합(부호책: codebook)을 실제 음성으로 매치 되고, 가장 잘 매치되는 인덱스는 수신기로 보내짐. 복잡성은 4,800 ~ 9,600bps로 비트율을 증가시킴. 결과 음성은 더 유사하고 연속적인 것으로써 인지됨. 이 방법으로 달성된 품질은 오디오 회의용으로 충분함. 멀티미디어시스템 2010-2학기
CELP를 위한 예측 CELP 부호기에서는 두 종류의 예측이 포함됨: LTP(긴 시간 예측: Long Time Prediction): 파형은 대체로 반복되기 때문에 기본적인 주기성 혹은 음조를 찾음으로써 음성 신호에 서 중복성을 줄일 수 있음. STP(짧은 시간 예측: short Time Prediction): 몇 개의 이전 샘플로부 터 다음 샘플의 예측을 시도함으로써 음성 신호에서 중복성을 제거할 수 있음. 멀티미디어시스템 2010-2학기
STP와 LPT사이의 관계 STP는 몇몇의 샘플에만 기반하여 단기간 음성 스펙트 럼의 포만트 구조를 획득. STP 다음의 LTP는 전체 프레임 혹은 하부 프레임 (프레 임의 1/4)을 사용하여 음성에서 주기성을 나타내는 음 성 신호의 기간 상관도를 회복. LTP는 종종 “적응적 부호책 검색(adaptive codebook searching)”으 로 구현. 그림 13.6은 STP와 LTP사이의 관계를 보여줌. 멀티미디어시스템 2010-2학기
그림 13.6: 적응적이고 확률적인 부호책을 갖는 CELP 분석 모델
적응적 부호책 검색 원리: 현재 하부 프레임과 매치되는 것을 찾기 위해 파형의 부호책을 들여다보는 것. 현재 하부 프레임과 매치되는 것을 찾기 위해 파형의 부호책을 들여다보는 것. 부호어(codeword): 적응적 부호책에서 현재 음성 프레임 또는 하 위 프레임에 대응되는 지연 τ 에 의해 인덱스 되어 쉬프트된 음 성 잔여 세그먼트. 부호어에 해당하는 이득은 g0로 표시. 멀티미디어시스템 2010-2학기
열린-루프 부호어 검색 지각적으로 가중되는 복원된 음성 오차가 아니라 장 기간 예측 오차를 최소화하려고 노력함. ∂E(τ)/∂g0 = 0 으로 g0의 편미분을 0으로 둠으로써, 다음 을 얻음. 따라서 최소화 합-오차 값은 다음과 같음.
LZW 닫힌-루프 부호어 검색 닫힌 루프 검색은 대개 CELP 부호기에서 사용함 ᅳ 또 한 합성에 의한 분석(A-B-S: Analysis-By-Synthesis)으로 불 림. 음성은 단순히 제곱의 합을 고려하는 것보다 적응적 부 호책 검색을 통해 최소화된 지각적 오차와 복원됨. 적응적 부호책에서 가장 좋은 후보는 국부적으로 복원 된 음성의 왜곡을 최소화 하도록 선택. 매개변수는 원래 음성과 복원된 음성 사이의 크기를 최 소화하여 얻음. 멀티미디어시스템 2010-2학기
하이브리드 자극 보코더 하이브리드 자극 보코더(Hybird Excitation Vocoders) 는 다중 모델 자극을 도입하기 위한 모델 기반 방법을 사용하여 CELP와는 다름. 두 가지 주요 유형을 포함: MBE(다중 대역 자극: Multi-Band Excitation): 음성 분석이 약 20msec에서 30msec까지의 음성 프레임 단위로 행해지는 블럭 기반 코덱임. MELP(다중 대역 자극 선형 예측: Multiband Excitation Linear Predictive): 음성 코덱은 매우 낮은 비트율 안전 통신에 응용의 초 점을 맞춘 오래된 LPC-10(FS 1015)표준을 대체하기 위한 새로운 미국 연방 표준임. 멀티미디어시스템 2010-2학기
MBE 보코더 MBE는 매개변수 예측에서 A-B-S 계획을 이용: 기본 주파수, 스펙트럼 포락선, 부 대역 U/V 결정과 같은 매개 변수는 닫힌 루프검색을 통하여 수행. 닫힌 루프 최적화의 기준은 지각적으로 가중되어 복원된 음성 오차를 최소화하는 것에 기반하며, 주파수 영역에서 다음과 같 이 표현될 수 있음. Sw(w) - 원본 음성의 단기간 스펙트럼 Swr(w) - 복원 음성의 단기간 스펙트럼 G(w) – 지각적 가중치 필터의 스펙트럼
MELP 보코더 MELP: 또한 LPC 분석을 기반으로 하며, 자극 신호를 위 한 다중대역의 유연한 결정 모델을 사용. MBE와는 달리, MELP는 자극을 0~500, 500~1000, 1000~2000, 2000~3000, 3000~4000 Hz의 다섯 가지 고정 된 대역으로 분리. 멀티미디어시스템 2010-2학기
MELP 보코더(계속) 유성음 정도 매개변수는 비-DC 대역에서의 음성 신호 와 평탄화되고 정류된 신호의 정규화된 상관도 함수를 기반으로 각 대역에서 예측됨. sk(n)을 대역 k에서 음성 신호를 나타내고, uk(n)을 sk(n) 의 DC가 제거되고 평활화되어 정류된 신호를 나타낸 다고 가정. 상관도 함수는 다음과 같음: P - 현재 프레임의 음조 N – 프레임 길이 k – 대역을 위한 유성음화 세기(max(Rsk(P), Ruk(P))로 정의)
MELP 보코더(계속) MELP는 최저한의 유성음화된 음성 세그먼트를 실험하 여 지터리 유성음 상태를 채택. 지터리 상태는 전파 정류된 LP 잔여 e(n)의 최고점에 의 해 결정: 만약 최고점이 어떤 임계치보다 크다면, 음성 프레임은 지연된 상태가 됨.