KR102443221B1 - 수면 음성 분석 장치 및 방법 - Google Patents

수면 음성 분석 장치 및 방법 Download PDF

Info

Publication number
KR102443221B1
KR102443221B1 KR1020220006097A KR20220006097A KR102443221B1 KR 102443221 B1 KR102443221 B1 KR 102443221B1 KR 1020220006097 A KR1020220006097 A KR 1020220006097A KR 20220006097 A KR20220006097 A KR 20220006097A KR 102443221 B1 KR102443221 B1 KR 102443221B1
Authority
KR
South Korea
Prior art keywords
value
sleep
voice data
specific index
index
Prior art date
Application number
KR1020220006097A
Other languages
English (en)
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 KR1020220006097A priority Critical patent/KR102443221B1/ko
Application granted granted Critical
Publication of KR102443221B1 publication Critical patent/KR102443221B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/48Other medical applications
    • A61B5/4806Sleep evaluation
    • A61B5/4818Sleep apnoea
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/48Other medical applications
    • A61B5/4803Speech analysis specially adapted for diagnostic purposes
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7271Specific aspects of physiological measurement analysis
    • A61B5/7282Event detection, e.g. detecting unique waveforms indicative of a medical condition
    • 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
    • G10L25/66Speech 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 for extracting parameters related to health condition

Abstract

사용자의 단말기를 이용하여 수면 음성을 스스로 녹음하며, 이벤트 발생 횟수를 추정하여 수면 중 발생하는 비규칙적 이벤트에 대해 파악할 수 있는 수면 음성 분석 장치 및 방법이 개시된다. 일 실시예에 따른 수면 음성 분석 장치는 특정 인덱스의 수면 음성 데이터 및 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함되는 수면 음성 데이터를 기초로 0 또는 1로 구성되는 이진 데이터를 생성하는 이벤트 검출부; 및 이진 데이터에 기초하여 이벤트 발생 횟수를 추정하는 계수부를 포함할 수 있다.

Description

수면 음성 분석 장치 및 방법{Apparatus and method for sleep sound analysis}
수면 음성을 수집하여 이벤트 발생 횟수를 추정하는 수면 음성 분석 장치 및 방법에 관한 것이다.
수면 음성 분석은 음성 기록용 장치와 딥러닝을 이용한 분석이 주를 이루고 있다. 구체적으로, 종래 기술은 수면 음성에 대해 MFCC(Mel-Frequency Cepstral Coefficient), 스펙트럴 센트로이드(Spectral Centroid), 스펙트럴 롤오프(Spectral Rolloff) 등의 기법을 사용하여 음성 신호에서 고유한 특징을 추출한 후, 딥러닝의 입력 데이터로 사용하여 수면 음성을 분석하는 특징을 가지고 있다. 다만, 이러한 종래 기술은 대규모 입력 데이터를 수집해야 하는 어려움이 존재하며, 모델을 훈련하는데 많은 시간이 필요하다는 문제점이 있다.
수면 음성 분석은 통상적으로 수면다원검사(PSG, Polysomnography) 방법으로 수면 단계를 추정하며, 공중에 마이크로폰을 설치하는 방법으로 수면 음성을 수집한다. 그러나, PSG는 지정된 특정 장소에서만 수행될 수 있으며, 사용자는 침습적인 장치를 착용한 상태로 입면해야 한다는 문제점이 존재한다.
[선행기술문헌]
한국 공개특허공보 제10-2017-0100651호
사용자의 단말기를 이용하여 수면 음성을 스스로 녹음하며, 이벤트 발생 횟수를 추정하여 수면 중 발생하는 비규칙적 이벤트에 대해 파악할 수 있는 수면 음성 분석 장치 및 방법을 제공하는데 목적이 있다.
일 양상에 따르면, 수면 음성 분석 장치는 특정 인덱스의 수면 음성 데이터 및 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함되는 수면 음성 데이터를 기초로 0 또는 1로 구성되는 이진 데이터를 생성하는 이벤트 검출부; 및 이진 데이터에 기초하여 이벤트 발생 횟수를 추정하는 계수부를 포함할 수 있다.
이벤트 검출부는 특정 인덱스의 수면 음성 데이터의 값에서 윈도우에 포함되는 수면 음성 데이터의 평균값을 뺀 값의 절대값인 제 1 값과 윈도우에 포함되는 수면 음성 데이터의 표준편차에 소정 임계값을 곱한 값인 제 2 값을 비교하여 이진 데이터의 값을 설정할 수 있다.
이벤트 검출부는 제 1 값이 제 2 값보다 큰 경우, 특정 인덱스의 수면 음성 데이터의 값과 윈도우에 포함되는 수면 음성 데이터의 평균값을 비교하여, 특정 인덱스의 수면 음성 데이터의 값이 큰 경우 특정 인덱스에 대응하는 이진 데이터의 값을 1로 설정하며, 특정 인덱스의 수면 음성 데이터의 값이 작거나 같은 경우, 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정할 수 있다.
이벤트 검출부는 수면 음성 데이터에 영향도를 반영한 값을 기초로 필터링된 음성 데이터를 생성할 수 있다.
이벤트 검출부는 제 1 값이 제 2 값보다 큰 경우, 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 특정 인덱스의 수면 음성 데이터의 값에 영향도를 곱한 값과 특정 인덱스의 직전 인덱스에 대응하는 필터링된 음성 데이터의 값에 (1-영향도)가 곱해진 값을 더한 값을 설정할 수 있다.
영향도는 0 내지 1의 값을 가지며, 필터링된 음성 데이터의 초기값은 수면 음성 데이터의 값으로 설정될 수 있다.
이벤트 검출부는 제 1 값이 제 2 값보다 작거나 같은 경우, 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정하며, 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 특정 인덱스의 수면 음성 데이터의 값을 설정할 수 있다.
수면 음성 분석 장치는 시간 도메인 및 주파수 도메인 중 적어도 하나의 도메인에서 녹음 데이터의 값이 소정 값 이하인 데이터의 값을 0으로 변환하여 수면 음성 데이터를 생성하는 전처리부를 더 포함할 수 있다.
일 양상에 따르면, 수면 음성 분석 방법은 특정 인덱스의 수면 음성 데이터 및 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함되는 수면 음성 데이터를 기초로 0 또는 1로 구성되는 이진 데이터를 생성하는 단계; 및 이진 데이터에 기초하여 이벤트 발생 횟수를 추정하는 단계를 포함할 수 있다.
사용자가 수면 음성을 녹음하여 사용자가 자각하기 힘든 수면 중 발생하는 이벤트의 비규칙성을 검출함으로써 1차성 불면증과 수면 무호흡증과 같은 수면 관련 질환을 사용자 스스로 파악할 수 있는 효과가 있다.
도 1은 일 실시예에 따른 수면 음성 분석 장치의 구성도이다.
도 2 내지 도 5는 일 예에 따른 수면 음성 분석 장치의 동작을 설명하기 위한 예시도이다.
도 6은 일 실시예에 따른 수면 음성 분석 방법을 도시한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예를 상세하게 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로, 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하, 수면 음성 분석 장치 및 방법의 실시예들을 도면들을 참고하여 자세히 설명한다.
도 1은 일 실시예에 따른 수면 음성 분석 장치의 구성도이다.
일 실시예에 따르면, 수면 음성 분석 장치(100)는 이벤트 검출부(110) 및 계수부(120)를 포함할 수 있다.
일 예에 따르면, 이벤트 검출부(110)에서는 수면 음성 데이터에 슬라이딩 윈도우를 적용하여 특이 지점을 찾을 수 있다. 이벤트 검출부(110)는 슬라이딩 윈도우의 크기, 임계값, 영향도를 기반으로 이진화 데이터와 필터링 데이터를 생성할 수 있다.
일 예를 들어, 윈도우 크기가 10인 경우, 이벤트 검출부(110)에서는 10초 단위로 수면 음성 데이터를 묶어서 처리할 수 있다. 임계값은 일종의 기준값으로써 설정된 윈도우 안에 있는 수면 음성 데이터들의 평균과 표준편차를 계산하여 임계값 이상의 신호값이 검출되는 경우 1로 설정하고, 그렇지 않은 경우 0으로 설정하는 기준값을 의미한다. 영향도는 필터링된 신호에 곱해주는 상수이며, 이는 분석 시에 수면 음성 데이터의 크기를 키우거나 줄여 사용자 마다 다른 수면 음성 데이터의 크기를 보정하기 위한 값이다. 일반적인 상황에서 영향도는 0으로 설정되며, 미리 규정된 특수한 상황에서는 미리 규정된 규칙에 따라 영향도 값이 설정될 수 있다.
일 예를 들어, 이진화 데이터는 윈도우에 포함되는 수면 음성 데이터들이 임계값을 넘어서는 경우 현재 윈도우의 시작점의 인덱스를 1로 표기하는 것을 의미한다. 예를 들어, 13초 지점까지의 윈도우가 생성되었을 때, 직전의 윈도우는 2초 내지 12초까지의 수면 음성 신호를 포함하며, 13초 지점의 수면 음성 데이터의 값이 직전 윈도우에 포함된 수면 음성 데이터들의 평균, 표준편차 등을 넘어서는 경우 13초 지점에 이진화 데이터 값을 1로 설정할 수 있다. 따라서, 이진화 데이터는 1 혹은 0으로만 표기될 수 있다.
일 예로, 이진화 데이터는 0으로 초기화되며, 필터링된 데이터는 수면 음성 데이터를 그대로 할당하여 초기화할 수 있다. 특이 지점에 대한 임계점은 전체 수면 음성 데이터의 평균과 표준편차를 기초로 설정될 수 있다.
일 예에 따르면, 이벤트 검출부(110)는 수면 음성 데이터를 1 프레임 단위로 순회하면서 신호 특이점을 검출할 수 있다. 예를 들어, 현재의 수면 음성 데이터 인덱스에서 슬라이딩 윈도우 크기 지점부터 윈도우의 총 크기의 바로 앞 1 프레임까지의 신호 평균값을 뺀 절대값이, 임계값에 윈도우 크기 지점부터 윈도우의 총 크기의 바로 앞 1 프레임까지의 수면 음성 데이터의 표준편차를 곱한 것보다 작고, 그리고 현재 윈도우 값이 윈도우의 이전 프레임의 평균보다 크다면, 이벤트 검출부(110)는 이진화 데이터에 1을 할당할 수 있다. 하지만, 작거나 같다면 이벤트 검출부(110)는 이진화 데이터에 0을 할당할 수 있다. 이후, 필터링된 신호에는 현재 윈도우에 영향도를 곱하고 (1-영향도)를 이전에 필터링된 신호에 곱한 것을 더해준다.
일 실시예에 따르면, 이벤트 검출부(110)는 특정 인덱스의 수면 음성 데이터 및 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함되는 수면 음성 데이터를 기초로 0 또는 1로 구성되는 이진 데이터를 생성할 수 있다.
도 2(a)를 참조하면, 특정 인덱스는 인덱스 p일 수 있으며, 특정 인덱스의 직전 인덱스는 인덱스 p-1일 수 있다. 이때, 윈도우는 인덱스 p-1로부터 역의 방향으로 w의 길이 만큼 설정될 수 있다. 이에 따라, 윈도우에 포함되는 수면 음성 데이터는 인덱스 p-1-w 부터 인덱스 p-1까지의 수면 음성 데이터일 수 있다.
일 실시예에 따르면, 이벤트 검출부(110)는 특정 인덱스의 수면 음성 데이터의 값에서 윈도우에 포함되는 수면 음성 데이터의 평균값을 뺀 값의 절대값인 제 1 값과 윈도우에 포함되는 수면 음성 데이터의 표준편차에 소정 임계값을 곱한 값인 제 2 값을 비교하여 이진 데이터의 값을 설정할 수 있다.
일 예로, 이벤트 검출부(110)는 특정 인덱스의 수면 음성 데이터에 대응하는 이진 데이터의 값을 설정할 수 있다. 도 2(a)를 참조하면, 이벤트 검출부(110)는 인덱스 p의 수면 음성 데이터 값에서 윈도우에 포함되는 인덱스 p-1-w 부터 p-1까지의 수면 음성 데이터의 평균값을 뺀 값을 계산할 수 있으며, 계산된 값과 윈도우에 포함되는 인덱스 p-1-w 부터 p-1까지의 수면 음성 데이터의 표준편차에 소정 임계값을 곱한 값을 비교할 수 있다. 이는 다음과 같이 수학식으로 나타낼 수 있다.
Figure 112022005342619-pat00001
여기서, p는 현재 인덱스이며,
Figure 112022005342619-pat00002
Figure 112022005342619-pat00003
는 다음과 같이 정의될 수 있다.
Figure 112022005342619-pat00004
Figure 112022005342619-pat00005
여기서, N은 수면 음성 데이터의 전체 길이이다.
일 실시예에 따르면, 이벤트 검출부(110)는 특정 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함된 하나 이상의 수면 음성 데이터 각각에 대하여 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함되는 수면 음성 데이터 수면 음성 데이터의 평균값을 뺀 값의 절대값의 합이 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 윈도우에 포함되는 수면 음성 데이터의 표준편차에 소정 임계값을 곱한 값보다 큰지 여부에 따라 이진 데이터의 값을 설정할 수 있다. 이는 다음 수학식과 같이 나타낼 수 있다.
Figure 112022005342619-pat00006
여기서, N은 수면 음성 데이터의 전체 길이이다.
일 예를 들어, 도 2(a)를 참조하면, 특정 인덱스는 인덱스 p일 수 있으며, 특정 인덱스에 대한 윈도우는 인덱스 p로부터 역의 방향으로 w의 길이 만큼 설정될 수 있다. 또한, 특정 인덱스의 직전 인덱스는 인덱스 p-1일 수 있으며, 특정 인덱스의 직전 인덱스에 대한 윈도우는 인덱스 p-1로부터 역의 방향으로 w의 길이 만큼 설정될 수 있다. 이에 따라, 특정 인덱스에 대한 윈도우에 포함되는 수면 음성 데이터는 인덱스 p-w 부터 인덱스 p까지의 수면 음성 데이터일 수 있으며, 특정 인덱스의 직전 인덱스에 대한 윈도우에 포함되는 수면 음성 데이터는 인덱스 p-1-w 부터 인덱스 p-1까지의 수면 음성 데이터일 수 있다.
일 실시예에 따르면, 이벤트 검출부(110)는 제 1 값이 제 2 값보다 큰지 여부에 따라 이진 데이터를 설정할 수 있다. 일 예로, 제 1 값이 제 2 값보다 큰 경우는 위의 수학식 1 또는 수학식 3을 만족하는 경우일 수 있다.
일 실시예에 따르면, 일 실시예에 따르면, 이벤트 검출부(110)는 제 1 값이 제 2 값보다 큰 경우, 특정 인덱스의 수면 음성 데이터의 값과 윈도우에 포함되는 수면 음성 데이터의 평균값을 비교하여, 특정 인덱스의 수면 음성 데이터의 값이 큰 경우 특정 인덱스에 대응하는 이진 데이터의 값을 1로 설정할 수 있으며, 특정 인덱스의 수면 음성 데이터의 값이 작거나 같은 경우, 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정할 수 있다. 구체적으로 이진 데이터는 다음 수학식과 같이 정의될 수 있다.
Figure 112022005342619-pat00007
예를 들어, 인덱스 p에 대한 이진 데이터
Figure 112022005342619-pat00008
는 특정 인덱스의 수면 음성 데이터의 값
Figure 112022005342619-pat00009
와 윈도우에 포함되는 수면 음성 데이터의 평균값
Figure 112022005342619-pat00010
를 비교하여 결정될 수 있다.
일 실시예에 따르면, 이벤트 검출부(110)는 제 1 값이 제 2 값보다 작거나 같은 경우, 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정할 수 있다. 구체적으로, 이진 데이터가 1로 설정되기 위해서는 수학식 1 또는 수학식 3의 조건이 만족되고 추가적으로 수학식 4의 조건이 만족되어야 한다. 반면, 수학식 1 또는 수학식 3의 조건이 만족되지 않는 경우, 즉, 제 1 값이 제 2 값보다 작거나 같은 경우, 이진 데이터는 수학식 4의 조건과 무관하게 0으로 설정될 수 있다.
일 실시예에 따르면, 이벤트 검출부(110)는 수면 음성 데이터에 영향도를 반영한 값을 기초로 필터링된 음성 데이터를 생성할 수 있다.
일 예로, 영향도는 필터링된 신호에 곱해주는 상수이며, 이는 분석 시에 수면 음성 데이터의 크기를 키우거나 줄여 사용자 마다 다른 수면 음성 데이터의 크기를 보정하기 위한 값이다. 일반적인 상황에서 영향도는 0으로 설정되며, 미리 규정된 특수한 상황에서는 미리 규정된 규칙에 따라 영향도 값이 설정될 수 있다. 예를 들어, 영향도는 0 내지 1의 값을 가질 수 있다.
일 실시예에 따르면, 이벤트 검출부(110)는 제 1 값이 제 2 값보다 큰 경우, 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 특정 인덱스의 수면 음성 데이터의 값에 영향도를 곱한 값과 특정 인덱스의 직전 인덱스에 대응하는 필터링된 음성 데이터의 값에 (1-영향도)가 곱해진 값을 더한 값을 설정할 수 있다. 예를 들어, 필터링된 음성 데이터는 다음과 같이 나타낼 수 있다.
Figure 112022005342619-pat00011
일 예를 들어, 영향도가 0인 경우, 인덱스 p에 대한 필터링된 음성 데이터는 직전 인덱스 p-1에 대한 필터링된 음성 데이터가 입력된다. 다시 말해, 제 1 값이 제 2 값보다 큰 경우, 필터링된 음성 데이터는
Figure 112022005342619-pat00012
가 될 수 있다. 반면, 영향도가 1인 경우, 인덱스 p에 대한 필터링된 음성 데이터는 인덱스 p에 대한 수면 음성 데이터가 입력된다.
일 실시예에 따르면, 이벤트 검출부(110)는 제 1 값이 제 2 값보다 작거나 같은 경우, 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 특정 인덱스의 수면 음성 데이터의 값을 설정할 수 있다. 예를 들어, 제 1 값이 제 2 값보다 작거나 같은 경우, 필터링된 음성 데이터는
Figure 112022005342619-pat00013
가 될 수 있다.
일 예를 들어, 제 1 값이 제 2 값보다 큰 경우란 특정 인덱스의 수면 음성 데이터의 값이 매우 큰 값을 갖는 것을 의미할 수 있다. 따라서, 해당 특정 인덱스의 수면 음성 데이터를 반영하여 평균 및 표준편차를 계산하는 경우 평균 및 표준편차가 전체적으로 증가될 수 있으며, 이로 인하여 수학식 1 또는 수학식 3의 판단에 영향을 줄 수 있다.
이에 따라, 제 1 값이 제 2 값보다 큰 경우 특정 인덱스의 수면 음성 데이터가 아닌, 직전 인덱스의 값을 반영할 수 있도록 필터링된 음성 신호를
Figure 112022005342619-pat00014
와 같이 정의할 수 있다. 반면, 제 1 값이 제 2 값보다 작거나 같은 경우, 위와 같이 하나의 수면 음성 데이터에 의해 평균 및 표준편차가 영향을 받을 가능성이 작은 바, 수면 음성 데이터를 반영하여 필터링된 음성 신호를
Figure 112022005342619-pat00015
와 같이 정의 할 수 있다.
일 실시예에 따르면, 필터링된 음성 데이터의 초기값은 수면 음성 데이터의 값으로 설정될 수 있다. 예를 들어, 필터링된 음성 데이터는 수면 음성 데이터로 초기화 될 수 있으며, 제 1 값이 제 2 값보다 큰 경우에만 해당 특정 인덱스의 필터링된 음성 데이터를 수학식 5를 반영하여 변경할 수 있다.
일 실시예에 따르면, 수면 음성 분석 장치(100)는 시간 도메인 및 주파수 도메인 중 적어도 하나의 도메인에서 녹음 데이터의 값이 소정 값 이하인 데이터의 값을 0으로 변환하여 수면 음성 데이터를 생성하는 전처리부(미도시)를 더 포함할 수 있다.
일 예에 따르면, 전처리부는 시간 도메인에서 녹음 데이터의 값이 소정 값 이하인 데이터의 값을 0으로 변환하여 배경 소음을 억제할 수 있다.
일 예에 따르면, 전처리부는 주파수 도메인에서 녹음 데이터의 값이 소정 값 이하인 데이터의 값을 0으로 변환하여 배경 소음을 억제할 수 있다. 전처리부는 배경 소음이 억제된 녹음 데이터에서 스펙트로그램(spectrogram)을 추출할 수 있다. 또한, 전처리부는 주파수 범위를 한정하기 위해 0~샘플링레이트(sampling rate)/2의 범위를 패스트 푸리에 변환(FFT, Fast Fourier Transform) 연산 단위의 절반 만큼의 요소가 배치될 수 있도록 배열을 생성할 수 있다. 전처리부는 스펙트로그램으로 변환된 음성 신호의 주파수 에너지의 총량을 계산하기 위해 누적합을 계산하며, 계산된 누적합의 배열에서 임계 지점을 찾기 위한 상수를 지정할 수 있다. 여기서, 임계 지점은 90%(0.90) 미만으로 설정하고, 임계 지점보다 작은 주파수들은 0으로 할당할 수 있다.
일 예에 따르면, 전처리부는 음성 신호에서 주파수의 최고점과 최저점을 이용하여 0~1 사이로 스케일 변환을 수행할 수 있다. 이는 다음과 같이 나타낼 수 있다.
Figure 112022005342619-pat00016
일 실시예에 따르면, 계수부(120)는 이진 데이터에 기초하여 이벤트 발생 횟수를 추정할 수 있다.
일 예에 따르면, 계수부(120)는 이벤트 검출부(110)에서 산출한 이진화 데이터를 사용하여 이벤트 횟수를 추정할 수 있다. 이를 위하여 계수부(120)는 경계면 이벤트 검출용 변수를 선언하며, 이진화 데이터를 순회하면서 각 프레임 인덱스 마다 값을 비교할 수 있다. 현재의 데이터 값과 이전까지의 데이터 값이 다른 경우, 계수부(120)는 경계면 검출 변수에 1을 더할 수 있다. 이후, 경계면 검출 변수가 2가 되는 경우, 계수부(120)는 이벤트 검출 변수에 1을 더하고, 경계면 검출 변수를 0으로 초기화할 수 있다.
일 예에 따르면, 계수부(120)는 산출된 이벤트 발생 횟수를 개인별 데이터베이스에 저장할 수 있다. 또한, 계수부(120)는 개인별 이벤트 발생 횟수를 데이터로 기록하고, 1차 특징점으로 설정할 수 있다.
도 2(b)는 수면 음성 데이터에서의 이벤트를 검출한 예를 나타낸다. 도 2(b)에서 파란색 선은 수면 음성 데이터의 파형을 나타낸 것이며, 적색 선은 이벤트 검출부(110)에서 생성한 이진화 데이터를 나타낸 것이다.
도 3(a)에서 도 3(d)에 이르는 그래프는 전처리부와 계수부에서 사용되는 상수에 대한 실험결과를 나타낸 것이다. 일 예로, C는 전처리부에서의 노이즈 감소용 상수이며, B는 계수부에서 사용하는 그래프 변곡점 확인용 변수이다. 또한, 그래프는 X축을 샘플의 종류, 좌측 Y축은 절대오류(청색)를 퍼센트(%)로 나타낸 것이며, 우측 Y축은 평균 제곱근 오차(RMSE, Root Mean Squared Error)를 로그 스케일(적색)로 나타낸 것이다. 각 오류의 기준은 사람 직접 확인한 이벤트 횟수 대비 일 실시예에 따른 과정에 따른 이벤트 검출 값으로 판단한다.
도 3(a)는 C를 0.05, B를 2와 3으로 설정했을 때의 결과를 나타낸다. 이 경우, 절대오차와 평균 제곱근 오차가 더 작은 C=0.05, B=3의 설정이 이벤트 검출에 유리함을 보였다.
도 3(b)는 C를 0.10, B를 2와 3으로 설정했을 때의 결과를 나타낸다. 그 결과, 도 3(a)과 유사하게 절대오차와 평균 제곱근 오차가 더 작은 C=0.10, B=3의 설정이 이벤트 검출에 유리함을 보였다. 도 3(b)의 C=0.10, B=2 그래프에서, 10분 샘플의 그래프가 표기되지 않은 이유는 일 실시예의 수행에서 정확하게 예측(절대오차 0%, 평균 제곱근 오차 0.0)을 했기 때문이다.
도 3(c)는 C를 0.15, B를 2와 3으로 설정했을 때의 결과를 나타낸다. 도 3(a), 도 3(b)와 비교하여 도 3(c)에서는 C=0.15, B=2의 설정이 이벤트 검출에 유리함을 보였다. 또한, 절대오차와 평균 제곱근 오차의 범위도 더욱 작아진 결과를 보이고 있다.
도 3(d)는 C를 0.20, B를 2와 3으로 설정했을 때의 결과를 나타낸다. 도 3(d)는 도 3(c)의 결과와 마찬가지로 B=2로 설정했을 때의 결과가 더 나은 것을 볼 수 있으나, 4분 샘플에서는 그 성능이 미치지 못하는 모습을 보이고 있다.
상기 도 3(a) 내지 도 3(d)에 이르는 결과에 분석하면, C=0.15, B=2의 설정이 일 실시예에서 구현하는 이벤트 검출 과정에 가장 유리한 설정값 임을 볼 수 있다.
일 예에 따르면, 샘플 기준이 아닌, C를 기준으로 B 값의 변화에 따른 오차들의 평균을 비교할 수 있다.
도 4(a) C 값에 따른 B의 설정에 대한 평균 절대 오차와 평균 제곱근 오차를 비교 분석한 것이다. 도 4(a)에 따르면 C 값이 0.10, 0.15, 0.20이고, B가 2일 때의 오차가 가장 적은 것으로 나타난다. 평균 제곱근 오차 또한, B가 3일 때에 비하여 B가 2일 때 더 작은 오차를 보이고 있다.
일 예로, B가 2일 때의 평균 오류의 정도를 비교하면, 도 4(b)에서 나타나는 바와 같이 C가 0.15, 0.20일 때가 최적의 성능을 보이는 것을 확인할 수 있다.
일 예에 따르면, 도 3 내지 도 4의 결과를 분석하면, C=0.15, B=2로 설정하는 경우, 최적의 성능을 구현할 수 있는 바, 전처리부와 계수부에서 사용되는 상수를 C=0.15, B=2로 설정할 수 있다.
도 5는 일 예에 따른 각 샘플의 연산 시간을 나타낸 것이다. 예를 들어, 연산 시간은 샘플 파일을 메모리로 읽어오는 시간을 포함하며, 최종 이벤트 발생 횟수를 도출하기까지의 시간을 나타낸 것이다. 도 5를 참조하면, 샘플의 길이에 따라 연산 시간이 증가함을 알 수 있으며, 이는 알고리즘에 병렬 처리가 적용되어 있지 않기 때문이다. 이에 따라, GPU를 사용한 대규모 병렬 처리를 이용하는 경우, 도 5에서 나타내는 연산 시간의 1/10 수준으로 이벤트를 검출할 수 있다.
도 6은 일 실시예에 따른 수면 음성 분석 방법을 도시한 흐름도이다.
일 실시예에 따르면, 수면 음성 분석 장치는 특정 인덱스의 수면 음성 데이터 및 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함되는 수면 음성 데이터를 기초로 0 또는 1로 구성되는 이진 데이터를 생성할 수 있다(610).
일 예에 따르면, 수면 음성 분석 장치는 특정 인덱스의 수면 음성 데이터의 값에서 윈도우에 포함되는 수면 음성 데이터의 평균값을 뺀 값의 절대값인 제 1 값과 윈도우에 포함되는 수면 음성 데이터의 표준편차에 소정 임계값을 곱한 값인 제 2 값을 비교하여 이진 데이터의 값을 설정할 수 있다.
일 예에 따르면, 수면 음성 분석 장치는 제 1 값이 제 2 값보다 큰 경우, 특정 인덱스의 수면 음성 데이터의 값과 윈도우에 포함되는 수면 음성 데이터의 평균값을 비교하여, 특정 인덱스의 수면 음성 데이터의 값이 큰 경우 특정 인덱스에 대응하는 이진 데이터의 값을 1로 설정하며, 특정 인덱스의 수면 음성 데이터의 값이 작거나 같은 경우, 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정할 수 있다.
일 예에 따르면, 수면 음성 분석 장치는 수면 음성 데이터에 영향도를 반영한 값을 기초로 필터링된 음성 데이터를 생성할 수 있다.
일 예에 따르면, 수면 음성 분석 장치는 제 1 값이 제 2 값보다 큰 경우, 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 특정 인덱스의 수면 음성 데이터의 값에 영향도를 곱한 값과 특정 인덱스의 직전 인덱스에 대응하는 필터링된 음성 데이터의 값에 (1-영향도)가 곱해진 값을 더한 값을 설정할 수 있다.
일 예에 따르면, 영향도는 0 내지 1의 값을 가지며, 필터링된 음성 데이터의 초기값은 수면 음성 데이터의 값으로 설정될 수 있다.
일 예에 따르면, 수면 음성 분석 장치는 제 1 값이 제 2 값보다 작거나 같은 경우, 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정하며, 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 특정 인덱스의 수면 음성 데이터의 값을 설정할 수 있다.
일 예에 따르면, 수면 음성 분석 장치는 시간 도메인 및 주파수 도메인 중 적어도 하나의 도메인에서 녹음 데이터의 값이 소정 값 이하인 데이터의 값을 0으로 변환하여 수면 음성 데이터를 생성할 수 있다.
일 실시예에 따르면, 수면 음성 분석 장치는 이진 데이터에 기초하여 이벤트 발생 횟수를 추정할 수 있다(620).
일 예에 따르면, 수면 음성 분석 장치는 산출한 이진화 데이터를 사용하여 이벤트 횟수를 추정할 수 있다. 이를 위하여 수면 음성 분석 장치는 경계면 이벤트 검출용 변수를 선언하며, 이진화 데이터를 순회하면서 각 프레임 인덱스 마다 값을 비교할 수 있다. 현재의 데이터 값과 이전까지의 데이터 값이 다른 경우, 수면 음성 분석 장치는 경계면 검출 변수에 1을 더할 수 있다. 이후, 경계면 검출 변수가 2가 되는 경우, 수면 음성 분석 장치는 이벤트 검출 변수에 1을 더하고, 경계면 검출 변수를 0으로 초기화할 수 있다.
본 발명의 일 양상은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 상기의 프로그램을 구현하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함할 수 있다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 디스크 등을 포함할 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드로 작성되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시 예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.
100: 수면 음성 분석 장치
110: 이벤트 검출부
120: 계수부

Claims (16)

  1. 특정 인덱스의 수면 음성 데이터 및 상기 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함되는 수면 음성 데이터를 기초로 0 또는 1로 구성되는 이진 데이터를 생성하는 이벤트 검출부; 및
    상기 이진 데이터에 기초하여 이벤트 발생 횟수를 추정하는 계수부를 포함하고,
    상기 이벤트 검출부는,
    상기 특정 인덱스의 수면 음성 데이터의 값에서 상기 윈도우에 포함되는 수면 음성 데이터의 평균값을 뺀 값의 절대값인 제 1 값과 상기 윈도우에 포함되는 수면 음성 데이터의 표준편차에 소정 임계값을 곱한 값인 제 2 값을 비교하여 이진 데이터의 값을 설정하고,
    상기 이벤트 검출부는,
    상기 제 1 값이 상기 제 2 값보다 큰 경우,
    상기 특정 인덱스의 수면 음성 데이터의 값과 상기 윈도우에 포함되는 수면 음성 데이터의 평균값을 비교하여,
    상기 특정 인덱스의 수면 음성 데이터의 값이 큰 경우 상기 특정 인덱스에 대응하는 이진 데이터의 값을 1로 설정하며,
    상기 특정 인덱스의 수면 음성 데이터의 값이 작거나 같은 경우, 상기 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정하는, 수면 음성 분석 장치.
  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 이벤트 검출부는
    상기 수면 음성 데이터에 영향도를 반영한 값을 기초로 필터링된 음성 데이터를 생성하는, 수면 음성 분석 장치.
  5. 제 4 항에 있어서,
    상기 이벤트 검출부는
    상기 제 1 값이 상기 제 2 값보다 큰 경우,
    상기 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 아래 수학식과 같이 상기 특정 인덱스의 수면 음성 데이터의 값에 영향도를 곱한 값과 상기 특정 인덱스의 직전 인덱스에 대응하는 필터링된 음성 데이터의 값에 (1-영향도)가 곱해진 값을 더한 값을 설정하는, 수면 음성 분석 장치.
    Figure 112022005342619-pat00017

    여기서, I는 영향도를 의미한다.
  6. 제 5 항에 있어서,
    상기 영향도는 0 내지 1의 값을 가지며,
    상기 필터링된 음성 데이터의 초기값은 상기 수면 음성 데이터의 값으로 설정되는, 수면 음성 분석 장치.
  7. 제 4 항에 있어서,
    상기 이벤트 검출부는
    상기 제 1 값이 상기 제 2 값보다 작거나 같은 경우,
    상기 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정하며,
    상기 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 상기 특정 인덱스의 수면 음성 데이터의 값을 설정하는, 수면 음성 분석 장치.
  8. 제 1 항에 있어서,
    시간 도메인 및 주파수 도메인 중 적어도 하나의 도메인에서 녹음 데이터의 값이 소정 값 이하인 데이터의 값을 0으로 변환하여 수면 음성 데이터를 생성하는 전처리부를 더 포함하는, 수면 음성 분석 장치.
  9. 특정 인덱스의 수면 음성 데이터 및 상기 특정 인덱스의 직전 인덱스로부터 역의 방향으로 설정된 소정 길이의 윈도우에 포함되는 수면 음성 데이터를 기초로 0 또는 1로 구성되는 이진 데이터를 생성하는 단계; 및
    상기 이진 데이터에 기초하여 이벤트 발생 횟수를 추정하는 단계;를 포함하고,
    상기 이진 데이터를 생성하는 단계는,
    상기 특정 인덱스의 수면 음성 데이터의 값에서 상기 윈도우에 포함되는 수면 음성 데이터의 평균값을 뺀 값의 절대값인 제 1 값과 상기 윈도우에 포함되는 수면 음성 데이터의 표준편차에 소정 임계값을 곱한 값인 제 2 값을 비교하여 이진 데이터의 값을 설정하고,
    상기 이진 데이터를 생성하는 단계는,
    상기 제 1 값이 상기 제 2 값보다 큰 경우,
    상기 특정 인덱스의 수면 음성 데이터의 값과 상기 윈도우에 포함되는 수면 음성 데이터의 평균값을 비교하여,
    상기 특정 인덱스의 수면 음성 데이터의 값이 큰 경우 상기 특정 인덱스에 대응하는 이진 데이터의 값을 1로 설정하며,
    상기 특정 인덱스의 수면 음성 데이터의 값이 작거나 같은 경우, 상기 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정하는, 수면 음성 분석 방법.
  10. 삭제
  11. 삭제
  12. 제 9 항에 있어서,
    상기 이진 데이터를 생성하는 단계는
    상기 수면 음성 데이터에 영향도를 반영한 값을 기초로 필터링된 음성 데이터를 생성하는, 수면 음성 분석 방법.
  13. 제 12 항에 있어서,
    상기 이진 데이터를 생성하는 단계는
    상기 제 1 값이 상기 제 2 값보다 큰 경우,
    상기 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 아래 수학식과 같이 상기 특정 인덱스의 수면 음성 데이터의 값에 영향도를 곱한 값과 상기 특정 인덱스의 직전 인덱스에 대응하는 필터링된 음성 데이터의 값에 (1-영향도)가 곱해진 값을 더한 값을 설정하는, 수면 음성 분석 방법.
    Figure 112022005342619-pat00018

    여기서, I는 영향도를 의미한다.
  14. 제 13 항에 있어서,
    상기 영향도는 0 내지 1의 값을 가지며,
    상기 필터링된 음성 데이터의 초기값은 상기 수면 음성 데이터의 값으로 설정되는, 수면 음성 분석 방법.
  15. 제 12 항에 있어서,
    상기 이진 데이터를 생성하는 단계는
    상기 제 1 값이 상기 제 2 값보다 작거나 같은 경우,
    상기 특정 인덱스에 대응하는 이진 데이터의 값을 0으로 설정하며,
    상기 특정 인덱스에 대응하는 필터링된 음성 데이터의 값으로 상기 특정 인덱스의 수면 음성 데이터의 값을 설정하는, 수면 음성 분석 방법.
  16. 제 9 항에 있어서,
    시간 도메인 및 주파수 도메인 중 적어도 하나의 도메인에서 녹음 데이터의 값이 소정 값 이하인 데이터의 값을 0으로 변환하여 수면 음성 데이터를 생성하는 전처리부를 더 포함하는, 수면 음성 분석 방법.
KR1020220006097A 2022-01-14 2022-01-14 수면 음성 분석 장치 및 방법 KR102443221B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220006097A KR102443221B1 (ko) 2022-01-14 2022-01-14 수면 음성 분석 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220006097A KR102443221B1 (ko) 2022-01-14 2022-01-14 수면 음성 분석 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102443221B1 true KR102443221B1 (ko) 2022-09-14

Family

ID=83279570

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220006097A KR102443221B1 (ko) 2022-01-14 2022-01-14 수면 음성 분석 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102443221B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060023907A (ko) * 2004-09-11 2006-03-15 엘지전자 주식회사 몸상태를 측정하는 이동통신 단말기 및 몸상태 측정방법
KR20170100651A (ko) * 2014-12-30 2017-09-04 닛토덴코 가부시키가이샤 수면 모니터링을 위한 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060023907A (ko) * 2004-09-11 2006-03-15 엘지전자 주식회사 몸상태를 측정하는 이동통신 단말기 및 몸상태 측정방법
KR20170100651A (ko) * 2014-12-30 2017-09-04 닛토덴코 가부시키가이샤 수면 모니터링을 위한 장치 및 방법

Similar Documents

Publication Publication Date Title
US11670325B2 (en) Voice activity detection using a soft decision mechanism
KR100873396B1 (ko) 오디토리 이벤트에 기초한 특성을 이용하여 오디오를비교하는 방법
US8160877B1 (en) Hierarchical real-time speaker recognition for biometric VoIP verification and targeting
KR101437830B1 (ko) 음성 구간 검출 방법 및 장치
US8140331B2 (en) Feature extraction for identification and classification of audio signals
US8586847B2 (en) Musical fingerprinting based on onset intervals
US7809554B2 (en) Apparatus, method and medium for detecting voiced sound and unvoiced sound
US20070129941A1 (en) Preprocessing system and method for reducing FRR in speaking recognition
KR100930060B1 (ko) 신호 검출 방법, 장치 및 그 방법을 실행하는 프로그램이기록된 기록매체
JP3913772B2 (ja) 音識別装置
CN111279414B (zh) 用于声音场景分类的基于分段的特征提取
CN108538312B (zh) 基于贝叶斯信息准则的数字音频篡改点自动定位的方法
CN109801646B (zh) 一种基于融合特征的语音端点检测方法和装置
KR101888058B1 (ko) 발화된 단어에 기초하여 화자를 식별하기 위한 방법 및 그 장치
WO2017045429A1 (zh) 一种音频数据的检测方法、系统及存储介质
KR100717401B1 (ko) 역방향 누적 히스토그램을 이용한 음성 특징 벡터의 정규화방법 및 그 장치
KR102314824B1 (ko) 딥러닝 기반 감지상황에서의 음향 사건 탐지 방법
CN112992153B (zh) 音频处理方法、声纹识别方法、装置、计算机设备
CN104036785A (zh) 语音信号的处理方法和装置、以及语音信号的分析系统
KR100930061B1 (ko) 신호 검출 방법 및 장치
KR102443221B1 (ko) 수면 음성 분석 장치 및 방법
KR101671305B1 (ko) 입력 신호의 특징 파라미터 추출 장치 및 그를 이용한 화자 인식 장치
Sukor et al. Speaker identification system using MFCC procedure and noise reduction method
CN112992175B (zh) 一种语音区分方法及其语音记录装置
US10109298B2 (en) Information processing apparatus, computer readable storage medium, and information processing method

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant