KR101795760B1 - 전자 악보의 레벨을 분류하는 장치 및 방법 - Google Patents

전자 악보의 레벨을 분류하는 장치 및 방법 Download PDF

Info

Publication number
KR101795760B1
KR101795760B1 KR1020150187361A KR20150187361A KR101795760B1 KR 101795760 B1 KR101795760 B1 KR 101795760B1 KR 1020150187361 A KR1020150187361 A KR 1020150187361A KR 20150187361 A KR20150187361 A KR 20150187361A KR 101795760 B1 KR101795760 B1 KR 101795760B1
Authority
KR
South Korea
Prior art keywords
score
musical
difficulty
value
note
Prior art date
Application number
KR1020150187361A
Other languages
English (en)
Other versions
KR20170077461A (ko
Inventor
이용규
송양의
Original Assignee
동국대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 동국대학교 산학협력단 filed Critical 동국대학교 산학협력단
Priority to KR1020150187361A priority Critical patent/KR101795760B1/ko
Publication of KR20170077461A publication Critical patent/KR20170077461A/ko
Application granted granted Critical
Publication of KR101795760B1 publication Critical patent/KR101795760B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10GREPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
    • G10G1/00Means for the representation of music
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10BORGANS, HARMONIUMS OR SIMILAR WIND MUSICAL INSTRUMENTS WITH ASSOCIATED BLOWING APPARATUS
    • G10B1/00General design of organs, harmoniums or similar wind musical instruments with associated blowing apparatus
    • G10B1/02General design of organs, harmoniums or similar wind musical instruments with associated blowing apparatus of organs, i.e. pipe organs
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10GREPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
    • G10G3/00Recording music in notation form, e.g. recording the mechanical operation of a musical instrument
    • G10G3/04Recording music in notation form, e.g. recording the mechanical operation of a musical instrument using electrical means

Abstract

본 발명은 전자 악보의 레벨을 분류하는 기술에 관한 것으로, 적어도 하나의 연산 장치 및 데이터 입력 장치를 구비하여 전자 악보의 레벨(level)을 분류하는 방법은, 연산 장치가 데이터 입력 장치를 통해 악보를 입력받아 구조화된 전자 악보로 변환하고, 음표에 할당된 값과 악보의 구조에 기초하여 구조화된 전자 악보를 해석하여 전자 악보 내의 구성 요소를 식별하며, 식별된 구성 요소로부터 전자 악보 내의 음표의 위치, 음계의 변화 및 연주의 빠르기에 기초하여 전자 악보의 난이도를 산출한다.

Description

전자 악보의 레벨을 분류하는 장치 및 방법{Apparatus and method for classifying level of electronic music score}
본 발명은 악보의 레벨(level)을 분류하는 기술에 관한 것으로, 특히 XML 형식으로 전자화된 악보로부터 추출한 음표(note)를 수치화하고 사용자가 원하는 수준에 맞는 악보의 난이도를 파악할 수 있도록 하는 악보의 레벨을 자동으로 분석하여 분류하는 장치, 방법 및 이를 기록한 기록매체에 관한 것이다.
종이로 된 악보를 유통하던 시대를 지나 전자화된 악보를 사용자에게 제공하고, 이를 획득한 사용자가 전자 악보를 이용하여 음악을 연주하거나 학습에 활용하는 시대가 도래하였다. 그럼에도 불구하고, 여전히 많은 악보들은 종이 형태로 존재하며 격식을 갖춘 연주회장에서는 아날로그 방식의 악보를 연주자가 직접 활용하는 경우도 다수 존재한다.
한편, 연주자들을 위하여 종이에 활자 인쇄된 다수의 악보들을 전자 문서로 가공하고, 음악을 배우고 가르치는 분야에서 널리 활용될 수 있도록 일련의 커리큘럼으로 설계하는 작업 또한 필요하다. 음악 분야에서는 과거로부터 축적된 경험에 의존하여 악보의 난이도를 결정하고, 이들을 다양한 순서와 교육 과정으로 편집하여 학생들에게 제공하던 방식이 일반적이었다.
그러나 전자 문서로서 악보가 옮겨온 이후에도 여전히 이러한 전문가의 수작업에 의하여 악보의 난이도를 분류하고 체계화하는 일이 이루어지고 있으며, 이는 다수의 악보를 분류하거나 새로 작곡된 악보를 분류함에 있어서도 매우 비효율적임이 지적되었다.
이하에서 소개되는 선행기술문헌에는 악보를 이미지 캡쳐하거나 전자 파일로 수신하여 이로부터 오디오 연주를 위한 표현을 생성하는 구성이 개괄적으로 기술되어 있으나, 여전히 악보를 해석하여 그 난이도 수준을 자동으로 평가하는 기술적 수단에 대해서는 제시하고 있는 바가 전혀 없다.
한국특허공개공보 10-2007-0095332, 2007년 09월 28일 공개
본 발명이 해결하고자 하는 기술적 과제는, 종래의 전자 악보 기술이 종이 악보 또는 단순 이미지로서 변환된 악보를 악보 내에 표현된 구성 요소의 의미가 포함되도록 전자 악보로서 가공, 변환하는데 그치고 있는 한계를 극복하고, 다수의 악보들의 난이도 수준을 판별함에 있어서 전적으로 전문가의 경험과 지식에 의존하고 있는 불편을 해소하며, 또한 악보의 난이도를 분류하는 개인의 성향에 따라 난이도 수준 평가에 일관성이 없거나 악보의 단편적인 특성만을 평가에 반영하는 문제점을 해결하고자 한다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 적어도 하나의 연산 장치 및 데이터 입력 장치를 구비하여 전자 악보의 레벨(level)을 분류하는 방법은, 연산 장치가 데이터 입력 장치를 통해 악보를 입력받아 구조화된 전자 악보로 변환하는 단계; 상기 연산 장치가 음표에 할당된 값과 악보의 구조에 기초하여 상기 구조화된 전자 악보를 해석하여 전자 악보 내의 구성 요소를 식별하는 단계; 및 상기 연산 장치가 식별된 구성 요소로부터 상기 전자 악보 내의 음표의 위치, 음계의 변화 및 연주의 빠르기에 기초하여 상기 전자 악보의 난이도를 산출하는 단계를 포함하되, 상기 음표가 화음인 경우 상기 화음을 형성하는 음표들의 위치 평균을 대표 위치값으로 설정하되, 상기 화음에 대한 빈도수에 비례하여 상기 대표 위치값에 대한 가중치를 증가시켜 동시에 적어도 둘 이상의 음을 연주하는 화음에 상대적으로 더 높은 난이도를 부여함으로써 상기 전자 악보의 난이도를 산출한다.
일 실시예에 따른 전자 악보의 레벨 분류 방법에서, 상기 구조화된 전자 악보는 음표의 위치(position)를 포함하며, 상기 연산 장치는 인접한 음표 간의 거리에 따라 난이도 레벨이 비례하도록 난이도 값을 산출한다. 또한, 상기 연산장치는 악보 내에 포함된 모든 음표에 대하여 인접한 음표 간의 거리의 평균을 산출하여 난이도 값으로 설정할 수 있다.
일 실시예에 따른 전자 악보의 레벨 분류 방법에서, 상기 구조화된 전자 악보는 조표(key signature) 또는 임시표(accidentals) 중 적어도 하나인 변화표(chromatic sign)를 포함하며, 상기 연산 장치는 전체 음표의 수에 대한 상기 변화표의 사용에 따라 음계의 변화가 나타나는 음표의 비율로부터 변화의 정도를 나타내는 변화표 가중치를 산출한다. 또한, 상기 변화표 가중치는 상기 조표 또는 상기 임시표의 개수의 합에 비례하여 난이도 레벨을 나타내도록 설정될 수 있다. 나아가, 상기 연산 장치는 상기 전자 악보 내의 음표의 위치에 따른 난이도와 산출된 상기 변화표 가중치를 승산하여 변화표 사용에 따른 난이도 값을 산출할 수 있다.
일 실시예에 따른 전자 악보의 레벨 분류 방법에서, 상기 구조화된 전자 악보는 빠르기말(tempo signature)를 더 포함하며, 상기 연산 장치는 미리 설정된 평균 속도와 악보 내에 포함된 빠르기말과의 편차를 이용하여 상기 평균 속도와의 상대적인 빠르기 정도를 나타내는 빠르기말 가중치를 산출한다. 또한, 상기 빠르기말 가중치는 상기 악보 내에 포함된 빠르기말의 대표값과 상기 미리 설정된 평균 속도의 차를 상기 평균 속도로 제산한 값에 비례하여 난이도 레벨을 나타내도록 설정될 수 있다. 나아가, 상기 연산 장치는 상기 전자 악보 내의 음표의 위치에 따른 난이도와 상기 음계의 변화에 따른 가중치를 승산한 값에 상기 빠르기말 가중치를 승산함으로써 빠르기말 사용에 따른 난이도 값을 산출할 수 있다.
한편, 이하에서는 상기 기재된 전자 악보의 레벨 분류 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 전자 악보의 레벨 분류 장치는, 전자화된 데이터 형태의 악보를 입력받는 데이터 입력부; 입력된 상기 악보의 레벨(level)을 분류하는 프로그램을 저장하는 메모리; 및 상기 악보의 레벨을 분류하는 프로그램을 구동하는 연산부;를 포함하되, 상기 메모리에 저장된 프로그램은, 입력된 상기 악보를 구조화된 전자 악보로 변환하고, 음표에 할당된 값과 악보의 구조에 기초하여 상기 구조화된 전자 악보를 해석하여 전자 악보 내의 구성 요소를 식별하며, 식별된 구성 요소로부터 상기 전자 악보 내의 음표의 위치, 음계의 변화 및 연주의 빠르기에 기초하여 상기 전자 악보의 난이도를 산출하는 명령어를 포함하되, 상기 명령어는 상기 음표가 화음인 경우 상기 화음을 형성하는 음표들의 위치 평균을 대표 위치값으로 설정하되, 상기 화음에 대한 빈도수에 비례하여 상기 대표 위치값에 대한 가중치를 증가시켜 동시에 적어도 둘 이상의 음을 연주하는 화음에 상대적으로 더 높은 난이도를 부여함으로써 상기 전자 악보의 난이도를 산출한다.
일 실시예에 따른 전자 악보의 레벨 분류 장치에서, 상기 메모리에 저장된 프로그램은, 상기 구조화된 전자 악보가 음표의 위치(position)를 포함하며, 인접한 음표 간의 거리에 따라 난이도 레벨이 비례하도록 난이도 값을 산출한다.
일 실시예에 따른 전자 악보의 레벨 분류 장치에서, 상기 메모리에 저장된 프로그램은, 상기 구조화된 전자 악보가 조표(key signature) 또는 임시표(accidentals) 중 적어도 하나인 변화표(chromatic sign)를 포함하며, 전체 음표의 수에 대한 상기 변화표의 사용에 따라 음계의 변화가 나타나는 음표의 비율로부터 변화의 정도를 나타내는 변화표 가중치를 산출한다. 또한, 상기 메모리에 저장된 프로그램은, 상기 조표 또는 상기 임시표의 개수의 합에 비례하여 난이도 레벨을 나타내도록 상기 변화표 가중치를 설정하고, 상기 전자 악보 내의 음표의 위치에 따른 난이도와 산출된 상기 변화표 가중치를 승산하여 변화표 사용에 따른 난이도 값을 산출할 수 있다.
일 실시예에 따른 전자 악보의 레벨 분류 장치에서, 상기 메모리에 저장된 프로그램은, 상기 구조화된 전자 악보가 빠르기말(tempo signature)를 더 포함하며, 미리 설정된 평균 속도와 악보 내에 포함된 빠르기말과의 편차를 이용하여 상기 평균 속도와의 상대적인 빠르기 정도를 나타내는 빠르기말 가중치를 산출한다. 또한, 상기 메모리에 저장된 프로그램은, 상기 악보 내에 포함된 빠르기말의 대표값과 상기 미리 설정된 평균 속도의 차를 상기 평균 속도로 제산한 값에 비례하여 난이도 레벨을 나타내도록 상기 빠르기말 가중치를 설정하고, 상기 전자 악보 내의 음표의 위치에 따른 난이도와 상기 음계의 변화에 따른 가중치를 승산한 값에 상기 빠르기말 가중치를 승산함으로써 빠르기말 사용에 따른 난이도 값을 산출할 수 있다.
본 발명의 실시예들은, 종이 악보 또는 이미지로서 입력된 악보를 구조화된 전자 악보로 변환하고 이로부터 구성 요소의 의미를 추출/식별하며 음표에 할당된 값을 활용하여 악보의 레벨을 자동으로 판단함으로써 다수의 전자 악보들의 분류를 용이하게 할 뿐만 아니라, 객관적이고 수치화된 분류 기준을 제공함으로써 악보 전반에 걸쳐 일관성 있는 난이도 변별이 가능하다.
도 1은 본 발명의 일 실시예에 따른 전자 악보의 레벨(level)을 분류하는 방법을 도시한 흐름도이다.
도 2는 XML 기반의 악보를 표현하기 위한 태그(tag)를 예시한 도면이다.
도 3은 (4)옥타브 (D)음계를 XML 기반의 악보로 표현한 예이다.
도 4는 조표로 내림표가 사용된 악보를 XML 기반의 악보로 표현한 예이다.
도 5는 임시표가 사용된 음표를 XML 기반의 악보로 표현한 예이다.
도 6은 빠르기말의 종류와 빠르기표와의 관계를 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 도 1의 악보 레벨 분류 방법에서 난이도를 산출하는 과정을 보다 구체적으로 도시한 흐름도이다.
도 8은 높은음자리의 악보에 대해 음표의 위치값과 XML 기반의 악보 표현을 예시한 도면이다.
도 9는 낮은음자리의 악보에 대해 음표의 위치값과 XML 기반의 악보 표현을 예시한 도면이다.
도 10은 화음이 있는 악보의 예이다.
도 11은 다장조를 기준으로 임시표가 사용된 경우의 건반의 위치를 예시한 도면이다.
도 12는 임시표가 사용된 악보의 예이다.
도 13은 조표로 올림표 또는 내림표가 사용된 경우의 예이다.
도 14는 올림표를 조표로 사용한 장음계 악보와 피아노 건반을 예시한 도면이다.
도 15는 본 발명의 일 실시예에 따른 전자 악보의 레벨(level)을 분류하는 장치를 도시한 블록도이다.
도 16은 본 발명의 실시예들에 따른 전자 악보의 레벨 분류 기법을 적용하여 실제 악보의 난이도를 평가하기 위한 대상 악보를 예시한 도면이다.
도 17은 도 16의 대상 악보를 XML 기반의 악보로 변환한 결과의 일부를 예시한 도면이다.
본 발명의 실시예들을 설명하기에 앞서, 악보의 레벨을 분류하는 전통적인 음악 분야의 분류 기준과 이에 따른 문제점을 검토한 후, 이러한 문제점을 해결하기 위해 본 발명의 실시예들이 채택하고 있는 기술적 수단을 개괄적으로 소개하도록 한다.
종래에 연주를 위하여 악보에 대한 난이도를 평가하거나 악보를 추천하는 과정은 연주자 또는 지휘자의 경험을 바탕으로 이루어져 왔다. 일반적으로 음악에 대한 평가는 연주하는 악기의 종류와 악보에서의 음표의 복잡성, 악보에 대한 이해도에 의해 좌우된다. 특히 연주자에게 악보에 대한 이해도는 음악의 난이도에 크게 좌우되지만 악보의 레벨에 따른 이해도나 난이도를 위한 객관적인 기준이나 평가는 존재하지 않다. 또한 음악에 대한 난이도를 위한 객관적이거나 정량적인 평가에 대한 시도는 있었지만, 악보 자체보다는 연주된 음악에 대한 주관적인 이해도나 선율의 주파수를 측정한 자료를 통하여 음악을 평가하는 경우가 대부분이다.
악보에 대한 난이도 기준에는 정확한 분류 기준에 따른 분류보다는 주관적인 해석에 의한 분류가 대부분이다. 예를 들어, Sheet Music Plus사는 'SMP Level Guidelines'이라는 보다 체계적인 자체 악보 레벨 기준을 통하여 악보를 분류하고 있으나, 이러한 분류 기준은 악보에 대한 정량적인 데이터를 바탕으로 하고 있지 않을 뿐만 아니라 사람의 주관적인 경험에 의하여 레벨을 결정하기 때문에 정확하지 못한 분류가 발생할 수 있으며, 악보 난이도 분류를 위하여 많은 시간이 소요되는 약점을 가진다. 상기된 바와 같은 종래의 악보 분류 방법의 경우, 그 분류 수단이 수치화 내지 전자화되어 있지 않기 때문에 많은 전자 악보가 쏟아져 나오고 있는 현대 시대에 전자 악보의 정확한 수치 및 레벨을 추출해 내지 못하는 단점이 있다. 또한, 전자 악보의 표현 방법으로서 많은 음악 관련 소프트웨어에서 사용되는 XML 기반 악보 표현 언어인 MusicXML에서는 악보에 대한 자체적인 수치화된 표현법만 있으며, 악보의 레벨을 자동적으로 분류해주는 알고리즘이 존재하지 않는다.
따라서, 이하에서 제안되는 본 발명의 실시예들에서는 다양한 포맷(format)의 악보를 XML 기반의 전자 악보인 MusicXML 형태로 변환하고, MusicXML 전자 악보로 변환된 악보를 통하여 난이도를 위한 정량적인 데이터를 수치화한다. 이를 통하여 악보에 대한 난이도를 산출하는 알고리즘을 통하여 악보 레벨 분류를 자동화할 수 있으며, 그로부터 사용자의 수준에 맞는 악보를 난이도에 따라 추천하는데 활용할 수 있다.
즉, 본 발명의 실시예들은 현대 음악의 악보 표현 방법인 5선 보표(staff)로 작성된 악보를 XML 형식으로 표현하고 악보의 구조를 파악하여 보표(staff) 상에 표현된 음표(note)를 위치 정보와 조(key), 빠르기(tempo) 등을 수치화한다. 이로부터 본 발명의 실시예들은 음표의 위치 정보를 이용하여 음표 간의 거리를 계산하고, 조표의 사용으로 변화된 조성에 따른 연주의 난이도와 빠르기표(tempo signature)을 이용한 악보의 음악 연주 속도에 따른 악보의 난이도를 파악하고자 한다.
연주자에게 적합한 악보를 추천하기 위해서는 연주자의 수준과 악보의 수준에 따른 수치화된 데이터로 비교를 할 수 있어야 한다. 각각의 수준을 파악하기 위해서는 악보에 대한 수치화가 필요하며 이를 위해서는 기존 악보에 대하여 악보의 구조화 된 표현과 음악 연주에 필요한 다양한 악보 기호를 디지털화 된 방법으로 표현하여 수치화 하는 작업이 필요하다.
이를 위해 본 발명의 실시예들은, XML 형식으로 표현된 전자 악보로 변환하고, XML 전자 악보에서 음표(note)들의 수치화된 값과 음표들 사이의 거리에 대한 측정된 값을 기준으로 하는 악보 난이도를 파악하고, 조표와 임시표로 표현되는 변화표(accidentals)에 따른 악보 전체의 난이도를 수치화하며, 빠르기표(tempo signature)로 표현된 연주의 속도를 통한 악보의 난이도를 평가하고자 한다. 즉, 상기된 난이도 평가를 위하여 악보와 악보 기호에 대하여 수치화된 값들을 이용하여 악보 난이도를 계산하는 방법을 제시하고, 최종적으로 난이도의 수준을 결정하는 분류 과정을 설명하고자 한다.
우선, 악보를 디지털화된 표현으로 변환하여 악보 상의 음표의 수치값을 계산하여 난이도를 결정하기 위하여 필요한 사항을 개괄적으로 소개하면 다음과 같다. 이는 악보상의 음표(note)의 위치에 대한 수치화 값, 음표의 화음에 대한 난이도 값, 변화표에 대한 난이도 값, 빠르기표에 대한 난이도 값과 이를 통한 악보 전체의 레벨를 결정하기 위한 기준으로 활용된다.
우선, 악보상의 음표(note)와 쉼표의 수치화 값의 정의는 디지털화된 악보에서 표현되는 음표(note)의 종류와 쉼표의 길이를 추출하여 각각 종류별 값을 추출하기 위한 단계로서, 이를 위하여 디지털 악보의 음표(note)와 쉼표를 정의하고 이를 수치화한다. 다음으로, 화음에 대한 구조화된 음표(note)의 수치화 및 수식화는 구조화된 음표(note)가 갖는 값을 바탕으로 악보 레벨 결정 요소들을 정의하고 수식을 적용하여 수치화시킨다. 악보 레벨을 결정하는 주요한 요소에는 음표(note) 간의 거리(distance), 화음(Chord), 변화표(accidentals), 빠르기말(tempo signature)이 사용된다. 이어서, 악보 난이도 값 정의 및 레벨 결정은 과정 이상에서 수치화된 값을 이용하여 비교함으로써 상대적인 레벨을 결정한다. 마지막으로, 악보 레벨을 결정하는 주요한 요소들을 토대로 계산한 값을 기준으로 최종적으로 레벨을 결정한다.
이하에서는, 도면을 참조하여 상기된 기술적 과제를 해결하기 위한 본 발명의 실시예들을 구체적으로 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 명칭 및 도면 부호로 나타내고 있음에 유의하여야 한다.
도 1은 본 발명의 일 실시예에 따른 전자 악보의 레벨(level)을 분류하는 방법을 도시한 흐름도이다. 도 1의 분류 방법은 적어도 하나의 연산 장치 및 데이터 입력 장치를 구비하여 수행될 수 있으며, 각각의 단계별로 수반되는 하드웨어 구성을 순차적으로 소개하도록 한다.
S110 단계에서, 연산 장치는 데이터 입력 장치를 통해 악보를 입력받아 구조화된 전자 악보로 변환한다.
음악 표현의 복잡성과 연주의 다양성으로 인하여 음악을 디지털로 표현하는 방법이 다양하게 연구되어 왔다. 전자 악보에는 Finale, Niff, SMDL, MIDI, ScoreML 또는 MusicXML 등 많은 형식들이 존재한다. 이들 형식들은 각각 사용 목적에 따라 개발되어 표기 형식이 모두 다르다. 또한 사람이 전자 악보를 인식하고 이해하기보다는 기계에 의한 연주나 제어하기 위한 음악의 정보를 표현하는 형식으로 개발되었다. 그 중 XML형식으로 악보를 표현하는 MusicXML과 ScoreML은 음정(interval), 박자(tempo), 리듬(rhythm), 화음(chord), 조성(tonality) 등 모든 음악 정보를 표현할 수 있을 뿐만 아니라 인터넷에서 쉽게 악보를 활용하는 것이 가능하다. 이들 XML로 표현되는 전자 악보들은 XML의 특성상 응용성 및 확장성이 크며 사람들이 쉽게 악보의 구조를 파악할 수 있어 많은 작곡 및 연주 소프트웨어에서 채택하고 있다. 이하에서 기술되는 본 발명의 실시예들에서는 전자 악보의 표현 방법으로서 레코다레(Recordare)사에서 개발한 XML 기반의 전자악보 표현 언어인 MusicXML을 이용하여 설명하였으나, 이에 한정되지 않음은 당연하다.
전자 악보에서 사용되는 악보 기호에 대한 표현은 현대 음악의 악보의 기호와 크게 다르지 않으며 전자 음악에서는 표현의 특성상 영문으로 된 현대 악보 용어를 주로 사용된다. MusicXML은 전자 악보를 표현하기 위하여 현대 악보에 있는 음악적 기호를 대부분 수용하도록 많은 XML 태그들을 정의하였다. 태그는 <태그명>과 </태그명>으로 쌍으로 이루어지며, <태그 속성="값">의 형식으로 태그의 속성과 값을 지정할 수 있으며, 태그 사이에는 하위 태그 또는 태그의 값을 지정할 수 있다. 도 2는 XML 기반의 악보를 표현하기 위한 태그(tag)를 예시한 도면으로서, 각 태그들에 대한 의미가 소개되어 있다.
도 1의 S110 단계를 통해 악보를 MusicXML 파일로 표현하면 현대 악보에서 사용되는 악보 상의 모든 음악적 표현의 대하여 대부분 XML 형식의 문자로 표현 가능하다. 특히 악보를 MusicXML 파일로 변환하면 음계(step)와 종류(type) 등의 음표(note)의 값뿐만 아니라 박자(tempo), 조(key), 음표(note)의 값을 알 수 있다.
구현의 관점에서, 악보를 MusicXML의 형식으로 변환하기 위해서는 PDF 형식으로 된 악보와 MusicXML로 악보를 제작할 수 있는 악보 제작 소프트웨어가 필요하다. PDF로 작성된 악보를 악보 제작 소프트웨어에서 읽어와 MusicXML의 형식으로 변환 가능하다.
도 1의 S120 단계에서, 상기 연산 장치는 음표에 할당된 값과 악보의 구조에 기초하여 상기 S110 단계를 통해 구조화된 전자 악보를 해석하여 전자 악보 내의 구성 요소를 식별한다. 이러한 구성 요소의 식별을 위해서는 먼저 구조화된 전자 악보 내에 태깅(tagging)된 정보가 포함되어 있어야 하며, 이를 파싱(parsing)하여 레벨 분류에 필요한 기초 정보를 획득하게 된다. 이후 구체적으로 설명할 이들 기초 정보는 음표의 위치에 관한 정보, 음계의 변화에 관한 정보 및 연주의 빠르기에 관한 정보를 포함하는 것이 바람직하다.
S130 단계에서, 상기 연산 장치는 S120 단계를 통해 식별된 구성 요소로부터 상기 전자 악보 내의 음표의 위치, 음계의 변화 및 연주의 빠르기에 기초하여 상기 전자 악보의 난이도를 산출한다. 이를 위해 구조화된 전자 악보로부터 식별된 구성 요소들을 먼저 살펴볼 필요가 있다. 여기서는 악보의 난이도를 계량하기 위한 수치화 값을 결정하는 요소들에 대해 소개하도록 한다. 특히, 앞서 간략히 소개한 바와 같이 본 발명의 실시예들은 악보의 레벨을 결정하기 위한 방법으로 3단계 검토에 따르며, 각 단계는 다음과 같다.
첫째, 악보 내 음표의 위치(position)에 따른 기존 악보들의 난이도를 분석하여 알맞은 수식을 도출하여 레벨을 정한다. 악보의 레벨을 음표의 위치(position)를 기준으로 나눈 이유는 한 마디 안의 연주하는 음표(note) 간의 거리가 길수록, 손가락이 움직이는 거리가 멀수록 어렵다고 판단하였기 때문이다. 이때 손가락이 움직이는 거리는 음계(step)을 기준으로 계산한다. 다음의 표 1은 음표(note)가 가질 수 있는 요소를 보여준다.
Figure 112015127474151-pat00001
음표에서 높이(pitch)는 음계(step)와 옥타브(octave)로 2종류로 나눌 수 있다. 각 값은 음표(note) 값에 명시되어있다. 각 음표 값은 변환 가능한 모든 악보를 MusicXML로 변환할 때 해당 음표(note)에 해당하는 값으로 MusicXML <note> </note> 태그 사이에 <step> <octave> 태그의 값이 명시된다.
둘째, 음계의 변화에 따른 악보들의 난이도를 분석 및 수치화를 통한 레벨을 정한다. 연주 시 음계의 변화가 많은 악보는 연주자가 읽기 힘들며, 음계의 변화를 주는 요소가 많을수록 연주가 힘들다고 판단한다. 음계의 변화는 곡 전체의 영향을 주는 조표(key signature)와 마디 내의 특정 음표만 영향을 주는 임시표로 나눌 수 있다. MusicXML에서 조표는 <attribute> 태그 내의 <key>의 값으로 명시되며, 임시표는 해당 음표의 변화의 명시를 위해 <note> 태그 내의 <alter> 태그와 <accidental> 태그의 값으로 명시된다.
셋째, 악보에 표시된 연주의 빠르기에 따른 표현법에 따라 레벨을 정한다. 동일 악보라도 연주 시 연주 속도가 빠를수록 연주의 난이도는 높아지며, 연주속도가 느릴수록 난이도는 낮다고 볼 수 있다. 고전 악보에서 연주의 빠르기는 빠르기말(Tempo Signature)로 표현되어 있으며 이를 통하여 정확한 연주 속도를 측정할 순 없지만 대략적인 연주의 속도와 음악의 분위기를 알 수 있다. 현대 악보에서는 연주의 빠르기는 빠르기표(Metronome Marking, M.M.)로 표현하며 메트로놈의 빠르기를 기준으로 하여 정확한 연주 빠르기를 표현할 수 있다. MusicXML에서는 빠르기표를 이용하며 <metronome> 태그의 <beat-unit>에 음표 종류와 <per-minute>에 빠르기에 대한 값으로 표현한다.
이하에서는 세 가지 구성 요소에 대한 수치화 방법들을 순차적으로 소개한다.
(1) 음의 높이(pitch)
1-1) 음계(step)
음계(step)란 일정한 음정의 순서로 음을 차례로 늘어놓은 것을 의미한다. 동양 음악은 5음 음계(step), 서양 음악은 7음 음계(step)로 이루어진 장음계를 기초로 한다. 본 발명의 실시예들에서는 서양 음악의 기준인 7음 음계(step)를 기초로 작성하였다.
음계(step) 요소는 해당 음이 어떤 음계(step)를 표현하는지를 나타낸다. 예를 들어, 서양 음악에서는 음계(step) 요소인 A, B, C, D, E, F, G의 7개 요소를 포함하며 동일하게 요소값이 표현된다. 계이름은 각 음계의 요소에는 음계를 기준으로 한 음의 이름이다. 장음계를 이루는 음의 계이름은 으뜸음인 도부터 시작하여 레, 미, 파, 솔, 라, 시로 올라간다.
1-2) 옥타브(octave)
옥타브란 음정을 나타내는 단위로서 피아노에서 하얀 건반을 기준으로 장음계 으뜸음인 도(C)부터 시작하여 8도 위 거리까지를 말한다. 피아노의 제일 왼쪽의 도(C)에서 시작하여 8도 위의 거리까지를 1옥타브(octave), 1옥타브(octave)의 그 다음 도(C)에서 8도위의 거리까지를 2옥타브(octave), 2옥타브(octave)의 그 다음 도에서 8도위의 거리까지를 3옥타브(octave), 3옥타브(octave)의 그 다음 도에서 8도위의 거리까지를 4옥타브(octave), 4옥타브(octave)의 그 다음 도에서 8도위의 거리까지를 5옥타브(octave), 5옥타브(octave)의 그 다음 도에서 8도위의 거리까지를 6옥타브(octave), 6옥타브(octave)의 그 다음 도에서 8도위의 거리까지를 7옥타브(octave), 7옥타브(octave)의 그 다음 도에서 8도위의 거리까지를 8옥타브(octave)라고 한다. 옥타브(octave) 요소는 해당 음이 몇 옥타브(octave)인지를 나타낸다. 옥타브(octave) 요소는 1, 2, 3, 4, 5, 6, 7, 8의 8개로 나뉘며 요소 값은 그대로 1, 2, 3, 4, 5, 6, 7, 8을 가진다.
상기된 음계(step)와 옥타브(octave) 요소 값에 따라 음의 높이(pitch)를 알 수 있다. 음의 높이(pitch)는 MusicXML에서 <pitch>와 </pitch>사이의 값으로 나타난다. 예를 들어, (4)옥타브 (D)음계를 XML 기반의 악보의 예로서 표현한 도 3을 참조하면, 악보의 표현은 해당 음은 [음계(step)] 값이 D, [옥타브(octave)] 값이 4라는 의미이며, 해당 음은 4옥타브(octave)의 D 음계(step)임을 나타낸다.
(2) 변화표(Chromatic signs, Accidentals)
변화표는 음의 높낮이를 변화시킬 때 사용하는 표이다. 표 2에 예시된 바와 같이 변화표에는 음의 반음을 높이는 올림표와 음의 반음을 낮추는 내림표가 있으며, 변화된 음을 다시 돌려주는 제자리표가 있다.
Figure 112015127474151-pat00002
악보 전체에 영향을 주도록 붙이는 변화표는 조표라고 하며, 음표 자체에 붙여 일부 음표에 영향을 주는 변화표는 임시표라고 한다.
2-1) 조표(Key Signature)
조표란 음자리표(Clef)와 박자표(Time Signature) 사이에 붙는 변화표로 올림표(??, #)나 내림표(플랫, ♭)을 사용할 수 있다. 조표가 사용된 악보에서 해당 음계의 대하여 반음을 지속적으로 높이거나 낮춤을 나타낸다. 올림표는 악보에서 계이름을 기준으로 파, 도, 솔, 레, 라, 미, 시의 순서로 추가되며, 내림표는 시, 미, 라, 레, 솔, 도, 파의 순서로 추가된다. 올림표와 내림표의 쓰임에 따라 장음계와 단음계가 구성된다.
조표(Key Signature) 값에 따라 악보에서 변화된 음계를 알 수 있다. 조표가 사용된 음계는 MusicXML에서 <key>와 </key>사이의 값으로 나타난다. 예를 들어, 조표로 내림표가 사용된 악보를 XML 기반의 악보의 예를 표현한 도 4를 참조하면, 악보의 조표는 [조표<fifths>] 값이 -2 라는 의미이며, 악보에 내림표가 2개 사용되었음을 나타낸다. <fifths>의 값은 양수일 경우 올림표, 음수일 경우 내림표이며, 숫자의 크기는 조표가 사용된 개수를 의미한다.
2-2) 임시표(accidentals)
임시표란 특정 음표의 음의 높이를 일시적으로 변화시키기 위해 사용되는 변화표다. 모든 음표(note) 앞에 변화표를 임시표로서 사용될 수 있는데, 임시표가 붙을 때는 해당 음표에 대하여 반음을 높이거나 낮출 수 있다. 임시표는 해당 음표에서 효력이 시작되며 동일 마디 내에서만 효력이 유효하다. 임시표에는 기존 올림표, 내림표, 제자리표 외에 올림표 두 개를 사용을 뜻하는 겹올림표(double sharp) 또는 내림표 두 개를 사용하는 겹내림표(double flat)를 사용할 수도 있다.
음표에 사용된 임시표의 종류에 따라 변화된 음계를 알 수 있다. 변화표가 사용된 음표는 [<alter> 태그] 사의 값으로 표현된다. 임시표가 사용된 음표를 XML 기반의 악보의 예를 표현한 도 5를 참조하면, 4옥타브의 E음계에 대하여 올림표가 사용될 경우 MusicXML에서는 <note> 태그 내에 <alter> 태그의 값을 이용하여 음의 변화를 표현한다. <alter>의 값이 양수일 경우 올림표를 음수일 경우 내림표이며, 숫자의 크기는 임시표가 사용된 개수를 의미한다. <accidental>은 악보에서 해당 임시표의 모양을 나타낸다.
(3) 빠르기말(Tempo Signature)
악보에서 빠르기말이란 음악 연주 시 연주에 대한 속도를 나타낸다. 악보에서 박자(beats)는 한 마디에서 단위 음표의 개수(박, beats)를 표시하지만 연주의 속도는 알 수 없다. 악보의 속도는 그 곡의 리듬에 영향을 미치기 때문에 악보의 속도는 연주에 중요한 요소이며, 일반적으로 연주의 속도는 사람의 신체 리듬을 기준으로 빠름과 느림을 표현해왔다.
고전 음악의 빠르기말을 사용하였지만, 현대 악보에서는 주로 빠르기표(M.M.)를 통하여 연주의 빠르기를 표현한다. 악보에서 자주 사용되는 빠르기말은 빠르기 순서에 따라 Presto, Vivace, Allegro, Moderato, Andante, Adagio, Largo 등이 있으며 점점 느린 속도를 나타낸다. 빠르기말은 연주자의 주관적 판단에 의하여 연주속도가 좌우되며 같은 속도의 빠르기말이라도 연주의 리듬이나 느낌에 따라 다르게 연주될 수 있다.
빠르기표는 ♩=60 또는 M.M.=60과 같이 메트로놈을 기준으로 속도를 표기하며, 기준 음표를 이용하여 1분당 연주되는 박자의 수 나타낸다. 특히, 빠르기말의 Andante와 빠르기표의 ♩=80는 표준 박자로 사람의 심장 박동수에 따른 기본 리듬이라고도 한다. 일반적으로 기본 리듬을 기준으로 빠르기표의 숫자가 클수록 연주속도는 빨라지며, 숫자가 적을수록 연주 속도는 느리다.
도 6은 빠르기말의 종류와 빠르기표와의 관계를 나타낸 도면으로서, 아래로 갈수록 점점 느린 박자를 표현하고 있으며, 각 빠르기말의 따른 속도는 빠르기표의 메트로놈 기준 1분 당 박자수를 대략적으로 표현하고 있다. 도 6은 빠르기말에 따른 빠르기표의 수치값을 보여준다. 빠르기말에서 표준박자인 Andante를 기준으로 빨라질 경우 빠르기표의 값은 20 정도 증가하며, 느린 빠르기말은 빠르기표의 값으로 10 정도 감소됨을 알 수 있다.
도 7은 본 발명의 일 실시예에 따른 도 1의 악보 레벨 분류 방법에서 난이도를 산출하는 과정(S130 단계)을 보다 구체적으로 도시한 흐름도로서, 난이도 결정의 위한 기준을 자세히 제시하고 있다. 악보의 레벨 요소 값을 할당하는 방법은 MusicXML로 표현된 악보로부터 각 음의 수치화된 값을 기반으로 계산될 수 있으며, 악보의 음을 기준으로 연주의 난이도는 다음과 같이 고려될 수 있다.
S131 단계에서, 구조화된 전자 악보는 음표의 위치(position)를 포함하며, 연산 장치는 인접한 음표 간의 거리에 따라 난이도 레벨이 비례하도록 난이도 값을 산출한다.
이 과정에서는, 음표(note) 사이의 거리(distance)를 고려 요소로서 선택하였으며, 악보에서 한 음표(note)에서 그 다음 음표(note)의 음계를 계산한 거리를 구한 뒤, 악보 안에 모든 음표(note) 사이들의 거리의 평균을 구한다. 즉, 연산장치는 악보 내에 포함된 모든 음표에 대하여 인접한 음표 간의 거리의 평균을 산출하여 난이도 값으로 설정할 수 있다. 이때, 평균이 클수록 손의 움직임이 크다는 의미이므로 어렵다고 판단하게 된다.
이와 더불어, 화음(chord)을 고려 요소로서 선택할 수도 있다. 화음(chord)은 한 손으로 두 개 이상의 음표(note)를 동시에 연주하는 것을 의미하는데, 피아노의 경우 한 손으로 연주할 수 있는 최대의 음표(note) 개수는 5개이다. 한 번에 많은 음을 연주할수록 악보가 어렵다는 의미이므로 화음(chord)이 많을수록 어렵다고 판단하게 된다. 또한, 화음(chord)은 독립적으로 고려할 수 없으므로 화음(chord)의 가중치를 빈도수에 적용할 수 있다. 화음(chord)이 존재할 경우에는 기존의 음표(note)의 빈도수 보다 빈도수 값이 높아지는 것이 바람직하다. 즉, 화음을 형성하는 음표들의 위치의 평균을 대표 위치값으로 설정하되, 상기 화음에 대한 빈도수에 비례하여 가중치를 증가시킬 수도 있다.
S132 단계에서, 구조화된 전자 악보는 조표(key signature) 또는 임시표(accidentals) 중 적어도 하나인 변화표(chromatic sign)를 포함하며, 연산 장치는 전체 음표의 수에 대한 상기 변화표의 사용에 따라 음계의 변화가 나타나는 음표의 비율로부터 변화의 정도를 나타내는 변화표 가중치를 산출하며, 이러한 변화표 가중치가 반영된 난이도 값을 얻을 수 있다.
이 과정에서는, 조표(Key Signature)와 임시표(accidentals)를 고려 요소로서 선택하였다. 조표 사용에 따른 조의 변화에 따라 음표의 음계를 반음 올린음 또는 반음 내린음으로 연주해야 하므로 조표가 많을수록 올린음 또는 내린음이 많아지므로 연주가 어렵다고 판단된다. 또한 임시표는 해당 마디의 특정 음표에게만 적용되므로 임시표에 따른 일시적인 음계의 변화는 연주를 더욱 어렵게 만든다고 판단하는 것이 바람직하다. 즉, 변화표 가중치는 조표 또는 임시표의 개수의 합에 비례하여 난이도 레벨을 나타내도록 설정될 수 있다. 그로부터, 연산 장치는 전자 악보 내의 음표의 위치에 따른 난이도와 산출된 변화표 가중치를 승산하여 변화표 사용에 따른 난이도 값을 산출할 수 있다.
S133 단계에서, 구조화된 전자 악보는 빠르기말(tempo signature)를 더 포함하며, 연산 장치는 미리 설정된 평균 속도와 악보 내에 포함된 빠르기말과의 편차를 이용하여 상기 평균 속도와의 상대적인 빠르기 정도를 나타내는 빠르기말 가중치를 산출하며, 이러한 빠르기말 가중치가 반영된 난이도 값을 얻을 수 있다.
이 과정에서는, 빠르기말(Temp Signature)을 고려 요소로서 선택하였다. 한 마디 안의 음표의 개수에 따라 손가락의 움직임이 횟수가 결정되므로 난이도에 영향을 미친다. 그러나 연주의 속도가 아주 느리다면 한 마디 내의 음표의 개수가 많더라도 연주가 쉽게 느껴질 수 있으며, 같은 악보라도 연주의 속도가 빠르다면 단위 시간에 연주를 위한 손가락의 움직임 많아짐으로써 연주가 어렵다고 판단하는 것이 바람직하다. 즉, 빠르기말 가중치는 악보 내에 포함된 빠르기말의 대표값과 미리 설정된 평균 속도의 차를 평균 속도로 제산한 값에 비례하여 난이도 레벨을 나타내도록 설정될 수 있다. 이로부터 연산 장치는 전자 악보 내의 음표의 위치에 따른 난이도와 음계의 변화에 따른 가중치를 승산한 값에 빠르기말 가중치를 승산함으로써 빠르기말 사용에 따른 난이도 값을 산출할 수 있다.
이하에서는 각각의 고려 요소를 보다 구체적으로 설명하도록 한다.
고려 요소 1: 음표(note) 사이의 거리(note distance)
악보 난이도를 측정을 위하여 음표의 위치값으로 "음표(note) 사이의 거리"를 이용한다. "음표(note) 사이의 거리"란 이전 음표(note)의 위치 값과 그 다음 음표(note)의 위치 값이다.
악보에서 각 음표(note) 간 거리의 위치값을 지정하기 위해서는 우선적으로 각 음표(note)의 위치 값을 지정하여야 한다. 현대 음악의 악보에서는 가로선으로 된 오선(음의 높낮이를 그려 넣을 수 있는 다섯 개의 평행선)을 기준으로 음표를 위치시키며 오선의 제일 아래 줄을 1st line(첫 번째 줄)이라고 명시하며 차례로 5th Line까지 다섯 줄을 정의할 수 있다. 또한 오선 사이의 칸에 대하여 1st Line과 2nd Line 사이의 칸을 1st Space(첫 번째 칸)으로 하며 차례로 4th Space까지 지정한다. 본 발명의 실시예들에서도 첫 번째 줄의 값을 1로 지정하였다. 또한 5개의 줄과 4개의 칸에 해당되는 높이(pitch)를 지정하였다.
이때 오른손으로 연주하는 높은음자리표가 있는 오선과 왼손으로 연주하는 낮은음자리표가 있는 오선에서는 같은 위치에 있는 음이라도 음의 높이(pitch)가 다르다.
도 8은 높은음자리의 악보에 대해 음표의 위치값과 XML 기반의 악보 표현을 예시한 도면으로서, 오른손으로 연주하는 높은음자리의 악보와 MusicXML에서 표현하는 음표(note)의 음계(step)와 옥타브(octave)의 관계를 보여준다. 또한, 도 9는 낮은음자리의 악보에 대해 음표의 위치값과 XML 기반의 악보 표현을 예시한 도면으로서, 왼손으로 연주하는 낮은음자리의 악보와 MusicXML에서 표현하는 음표(note)의 음계(step)와 옥타브(octave)의 관계를 보여준다.
여기서, 도 8 및 도 9에서는 1부터 9까지의 값만 표현되었으나 덧줄(Ledger Line)을 그리면 0 이하의 값 또는 9 이상의 값으로도 확장 가능하다. 위치 값 할당 시 간격은 도 8 및 도 9의 경우와 동일하다.
한편, 화음(chord)일 경우 위치 값 역시 난이도에 대한 고려 요소로서 활용될 수 있다. 다만, 화음(chord)일 경우에는 음표(note)의 위치 값을 중간 값으로 정한다. 중간 값은 가장 높은 음의 위치 값과 가장 낮은 음의 위치 값을 반으로 나눈 값을 의미하는데, 이러한 중간 값을 적용하는 이유는 손의 손끝과 손끝 사이의 중간에 있는 손의 중심이 화음(chord)의 위치 값을 대표하기 때문이다. 다음의 표 3은 화음(chord)이 존재하는 도 10의 악보에서 화음을 가지는 음표의 위치 값을 보여주는 예시이다.
Figure 112015127474151-pat00003
도 10에서, 음표 2번은 G음계로 3의 위치값과 B음계인 5의 위치값을 가지는 화음이며, 음표 4번은 G음계인 3의 위치값과 F음계인 9의 위치값을 가지는 화음이다.
다음으로, 변화표가 붙었을 경우의 위치 값을 고려해 보자. 변화표란 음표가 가진 음의 높이를 올리거나 내리는 등 변화를 줄 때 사용한다. 변화표는 악보의 조성의 변화를 위해 조표로 사용하거나 임시표로 사용하여 특정 음표에 사용하여 임시적인 음의 높이를 변화시켜 준다.
임시표는 음표(note)의 머리 좌측에 붙어주며, 본래의 음 높이를 임시로 올리거나 내리는 등 변화가 있을 때 사용한다. 임시표의 효력은 한 마디이다. 임시표의 대표적인 종류로는 올림표(sharp), 내림표(flat), 제자리표(Natural)이 있다. 올림표란 원래의 음에서 반음을 올려주는 것으로 보통 바로 오른쪽 검은 건반을 치라는 뜻을 가진다. 그렇지만 B나 E의 음계(step)에 올림표가 붙었을 경우에는 반음이 존재하지 않으므로 각각 온음인 C와 F를 친다. 내림표란 원래의 음에서 반음을 내려주는 것으로 보통 바로 왼쪽 검은 건반을 치라는 뜻을 가진다. 그렇지만 C나 F의 음계(step)에 내림표가 붙었을 경우에는 반음이 존재하지 않으므로 각각 온음인 B와 E를 친다. 제자리표란 조표나 임시표의 효력을 없애고 원음으로 돌리는 기호이다.
도 11은 다장조를 기준으로 임시표가 사용된 경우의 건반의 위치를 예시한 도면으로서, 임시표가 음표(note)에 붙으면 악보에서의 음의 위치 값이 달라진다. 따라서 음표(note)에 올림표가 붙었을 경우에는 원래의 음에서 0.5를 더하고, 내림표가 붙었을 경우에는 원래의 음에서 0.5를 뺀 값을 위치 값으로 지정한다. 앞서 말한 것처럼, B나 E의 음계(step)에 올림표가 붙었을 경우에는 반음이 존재하지 않으므로 원래 음의 위치 값에서 0.5가 아니라 1을 더한 값으로 지정하며, 마찬가지로 C나 F의 음계(step)에 내림표가 붙었을 경우에는 반음이 존재하지 않으므로 원래 음의 위치 값에서 0.5가 아니라 1을 뺀 값으로 지정한다.
도 12는 임시표가 사용된 악보의 예로서, 2번은 F음계에 올림표가 붙어있으며, 4번은 A음계인 내림표가 붙어있는 음표의 위치값을 나타내었다. 따라서, 도 12의 위치 값을 계산하면 다음의 표 4와 같다.
Figure 112015127474151-pat00004
한편, 조표는 높은음자리표 또는 낮은음자리표의 옆에 사용하는 변화표로 악보의 조성(Key)의 변화를 주며, 악보의 음계 구성을 미리 알려줄 때 사용한다. 조표의 효력 범위는 악보 전체이다. 조표에서 사용할 수 있는 변화표는 반음계 올리는 올림표(sharp)와 반음계를 내리는 내림표(flat)가 있다.
도 13은 조표로 올림표 또는 내림표가 사용된 경우의 예이다. 음표(note)에 조표가 적용되면 임시표와 같이 악보에서의 해당 음의 위치 값이 달라진다. 따라서 조표로서 올림표가 붙었을 경우에는 원래의 음에서 0.5를 더하고, 조표가 내림표로 붙었을 경우에는 원래의 음에서 0.5를 뺀 값을 위치 값으로 지정한다. 앞서 임시표와 마찬가지로, B나 E의 음계(step)에 올림표가 붙었을 경우에는 반음이 존재하지 않으므로 원래 음의 위치 값에서 0.5가 아니라 1을 더한 값으로 지정하며, 마찬가지로 C나 F의 음계(step)에 내림표가 붙었을 경우에는 반음이 존재하지 않으므로 원래 음의 위치 값에서 0.5가 아니라 1을 뺀 값으로 지정한다.
이제, 음표(note)들의 위치 값을 구한 후에는 이전 음표(note)의 위치 값과 그 다음 음표(note)의 위치 값의 차이를 계산해야 한다. 차이를 계산한 후에 하나의 악보에서의 음표의 위치 값 차이의 평균을 구할 수 있다.
다음의 수학식 1은 악보에서 각 음표(note) 간 거리 값들의 합을 구하는 식이다.
Figure 112015127474151-pat00005
여기서, h(단, h>2)는 악보 안에 존재하는 음표(note)의 총 개수이고, i번째 음표(note)의 위치 값인 Di와 i+1번째 음표(note)의 위치 값인 Di +1을 빼면 위치 값들의 차이를 계산할 수 있다. 따라서 각 음표 간의 위치 값이 차이를 모두 계산 후 모두 합하면 악보의 내의 모든 음표 간 거리를 계산할 수 있다.
다음의 수학식 2에서는 악보 전체의 음표간 거리(note distance)의 합을 이용하여 음표(note)들의 위치 값 차이들에 대한 평균(P)을 구한다. 악보에 총 h개의 음표가 있으면 각 음표 사이의 거리는 h-1개의 차이값이 생긴다.
Figure 112015127474151-pat00006
다음의 표 5는 앞서 소개한 도 10의 악보를 이용하여 음표 사이의 거리를 계산한 예이다.
Figure 112015127474151-pat00007
고려 요소 2: 변화표 (Key Signature) 사용 가중치
먼저, 조표의 사용에 따른 연주 난이도를 고려해 보자. 앞서 조표와 임시표는 음표를 반음 올리거나 반음 내려서 연주하라는 표시로 음표 간의 거리를 계산할 때 올림이나 내림에 맞게 음표 사이의 거리를 계산할 수 있었다. 악보 연주 시 조표가 있는 악보의 경우 조성에 따라 장음계와 장음계의 리듬을 고려해야 한다. 조표가 있는 악보는 조표의 개수에 따라 전체 악보의 음을 해당 조표에 따라 반음 조정을 하여 연주해야 한다. 조표가 많을수록 연주자는 악보의 음표의 변화를 파악하기 힘들고 반음 높낮이의 연주가 어렵다.
조표는 올림표 또는 내림표 등의 동일한 변화표를 최대 7개를 사용할 수 있다. 피아노 연주 시 조표에 따라 누르는 건반이 달라진다. 도 14는 올림표를 조표로 사용한 장음계 악보와 피아노 건반을 예시한 도면으로서, 악보는 해당 음계의 첫 음인 으뜸음을 시작으로 나타내었다. 내림표를 조표로 사용할 때도 도 14와 같이 으뜸음의 기준과 피아노 건반의 위치를 적용할 수 있다.
다음으로, 변화표가 사용된 음표의 가중치를 고려해 보자. 피아노에서 검은 건반을 이용한 연주는 악보의 파악과 손가락의 움직임에 대한 난이도의 증가를 나타낸다. 조표의 사용은 실제 악보의 음표 변화를 나타내며, 연주하기 어려운 음표이기 때문에 전체 음표의 개수에 비례하여 조표에 적용되는 음표의 개수를 구할 수 있다. 다음의 수학식 3에서 악보에서 조표와 임시표가 사용된 음표의 개수(A)는 악보에서 총 n개의 음표가 있을 때 변화표인 조표와 임시표가 사용된 음표의 개수의 합이다. 단, 조표가 사용된 음표에서 임시표가 다시 사용된 경우 MusicXML에서는 음의 변화를 한번만 표시하므로 조표와 임시표가 이중으로 적용되는 음표는 한 개만 적용된 것으로 할 수 있다.
Figure 112015127474151-pat00008
여기서, s(단, 0≤s≤n)는 악보 안에 조표가 적용되는 음표(note)의 총 개수를 나타내고, t(단, 0≤t≤n)는 악보 안에 임시표가 적용되는 음표(note)의 총 개수를 나타낸다.
다음의 수학식 4에서는 악보 전체의 음표의 합을 이용하여 변화표가 사용된 음표(note)들의 비율인 변화표 가중치(K)을 구한다. 악보에는 총 n개의 음표가 있다. K의 값은 악보에서 음표가 하나 이상 존재한다고 가정하며, 하나의 음표는 조표와 임시표 각각 영향을 받아 음계가 변할 수 있다. 악보에서 조표와 임시표가 하나도 사용되지 않았을 때의 변화표 가중치는 0이며, 조표를 최대 7개를 모두 사용하거나, 악보의 모든 음표에 임시표가 붙을 경우 변화표 가중치는 최대 1의 값을 가진다.
Figure 112015127474151-pat00009
여기서, n(단, n>1)은 악보 안에 존재하는 음표(note)의 총 개수를 나타낸다.
고려 요소 3: 빠르기말(Tempo Signature)에 의한 가중치
우선, 빠르기말과 빠르기표를 재분류하자. 빠르기말이란 곡 전체 또는 한 부분 대하여 연주 속도를 나타내는 문자로 된 빠르기말과 숫자로 표시된 빠르기표를 말한다. 빠르기말은 악보 연주의 속도뿐만 아니라 연주자의 리듬과 분위기에 따라 세분화되어 표현한다. 비슷한 연주 속도라도 리듬과 분위기에 따라 다른 빠르기말이 사용될 수 있다. 연주 속도에 따라 분류하면 속도에 따라 중복되는 빠르기말이 다수 존재한다. 따라서 비슷한 속도의 빠르기말을 자주 사용되는 빠르기말로 분류하여 중복된 속도의 빠르기말을 재분류할 수 있다. 빠르기말은 메트로놈 기준인 빠르기표의 값으로 절대적인 기준이 없지만 대략적인 속도에 따른 범위로 정의할 수 있다. 연주자에 따라 빠르기말에 대한 빠르기표의 속도는 기준이 조금씩 달라질 수 있다. 다음의 표 6은 표를 연주속도에 따라 분류하여 10개의 빠르기말을 기준으로 다시 분류하였다.
Figure 112015127474151-pat00010
이제, 빠르기표에 의한 가중치를 산출하는 방법을 살펴보자. 일반적으로 Andante의 빠르기에 해당하는 70~90 값은 표준 속도로 생각할 수 있으며, 이 속도를 기준으로 다른 속도에 대한 상대적인 속도에 대한 가중치를 고려할 수 있다. 연주 속도에 대한 가중치는 연주 속도가 빨라질수록 연주의 난이도가 높아지며, 연주의 속도가 느려질수록 연주의 난이도는 낮아진다고 볼 수 있다. 본 발명의 실시예들에서는 Andante의 평균 속도인 80을 기준으로 상대적인 속도에 대한 가중치를 계산하였다. 악보에서 연주 속도를 빠르기표로 나타낸 경우 다음의 수학식 5와 같이 악보의 빠르기표 가중치(W)를 계산할 수 있다.
Figure 112015127474151-pat00011
여기서, r은 빠르기표 값을 나타낸다.
만약, 악보에 빠르기표가 ♩=120으로 표기되어 있다면 수학식 5에 의하여 빠르기표에 의한 가중치값을 계산하면
Figure 112015127474151-pat00012
를 얻을 수 있다.
다음으로, 빠르기말에 의한 가중치를 산출하는 방법을 살펴보자. 악보에서 빠르기말을 이용하여 연주속도를 표현한 경우 빠르기말의 수치값을 선택해야 한다. 빠르기말의 수치값은 빠르기말과 매칭되는 빠르기표의 값의 중간값으로 한다. 빠르기말의 가중치(W)는 다음의 수학식 6과 같이 구할 수 있다.
Figure 112015127474151-pat00013
여기서, m은 빠르기말에 대한 빠르기표의 중간값을 나타낸다.
예를 들어, Presto는 180 이상의 속도를 나타내며, Prestissimo는 200 이상의 속도를 나타내므로 200으로 가정하여 중간값을 계산하면
Figure 112015127474151-pat00014
의 가중치를 가진다. Largo는 일반적으로 10 이상 40 이하의 속도를 나타내므로
Figure 112015127474151-pat00015
를 나타낸다.
이상에서, 악보의 레벨을 분류하기 위한 세 가지 고려 요소를 살펴보았다. 이하에서는 이러한 고려 요소를 통해 난이도를 평가하는 방법을 연산의 관점에서 소개하도록 하다.
본 발명의 실시예들에서의 악보에 대한 난이도 평가는 ① 음표 간의 평균 거리에 따른 난이도와 ② 변화표의 사용빈도에 따른 난이도와 ③ 빠르기표의 사용에 따른 난이도를 차례로 적용하여 레벨을 계산한다.
첫째, 음표(note) 간 평균 거리에 따른 난이도 산출 방법을 살펴보자. 음표(note) 간 거리의 차이 값이 클수록 연주할 때 손의 위치가 좌우로 많이 움직이는 것이므로 어렵다고 표현할 수 있다. 따라서 악보의 레벨도 높아진다. 본 실시예에서는 수학식 2에서 계산된 음표 간의 평균거리를 이용하여 음악의 연주 난이도로 판별한다. 음악의 난이도에 대하여 최대값과 최소값의 범위를 한정하지 않은 이유는 음악에 대하여 최고의 난이도를 가지는 악보와 최소의 난이도를 가지는 악보를 한정하기 힘들기 때문이다. 만약 사용자가 원하는 경우 거리 난이도(L)를 임의의 구간으로 한정하여 레벨을 만들어 비교할 수 있다.
둘째, 변화표(accidentals)를 사용 빈도에 따른 난이도 산출 방법을 살펴보자. 변화표의 사용빈도에 따른 난이도는 음표 간 평균거리에 따른 난이도의 값에 변화표 사용에 대한 가중치를 적용시킨다. 변화표가 적용되는 음표가 많을수록 악보를 이해하기 힘들며, 연주시 다장조를 기준으로 하는 기본음의 연주보다 어렵다. 따라서 조표의 영향을 많이 받는 음표의 개수가 많을수록, 또는 음표에 임시표가 많이 사용될수록 악보의 레벨이 높아진다. 본 발명의 실시예에서는 수학식 4의 계산된 변화표 가중치(K)를 이용하여 음표간 평균거리에 따른 난이도(L)에 변화표 가중치를 적용하여 변화표 난이도(LK)를 다음의 수학식 7과 같이 계산한다
Figure 112015127474151-pat00016
셋째, 빠르기표를 이용한 난이도 산출 방법을 살펴보자. 빠르기표를 이용한 난이도는 변화표를 사용빈도에 따른 난이도 값에 빠르기표 사용에 대한 가중치 값을 적용시킨다. 빠르기표는 음악의 연주 속도를 나타내므로 빠른 속도를 나타내는 빠르기말이 사용되거나 빠르기표에 큰 값이 주어진 경우 빠른 속도를 연주해야 하므로 연주 난이도는 크다고 볼 수 있다. 따라서 악보에 연주속도에 대한 표기가 되어 있다면, 일반적으로 빠르게 연주해야 할수록 악보의 레벨도 높아진다. 만약 동일한 악보에 연주속도가 느리게 표기되어 있거나, 연주속도가 느린 악보일 경우는 연주의 난이도가 낮아진다. 빠르기표를 사용한 악보의 가중치 적용에서 가장 느린 빠르기표가 사용되더라도 난이도가 0이 되지 않으며, 빠른 일반적인 악보의 레벨에 대하여 상대적인 난이도를 나타내야 한다. 현재 악보의 레벨에 빠르기표의 가중치값을 이용하여 난이도를 가감해야 한다. 다음의 수학식 8은 거리 난이도에 빠르기표 가중치를 이용하여 빠르기표 난이도(LF)를 계산한다.
Figure 112015127474151-pat00017
마지막으로, 악보의 레벨을 평가하기 위하여 거리 난이도(L)를 계산하여 사용된 변화표에 대한 가중치를 적용하여 계산한 결과에 빠르기표에 의한 가중치를 적용하면 최종 난이도를 계산할 수 있다. 거리의 난이도 계산에서 언급한 것과 같이 음악의 난이도에 대하여 최대값을 가지는 악보와 최소값을 가지는 악보를 알 수 없기 때문에 악보에 대한 난이도에 대하여 최대값과 최소값을 한정하지 않았다. 난이도의 최소값은 0에 가까워질 수 있지만, 최대값은 악보의 연주 난이도에 따라 크게 높아질 수 있다.
레벨을 평가하기 위하여 악보가 한손 악보인지 또는 양손 악보인지 고려할 필요가 있다. 양손 악보는 두 손을 각각 따로 연주하므로 더욱 난이도가 증가될 수 있다. 한손 악보의 경우, 높은음자리로 표현된 오선이 하나만 존재하므로 위의 순서대로 난이도값을 계산하여 레벨로 정한다. 양손 악보의 경우, 오른손에 해당하는 높은음자리표의 오선과 왼손에 해당하는 낮은음자리표의 오선에 대하여 각각 난이도를 계산한다. 오른손의 연주와 왼손의 연주는 각각 다른 난이도를 가지므로 서로의 난이도를 합산하여 최종 레벨로 정한다.
상기된 방법에 따라 각 악보와 이를 전자 악보로 변환한 악보를 이용하여 연주자(또는 사용자)는 자신이 연주할 수 있는 악보에 대한 수치화된 레벨값을 계산할 수 있으며, 많은 악보에 대한 레벨값과 비교하여 자신에게 맞는 악보를 추천할 수 있을 뿐 아니라, 악보들 사이의 연주에 대한 난이도를 서로 비교할 수 있다.
도 15는 본 발명의 일 실시예에 따른 전자 악보의 레벨(level)을 분류하는 장치(100)를 도시한 블록도로서, 앞서 소개한 도 2의 악보의 난이도 수준 평가 방법을 하드웨어의 관점에서 기술한 것으로서, 여기서는 설명의 중복을 피하고자 각 구성을 중심으로 수행 동작과 기능을 약술하도록 한다.
데이터 입력부(10)는, 전자화된 데이터 형태의 악보를 입력받는 기술적 수단으로서, 이러한 악보는 pdf 형식 또는 이미지 형식이 될 수 있으며, 구현의 관점에서 디지털 데이터를 입력받을 수 있는 다양한 수단 내지 종이 악보와 같은 아날로그 데이터를 입력받을 수 있는 카메라 또는 스캐너 등이 활용될 수 있다.
메모리(30)는 입력된 상기 악보의 레벨(level)을 분류하는 프로그램(40)을 저장하는 기술적 수단으로서, 구현의 관점에서 통상적인 고속의 메모리뿐만 아니라, 자기 디스크 또는 자기 테이프 등 대용량 데이터를 축적하는 다양한 수단이 활용될 수 있다. 보다 구체적으로, 상기 메모리에 저장된 프로그램은, 입력된 상기 악보를 구조화된 전자 악보로 변환하고, 음표에 할당된 값과 악보의 구조에 기초하여 상기 구조화된 전자 악보를 해석하여 전자 악보 내의 구성 요소를 식별하며, 식별된 구성 요소로부터 상기 전자 악보 내의 음표의 위치, 음계의 변화 및 연주의 빠르기에 기초하여 상기 전자 악보의 난이도를 산출하는 명령어를 포함한다.
메모리(30)에 저장된 프로그램(40)은, 상기 구조화된 전자 악보가 음표의 위치(position)를 포함하며, 인접한 음표 간의 거리에 따라 난이도 레벨이 비례하도록 난이도 값을 산출한다. 이러한 프로그램(40)은, 악보 내에 포함된 모든 음표에 대하여 인접한 음표 간의 거리의 평균을 산출하여 난이도 값으로 설정하고, 상기 음표가 화음인 경우 화음을 형성하는 음표들의 위치의 평균을 대표 위치값으로 설정하되, 상기 화음에 대한 빈도수에 비례하여 가중치를 증가시키는 것이 바람직하다.
또한, 메모리(30)에 저장된 프로그램(40)은, 상기 구조화된 전자 악보가 조표(key signature) 또는 임시표(accidentals) 중 적어도 하나인 변화표(chromatic sign)를 포함하며, 전체 음표의 수에 대한 상기 변화표의 사용에 따라 음계의 변화가 나타나는 음표의 비율로부터 변화의 정도를 나타내는 변화표 가중치를 산출한다. 이러한 프로그램(40)은, 상기 조표 또는 상기 임시표의 개수의 합에 비례하여 난이도 레벨을 나타내도록 상기 변화표 가중치를 설정하고, 상기 전자 악보 내의 음표의 위치에 따른 난이도와 산출된 상기 변화표 가중치를 승산하여 변화표 사용에 따른 난이도 값을 산출하는 것이 바람직하다.
나아가, 메모리(30)에 저장된 프로그램(40)은, 상기 구조화된 전자 악보가 빠르기말(tempo signature)를 더 포함하며, 미리 설정된 평균 속도와 악보 내에 포함된 빠르기말과의 편차를 이용하여 상기 평균 속도와의 상대적인 빠르기 정도를 나타내는 빠르기말 가중치를 산출한다. 이러한 프로그램(40)은, 상기 악보 내에 포함된 빠르기말의 대표값과 상기 미리 설정된 평균 속도의 차를 상기 평균 속도로 제산한 값에 비례하여 난이도 레벨을 나타내도록 상기 빠르기말 가중치를 설정하고, 상기 전자 악보 내의 음표의 위치에 따른 난이도와 상기 음계의 변화에 따른 가중치를 승산한 값에 상기 빠르기말 가중치를 승산함으로써 빠르기말 사용에 따른 난이도 값을 산출하는 것이 바람직하다.
마지막으로, 연산부(20)는 메모리(30)에 접근하여 상기 악보의 레벨을 분류하는 프로그램(40)을 독출한 후 이러한 프로그램을 구동하는 기술적 수단으로서, 본 장치의 핵심적인 일련의 기능들이 정의된 프로그램을 실행하는 중추이다.
한편, 이러한 악보의 변환 과정 내정 내지 레벨 분류 과정에서 도출되는 다양한 정보들은 선택적으로 구비될 수 있는 디스플레이부(50)를 통해 사용자에게 제공될 수도 있다.
상기된 본 발명의 실시예들에 따르면, 종이 악보 또는 이미지로서 입력된 악보를 구조화된 전자 악보로 변환하고 이로부터 구성 요소의 의미를 추출/식별하며 음표에 할당된 값을 활용하여 악보의 레벨을 자동으로 판단함으로써 다수의 전자 악보들의 분류를 용이하게 할 뿐만 아니라, 객관적이고 수치화된 분류 기준을 제공함으로써 악보 전반에 걸쳐 일관성 있는 난이도 변별이 가능하다.
이하에서는, 상기된 본 발명의 실시예들에 따른 전자 악보의 레벨 분류 기법을 적용하여 실제 악보의 난이도를 평가한 실험 결과를 제시하도록 한다.
도 16은 전자 악보의 레벨 분류 기법을 위한 대상 악보로서, 'Richard Charles Rodgers'의 "Do Re Mi"를 예시하였으며, 도 17은 도 16의 대상 악보를 XML 기반의 악보로 변환한 결과의 일부를 예시한 도면이다. 도 17을 참조하면, XML 규격에 따라 태그를 활용하여 악보 내의 각 구성 요소들이 표현되어 있음을 확인할 수 있다.
이제, 이로부터 악보의 레벨을 분류한 결과를 나타낸 다음의 표 7 및 표 8을 살펴보자.
Figure 112015127474151-pat00018
Figure 112015127474151-pat00019
표 7 및 표 8로부터 3단계에 따른 난이도를 산출하면 다음과 같다.
우선, 음표(note) 간 평균 거리에 따른 난이도(P)는 수학식 9와 같이 산출된다.
Figure 112015127474151-pat00020
그런 다음, 변화표의 가중치를 계산한 난이도(LK)는 수학식 10과 같이 산출된다.
Figure 112015127474151-pat00021
마지막으로, 빠르기표를 이용한 난이도(LF)는 수학식 11과 같이 산출된다.
Figure 112015127474151-pat00022
이상의 예에서는 조표와 임시표가 없으므로 가중치는 0으로 두며, 빠르기표 역시 없으므로 가중치는 0으로 둔다. 최종적으로 이 악보의 난이도는 한손 악보이므로 1.357이 된다. 만약 양손 악보의 경우라면, 왼손과 오른손에 대해 각각의 난이도를 산출한 후, 이를 가산하여 최종 난이도를 산출할 수 있다.
한편, 본 발명의 실시예들은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.
이상에서 본 발명에 대하여 그 다양한 실시예들을 중심으로 살펴보았다. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100 : 전자 악보의 레벨 분류 장치
10 : 데이터 입력부
20 : 연산부
30 : 메모리
40 : 프로그램
50 : 디스플레이부

Claims (18)

  1. 적어도 하나의 연산 장치 및 데이터 입력 장치를 구비하여 전자 악보의 레벨(level)을 분류하는 방법에 있어서,
    연산 장치가 데이터 입력 장치를 통해 악보를 입력받아 구조화된 전자 악보로 변환하는 단계;
    상기 연산 장치가 음표에 할당된 값과 악보의 구조에 기초하여 상기 구조화된 전자 악보를 해석하여 전자 악보 내의 구성 요소를 식별하는 단계; 및
    상기 연산 장치가 식별된 구성 요소로부터 상기 전자 악보 내의 음표의 위치, 음계의 변화 및 연주의 빠르기에 기초하여 상기 전자 악보의 난이도를 산출하는 단계를 포함하되,
    상기 전자 악보의 난이도를 산출하는 단계는,
    인접한 음표들 간의 위치값 차이를 산출하여 상기 전자 악보의 난이도를 산출하는데 반영하는 단계를 포함하되,
    화음에 대해서는 상기 화음을 구성하는 음표들의 평균 위치값을 산출하고, 산출된 평균 위치값을 이용하여 화음의 인접한 음표들 또는 화음들 간의 위치값의 차이를 산출하는 전자 악보의 레벨 분류 방법.
  2. 제 1 항에 있어서,
    상기 구조화된 전자 악보는 음표의 위치(position)를 포함하며,
    상기 연산 장치는 인접한 음표 간의 거리에 따라 난이도 레벨이 비례하도록 난이도 값을 산출하는 것을 특징으로 하는 전자 악보의 레벨 분류 방법.
  3. 제 2 항에 있어서,
    상기 연산장치는 악보 내에 포함된 모든 음표에 대하여 인접한 음표 간의 거리의 평균을 산출하여 난이도 값으로 설정하는 것을 특징으로 하는 전자 악보의 레벨 분류 방법.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 구조화된 전자 악보는 조표(key signature) 또는 임시표(accidentals) 중 적어도 하나인 변화표(chromatic sign)를 포함하며,
    상기 연산 장치는 전체 음표의 수에 대한 상기 변화표의 사용에 따라 음계의 변화가 나타나는 음표의 비율로부터 변화의 정도를 나타내는 변화표 가중치를 산출하는 것을 특징으로 하는 전자 악보의 레벨 분류 방법.
  6. 제 5 항에 있어서,
    상기 변화표 가중치는 상기 조표 또는 상기 임시표의 개수의 합에 비례하여 난이도 레벨을 나타내도록 설정되는 것을 특징으로 하는 전자 악보의 레벨 분류 방법.
  7. 제 6 항에 있어서,
    상기 연산 장치는 상기 전자 악보 내의 음표의 위치에 따른 난이도와 산출된 상기 변화표 가중치를 승산하여 변화표 사용에 따른 난이도 값을 산출하는 특징으로 하는 전자 악보의 레벨 분류 방법.
  8. 제 1 항에 있어서,
    상기 구조화된 전자 악보는 빠르기말(tempo signature)를 더 포함하며,
    상기 연산 장치는 미리 설정된 평균 속도와 악보 내에 포함된 빠르기말과의 편차를 이용하여 상기 평균 속도와의 상대적인 빠르기 정도를 나타내는 빠르기말 가중치를 산출하는 것을 특징으로 하는 전자 악보의 레벨 분류 방법.
  9. 제 8 항에 있어서,
    상기 빠르기말 가중치는 상기 악보 내에 포함된 빠르기말의 대표값과 상기 미리 설정된 평균 속도의 차를 상기 평균 속도로 제산한 값에 비례하여 난이도 레벨을 나타내도록 설정되는 것을 특징으로 하는 전자 악보의 레벨 분류 방법.
  10. 제 8 항에 있어서,
    상기 연산 장치는 상기 전자 악보 내의 음표의 위치에 따른 난이도와 상기 음계의 변화에 따른 가중치를 승산한 값에 상기 빠르기말 가중치를 승산함으로써 빠르기말 사용에 따른 난이도 값을 산출하는 특징으로 하는 전자 악보의 레벨 분류 방법.
  11. 제 1 항 내지 제 3 항 및 제 5 항 내지 제 10 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  12. 전자화된 데이터 형태의 악보를 입력받는 데이터 입력부;
    입력된 상기 악보의 레벨(level)을 분류하는 프로그램을 저장하는 메모리; 및
    상기 악보의 레벨을 분류하는 프로그램을 구동하는 연산부를 포함하되,
    상기 메모리에 저장된 프로그램은,
    입력된 상기 악보를 구조화된 전자 악보로 변환하고, 음표에 할당된 값과 악보의 구조에 기초하여 상기 구조화된 전자 악보를 해석하여 전자 악보 내의 구성 요소를 식별하며, 식별된 구성 요소로부터 상기 전자 악보 내의 음표의 위치, 음계의 변화 및 연주의 빠르기에 기초하여 상기 전자 악보의 난이도를 산출하는 명령어를 포함하되,
    상기 명령어는 인접한 음표들 간의 위치값 차이를 산출하여 상기 전자 악보의 난이도를 산출하는데 반영하되, 화음에 대해서는 상기 화음을 구성하는 음표들의 평균 위치값을 산출하고, 산출된 평균 위치값을 이용하여 화음의 인접한 음표들 또는 화음들 간의 위치값의 차이를 산출하는 것을 특징으로 하는 전자 악보의 레벨 분류 장치.
  13. 제 12 항에 있어서,
    상기 메모리에 저장된 프로그램은,
    상기 구조화된 전자 악보가 음표의 위치(position)를 포함하며,
    인접한 음표 간의 거리에 따라 난이도 레벨이 비례하도록 난이도 값을 산출하는 것을 특징으로 하는 전자 악보의 레벨 분류 장치.
  14. 삭제
  15. 제 12 항에 있어서,
    상기 메모리에 저장된 프로그램은,
    상기 구조화된 전자 악보가 조표(key signature) 또는 임시표(accidentals) 중 적어도 하나인 변화표(chromatic sign)를 포함하며,
    전체 음표의 수에 대한 상기 변화표의 사용에 따라 음계의 변화가 나타나는 음표의 비율로부터 변화의 정도를 나타내는 변화표 가중치를 산출하는 것을 특징으로 하는 전자 악보의 레벨 분류 장치.
  16. 제 15 항에 있어서,
    상기 메모리에 저장된 프로그램은,
    상기 조표 또는 상기 임시표의 개수의 합에 비례하여 난이도 레벨을 나타내도록 상기 변화표 가중치를 설정하고,
    상기 전자 악보 내의 음표의 위치에 따른 난이도와 산출된 상기 변화표 가중치를 승산하여 변화표 사용에 따른 난이도 값을 산출하는 특징으로 하는 전자 악보의 레벨 분류 장치.
  17. 제 12 항에 있어서,
    상기 메모리에 저장된 프로그램은,
    상기 구조화된 전자 악보가 빠르기말(tempo signature)를 더 포함하며,
    미리 설정된 평균 속도와 악보 내에 포함된 빠르기말과의 편차를 이용하여 상기 평균 속도와의 상대적인 빠르기 정도를 나타내는 빠르기말 가중치를 산출하는 것을 특징으로 하는 전자 악보의 레벨 분류 장치.
  18. 제 17 항에 있어서,
    상기 메모리에 저장된 프로그램은,
    상기 악보 내에 포함된 빠르기말의 대표값과 상기 미리 설정된 평균 속도의 차를 상기 평균 속도로 제산한 값에 비례하여 난이도 레벨을 나타내도록 상기 빠르기말 가중치를 설정하고,
    상기 전자 악보 내의 음표의 위치에 따른 난이도와 상기 음계의 변화에 따른 가중치를 승산한 값에 상기 빠르기말 가중치를 승산함으로써 빠르기말 사용에 따른 난이도 값을 산출하는 특징으로 하는 전자 악보의 레벨 분류 장치.
KR1020150187361A 2015-12-28 2015-12-28 전자 악보의 레벨을 분류하는 장치 및 방법 KR101795760B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150187361A KR101795760B1 (ko) 2015-12-28 2015-12-28 전자 악보의 레벨을 분류하는 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150187361A KR101795760B1 (ko) 2015-12-28 2015-12-28 전자 악보의 레벨을 분류하는 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20170077461A KR20170077461A (ko) 2017-07-06
KR101795760B1 true KR101795760B1 (ko) 2017-11-08

Family

ID=59354314

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150187361A KR101795760B1 (ko) 2015-12-28 2015-12-28 전자 악보의 레벨을 분류하는 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101795760B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200071929A (ko) * 2018-12-11 2020-06-22 동국대학교 산학협력단 난이도와 연주자의 수준을 고려한 악보 제공 장치 및 그 동작 방법
WO2023106665A1 (ko) * 2021-12-08 2023-06-15 (주)더바통 악보 변환 시스템

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117349257A (zh) * 2022-06-28 2024-01-05 教育科技加私人有限公司 乐谱训练数据库的构建和应用
KR102532629B1 (ko) * 2022-12-07 2023-05-16 (주)더바통 악보를 추천하기 위한 방법 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100175539A1 (en) * 2006-08-07 2010-07-15 Silpor Music Ltd. Automatic analysis and performance of music
JP2010276891A (ja) * 2009-05-29 2010-12-09 Casio Computer Co Ltd 楽曲難易度評価装置および楽曲難易度評価プログラム
JP2011191431A (ja) * 2010-03-12 2011-09-29 Xing Inc 難易度算出装置、難易度算出方法及びコンピュータプログラム
JP2014228726A (ja) * 2013-05-23 2014-12-08 ヤマハ株式会社 楽曲評価装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100175539A1 (en) * 2006-08-07 2010-07-15 Silpor Music Ltd. Automatic analysis and performance of music
JP2010276891A (ja) * 2009-05-29 2010-12-09 Casio Computer Co Ltd 楽曲難易度評価装置および楽曲難易度評価プログラム
JP2011191431A (ja) * 2010-03-12 2011-09-29 Xing Inc 難易度算出装置、難易度算出方法及びコンピュータプログラム
JP2014228726A (ja) * 2013-05-23 2014-12-08 ヤマハ株式会社 楽曲評価装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200071929A (ko) * 2018-12-11 2020-06-22 동국대학교 산학협력단 난이도와 연주자의 수준을 고려한 악보 제공 장치 및 그 동작 방법
KR102158380B1 (ko) 2018-12-11 2020-09-22 동국대학교 산학협력단 난이도와 연주자의 수준을 고려한 악보 제공 장치 및 그 동작 방법
WO2023106665A1 (ko) * 2021-12-08 2023-06-15 (주)더바통 악보 변환 시스템

Also Published As

Publication number Publication date
KR20170077461A (ko) 2017-07-06

Similar Documents

Publication Publication Date Title
Johansson Rhythm into style: studying assymmetrical grooves in Norwegian folk music
US9947238B2 (en) Music notation system
KR101795760B1 (ko) 전자 악보의 레벨을 분류하는 장치 및 방법
Bozkurt et al. Computational analysis of Turkish makam music: Review of state-of-the-art and challenges
Friedmann Ear training for twentieth-century music
Akbari et al. Real-time piano music transcription based on computer vision
Pfordresher et al. Vocal mistuning reveals the origin of musical scales
Eremenko et al. Performance assessment technologies for the support of musical instrument learning
Benetos et al. Automatic transcription of Turkish microtonal music
Giraldo et al. A machine learning approach to discover rules for expressive performance actions in jazz guitar music
US20230089269A1 (en) Performance Improvement with the DAMONN Music Notation System
Zhang Practice and exploration of music solfeggio teaching based on data mining technology
CN113763913A (zh) 一种曲谱生成方法、电子设备及可读存储介质
Benetos et al. Automatic transcription of Turkish makam music
Shin et al. Real-time recognition of guitar performance using two sensor groups for interactive lesson
US7238876B1 (en) Method of automated musical instrument finger finding
US20230099808A1 (en) Method and system for automatic music transcription and simplification
WO2022143679A1 (zh) 谱面分析和标注方法、装置及电子设备
Holder et al. Musiplectics: computational assessment of the complexity of music scores
Raman et al. Bach, Mozart, and Beethoven: Sorting piano excerpts based on perceived similarity using DiSTATIS
Politis et al. Determining the chromatic index of music
KR101714432B1 (ko) 악보의 난이도 수준을 평가하는 장치 및 방법
Gedik Automatic transcription of traditional Turkish art music recordings: A computational ethnomusicology appraoach
Gross A set of computer programs to aid in music analysis.
JP6358801B2 (ja) 弦楽器用指板音階表

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant