KR101564151B1 - 시간 변화 정보를 갖는 기저 함수를 사용한 음악 신호의 분해 - Google Patents
시간 변화 정보를 갖는 기저 함수를 사용한 음악 신호의 분해 Download PDFInfo
- Publication number
- KR101564151B1 KR101564151B1 KR1020137013307A KR20137013307A KR101564151B1 KR 101564151 B1 KR101564151 B1 KR 101564151B1 KR 1020137013307 A KR1020137013307 A KR 1020137013307A KR 20137013307 A KR20137013307 A KR 20137013307A KR 101564151 B1 KR101564151 B1 KR 101564151B1
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- basis functions
- signal representation
- segments
- corresponding signal
- Prior art date
Links
- 230000006870 function Effects 0.000 title claims description 179
- 238000000354 decomposition reaction Methods 0.000 title abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 105
- 239000013598 vector Substances 0.000 claims description 110
- 230000004913 activation Effects 0.000 claims description 67
- 230000005236 sound signal Effects 0.000 claims description 49
- 230000008859 change Effects 0.000 claims description 13
- 239000011159 matrix material Substances 0.000 claims description 11
- 230000009467 reduction Effects 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000011084 recovery Methods 0.000 abstract description 15
- 239000011295 pitch Substances 0.000 description 40
- 230000003595 spectral effect Effects 0.000 description 36
- 238000001514 detection method Methods 0.000 description 22
- 238000012805 post-processing Methods 0.000 description 22
- 238000003860 storage Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 238000003491 array Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 13
- 238000000926 separation method Methods 0.000 description 13
- 239000002131 composite material Substances 0.000 description 10
- 230000000694 effects Effects 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 8
- 230000000977 initiatory effect Effects 0.000 description 7
- 238000009527 percussion Methods 0.000 description 6
- 238000001228 spectrum Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 4
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 4
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 4
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000011435 rock Substances 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012880 independent component analysis Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000001755 vocal effect Effects 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000004480 active ingredient Substances 0.000 description 1
- 239000005441 aurora Substances 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000002243 precursor Substances 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000004445 quantitative analysis Methods 0.000 description 1
- 238000011158 quantitative evaluation Methods 0.000 description 1
- 238000007430 reference method Methods 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000011144 upstream manufacturing 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
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0272—Voice signal separating
-
- 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
-
- 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/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
-
- 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/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
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)
- Quality & Reliability (AREA)
- Auxiliary Devices For Music (AREA)
Abstract
기저 함수 인벤토리 및 희소 복구 기법을 사용한 다중 음원 신호의 분해가 개시되어 있다.
Description
미국 특허법 제119조 하에서의 우선권 주장
본 특허 출원은 2010년 10월 25일자로 출원되고 본 출원의 양수인에게 양도된, 발명의 명칭이 "음악 응용 프로그램에 대한 CASA(COMPUTATIONAL AUDITORY SCENE ANALYSIS, 계산적 청각 장면 분석): 기저 함수 인벤토리 및 희소 복구를 사용한 음악 신호의 분해(CASA(COMPUTATIONAL AUDITORY SCENE ANALYSIS) FOR MUSIC APPLICATIONS: DECOMPOSITION OF MUSIC SIGNALS USING BASIS FUNCTION INVENTORY AND SPARSE RECOVERY)"인 미국 가특허 출원 제61/406,376호를 기초로 우선권을 주장한다.
본 개시 내용은 오디오 신호 처리에 관한 것이다.
단일 사용자 경우를 위한 휴대용 디바이스(예컨대, 스마트폰, 넷북, 랩톱, 태블릿 컴퓨터) 또는 비디오 게임 콘솔 상의 많은 음악 응용 프로그램이 이용가능하다. 이들 경우에, 디바이스의 사용자는 멜로디를 흥얼거리거나, 노래를 부르거나, 악기를 연주하고, 그 동안에 디바이스는 얻어진 오디오 신호를 녹음한다. 녹음된 신호는 이어서 그의 피치/음표 높낮이(pitch/note contour)에 대해 응용 프로그램에 의해 분석될 수 있고, 사용자는 높낮이를 교정하거나 다른 방식으로 변경하는 것, 그 신호를 상이한 피치 또는 악기 음색과 업믹싱(upmixing)하는 것 등과 같은 처리 동작을 선택할 수 있다. 이러한 응용 프로그램의 예로는 QUSIC 응용 프로그램(미국 캘리포니아주 샌디에고 소재의 QUALCOMM Incorporated); Guitar Hero 및 Rock Band(미국 메사추세츠주 캠브리지 소재의 Harmonix Music Systems)와 같은 비디오 게임; 및 가라오케, 원맨밴드(one-man-band), 및 기타 녹음 응용 프로그램이 있다.
많은 비디오 게임(예컨대, Guitar Hero, Rock Band) 및 콘서트 음악 장면은 동시에 연주하는 다수의 악기 및 보컬리스트를 수반할 수 있다. 현재의 상용 게임 및 음악 제작 시스템은 이들 시나리오가 순차적으로 재생되거나, 가까이 배치된 마이크들을 사용하여 이들을 개별적으로 분석, 후처리 및 업믹싱할 수 있을 것을 필요로 한다. 이들 제약 조건은 음악 제작의 경우에 간섭을 제어하고 및/또는 공간 효과를 녹음하는 능력을 제한할 수 있고, 그 결과 비디오 게임의 경우에 제한된 사용자 경험이 얻어질 수 있다.
일반 구성에 따른 오디오 신호를 분해하는 방법은 오디오 신호의 복수의 시간 세그먼트(segment in time) 각각에 대해, 일정 범위의 주파수에 걸쳐 대응하는 신호 표현을 계산하는 단계를 포함한다. 이 방법은 또한 복수의 계산된 신호 표현 및 복수의 기저 함수(basis function)에 기초하여, 활성화 계수(activation coefficient)의 벡터를 계산하는 단계를 포함한다. 이 방법에서, 벡터의 각각의 활성화 계수는 복수의 기저 함수 중의 상이한 기저 함수에 대응하고, 복수의 기저 함수 각각은 일정 범위의 주파수에 걸친 제1 대응하는 신호 표현 및 상기 제1 대응하는 신호 표현과 상이한, 일정 범위의 주파수에 걸친 제2 대응하는 신호 표현을 포함한다. 특징을 판독하는 머신으로 하여금 이러한 방법을 수행하게 하는 유형적 특징을 가지는 컴퓨터 판독가능 저장 매체(예컨대, 비일시적 매체)가 또한 개시되어 있다.
일반 구성에 따른 오디오 신호를 분해하는 장치는 오디오 신호의 복수의 시간 세그먼트 각각에 대해, 일정 범위의 주파수에 걸쳐 대응하는 신호 표현을 계산하는 수단; 및 복수의 계산된 신호 표현 및 복수의 기저 함수에 기초하여, 활성화 계수들의 벡터를 계산하는 수단을 포함한다. 이 장치에서, 벡터의 각각의 활성화 계수는 복수의 기저 함수 중의 상이한 기저 함수에 대응하고, 복수의 기저 함수 각각은 일정 범위의 주파수에 걸친 제1 대응하는 신호 표현 및 상기 제1 대응하는 신호 표현과 상이한, 일정 범위의 주파수에 걸친 제2 대응하는 신호 표현을 포함한다.
다른 일반 구성에 따른 오디오 신호를 분해하는 장치는 오디오 신호의 복수의 시간 세그먼트 각각에 대해, 일정 범위의 주파수에 걸쳐 대응하는 신호 표현을 계산하도록 구성되어 있는 변환 모듈; 및 복수의 계산된 신호 표현 및 복수의 기저 함수에 기초하여, 활성화 계수들의 벡터를 계산하도록 구성되어 있는 계수 벡터 계산기를 포함한다. 이 장치에서, 벡터의 각각의 활성화 계수는 복수의 기저 함수 중의 상이한 기저 함수에 대응하고, 복수의 기저 함수 각각은 일정 범위의 주파수에 걸친 제1 대응하는 신호 표현 및 상기 제1 대응하는 신호 표현과 상이한, 일정 범위의 주파수에 걸친 제2 대응하는 신호 표현을 포함한다.
도 1a는 일반 구성에 따른 방법(M100)의 플로우차트.
도 1b는 방법(M100)의 구현예(M200)의 플로우차트.
도 1c는 일반 구성에 따른 오디오 신호를 분해하는 장치(MF100)의 블록도.
도 1d는 다른 일반 구성에 따른 오디오 신호를 분해하는 장치(A100)의 블록도.
도 2a는 방법(M100)의 구현예(M300)의 플로우차트.
도 2b는 장치(A100)의 구현예(A300)의 블록도.
도 2c는 장치(A100)의 다른 구현예(A310)의 블록도.
도 3a는 방법(M200)의 구현예(M400)의 플로우차트.
도 3b는 방법(M200)의 구현예(M500)의 플로우차트.
도 4a는 방법(M100)의 구현예(M600)의 플로우차트.
도 4b는 장치(A100)의 구현예(A700)의 블록도.
도 5는 장치(A100)의 구현예(A800)의 블록도.
도 6은 기저 함수 인벤토리(basis function inventory)의 제2 예를 나타낸 도면.
도 7은 화성 경적(harmonic honk)과 함께 음성의 스펙트럼 사진(spectrogram)을 나타낸 도면.
도 8은 도 6의 인벤토리에서 도 7의 스펙트럼 사진의 희소 표현(sparse representation)을 나타낸 도면.
도 9는 모델 Bf = y를 나타낸 도면.
도 10은 방법(M100)에 의해 생성되는 분리 결과의 플롯을 나타낸 도면.
도 11은 도 9의 모델의 수정 B'f = y를 나타낸 도면.
도 12는 피아노와 플루트에 대한 음표의 펜던시(pendency) 동안 기저 함수의 시간 영역 변화(time-domain evolution)의 플롯을 나타낸 도면.
도 13은 방법(M400)에 의해 생성되는 분리 결과의 플롯을 나타낸 도면.
도 14는 음표 F5에서의 피아노 및 플루트에 대한 기저 함수의 플롯(좌측) 및 음표 F5에서의 피아노 및 플루트에 대한 프리엠퍼시스된(pre-emphasized) 기저 함수의 플롯(우측)을 나타낸 도면.
도 15는 다수의 음원이 활성인 시나리오를 나타낸 도면.
도 16은 음원들이 서로 가까이 위치하고 한 음원이 다른 음원의 후방에 위치하는 시나리오를 나타낸 도면.
도 17은 개개의 공간 클러스터(spatial cluster)를 분석한 결과를 나타낸 도면.
도 18은 기저 함수 인벤토리의 제1 예를 나타낸 도면.
도 19는 기타 음표(guitar note)의 스펙트럼 사진을 나타낸 도면.
도 20은 도 18의 인벤토리에서 도 19의 스펙트럼 사진의 희소 표현을 나타낸 도면.
도 21은 2개의 상이한 합성 신호 예에 개시 검출 방법을 적용한 결과의 스펙트럼 사진을 나타낸 도면.
도 22 내지 도 25는 개시 검출-기반 후처리를 제1 합성 신호 예에 적용한 결과를 나타낸 도면.
도 26 내지 도 32는 개시 검출-기반 후처리를 제2 합성 신호 예에 적용한 결과를 나타낸 도면.
도 33 내지 도 39는 개시 검출-기반 후처리를 제1 합성 신호 예에 적용한 결과를 나타낸 스펙트럼 사진을 나타낸 도면.
도 40 내지 도 46은 개시 검출-기반 후처리를 제2 합성 신호 예에 적용한 결과를 나타낸 스펙트럼 사진을 나타낸 도면.
도 47a는 피아노-플루트 테스트 사례에 적용된 개시 검출 방법의 성능을 평가한 결과를 나타낸 도면.
도 47b는 통신 디바이스(D20)의 블록도.
도 48은 핸드셋(H100)의 정면도, 배면도 및 측면도.
도 1b는 방법(M100)의 구현예(M200)의 플로우차트.
도 1c는 일반 구성에 따른 오디오 신호를 분해하는 장치(MF100)의 블록도.
도 1d는 다른 일반 구성에 따른 오디오 신호를 분해하는 장치(A100)의 블록도.
도 2a는 방법(M100)의 구현예(M300)의 플로우차트.
도 2b는 장치(A100)의 구현예(A300)의 블록도.
도 2c는 장치(A100)의 다른 구현예(A310)의 블록도.
도 3a는 방법(M200)의 구현예(M400)의 플로우차트.
도 3b는 방법(M200)의 구현예(M500)의 플로우차트.
도 4a는 방법(M100)의 구현예(M600)의 플로우차트.
도 4b는 장치(A100)의 구현예(A700)의 블록도.
도 5는 장치(A100)의 구현예(A800)의 블록도.
도 6은 기저 함수 인벤토리(basis function inventory)의 제2 예를 나타낸 도면.
도 7은 화성 경적(harmonic honk)과 함께 음성의 스펙트럼 사진(spectrogram)을 나타낸 도면.
도 8은 도 6의 인벤토리에서 도 7의 스펙트럼 사진의 희소 표현(sparse representation)을 나타낸 도면.
도 9는 모델 Bf = y를 나타낸 도면.
도 10은 방법(M100)에 의해 생성되는 분리 결과의 플롯을 나타낸 도면.
도 11은 도 9의 모델의 수정 B'f = y를 나타낸 도면.
도 12는 피아노와 플루트에 대한 음표의 펜던시(pendency) 동안 기저 함수의 시간 영역 변화(time-domain evolution)의 플롯을 나타낸 도면.
도 13은 방법(M400)에 의해 생성되는 분리 결과의 플롯을 나타낸 도면.
도 14는 음표 F5에서의 피아노 및 플루트에 대한 기저 함수의 플롯(좌측) 및 음표 F5에서의 피아노 및 플루트에 대한 프리엠퍼시스된(pre-emphasized) 기저 함수의 플롯(우측)을 나타낸 도면.
도 15는 다수의 음원이 활성인 시나리오를 나타낸 도면.
도 16은 음원들이 서로 가까이 위치하고 한 음원이 다른 음원의 후방에 위치하는 시나리오를 나타낸 도면.
도 17은 개개의 공간 클러스터(spatial cluster)를 분석한 결과를 나타낸 도면.
도 18은 기저 함수 인벤토리의 제1 예를 나타낸 도면.
도 19는 기타 음표(guitar note)의 스펙트럼 사진을 나타낸 도면.
도 20은 도 18의 인벤토리에서 도 19의 스펙트럼 사진의 희소 표현을 나타낸 도면.
도 21은 2개의 상이한 합성 신호 예에 개시 검출 방법을 적용한 결과의 스펙트럼 사진을 나타낸 도면.
도 22 내지 도 25는 개시 검출-기반 후처리를 제1 합성 신호 예에 적용한 결과를 나타낸 도면.
도 26 내지 도 32는 개시 검출-기반 후처리를 제2 합성 신호 예에 적용한 결과를 나타낸 도면.
도 33 내지 도 39는 개시 검출-기반 후처리를 제1 합성 신호 예에 적용한 결과를 나타낸 스펙트럼 사진을 나타낸 도면.
도 40 내지 도 46은 개시 검출-기반 후처리를 제2 합성 신호 예에 적용한 결과를 나타낸 스펙트럼 사진을 나타낸 도면.
도 47a는 피아노-플루트 테스트 사례에 적용된 개시 검출 방법의 성능을 평가한 결과를 나타낸 도면.
도 47b는 통신 디바이스(D20)의 블록도.
도 48은 핸드셋(H100)의 정면도, 배면도 및 측면도.
기저 함수 인벤토리(basis function inventory) 및 희소 복구 기법(sparse recovery technique)을 사용한 오디오 신호의 분해가 개시되어 있고, 여기서 기저 함수 인벤토리는 음표의 펜던시(pendency)에 걸쳐 음표의 스펙트럼의 변화에 관련된 정보를 포함한다. 이러한 분해는 신호의 분석, 인코딩, 재생, 및/또는 합성을 지원하기 위해 사용될 수 있다. 화성 악기(harmonic instrument)(즉, 비타악기) 및 타악기로부터의 사운드들의 혼합음을 포함하는 오디오 신호의 정량적 분석의 예가 본 명세서에 제시되어 있다.
그의 문맥에 의해 명확히 제한되지 않는 한, 본 명세서에서 "신호"라는 용어는 와이어, 버스 또는 기타 전송 매체 상에 표현되는 바와 같은 메모리 위치(또는 메모리 위치들의 세트)의 상태를 포함하는 그의 통상의 의미들 중 어느 하나를 나타내기 위해 사용된다. 그의 문맥에 의해 명확히 제한되지 않는 한, 본 명세서에서 "발생(generating)"이라는 용어는 컴퓨팅 또는 다른 방식으로 생성하는 것과 같은 그의 통상의 의미들 중 어느 하나를 나타내기 위해 사용된다. 그의 문맥에 의해 명확히 제한되지 않는 한, 본 명세서에서 "계산"이라는 용어는 컴퓨팅, 평가, 평활화(smoothing) 및/또는 복수의 값 중에서 선택하는 것과 같은 그의 통상의 의미들 중 어느 하나를 나타내기 위해 사용된다. 그의 문맥에 의해 명확히 제한되지 않는 한, 본 명세서에서 "획득"이라는 용어는 계산, 도출, (예컨대, 외부 디바이스로부터의) 수신, 및/또는 (예컨대, 저장 요소들의 어레이로부터의) 검색(retrieving)하는 것과 같은 그의 통상의 의미들 중 어느 하나를 나타내기 위해 사용된다. 그의 문맥에 의해 명확히 제한되지 않는 한, 본 명세서에서 "선택"이라는 용어는 2개 이상으로 된 세트 중 적어도 하나 및 전부보다 적은 것의 식별, 표시, 적용 및/또는 사용하는 것과 같은 그의 통상의 의미들 중 어느 하나를 나타내기 위해 사용된다. "포함하는(comprising)"이라는 용어가 본 설명 및 특허청구범위에서 사용되는 경우, 이는 다른 요소들 또는 동작들을 배제하지 않는다. ("A가 B에 기초한다"와 같이) "~에 기초한다"라는 용어는 사례들 (i) "~로부터 도출된다"(예컨대, "B는 A의 전구체이다"), (ii) "적어도 ~에 기초한다"(예컨대, "A는 적어도 B에 기초한다") 및 특정 문맥에서 적절한 경우에 (iii) "~와 동일하다"(예컨대, "A는 B와 동일하다")를 비롯한 그의 통상의 의미들 중 어느 하나를 나타내는 데 사용된다. 이와 유사하게, "~에 응답하여"라는 용어는 "적어도 ~에 응답하여"를 비롯한 그의 통상의 의미들 중 어느 하나를 나타내는 데 사용된다.
다중 마이크 오디오 감지 디바이스의 마이크의 "위치"에 대한 참조는, 문맥이 달리 나타내지 않는 한, 마이크의 음향학적으로 민감한 면의 중앙의 위치를 나타낸다. "채널"이라는 용어는, 특정 문맥에 따라, 어떤 때는 신호 경로를 나타내는 데 사용되고, 다른 때는 그러한 경로에 의해 전달되는 신호를 나타내는 데 사용된다. 달리 언급하지 않는 한, "일련의"라는 용어는 둘 이상의 항목의 시퀀스를 나타내는 데 사용된다. "로그"라는 용어는 밑수 10의 로그를 나타내는 데 사용되지만, 이러한 연산의 다른 밑수(예컨대, 밑수 2)로의 확장도 본 발명의 범위 내에 있다. "주파수 성분"이라는 용어는 (예컨대, 고속 푸리에 변환에 의해 생성되는 바와 같은) 신호의 주파수 영역 표현의 샘플 또는 신호의 서브대역(예컨대, 바크(Bark) 스케일 또는 멜(mel) 스케일 서브대역)과 같은 신호의 주파수들 또는 주파수 대역들의 세트 중 하나를 나타내는 데 사용된다.
달리 나타내지 않는 한, 특정의 특징을 가지는 장치의 동작에 대한 임의의 개시는 또한 유사한 특징을 가지는 방법을 개시하는 것도 명확히 의도하며(그 반대도 마찬가지임), 특정의 구성에 따른 장치의 동작에 대한 임의의 개시는 또한 유사한 구성에 따른 방법을 개시하는 것도 명확히 의도하고 있다(그 반대도 마찬가지임). "구성"이라는 용어는, 그의 특정의 문맥이 나타내는 바와 같이, 방법, 장치 및/또는 시스템과 관련하여 사용될 수 있다. "방법", "프로세스", "절차" 및 "기술"이라는 용어들은, 특정의 문맥이 달리 나타내지 않는 한, 총칭적으로 그리고 서로 바꾸어 사용될 수 있다. "장치" 및 "디바이스"라는 용어들이 또한, 특정의 문맥이 달리 나타내지 않는 한, 총칭적으로 그리고 서로 바꾸어 사용될 수 있다. "요소" 및 "모듈"이라는 용어들은 통상적으로 더 큰 구성의 일부분을 나타내는 데 사용된다. 그의 문맥에 의해 명확히 제한되지 않는 한, 본 명세서에서 "시스템"이라는 용어는 "공통의 목적을 이루기 위해 상호작용하는 요소들의 그룹"을 비롯한 그의 통상의 의미들 중 어느 하나를 나타내는 데 사용된다. 문헌의 일부분의 참조 문헌으로서의 임의의 포함은 또한 그 부분 내에서 참조되는 용어들 또는 변수들의 정의들을 포함하는 것으로도 이해되어야 하며, 그러한 정의들은 포함된 부분에서 참조되는 임의의 도면들은 물론, 문헌의 다른 곳에도 나온다. 정관사가 먼저 나오지 않는 한, 청구항 요소를 수정하기 위해 사용되는 서수 용어(예컨대, "제1", "제2", "제3" 등)은 그 자체가 청구항 요소의 다른 청구항 요소에 대한 어떤 우선순위 또는 순서를 나타내지 않고, 오히려 청구항 요소를 (서수 용어의 사용을 제외하고는) 동일한 이름을 가지는 다른 청구항 요소와 구별해줄 뿐이다. 그의 문맥에 의해 명확히 제한되지 않는 한, "복수"라는 용어는 1보다 큰 정수량을 나타내는 데 사용된다.
본 명세서에 기술된 방법은 포착된 신호를 일련의 세그먼트로서 처리하도록 구성되어 있을 수 있다. 통상적인 세그먼트 길이는 약 5 또는 10 밀리초 내지 약 40 또는 50 밀리초의 범위에 있고, 세그먼트가 중첩되어 있거나(예컨대, 인접한 세그먼트가 25% 또는 50% 정도 중첩되어 있음) 비중첩되어 있을 수 있다. 하나의 특정의 예에서, 신호가 일련의 비중첩 세그먼트 또는 "프레임" - 각각이 10 밀리초의 길이를 가짐 - 으로 나누어진다. 이러한 방법에 의해 처리되는 세그먼트가 또한 상이한 동작에 의해 처리되는 보다 큰 세그먼트의 세그먼트(즉, "서브프레임")일 수 있거나, 그 반대일 수 있다.
2개 이상의 악기 및/또는 보컬 신호의 혼합음으로부터 개개의 음표/피치 프로파일을 추출하기 위해 음악 장면을 분해하는 것이 바람직할 수 있다. 잠재적인 사용 사례는 복수의 마이크로 콘서트/비디오 게임 장면을 녹음하는 것, 공간/희소 복구 처리에 의해 악기와 보컬을 분해하는 것, 피치/음표 프로파일을 추출하는 것, 개개의 음원을 교정된 피치/음표 프로파일과 부분적으로 또는 전체적으로 업믹싱하는 것을 포함한다. 음악 응용 프로그램(예컨대, Qualcomm의 QUSIC 응용 프로그램, Rock Band 또는 Guitar Hero 등의 비디오 게임)의 기능을 다중 연주자/가수 시나리오로 확장시키기 위해 이러한 동작이 사용될 수 있다.
음악 응용 프로그램이 (예컨대, 도 15에 나타낸 바와 같이) 2명 이상의 보컬리스트가 활성이고 및/또는 다수의 악기가 동시에 연주되는 시나리오를 처리할 수 있게 해주는 것이 바람직할 수 있다. 현실감있는 음악 녹음 시나리오[다중 피치 장면(multi-pitch scene)]를 지원하기 위해 이러한 기능이 바람직할 수 있다. 사용자가 각각의 음원을 개별적으로 편집하고 재합성할 수 있는 것을 원할 수 있지만, 사운드 트랙을 생성하는 것은 음원들을 동시에 녹음하는 것을 수반할 수 있다.
본 개시 내용은 다수의 음원이 동시에 활성일 수 있는 음악 응용 프로그램에 대한 사용 사례를 가능하게 해주기 위해 사용될 수 있는 방법을 기술하고 있다. 이러한 방법은 기저 함수 인벤토리-기반 희소 복구[예컨대, 희소 분해(sparse decomposition)] 기법을 사용하여 오디오 혼합음 신호(audio mixture signal)를 분석하도록 구성되어 있을 수 있다.
한 세트의 기저 함수에 대한 활성화 계수의 최고 희소 벡터(sparsest vector)를 (예컨대, 효율적인 희소 복구 알고리즘을 사용하여) 찾아냄으로써 혼합음 신호 스펙트럼(mixture signal spectra)을 음원 성분으로 분해하는 것이 바람직할 수 있다. 혼합음 신호를 재구성하기 위해 또는 혼합음 신호의 (예컨대, 하나 이상의 선택된 악기로부터의) 선택된 부분을 재구성하기 위해 활성화 계수 벡터가 (예컨대, 한 세트의 기저 함수와 함께) 사용될 수 있다. 또한, [예컨대, 크기 및 시간 서포트(support)에 따라] 희소 계수 벡터(sparse coefficient vector)를 후처리하는 것이 바람직할 수 있다.
도 1a는 일반 구성에 따른 오디오 신호를 분해하는 방법(M100)의 플로우차트를 나타낸 것이다. 방법(M100)은 오디오 신호의 프레임으로부터의 정보에 기초하여, 일정 범위의 주파수에 걸쳐 대응하는 신호 표현을 계산하는 작업(T100)을 포함한다. 방법(M100)은 또한 작업(T100)에 의해 계산된 신호 표현 및 복수의 기저 함수에 기초하여, 활성화 계수들의 벡터를 계산하는 작업(T200)을 포함하고, 여기서 각각의 활성화 계수는 복수의 기저 함수 중의 상이한 기저 함수에 대응한다.
작업(T100)은 주파수 영역 벡터로서 신호 표현을 계산하도록 구현될 수 있다. 이러한 벡터의 각각의 원소는 멜(mel) 또는 바크(Bark) 스케일에 따라 획득될 수 있는 한 세트의 서브대역 중의 대응하는 서브대역의 에너지를 나타낼 수 있다. 그렇지만, 이러한 벡터는 통상적으로 FFT(fast Fourier transform, 고속 푸리에 변환) 또는 STFT(short-time Fourier transform, 단시간 푸리에 변환) 등의 DFT(discrete Fourier transform, 이산 푸리에 변환)를 사용하여 계산된다. 이러한 벡터는, 예를 들어, 64, 128, 256, 512, 또는 1024 빈의 길이를 가질 수 있다. 한 예에서, 오디오 신호는 8 kHz의 샘플링 레이트를 가지며, 0 내지 4 kHz 대역은 32 밀리초 길이의 각각의 프레임에 대해 256 빈의 주파수 영역 벡터로 표현된다. 다른 예에서, 오디오 신호의 중첩하는 세그먼트에 걸쳐 MDCT(modified discrete cosine transform, 변형 이산 코사인 변환)를 사용하여 신호 표현이 계산된다.
추가의 예에서, 작업(T100)은 프레임의 단기 전력 스펙트럼(short-term power spectrum)을 나타내는 켑스트럴 계수(cepstral coefficient)[예컨대, MFCC(mel-frequency cepstral coefficient, 멜-주파수 켑스트럴 계수)]의 벡터로서 신호 표현을 계산하도록 구현될 수 있다. 이 경우에, 작업(T100)은, 프레임의 DFT 주파수 영역 벡터의 크기에 멜-스케일 필터 뱅크를 적용하고, 필터 출력의 로그를 취하며, 로그값의 DCT를 취함으로써, 이러한 벡터를 계산하도록 구현될 수 있다. 이러한 절차가, 예를 들어, "STQ: DSR - Front-end feature extraction algorithm; compression algorithm" (European Telecommunications Standards Institute, 2000)라는 제하의 ETSI 문서 ES 201 108에 기술되어 있는 Aurora 표준에 기술되어 있다.
악기는 통상적으로 잘 정의된 음색(timbre)을 가진다. 악기의 음색은 그의 스펙트럼 엔벨로프(spectral envelope)(예컨대, 일정 범위의 주파수에 걸친 에너지의 분포)에 의해 기술될 수 있고, 따라서 상이한 악기의 일정 범위의 음색이 개개의 악기의 스펙트럼 엔벨로프를 인코딩하는 기저 함수의 인벤토리를 사용하여 모델링될 수 있다.
각각의 기저 함수는 일정 범위의 주파수에 걸쳐 대응하는 신호 표현을 포함한다. 이들 신호 표현 각각이 작업(T100)에 의해 계산되는 신호 표현과 동일한 형태를 가지는 것이 바람직할 수 있다. 예를 들어, 각각의 기저 함수는 64, 128, 256, 512, 또는 1024 빈의 길이의 주파수 영역 벡터일 수 있다. 다른 대안으로서, 각각의 기저 함수는 MFCC의 벡터 등의 켑스트럴 영역 벡터일 수 있다. 추가의 예에서, 각각의 기저 함수는 웨이블릿 영역 벡터(wavelet-domain vector)이다.
기저 함수 인벤토리 A는 각각의 악기 n(예컨대, 피아노, 플루트, 기타, 드럼 등)에 대한 기저 함수의 세트 An을 포함할 수 있다. 예를 들어, 악기의 음색이 일반적으로 피치-의존적이고, 따라서 각각의 악기 n에 대한 기저 함수의 세트 An이 통상적으로 악기마다 다를 수 있는 어떤 원하는 피치 범위에 걸쳐 각각의 피치에 대해 적어도 하나의 기저 함수를 포함할 것이다. 예를 들어, 반음계(chromatic scale)에 따라 조율되어 있는 악기에 대응하는 기저 함수의 세트는 옥타브당 12개의 피치 각각에 대한 상이한 기저 함수를 포함할 수 있다. 피아노에 대한 기저 함수의 세트는, 총 88개의 기저 함수에 대해, 피아노의 각각의 건반에 대한 상이한 기저 함수를 포함할 수 있다. 다른 예에서, 각각의 악기에 대한 기저 함수의 세트는 5 옥타브(예컨대, 56개 피치) 또는 6 옥타브(예컨대, 67개 피치) 등의 원하는 피치 범위 내의 각각의 피치에 대한 상이한 기저 함수를 포함한다. 이러한 기저 함수의 세트들 An은 서로 소(disjoint)일 수 있거나, 2개 이상의 세트가 하나 이상의 기저 함수를 공유할 수 있다.
도 6은 특정의 화성 악기에 대한 14개 기저 함수의 세트에 대한 플롯(피치 인덱스 대 주파수)의 예를 나타낸 것이며, 여기서 이 세트의 각각의 기저 함수는 상이한 대응하는 피치에서의 악기의 음색을 인코딩한다. 음악 신호와 관련하여, 사람의 음성이 악기로서 간주될 수 있고, 따라서 인벤토리가 하나 이상의 사람 음성 모델 각각에 대한 기저 함수의 세트를 포함할 수 있다. 도 7은 화성 경적(harmonic honk)과 함께 음성의 스펙트럼 사진(spectrogram)[주파수(단위: Hz) 대 시간(단위: 샘플)]을 나타낸 것이고, 도 8은 도 6에 도시된 화성 기저 함수 세트(harmonic basis function set)에서의 이 신호의 표현을 나타낸 것이다.
기저 함수의 인벤토리는 즉석에서 녹음된 개별 악기 녹음으로부터 학습된 범용 악기 피치 데이터베이스에 기초할 수 있고, 및/또는 혼합음의 분리된 스트림에 기초할 수 있다[예컨대, ICA(independent component analysis, 독립 성분 분석), EM(expectation-maximization, 기대값 최대화) 등과 같은 분리 방식을 사용함].
작업(T100)에 의해 계산된 신호 표현 및 인벤토리 A로부터의 복수의 기저 함수 B에 기초하여, 작업(T200)은 활성화 계수들의 벡터를 계산한다. 이 벡터의 각각의 계수는 복수의 기저 함수 B 중의 상이한 기저 함수에 대응한다. 예를 들어, 작업(T200)은, 복수의 기저 함수 B에 따라, 벡터가 신호 표현에 대한 가장 유망한 모델을 나타내도록 벡터를 계산하게 구성되어 있을 수 있다. 도 9는 이러한 모델 Bf = y을 나타낸 것이며, 여기서 복수의 기저 함수 B는 B의 열이 개별 기저 함수이도록 되어 있는 행렬이고, f는 기저 함수 활성화 계수의 열 벡터이며, y는 녹음된 혼합음 신호의 프레임(예컨대, 스펙트럼 사진 주파수 벡터의 형태로 되어 있는, 5 밀리초, 10 밀리초 또는 20 밀리초 프레임)의 열 벡터이다.
작업(T200)은 선형 계획 문제(linear programming problem)를 해결함으로써 오디오 신호의 각각의 프레임에 대한 활성화 계수 벡터를 복구하도록 구성되어 있을 수 있다. 이러한 문제를 해결하는 데 사용될 수 있는 방법의 예로는 NNMF(nonnegative matrix factorization, 비음수 행렬 분해)가 있다. NNMF에 기초하는 단일 채널 참조법(single-channel reference method)은 기저 함수 및 활성화 계수를 동시에 계산하기 위해 EM(expectation-maximization) 갱신 규칙(예컨대, 이하에서 기술함)을 사용하도록 구성되어 있을 수 있다.
알고 있는 또는 부분적으로 알고 있는 기저 함수 공간에서 최고 희소 활성화 계수 벡터를 찾아냄으로써 오디오 혼합음 신호를 개별 악기(하나 이상의 사람 음성을 포함할 수 있음)로 분해하는 것이 바람직할 수 있다. 예를 들어, 작업(T200)은 (예컨대, 효율적인 희소 복구 알고리즘을 사용하여) 기저 함수 인벤토리에서 최고 희소 활성화 계수 벡터를 찾아냄으로써 입력 신호 표현을 음원 성분(예컨대, 하나 이상의 개별 악기)으로 분해하기 위해 알고 있는 악기 기저 함수의 세트를 사용하도록 구성되어 있을 수 있다.
선형 방정식의 과소결정계(underdetermined system)(즉, 방정식보다 더 많은 미지수를 갖는 계)에 대한 최소 L1-놈 해(minimum L1-norm solution)가 종종 또한 그 시스템에 대한 최고 희소 해(sparsest solution)라는 것이 알려져 있다. L1-놈의 최소화를 통한 희소 복구가 다음과 같이 수행될 수 있다.
목표 벡터 f0가 K < N개의 영이 아닌 항목을 가지는 길이 N의 희소 벡터이고[즉, "K 희소(K-sparse)"이고] 투영 행렬(projection matrix)(즉, 기저 함수 행렬) A가 크기 ~ K의 세트에 대해 비상관(incoherent)(거의 랜덤함)인 것으로 가정한다. 신호 y=Af0를 관찰한다. 이어서 Af = y(여기서 은 으로서 정의됨)에 따라 을 풀면 f0를 정확하게 복구할 것이다. 게다가, 다루기 쉬운 프로그램을 푸는 것에 의해 개의 비상관 측정치로부터 f0를 복구할 수 있다. 측정치 M의 수는 활성 성분의 수와 대략 같다.
한가지 방식은 압축 센싱(compressive sensing)을 바탕으로 한 희소 복구 알고리즘을 사용하는 것이다. 압축 센싱(영문으로 "compressed sensing"이라고도 함) 신호 복구 Φx = y의 한 예에서, y는 길이 M의 관찰된 신호 벡터이고, x는 y의 간략한 표현(condensed representation)인 K < N개의 영이 아닌 항목을 가지는 길이 N의 희소 벡터이며(즉, "K-희소 모델"), Φ는 크기 M x N의 랜덤 투영 행렬(random projection matrix)이다. 랜덤 투영 행렬 Φ가 완전 계수(full rank)는 아니지만, 높은 확률로 희소/압축성 신호 모델(sparse/compressible signal model)에 대해 가역적(invertible)이다[즉, 부적절 역문제(ill-posed inverse problem)를 해결한다].
도 10은 방법(M100)의 희소 복구 구현예에 의해 생성된 분리 결과의 플롯(피치 인덱스 대 프레임 인덱스)을 나타낸 것이다. 이 경우에, 입력 혼합음 신호는 일련의 음표 C5-F5-G5-G#5-G5-F5-C5-D#5를 연주하는 피아노, 및 일련의 음표 C6-A#5-G#5-G5를 연주하는 플루트를 포함한다. 피아노에 대한 분리 결과는 파선으로 나타내어져 있고(피치 시퀀스 0-5-7-8-7-5-0-3), 플루트에 대한 분리 결과는 실선으로 나타내어져 있다(피치 시퀀스 12-10-8-7).
활성화 계수 벡터 f는 대응하는 기저 함수 세트 An에 대한 활성화 계수를 포함하는 각각의 악기 n에 대한 서브벡터 fn을 포함하는 것으로 간주될 수 있다. 이들 악기 고유 활성화 서브벡터가 독립적으로(예컨대, 후처리 동작에서) 처리될 수 있다. 예를 들어, 하나 이상의 희소성 제약 조건(예컨대, 벡터 원소들 중 적어도 절반이 0일 것, 악기 고유 서브벡터에서의 영이 아닌 원소의 수가 최대 값을 초과하지 않을 것 등)을 시행하는 것이 바람직할 수 있다. 활성화 계수 벡터의 처리는 각각의 프레임에 대한 각각의 영이 아닌 활성화 계수의 인덱스 번호를 인코딩하는 것, 각각의 영이 아닌 활성화 계수의 인덱스 및 값을 인코딩하는 것, 또는 희소 벡터 전체를 인코딩하는 것을 포함할 수 있다. 이러한 정보는 (예컨대, 다른 때 및/또는 위치에서) 표시된 활성 기저 함수를 사용하여 혼합음 신호를 재현하는 데 또는 혼합음 신호의 특정의 부분만(예컨대, 특정의 악기에 의해 연주되는 음표만)을 재현하는 데 사용될 수 있다.
악기에 의해 생성되는 오디오 신호는 음표라고 하는 일련의 이벤트로서 모델링될 수 있다. 음표를 연주하는 화성 악기의 사운드는 시간에 따라 다음과 같이 상이한 영역으로 나누어질 수 있다: 예를 들어, 개시 스테이지(onset stage)[어택(attack)이라고도 함], 정지 스테이지(stationary stage)[서스테인(sustain)이라고도 함], 및 오프셋 스테이지(offset stage)[릴리스(release)라고도 함]. 음표의 시간 엔벨로프의 다른 설명(ADSR)은 어택과 서스테인 사이에 부가의 감쇠 스테이지(decay stage)를 포함한다. 이와 관련하여, 음표의 지속기간은 어택 스테이지의 시작으로부터 릴리스 스테이지의 끝(또는 동일한 현에서의 다른 음표의 시작 등의 음표를 종료시키는 다른 이벤트)까지의 구간으로서 정의될 수 있다. 음표는 단일 피치를 갖는 것으로 가정되지만, 인벤토리가 또한 단일 어택 및 다중 피치를 가지는 음표[예컨대, 비브라토(vibrato) 또는 포르타멘토(portamento) 등의 피치 벤딩 효과(pitch-bending effect)에 의해 생성됨]를 모델링하도록 구현될 수 있다. 어떤 악기(예컨대, 피아노, 기타 또는 하프)는 화음(chord)이라고 하는 이벤트에서 한번에 2개 이상의 음표를 생성할 수 있다.
상이한 악기에 의해 생성된 음표가 서스테인 스테이지 동안 유사한 음색을 가질 수 있고, 따라서 이러한 기간 동안 어느 악기가 연주되고 있는지를 식별하는 것이 어려울 수 있다. 그렇지만, 음표의 음색이 스테이지마다 변할 것으로 예상될 수 있다. 예를 들어, 활성 악기를 식별하는 것이 서스테인 스테이지 동안보다는 어택 또는 릴리스 스테이지 동안 더 쉬울 수 있다.
도 12는 피아노(파선) 및 플루트(실선)에 대한 옥타브 C5-C6에서의 12개의 상이한 피치에 대한 기저 함수의 시간 영역 변화(time-domain evolution)의 플롯(피치 인덱스 대 시간 영역 프레임 인덱스)을 나타낸 것이다. 예를 들어, 피아노 기저 함수에 대한 어택 스테이지와 서스테인 스테이지 사이의 관계가 플루트 기저 함수에 대한 어택 스테이지와 서스테인 스테이지 사이의 관계와 상당히 다르다는 것을 알 수 있다.
활성화 계수 벡터가 적절한 기저 함수를 나타낼 가능성을 증가시키기 위해, 기저 함수들 간의 차이를 최대화하는 것이 바람직할 수 있다. 예를 들어, 기저 함수가 시간에 따른 음표의 스펙트럼의 변화에 관련된 정보를 포함하는 것이 바람직할 수 있다.
시간에 따른 음색의 변화에 기초하여 기저 함수를 선택하는 것이 바람직할 수 있다. 이러한 방식은 음표의 음색의 이러한 시간 영역 변화에 관련된 정보를 기저 함수 인벤토리에 인코딩하는 것을 포함할 수 있다. 예를 들어, 특정의 악기 n에 대한 기저 함수의 세트 An은 각각의 피치에서 2개 이상의 대응하는 신호 표현을 포함할 수 있고, 따라서 이들 신호 표현 각각은 음표의 변화에서의 상이한 때(예컨대, 어택 스테이지에 대한 것, 서스테인 스테이지에 대한 것, 및 릴리스 스테이지에 대한 것)에 대응한다. 이들 기저 함수는 음표를 연주하는 악기의 녹음의 대응하는 프레임으로부터 추출될 수 있다.
도 1c는 일반 구성에 따른 오디오 신호를 분해하는 장치(MF100)의 블록도를 나타낸 것이다. 장치(MF100)는 오디오 신호의 프레임으로부터의 정보에 기초하여, 일정 범위의 주파수에 걸쳐 대응하는 신호 표현을 계산하는 수단(F100)을 포함한다[예컨대, 작업(T100)을 참조하여 본 명세서에 기술되어 있음]. 장치(MF100)는 또한 수단(F100)에 의해 계산된 신호 표현 및 복수의 기저 함수에 기초하여, 활성화 계수들의 벡터를 계산하는 수단(F200)을 포함하고, 여기서 각각의 활성화 계수는 복수의 기저 함수 중의 상이한 기저 함수에 대응한다[예컨대, 작업(T200)을 참조하여 본 명세서에 기술되어 있음].
도 1d는 변환 모듈(100) 및 계수 벡터 계산기(200)를 포함하는 다른 일반 구성에 따른 오디오 신호를 분해하는 장치(A100)의 블록도를 나타낸 것이다. 변환 모듈(100)은 오디오 신호의 프레임으로부터의 정보에 기초하여, 일정 범위의 주파수에 걸쳐 대응하는 신호 표현을 계산하도록 구성되어 있다[예컨대, 작업(T100)을 참조하여 본 명세서에 기술되어 있음]. 계수 벡터 계산기(200)는 변환 모듈(100)에 의해 계산된 신호 표현 및 복수의 기저 함수에 기초하여, 활성화 계수들의 벡터를 계산하도록 구성되어 있으며, 여기서 각각의 활성화 계수는 복수의 기저 함수 중의 상이한 기저 함수에 대응한다[예컨대, 작업(T200)을 참조하여 본 명세서에 기술되어 있음].
도 1b는 기저 함수 인벤토리가 각각의 피치에서 각각의 악기에 대한 다중 신호 표현을 포함하는 방법(M100)의 구현예(M200)의 플로우차트를 나타낸 것이다. 이들 다중 신호 표현 각각은 일정 범위의 주파수에 걸쳐 복수의 상이한 에너지 분포(예컨대, 복수의 상이한 음색)를 나타낸다. 인벤토리는 또한 상이한 시간 관련 모달리티(time-related modality)에 대한 상이한 다중 신호 표현을 포함하도록 구성되어 있을 수 있다. 하나의 이러한 예에서, 인벤토리는 각각의 피치에서 활로 켜는 현(string being bowed)에 대한 다중 신호 표현 및 각각의 피치에서 퉁기는 현(string being plucked)[예컨대, 피치카토(pizzicato)]에 대한 상이한 다중 신호 표현을 포함한다.
방법(M200)은 작업(T100)의 다수의 인스턴스[이 예에서, 작업(T100A 및 T100B)]를 포함하고, 여기서 각각의 인스턴스는, 오디오 신호의 대응하는 상이한 프레임으로부터의 정보에 기초하여, 일정 범위의 주파수에 걸쳐 대응하는 신호 표현을 계산한다. 다양한 신호 표현이 연결될 수 있고, 마찬가지로 각각의 기저 함수가 다중 신호 표현의 연결(concatenation)일 수 있다. 이 예에서, 작업(T200)은 혼합음 프레임의 연결을 각각의 피치에서의 신호 표현의 연결과 정합시킨다. 도 11은 혼합음 신호 y의 프레임 p1, p2가 정합을 위해 연결되어 있는 그림 S5의 모델 Bf=y의 수정 B'f=y의 한 예를 나타낸 것이다.
각각의 피치에서의 다중 신호 표현이 훈련 신호(training signal)의 연속 프레임으로부터 취해지도록 인벤토리가 구성될 수 있다. 다른 구현예에서, 각각의 피치에서의 다중 신호 표현이 시간축에서 더 큰 윈도우에 걸쳐 있는 것(예컨대, 시간축에서 연속적인 것보다 분리되어 있는 프레임을 포함하는 것)이 바람직할 수 있다. 예를 들어, 각각의 피치에서의 다중 신호 표현이 어택 스테이지, 서스테인 스테이지, 및 릴리스 스테이지 중에서 적어도 2개로부터의 신호 표현을 포함하는 것이 바람직할 수 있다. 음표의 시간 영역 변화에 관한 추가 정보를 포함시킴으로써, 상이한 음표에 대한 기저 함수의 세트들 사이의 차이가 증가될 수 있다.
도 14는, 좌측에, 음표 F5에서 피아노에 대한 기저 함수(파선) 및 음표 F5에서 플루트에 대한 기저 함수(실선)의 플롯(진폭 대 주파수)을 나타내고 있다. 이 특정의 피치에서의 악기의 음색을 나타내는 이들 기저 함수가 아주 유사하다는 것을 알 수 있다. 결과적으로, 실제로 이들 간에 어느 정도의 부정합이 예상될 수 있다. 보다 강인한 분리 결과(more robust separation result)를 위해, 인벤토리의 기저 함수들 간의 차이를 최대화하는 것이 바람직할 수 있다.
플루트의 실제 음색은 피아노보다 더 많은 고주파 에너지를 포함하지만, 도 14의 좌측 플롯에 나타낸 기저 함수는 이 정보를 인코딩하고 있지 않다. 도 14는, 우측에, 음표 F5에서 피아노에 대한 기저 함수(파선) 및 음표 F5에서 플루트에 대한 기저 함수(실선)의 다른 플롯(진폭 대 주파수)을 나타내고 있다. 이 경우에, 음원 신호의 고주파 영역이 프리엠퍼시스된(pre-emphasized) 것을 제외하고는, 기저 함수는 좌측 플롯에서의 기저 함수와 동일한 음원 신호로부터 도출된다. 피아노 음원 신호가 플루트 음원 신호보다 상당히 더 적은 고주파 에너지를 포함하기 때문에, 우측 플롯에 나타낸 기저 함수들 사이의 차이가 좌측 플롯에 나타낸 기저 함수들 사이의 차이보다 상당히 더 크다.
도 2a는 세그먼트의 고주파를 강조하는 작업(T300)을 포함하는 방법(M100)의 구현예(M300)의 플로우차트를 나타낸 것이다. 이 예에서, 작업(T100)은 프리엠퍼시스 이후의 세그먼트의 신호 표현을 계산하도록 배열되어 있다. 도 3a는 작업(T300)의 다수의 인스턴스(T300A, T300B)를 포함하는 방법(M200)의 구현예(M400)의 플로우차트를 나타낸 것이다. 한 예에서, 프리엠퍼시스 작업(T300)은 총 에너지에 대한 200 Hz 초과의 에너지의 비를 증가시킨다.
도 2b는 변환 모듈(100)의 전단(upstream)에서 오디오 신호에 대해 고주파 강조를 수행하도록 배열되어 있는 프리엠퍼시스 필터(300)(예컨대, 1차 고역 통과 필터 등의 고역 통과 필터)를 포함하는 장치(A100)의 구현예(A300)의 블록도를 나타낸 것이다. 도 2c는 프리엠퍼시스 필터(300)가 변환 계수에 고주파 프리엠퍼시스를 수행하도록 배열되어 있는 장치(A100)의 다른 구현예(A310)의 블록도를 나타낸 것이다. 이들 경우에, 또한, 복수의 기저 함수 B에 고주파 프리엠퍼시스(예컨대, 고역 통과 필터링)를 수행하는 것이 바람직할 수 있다. 도 13은 도 10의 분리 결과와 동일한 입력 혼합음 신호에 대해 방법(M300)에 의해 생성되는 분리 결과의 플롯(피치 인덱스 대 프레임 인덱스)을 나타낸 것이다.
음표는 비브라토 및/또는 트레몰로(tremolo) 등의 착색 효과(coloration effect)를 포함할 수 있다. 비브라토는 통상적으로 4 또는 5 내지 7, 8, 10 또는 12 Hz의 범위에 있는 변조율(modulation rate)을 갖는 주파수 변조이다. 비브라토로 인한 피치 변화가 가수에 대해서는 0.6 내지 2 반음 정도 변할 수 있고, 일반적으로 관악기 및 현악기에 대해서는 +/- 0.5 미만이다(예컨대, 현악기에 대해 0.2 내지 0.35 반음임). 트레몰로는 통상적으로 유사한 변조율을 가지는 진폭 변조이다.
이러한 효과를 기저 함수 인벤토리에 모델링하는 것이 어려울 수 있다. 이러한 효과의 존재를 검출하는 것이 바람직할 수 있다. 예를 들어, 비브라토의 존재는 4 내지 8 Hz의 범위에서의 주파수 영역 피크로 표시될 수 있다. 또한, (예컨대, 이 피크의 에너지로서) 검출된 효과의 레벨의 척도를 기록하는 것이 바람직할 수 있는데, 그 이유는 이러한 특성이 재현 동안 효과를 복원하는 데 사용될 수 있기 때문이다. 트레몰로 검출 및 정량화를 위해 시간 영역에서 유사한 처리가 수행될 수 있다. 효과가 검출되고 아마도 정량화되면, 비브라토에 대해서는 시간에 따라 주파수를 평탄화함으로써 또는 트레몰로에 대해서는 시간에 따라 진폭을 평탄화함으로써 변조를 제거하는 것이 바람직할 수 있다.
도 4b는 변조 레벨 계산기(modulation level calculator, MLC)를 포함하는 장치(A100)의 구현예(A700)의 블록도를 나타낸 것이다. 계산기(MLC)는 앞서 기술된 바와 같이 오디오 신호의 세그먼트에서 검출된 변조의 척도(예컨대, 시간 또는 주파수 영역에서 검출된 변조 피크의 에너지)를 계산하고 아마도 기록하도록 구성되어 있다.
본 개시 내용은 다수의 음원이 동시에 활성일 수 있는 음악 응용 프로그램에 대한 사용 사례를 가능하게 해주기 위해 사용될 수 있는 방법을 기술하고 있다. 이러한 경우에, 가능한 경우, 활성화 계수 벡터를 계산하기 전에 음원을 분리시키는 것이 바람직할 수 있다. 이 목표를 달성하기 위해, 다중 채널 기법과 단일 채널 기법의 결합이 제안되어 있다.
도 3b는 신호를 공간 클러스터로 분리시키는 작업(T500)을 포함하는 방법(M100)의 구현예(M500)의 플로우차트를 나타낸 것이다. 작업(T500)은 음원을 가능한 한 많은 공간 클러스터로 분리시키도록 구성되어 있을 수 있다. 한 예에서, 작업(T500)은 녹음된 음향 시나리오를 가능한 한 많은 공간 클러스터로 분리시키기 위해 다중 마이크 처리를 사용한다. 이러한 처리는 마이크 신호들 사이의 이득차 및/또는 위상차에 기초할 수 있고, 여기서 이러한 차는 전체 주파수 대역에 걸쳐 또는 복수의 상이한 주파수 서브대역 또는 주파수 빈 각각에서 평가될 수 있다.
공간 분리법만으로는 원하는 레벨의 분리를 달성하는 데 불충분할 수 있다. 예를 들어, 어떤 음원은 마이크 어레이에 대해 너무 가깝거나 다른 방식으로 준최적으로(suboptimally) 배열되어 있을 수 있다(예컨대, 다수의 바이올린 연주자 및/또는 화성 악기가 하나의 코너에 위치되어 있을 수 있고, 타악기 연주자는 보통 후방에 위치해 있다). 전형적인 음악 밴드 시나리오에서, 음원은 서로 가까이 또는 심지어 다른 음원의 후방에(예컨대, 도 16에 도시되어 있음) 위치될 수 있고, 따라서 밴드 쪽으로의 동일한 일반 방향으로 있는 마이크의 어레이에 의해 포착되는 신호를 처리하기 위해 공간 정보만을 사용하는 것은 모든 음원을 서로 구별하지 못할 수 있다. 작업(T100 및 T200)은 (예컨대, 도 17에 도시된 바와 같이) 개개의 악기를 분리시키기 위해 본 명세서에 기술된 바와 같은 단일 채널, 기저 함수 인벤토리-기반 희소 복구(예컨대, 희소 분해) 기법을 사용하여 개개의 공간 클러스터를 분석한다.
계산 용이성을 위해, 복수의 기저 함수 B가 기저 함수의 인벤토리 A보다 상당히 더 작은 것이 바람직할 수 있다. 큰 인벤토리로부터 시작하여, 주어진 분리 작업에 대해 인벤토리를 축소시키는 것이 바람직할 수 있다. 한 예에서, 세그먼트가 타악기로부터의 사운드를 포함하는지 화성 악기로부터의 사운드를 포함하는지를 판정하고 정합을 위해 인벤토리로부터 적절한 복수의 기저 함수 B를 선택함으로써 이러한 감소가 수행될 수 있다. 타악기는, 화성 사운드에 대한 수평선과 달리, 임펄스와 유사한 스펙트럼 사진(예컨대, 수직선)을 가지는 경향이 있다.
화성 악기는 통상적으로 스펙트럼 사진에서 특정의 기본 피치 및 관련 음색, 그리고 이 화성 패턴의 대응하는 고주파 확장(higher-frequency extension)을 특징으로 할 수 있다. 그 결과, 다른 예에서, 이들 스펙트럼의 하위 옥타브만을 분석함으로써 계산 작업을 감소시키는 것이 바람직할 수 있는데, 그 이유는 그의 고주파수 복제물(higher frequency replica)이 저주파 복제물에 기초하여 예측될 수 있기 때문이다. 정합 후에, 인코딩되고 및/또는 추가로 분해될 수 있는 잔차 신호(residual signal)를 획득하기 위해, 활성 기저 함수가 고주파수로 외삽(extrapolate)되고 혼합음 신호로부터 차감될 수 있다.
이러한 감소는 또한 그래픽 사용자 인터페이스에서의 사용자 선택을 통해 및/또는 최초 희소 복구 실행(first sparse recovery run) 또는 최대 우도 근사(maximum likelihood fit)에 기초한 가장 유망한 악기 및/또는 피치의 사전 분류에 의해 수행될 수 있다. 예를 들어, 복구된 희소 계수의 제1 세트를 획득하기 위해 희소 복구 동작의 최초 실행이 수행될 수 있고, 이 제1 세트에 기초하여, 적용가능한 음표 기저 함수가 희소 복구 동작의 다른 실행에 대해 축소될 수 있다.
하나의 감소 방식(reduction approach)은 특정의 피치 구간에서 희소성 점수를 측정함으로써 특정의 악기 음표의 존재를 검출하는 것을 포함한다. 이러한 방식은, 초기 피치 추정치에 기초하여, 하나 이상의 기저 함수의 스펙트럼 형상을 미세 조정하는 것, 및 미세 조정된 기저 함수를 방법(M100)에서의 복수의 기저 함수 B로서 사용하는 것을 포함할 수 있다.
감소 방식이 대응하는 기저 함수로 투영되는 음악 신호의 희소성 점수를 측정함으로써 피치를 식별하도록 구성되어 있을 수 있다. 최상의 피치 점수가 주어진 경우, 악기 음표를 식별하기 위해 기저 함수의 진폭 형상이 최적화될 수 있다. 감소된 활성 기저 함수의 세트가 이어서 방법(M100)에서의 복수의 기저 함수 B로서 사용될 수 있다.
도 18은 최초 실행 방식에서 사용될 수 있는 희소 화성 신호 표현에 대한 기저 함수 인벤토리의 한 예를 나타낸 것이다. 도 19는 기타(guitar) 음표의 스펙트럼 사진[주파수(단위: Hz) 대 시간(단위: 샘플)]을 나타낸 것이고, 도 20은 도 18에 도시된 기저 함수의 세트에서의 이 스펙트럼 사진의 희소 표현[기저 함수 수 대 시간(단위: 프레임)]을 나타낸 것이다.
도 4a는 이러한 최초 실행 인벤토리 감소를 포함하는 방법(M100)의 구현예(M600)의 플로우차트를 나타낸 것이다. 방법(M600)은 비선형 주파수 영역에서(예컨대, 인접한 원소 사이의 주파수 거리가, 멜 또는 바크 스케일에서와 같이, 주파수에 따라 증가함) 세그먼트의 신호 표현을 계산하는 작업(T600)을 포함한다. 한 예에서, 작업(T600)은 일정 Q 변환(constant-Q transform)을 사용하여 비선형 신호 표현을 계산하도록 구성되어 있다. 방법(M600)은 또한 비선형 신호 표현 및 복수의 유사한 비선형 기저 함수에 기초하여, 제2 활성화 계수 벡터를 계산하는 작업(T700)을 포함한다. 제2 활성화 계수 벡터로부터의(예컨대, 활성 피치 범위를 나타낼 수 있는, 활성화된 기저 함수의 식별자로부터의) 정보에 기초하여, 작업(T800)은 작업(T200)에서 사용하기 위한 복수의 기저 함수 B를 선택한다. 명확히 유의할 점은, 방법(M200, M300, 및 M400)이 또한 이러한 작업(T600, T700, 및 T800)을 포함하도록 구현될 수 있다는 것이다.
도 5는 보다 큰 기저 함수의 세트로부터(예컨대, 인벤토리로부터) 복수의 기저 함수를 선택하도록 구성되어 있는 인벤토리 감소 모듈(inventory reduction module, IRM)을 포함하는 장치(A100)의 구현예(A800)의 블록도를 나타낸 것이다. 모듈 IRM은 (예컨대, 일정 Q 변환에 따라) 비선형 주파수 영역에서 세그먼트에 대한 신호 표현을 계산하도록 구성되어 있는 제2 변환 모듈(110)을 포함한다. 모듈 IRM은 또한, 비선형 주파수 영역에서 계산된 신호 표현 및 본 명세서에 기술된 바와 같은 제2 복수의 기저 함수에 기초하여, 제2 활성화 계수 벡터를 계산하도록 구성되어 있는 제2 계수 벡터 계산기를 포함한다. 모듈 IRM은 또한, 본 명세서에 기술된 바와 같은 제2 활성화 계수 벡터로부터의 정보에 기초하여, 기저 함수의 인벤토리로부터 복수의 기저 함수를 선택하도록 구성되어 있는 기저 함수 선택기를 포함한다.
방법(M100)이 화성 악기 희소 계수를 미세 조정하기 위해 개시 검출(onset detection)(예컨대, 음표의 개시의 검출) 및 후처리를 포함하는 것이 바람직할 수 있다. 활성화 계수 벡터 f는 악기 고유 기저 함수 세트 Bn에 대한 활성화 계수를 포함하는 각각의 악기 n에 대한 대응하는 서브벡터 fn을 포함하는 것으로 간주될 수 있고, 이들 서브벡터는 독립적으로 처리될 수 있다. 도 21 내지 도 46은 합성 신호 예 1(동일한 옥타브에서 연주되는 피아노 및 플루트) 및 합성 신호 예 2(타악기와 함께 동일한 옥타브에서 연주되는 피아노 및 플루트)에 대해 이러한 방식을 사용하는 음악 분해의 측면을 나타낸 것이다.
일반적인 개시 검출 방법은 스펙트럼 크기(예컨대, 에너지 차이)에 기초할 수 있다. 예를 들어, 이러한 방법은 스펙트럼 에너지 및/또는 피크 기울기에 기초하여 피크를 찾아내는 것을 포함할 수 있다. 도 21은 이러한 방법을 합성 신호 예 1(동일한 옥타브에서 연주되는 피아노 및 플루트) 및 합성 신호 예 2(타악기와 함께 동일한 옥타브에서 연주되는 피아노 및 플루트)에 적용한 결과의 스펙트럼 사진[주파수(단위: Hz) 대 시간(단위: 프레임)]을 각각 나타낸 것이며, 여기서 수직선은 검출된 개시를 나타낸다.
또한, 각각의 개별 악기의 개시를 검출하는 것이 바람직할 수 있다. 예를 들어, 화성 악기 중에서의 개시 검출의 방법은 시간상에서의 대응하는 계수차에 기초할 수 있다. 하나의 이러한 예에서, 화성 악기 n의 개시 검출은, 현재 프레임에 대한 악기 n의 계수 벡터(서브벡터 fn)의 최고 크기의 원소의 인덱스가 이전 프레임에 대한 악기 n의 계수 벡터의 최고 크기의 원소의 인덱스와 같지 않은 경우에, 트리거된다. 이러한 동작은 각각의 악기에 대해 반복될 수 있다.
화성 악기의 희소 계수 벡터의 후처리를 수행하는 것이 바람직할 수 있다. 예를 들어, 화성 악기에 대해, 높은 크기를 가지는 대응하는 서브벡터의 계수 및/또는 지정된 기준을 만족시키는[예컨대, 충분히 첨예한(sufficiently sharp)] 어택 프로파일을 유지하는 것, 및/또는 잔차 계수를 제거하는 것(예컨대, 영으로 만드는 것)이 바람직할 수 있다.
각각의 화성 악기에 대해, 우세한 크기 및 타당한 어택 시간을 가지는 계수가 유지되고 잔차 계수가 영으로 되도록, 각각의 개시 프레임에서(예컨대, 개시 검출이 표시될 때) 계수 벡터를 후처리하는 것이 바람직할 수 있다. 시간에 따른 평균 크기 등의 기준에 따라 어택 시간이 평가될 수 있다. 하나의 이러한 예에서, 계수의 현재의 평균값이 계수의 과거의 평균값보다 작은 경우[예컨대, 프레임 (t-5)부터 프레임 (t+4)까지 등의 현재 윈도우에 걸친 계수의 값의 합이 프레임 (t-15)부터 프레임 (t-6)까지 등의 과거 윈도우에 걸친 계수의 값의 합보다 작은 경우], 현재 프레임 t에 대한 악기의 각각의 계수가 영으로 된다(즉, 어택 시간이 타당하지 않음). 각각의 개시 프레임에서 화성 악기에 대한 계수 벡터의 이러한 후처리는 또한 가장 큰 크기를 갖는 계수를 유지하고 다른 계수를 영으로 만드는 것을 포함할 수 있다. 각각의 비개시 프레임에서 각각의 화성 악기에 대해, 이전 프레임에서의 값이 영이 아니었던 계수만을 유지하고 벡터의 다른 계수를 영으로 만들기 위해 계수 벡터를 후처리하는 것이 바람직할 수 있다.
도 22 내지 도 25는 합성 신호 예 1(동일한 옥타브에서 연주되는 피아노 및 플루트)에 개시 검출 기반 후처리를 적용한 결과를 나타낸 것이다. 이들 도면에서, 수직축은 희소 계수 인덱스이고, 수평축은 시간(단위: 프레임)이며, 수직선은 개시 검출이 표시되어 있는 프레임을 나타낸다. 도 22 및 도 23은, 각각, 후처리 이전 및 이후의 피아노 희소 계수를 나타낸 것이다. 도 24 및 도 25는, 각각, 후처리 이전 및 이후의 플루트 희소 계수를 나타낸 것이다.
도 26 내지 도 30은 합성 신호 예 2(타악기와 함께 동일한 옥타브에서 연주되는 피아노 및 플루트)에 개시 검출 기반 후처리를 적용한 결과를 나타낸 것이다. 이들 도면에서, 수직축은 희소 계수 인덱스이고, 수평축은 시간(단위: 프레임)이며, 수직선은 개시 검출이 표시되어 있는 프레임을 나타낸다. 도 26 및 도 27은, 각각, 후처리 이전 및 이후의 피아노 희소 계수를 나타낸 것이다. 도 28 및 도 29는, 각각, 후처리 이전 및 이후의 플루트 희소 계수를 나타낸 것이다. 도 30은 드럼 희소 계수를 나타낸 것이다.
도 31 내지 도 39는 본 명세서에 기술된 개시 검출 방법을 합성 신호 예 1(동일한 옥타브에서 연주되는 피아노 및 플루트)에 적용한 결과를 나타낸 스펙트럼 사진이다. 도 31은 원래의 합성 신호의 스펙트럼 사진을 나타낸 것이다. 도 32는 후처리 없이 재구성된 피아노 성분의 스펙트럼 사진을 나타낸 것이다. 도 33은 후처리를 사용하여 재구성된 피아노 성분의 스펙트럼 사진을 나타낸 것이다. 도 34는 EM 알고리즘을 사용하여 획득된 인벤토리에 의해 모델링된 피아노를 나타낸 것이다. 도 35는 원래의 피아노를 나타낸 것이다. 도 36은 후처리 없이 재구성된 플루트 성분의 스펙트럼 사진을 나타낸 것이다. 도 37은 후처리를 사용하여 재구성된 플루트 성분의 스펙트럼 사진을 나타낸 것이다. 도 38은 EM 알고리즘을 사용하여 획득된 인벤토리에 의해 모델링된 플루트를 나타낸 것이다. 도 39는 원래의 플루트 성분의 스펙트럼 사진을 나타낸 것이다.
도 40 내지 도 46은 본 명세서에 기술된 개시 검출 방법을 합성 신호 예 2(동일한 옥타브에서 연주되는 피아노 및 플루트, 그리고 드럼)에 적용한 결과를 나타낸 스펙트럼 사진이다. 도 40은 원래의 합성 신호의 스펙트럼 사진을 나타낸 것이다. 도 41은 후처리 없이 재구성된 피아노 성분의 스펙트럼 사진을 나타낸 것이다. 도 42는 후처리를 사용하여 재구성된 피아노 성분의 스펙트럼 사진을 나타낸 것이다. 도 43은 후처리 없이 재구성된 플루트 성분의 스펙트럼 사진을 나타낸 것이다. 도 44는 후처리를 사용하여 재구성된 플루트 성분의 스펙트럼 사진을 나타낸 것이다. 도 45 및 도 46은, 각각, 재구성된 드럼 성분 및 원래의 드럼 성분의 스펙트럼 사진을 나타낸 것이다.
도 47a는 Vincent 등의 Performance Measurement in Blind Audio Source Separation, IEEE Trans. ASSP, vol. 14, no. 4, July 2006, pp. 1462-1469에 기술된 평가 척도를 사용하여, 피아노-플루트 테스트 사례에 적용된 바와 같은 본 명세서에 기술된 개시 검출 방법의 성능을 평가하는 결과를 나타낸 것이다. SIR(signal-to-interference ratio, 신호대 간섭비)은 원하지 않는 음원의 억제(suppression)의 척도이고, 으로서 정의된다. SAR(signal-to-artifact ratio, 신호대 아티팩트비)은 분리 프로세스에 의해 유입된 아티팩트(음악 잡음 등)의 척도이고, 으로서 정의된다. SDR(signal-to-distortion ratio, 신호대 왜곡비)는, 상기 기준 둘 다를 고려하기 때문에, 성능의 전체 척도이고, 으로서 정의된다. 이 정량적 평가는 타당한 레벨의 아티팩트 발생을 갖는 강인한 음원 분리를 보여준다.
초기 기저 함수 행렬을 발생하기 위해 및/또는 (예컨대, 활성화 계수 벡터에 기초하여) 기저 함수 행렬을 갱신하기 위해 EM 알고리즘이 사용될 수 있다. EM 방식에 대한 갱신 규칙의 한 예에 대해 이제부터 기술한다. 스펙트럼 사진 Vft가 주어진 경우, 각각의 시간 프레임에 대해 스펙트럼 기저 벡터 P(f|z) 및 가중치 벡터 Pt(z)를 추정하고자 한다. 이들 분포는 행렬 분해를 제공한다.
다음과 같이 EM 알고리즘을 적용한다: 먼저, 가중치 벡터 Pt(z) 및 스펙트럼 기저 벡터 P(f|z)를 랜덤하게 초기화한다. 이어서, 수렴할 때까지 하기의 단계들을 반복한다: 1) 기대값(Expectation)(E) 단계 - 스펙트럼 기저 벡터 P(f|z) 및 가중치 벡터 Pt(z)가 주어진 경우, 사후 분포(posterior distribution) Pt(z|f)를 추정한다. 이 추정은 다음과 같이 표현될 수 있다:
2) 최대화(Maximization)(M) 단계 - 사후 분포 Pt(z|f)가 주어진 경우, 가중치 벡터 Pt(z) 및 스펙트럼 기저 벡터 P(f|z)를 추정한다. 가중치 벡터의 추정은 다음과 같이 표현될 수 있다:
스펙트럼 기저 벡터의 추정은 다음과 같이 표현될 수 있다:
음향 신호를 수신하도록 구성되어 있는 2개 이상의 마이크의 어레이를 가지는 휴대용 오디오 감지 디바이스 내에서 본 명세서에 기술된 방법을 수행하는 것이 바람직할 수 있다. 이러한 어레이를 포함하도록 구현될 수 있고 오디오 녹음 및/또는 음성 통신 응용을 위해 사용될 수 있는 휴대용 오디오 감지 디바이스의 예는 전화 핸드셋(예컨대, 셀룰러 전화 핸드셋); 유선 또는 무선 헤드셋(예컨대, 블루투스 헤드셋); 핸드헬드 오디오 및/또는 비디오 레코더; 오디오 및/또는 비디오 콘텐츠를 레코딩하도록 구성되어 있는 개인 미디어 플레이어(personal media player); PDA(personal digital assistant) 또는 다른 핸드헬드 컴퓨팅 디바이스; 및 노트북 컴퓨터, 랩톱 컴퓨터, 넷북 컴퓨터, 태블릿 컴퓨터, 또는 다른 휴대용 컴퓨팅 디바이스를 포함한다. 휴대용 컴퓨팅 디바이스의 부류는 현재 랩톱 컴퓨터, 노트북 컴퓨터, 넷북 컴퓨터, 울트라 포터블 컴퓨터, 태블릿 컴퓨터, 모바일 인터넷 디바이스, 스마트북, 및 스마트폰 등의 이름을 가지는 디바이스를 포함한다. 이러한 디바이스는 디스플레이 화면을 포함하는 상부 패널 및 키보드를 포함할 수 있는 하부 패널을 가질 수 있고, 여기서 2개의 패널은 클램쉘(clamshell) 또는 기타 힌지로 결합된(hinged) 관계로 연결되어 있을 수 있다. 이러한 디바이스는 상부 표면 상에 터치스크린 디스플레이를 포함하는 태블릿 컴퓨터와 유사하게 구현될 수 있다. 이러한 방법을 수행하도록 구성될 수 있고 오디오 녹음 및/또는 음성 통신 응용에 사용될 수 있는 오디오 감지 디바이스의 다른 예로는 텔레비전 디스플레이, 셋톱 박스, 및 음성-회의 및/또는 화상 회의 디바이스가 있다.
도 47b는 통신 디바이스(D20)의 블록도를 나타낸 것이다. 디바이스(D20)는 본 명세서에 기술된 것과 같은 장치(A100)(또는 MF100)의 구현예를 포함하는 칩 또는 칩셋(CS10)[예컨대, MSM(mobile station modem, 이동국 모뎀) 칩셋]을 포함하고 있다. 칩/칩셋(CS10)은 장치(A100 또는 MF100)의 동작의 전부 또는 일부를 (예컨대, 명령어로서) 실행하도록 구성되어 있을 수 있는 하나 이상의 프로세서를 포함할 수 있다.
칩/칩셋(CS10)은 무선 주파수(RF) 통신 신호를 [예컨대, 안테나(C40)를 통해] 수신하고 RF 신호 내에 인코딩된 오디오 신호를 디코딩하여 [예컨대, 스피커(SP10)를 통해] 재생하도록 구성되어 있는 수신기를 포함하고 있다. 칩/칩셋(CS10)은 또한 장치(A100)에 의해 생성된 출력 신호에 기초하는 오디오 신호를 인코딩하고 인코딩된 오디오 신호를 나타내는 RF 통신 신호를 [예컨대, 안테나(C40)를 통해] 전송하도록 구성되어 있는 송신기를 포함하고 있다. 예를 들어, 칩/칩셋(CS10)의 하나 이상의 프로세서는, 인코딩된 오디오 신호가 분해된 신호에 기초하도록, 다중 채널 오디오 입력 신호의 하나 이상의 채널에 대해 앞서 기술된 바와 같은 분해 동작을 수행하도록 구성되어 있을 수 있다. 이 예에서, 디바이스(D20)는 또한 사용자 제어 및 상호작용을 지원하기 위해 키패드(C10) 및 디스플레이(C20)를 포함하고 있다.
도 48은 디바이스(D20)의 인스턴스로서 구현될 수 있는 핸드셋(H100)(예컨대, 스마트폰)의 정면도, 배면도 및 측면도를 나타낸 것이다. 핸드셋(H100)은 전면에 배열된 3개의 마이크(MF10, MF20, 및 MF30); 및 배면에 배열된 2개의 마이크(MR10 및 MR20) 및 카메라 렌즈(L10)를 포함하고 있다. 스피커(LS10)는 전면의 상부 중앙에서 마이크(MF10) 근방에 배열되어 있고, 2개의 다른 스피커(LS20L, LS20R)가 또한 (예컨대, 스피커폰 응용을 위해) 제공되어 있다. 이러한 핸드셋의 마이크들 사이의 최대 거리는 통상적으로 약 10 또는 12 cm이다. 본 명세서에 개시된 시스템, 방법 및 장치의 적용성이 본 명세서에서 살펴본 특정의 예로 제한되지 않는다는 것이 명백히 개시되어 있다.
본 명세서에 개시된 방법 및 장치가 일반적으로 이러한 응용의 모바일 또는 다른 휴대용 인스턴스 및/또는 원거리 음원으로부터의 신호 성분의 감지를 비롯한 임의의 송수신 및/또는 오디오 감지 응용에 적용될 수 있다. 예를 들어, 본 명세서에서 개시되는 구성의 범위는 코드 분할 다중 접속(CDMA) 공중파 인터페이스를 이용하도록 구성된 무선 전화 통신 시스템 내에 존재하는 통신 디바이스를 포함한다. 그러나, 이 기술 분야의 당업자라면 본 명세서에서 설명되는 바와 같은 특징들을 갖는 방법 및 장치가 유선 및/또는 무선(예를 들어, CDMA, TDMA, FDMA 및/또는 TD-SCDMA) 전송 채널을 통해 VoIP(Voice over IP)를 이용하는 시스템과 같이 이 기술 분야의 당업자에게 알려진 광범위한 기술을 이용하는 임의의 다양한 통신 시스템 내에 존재할 수 있다는 것을 잘 알 것이다.
본 명세서에서 개시되는 통신 디바이스는 패킷 교환 네트워크(예를 들어, VoIP와 같은 프로토콜에 따라 오디오 전송을 전달하도록 배열된 유선 및/또는 무선 네트워크) 및/또는 회선 교환 네트워크에서 사용되도록 구성될 수 있다는 점이 명백히 고려되고 본 명세서에 개시되어 있다. 또한, 본 명세서에 개시되어 있는 통신 디바이스는 협대역 코딩 시스템(예를 들어, 약 4 또는 5 kHz의 오디오 주파수 범위를 인코딩하는 시스템)에서 사용되도록 및/또는 전체 대역 광대역 코딩 시스템 및 분할 대역 광대역 코딩 시스템을 포함하는 광대역 코딩 시스템(예를 들어, 5 kHz보다 높은 오디오 주파수를 인코딩하는 시스템)에서 사용되도록 구성될 수 있다는 점이 명백히 고려되고 본 명세서에 개시되어 있다.
기술된 구성에 대한 이상의 제시는 이 기술 분야의 당업자가 본 명세서에 개시되는 방법 및 기타 구조를 실시하거나 이용할 수 있게 하기 위해 제공된다. 본 명세서에 도시되고 설명되는 흐름도, 블록도 및 기타 구조는 예시를 위한 것에 불과하고, 이러한 구조의 다른 변형들도 본 발명의 범위 내에 있다. 이러한 구성에 대한 다양한 변경들이 가능하며, 본 명세서에서 설명되는 일반 원리가 다른 구성들에도 적용될 수 있다. 따라서, 본 발명은 전술한 구성들로 한정되는 것을 의도하는 것이 아니라, 최초 명세서의 일부를 형성하는 출원시의 첨부된 청구항들에서 개시되는 것을 포함하여, 본 명세서에서 임의의 방식으로 개시되는 원리 및 새로운 특징과 일치하는 가장 넓은 범위를 부여받아야 한다.
이 기술 분야의 당업자들은 정보 또는 신호가 임의의 다양한 상이한 기술 및 기법을 이용하여 표현될 수 있다는 것을 잘 알 것이다. 예를 들어, 상기 설명 전반에서 참조될 수 있는 데이터, 명령어, 명령, 정보, 신호, 비트 및 심볼은 전압, 전류, 전자기파, 자기장 또는 입자, 광학 장 또는 입자 또는 이들의 임의의 조합에 의해 표현될 수 있다.
본 명세서에서 개시되는 바와 같은 구성의 구현을 위한 중요한 설계 요건은 특히, 압축된 오디오 또는 시청각 정보(예를 들어, 본 명세서에서 식별되는 예들 중 하나와 같은 압축 포맷에 따라 인코딩된 파일 또는 스트림)의 재생과 같은 계산 집약적인 응용 또는 광대역 통신(예를 들어, 12, 16, 44.1, 48 또는 192 kHz와 같은 8 kHz보다 높은 샘플링 레이트에서의 음성 통신)을 위한 응용을 위해 처리 지연 및/또는 계산 복잡성(통상적으로 초당 수백 만개의 명령어, 즉 MIPS 단위로 측정됨)을 최소화하는 것을 포함할 수 있다.
본 명세서에서 설명되는 바와 같은 다중 마이크 처리 시스템의 목표는 10 내지 12 dB의 전체 잡음 감소를 달성하는 것, 원하는 스피커의 움직임 동안 음성 레벨 및 컬러를 유지하는 것, 적극적인 잡음 제거 대신에 잡음이 배경 내로 이동하였다는 지각을 획득하는 것, 음성의 잔향 제거(dereverberation) 및/또는 더 적극적인 잡음 감소를 위해 후처리의 옵션을 가능하게 하는 것을 포함할 수 있다.
본 명세서에서 개시되는 바와 같은 장치[예컨대, 장치(A100, A300, A310, A700 및 MF100)]는 의도된 응용에 적합한 것으로 간주되는 하드웨어와 소프트웨어 및/또는 펌웨어의 임의 조합으로 구현될 수 있다. 예를 들어, 그러한 장치의 요소들은 예를 들어 동일 칩 상에 또는 칩셋 내의 둘 이상의 칩 사이에 존재하는 전자 및/또는 광학 디바이스로서 제조될 수 있다. 그러한 디바이스의 일례는 트랜지스터 또는 논리 게이트와 같은 논리 요소들의 고정 또는 프로그래밍 가능 어레이이며, 이들 요소 중 임의의 요소는 하나 이상의 그러한 어레이로서 구현될 수 있다. 장치의 요소들 중 임의의 둘 이상 또는 심지어 전부가 동일 어레이 또는 어레이들 내에 구현될 수 있다. 그러한 어레이 또는 어레이들은 하나 이상의 칩 내에(예를 들어, 둘 이상의 칩을 포함하는 칩셋 내에) 구현될 수 있다.
본 명세서에서 개시되는 장치의 다양한 구현들의 하나 이상의 요소는 또한, 전체적으로 또는 부분적으로, 마이크로프로세서, 내장 프로세서, IP 코어, 디지털 신호 처리기, FPGA(field-programmable gate array), ASSP(application-specific standard product) 및 ASIC(application-specific integrated circuit)과 같은 논리 요소들의 하나 이상의 고정 또는 프로그래밍가능 어레이 상에서 실행되도록 배열된 하나 이상의 명령어 세트로서 구현될 수 있다. 본 명세서에서 개시되는 바와 같은 장치의 일 구현의 임의의 다양한 요소는 또한 하나 이상의 컴퓨터(예를 들어, 하나 이상의 명령어 세트 또는 시퀀스를 실행하도록 프로그래밍되는 하나 이상의 어레이를 포함하는 머신, "프로세서"라고도 함)로서 구현될 수 있으며, 이들 요소 중 임의의 둘 이상 또는 심지어 전부가 동일한 그러한 컴퓨터 또는 컴퓨터들 내에 구현될 수 있다.
본 명세서에서 개시되는 바와 같은 처리를 위한 프로세서 또는 다른 수단은 예를 들어 동일 칩 상에 또는 칩셋 내의 둘 이상의 칩 사이에 존재하는 하나 이상의 전자 및/또는 광학 디바이스로서 제조될 수 있다. 그러한 디바이스의 일례는 트랜지스터 또는 논리 게이트와 같은 논리 요소들의 고정 또는 프로그래밍 가능 어레이이며, 이들 요소 중 임의의 요소는 하나 이상의 그러한 어레이로서 구현될 수 있다. 그러한 어레이 또는 어레이들은 하나 이상의 칩 내에(예를 들어, 둘 이상의 칩을 포함하는 칩셋 내에) 구현될 수 있다. 그러한 어레이들의 예들은 마이크로프로세서, 내장 프로세서, IP 코어, DSP, FPGA, ASSP 및 ASIC과 같은 논리 요소의 고정 또는 프로그래밍 가능 어레이를 포함한다. 본 명세서에서 개시되는 바와 같은 처리를 위한 프로세서 또는 다른 수단은 또한 하나 이상의 컴퓨터(예를 들어, 하나 이상의 명령어 세트 또는 시퀀스를 실행하도록 프로그래밍되는 하나 이상의 어레이를 포함하는 머신들) 또는 다른 프로세서들로서 구현될 수 있다. 프로세서가 내장된 디바이스 또는 시스템(예를 들어, 오디오 감지 디바이스)의 다른 동작과 관련된 작업 등 본 명세서에 기술된 음악 분해 절차와 직접 관련되지 않은 다른 명령어 세트들을 실행하거나 작업들을 수행하는 데 본 명세서에 기술된 것과 같은 프로세서가 사용되는 것이 가능하다. 본 명세서에서 설명되는 바와 같은 방법의 일부는 오디오 감지 디바이스의 프로세서에 의해 수행되고, 방법의 다른 부분은 하나 이상의 다른 프로세서의 제어 하에 수행되는 것도 가능하다.
이 기술 분야의 당업자들은 본 명세서에서 개시되는 구성들과 관련하여 설명되는 다양한 예시적인 모듈, 논리 블록, 회로 및 테스트 및 다른 동작들이 전자 하드웨어, 컴퓨터 소프트웨어 또는 이 둘의 조합으로서 구현될 수 있다는 것을 알 것이다. 그러한 모듈, 논리 블록, 회로 및 동작은 범용 프로세서, 디지털 신호 프로세서(DSP), ASIC 또는 ASSP, FPGA 또는 다른 프로그래밍 가능 논리 디바이스, 개별 게이트 또는 트랜지스터 논리, 개별 하드웨어 컴포넌트들, 또는 본 명세서에 개시되는 바와 같은 구성을 생성하도록 설계된 이들의 임의 조합을 이용하여 구현 또는 수행될 수 있다. 예를 들어, 그러한 구성은 하드-와이어드 회로로서, 주문형 집적 회로 내에 제조된 회로 구성으로서, 또는 비휘발성 저장 장치 내에 로딩된 펌웨어 프로그램 또는 데이터 저장 매체로부터 또는 그 안에 머신 판독 가능 코드로서 로딩된 소프트웨어 프로그램으로서 적어도 부분적으로 구현될 수 있으며, 그러한 코드는 범용 프로세서 또는 다른 디지털 신호 처리 유닛과 같은 논리 요소들의 어레이에 의해 실행될 수 있는 명령어이다. 범용 프로세서는 마이크로프로세서일 수 있지만, 대안으로서 프로세서는 임의의 전통적인 프로세서, 제어기, 마이크로컨트롤러 또는 상태 머신일 수 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예를 들어 DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서, DSP 코어와 연계된 하나 이상의 마이크로프로세서 또는 임의의 다른 그러한 구성으로서 구현될 수 있다. 소프트웨어 모듈은 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 플래시 RAM과 같은 비휘발성 RAM(NVRAM), 소거 및 프로그래밍 가능한 ROM(EPROM), 전기적으로 소거 및 프로그래밍 가능한 ROM(EEPROM), 레지스터, 하드 디스크, 이동식 디스크 또는 CD-ROM에 또는 이 기술 분야에 공지된 임의의 다른 형태의 저장 매체에 존재할 수 있다. 예시적인 저장 매체가 프로세서에 결합되며, 따라서 프로세서는 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기록할 수 있다. 대안으로서, 저장 매체는 프로세서와 일체일 수 있다. 프로세서와 저장 매체는 ASIC 내에 위치할 수 있다. ASIC은 사용자 단말기 내에 위치할 수 있다. 대안으로서, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 구성요소로서 존재할 수 있다.
본 명세서에서 개시되는 다양한 방법(예를 들어, 방법(M100), 및 본 명세서에 설명된 다양한 장치의 동작의 설명을 통해 개시된 다른 방법들)은 프로세서와 같은 논리 요소들의 어레이에 의해 수행될 수 있으며, 본 명세서에서 설명되는 바와 같은 장치의 다양한 요소들은 그러한 어레이 상에서 실행되도록 설계되는 모듈로서 부분적으로 구현될 수 있다는 점에 유의한다. 본 명세서에서 사용될 때, "모듈" 또는 "서브모듈"이라는 용어는 소프트웨어, 하드웨어 또는 펌웨어 형태의 컴퓨터 명령어(예를 들어, 논리 표현)를 포함하는 임의의 방법, 장치, 디바이스, 유닛 또는 컴퓨터 판독 가능 데이터 저장 매체를 지칭할 수 있다. 동일 기능을 수행하기 위해 다수의 모듈 또는 시스템이 하나의 모듈 또는 시스템으로 결합될 수 있고, 하나의 모듈 또는 시스템이 다수의 모듈 또는 시스템으로 분할될 수 있다는 것을 이해해야 한다. 소프트웨어 또는 다른 컴퓨터 실행 가능 명령어에서 구현될 때, 본질적으로 프로세스의 요소들은 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등과 더불어 관련 작업들을 수행하기 위한 코드 세그먼트이다. "소프트웨어"라는 용어는 소스 코드, 어셈블리 언어 코드, 머신 코드, 이진 코드, 펌웨어, 매크로코드, 마이크로코드, 논리 요소들의 어레이에 의해 실행 가능한 임의의 하나 이상의 명령어 세트 또는 시퀀스 및 이러한 예들의 임의 조합을 포함하는 것으로 이해되어야 한다. 프로그램 또는 코드 세그먼트는 프로세서 판독 가능 저장 매체에 저장되거나, 전송 매체 또는 통신 링크를 통해 반송파 내에 구현된 컴퓨터 데이터 신호에 의해 전송될 수 있다.
본 명세서에서 개시되는 방법, 방식 및 기술의 구현은 논리 요소들의 어레이(예를 들어, 프로세서, 마이크로프로세서, 마이크로컨트롤러, 또는 다른 유한 상태 머신)를 포함하는 머신에 의해 판독 가능한 및/또는 실행 가능한 하나 이상의 명령어 세트로서 유형적으로 (예를 들어, 본 명세서에 열거된 바와 같은 하나 이상의 컴퓨터 판독 가능 매체에) 구현될 수 있다. "컴퓨터 판독 가능 매체"라는 용어는 정보를 저장하거나 전송할 수 있는, 휘발성, 비휘발성, 이동식 및 비이동식 매체를 포함하는 임의의 매체를 포함할 수 있다. 컴퓨터 판독 가능 매체의 예들은 전자 회로, 반도체 메모리 디바이스, ROM, 플래시 메모리, 소거 가능 ROM(EROM), 플로피 디스켓 또는 다른 자기 저장 장치, CD-ROM/DVD 또는 다른 광학 저장 장치, 하드 디스크, 광섬유 매체, 라디오 주파수(RF) 링크, 또는 원하는 정보를 저장하는 데 사용될 수 있고 액세스될 수 있는 임의의 다른 매체를 포함한다. 컴퓨터 데이터 신호는 전자 네트워크 채널, 광섬유, 공기, 전자기파, RF 링크 등과 같은 전송 매체를 통해 전송될 수 있는 임의의 신호를 포함할 수 있다. 코드 세그먼트는 인터넷 또는 인트라넷과 같은 컴퓨터 네트워크를 통해 다운로드될 수 있다. 어느 경우에나, 본 발명의 범위는 그러한 실시예들에 의해 한정되는 것으로 해석되지 않아야 한다.
본 명세서에서 설명되는 방법들의 작업들 각각은 하드웨어에서 직접, 프로세서에 의해 실행되는 소프트웨어 모듈에서 또는 이 둘의 조합에서 구현될 수 있다. 본 명세서에서 개시되는 바와 같은 방법의 일 구현의 통상적인 응용에서는, 논리 요소들(예를 들어, 논리 게이트들)의 어레이가 방법의 다양한 작업들 중 하나, 둘 이상 또는 심지어 전부를 수행하도록 구성된다. 작업들 중 하나 이상(아마도 전부)은 또한 논리 요소들의 어레이(예를 들어, 프로세서, 마이크로프로세서, 마이크로컨트롤러 또는 다른 유한 상태 머신)를 포함하는 머신(예를 들어, 컴퓨터)에 의해 판독 및/또는 실행될 수 있는 컴퓨터 프로그램 제품(예를 들어, 디스크, 플래시 또는 다른 비휘발성 메모리 카드, 반도체 메모리 칩 등과 같은 하나 이상의 데이터 저장 매체) 내에 구현되는 코드(예를 들어, 하나 이상의 명령어 세트)로서 구현될 수 있다. 본 명세서에서 개시되는 바와 같은 방법의 일 구현의 작업들은 또한 둘 이상의 그러한 어레이 또는 머신에 의해 수행될 수 있다. 이들 또는 다른 구현들에서, 작업들은 무선 통신 능력을 갖는 셀룰러 전화 또는 다른 디바이스와 같은 무선 통신을 위한 디바이스 내에서 수행될 수 있다. 그러한 디바이스는 (예를 들어, VoIP와 같은 하나 이상의 프로토콜을 이용하여) 회선 교환 및/또는 패킷 교환 네트워크들과 통신하도록 구성될 수 있다. 예를 들어, 그러한 디바이스는 인코딩된 프레임들을 수신 및/또는 송신하도록 구성된 RF 회로를 포함할 수 있다.
본 명세서에서 개시되는 다양한 방법들은 휴대용 통신 디바이스(핸드셋, 헤드셋, 또는 PDA(portable digital assistant) 등)에 의해 수행될 수 있으며, 본 명세서에서 설명되는 다양한 장치들은 그러한 디바이스 내에 포함될 수 있다는 것이 명백히 개시되어 있다. 통상적인 실시간(예를 들어, 온라인) 응용은 그러한 이동 디바이스를 이용하여 수행되는 전화 통화이다.
하나 이상의 예시적인 실시예에서, 본 명세서에서 설명되는 동작들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의 조합에서 구현될 수 있다. 소프트웨어에서 구현되는 경우, 그러한 동작들은 컴퓨터 판독 가능 매체 상에 하나 이상의 명령어 또는 코드로서 저장되거나 그를 통해 전송될 수 있다. "컴퓨터 판독 가능 매체"라는 용어는 컴퓨터 판독 가능 저장 매체 및 통신(예를 들어, 전송) 매체 모두를 포함한다. 제한이 아니라 예로서, 컴퓨터 판독 가능 저장 매체는 (동적 또는 정적 RAM, ROM, EEPROM 및/또는 플래시 RAM을 포함할 수 있지만 이에 한정되지 않는) 반도체 메모리, 또는 강유전성, 자기 저항, 오보닉, 폴리머 또는 상변화 메모리; CD-ROM 또는 다른 광 디스크 저장 장치; 및/또는 자기 디스크 저장 장치 또는 다른 자기 저장 디바이스들과 같은 저장 요소들의 어레이를 포함할 수 있다. 그러한 저장 매체는 컴퓨터에 의해 액세스될 수 있는 명령어 또는 데이터 구조의 형태로 정보를 저장할 수 있다. 통신 매체는 원하는 프로그램 코드를 명령어 또는 데이터 구조의 형태로 전달하는 데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 매체를 포함할 수 있으며, 이러한 매체는 하나의 장소로부터 다른 장소로의 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함할 수 있다. 또한, 임의의 접속도 적절히 컴퓨터 판독 가능 매체로서 지칭된다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 트위스트 쌍, 디지털 가입자 회선(DSL), 또는 적외선, 라디오 및/또는 마이크로파와 같은 무선 기술을 이용하여 웹사이트, 서버 또는 다른 원격 소스로부터 전송되는 경우, 동축 케이블, 광섬유 케이블, 트위스트 쌍, DSL, 또는 적외선, 라디오 및/또는 마이크로파와 같은 무선 기술은 매체의 정의 내에 포함된다. 본 명세서에서 사용되는 바와 같은 디스크(disk, disc)는 컴팩트 디스크(compact disc; CD), 레이저 디스크(disc), 광 디스크(disc), 디지털 다기능 디스크(digital versatile disc; DVD), 플로피 디스크(floppy disk) 및 블루레이 디스크(Blu-ray Disc)(상표)(Blu-Ray Disc Association, Universal City, CA)를 포함하며, 여기서 디스크(disk)는 일반적으로 데이터를 자기적으로 재생하고, 디스크(disc)는 데이터를 레이저를 이용하여 광학적으로 재생한다. 위의 것들의 조합들도 컴퓨터 판독 가능 매체의 범위 내에 포함되어야 한다.
본 명세서에서 설명되는 바와 같은 음향 신호 처리 장치[예컨대, 장치(A100 또는 MF100)]는 소정의 동작들을 제어하기 위하여 음성 입력을 수신하는 전자 디바이스 내에 통합될 수 있거나, 통신 디바이스들과 같은 배경 잡음들로부터의 원하는 잡음들의 분리로부터 이익을 얻을 수 있다. 많은 응용은 다수의 방향으로부터 발생하는 배경 사운드들로부터 선명한 원하는 사운드를 분리하거나 향상시키는 것으로부터 이익을 얻을 수 있다. 그러한 응용들은 음성 인식 및 검출, 음성 향상 및 분리, 음성 작동 제어 등과 같은 능력들을 포함하는 전자 또는 컴퓨팅 디바이스들 내의 사람-머신 인터페이스들을 포함할 수 있다. 제한된 처리 능력들만을 제공하는 디바이스들에 적합하도록 그러한 음향 신호 처리 장치를 구현하는 것이 바람직할 수 있다.
본 명세서에서 설명되는 모듈들, 요소들 및 디바이스들의 다양한 구현들의 요소들은 예를 들어 동일 칩 상에 또는 칩셋 내의 둘 이상의 칩 사이에 존재하는 전자 및/또는 광학 디바이스들로서 제조될 수 있다. 그러한 디바이스의 일례는 트랜지스터 또는 게이트와 같은 논리 요소들의 고정 또는 프로그래밍 가능 어레이이다. 본 명세서에서 설명되는 장치의 다양한 구현들의 하나 이상의 요소는 또한 마이크로프로세서, 내장 프로세서, IP 코어, 디지털 신호 프로세서, FPGA, ASSP 및 ASIC과 같은 논리 요소들의 하나 이상의 고정 또는 프로그래밍 가능 어레이 상에서 실행되도록 배열되는 하나 이상의 명령어 세트로서 완전히 또는 부분적으로 구현될 수 있다.
본 명세서에서 설명되는 바와 같은 장치의 일 구현의 하나 이상의 요소는 장치가 내장된 디바이스 또는 시스템의 다른 동작과 관련된 작업과 같이 장치의 동작과 직접 관련되지 않은 다른 명령어 세트들을 실행하거나 작업들을 수행하는 데 사용될 수 있다. 그러한 장치의 일 구현의 하나 이상의 요소는 공통 구조를 갖는 것도 가능하다(예를 들어, 상이한 시간들에 상이한 요소들에 대응하는 코드의 부분들을 실행하는 데 사용되는 프로세서, 상이한 시간들에 상이한 요소들에 대응하는 작업들을 수행하도록 실행되는 명령어들의 세트, 또는 상이한 시간들에 상이한 요소들에 대한 동작들을 수행하는 전자 및/또는 광학 디바이스들의 배열).
Claims (43)
- 오디오 신호를 분해하는 방법으로서,
상기 오디오 신호의 복수의 시간 세그먼트(segments in time) 각각에 대해, 일정 주파수 범위에 걸쳐 대응하는 신호 표현을 계산하는 단계; 및
상기 계산된 복수의 신호 표현 및 복수의 기저 함수(basis functions)에 기초하여, 활성화 계수들의 벡터를 계산하는 단계
를 포함하고,
상기 벡터의 각각의 활성화 계수는 상기 복수의 기저 함수 중 상이한 기저 함수에 대응하며,
상기 복수의 기저 함수 각각은 상기 주파수 범위에 걸친 제1 대응하는 신호 표현, 및 상기 제1 대응하는 신호 표현과 상이한 상기 주파수 범위에 걸친 제2 대응하는 신호 표현을 포함하고,
상기 제1 대응하는 신호 표현 및 제2 대응하는 신호 표현의 각각은 음표의 상이한 영역에 대응하는 음색을 표시하고, 시간에 따른 음색의 변화에 기초하여 상기 기저 함수가 선택되도록 상기 음표의 상이한 영역의 음색에 관한 정보가 상기 복수의 기저 함수로 인코딩되는 방법. - 제1항에 있어서,
상기 계산된 대응하는 신호 표현에서 (A) 200 Hz 초과의 주파수에서의 총 에너지의 (B) 상기 주파수 범위에 걸친 총 에너지에 대한 비를 증가시키기 위해, 상기 오디오 신호의 상기 복수의 세그먼트 중 적어도 하나의 세그먼트의 200 Hz 초과의 고주파 영역을 프리엠퍼시스(pre-emphasize)하는 단계를 더 포함하는 방법. - 제1항에 있어서, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트에 대해, 상기 계산된 대응하는 신호 표현에서의 변조의 레벨은 대응하는 세그먼트에서의 상기 변조의 레벨보다 낮고, 상기 변조는 진폭 변조 및 피치 변조 중 적어도 하나인 방법.
- 제3항에 있어서, 상기 복수의 세그먼트 중 상기 적어도 하나의 세그먼트에 대해, 상기 대응하는 신호 표현을 계산하는 단계는 상기 변조의 레벨의 척도(measure)를 기록하는 단계를 포함하는 방법.
- 제1항에 있어서,
상기 벡터의 활성화 계수들의 적어도 절반은 영의 값을 갖는 방법. - 제1항에 있어서, 상기 활성화 계수들의 벡터를 계산하는 단계는 Bf=y 형태의 선형 연립 방정식(system of linear equations)에 대한 해를 계산하는 단계를 포함하고, 여기서 y는 상기 복수의 계산된 신호 표현을 포함하는 벡터이고, B는 상기 복수의 기저 함수를 포함하는 행렬이며, f는 상기 활성화 계수들의 벡터인 방법.
- 제1항에 있어서, 상기 활성화 계수들의 벡터를 계산하는 단계는 상기 활성화 계수들의 벡터의 L1 놈(L1 norm)을 최소화하는 단계를 포함하는 방법.
- 제1항에 있어서, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트는, 상기 오디오 신호에서, 상기 복수의 세그먼트 중에 있지 않은 상기 오디오 신호의 적어도 하나의 세그먼트에 의해 상기 복수의 세그먼트 중의 각각의 다른 세그먼트로부터 분리되는 방법.
- 제1항에 있어서, 상기 복수의 기저 함수 중 각각의 기저 함수에 대해,
상기 제1 대응하는 신호 표현은 상기 주파수 범위에 걸쳐 대응하는 악기의 제1 음색을 나타내고,
상기 제2 대응하는 신호 표현은, 상기 제1 음색과 상이한, 상기 주파수 범위에 걸쳐 상기 대응하는 악기의 제2 음색을 나타내는 방법. - 제9항에 있어서, 상기 복수의 기저 함수 중 각각의 기저 함수에 대해,
상기 제1 음색은 대응하는 음표의 제1 시간 구간 동안의 음색이고,
상기 제2 음색은 상기 제1 시간 구간과 상이한 상기 대응하는 음표의 제2 시간 구간 동안의 음색인 방법. - 제1항에 있어서, 상기 복수의 세그먼트 각각에 대해, 상기 대응하는 신호 표현은 대응하는 주파수 영역 벡터에 기초하는 방법.
- 제1항에 있어서, 상기 방법은, 상기 활성화 계수들의 벡터를 계산하는 단계 이전에, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트로부터의 정보에 기초하여, 보다 큰 기저 함수의 세트로부터 상기 복수의 기저 함수를 선택하는 단계를 포함하는 방법.
- 제1항에 있어서, 상기 방법은,
상기 복수의 세그먼트 중 적어도 하나의 세그먼트에 대해, 비선형 주파수 영역에서 대응하는 신호 표현을 계산하는 단계; 및
상기 활성화 계수들의 벡터를 계산하는 단계 이전에, 상기 비선형 주파수 영역에서의 상기 계산된 신호 표현 및 제2의 복수의 기저 함수에 기초하여, 제2의 활성화 계수들의 벡터를 계산하는 단계
를 포함하고,
상기 제2의 복수의 기저 함수 각각은 상기 비선형 주파수 영역에서의 대응하는 신호 표현을 포함하는 방법. - 제13항에 있어서, 상기 방법은, 상기 계산된 제2의 활성화 계수들의 벡터로부터의 정보에 기초하여, 기저 함수들의 인벤토리(inventory)로부터 상기 복수의 기저 함수를 선택하는 단계를 포함하는 방법.
- 오디오 신호를 분해하는 장치로서,
상기 오디오 신호의 복수의 시간 세그먼트 각각에 대해, 일정 주파수 범위에 걸쳐 대응하는 신호 표현을 계산하는 수단; 및
상기 계산된 복수의 신호 표현 및 복수의 기저 함수에 기초하여, 활성화 계수들의 벡터를 계산하는 수단
을 포함하고,
상기 벡터의 각각의 활성화 계수는 상기 복수의 기저 함수 중 상이한 기저 함수에 대응하며,
상기 복수의 기저 함수 각각은 상기 주파수 범위에 걸친 제1 대응하는 신호 표현, 및 상기 제1 대응하는 신호 표현과 상이한 상기 주파수 범위에 걸친 제2 대응하는 신호 표현을 포함하고,
상기 제1 대응하는 신호 표현 및 제2 대응하는 신호 표현의 각각은 음표의 상이한 영역에 대응하는 음색을 표시하고, 시간에 따른 음색의 변화에 기초하여 상기 기저 함수가 선택되도록 상기 음표의 상이한 영역의 음색에 관한 정보가 상기 복수의 기저 함수로 인코딩되는 장치. - 제15항에 있어서,
상기 계산된 대응하는 신호 표현에서 (A) 200 Hz 초과의 주파수에서의 총 에너지의 (B) 상기 주파수 범위에 걸친 총 에너지에 대한 비를 증가시키기 위해, 상기 오디오 신호의 상기 복수의 세그먼트 중 적어도 하나의 세그먼트의 200 Hz 초과의 고주파 영역을 프리엠퍼시스(pre-emphasize)하는 수단을 더 포함하는 장치. - 제15항에 있어서, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트에 대해, 상기 계산된 대응하는 신호 표현에서의 변조의 레벨은 대응하는 세그먼트에서의 상기 변조의 레벨보다 낮고, 상기 변조는 진폭 변조 및 피치 변조 중 적어도 하나인 장치.
- 제17항에 있어서, 상기 대응하는 신호 표현을 계산하는 수단은 상기 복수의 세그먼트 중 상기 적어도 하나의 세그먼트에 대해 상기 변조의 레벨의 척도를 기록하는 수단을 포함하는 장치.
- 제15항에 있어서, 상기 벡터의 활성화 계수들의 적어도 절반은 영의 값을 갖는 장치.
- 제15항에 있어서, 상기 활성화 계수들의 벡터를 계산하는 수단은 Bf=y 형태의 선형 연립 방정식에 대한 해를 계산하는 수단을 포함하고, 여기서 y는 상기 복수의 계산된 신호 표현을 포함하는 벡터이고, B는 상기 복수의 기저 함수를 포함하는 행렬이며, f는 상기 활성화 계수들의 벡터인 장치.
- 제15항에 있어서, 상기 활성화 계수들의 벡터를 계산하는 수단은 상기 활성화 계수들의 벡터의 L1 놈을 최소화하는 수단을 포함하는 장치.
- 제15항에 있어서, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트는, 상기 오디오 신호에서, 상기 복수의 세그먼트 중에 있지 않은 상기 오디오 신호의 적어도 하나의 세그먼트에 의해 상기 복수의 세그먼트 중의 각각의 다른 세그먼트로부터 분리되는 장치.
- 제15항에 있어서, 상기 복수의 기저 함수 중 각각의 기저 함수에 대해,
상기 제1 대응하는 신호 표현은 상기 주파수 범위에 걸쳐 대응하는 악기의 제1 음색을 나타내고,
상기 제2 대응하는 신호 표현은, 상기 제1 음색과 상이한, 상기 주파수 범위에 걸쳐 상기 대응하는 악기의 제2 음색을 나타내는 장치. - 제23항에 있어서, 상기 복수의 기저 함수 중 각각의 기저 함수에 대해,
상기 제1 음색은 대응하는 음표의 제1 시간 구간 동안의 음색이고,
상기 제2 음색은 상기 제1 시간 구간과 상이한 상기 대응하는 음표의 제2 시간 구간 동안의 음색인 장치. - 제15항에 있어서, 상기 복수의 세그먼트 각각에 대해, 상기 대응하는 신호 표현은 대응하는 주파수 영역 벡터에 기초하는 장치.
- 제15항에 있어서, 상기 장치는, 상기 활성화 계수들의 벡터의 계산 이전에, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트로부터의 정보에 기초하여, 보다 큰 기저 함수의 세트(a larger set of basis functions)로부터 상기 복수의 기저 함수를 선택하는 수단을 포함하는 장치.
- 제26항에 있어서, 상기 보다 큰 기저 함수의 세트로부터 상기 복수의 기저 함수를 선택하는 수단은,
상기 복수의 세그먼트 중 적어도 하나의 세그먼트에 대해, 비선형 주파수 영역에서 대응하는 신호 표현을 계산하는 수단; 및
상기 활성화 계수들의 벡터의 계산 이전에, 상기 비선형 주파수 영역에서의 상기 계산된 신호 표현 및 제2의 복수의 기저 함수에 기초하여, 제2의 활성화 계수들의 벡터를 계산하는 수단
을 포함하고,
상기 제2의 복수의 기저 함수 각각은 상기 비선형 주파수 영역에서의 대응하는 신호 표현을 포함하는 장치. - 제27항에 있어서, 상기 장치는, 상기 계산된 제2의 활성화 계수들의 벡터로부터의 정보에 기초하여, 기저 함수들의 인벤토리로부터 상기 복수의 기저 함수를 선택하는 수단을 포함하는 장치.
- 오디오 신호를 분해하는 장치로서,
상기 오디오 신호의 복수의 시간 세그먼트 각각에 대해, 일정 주파수 범위에 걸쳐 대응하는 신호 표현을 계산하도록 구성되는 변환 모듈; 및
상기 계산된 복수의 신호 표현 및 복수의 기저 함수에 기초하여, 활성화 계수들의 벡터를 계산하도록 구성되는 계수 벡터 계산기
를 포함하고,
상기 벡터의 각각의 활성화 계수는 상기 복수의 기저 함수 중 상이한 기저 함수에 대응하며,
상기 복수의 기저 함수 각각은 상기 주파수 범위에 걸친 제1 대응하는 신호 표현, 및 상기 제1 대응하는 신호 표현과 상이한 상기 주파수 범위에 걸친 제2 대응하는 신호 표현을 포함하고,
상기 제1 대응하는 신호 표현 및 제2 대응하는 신호 표현의 각각은 음표의 상이한 영역에 대응하는 음색을 표시하고, 시간에 따른 음색의 변화에 기초하여 상기 기저 함수가 선택되도록 상기 음표의 상이한 영역의 음색에 관한 정보가 상기 복수의 기저 함수로 인코딩되는 장치. - 제29항에 있어서,
상기 계산된 대응하는 신호 표현에서 (A) 200 Hz 초과의 주파수에서의 총 에너지의 (B) 상기 주파수 범위에 걸친 총 에너지에 대한 비를 증가시키기 위해, 상기 오디오 신호의 상기 복수의 세그먼트 중 적어도 하나의 세그먼트의 200 Hz 초과의 고주파 영역을 프리엠퍼시스(pre-emphasize)하도록 구성되는 프리엠퍼시스 필터를 더 포함하는 장치. - 제29항에 있어서, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트에 대해, 상기 계산된 대응하는 신호 표현에서의 변조의 레벨은 대응하는 세그먼트에서의 상기 변조의 레벨보다 낮고, 상기 변조는 진폭 변조 및 피치 변조 중 적어도 하나인 장치.
- 제31항에 있어서, 상기 장치는, 상기 복수의 세그먼트 중 상기 적어도 하나의 세그먼트에 대해 상기 변조의 레벨의 척도를 계산하도록 구성되는 변조 레벨 계산기를 포함하는 장치.
- 제29항에 있어서, 상기 벡터의 활성화 계수들의 적어도 절반은 영의 값을 갖는 장치.
- 제29항에 있어서, 상기 계수 벡터 계산기는 Bf=y 형태의 선형 연립 방정식에 대한 해를 계산하도록 구성되고, 여기서 y는 상기 복수의 계산된 신호 표현을 포함하는 벡터이고, B는 상기 복수의 기저 함수를 포함하는 행렬이며, f는 상기 활성화 계수들의 벡터인 장치.
- 제29항에 있어서, 상기 계수 벡터 계산기는 상기 활성화 계수들의 벡터의 L1 놈을 최소화하도록 구성되는 장치.
- 제29항에 있어서, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트는, 상기 오디오 신호에서, 상기 복수의 세그먼트 중에 있지 않은 상기 오디오 신호의 적어도 하나의 세그먼트에 의해 상기 복수의 세그먼트 중의 각각의 다른 세그먼트로부터 분리되는 장치.
- 제29항에 있어서, 상기 복수의 기저 함수 중 각각의 기저 함수에 대해,
상기 제1 대응하는 신호 표현은 상기 주파수 범위에 걸쳐 대응하는 악기의 제1 음색을 나타내고,
상기 제2 대응하는 신호 표현은, 상기 제1 음색과 상이한, 상기 주파수 범위에 걸쳐 상기 대응하는 악기의 제2 음색을 나타내는 장치. - 제37항에 있어서, 상기 복수의 기저 함수 중 각각의 기저 함수에 대해,
상기 제1 음색은 대응하는 음표의 제1 시간 구간 동안의 음색이고,
상기 제2 음색은 상기 제1 시간 구간과 상이한 상기 대응하는 음표의 제2 시간 구간 동안의 음색인 장치. - 제29항에 있어서, 상기 복수의 세그먼트 각각에 대해, 상기 대응하는 신호 표현은 대응하는 주파수 영역 벡터에 기초하는 장치.
- 제29항에 있어서, 상기 장치는, 상기 활성화 계수들의 벡터의 계산 이전에, 상기 복수의 세그먼트 중 적어도 하나의 세그먼트로부터의 정보에 기초하여, 보다 큰 기저 함수의 세트로부터 상기 복수의 기저 함수를 선택하도록 구성되는 인벤토리 감소 모듈을 포함하는 장치.
- 제40항에 있어서, 상기 인벤토리 감소 모듈은,
상기 복수의 세그먼트 중 적어도 하나의 세그먼트에 대해, 비선형 주파수 영역에서 대응하는 신호 표현을 계산하도록 구성되는 제2 변환 모듈; 및
상기 활성화 계수들의 벡터의 계산 이전에, 상기 비선형 주파수 영역에서의 상기 계산된 신호 표현 및 제2의 복수의 기저 함수에 기초하여, 제2의 활성화 계수들의 벡터를 계산하도록 구성되는 제2 계수 벡터 계산기
를 포함하고,
상기 제2의 복수의 기저 함수 각각은 상기 비선형 주파수 영역에서의 대응하는 신호 표현을 포함하는 장치. - 제41항에 있어서, 상기 장치는, 상기 계산된 제2의 활성화 계수들의 벡터로부터의 정보에 기초하여, 기저 함수들의 인벤토리로부터 상기 복수의 기저 함수를 선택하도록 구성되는 기저 함수 선택기를 포함하는 장치.
- 머신에 의해 판독될 때, 상기 머신으로 하여금,
오디오 신호의 복수의 시간 세그먼트(segments in time) 각각에 대해, 일정 주파수 범위에 걸쳐 대응하는 신호 표현을 계산하고,
상기 계산된 복수의 신호 표현 및 복수의 기저 함수(basis functions)에 기초하여, 활성화 계수들의 벡터를 계산하게 하는 - 상기 벡터의 각각의 활성화 계수는 상기 복수의 기저 함수 중 상이한 기저 함수에 대응하며, 상기 복수의 기저 함수 각각은 상기 주파수 범위에 걸친 제1 대응하는 신호 표현, 및 상기 제1 대응하는 신호 표현과 상이한 상기 주파수 범위에 걸친 제2 대응하는 신호 표현을 포함하고, 상기 제1 대응하는 신호 표현 및 제2 대응하는 신호 표현의 각각은 음표의 상이한 영역에 대응하는 음색을 표시하고, 시간에 따른 음색의 변화에 기초하여 상기 기저 함수가 선택되도록 상기 음표의 상이한 영역의 음색에 관한 정보가 상기 복수의 기저 함수로 인코딩됨 -
명령어들을 포함하는 머신 판독가능 저장 매체.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US40637610P | 2010-10-25 | 2010-10-25 | |
US61/406,376 | 2010-10-25 | ||
US13/280,295 US8805697B2 (en) | 2010-10-25 | 2011-10-24 | Decomposition of music signals using basis functions with time-evolution information |
US13/280,295 | 2011-10-24 | ||
PCT/US2011/057712 WO2012058225A1 (en) | 2010-10-25 | 2011-10-25 | Decomposition of music signals using basis functions with time-evolution information |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130112898A KR20130112898A (ko) | 2013-10-14 |
KR101564151B1 true KR101564151B1 (ko) | 2015-10-28 |
Family
ID=45973723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137013307A KR101564151B1 (ko) | 2010-10-25 | 2011-10-25 | 시간 변화 정보를 갖는 기저 함수를 사용한 음악 신호의 분해 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8805697B2 (ko) |
EP (1) | EP2633523B1 (ko) |
JP (1) | JP5642882B2 (ko) |
KR (1) | KR101564151B1 (ko) |
CN (1) | CN103189915B (ko) |
WO (1) | WO2012058225A1 (ko) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103648583B (zh) | 2011-05-13 | 2016-01-20 | 萨鲁达医疗有限公司 | 用于测量神经反应-a的方法和仪器 |
US9974455B2 (en) | 2011-05-13 | 2018-05-22 | Saluda Medical Pty Ltd. | Method and apparatus for estimating neural recruitment |
WO2012155185A1 (en) | 2011-05-13 | 2012-11-22 | National Ict Australia Ltd | Method and apparatus for measurement of neural response |
US9872990B2 (en) | 2011-05-13 | 2018-01-23 | Saluda Medical Pty Limited | Method and apparatus for application of a neural stimulus |
US9558762B1 (en) * | 2011-07-03 | 2017-01-31 | Reality Analytics, Inc. | System and method for distinguishing source from unconstrained acoustic signals emitted thereby in context agnostic manner |
US9691395B1 (en) * | 2011-12-31 | 2017-06-27 | Reality Analytics, Inc. | System and method for taxonomically distinguishing unconstrained signal data segments |
JP5942420B2 (ja) * | 2011-07-07 | 2016-06-29 | ヤマハ株式会社 | 音響処理装置および音響処理方法 |
US9305570B2 (en) | 2012-06-13 | 2016-04-05 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for pitch trajectory analysis |
US9460729B2 (en) | 2012-09-21 | 2016-10-04 | Dolby Laboratories Licensing Corporation | Layered approach to spatial audio coding |
DK2908904T3 (da) | 2012-11-06 | 2020-12-14 | Saluda Medical Pty Ltd | System til styring af vævs elektriske tilstand |
JP6314837B2 (ja) * | 2013-01-15 | 2018-04-25 | ソニー株式会社 | 記憶制御装置、再生制御装置および記録媒体 |
US9530422B2 (en) | 2013-06-27 | 2016-12-27 | Dolby Laboratories Licensing Corporation | Bitstream syntax for spatial voice coding |
US9812150B2 (en) | 2013-08-28 | 2017-11-07 | Accusonus, Inc. | Methods and systems for improved signal decomposition |
WO2015074121A1 (en) | 2013-11-22 | 2015-05-28 | Saluda Medical Pty Ltd | Method and device for detecting a neural response in a neural measurement |
US10468036B2 (en) | 2014-04-30 | 2019-11-05 | Accusonus, Inc. | Methods and systems for processing and mixing signals using signal decomposition |
US9477895B2 (en) * | 2014-03-31 | 2016-10-25 | Mitsubishi Electric Research Laboratories, Inc. | Method and system for detecting events in an acoustic signal subject to cyclo-stationary noise |
US10564923B2 (en) * | 2014-03-31 | 2020-02-18 | Sony Corporation | Method, system and artificial neural network |
US10368762B2 (en) | 2014-05-05 | 2019-08-06 | Saluda Medical Pty Ltd. | Neural measurement |
EP4285985A3 (en) | 2014-12-11 | 2024-01-17 | Saluda Medical Pty Ltd | Method and device for feedback control of neural stimulation |
US9668066B1 (en) * | 2015-04-03 | 2017-05-30 | Cedar Audio Ltd. | Blind source separation systems |
AU2016245335B2 (en) | 2015-04-09 | 2020-11-19 | Saluda Medical Pty Ltd | Electrode to nerve distance estimation |
CA3019701A1 (en) | 2016-04-05 | 2017-10-12 | Saluda Medical Pty Ltd | Improved feedback control of neuromodulation |
US11179091B2 (en) | 2016-06-24 | 2021-11-23 | Saluda Medical Pty Ltd | Neural stimulation for reduced artefact |
US11212637B2 (en) | 2018-04-12 | 2021-12-28 | Qualcomm Incorproated | Complementary virtual audio generation |
CN112334184A (zh) | 2018-04-27 | 2021-02-05 | 萨鲁达医疗有限公司 | 混合神经的神经刺激 |
CN109841232B (zh) * | 2018-12-30 | 2023-04-07 | 瑞声科技(新加坡)有限公司 | 音乐信号中音符位置的提取方法和装置及存储介质 |
CN110111773B (zh) * | 2019-04-01 | 2021-03-30 | 华南理工大学 | 基于卷积神经网络的音乐信号多乐器识别方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005258440A (ja) * | 2004-03-12 | 2005-09-22 | Mitsubishi Electric Research Laboratories Inc | 別個の信号の成分を分離する方法およびシステム |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10149187A (ja) * | 1996-11-19 | 1998-06-02 | Yamaha Corp | 音声情報抽出装置 |
US20010044719A1 (en) | 1999-07-02 | 2001-11-22 | Mitsubishi Electric Research Laboratories, Inc. | Method and system for recognizing, indexing, and searching acoustic signals |
US6691082B1 (en) * | 1999-08-03 | 2004-02-10 | Lucent Technologies Inc | Method and system for sub-band hybrid coding |
JP3881943B2 (ja) * | 2002-09-06 | 2007-02-14 | 松下電器産業株式会社 | 音響符号化装置及び音響符号化方法 |
FR2867648A1 (fr) * | 2003-12-10 | 2005-09-16 | France Telecom | Transcodage entre indices de dictionnaires multi-impulsionnels utilises en codage en compression de signaux numeriques |
WO2005069272A1 (fr) * | 2003-12-15 | 2005-07-28 | France Telecom | Procede de synthese et de spatialisation sonores |
DE602005006412T2 (de) | 2004-02-20 | 2009-06-10 | Sony Corp. | Verfahren und Vorrichtung zur Grundfrequenzbestimmung |
US7505902B2 (en) | 2004-07-28 | 2009-03-17 | University Of Maryland | Discrimination of components of audio signals based on multiscale spectro-temporal modulations |
JP3906230B2 (ja) | 2005-03-11 | 2007-04-18 | 株式会社東芝 | 音響信号処理装置、音響信号処理方法、音響信号処理プログラム、及び音響信号処理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
GB2430073A (en) | 2005-09-08 | 2007-03-14 | Univ East Anglia | Analysis and transcription of music |
US8190425B2 (en) * | 2006-01-20 | 2012-05-29 | Microsoft Corporation | Complex cross-correlation parameters for multi-channel audio |
US7953604B2 (en) * | 2006-01-20 | 2011-05-31 | Microsoft Corporation | Shape and scale parameters for extended-band frequency coding |
US7772478B2 (en) | 2006-04-12 | 2010-08-10 | Massachusetts Institute Of Technology | Understanding music |
US7612275B2 (en) | 2006-04-18 | 2009-11-03 | Nokia Corporation | Method, apparatus and computer program product for providing rhythm information from an audio signal |
US7842874B2 (en) | 2006-06-15 | 2010-11-30 | Massachusetts Institute Of Technology | Creating music by concatenative synthesis |
JP5007563B2 (ja) | 2006-12-28 | 2012-08-22 | ソニー株式会社 | 音楽編集装置および方法、並びに、プログラム |
US8160273B2 (en) | 2007-02-26 | 2012-04-17 | Erik Visser | Systems, methods, and apparatus for signal separation using data driven techniques |
EP2148321B1 (en) | 2007-04-13 | 2015-03-25 | National Institute of Advanced Industrial Science and Technology | Sound source separation system, sound source separation method, and computer program for sound source separation |
JP5275612B2 (ja) * | 2007-07-18 | 2013-08-28 | 国立大学法人 和歌山大学 | 周期信号処理方法、周期信号変換方法および周期信号処理装置ならびに周期信号の分析方法 |
JP4872871B2 (ja) | 2007-09-27 | 2012-02-08 | ソニー株式会社 | 音源方向検出装置、音源方向検出方法及び音源方向検出カメラ |
US8554551B2 (en) * | 2008-01-28 | 2013-10-08 | Qualcomm Incorporated | Systems, methods, and apparatus for context replacement by audio level |
JP2009204808A (ja) * | 2008-02-27 | 2009-09-10 | Nippon Telegr & Teleph Corp <Ntt> | 音響特徴抽出方法及び、その装置、そのプログラム、そのプログラムを記録した記録媒体 |
EP2211335A1 (en) * | 2009-01-21 | 2010-07-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus, method and computer program for obtaining a parameter describing a variation of a signal characteristic of a signal |
-
2011
- 2011-10-24 US US13/280,295 patent/US8805697B2/en not_active Expired - Fee Related
- 2011-10-25 CN CN201180051682.3A patent/CN103189915B/zh not_active Expired - Fee Related
- 2011-10-25 EP EP11784836.6A patent/EP2633523B1/en not_active Not-in-force
- 2011-10-25 JP JP2013536730A patent/JP5642882B2/ja not_active Expired - Fee Related
- 2011-10-25 WO PCT/US2011/057712 patent/WO2012058225A1/en active Application Filing
- 2011-10-25 KR KR1020137013307A patent/KR101564151B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005258440A (ja) * | 2004-03-12 | 2005-09-22 | Mitsubishi Electric Research Laboratories Inc | 別個の信号の成分を分離する方法およびシステム |
Also Published As
Publication number | Publication date |
---|---|
WO2012058225A1 (en) | 2012-05-03 |
JP2013546018A (ja) | 2013-12-26 |
US20120101826A1 (en) | 2012-04-26 |
EP2633523B1 (en) | 2014-04-09 |
CN103189915B (zh) | 2015-06-10 |
US8805697B2 (en) | 2014-08-12 |
EP2633523A1 (en) | 2013-09-04 |
KR20130112898A (ko) | 2013-10-14 |
CN103189915A (zh) | 2013-07-03 |
JP5642882B2 (ja) | 2014-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101564151B1 (ko) | 시간 변화 정보를 갖는 기저 함수를 사용한 음악 신호의 분해 | |
KR101521368B1 (ko) | 다중 채널 오디오 신호를 분해하는 방법, 장치 및 머신 판독가능 저장 매체 | |
Vincent | Musical source separation using time-frequency source priors | |
RU2731372C2 (ru) | Способ и система для разложения акустического сигнала на звуковые объекты, а также звуковой объект и его использование | |
KR101602194B1 (ko) | 음악 음향 신호 생성 시스템 | |
Canadas-Quesada et al. | Percussive/harmonic sound separation by non-negative matrix factorization with smoothness/sparseness constraints | |
JP5961950B2 (ja) | 音声処理装置 | |
CN107533848B (zh) | 用于话音恢复的系统和方法 | |
US20170047094A1 (en) | Audio information processing | |
US9305570B2 (en) | Systems, methods, apparatus, and computer-readable media for pitch trajectory analysis | |
Lindsay-Smith et al. | Drumkit transcription via convolutive NMF | |
Kawamura et al. | Differentiable digital signal processing mixture model for synthesis parameter extraction from mixture of harmonic sounds | |
US8219390B1 (en) | Pitch-based frequency domain voice removal | |
CN117079623A (zh) | 音频降噪模型训练方法、歌唱作品处理方法、设备和介质 | |
JP4625933B2 (ja) | 音分析装置およびプログラム | |
Dittmar et al. | An experimental approach to generalized Wiener filtering in music source separation | |
Pardo et al. | Applying source separation to music | |
JP5879813B2 (ja) | 複数音源の識別装置および複数音源に連動する情報処理装置 | |
Yasuraoka et al. | I-divergence-based dereverberation method with auxiliary function approach | |
CN114005461B (zh) | 音乐伴奏的分离方法和装置 | |
Lagrange et al. | Robust similarity metrics between audio signals based on asymmetrical spectral envelope matching | |
Wang et al. | Time-dependent recursive regularization for sound source separation | |
JP2014137389A (ja) | 音響解析装置 | |
Glass et al. | Warped linear prediction of physical model excitations with applications in audio compression and instrument synthesis | |
Badeau et al. | Robust similarity metrics between audio signals based on asymmetrical spectral envelope matching |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180928 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190924 Year of fee payment: 5 |