KR101812094B1 - Method And Apparatus for Encoding And Decoding Speech Signal - Google Patents
Method And Apparatus for Encoding And Decoding Speech Signal Download PDFInfo
- Publication number
- KR101812094B1 KR101812094B1 KR1020160083721A KR20160083721A KR101812094B1 KR 101812094 B1 KR101812094 B1 KR 101812094B1 KR 1020160083721 A KR1020160083721 A KR 1020160083721A KR 20160083721 A KR20160083721 A KR 20160083721A KR 101812094 B1 KR101812094 B1 KR 101812094B1
- Authority
- KR
- South Korea
- Prior art keywords
- inflection point
- pattern
- point pattern
- signal
- speech
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000010606 normalization Methods 0.000 claims abstract description 8
- 230000008569 process Effects 0.000 claims description 10
- 229910052709 silver Inorganic materials 0.000 claims description 4
- 239000004332 silver Substances 0.000 claims description 4
- 230000005236 sound signal Effects 0.000 claims description 3
- 230000007261 regionalization Effects 0.000 claims 1
- 238000000605 extraction Methods 0.000 abstract description 13
- 238000005070 sampling Methods 0.000 description 24
- 230000005540 biological transmission Effects 0.000 description 17
- 230000008859 change Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 239000000284 extract Substances 0.000 description 6
- 239000000470 constituent Substances 0.000 description 5
- 238000013144 data compression Methods 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
- G10L19/125—Pitch excitation, e.g. pitch synchronous innovation CELP [PSI-CELP]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
- G10L19/135—Vector sum excited linear prediction [VSELP]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/93—Discriminating between voiced and unvoiced parts of speech signals
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
본 발명의 실시예는 음성신호의 부호화 및 복호화 방법 및 장치에 관한 것이다. An embodiment of the present invention relates to a method and apparatus for encoding and decoding a speech signal.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The contents described in this section merely provide background information on the present embodiment and do not constitute the prior art.
디지털 통신의 진전과 데이터 압축 등의 발전과 함께 다양한 음성 부호화 방법이 연구되어 왔다. 음성 부호화는 크게 파형 부호화(waveform coding), 보코딩(vocoding), 하이브리드 부호화(hybrid coding)로 구분된다. Various speech coding methods have been studied along with development of digital communication and data compression. Speech coding is largely classified into waveform coding, vocoding, and hybrid coding.
파형 부호화는 음성의 매 표본을 부호화하는 기법으로, 대표적인 예로는 -law 혹은 A-law PCM (Pulse Code Modulation), CVSDM(Continuously Variable Slope Delta Modulation), ADPCM(Adaptive Differential PCM) 등의 방법이 있다. 파형 부호화는 비교적 전송 비트율이 높아서 데이터 압축률 면에서 저조하나 성능이 대체로 탁월하다.Waveform coding is a technique to encode every sample of speech. Typical examples are -law or A-law PCM (Pulse Code Modulation), CVSDM (Continuously Variable Slope Delta Modulation), and ADPCM (Adaptive Differential PCM). Waveform coding is relatively low in terms of data compression rate due to its relatively high transmission bit rate, but its performance is generally excellent.
보코딩은 음성의 매 표본을 부호화하는 것이 아니라, 음성 발생모델에 기초하여 블록 단위로 음성의 주요 인자들을 추출한다. 대표적인 부호화 방식으로는 2.4 ~ 4.8 kbps의 전송률을 보이는 미국 국방성 표준의 LPC-10 보코딩을 들 수 있다. 보코딩의 경우 우수한 데이터 압축율을 보이지만, 음질이 떨어지며 부호화기가 복잡한 단점이 있다. Vocoding does not encode every sample of speech but extracts key parameters of speech in block units based on the speech generation model. A typical coding scheme is the LPC-10 vocoding of the US Department of Defense standard with a transmission rate of 2.4 to 4.8 kbps. In the case of vocoding, the data compression rate is excellent, but the quality of the data is poor and the encoder is complicated.
하이브리드 부호화는 파형 부호화와 보코딩의 조합이다. 대표적인 예로는 SubbandCoding(SBC), Adaptive Transform Coding(ATC), Multiband Excited Vocoder (MBEV), Residual error Excited Linear Predictive coder (RELP), Code Excited LP(CELP) 등을 들 수 있다. 하이브리드 부호화 기법은 앞의 두가지 기법의 장점을 취한 것으로 비교적 탁월한 데이터 압축을 구현하며 우수한 성능을 보인다. 그러나 부호화 방식이 복잡하여 시간 지연이 발생한다.Hybrid coding is a combination of waveform coding and vocoding. Typical examples are Subband Coding (SBC), Adaptive Transform Coding (ATC), Multiband Excited Vocoder (MBEV), Residual Error Excited Linear Predictive Coder (RELP) and Code Excited LP (CELP). The hybrid coding scheme takes advantage of the two previous techniques and achieves relatively excellent data compression and excellent performance. However, since the encoding method is complicated, time delay occurs.
이러한 파형 부호화, 보코딩 및 하이브리드 부호화는 신호의 균등 샘플링(uniform sampling) 이후에 적용된다. 데이터 압축률의 추가적인 감축을 위하여 표본화 단계에서도 정보량을 감소시킬 필요가 있어서, 기존의 균등 샘플링의 대안으로 비균등 샘플링(non-uniform sampling) 방법이 연구되어 왔다. 비균등 샘플링의 주요 응용 분야로는 음성 부호화, 음성인식 등을 들 수 있다. 음성 부호화는 비균등 샘플링을 한 후 이진수로 변환하여 전송하는 방법을 사용하며, 수신측에서는 표본화 되지 않은 샘플을 보간법을 이용하여 복구한다. 음성 부호화의 또 다른 응용 예로서, 보코딩 방식의 부호화 방법이 있는데, 이 방법에 따르면 비균등 샘플링을 한 후 이를 보간법으로 복구한 신호와 원시신호를 비교하여 그 차이 신호를 미리 준비된 코드들과 비교하여 패턴이 가장 가까운 신호의 주소를 전송한다. These waveform coding, vocoding and hybrid coding are applied after uniform sampling of the signal. In order to further reduce the data compression rate, it is necessary to reduce the amount of information in the sampling step, and a non-uniform sampling method has been studied as an alternative to the conventional uniform sampling. The main applications of unequal sampling are speech coding and speech recognition. Speech coding uses unequal sampling and conversion to binary, and the receiver samples non-sampled samples using interpolation. As another application example of the speech coding, there is a coding method of a vocoding method. According to this method, after the unequal sampling, the signal obtained by interpolation is compared with the original signal, and the difference signal is compared with the prepared codes And the address of the signal closest to the pattern is transmitted.
비균등 샘플링에서 이용되는 표본화 방식은 신호의 국소 최대값(local maxima)과 최소값(local minima)을 검출하여 표본화하는 방식이다. 이 방식은 국소 최대값과 최소값 사이의 값은 선형적인 특성을 갖는다고 가정한다. 그러나, 음성의 경우 국소 최대값과 최소값 사이에서 단순한 선형적인 특성을 보이지 않는 경우가 대부분이다. The sampling method used in unequal sampling is to detect and localize the local maxima and local minima of the signal. This method assumes that the value between the local maximum value and the minimum value has a linear characteristic. However, in the case of speech, most of the cases do not show a simple linear characteristic between the local maximum value and the minimum value.
도 1은 음성신호 파형의 일부분을 확대하여 나타낸 도면이다. 도 1에는 국소 최대값(point b), 국소 최소값(point a) 및 국소 최대값 및 최소값 외에 기울기가 변화하는 지점(point c, 이하 '기울기 변화 지점(slope change point)'이라 함)이 도시되어 있다. 1 is an enlarged view of a part of a voice signal waveform. 1, a point c (hereinafter referred to as a 'slope change point') at which the gradient changes in addition to a local maximum value (point b), a local minimum value (point a) and a local maximum value and a minimum value is shown have.
도 1에 도시된 바와 같이, 신호의 국소 최대값과 최소값 사이에는 선형적인 특성을 보이지 않는, 즉, 신호의 기울기가 변화하는 지점이 포함될 수 있다. 이러한 점을 보완하기 위해 비균등 샘플링 방법으로 국소 최대값과 최소값에 더하여 국부적으로 신호의 기울기가 변화하는 위치, 즉 변곡점(inflection point)을 검출(detection)하여 비균등 샘플링을 구현한다. 단, 이 경우 신호의 파형에 따라 변곡점이 다양하게 검출될 수 있기 때문에, 전송 비트율(bitrate)이 일정하지 않다는 문제가 있다.As shown in FIG. 1, a point between the local maximum value and the minimum value of the signal may not include a linear characteristic, that is, a point where the slope of the signal changes. In order to compensate for this, non-uniform sampling is implemented by detecting the inflection point at a position where the slope of the signal changes locally in addition to the local maximum value and the minimum value by the non-uniform sampling method. However, in this case, because the inflection point can be detected in various ways according to the waveform of the signal, there is a problem that the transmission bit rate is not constant.
본 실시예는, 일정한 전송 비트율로 음성신호를 부호화할 수 있는 음성 부호화 방법 및 장치를 제공하는 데 주된 목적이 있다.The main object of the present invention is to provide a speech encoding method and apparatus capable of encoding a speech signal at a constant transmission bit rate.
또한, 비교적 낮은 전송 비트율에서 향상된 신호복원 성능을 보이는 음성 복호화 방법 및 장치를 제공하는 데 주된 목적이 있다.Also, a main object of the present invention is to provide a speech decoding method and apparatus having improved signal restoration performance at a relatively low transmission bit rate.
또한, 음성 부호화를 위해 음성신호의 변곡점을 추출하는 경우에 사용할 수 있는 변곡점 추출 방법 및 장치를 제공하는 데 주된 목적이 있다.It is another object of the present invention to provide an inflection point extraction method and apparatus that can be used in the case of extracting an inflection point of a speech signal for speech coding.
본 발명의 일 실시예에 의하면, 음성신호를 부호화하는 음성 부호화 장치에 있어서, 음성신호 파형의 변곡점 패턴을 저장하는 데이터베이스, 입력신호로부터 변곡점 패턴을 추출하여 출력하는 변곡점추출부, 추출된 변곡점 패턴의 에너지값을 산출하고 에너지값을 이용하여 추출된 변곡점 패턴을 정규화하는 정규화부, 정규화된 변곡점 패턴과 최유사 패턴을 데이터베이스에서 찾아 최유사 패턴이 저장된 주소 정보를 출력하는 최유사 패턴 검색부, 주소 정보 및 에너지값을 다중화하여 고정된 비트열을 출력하는 다중화부를 포함하는 음성 부호화 장치를 제공한다.According to an embodiment of the present invention, there is provided a speech coding apparatus for coding a speech signal, the speech coding apparatus comprising: a database storing an inflection point pattern of a speech signal waveform; an inflection point extracting unit for extracting an inflection point pattern from the input signal and outputting the inflection point pattern; A normalization unit for calculating the energy value and normalizing the inflection point pattern extracted using the energy value, a most similar pattern search unit for searching the database for the normalized inflection point pattern and the most similar pattern and outputting the address information storing the most similar pattern, And a multiplexer for multiplexing energy values and outputting a fixed bit stream.
상기 음성 부호화 장치의 실시예들은 다음의 특징들을 하나 이상 더 포함할 수 있다.Embodiments of the speech encoding apparatus may further include one or more of the following features.
본 발명의 다른 실시예에 의하면, 변곡점추출부는, 수학식 3의 ID값을 산출하여 입력신호로부터 변곡점 패턴을 추출하고, According to another embodiment of the present invention, the inflection point extracting unit may calculate an ID value of Equation (3), extract an inflection point pattern from the input signal,
<수학식 3>&Quot; (3) "
은 , 는 , 은 시점 n에서의 음성샘플이다. silver , The , Is a speech sample at time n.
본 발명의 일 실시예에 의하면, 부호화된 음성신호를 복호화하기 위한 음성 복호화 장치에 있어서, 음성신호 파형의 변곡점 패턴을 저장하는 데이터베이스, 입력신호로부터 주소 정보와 에너지값을 추출하는 역다중화부, 주소 정보를 이용하여 데이터베이스에서 변곡점 패턴을 추출하고 추출된 변곡점 패턴 및 에너지값을 이용하여 복원 변곡점 패턴을 형성하는 패턴형성부, 복원 변곡점 패턴을 이용하여 복원신호를 생성하여 출력하는 신호복원부를 포함하는 음성 복호화 장치를 제공한다.According to an embodiment of the present invention, there is provided a speech decoding apparatus for decoding a coded speech signal, the speech decoding apparatus comprising: a database for storing an inflection point pattern of a speech signal waveform; a demultiplexer for extracting address information and energy values from the input signal; A pattern forming unit for extracting an inflection point pattern from the database using information and forming a restoration inflection point pattern using the extracted inflection point pattern and energy value, a voice reconstruction unit for generating and outputting a restoration signal using the restoration inflection point pattern, Thereby providing a decoding apparatus.
본 발명의 일 실시예에 의하면, 음성신호 파형의 변곡점 패턴을 저장하는 데이터베이스를 이용한 음성신호의 부호화 방법에 있어서, 입력신호로부터 변곡점 패턴을 추출하는 과정, 추출된 변곡점 패턴을 데이터베이스에 포함된 변곡점 패턴과 비교하여 최유사 패턴을 찾는 과정, 최유사 패턴의 주소 정보를 이용하여 고정된 비트열을 출력하는 과정을 포함하는 음성신호 부호화 방법을 제공한다.According to an embodiment of the present invention, there is provided a method of encoding a speech signal using a database storing an inflection point pattern of a speech signal waveform, the method comprising: extracting an inflection point pattern from an input signal; And outputting the fixed bit stream using the address information of the most similar pattern. The present invention also provides a method of encoding a speech signal, comprising the steps of:
본 발명의 일 실시예에 의하면 음성신호 파형의 변곡점 패턴을 미리 저장하고 있는 데이터베이스를 이용하여 음성신호의 복호화 방법에 있어서, 입력신호로부터 주소 정보와 에너지값을 추출하는 과정, 주소 정보를 이용하여 데이터베이스에서 변곡점 패턴을 추출하는 과정, 추출된 변곡점 패턴 및 에너지값을 이용하여 복원 변곡점 패턴을 형성하는 과정, 복원 변곡점 패턴을 이용하여 복원신호를 생성하여 출력하는 과정을 포함하는 음성 복호화 방법을 제공한다. According to an embodiment of the present invention, there is provided a method of decoding a speech signal using a database storing an inflection point pattern of a speech signal waveform in advance, the method comprising the steps of extracting address information and an energy value from an input signal, Extracting an inflection point pattern from the input inflection point pattern, forming a restoration inflection point pattern using the extracted inflection point pattern and energy value, and generating and outputting a restoration signal using the restoration inflection point pattern.
본 발명의 일 실시예에 의하면 음성신호의 부호화에 사용되는 음성신호 변곡점 추출 방법에 있어서, 수학식 3의 ID값을 산출하여 변곡점을 추출하는 과정을 포함하고,According to an embodiment of the present invention, there is provided a speech signal inflection point extraction method for use in encoding a speech signal, the method comprising the steps of: calculating an ID value of Equation (3)
<수학식 3>&Quot; (3) "
은 , 는 , 은 시점 n에서의 음성샘플인 음성신호 변곡점 추출 방법을 제공한다. silver , The , Provides a speech signal inflection point extraction method which is a speech sample at a time point n.
상기 변곡점 추출 방법의 실시예들은 다음의 특징들을 하나 이상 더 포함할 수 있다.Embodiments of the inflection point extraction method may further include one or more of the following features.
본 발명의 다른 실시예에 의하면, According to another embodiment of the present invention,
<수학식 2>&Quot; (2) "
를 만족하는 경우 을 변곡점으로 결정한다.Is satisfied As an inflection point.
본 발명의 다른 실시예에 의하면, ID값과 기 설정된 임계값을 비교하여, ID값이 임계값보다 큰 경우 을 변곡점으로 결정한다.According to another embodiment of the present invention, the ID value is compared with a predetermined threshold value, and when the ID value is larger than the threshold value As an inflection point.
본 발명의 다른 실시예에 의하면, 임계값은 0보다 크고 1보다 작은 값으로 설정된다.According to another embodiment of the present invention, the threshold is set to a value greater than zero and less than one.
이상에서 설명한 바와 같이 본 실시예에 의하면, 변곡점 패턴이 저장되어 있는 데이터베이스에서의 주소 정보를 이용하여 음성신호를 부호화함으로써, 일정한 전송 비트율로 부호화된 신호를 전송할 수 있는 효과가 있다. 또한, 낮은 전송 비트율에서도 향상된 신호복원 성능을 보이는 효과가 있다.As described above, according to the present embodiment, the speech signal is encoded using the address information in the database storing the inflection point pattern, so that a signal encoded at a constant transmission bit rate can be transmitted. In addition, there is an effect that the signal restoration performance is improved even at a low transmission bit rate.
도 1은 음성신호 파형의 일부분을 확대하여 나타낸 도면이다.
도 2는 음성신호의 변곡점을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 음성신호의 변곡점 추출 방법의 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 음성 부호화 장치의 블럭도다.
도 5는 본 발명의 일 실시예에 따른 음성 부호화 방법의 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 음성 복호화 장치의 블럭도다.
도 7은 본 발명의 일 실시예에 따른 음성 복호화 방법의 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 음성 부호화 장치 및 음성 복호화 장치를 이용하여 음성신호를 복원한 결과를 나타낸 도면이다.1 is an enlarged view of a part of a voice signal waveform.
2 is a diagram for explaining the inflection point of a speech signal.
3 is a flowchart of an inflection point extraction method of a speech signal according to an embodiment of the present invention.
4 is a block diagram of a speech encoding apparatus according to an embodiment of the present invention.
5 is a flowchart of a speech coding method according to an embodiment of the present invention.
6 is a block diagram of a speech decoding apparatus according to an embodiment of the present invention.
7 is a flowchart of a speech decoding method according to an embodiment of the present invention.
8 is a diagram illustrating a result of restoring a speech signal using the speech coding apparatus and the speech decoding apparatus according to an embodiment of the present invention.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to exemplary drawings. It should be noted that, in adding reference numerals to the constituent elements of the drawings, the same constituent elements are denoted by the same reference symbols as possible even if they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '…부', '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In describing the components of the present invention, terms such as first, second, A, B, (a), and (b) may be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. Throughout the specification, when an element is referred to as being "comprising" or "comprising", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise . In addition, '... Quot ;, " module ", and " module " refer to a unit that processes at least one function or operation, and may be implemented by hardware or software or a combination of hardware and software.
도 2는 음성신호의 변곡점을 설명하기 위한 도면이다. 도 2는 구간 (n-1) ~ n에서 신호의 크기가 증가하는 경우에 가능한 변곡점(inflection point)에 대해 도시하고 있다. 2 is a diagram for explaining the inflection point of a speech signal. Fig. 2 shows possible inflection points when the magnitude of the signal increases in the intervals n-1 to n.
도 3은 본 발명의 일 실시예에 따른 음성신호의 변곡점 추출 방법의 흐름도이다. 3 is a flowchart of an inflection point extraction method of a speech signal according to an embodiment of the present invention.
이하에서는 도 2 및 도 3을 참조하여, 음성신호(speech signal)의 임의의 한 지점 n에서의 음성샘플 x[n]이 변곡점인지 여부를 판별하는 방법에 대해 설명한다. Hereinafter, with reference to FIG. 2 and FIG. 3, a method for determining whether or not the speech sample x [n] at an arbitrary point n of a speech signal is an inflection point will be described.
도 1을 참조하여 설명한 바와 같이, 국소적으로 음성파형은 변곡점과 변곡점 사이에서 선형적인 형태를 보인다. 변곡점은 선형적인 음성파형의 기울기가 변화하는(slope change) 지점에 해당한다. As described with reference to Fig. 1, locally, the voice waveform has a linear shape between the inflection point and the inflection point. The inflection point corresponds to a point at which the slope of a linear speech waveform changes.
도 2의 (a)는 다음 구간 n ~ (n+1)에서는 신호의 세기가 감소하는 경우의 국소 최대값(local maxima)에 해당하는 변곡점을 나타낸다. 도 2의 (b)는 다음구간 n ~ (n+1) 에서 신호의 세기가 일정한 경우의 기울기 변화 지점을 나타낸다. 도 2의 (c)는 다음구간 n ~ (n+1)에서 신호의 세기가 일정하게 증가하는 경우의 기울기 변화 지점을 나타낸다. 구간 (n-1) ~ n에서 신호의 크기가 감소하는 경우에도 마찬가지 경우의 변곡점이 존재할 수 있다.2 (a) shows an inflection point corresponding to a local maximum value when the intensity of the signal decreases in the next period n to (n + 1). 2 (b) shows a slope change point when the intensity of the signal is constant in the next section n to (n + 1). FIG. 2 (c) shows a slope change point when the intensity of the signal increases steadily in the next period n to (n + 1). Even in the case where the magnitude of the signal decreases in the sections (n-1) to n, an inflection point in the same case may exist.
연속된 두 샘플값의 차이를 수학식 1과 같이 정의한다(S310). The difference between two consecutive sample values is defined as Equation 1 (S310).
은 시점 n에서의 음성샘플이며, ,는 이웃한 두 샘플의 미분 근사치(derivative approximation value)이다. 신호 파형의 기울기는 미분으로 주어지고, 미분은 이산시간 영역에서는 이웃하는 샘플의 차인 차동방정식으로 근사화되므로 수학식 1을 이용하여 기울기 변화를 판별할 수 있다. 이러한 미분 근사치를 연산하여 변곡점을 추출(detection)한다. Is the speech sample at time n, , Is the derivative approximation value of two neighboring samples. Since the slope of the signal waveform is given as a differential and the differential is approximated to a differential equation that is the difference between neighboring samples in the discrete time domain, the gradient change can be determined using Equation (1). The differential approximation is calculated to detect the inflection point.
다음으로, , 값이 수학식 2를 만족하는지 판별한다(S320). 이 과정은 신호 파형의 국소 최대값 및 국소 최소값(local minima)을 변곡점으로 결정하는 과정이다. 수학식 2를 만족하는 경우에는, 을 변곡점으로 추출하고(S340), 수학식 2를 만족하지 않는 경우에는 다음 판단 과정(S330)을 수행한다. to the next, , And determines whether the value satisfies Equation 2 (S320). This process determines the local maximum value and the local minimum value of the signal waveform as the inflection point. When the expression (2) is satisfied, (S340). If the equation (2) is not satisfied, the next determination process (S330) is performed.
예를 들어, 도 2의 (a)의 경우, 는 국소 최대값에 해당하는데 이 경우 이고, 이다. 인 경우에 해당하므로 를 변곡점으로 추출한다. For example, in the case of FIG. 2 (a) Corresponds to the local maximum value. In this case ego, to be. , And therefore, Is extracted as an inflection point.
마찬가지로 국소 최소값도 변곡점으로 추출될 수 있다. 이 과정(S320)에서 추출하는 변곡점은 수학식 3의 ID 판별식에 의해서도 추출이 가능하다. 과정 S320의 수학식 2를 이용하는 경우, 국소 최대값 또는 최소값인 변곡점에 해당하는지를 판단할 수 있고, 수학식 3을 이용하는 것보다 연산량이 더 적다.Likewise, the local minimum value can be extracted as an inflection point. The inflection point extracted in this process (S320) can also be extracted by the ID discriminant of Equation (3). If Equation (2) of the process S320 is used, it is possible to determine whether it corresponds to an inflection point which is a local maximum value or a minimum value, and the amount of calculation is smaller than that using Equation (3).
다음으로, , 값이 수학식 3을 만족하는지 판별한다(S330). 이 과정은 기울기 변화 지점을 변곡점으로 결정하는 과정이다. 수학식 2를 만족하지 않더라도, 수학식 3를 만족하는 경우에는, 을 변곡점으로 추출한다(S340).to the next, , It is determined whether the value satisfies Equation 3 (S330). This process determines the tilt change point as the inflection point. Even if the expression (2) is not satisfied, when the expression (3) is satisfied, Is extracted as an inflection point (S340).
는 기울기 변화 지점 판별식이고, 은 임의의 임계값(threshold)이다. Is a slope change point discrimination equation, Is a certain threshold.
기울기 변화 지점에서 ID는 범위에 해당하는 결과값(이하 'ID값'이라 함)을 갖는다. At the slope change point, the ID is (Hereinafter referred to as " ID value ").
예를 들어, 도 2를 참조하면, 도 2의 (c)와 같은 기울기 변화 지점에서 ID는 에 해당하는 값을 갖는다. 기울기 변화량이 작을수록 ID값은 0에 수렴하고, 기울기 변화가 없는 경우에 ID값은 0이다. 도 2의 (b)와 같이 기울기의 변화량이 큰 지점에서의 ID값은 1이다. 도 2의 (a)와 같은 국소 최대값에서 ID값은 1이다. 마찬가지로, 신호 파형이 점점 감소하는 형태를 가진 경우에도 ID값을 이용하여 기울기 변화 지점을 판별할 수 있다. For example, referring to FIG. 2, the ID at the tilt change point as shown in FIG. 2 (c) . ≪ / RTI > The ID value converges to 0 as the slope variation is smaller, and the ID value is 0 when there is no slope variation. As shown in Fig. 2 (b), the ID value at the point where the amount of change in the gradient is large is one. The ID value is 1 at the local maximum value as shown in FIG. 2 (a). Likewise, even when the signal waveform has a decreasing shape, the tilt change point can be determined using the ID value.
ID값이 범위에 해당하는 모든 변곡점을 추출하는 것이 아니라, 과 같이 임계값을 설정하여 기울기 변화가 어느 수준 이상인 지점에 대해서만 변곡점으로 추출되도록 할 수 있다. 즉, 임계값을 설정하여 추출되는 변곡점의 수를 조절할 수 있다. 이 때, 임계값은 의 범위에서 임의의 값으로 설정될 수 있다. 임계값이 작을수록, 추출되는 변곡점의 수가 많아지고, 임계값이 클수록 추출되는 변곡점의 수는 적어진다. ID value is Rather than extracting all inflection points corresponding to the range, The threshold value can be set so that only the point at which the slope change is higher than a certain level can be extracted as the inflection point. That is, the number of inflection points extracted by setting a threshold value can be adjusted. At this time, Lt; / RTI > can be set to any value in the range of. The smaller the threshold value, the greater the number of inflection points to be extracted, and the larger the threshold value, the smaller the number of inflection points to be extracted.
즉, 수학식 2를 만족하는 경우(S320), 그 지점의 샘플은 국소 최대값 또는 최소값으로 분류되어 변곡점으로 추출된다(S340). 수학식 2를 만족하지 않는 경우(S320), 수학식 3의 ID값을 계산하고, 미리 설정한 임계값과 비교한다(S330). ID값이 임계값보다 큰 경우, 샘플은 기울기 변화지점으로 분류되어 변곡점으로 추출된다(S340). That is, when the equation (2) is satisfied (S320), the sample at that point is classified as a local maximum value or minimum value and extracted as an inflection point (S340). If the equation (2) is not satisfied (S320), the ID value of Equation (3) is calculated and compared with a preset threshold value (S330). If the ID value is larger than the threshold value, the sample is classified as a slope change point and extracted as an inflection point (S340).
음성신호는 그 파형이 불규칙하므로 파형에서 나타나는 변곡점의 패턴(IP pattern) 또한 불규칙하다. 따라서, 변곡점 샘플링과 같은 비균등 샘플링(non-uniform sampling)을 기반으로 한 음성 부호화 방법에 따르면 샘플링 수는 줄어들지만, 전송 비트율(bitrate)이 가변적이다. Since the waveform of the speech signal is irregular, the pattern of the inflection point (IP pattern) appearing in the waveform is also irregular. Therefore, according to the speech coding method based on non-uniform sampling such as inflection point sampling, although the number of samples is reduced, the transmission bit rate is variable.
이하에서는, 음성신호에 변곡점 샘플링을 적용하더라도, 고정 전송 비트율을 제공하는 음성 부호화 장치에 대해 설명한다. Hereinafter, a speech encoding apparatus that provides a fixed transmission bit rate even when inflection point sampling is applied to a speech signal will be described.
도 4는 본 발명의 일 실시예에 따른 음성 부호화 장치의 블럭도다.4 is a block diagram of a speech encoding apparatus according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 음성 부호화 장치(400)는 데이터베이스(410), 변곡점추출부(420), 정규화부(430), 최유사 패턴 검색부(440) 및 다중화부(450)를 포함하여 구성될 수 있다. The
음성 부호화 장치(400)의 입력단자 in을 통해 입력되는 입력신호는 연속적인 음성신호 또는 샘플링된 음성신호일 수 있다. 연속적인 음성신호인 경우에는, 변곡점을 추출하기 전에 샘플링 과정을 거친다. 또한, 입력신호는 음성신호를 일정 시간을 기준으로 블록 단위로 나눈 음성신호 블록(speech block)일 수 있다. 출력단자 out을 통해서 입력된 음성신호를 부호화한 결과인 비트열(bitstream)이 출력된다.The input signal input through the input terminal in of the
데이터베이스(410)는 음성신호의 파형의 변곡점 패턴(IP pattern)을 미리 확보하여 저장한다. 예컨대, 임의의 음성신호를 다수 개 확보하고, 확보된 음성신호에 대해, 도 3을 참조하여 설명한 방법을 이용하여, 블록 단위로 변곡점을 추출한 뒤, 추출한 변곡점의 패턴을 데이터베이스에 저장한다.The
데이터베이스(410)에 저장된 변곡점 패턴은 최유사 패턴(closest pattern)의 검색에 이용되고, 검색된 최유사 패턴의 데이터베이스 상의 주소 정보가 부호화에 이용된다. 데이터베이스(410)에 저장된 변곡점 패턴이 다양하고 많을수록 복호화 장치에서 복원된 신호가 원 신호와 가깝게 복원될 수 있다. The inflection point pattern stored in the
한편, 도 4에서는 데이터베이스(410)가 본 발명의 일 실시예에 따른 음성 부호화 장치(400)의 내부에 위치하는 것으로 도시하였으나, 본 발명의 범주가 이에 국한되는 것은 아니며, 데이터베이스(410)가 음성 부호화 장치(400)와는 별도의 장치로 외부에 위치하여 음성 부호화 장치(400)와 연동하는 형태 또한 가능할 것이다. 4, the
변곡점추출부(IP detector, 420)는 입력신호 x에서 변곡점 패턴 D를 추출한다. 입력신호 x에 대해 변곡점 패턴 추출이 블록 단위로 이루어진다. 변곡점추출부(420)는 도 3에서 설명한 방법을 이용하여 변곡점을 추출할 수 있다. 이미 설명한 바와 같이, 임계값을 조절하여 추출되는 변곡점의 수를 조절할 수 있다. 추출된 변곡점은 각각의 위치 정보 및 크기 정보를 갖는다. 여기서, 위치 정보는 추출된 변곡점이 음성신호 블록 내에서 위치하는 시점에 관한 정보이며, 크기 정보는 해당 시점에서 입력신호의 샘플값의 크기에 대한 정보이다. 변곡점추출부(420)는 두 가지 정보를 기초로 하여 형성된 변곡점 패턴 D를 출력한다. The
정규화부(normalizer, 430)는 변곡점 패턴 D의 에너지값을 산출하고, 추출된 변곡점 패턴을 에너지값 E을 기준으로 하여 정규화(normalization)한다. 여기서 추출된 변곡점의 크기 정보를 이용하여 변곡점 패턴 D의 에너지값 E를 산출한다. 정규화부(430)는 산출된 에너지값 E를 이용하여 변곡점 패턴 D를 정규화하고, 정규화된 패턴 d를 생성한다. 정규화부(430)는 정규화된 패턴 d 및 에너지값 E를 출력한다.The
최유사 패턴 검색부(closest pattern finder, 440)는 데이터베이스(410)에서 정규화된 패턴 d와 가장 유사한 최유사 패턴을 찾는다. 검색 결과 최유사 패턴 검색부(440)는 최유사 패턴 d'이 저장된 주소 정보 ADR을 출력한다. 변곡점의 패턴 자체를 부호화하여 전송하려고 하는 경우에는, 음성신호 블록이 포함하고 있는 변곡점 개수가 일정하지 않으므로 음성 부호화 장치(400)를 통해 출력되는 비트열의 길이가 일정하지 않다. 반면에, 데이터베이스(410)에서 패턴이 저장되어 있는 주소 정보를 이용하여 전송하는 경우에는, 고정된(fixed) 길이의 비트열을 출력할 수 있다.The
구체적으로, 비트열의 길이는 데이터베이스(410)에 저장된 변곡점 패턴의 개수에 의해 결정된다. 저장된 변곡점 패턴의 개수를 N이라고 했을 때, 주소 정보 ADR을 부호화하기 위해 할당되는 비트 수는 (소수점 이하는 올림)이다. 데이터베이스(410)에 저장되어 있는 변곡점의 개수에 따라 고정된 길이의 비트열을 나타낸다. 따라서, 음성 부호화 장치(400)가 고정된 비트 수를 할당하는 전송 채널을 사용하는 경우에 적절하게 이용될 수 있다. Specifically, the length of the bit string is determined by the number of inflection point patterns stored in the
예를 들어, 데이터베이스(410)에 포함되어 있는 변곡점 패턴이 8519개인 경우, 주소 정보에는 (소수점 이하는 올림)개의 비트가 할당된다.For example, when the inflection point pattern included in the
다중화부(450)는 최유사 패턴의 주소 정보 ADR 및 에너지값 E를 포함한 전송 정보를 다중화하고, 다중화된 비트열을 출력단자 out을 통해 출력한다. 주소 정보에 할당된 비트열의 길이가 고정되어 있으므로, 에너지값 E에 대해 고정된 비트열의 길이를 할당하면 다중화부(450)를 통해 출력되는 비트열은 고정된 길이의 비트열이 된다.The
예를 들어, 음성신호 블록이 20 ms의 길이를 갖고, 샘플링 주파수가 10 kHz인 경우, 블록당 200 개의 샘플을 초당 50 개의 블록에서 샘플링한다. 블록당 샘플 개수와는 상관없이, 주소 정보 ADR을 위해 할당된 비트 수는 데이터베이스(410)의 크기 및 에너지값 E에 의해 결정된다. 데이터베이스(410)의 크기를 N, 에너지값 E의 최대값을 M이라 할 때, 출력되는 비트열의 길이는 수학식 4와 같이 계산할 수 있다.For example, if the speech signal block has a length of 20 ms and the sampling frequency is 10 kHz, 200 samples per block are sampled at 50 blocks per second. Regardless of the number of samples per block, the number of bits allocated for the address information ADR is determined by the size of the
도 5는 본 발명의 일 실시예에 따른 음성 부호화 방법의 흐름도이다.5 is a flowchart of a speech coding method according to an embodiment of the present invention.
입력신호로부터 변곡점 패턴을 추출한다(S510). 변곡점을 추출한 뒤, 변곡점의 패턴을 추출한다. 과정 S510에서는 음성신호의 변곡점을 추출하기 위해서 균등하게 샘플링된 음성신호를 이용한다. 과정 S510에서는 변곡점에 해당하는 지점의 샘플값만을 추출하고 변곡점이 아닌 지점의 샘플값은 추출하지 않으므로, 결과적으로는 비균등 샘플링(non-uniformed sampling)된 음성신호를 얻게 된다. 변곡점의 추출은 도 3을 참조하여 설명한 변곡점 추출 방법을 사용할 수 있다. An inflection point pattern is extracted from the input signal (S510). After the inflection point is extracted, the inflection point pattern is extracted. In step S510, the speech signal sampled uniformly is used to extract the inflection point of the speech signal. In step S510, only the sample value at the point corresponding to the inflection point is extracted and the sample value at the non-inflection point is not extracted. As a result, a non-uniformed sampling speech signal is obtained. For the inflection point extraction, the inflection point extraction method described with reference to Fig. 3 can be used.
추출된 변곡점 패턴의 에너지값을 산출하고 에너지값을 기준으로 추출된 변곡점 패턴을 정규화한다(S520). 추출된 변곡점은 각각의 위치 정보 및 크기 정보를 갖는데, 크기 정보를 이용하여 블록 단위로 패턴의 에너지값을 산출할 수 있다. 정규화는 산출된 에너지값을 변곡점 패턴의 크기 정보에서 나눔으로써 얻어진다.The energy value of the extracted inflection point pattern is calculated and the inflection point pattern extracted based on the energy value is normalized (S520). The extracted inflection points have respective positional information and size information. The energy value of the pattern can be calculated on a block-by-block basis using the size information. The normalization is obtained by dividing the calculated energy value by the size information of the inflection point pattern.
추출된 변곡점 패턴을 데이터베이스에 포함된 변곡점 패턴과 비교하여 최유사 패턴(closest pattern)을 찾는다(S530). 최유사한 패턴이 검색되면, 검색된 패턴의 주소 정보와 에너지값을 복호화 장치로 전송한다(S540). 유사한 변곡점 패턴의 데이터베이스 상의 주소 정보와 추출된 변곡점들의 패턴이 갖는 에너지값이 다중화되어 전송된다. 종래의 비균등 샘플링에 기반한 음성 부호화 방법과는 다르게, 본 실시예에 의하면 출력된 비트열에서 고정된 전송 비트율을 보여준다. The extracted inflection point pattern is compared with the inflection point pattern included in the database to find a closest pattern (S530). When the most similar pattern is found, the address information and the energy value of the searched pattern are transmitted to the decoding apparatus (S540). The address information on the database of the similar inflection point pattern and the energy value of the pattern of the extracted inflection points are multiplexed and transmitted. Unlike the conventional non-uniform sampling-based speech encoding method, the present embodiment shows a fixed transmission bit rate in an output bit stream.
도 6은 본 발명의 일 실시예에 따른 음성 복호화 장치의 블럭도다.6 is a block diagram of a speech decoding apparatus according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 음성 복호화 장치(600)는 데이터베이스(610), 역다중화부(620), 패턴형성부(630) 및 신호복원부(640)를 포함하여 구성된다. 음성 복호화 장치(600)는 입력단자 in을 통해 음성 부호화 장치(400)에서 출력된 비트열을 입력 받고, 비트열을 복호화하여 복원한 음성신호 x'를 출력단자 out을 통해 출력한다.The
데이터베이스(610)로는 음성 부호화 장치(400)의 데이터베이스(410)와 동일한 것이 사용된다. 즉, 두 데이터베이스(410, 610)의 동일한 주소에는 동일한 변곡점 패턴에 대한 정보가 저장되어 있다. 따라서, 음성 부호화 장치(400)로부터 주소 정보를 전달받으면 원 신호의 변곡점 패턴과 최유사 패턴을 갖는 변곡점 패턴을 추출할 수 있다. The
역다중화부(620)는 주소 정보 ADR과 에너지값 E를 추출한다. 음성 부호화 장치(400)로부터 전송받은 비트열은 주소 정보 ADR과 에너지값 E에 대한 정보를 포함하고 있다. 음성 복호화 장치(600)가 비트열을 입력받으면, 비트열의 길이 정보를 이용하여 주소 정보 ADR과 에너지값 E를 추출한다. 주소 정보 ADR은 데이터베이스에서 변곡점 패턴을 추출하는데 이용되고, 에너지값 E는 원 신호의 크기에 맞게 복원하는데 이용된다.The
패턴형성부(630)는 데이터베이스(610)에서 주소 정보를 이용하여 해당되는 변곡점 패턴을 추출하고, 추출된 변곡점 패턴 및 에너지값을 이용하여 복원될 신호의 변곡점 패턴을 형성한다. 데이터베이스(610)로부터 추출된 변곡점 패턴은 음성 부호화 장치(400)에서 추출된 변곡점 패턴과 최유사 패턴 d'이다. 최유사 패턴 d'와 에너지값을 곱하여 변곡점 패턴 D'을 추정한다. 추정된 변곡점 패턴 D'은 원 신호에서 추출된 변곡점 패턴 D와 유사한 변곡점 패턴에 해당한다. The
신호복원부(640)는 변곡점 패턴 D'을 이용하여 신호를 복원하고 복원신호 블록 x'를 출력단자 out을 통해 출력한다. 샘플링되지 않은 각 변곡점 사이의 신호는 보간법을 통해 복원한다. The
도 7은 본 발명의 일 실시예에 따른 음성 복호화 방법의 흐름도이다.7 is a flowchart of a speech decoding method according to an embodiment of the present invention.
입력신호로부터 주소 정보와 에너지값을 추출한다(S710). 입력신호는 부호화 장치를 통해 부호화된 결과로 출력된 비트열로, 주소 정보와 에너지값에 대한 정보를 포함하고 있다. 주소 정보 및 에너지값에 할당된 비트열의 길이에 대한 정보를 이용하여 주소 정보 및 에너지값에 대한 정보를 추출할 수 있다.Address information and energy values are extracted from the input signal (S710). The input signal is a bit string output as a result of being encoded through an encoder, and includes information on address information and energy value. Information on the address information and the energy value can be extracted using the information on the address information and the length of the bit string allocated to the energy value.
주소 정보를 이용하여, 데이터베이스에서 해당 주소에 저장된 변곡점 패턴을 추출한다(S720). 과정 S710에서 추출된 주소 정보를 이용하여 해당 주소에 저장되어 있는 변곡점 패턴을 추출한다. 복호화 과정에서 사용되는 데이터베이스는 부호화 장치의 데이터베이스와 동일한 주소에 동일한 패턴을 저장하고 있다. The inflection point pattern stored in the corresponding address is extracted from the database using the address information (S720). An inflection point pattern stored in the corresponding address is extracted using the address information extracted in step S710. The database used in the decoding process stores the same pattern at the same address as the database of the encoding apparatus.
추출된 변곡점 패턴 및 에너지값을 이용하여 복원 변곡점 패턴을 형성한다(S730). 추출된 변곡점 패턴에 에너지값을 곱하는 방식으로 복원 변곡점 패턴을 형성할 수 있다. 복원 변곡점 패턴을 이용하여 복원신호를 생성하여 출력한다(S740). 복원 변곡점 패턴에서 변곡점과 변곡점 사이에 보간법을 적용하여 변곡점과 변곡점 사이의 신호를 복원한다.The restored inflection point pattern is formed using the extracted inflection point pattern and energy value (S730). The restored inflection point pattern can be formed by multiplying the extracted inflection point pattern by the energy value. The restoration inflection point pattern is used to generate and output the restoration signal (S740). In the restoration inflection point pattern, interpolation is applied between the inflection point and inflection point to restore the signal between inflection point and inflection point.
도 8은 본 발명의 일 실시예에 따른 음성 부호화 장치 및 음성 복호화 장치를 이용하여 음성신호를 복원한 결과를 나타낸 도면이다.8 is a diagram illustrating a result of restoring a speech signal using the speech coding apparatus and the speech decoding apparatus according to an embodiment of the present invention.
본 발명의 일 실시예에 의한 음성신호 복원의 성능을 확인하기 위한 시뮬레이션을 실시하였다.A simulation for verifying the performance of speech signal restoration according to an embodiment of the present invention was performed.
샘플링 비율은 10 kHz로, 음성신호는 20 ms 길이의 블록 단위로 나누고, 블록의 50 %는 겹쳐지도록(overlapping) 하였다. 블록을 나누는 데 사용된 윈도우 함수는 Hanning 윈도우이다. 데이터베이스에는 8519개의 변곡점 패턴을 저장하였고, 따라서 데이터베이스의 주소를 부호화하는 데는 14비트( 값을 계산하여 올림)가 할당되었다. 에너지값에는 16비트를 할당하였다. 음성 부호화 장치의 전송 비트율은 로 계산하여 1500 bits/second이다.The sampling rate was 10 kHz and the speech signal was divided into 20 ms blocks, and 50% of the blocks were overlapped. The window function used to divide the block is the Hanning window. The database stores 8519 inflection point patterns, and therefore 14-bit Value is calculated). The energy value is assigned 16 bits. The transmission bit rate of the speech coding apparatus is Which is 1500 bits / second.
도 8의 (a)는 입력받은 원 음성신호의 파형이다. 도 8의 (b)는 도 8의 (a)의 음성신호의 파형에서 추출된 변곡점 패턴이다. 도 8의 (c)는 본 발명의 일 실시예에 따른 음성 부호화 장치 및 복호화 장치를 이용하여 복원된 신호의 파형이다. 도면에서 확인할 수 있는 것과 같이 본 발명의 일 실시예는, 원 음성신호를 복원하는 데 있어 적절하게 사용될 수 있다. 본 실시예에 의한 신호복원의 SNR 성능은 아래의 수학식 5과 같이 계산된다.8 (a) shows the waveform of the input original audio signal. Fig. 8B is an inflection point pattern extracted from the waveform of the audio signal of Fig. 8A. FIG. 8C is a waveform of a signal restored using the speech coding apparatus and the decoding apparatus according to an embodiment of the present invention. As can be seen in the drawings, an embodiment of the present invention can be suitably used for restoring original speech signals. The SNR performance of the signal restoration according to the present embodiment is calculated by the following Equation (5).
signal power는 복원된 신호의 파워, noise power는 원 음성신호에서 복원된 신호를 뺀 신호의 파워이다.The signal power is the power of the reconstructed signal, and the noise power is the power of the signal minus the reconstructed signal from the original speech signal.
계산 결과, SNR은 5.27 로 계산되었다. 이를 균등 샘플링에 기반한 부호화 방법인 PCM(Pulse Code Modulation)과 비교하여 전송 비트율 대비 SNR 성능을 비교한다. As a result, the SNR was calculated to be 5.27. Compared with PCM (Pulse Code Modulation), which is a coding method based on uniform sampling, SNR performance versus transmission bit rate is compared.
PCM에 의한 부호화는 이론적으로, 수학식 6에 따라 SNR 성능을 계산한다.The PCM coding theoretically calculates the SNR performance according to Equation (6).
는 bits per sample, 는 음성신호의 최대값, 는 표준 편차이다. 예를 들어, B = 3이고, 일 때, 계산된 SNR은 4.91 dB이다. 3 bit 간격으로 균등하게 샘플링한 경우, 시뮬레이션을 통해 계산된 SNR은 4.18 dB이다. 샘플링 비율이 동일하게 10 kHz인 경우 PCM에 의한 전송 비트율은 30 kbps에 해당한다. 따라서, 본 발명의 일 실시예에 따른 부호화 방법은, 균등 샘플링에 기반한 PCM과 비교했을 때, 동일한 샘플링 비율을 갖는 경우 더 낮은 전송 비트율을 보이면서도 비슷한 SNR 성능을 보여준다. Bits per sample, Is the maximum value of the voice signal, Is the standard deviation. For example, if B = 3, , The calculated SNR is 4.91 dB. In case of uniform sampling at 3-bit intervals, the calculated SNR is 4.18 dB. If the sampling rate is the same 10 kHz, the transmission bit rate by PCM is 30 kbps. Therefore, the encoding method according to an embodiment of the present invention shows a similar SNR performance with a lower transmission bit rate when the same sampling rate is compared with PCM based on uniform sampling.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and various modifications and changes may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments are not intended to limit the scope of the present invention but to limit the scope of the technical idea of the present invention. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.
전술한 바와 같이, 도 3에 기재된 음성신호 변곡점 추출 방법은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 본 발명의 일 실시예에 따른 유사 수학문제 검색방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.As described above, the speech signal inflection point extraction method described in Fig. 3 can be implemented by a program and recorded on a computer-readable recording medium. A program for implementing a similar mathematical problem retrieval method according to an embodiment of the present invention is recorded, and a computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of such computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, etc., and also implemented in the form of a carrier wave (e.g., transmission over the Internet) . The computer readable recording medium may also be distributed over a networked computer system so that computer readable code is stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the present embodiment can be easily inferred by programmers in the technical field to which the present embodiment belongs.
400: 음성 부호화 장치 410: 데이터베이스
420: 변곡점추출부 430: 정규화부
440: 최유사 패턴 검색부 450: 다중화부
600: 음성 복호화 장치 610: 데이터베이스
620: 역다중화부 430: 패턴형성부
640: 신호복원부400: speech encoding apparatus 410: database
420: inflection point extraction unit 430: normalization unit
440: Most similar pattern searching unit 450: Multiplexing unit
600: voice decoding device 610: database
620: demultiplexing unit 430: pattern forming unit
640:
Claims (21)
기확보한 음성신호 파형의 변곡점 패턴을 저장하는 데이터베이스;
입력신호로부터 적어도 하나의 변곡점을 추출하고, 상기 변곡점의 위치 정보 및 크기 정보를 기초로 변곡점 패턴을 추출하는 변곡점추출부;
추출된 변곡점 패턴의 에너지값을 산출하고 상기 에너지값을 이용하여 상기 추출된 변곡점 패턴을 정규화(normalization)하는 정규화부;
정규화된 변곡점 패턴의 최유사 패턴이 저장된 주소 정보를 출력하는 최유사 패턴 검색부; 및
상기 주소 정보 및 상기 에너지값을 다중화(multiplexing)하여 고정된 비트열(fixed bit stream)을 출력하는 다중화부
를 포함하는 음성 부호화 장치.A speech coding apparatus for coding a speech signal, comprising:
A database storing an inflection point pattern of the pre-established speech signal waveform;
An inflection point extracting unit for extracting at least one inflection point from an input signal and extracting an inflection point pattern based on position information and size information of the inflection point;
A normalization unit for calculating an energy value of the extracted inflection point pattern and normalizing the extracted inflection point pattern using the energy value;
A most similar pattern retrieval unit for outputting address information storing a most similar pattern of a normalized inflection point pattern; And
A multiplexer for multiplexing the address information and the energy value and outputting a fixed bit stream,
And a speech coding unit.
상기 변곡점추출부는,
상기 입력신호를 일정 시간 단위의 블록으로 나누어 상기 블록 단위로 상기 변곡점 패턴을 추출하는 것을 특징으로 하는 음성 부호화 장치.The method according to claim 1,
Wherein the inflection point extracting unit comprises:
Dividing the input signal into blocks of a predetermined time unit, and extracting the inflection point pattern on a block-by-block basis.
상기 변곡점추출부는,
수학식 3의 ID(identifier) 값을 산출하여 상기 입력신호로부터 변곡점 패턴을 추출하는 것을 특징으로 하고,
<수학식 3>
은 , 는 , 은 시점 n에서의 음성샘플인 음성 부호화 장치.The method according to claim 1,
Wherein the inflection point extracting unit comprises:
An ID value of Equation (3) is calculated, and an inflection point pattern is extracted from the input signal.
&Quot; (3) "
silver , The , Is a speech sample at a time point n.
상기 ID값과 기 설정된 임계값(threshold)을 비교하여, 상기 ID값이 상기 임계값보다 큰 경우 상기 을 변곡점으로 결정하는 것을 특징으로 하는 음성 부호화 장치.The method of claim 3,
Comparing the ID value with a preset threshold value, and when the ID value is greater than the threshold value, As an inflection point.
기확보한 음성신호 파형의 변곡점 패턴을 저장하는 데이터베이스;
입력신호로부터 주소 정보와 에너지값을 추출하는 역다중화부;
상기 주소 정보를 이용하여 상기 데이터베이스에서 변곡점 패턴을 추출하고 추출된 변곡점 패턴 및 상기 에너지값을 이용하여 복원 변곡점 패턴을 형성하는 패턴형성부; 및
상기 복원 변곡점 패턴을 이용하여 복원신호를 생성하여 출력하는 신호복원부
를 포함하는 음성 복호화 장치.A speech decoding apparatus for decoding a coded speech signal, comprising:
A database storing an inflection point pattern of the pre-established speech signal waveform;
A demultiplexer for extracting address information and energy values from an input signal;
A pattern formation unit for extracting an inflection point pattern from the database using the address information, and forming a restoration inflection point pattern using the extracted inflection point pattern and the energy value; And
A signal restoring unit for generating and outputting a restored signal using the restored inflection point pattern,
And decodes the audio signal.
상기 신호복원부는,
상기 복원 변곡점 패턴에서 각 변곡점 사이에 보간법을 적용하여 상기 복원신호를 생성하는 것을 특징으로 하는 음성 복호화 장치.6. The method of claim 5,
Wherein the signal restoring unit comprises:
Wherein the interpolation method is applied between the inflection points in the restored inflection point pattern to generate the restored signal.
상기 패턴형성부는,
상기 추출된 변곡점 패턴에 상기 에너지값을 곱하여 상기 복원 변곡점 패턴을 형성하는 것을 특징으로 하는 음성 복호화 장치.6. The method of claim 5,
The pattern forming unit may include:
And the restored inflection point pattern is formed by multiplying the extracted inflection point pattern by the energy value.
입력신호로부터 적어도 하나의 변곡점을 추출하고, 상기 변곡점의 위치 정보 및 크기 정보를 기초로 변곡점 패턴을 추출하는 과정;
추출된 변곡점 패턴을 상기 데이터베이스에 포함된 변곡점 패턴과 비교하여 최유사 패턴을 찾는 과정;
상기 추출된 변곡점 패턴의 에너지값을 산출하고 상기 에너지값을 이용하여 상기 추출된 변곡점 패턴을 정규화하는 과정; 및
상기 최유사 패턴의 주소 정보 및 상기 에너지값을 다중화하여 고정된 비트열을 출력하는 과정;
을 포함하는 음성신호 부호화 방법.A speech signal coding method using a database storing an inflection point pattern of a pre-established speech signal waveform,
Extracting at least one inflection point from an input signal, and extracting an inflection point pattern based on position information and size information of the inflection point;
Comparing the extracted inflection point pattern with an inflection point pattern included in the database to find a most similar pattern;
Calculating an energy value of the extracted inflection point pattern and normalizing the extracted inflection point pattern using the energy value; And
Outputting a fixed bit stream by multiplexing the address information of the most similar pattern and the energy value;
And decoding the speech signal.
상기 변곡점 패턴을 추출하는 과정은,
수학식 3의 ID값을 산출하여 상기 입력신호로부터 변곡점 패턴을 추출하는 것을 특징으로 하고,
<수학식 3>
은 , 는 , 은 시점 n에서의 음성샘플인 음성신호 부호화 방법.9. The method of claim 8,
The process of extracting the inflection point pattern includes:
An ID value of Equation (3) is calculated, and an inflection point pattern is extracted from the input signal.
&Quot; (3) "
silver , The , Is a speech sample at a time n.
<수학식 2>
를 만족하는 경우 상기 을 변곡점으로 결정하는 것을 특징으로 하는 음성신호 부호화 방법.11. The method of claim 10,
&Quot; (2) "
If the above expression Is determined as an inflection point.
상기 ID값과 기 설정된 임계값을 비교하여, 상기 ID값이 상기 임계값보다 큰 경우 상기 을 변곡점으로 결정하는 것을 특징으로 하는 음성신호 부호화 방법.11. The method of claim 10,
Comparing the ID value with a predetermined threshold value, and when the ID value is greater than the threshold value, Is determined as an inflection point.
입력신호로부터 주소 정보와 에너지값을 추출하는 과정;
상기 주소 정보를 이용하여 상기 데이터베이스에서 변곡점 패턴을 추출하는 과정;
추출된 변곡점 패턴 및 상기 에너지값을 이용하여 복원 변곡점 패턴을 형성하는 과정; 및
상기 복원 변곡점 패턴을 이용하여 복원신호를 생성하여 출력하는 과정
을 포함하는 음성 복호화 방법.A speech signal decoding method using a database storing an inflection point pattern of a pre-established speech signal waveform,
Extracting address information and an energy value from an input signal;
Extracting an inflection point pattern from the database using the address information;
Forming a restored inflection point pattern using the extracted inflection point pattern and the energy value; And
Generating and outputting a restored signal using the restored inflection point pattern
And decodes the speech signal.
상기 복원신호를 생성하여 출력하는 과정은,
상기 복원 변곡점 패턴에서 변곡점 사이 지점에 대해 보간법을 적용하여 상기 복원신호를 생성하는 것을 특징으로 하는 음성 복호화 방법.14. The method of claim 13,
And generating and outputting the restored signal,
Wherein the restoration inflection point pattern is generated by applying interpolation to a point between inflection points in the restoration inflection point pattern.
상기 복원 변곡점 패턴을 형성하는 과정은,
상기 추출된 변곡점 패턴에 상기 에너지값을 곱하여 상기 복원 변곡점 패턴을 형성하는 것을 특징으로 음성 복호화 방법.14. The method of claim 13,
The process of forming the restoration inflection point pattern includes:
And the restored inflection point pattern is formed by multiplying the extracted inflection point pattern by the energy value.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160083721A KR101812094B1 (en) | 2016-07-01 | 2016-07-01 | Method And Apparatus for Encoding And Decoding Speech Signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160083721A KR101812094B1 (en) | 2016-07-01 | 2016-07-01 | Method And Apparatus for Encoding And Decoding Speech Signal |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101812094B1 true KR101812094B1 (en) | 2017-12-27 |
Family
ID=60938680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160083721A KR101812094B1 (en) | 2016-07-01 | 2016-07-01 | Method And Apparatus for Encoding And Decoding Speech Signal |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101812094B1 (en) |
-
2016
- 2016-07-01 KR KR1020160083721A patent/KR101812094B1/en active IP Right Grant
Non-Patent Citations (2)
Title |
---|
Recommendation ITU-T G.722. 7 kHz audio-coding within 64 kbit/s. 2012.09.* |
임병관. 음성의 변곡점 추출 및 전송에 기반한 가변 데이터율 음성 부호화 기법. 전기학회논문지 제62권 제4호. 2013.04. pp.562-565.* |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1440300B1 (en) | Encoding device, decoding device and audio data distribution system | |
JP5175028B2 (en) | Digital signal encoding method and apparatus, and decoding method and apparatus | |
KR101143724B1 (en) | Encoding device and method thereof, and communication terminal apparatus and base station apparatus comprising encoding device | |
US8856049B2 (en) | Audio signal classification by shape parameter estimation for a plurality of audio signal samples | |
AU2009267529B2 (en) | Apparatus and method for calculating bandwidth extension data using a spectral tilt controlling framing | |
CN101223577B (en) | Method and apparatus to encode/decode low bit-rate audio signal | |
KR100647336B1 (en) | Apparatus and method for adaptive time/frequency-based encoding/decoding | |
CN103081366B (en) | Controlling a noise-shaping feedback loop in a digital audio signal encoder | |
KR100661040B1 (en) | Apparatus and method for processing an information, apparatus and method for recording an information, recording medium and providing medium | |
JP4767687B2 (en) | Time boundary and frequency resolution determination method for spectral envelope coding | |
EP2381438B1 (en) | Signal classification processing method, classification processing device and encoding system | |
WO1998000837A1 (en) | Audio signal coding and decoding methods and audio signal coder and decoder | |
KR102614021B1 (en) | Audio content recognition method and device | |
KR20080050900A (en) | Method and apparatus for extracting important spectral component of audio signal, and method and appartus for encoding/decoding audio signal using it | |
RU2668111C2 (en) | Classification and coding of audio signals | |
RU2368018C2 (en) | Coding of audio signal with low speed of bits transmission | |
KR100524065B1 (en) | Advanced method for encoding and/or decoding digital audio using time-frequency correlation and apparatus thereof | |
CN102483922A (en) | Apparatus for encoding and decoding an audio signal using a weighted linear predictive transform, and method for same | |
EP1159739B1 (en) | Method and apparatus for eighth-rate random number generation for speech coders | |
KR100707184B1 (en) | Audio coding and decoding apparatus and method, and recoding medium thereof | |
US7983346B2 (en) | Method of and apparatus for encoding/decoding digital signal using linear quantization by sections | |
KR100789368B1 (en) | Apparatus and Method for coding and decoding residual signal | |
KR101812094B1 (en) | Method And Apparatus for Encoding And Decoding Speech Signal | |
WO2015049820A1 (en) | Sound signal encoding device, sound signal decoding device, terminal device, base station device, sound signal encoding method and decoding method | |
KR20050006883A (en) | Wideband speech coder and method thereof, and Wideband speech decoder and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |