노래의 일부 감지


9

바라건대 이것은 주관적이지 않습니다 ...

나는 음악적 스타일에 관계없이 노래의 다른 "부분"을 감지하기 위해 어떤 방향을 찾고 있습니다. 어디를 봐야할지 모르겠지만 다른 StackOverflow 사이트의 힘을 신뢰하면 여기 누군가가 방향을 알려주는 데 도움이 될 것이라고 생각했습니다.

가장 기본적인 용어로, 연속적인 반복 패턴을 그룹화하고 "파트"라고 부르면 노래의 다른 부분을 감지 할 수 있습니다. 컴퓨터는 약간의 변화가 있더라도 신호의 반복을 감지하는 데 능숙합니다.

그러나 대부분의 음악에서와 같이 "부분"이 겹치면 어렵습니다.

어떤 종류의 음악이 이런 종류의 시스템에 가장 적합한 지 말하기는 어렵습니다. 대부분의 클래식 스타일의 교향곡 음악을 처리하는 것이 가장 쉽다고 생각합니다.

이 분야에서 연구를 구할 수있는 아이디어가 있습니까?


스 니펫 녹음에서 노래를 인식하는 iPhone 앱이 있다고 생각합니다. 그리고 나는이 응용 프로그램을 설명하는 기사가 있다고 생각합니다. 링크가 없어서 미안하지만 시작하겠습니다.
mpiktas

1
@mpiktas : SoundHound 또는 Shazam 과 같은 앱을 언급하고있을 것입니다 . Shazam의 작동 방식에 대한 백서 가 있지만 세부 사항은별로 다루지 않습니다. 이것이 OP에 필요한지 확실하지 않지만 좋은 출발점이 될 수 있습니다.
니코

와우에 좋은, 짧은 블로그 게시물의 경우, 당신은 또한 시도 할 수 있습니다 (기반, 나는 흰 종이에, 생각) laplacian.wordpress.com/2009/01/10/how-shazam-works을
raegtin

답변:


6

나는 신호 처리에 대한 전문가는 아니지만 음악 이론에 대해 잘 알고 있습니다. 반대로 고전 음악은 아마도 간단한 수학적 방법으로 분석하기 가장 어려운 음악 일 것입니다. 팝 또는 테크노 음악과 같이 더 단순하고 반복적 인 것으로 시작하는 것이 가장 좋습니다. 팝은 종종 간단한 버전의 목표에 도움이되는 verse-chorus-verse ... etc 형식을 가지고 있습니다.

데이터에 푸리에 변환 (Fourier Transform) 을 사용하여 다른 하위 섹션 중에서 계층 적으로 가장 두드러진 구성 주파수로 나눕니다. 특히 데이터의 "부분"을 그룹화하는 방법에 따라 다른 것을 찾을 수 있습니다.

  1. 팝 음악에서 가장 느린 진동은 아마도 구절과 코러스 사이에서 다시 구절로 이동하는 것일 것입니다 (분당 0.75 진동?).

  2. 다음으로, 코드 진행 중, 즉 노래의 각 전체 측정 중 고주파 진동이 발생할 수 있습니다 (분당 약 6 개의 진동이 있습니까?).

  3. 다음으로 가장 높은 주파수는 측정 패턴 (1 분에 약 24 개의 진동)에 해당하는 막대가 될 것입니다.이 패턴 내에서 가사 패턴과 동기화는 종종 팝 / 포크 음악에서 반복됩니다.

  4. 까다로운 디테일을 살펴보면 음악의 각 바 내에서 반복되는 비트와 리듬을 찾을 수 있습니다. 이 중 하나를 골라 분리하면 (분당 148 개의 진동 / 비트?)베이스 드럼 킥이나 카우벨 히트 또는 유사한 순서로 발생합니다.

  5. 비트와 톤 사이 어딘가에 일렉트릭 기타의 속도 / 스윕 피킹 또는 빠른 보컬 랩 리듬과 같은 음악의 빠른 스타일 요소를 찾을 수 있습니다. (이 속도가 얼마나 빠를 지 모르겠지만 분당 1000 비트 이상인 것으로 추측합니다).

  6. 마지막으로, 가장 빠르고 아마도 가장 복잡한 것은 음색과 음색의 요소입니다. "중간 A"음이 SECOND 당 440Hz, 즉 440 개의 진동으로 표준화되어 있음을 알고 있습니다. 저는 음질과 음색에 따라 차별화되는 기술이 어떤 종류의 악기를 사용하고 있는지 확신합니다. 사람의 보컬을 감지하는 알고리즘도 상당히 좋습니다. 그러나 내가 말했듯이, 나는 신호 처리 전문가가 아닙니다.


6

음악은 일반적으로 MPEG7 디스크립터 를 사용하여 설명 됩니다. MFCC 와 같은 일부 추가 창은 움직이는 창 접근 방식으로 만든 조각 단위로 계산됩니다 (예 : 창 크기와 홉이 있고 소리의 시작 부분에있는 창으로 시작하여 창에서 디스크립터를 찾은 다음 홉으로 이동하고 끝에 도달 할 때까지 반복하십시오.
이런 식으로 조각이 테이블로 변환됩니다. 귀하의 경우 청크에 클러스터링을 적용하고 해당 "부분"을 감지하는 데 사용할 수 있습니다.


이제이게 더 좋아! 좋은 기술 답변.
기계를 갈망하는 기계

5

이 주제에 대한 다양한 관점에서 다양한 방법과 수많은 문헌이 있습니다. 다음은 검색을 시작하기에 좋은 몇 가지 주요 내용입니다.

당신의 배경이 수학이나 계산보다 음악적이라면 David Cope 의 작품에 관심이있을 것 입니다. 그의 출판 된 작품 대부분은 고전 음악 작품의 분석에 중점을 두지 만 더 일반적인 것 인 재조합 이라는 개인 벤처를 가지고 있습니다. 그의 작품 중 상당수는 음악을 언어 유형 모델로 사용했지만, 그의 최근 작품 중 일부는 접근 방식과 같은 전체 음악 게놈 으로 더 많이 옮겨 졌다고 생각 합니다. 그는 온라인 에서 사용할 수 있는 많은 소프트웨어를 가지고 있지만 일반적으로 Lisp로 작성되었으며 일부는 Linux 또는 다른 곳에서 일반적인 lisp 를 실행할 수 있지만 어디에서나 다양한 버전의 Apple OS에서만 실행할 수 있습니다 .

일반적으로 신호와 음악의 분석은 기계 학습에서 매우 인기있는 문제였습니다. 크리스토퍼 비숍 (Christopher Bishop)의 패턴 인식패턴 인식 및 기계 학습을 위한 신경망 에서 좋은 시작 범위가 있습니다. 다음 은 음악 분류 부분이 있지만 특징 추출에 대해 잘 다루는 MSc 논문의 예입니다. 저자는 주교 텍스트 중 하나 이상과 다른 여러 출처를 인용합니다. 그는 또한 주제에 대한 최신 논문에 대한 여러 출처 를 권장 합니다.

보다 수학적이거나 통계적인 책 (적어도 내용이 아닌 경우 저자에 의해) :

비숍과 머신 러닝의 계산적 관점에 대해 언급 한 이후 Hastie의 최신 통계 학습 요소 (무료 법률 다운로드 가능)를 한 눈에 볼 것을 제안하지 않았다면 절반 만 이야기 할 것입니다. , Tibshirani 및 Friedman. 이 텍스트에는 오디오 처리 예제가 특별히 기억 나지 않지만이 방법에 적용되는 여러 가지 방법을 적용 할 수 있습니다.

고려해야 할 또 하나의 텍스트는 Jan Beran 's Statistics in Musicology 입니다. 이것은 특히 음악 작품 분석을위한 수많은 통계 도구를 제공하며 수많은 참고 자료를 제공합니다.

또 다른 많은 소스가 있습니다. 이것의 많은 부분은 배경이 무엇이며 가장 편한 문제에 대한 접근 방식에 달려 있습니다. 바라건대이 중 일부는 답을 찾는 데 약간 도움이되기를 바랍니다. 배경, 문제에 대한 추가 세부 정보 또는이 게시물에 대한 질문에 대한 자세한 내용을 알려 주시면 여기에 나와있는 다른 많은 사람들이보다 구체적인 정보를 알려 드리겠습니다. 행운을 빌어 요!


4

큰 대답은 아니지만 연구를해야 할 두 곳은 다음과 같습니다.

국제 음악 정보 검색 협회 (International Society for Music Information Retrieval)는이 주제에 관한 수많은 논문을 발표했습니다.

& Echo Nest (유사한 작업을 수행하는 API로 시작) echonest.com

업데이트 : 그들은 또한 오픈 소스 지문 코드를 발표했습니다. http://echoprint.me/


0

비슷한 문제에 관심이있었습니다. 해결책은 다음과 같습니다. scape plot 이라고 불리는 과학적인 제안은 아닙니다 . 자세한 내용은 이 기사 를 참조하십시오 (좋아 보입니다).

또한 음악 통계와 유사한 응용 프로그램이 많이 있으므로 저자의 웹 사이트를 방문하는 것이 좋습니다 . 다른 유사한 소스를 검색 할 때는 비슷한 영역이 포함 된 음악 정보 검색 이라는 용어를 사용하는 것이 좋습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.