KR102352240B1 - Amr 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치 - Google Patents

Amr 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치 Download PDF

Info

Publication number
KR102352240B1
KR102352240B1 KR1020200018555A KR20200018555A KR102352240B1 KR 102352240 B1 KR102352240 B1 KR 102352240B1 KR 1020200018555 A KR1020200018555 A KR 1020200018555A KR 20200018555 A KR20200018555 A KR 20200018555A KR 102352240 B1 KR102352240 B1 KR 102352240B1
Authority
KR
South Korea
Prior art keywords
bits
frames
voice data
data
main component
Prior art date
Application number
KR1020200018555A
Other languages
English (en)
Other versions
KR20210103859A (ko
Inventor
최원석
박철순
김선교
훈 유
Original Assignee
국방과학연구소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국방과학연구소 filed Critical 국방과학연구소
Priority to KR1020200018555A priority Critical patent/KR102352240B1/ko
Publication of KR20210103859A publication Critical patent/KR20210103859A/ko
Application granted granted Critical
Publication of KR102352240B1 publication Critical patent/KR102352240B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination

Abstract

본 발명의 일 실시 예는, 제1모드 내지 제8모드 중 하나의 AMR 형식으로 압축된 음성데이터의 비트스트림을 수신하는 데이터수신단계; 상기 수신된 비트스트림을 기설정된 제1비트수를 갖는 프레임들로 분리하는 서브프레임분리단계; 상기 분리된 프레임들을 통합하여 비트배열을 생성하는 비트배열생성단계; 상기 생성된 비트배열 및 상기 프레임들의 전체 개수를 기초로 하여 상기 비트스트림의 주성분(principal component)을 특정하는 주성분특정단계; 및 상기 특정된 주성분을 분석하여, 상기 음성데이터가 상기 제1비트수에 대응되는 모드에 대한 데이터인지 여부를 추정하는 정보추정단계;를 포함하는 AMR음성데이터의 압축포맷 정보를 추정하는 방법을 개시한다.

Description

AMR 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치 {Method for estimating encoding information of AMR voice data and apparatus thereof}
본 발명은 AMR 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치에 관한 발명으로서, 보다 구체적으로는, AMR 음성데이터 파일이 어떤 모드로 인코딩된 음성데이터인지 정확하게 추정할 수 있는 방법 및 그 장치에 관한 것이다.
Adaptive Multi-Rate(이하, "AMR")은 음성 부호화에 최적화된 특허가 있는 오디오 데이터 압축이고, AMR 코덱은 다양한 전송률을 지원하여, 유동적인 환경에서 유연하게 대처할 수 있는 코덱으로 알려져 있다. AMR은 총 8개의 가변 전송률 4.75, 5.15, 5.90, 6.70, 7.40, 7.95, 10.2, 12.2 kbit/s의 협대역 신호(200-3400 Hz)를 인부호하며, 무선망의 상황에 따라 기지국 제어 시스템에서 AMR 출력 모드를 가변적으로 조정하여 사용자의 통신 서비스 품질(QoS)을 보장하는 다중 속도 협대역 음성 코덱이다.
1. 대한민국 공개특허공보 제10-2002-0068394호 (2002.08.27 공개) 2. 대한민국 공개특허공보 제10-2005-0089585호 (2005.09.08 공개)
본 발명이 해결하고자 하는 기술적 과제는, AMR 음성파일에 대한 모드 정보(압축포맷정보)를 특징 추출을 통해 추정하는 데에 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시 예에 따른 방법은, 제1모드 내지 제8모드 중 하나의 AMR 형식으로 압축된 음성데이터의 비트스트림을 수신하는 데이터수신단계; 상기 수신된 비트스트림을 기설정된 제1비트수를 갖는 프레임들로 분리하는 서브프레임분리단계; 상기 분리된 프레임들을 통합하여 비트배열을 생성하는 비트배열생성단계; 상기 생성된 비트배열 및 상기 프레임들의 전체 개수를 기초로 하여 상기 비트스트림의 주성분(principal component)을 특정하는 주성분특정단계; 및 상기 특정된 주성분을 분석하여, 상기 음성데이터가 상기 제1비트수에 대응되는 모드에 대한 데이터인지 여부를 추정하는 정보추정단계;를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 다른 일 실시 예에 따른 장치는, 제1모드 내지 제8모드 중 하나의 AMR 형식으로 압축된 음성데이터의 비트스트림을 수신하는 데이터수신부; 상기 수신된 비트스트림을 기설정된 제1비트수를 갖는 프레임들로 분리하는 서브프레임분리부; 상기 분리된 프레임들을 통합하여 비트배열을 생성하는 비트배열생성부; 상기 생성된 비트배열 및 상기 프레임들의 전체 개수를 기초로 하여 상기 비트스트림의 주성분(principal component)을 특정하는 주성분특정부; 및 상기 특정된 주성분을 분석하여, 상기 음성데이터가 상기 제1비트수에 대응되는 모드에 대한 데이터인지 여부를 추정하는 정보추정부;를 포함한다.
본 발명의 일 실시 예는, 상기 방법을 실행시키기 위한 프로그램을 저장하고 있는 컴퓨터 판독가능한 기록매체를 제공할 수 있다.
본 발명에 따르면, AMR 음성 파일의 압축포맷정보를 정확하게 추정할 수 있다.
또한, 본 발명에 따르면, AMR 음성 파일에 담겨있는 음성 데이터가 남성 또는 여성의 음성에 대한 데이터인지 판별할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 장치의 일 예의 블록도를 나타낸다.
도 2는 비트배열생성부가 비트배열을 생성하고 주성분을 특정하는 과정을 설명하기 위한 도면이다.
도 3은 제6모드에서 하나의 프레임 및 그 프레임에 포함된 서브프레임들을 도식적으로 나타낸 도면이다.
도 4 내지 도 11은 제1모드 내지 제8모드로 부호화된 남성 및 여성의 음성데이터의 주성분의 그래프의 일 예를 도식적으로 나타낸 도면이다.
도 12 및 도 13은 크로스팩터를 설명하기 위한 도면이다.
도 14는 본 발명을 구현하기 위한 방법의 일 예의 흐름도이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
이하의 실시 예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다.
이하의 실시 예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하의 실시 예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징을 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.
어떤 실시 예가 달리 구현 가능한 경우에 특정한 공정 순서는 설명되는 순서와 다르게 수행될 수도 있다. 예를 들어, 연속하여 설명되는 두 공정이 실질적으로 동시에 수행될 수도 있고, 설명되는 순서와 반대의 순서로 진행될 수 있다.
도 1은 본 발명의 일 실시 예에 따른 장치의 일 예의 블록도를 나타낸다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 장치는, 데이터수신부(110), 프레임분리부(120), 비트배열생성부(130), 주성분특정부(140) 및 정보추정부(150)를 포함하는 것을 알 수 있다. 도 1의 장치를 구성하는 각각의 구성은 특정한 기능을 수행하도록 제작된 물리적인 유닛일 수도 있고, 프로그램으로 구현되어 각각의 기능을 구현하도록 설정된 논리적인 모듈일 수도 있다.
이하에서는, 설명의 편의를 위해, 도 1의 각 구성의 기능을 포괄적으로 설명하고 난 후에 구체적으로 동작하는 과정에 대해서 표와 도면을 통해 설명하기로 한다.
데이터수신부(110)는 제1모드 내지 제8모드 중 하나의 AMR형식으로 압축된 음성데이터의 비트스트림(bitstream)을 수신한다.
프레임분리부(120)는 비트스트림을 기설정된 제1비트수를 갖는 프레임들로 분리한다.
비트배열생성부(130)는 분리된 프레임들을 통합하여 비트배열(bit array)을 생성한다.
주성분특정부(140)는 비트배열 및 프레임들의 전체 개수를 기초로 하여 비트스트림의 주성분(principal component)을 특정한다.
정보추정부(150)는 주성분을 분석하여, 데이터수신부(110)가 수신한 음성데이터가 제1비트수에 대응되는 모드에 대한 데이터인지 여부를 추정한다.
Figure 112020016075151-pat00001
먼저, 데이터수신부(110)는 음성데이터를 수신한다. 표 1은 데이터수신부(110)가 수신하는 AMR 음성데이터의 비트 할당(bit allocation)을 구체적으로 나타내고 있는 표이다. 표 1을 참조하여 설명하면, AMR 음성데이터는 가변율 압축 옵션인 총 8가지의 비트율(가변 전송률)에 대한 개별적인 압축포맷특징을 포함하는 것을 알 수 있다.
보다 구체적으로, AMR 인코딩이 되기 위해 입력되는 기초데이터(raw data)는 1프레임당 160개의 샘플을 포함하고, 1초마다 50프레임들이 입력되지만, 본 발명에서는 이미 AMR 인코딩이 완료된 파일을 수신하고, 수신된 음성 파일을 분석하기 위한 방법을 제안하는 것이므로, 이에 대한 구체적인 설명은 생략한다. 본 발명은 AMR 음성데이터가 수신되었으나, 수신된 데이터의 압축포맷에 대한 정보가 전혀 없을 때에 이를 정확하게 추정하기 위한 방법을 제안한다.
예를 들어, 표 1에서 10.2kbit/s의 모드는 모드 6(Mode 6)으로 별칭되며, 이 모드로 음성 샘플을 부호화(인코딩)할 경우, 1프레임당 204비트의 비트스트림이 생성된다. 여기서, 204비트 중 26비트에는 LSF 서브매트릭스(submatrix)의 지수에 대한 내용이 할당되고, 나머지 178비트는 각각 46, 43, 46, 43비트의 서브프레임(subframe)으로 분리될 수 있다. 다른 예로서, 4.75kbit/s의 모드는 모드 0으로 별칭되며, 1프레임당 95비트의 비트스트림이 생성된다. 더 명확한 기재를 위해서, 이하에서는, 모드 0 내지 모드 7을 제1모드 내지 제8모드로 호칭하기로 한다.
데이터수신부(110)는 제1모드 내지 제8모드 중 하나의 AMR 형식으로 압축된 음성데이터의 비트스트림을 수신하고, 본 발명에서는 AMR 파일 내의 모드 정보가 모두 동일하다고 전제한다. 예를 들어, 데이터수신부(110)가 AMR파일을 수신한 경우, 그 AMR파일은 제1모드의 정보만 포함되어 있거나, 제5모드의 정보만 포함되어 있을 뿐이고, 그 파일의 분석결과에서 제2모드 및 제3모드의 정보가 동시에 검출되지 않는다. 위와 같은 조건은 실제 WCDMA 채널에서 코덱 변경이 자주 발생되지 않는 사정을 고려한 것이다.
프레임분리부(120)는 데이터수신부(110)가 수신한 음성데이터의 비트스트림을 기설정된 제1비트수를 갖는 프레임들로 분리한다. 프레임분리부(120)는 표 1과 같은 정보를 저장하고 있다가, 비트스트림을 복수의 프레임들로 분리할 때에 활용할 수 있다. 제1비트수는 미리 설정된 값으로서, 표 1에서 각 모드의 1프레임당 포함되는 비트수를 의미한다.
예를 들어, 1020비트로 구성된 비트스트림이 수신되고, 프레임분리부(120)가 제6모드의 프레임으로 비트스트림을 분리하고자 한다면, 제1비트수는 204가 되며, 비트스트림은 총 5개의 제6모드 프레임으로 분리될 수 있다. 프레임분리부(120)는 1차적으로 선택된 제1비트수에 따라서 최종 분석결과가 산출되었을 때, 적절한 결과가 나오지 않으면, 새로운 제1비트수를 기초로 하여 비트스트림을 복수의 프레임으로 분리할 수 있다. 본 발명에서, 위와 같이 반복적인 과정을 거치는 것은, 수신된 비트스트림에는 모드정보(mode information)가 포함되어 있지 않으므로, 모든 모드에 대한 분석을 하고, 그 중에서 가장 이상적인 결과를 나타내는 모드분석의 결과를 취하기 위함이다.
비트배열생성부(130)는 분리된 프레임들을 통합하여 비트배열을 생성한다.
여기서, 비트배열(bit array)은, 수신된 음성데이터의 비트스트림은 직렬로 길게 늘어져 있는 데이터로서 특징을 추출하기 어려우므로 이를 일련의 과정을 거쳐서 가공한 가공데이터를 의미한다. 비트배열생성부(130)는 프레임분리부(120)로부터 음성데이터를 구성하는 복수의 프레임들을 전달받고, 프레임의 크기와 대응되는 제1비트수를 기초로 하여, 복수의 프레임들에 포함된 정보들을 모두 포함하는 비트배열을 생성한다.
주성분특정부(140)는 비트배열생성부(130)가 생성한 비트배열과 프레임들의 전체 개수를 기초로 하여 주성분을 특정하며, 주성분에 대해서는 도 2를 통해 후술한다.
도 2는 비트배열생성부가 비트배열을 생성하고 주성분을 특정하는 과정을 설명하기 위한 도면이다.
도 2에서 음성데이터의 비트스트림은 총 15비트로 구성되어 있으며, 1프레임당 5비트를 포함하는 3개의 프레임으로 분리된다. 비트배열생성부(130)는 3개의 프레임을 기초로 해서 비트배열인 vs을 생성할 수 있다. 도 2에서 비트배열생성부(130)는 각 프레임들의 첫번째, 두번째, 세번째 비트 등을 합하는 방식으로 비트배열을 생성했으나, 실시 예에 따라서, 단순히 합산하지 않고 다른 연산을 통해서 비트배열의 각 비트값들이 결정될 수 있다.
또한, 비트배열는 여러 프레임들을 더함으로써 생성될 수 있으므로, 프레임분리부(120)에 의해 생성된 프레임들보다 더 많은 비트수로 구성될 수 있다. 예를 들어, 도 2에서 v1프레임은 5비트를 포함하는 프레임이지만, 비트배열 vs는 10비트를 포함할 수 있다.
주성분특정부(140)는 비트배열 vs가 생성되면, 이를 프레임의 전체 개수인 3으로 비트배열에 포함된 값(value)들로 나누어서 음성데이터의 주성분(principal component)을 특정한다. 비트에 포함되는 값은 0 또는 1이고, 주성분은 각 프레임들의 비트의 합을 프레임의 전체 개수인 3으로 나눈 결과를 포함하므로, 주성분 vp에서 vp(i)를 수학적으로 해석하면, i가 1에서 5까지 변할 때, bi가 1일 확률분포함수라는 것을 알 수 있다.
Figure 112020016075151-pat00002
수학식 1은 주성분의 수학적인 의미를 나타낸다. 수학식 1에서 N은 비트스트림에서 분리된 프레임의 전체 개수이고, vk는 k번째 프레임을 의미한다. 또한, 수학식 1에서 E[v]는 주성분특정부(140)가 특정한 주성분이 벡터로 표현될 수 있다는 것을 나타낸다. 주성분은 제1비트수로 구성된 복수의 프레임들을 통합하여 생성되므로, 주성분의 길이는 제1비트수와 비례하거나, 제1비트수에 대응된다.
도 2에서는 설명의 편의를 위해서, 하나의 프레임에 포함되는 비트의 수 M을 5로 대체하여 설명하였으나, 도 2에서 설명한 내용이 표 1에 있는 다양한 값(95이나 204등)에도 적용될 수 있다는 것은 이 분야의 통상의 지식을 가진 자에게 자명할 것이다.
위와 같이 특정된 주성분은 정보추정부(150)에서 음성데이터에 포함된 정보를 추정하는 고유팩터(eigenfactor)의 후보가 된다. 여기서, 주성분이 고유팩터의 후보가 된다는 것은 정보추정부(150)가 주성분에 포함된 정보 중 일부의 정보만을 통해 음성데이터의 압축포맷정보를 파악한다는 것을 의미한다.
정보추정부(150)는 주성분특정부(140)에 의해 특정된 주성분을 분석하여, 데이터수신부(110)가 수신한 AMR 음성데이터가 제1비트수에 대응되는 모드에 대한 데이터인지 여부를 추정한다. 정보추정부(150)는, 미리 설정된 기준에 따라서, AMR 음성데이터가 제1비트수에 대응되는 모드가 아닌 것으로 판별되면, 현재 설정된 제1비트수를 다른 값으로 갱신하고, 프레임분리부(120)가 비트스트림을 갱신된 제1비트수를 갖는 프레임들로 분리하도록 제어하는 기능을 수행한다. 예를 들어, 비트스트림이 제6모드에 따라 분리된 상태에서 음성데이터가 제1비트수 204개에 대응되는 모드(제6모드)가 아닌 것으로 판별되면, 정보추정부(150)는 제1비트수를 244개나 95개로 변경하고, 동일한 추정과정을 반복할 수 있다. 이 반복과정에서 대해서는 도 14에서 도식적으로 설명하기로 한다.
일 실시 예로서, 정보추정부(150)는 서브프레임분리부(151) 및 모드파악부(153)를 포함할 수도 있다.
서브프레임분리부(151)는 주성분을 적어도 하나 이상의 비트를 포함하는 제1서브프레임 내지 제4서브프레임으로 분리한다. 서브프레임분리부(151)는 표 1을 저장하고 있다가 주성분이 특정되면, 주성분을 4개의 서브프레임으로 분리한다. 주성분은 수학식 1을 기초로 프레임들의 비트값을 통합하고 평균을 내는 방식으로 특정되므로, 제1비트수를 갖는 프레임과 동일한 비트수를 갖고, 그 프레임들에 포함되는 서브프레임과 동일한 개수의 서브프레임을 포함한다.
도 3은 제6모드에서 하나의 프레임 및 그 프레임에 포함된 서브프레임들을 도식적으로 나타낸 도면이다.
도 3을 참조하면, 제6모드에서 하나의 프레임은 204개의 비트를 포함하며, 처음 26비트는 LSP, 그 외의 178비트는 제1서브프레임 내지 제4서브프레임들로 구성된 것을 알 수 있다. 프레임을 구성하는 각 비트는 s1부터 s204까지 라벨링되어 있다. 표 1을 참조하여 구체적으로 설명하면, 제1서브프레임 중 8비트(s27~s34)에는 adaptive codebook의 지수가 할당되고 31비트(s35~s72)에는 algebraic codebook 정보가 할당된다. 제1서브프레임의 마지막 7비트(s66~s72)에는 codebook gain이 할당된다. 이어서, 제2서브프레임의 5비트(s73~s77)에는 adaptive codebook의 지수가 할당되고 나머지 38비트(s78~s115)에는 algebraic codebook 정보가 할당된다. 제3서브프레임 및 제4서브프레임은 제1서브프레임 및 제2서브프레임과 각각 동일한 방식으로 정보가 할당된다.
모드파악부(153)는 제3서브프레임 및 제4서브프레임에 포함된 비트정보를 기초로 하여, 음성데이터가 제1비트수에 대응되는 모드의 데이터인지 여부를 파악한다. 제3서브프레임 및 제4서브프레임에 포함된 비트정보는 음성데이터의 압축포맷정보를 알려주는 정보라는 점에서 고유팩터(eigenfactor)로 기능한다는 것을 이미 설명한 바 있다.
Figure 112020016075151-pat00003
표 2는 주성분에서 고유팩터의 비트위치를 나타낸 표이다. 구체적으로, 표 2는 하나의 프레임과 동일한 제1비트수로 구성된 주성분에서 제3서브프레임 및 제4서브프레임이 어느 위치에 존재하는지 제시하는 것으로서, 모드파악부(153)는 주성분에서 제3서브프레임 및 제4서브프레임에 대한 비트정보만으로 음성데이터가 어느 모드로 인코딩된 것인지 파악할 수 있다.
도 4 내지 도 11은 제1모드 내지 제8모드로 부호화된 남성 및 여성의 음성데이터의 주성분의 그래프의 일 예를 도식적으로 나타낸 도면이다.
보다 구체적으로, 도 4 내지 도 11은 남성 및 여성이 1분동안 동일한 내용의 문서를 읽으면서 녹음된 기초음성데이터(raw voice data)를 제1모드 내지 제8모드로 부호화하고 상술한 과정을 통해 주성분을 특정하여 그래프로 나타낸 것이다. 파란색 그래프는 남성의 음성에 대한 비트 평균값(주성분)을 의미하고, 빨간색 그래프는 여성의 음성에 대한 비트 평균값을 의미한다.
먼저, 도 4는 제1모드에서의 주성분의 그래프를 나타내고 있고, 가로축의 좌표는 제1모드의 비트 수에 따라 0에서 95까지 있으며, 세로축에는 0에서 1까지의 값이 매겨져 있다.
도 4를 참조하면, 제3서브프레임 및 제4서브프레임에서의 남성의 음성에 대한 그래프와 여성의 음성에 대한 그래프가 극히 유사한 형태를 보이는 것을 알 수 있으며, 이는 제3서브프레임 이전의 제1서브프레임 및 제2서브프레임 구간에서 남성의 음성에 대한 그래프와 여성의 음성에 대한 그래프가 현격한 차이를 보이는 점과 비교한다면, 주목할만한 결과이다. 즉, 성별차이로 인한 음성의 차이는 제1서브프레임 및 제2서브프레임 구간에 모두 반영되며, 남성과 여성은 모두 동일한 문자가 인쇄된 문서를 음독하였으므로, 제3서브프레임 및 제4서브프레임 구간에서의 그래프의 일치성은 제1모드에 대한 정보를 포함하는 것으로 이해될 수 있다.
이어서, 도 5는 제2모드에서의 주성분의 그래프를 나타내고 있고, 도 5의 가로축의 좌표는 제2모드의 비트 수에 따라 0에서 103까지 있으며, 세로축에는 0에서 1까지의 값이 매겨져 있다. 도 5에서도 도 4와 마찬가지로 제3서브프레임 및 제4서브프레임 구간에서 성별과 관계없이 두 가지의 그래프가 유사한 경향성을 보이는 것을 알 수 있다.
그 외에 도 6 내지 도 11에 도시되어 있는 그래프에서 모두 제3서브프레임 및 제4서브프레임 구간에서는 남성의 음성에 대한 그래프 및 여성의 음성에 대한 그래프가 극히 유사한 경향성을 보이므로, 모드파악부(153)가 이 부분에 대한 정보를 기초로 인코딩 정보를 알 수 없는 AMR 파일을 분석하면, 압축포맷정보를 정확하게 추정할 수 있게 된다.
다른 일 실시 예로서, 정보추정부(150)는 성별판단부(155)를 더 포함할 수도 있다. 성별판단부(155)는 전술한 것과 같이, 주성분에서 제1서브프레임 및 제2서브프레임에 포함된 비트정보를 기초로 하여, 음성데이터가 남성 또는 여성의 음성에 대한 데이터인지 여부를 구별할 수 있다. 본 실시 예는 AMR 음성파일이 수신되었을 때, 주성분을 특정하고, 그 주성분에 대한 그래프에서 제1서브프레임 및 제2서브프레임 구간의 정보만을 기초로 파일에 포함된 음성데이터가 남성에 대한 것인지 또는 여성에 대한 것인지 알 수 있게 되는 것에 의의가 있다.
도 4를 참조하여 예를 들면, 주성분을 그래프로 나타냈을 때, 29번째 비트(s29) 및 33번째 비트(s33)에서 남성과 여성의 음성그래프 사이에 현격한 차이가 발생하게 되며, 성별판단부(155)는 위와 같은 결과를 분석하기 위한 기준을 미리 저장하고 있다가, 음성파일이 수신되었을 때, 그 저장된 기준으로 음성파일을 분석하여, 파일에 포함된 음성이 어떤 성별에 대한 것인지 판단할 수 있다.
정보추정부(150)는 전술한 과정을 통해 특정된 주성분이 분석하기에 적절하지 않다면, 제1비트수를 변경하여, 새로운 주성분이 생성되도록 제어할 수 있다. 프레임분리부(120)가 음성데이터의 비트스트림을 원래 모드와 일치하지 않는 모드의 프레임으로 분리하고, 분리된 프레임들로 비트배열이 생성된 후에 주성분이 특정되면, 그 주성분의 그래프는 분석하기에 적절하지 않은 형태로 출력될 수 있으며, 이러한 주성분은 전술한 고유팩터(eigenfactor)와 배치되는 개념으로 크로스팩터(crossfactor)로 호칭될 수 있다.
도 12 및 도 13은 크로스팩터를 설명하기 위한 도면이다.
도 12는 제1모드로 변환된 비트스트림 파일을 제2모드에 대하여 주성분(principal component)을 구했을 때의 파형을 도시한 것이고, 도 13은 제8모드로 변환된 비트스트림 파일을 제5모드에 대하여 주성분을 구했을 때의 파형을 도시한 것이다. 도 12 및 도 13에서 파란색 그래프 및 빨간색 그래프는 각각 남성음성 및 여성음성의 그래프를 나타낸다.
도 12 및 도 13과 같이, 적절하지 않은 모드로 벡터 평균이 구해질 경우, 코덱 비트스트림에 남아있는 상관정보마저 소실되어 그래프에서 0.5에 가까운 값들만 관측된다. 즉, 도 12 및 도 13과 같은 그래프를 통해서는, AMR파일에 포함된 음성신호의 강도(amplitude)가 매우 약한 것으로 해석되거나, AMR파일에 사용 가능한 정보가 전혀 포함되어 있지 않는 것으로 해석될 수 밖에 없으며, 이러한 주성분들이 크로스팩터가 된다.
도 14는 본 발명을 구현하기 위한 방법의 일 예의 흐름도이다.
도 14는 도 1에서 설명한 장치(100)에 의해 구현될 수 있으므로, 이하에서는, 도 1을 참조하여 설명하기로 하며, 도 1 내지 도 13에서 설명한 내용과 중복되는 설명은 생략하기로 한다.
먼저, 데이터수신부(110)는 제1모드 내지 제8모드 중 하나의 AMR 형식으로 압축된 음성데이터의 비트스트림을 수신한다(S1410).
프레임분리부(120)는 단계 S1410에서 수신된 비트스트림을 기설정된 제1비트수를 갖는 프레임들로 분리한다(S1420).
비트배열생성부(130)는 분리된 프레임들을 통합하여 비트배열을 생성한다(S1430).
주성분특정부(140)는 비트배열 및 프레임들의 전체 개수를 기초로 하여 비트스트림의 주성분을 특정한다(S1440).
정보추정부(150)는 특정된 주성분을 분석하여 음성데이터가 제1비트수에 대응되는 모드에 대한 데이터인지 여부를 추정할 수 있는지 판단하고(S1450), 추정한 결과를 출력한다(S1460).
한편, 단계 S1450에서 정보추정부(150)가 크로스팩터에 의해서 음성데이터에 대한 모드정보(mode information)을 추정할 수 없는 경우, 정보추정부(150)는 현재 설정된 제1비트수를 변경하고(S1470), 단계 S1420로 돌아가서 수신된 비트스트림을 변경된 제1비트수를 갖는 프레임들로 분리하도록 제어한다. 프레임분리부(120)는 변경된 제1비트수를 제2비트수, 변경된 제2비트수를 제3비트수 등으로 라벨링하고 단계 S1420를 반복적으로 수행할 수 있다.
본 발명에 따르면, 모드정보(인코딩정보)를 알 수 없는 AMR 파일을 수신했을 때, 그 파일의 비트스트림을 복수의 프레임으로 분리한 후에 재배열하여 주성분을 특정하고, 특정된 주성분에서 고유팩터(제3서브프레임 및 제4서브프레임) 구간을 분석함으로써, 모드 정보를 정확히 알 수 있다.
또한, 본 발명에 따르면, AMR 파일에 담겨 있는 음성 데이터가 남성 또는 여성의 음성에 대한 것인지 판별할 수도 있으며, 이때의 고유팩터는 주성분의 제1서브프레임 및 제2서브프레임이 된다.
이상 설명된 본 발명에 따른 실시 예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, "필수적인", "중요하게" 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
본 발명의 명세서(특히 특허청구범위에서)에서 "상기"의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.

Claims (11)

  1. 제1모드 내지 제8모드 중 하나의 AMR 형식으로 압축된 음성데이터의 비트스트림을 수신하는 데이터수신단계;
    상기 수신된 비트스트림을 기설정된 제1비트수를 갖는 프레임들로 분리하는 서브프레임분리단계;
    상기 분리된 프레임들에 각각 포함된 개별비트를 추출하고, 상기 추출된 개별비트를 통합하여 비트배열을 생성하는 비트배열생성단계;
    상기 생성된 비트배열 및 상기 프레임들의 전체 개수를 기초로 하여 상기 비트스트림의 주성분(principal component)을 특정하는 주성분특정단계; 및
    상기 특정된 주성분을 분석하여, 상기 음성데이터가 상기 제1비트수에 대응되는 상기 제1모드 내지 제8모드 중 하나에 대한 데이터인지 여부를 추정하는 정보추정단계;를 포함하고,
    상기 주성분은,
    상기 제1모드 내지 상기 제8모드 중 하나의 특징을 포함하고, 상기 제1비트수를 갖는 상기 프레임들과 동일한 길이를 갖고, 상기 비트배열과 프레임들의 전체 개수에 기초하여 산출되는 상기 프레임들의 평균을 나타내는 벡터데이터이고,
    상기 정보추정단계는,
    상기 주성분을 적어도 하나 이상의 비트를 포함하는 제1서브프레임 내지 제4서브프레임으로 순차적으로 분리하는 서브프레임분리단계;
    상기 주성분으로부터 분리된 상기 제1서브프레임 및 상기 제2서브프레임에 포함된 비트정보를 기초로 하여, 상기 음성데이터가 남성 또는 여성의 음성에 대한 데이터인지 여부를 구별하는 성별판단단계; 및
    상기 주성분으로부터 분리된 상기 제3서브프레임 및 상기 제4서브프레임에 포함된 비트정보를 기초로 하여, 상기 음성데이터가 상기 제1비트수에 대응되는 모드의 데이터인지 여부를 파악하는 모드파악단계를 포함하는 것을 특징으로 하는, AMR음성데이터의 압축포맷 정보를 추정하는 방법.
  2. 제1항에 있어서,
    상기 제1비트수는,
    95, 103, 118, 134, 148, 159, 204, 244 중 어느 하나인 것을 특징으로 하는 음성데이터의 압축포맷 정보를 추정하는 방법.
  3. 제1항에 있어서,
    상기 주성분의 길이는,
    상기 제1비트수와 대응되는 것을 특징으로 하는 음성데이터의 압축포맷 정보를 추정하는 방법.
  4. 삭제
  5. 삭제
  6. 제1항 내지 제3항 중 어느 한 항에 따른 방법을 실행시키기 위한 프로그램을 저장하고 있는 컴퓨터 판독가능한 기록매체.
  7. 제1모드 내지 제8모드 중 하나의 AMR 형식으로 압축된 음성데이터의 비트스트림을 수신하는 데이터수신부;
    상기 수신된 비트스트림을 기설정된 제1비트수를 갖는 프레임들로 분리하는 서브프레임분리부;
    상기 분리된 프레임들에 각각 포함된 개별비트를 추출하고, 상기 추출된 개별비트를 통합하여 비트배열을 생성하는 비트배열생성부;
    상기 생성된 비트배열 및 상기 프레임들의 전체 개수를 기초로 하여 상기 비트스트림의 주성분(principal component)을 특정하는 주성분특정부; 및
    상기 특정된 주성분을 분석하여, 상기 음성데이터가 상기 제1비트수에 대응되는 상기 제1모드 내지 제8모드 중 하나에 대한 데이터인지 여부를 추정하는 정보추정부;를 포함하고,
    상기 주성분은,
    상기 제1모드 내지 상기 제8모드 중 하나의 특징을 포함하 고, 상기 제1비트수를 갖는 상기 프레임들과 동일한 길이를 갖고, 상기 비트배열과 프레임들의 전체 개수에 기초하여 산출되는 상기 프레임들의 평균을 나타내는 벡터데이터이고,
    상기 정보추정부는,
    상기 주성분을 적어도 하나 이상의 비트를 포함하는 제1서브프레임 내지 제4서브프레임으로 순차적으로 분리하는 서브프레임분리부;
    상기 주성분으로부터 분리된 상기 제1서브프레임 및 상기 제2서브프레임에 포함된 비트정보를 기초로 하여, 상기 음성데이터가 남성 또는 여성의 음성에 대한 데이터인지 여부를 구별하는 성별판단부; 및
    상기 주성분으로부터 분리된 상기 제3서브프레임 및 상기 제4서브프레임에 포함된 비트정보를 기초로 하여, 상기 음성데이터가 상기 제1비트수에 대응되는 모드의 데이터인지 여부를 파악하는 모드파악부를 포함하는 것을 특징으로 하는, AMR음성데이터의 압축포맷 정보를 추정하는 장치.
  8. 제7항에 있어서,
    상기 제1비트수는,
    95, 103, 118, 134, 148, 159, 204, 244 중 어느 하나인 것을 특징으로 하는 음성데이터의 압축포맷 정보를 추정하는 장치.
  9. 제7항에 있어서,
    상기 주성분의 길이는,
    상기 제1비트수와 대응되는 것을 특징으로 하는 음성데이터의 압축포맷 정보를 추정하는 장치.
  10. 삭제
  11. 삭제
KR1020200018555A 2020-02-14 2020-02-14 Amr 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치 KR102352240B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200018555A KR102352240B1 (ko) 2020-02-14 2020-02-14 Amr 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200018555A KR102352240B1 (ko) 2020-02-14 2020-02-14 Amr 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20210103859A KR20210103859A (ko) 2021-08-24
KR102352240B1 true KR102352240B1 (ko) 2022-01-17

Family

ID=77507123

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200018555A KR102352240B1 (ko) 2020-02-14 2020-02-14 Amr 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102352240B1 (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7010001B2 (en) 2000-01-10 2006-03-07 Qualcomm, Incorporated Method and apparatus for supporting adaptive multi-rate (AMR) data in a CDMA communication system
FR2849727B1 (fr) * 2003-01-08 2005-03-18 France Telecom Procede de codage et de decodage audio a debit variable
KR100606541B1 (ko) 2004-03-05 2006-08-01 주식회사 팬택앤큐리텔 이동통신단말기의 에이엠알 코덱 성능검사방법
WO2011059254A2 (en) * 2009-11-12 2011-05-19 Lg Electronics Inc. An apparatus for processing a signal and method thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Mandatory Speech Codec speech processing functions AMR speech codec; Transcoding functions. ETSI TS 126 090 V3.1.0, 2000.01.*

Also Published As

Publication number Publication date
KR20210103859A (ko) 2021-08-24

Similar Documents

Publication Publication Date Title
KR100745976B1 (ko) 음향 모델을 이용한 음성과 비음성의 구분 방법 및 장치
KR101420557B1 (ko) 파라미터 음성 합성 방법 및 시스템
KR101300247B1 (ko) 마르코프 연쇄 은닉 조건부 랜덤 필드 모델 기반의 패턴 인식 방법
US10109286B2 (en) Speech synthesizer, audio watermarking information detection apparatus, speech synthesizing method, audio watermarking information detection method, and computer program product
CN103778912A (zh) 引导式说话人自适应语音合成的系统与方法及程序产品
CN105609097A (zh) 语音合成装置及其控制方法
KR101667557B1 (ko) 실시간 음원 분류 장치 및 방법
CN102446506A (zh) 音频信号的分类识别方法及装置
JP2018180334A (ja) 感情認識装置、方法およびプログラム
US20130073578A1 (en) Processing Audio-Video Data To Produce Metadata
JPWO2019171457A1 (ja) 音源分離装置、音源分離方法およびプログラム
CN114363695B (zh) 视频处理方法、装置、计算机设备和存储介质
KR102352240B1 (ko) Amr 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치
KR20210071713A (ko) 스피치 스킬 피드백 시스템
EP2115737A1 (en) Method and system to improve automated emotional recognition
JP4063911B2 (ja) 音声符号化装置
KR101862982B1 (ko) LPC-10e 보코더에서 DNN을 이용한 유무성음 판별 방법
WO2019119552A1 (zh) 连续长语音文件的翻译方法与翻译机
EP1098298B1 (en) Speech coding with an orthogonal search
KR20210057996A (ko) 멀티 태스크 러닝 분류기 학습장치 및 방법
KR101755238B1 (ko) 손상된 멀티미디어 파일의 음성 복원 장치 및 그 방법
KR100766170B1 (ko) 다중 레벨 양자화를 이용한 음악 요약 장치 및 방법
US20100145713A1 (en) Adding additional data to encoded bit streams
KR102550760B1 (ko) Amr 음성데이터 판별 방법 및 그 장치
CN104183239B (zh) 基于加权贝叶斯混合模型的与文本无关的说话人识别方法

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant