(57)【特許請求の範囲】
【請求項１】
符頭ラベル分離手段と、走査手段と、符頭記号認識手段と、結合手段とを有して実行され、楽譜のイメージを読み取ってその音楽記号を認識し、演奏及び／又は表示可能な楽譜形式に変換する楽譜認識方法において、符頭ラベル分離手段により行われる、符尾情報を用いて符頭のラベルを分離する符頭ラベル分離工程と、走査手段により行われる、符尾候補の周辺を走査する走査工程と、符頭記号認識手段により行われる、上記走査により検出された該符尾候補周辺にある分離ラベルを辞書とマッチングして、ドラム符頭記号を認識する符頭記号認識工程と、結合手段により行われる、符尾と符頭の結合処理を行う結合工程とを実行することを特徴とする楽譜認識方法。
【請求項２】
請求項１記載の楽譜認識方法において、符頭記号認識手段で分離ラベルと辞書とのマッチングに失敗した場合、走査手段により符尾候補周辺の走査を続けて、次に検出された符頭ラベルと前記分離ラベルとの結合処理を行った後、符頭記号認識手段により辞書とのマッチングを再度行うことを特徴とする請求項１記載の楽譜認識方法。
【請求項３】
請求項２記載の楽譜認識方法において、次に検出され結合処理に使用された符頭ラベル自体についても符頭記号認識手段により辞書とマッチングさせ、該マッチング結果の方が優先度が高い場合、その認識結果を優先させることを特徴とする請求項２記載の楽譜認識方法。
【請求項４】
請求項２記載の楽譜認識方法において、前記符頭認識及びラベル結合を繰り返して行い、その結合中に符頭記号認識手段によりマッチングして認識された夫々の認識結果に優先度をつけさせ、優先度の高い順に該認識結果を決定することを特徴とする請求項２記載の楽譜認識方法。
【請求項５】
請求項１乃至４記載の楽譜認識方法において、符頭ラベル分離手段により、符頭に接触するタイを消去してラベル分離を行い、符頭記号認識手段により、該タイが接触している符頭を含むドラム音符の認識を行うことを特徴とする請求項１乃至４記載の楽譜認識方法。
【請求項６】
請求項１乃至５記載の楽譜認識方法において、符頭同士が上下に接触した結合符頭自体を符頭記号認識手段の辞書に登録しておき、該符頭記号認識手段により、この辞書と該結合符頭とのマッチングを行って、結合符頭の認識を行うことを特徴とする請求項１乃至５記載の楽譜認識方法。
【請求項７】
請求項１乃至６記載の楽譜認識方法において、トレモロ記号を符頭記号認識手段の辞書に登録しておき、該符頭記号認識手段により、該トレモロ記号の認識を行ってそれを消去した後、トレモロ記号を含んで表示されていた他のドラム音符の認識を行うことを特徴とする請求項１乃至６記載の楽譜認識方法。
【請求項８】
請求項１乃至７記載の楽譜認識方法において、符尾を分断する符頭を有するドラム音符の認識時に、符尾を分断する符頭とその上下の符尾候補との結合を結合手段により行って、該符頭を共有する符尾逆向きのドラム音符を認識した後、符尾が下向きの音符を削除して、上下の符尾を結合したものを符尾候補とし、残りの符頭と結合手段により結合させることを特徴とする請求項１乃至７記載の楽譜認識方法。
【請求項９】
請求項１乃至７記載の楽譜認識方法において、符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合に、符尾は上向き、符尾下端が五線より下に出ており且つ符尾上端が五線より上に出ていない場合に、符尾は下向きと判断して、先頭符頭と該符尾候補とを結合手段により結合させることを特徴とする請求項１乃至７記載の楽譜認識方法。
【請求項１０】
請求項８記載の楽譜認識方法において、符尾を分断する符頭を有する音符を含むドラム音符の認識時に、黒玉を対象としない符頭と符尾候補の結合処理を結合手段により行い、符尾を分断する符頭を有するドラム音符については、該符頭を共有する符尾逆向きのドラム音符を認識した上で、符尾が下向きの音符を削除して、上下の符尾を結合したものを符尾候補として残りの先頭符頭と結合手段により結合させると共に、他のドラム音符については、符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合に、符尾は上向き、符尾下端が五線より下に出ており且つ符尾上端が五線より上に出ていない場合に、符尾は下向きと判断して、該符尾候補と残りの符頭とを結合手段により結合させ、これらの条件に合わないものは、元の符尾候補に戻した後、該符尾候補と残りの符頭とを結合手段により結合させることを特徴とする請求項８記載の楽譜認識方法。
【請求項１１】
楽譜のイメージを読み取ってその音楽記号を認識し、演奏及び／又は表示可能な楽譜形式に変換する楽譜認識プログラムを記憶したコンピュータ読み取り可能な記録媒体であって、該プログラムの実行により、符頭ラベル分離手段と、走査手段と、符頭記号認識手段と、結合手段とが該コンピュータ上に実現され、符頭ラベル分離手段による、符尾情報を用いて符頭のラベルを分離するラベル分離機能と、走査手段による、符尾候補の周辺を走査する走査機能と、符頭記号認識手段による、該走査で検出された該符尾候補周辺にある分離ラベルを辞書とマッチングして符頭の認識を行いドラム符頭を認識する認識機能と、結合手段による、認識された符頭と符尾候補とを結合する結合機能とを実行させるための楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１２】
請求項１１記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、符頭記号認識手段で分離ラベルと辞書とのマッチングに失敗した場合、走査手段により符尾候補の周辺の走査を続けて、次に検出された符頭ラベルと前記分離ラベルとの結合処理を行った後、符頭記号認識手段により辞書とのマッチングを再度行うことを特徴とする請求項１１記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１３】
請求項１２記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、次に検出され結合処理に使用された符頭ラベル自体についても符頭記号認識手段により辞書とマッチングさせ、該マッチング結果の方が優先度が高い場合、その認識結果を優先させることを特徴とする請求項１２記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１４】
請求項１２記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、前記符頭認識及びラベル結合を繰り返して行わせる間に、その符頭認識中にマッチングして認識された夫々の認識結果に優先度を符頭記号認識手段につけさせ、優先度の高い順に該認識結果を決定することを特徴とする請求項１２記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１５】
請求項１１乃至１４記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、符頭ラベル分離手段により、符頭に接触するタイを消去させ、該消去後に符頭ラベル分離手段によるラベル分離機能でラベル分離を行い、前記符頭記号認識手段の認識機能で、該タイが接触している符頭の認識を行うことを特徴とする請求項１１乃至１４記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１６】
請求項１１乃至１５記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、符頭同士が上下に接触した結合符頭自体を符頭記号認識手段の辞書に登録しておき、該符頭記号認識手段の認識機能でこの辞書と該結合符頭とのマッチングを行って、結合符頭の認識を行うことを特徴とする請求項１１乃至１５記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１７】
請求項１１乃至１６記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、トレモロ記号を符頭記号認識手段の辞書に登録しておき、該符頭記号認識手段の認識機能により、該トレモロ記号の認識を行うと共に、該トレモロ記号を消去し、消去後トレモロ記号を含んで表示されていた他のドラム音符の認識を行うことを特徴とする請求項１１乃至１６記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１８】
請求項１１乃至１７記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、符尾を分断する符頭を有するドラム音符の認識時に、前記結合手段の結合機能によって符尾を分断する符頭とその上下の符尾候補との結合を行って、該符頭を共有する符尾逆向のドラム音符を認識した後、符尾が下向きの音符を削除して、上下の符尾を結合したものを符尾候補とし、残りの符頭と結合手段により結合させることを特徴とする請求項１１乃至１７記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１９】
請求項１１乃至１７記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合に、符尾は上向き、符尾下端が五線より下に出ており且つ符尾上端が五線より上に出ていない場合に、符尾は下向きと判断して、先頭符頭と該符尾候補とを結合手段により結合させることを特徴とする請求項１１乃至１７記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２０】
請求項１８記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体において、符尾を分断する符頭を有する音符を含むドラム音符の認識時に、黒玉を対象としない符頭と符尾候補の結合処理を結合手段により行い、符尾を分断する符頭を有するドラム音符については、該符頭を共有する符尾逆向きのドラム音符を認識した上で、符尾が下向きの音符を削除して、上下の符尾を結合したものを符尾候補として残りの先頭符頭と結合手段により結合させると共に、他のドラム音符については、符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合に、符尾は上向き、符尾下端が五線より下に出ており且つ符尾上端が五線より上に出ていない場合に、符尾は下向きと判断して、該符尾候補と残りの符頭とを結合手段により結合させ、これらの条件に合わないものは、元の符尾候補に戻した後、該符尾候補と残りの符頭とを結合手段により結合させることを特徴とする請求項１８記載の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、楽譜のうち、特にドラム譜の読み取りを可能にする楽譜認識方法及び楽譜認識を行うプログラムを記緑したコンピュータ読み取り可能な記録媒体に関する。
【０００２】
【従来の技術】
通常楽譜を機械的に認識させる場合は、五線認識、図２６に示されるような段落の認識の後、五線を消去して、種々の方法を使いながら、図２７（ａ）に示される黒玉ｂや同図（ｂ）に示される白玉ｗなどの音符の符頭、同図（ｃ）に示される該符頭に連続する符尾ｔ、更に同図（ｄ）に示される該符尾に連続する旗ｆ、その他を認識している。
【０００３】
【発明が解決しようとする課題】
ドラム譜に表示される符頭のうち、通常の楽譜と同じ黒玉・白玉以外の音符は、（×）、（◇）など、細線で書かれており、この他にも色々なタイプが存在する。そのため、通常楽譜の音符認識に用いられている、太細分離（特開平９−９７０６０号参照、画像データから細い線を構成する部分を分離しそれから細い線を構成される記号を検出し、残りの画像から太い記号を検出して、楽譜上に現れる記号の認識を行う方式）、楕円検出（楕円式を用いて通常の音符の符頭に使用される黒玉や白玉を認識する方式）で検出することができない。
【０００４】
この他、符頭へのタイ結合や、２つ以上の符頭が縦方向で接触した和音など、従来方式では解決できない問題が存在する。また符尾に対して符頭が結合している位置が楽譜によって違っていることや、符尾の途中に符頭があって、符尾を分断するタイプの音符があるなど、通常の楽譜にはない問題がある。
【０００５】
本発明は従来技術の上記問題に鑑み創案されたもので、これらの問題を解決し、通常楽譜とは異なるドラム譜におけるドラム音符の認識を可能にし、演奏及び／又は表示可能なデータ形式に変換することができる構成を提供せんとするものである。
【０００６】
【課題を解決するための手段】
そのため本願請求項１に係る発明の構成は、符頭ラベル分離手段と、走査手段と、符頭記号認識手段と、結合手段とを有して実行され、楽譜のイメージを読み取ってその音楽記号を認識し、演奏及び／又は表示可能な楽譜形式に変換する楽譜認識方法において、符頭ラベル分離手段により行われる、符尾情報を用いその符尾のビットを消去（以後消去は、画像のビットプレーンを消すことを言い、認識結果保存データ上のデータそのものを消す削除と区別する）することで符頭のラベルを分離する符頭ラベル分離工程と、走査手段により行われる、符尾候補の周辺を走査する走査工程と、符頭記号認識手段により行われる、上記走査により検出された該符尾候補周辺にある分離ラベルを辞書とマッチングして、ドラム符頭記号を認識する符頭記号認識工程と、結合手段により行われる、符尾と符頭の結合処理を行う結合工程とを実行することを特徴としている。
ドラム譜の符頭は、黒玉や白玉以外の音符については、上述のように、(×)、(◇)など、細線で書かれており、この他にも色々なタイプが存在するので、通常楽譜の音符認識に用いられている、太細分離方式、楕円検出方式で検出することができない。そのため、通常の記号認識と同様に、符頭ラベル分離手段により、分離抽出したラベルを符頭記号認識手段により辞書とマッチングすることで認識を行う。しかし符尾があるため、符頭だけを１つのラベルとして分離できない。また連鉤や和音等もあるため、符尾を含めて辞書化しようとすると、パターンが膨大になり不可能である。そのため本構成では、走査手段により行われる符尾候補周辺の走査符尾の情報を利用して、一旦符頭のラベルを符頭ラベル分離手段により分離し、分離したラベルを符頭記号認識手段により辞書とマッチングして、通常の記号認識と同じ方法で認識できるようにしている。その際、符頭から分離された符尾候補周辺を走査手段により走査して、符尾候補周辺にあるラベルをマッチング対象としてドラム符頭の認識を符頭記号認識手段により行い、マッチングの行われた符頭は最終的に符尾との連結が結合手段により行われる。
【０００７】
上記構成は、請求項１１の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、楽譜のイメージを読み取ってその音楽記号を認識し、演奏及び／又は表示可能な楽譜形式に変換する楽譜認識プログラムを記憶したコンピュータ読み取り可能な記録媒体であって、該プログラムの実行により、符頭ラベル分離手段と、走査手段と、符頭記号認識手段と、結合手段とが該コンピュータ上に実現され、符頭ラベル分離手段による、符尾情報を用いて符頭のラベルを分離するラベル分離機能と、走査手段による、符尾候補の周辺を走査する走査機能と、符頭記号認識手段による、該走査で検出された該符尾候補周辺にある分離ラベルを辞書とマッチングして符頭の認識を行いドラム符頭を認識する認識機能と、結合手段による、認識された符頭と符尾候補とを結合する結合機能とを実行するプログラムである。
【０００８】
上記構成において、符頭記号認識手段で分離ラベルと辞書とのマッチングに失敗した場合、走査手段により符尾候補周辺の走査を続けて、次に検出された符頭ラベルと前記分離ラベルとの結合処理を行った後、符頭記号認識手段により辞書とのマッチングを再度行うようにすれば良い。これは、図１に示すような場合、符尾を消去しても符頭の認識に問題は生じないが、図２に示すような場合、符尾を消去した後、符頭が複数のラベルに分離してしまうからである。このような場合は、最初に行われるマッチングが失敗するので、その後ラベル結合を行って、再度マッチングを行うことで、符頭の認識が可能になる。
【０００９】
上記構成は、請求項１２の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、符頭記号認識手段で分離ラベルと辞書とのマッチングに失敗した場合、走査手段により符尾候補周辺の走査を続けて、次に検出された符頭ラベルと前記分離ラベルとの結合処理を行った後、符頭記号認識手段により辞書とのマッチングを再度行うことになる。
【００１０】
辞書マッチング失敗後に行われる上記ラベル結合及び再度のマッチング処理を行う場合でも、次に検出され結合処理に使用された符頭ラベル自体についても符頭記号認識手段により辞書とマッチングさせ、該マッチング結果の方が優先度が高い場合、その認識結果を優先させるようにすべきである。
【００１１】
上記構成は、請求項１３の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、次に検出され結合処理に使用された符頭ラベル自体についても符頭記号認識手段により辞書とマッチングさせ、該マッチング結果の方が優先度が高い場合、その認識結果を優先させることになる。
【００１２】
また請求項２の楽譜認識方法で、前記符頭認識及びラベル結合を繰り返して行い、その結合中に符頭記号認識手段によりマッチングして認識された夫々の認識結果に優先度をつけさせ、優先度の高い順に該認識結果を決定すると良い。ラベルの結合中、本来認識すべき符頭を全て含む認識矩形にならないうちに、別の符頭と同じ形状となる場合があるので、マッチングを行う場合は、認識結果に優先度をつけると良い。優先度の低い認識結果であった場合、そのＩＤと矩形を保存しておき、次のラベル走査を行う。これより優先度の高いＩＤが見つからなければこちらを優先する。ラベル結合途中にできる認識対象ラベルが意図するのとは別のＩＤに認識されてしまう場合には、これをリジェクトラベルとして辞書に入れ、これに認識された場合には、認識失敗とすることもできる。
【００１３】
上記構成は、請求項１４の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、前記符頭認識及びラベル結合を繰り返して行わせる間に、その符頭認識中にマッチングして認識された夫々の認識結果に優先度を符頭記号認識手段につけさせ、優先度の高い順に該認識結果を決定することになる。
【００１４】
上記の構成では、符頭にタイが接触している場合、ラベル分離ができない。そのため、まず符頭ラベル分離手段により、符頭に接触するタイを消去してラベル分離を行い、符頭記号認識手段により、該タイが接触している符頭を含むドラム音符の認識を行うようにすると良い。
【００１５】
上記構成は、請求項１５の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、符頭ラベル分離手段により、符頭に接触するタイを消去させ、該消去後に符頭ラベル分離手段によるラベル分離機能でラベル分離を行い、前記符頭記号認識手段の認識機能で、該タイが接触している符頭の認識を行う。
【００１６】
図３に示すように、通常のドラムセット以外の楽器を同一五線上に表記している場合に、(×)同士が接触した和音が存在する場合がある。このような場合、辞書とのマッチング前に、夫々の符頭を分離して認識矩形を設定するのは困難である。そのため、請求項６の構成では、符頭同士が上下に接触した結合符頭自体を符頭記号認識手段の辞書に登録しておき、該符頭記号認識手段により、この辞書と該結合符頭とのマッチングを行って、結合符頭の認識を行うこととした。
【００１７】
上記構成は、請求項１６の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、符頭同士が上下に接触した結合符頭自体を符頭記号認識手段の辞書に登録しておき、該符頭記号認識手段の認識機能でこの辞書と該結合符頭とのマッチングを行って、結合符頭の認識を行うようにしたものである。
【００１８】
これまでのように、符尾候補の周辺のラベルを結合しながら辞書とマッチングしていくことで、図４に示すようなトレモロ記号を認識することもできる。特にドラム譜の場合トレモロ記号は比較的多い。トレモロ記号は連鉤と略同じ太さ、間隔も略同じなので、対策を行わないと、連鉤と同様に旗の計数を行なってしまい、３２分音符などの音長の短い音符と誤認してしまう。従って本願構成では、図５に示すような形でトレモロ記号を符頭記号認識手段の辞書に登録しておき、該符頭記号認識手段により、該トレモロ記号の認識を行ってそれを消去した後、トレモロ記号を含んで表示されていた他のドラム音符の認識を行うこととした。
【００１９】
上記構成は、請求項１７の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、トレモロ記号を符頭記号認識手段の辞書に登録しておき、該符頭記号認識手段の認識機能により、該トレモロ記号の認識を行うと共に、該トレモロ記号を消去し、消去後トレモロ記号を含んで表示されていた他のドラム音符の認識を行うことにした。
【００２０】
本願構成では、通常楽譜の認識時に行われていると同様に符頭の認識後、該符頭と符尾の結合処理を行なっているが、ドラム譜の場合、この結合処理にも特別な処理が必用になる。その一つは符頭と符尾の位置関係に起因するものである。即ち黒玉以外の符頭の場合、図２に示すように、符頭の中心に符尾が付く場合があることである。また符尾の両側に符頭が付くことは少ない。
【００２１】
音符の認識は、符頭と符尾候補の結合によってなされるが、該結合は、まず符尾の先頭の符頭を結合した後、中間の符頭の結合を行なう。
通常の符頭（黒玉、白玉）の場合、玉が符尾の左右に付く場合がある。また先頭の玉はＸ方向（横方向）の位置が決まっている（例えば符尾上向きならば先頭の符頭は符尾の左にしか付かない）。よって先頭の玉の結合時、符尾と符頭のＸ方向の位置関係を左右に限定することになる。この時、符頭が符尾のどちらの端に付いているか（符尾上向きか下向きか）は、図６に示すように、符尾候補のＹ方向（縦方向）の中点ＣＣと符頭中心ＣＹのＹ座標の位置関係によって決める。また先頭の玉であるかどうかについては、同図に示すように、符尾候補の端ＳＴと符頭中心ＣＹとの距離、或いは符頭楕円の上下端との関係などにより判定する。
【００２２】
しかしドラム符頭の場合、Ｘ方向に見た場合に、符尾が符頭の中心にある場合があるので、先頭の玉の場合にも、図７（ａ）（ｂ）に示すように、左右の限定を行わない（どちらも結合可とする）。この後、符尾の重複結合を防ぐために、符頭符尾結合後、符頭の符尾の付いた側のフラグをチェックするが、ドラム符頭の場合、図８に示すように、実際の符尾と符頭中心のＸ方向の位置関係に拘わらず、決まった方向をチェックする（符尾上向きなら右側をチェックする）。尚、このチェックフラグは、符頭と符尾候補を結合する際、符尾の重複結合を防ぐために、符頭側の保存データ中データの属性を示すものとして記憶されるものである。その場合の本願の構成として、結合させようとする符尾候補が上向きか下向きかの違いによって該符尾候補との結合位置を特定するフラグを、各符頭に備えており、これらの符頭と符尾候補との結合を行う過程で、前記フラグで特定された符尾の結合位置以外への結合を不可としている。
【００２３】
ドラム譜の場合に、特有な結合処理を行なわなければならないもう一つの理由は、図９(ａ)(ｂ)に示すような符尾を分断する符頭が存在することである。図のような例の場合、符尾の先頭の黒玉は、４分音符ではなく、８分音符として認識されるべきである。符尾を分断する符頭は、同図に示されるように、先頭の玉が黒玉であり、分断する符頭が１つ存在するというパターンが殆どである。そこで本構成では、まず黒玉を対象とせず、図１０に示すように、符尾を分断する符頭を有するドラム音符の認識時に、符尾を分断する符頭とその上下の符尾候補との結合を結合手段により行って、同図(ｂ)のような該符頭を共有する符尾逆向きのドラム音符を認識した後、そのうち図右側の符尾が下向きの音符を削除（消去のように画像のビットプレーンを消すのではなく、認識結果保存データ上のデータそのものを消す処理）し、同図(ｃ)のように上下の符尾を結合したものを符尾候補とし（図右側）、最終的に残りの符頭（黒玉）と結合手段により結合させるようにする。
【００２４】
上記構成は、請求項１８の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、符尾を分断する符頭を有するドラム音符の認識時に、前記結合手段の結合機能によって符尾を分断する符頭とその上下の符尾候補との結合を行って、該符頭を共有する符尾逆向きのドラム音符を認識した後、符尾が下向きの音符を削除して、上下の符尾を結合したものを符尾候補とし、残りの符頭と結合手段により結合させるようにするものである。
【００２５】
ドラム譜の場合に、特有な結合処理を行なわなければならない更に別の理由は、○符頭を認識するために、ハイハットオープンの（  °）が符尾の近くに存在した場合、符頭と誤認する可能性があることである。この対策のため、○符頭については、下向きの符尾を結合したくない場合、左側のフラグをチェックしておけば、このチェック側に符尾が結合されることはない（一般的にフラグのチェックされた側は符尾候補の結合は不可とされる）。
【００２６】
また図１１に示されるハイハットクローズの(＋)の記号や連符数字が符頭と誤認されてしまい、これを符尾先頭の符頭として結合すると、符尾向きが逆の全く異なる音符として認識されてしまうことになる。その対策としてこれらの記号や連符数字をリジェクトラベルとして辞書に登録しても良いが、ドラム譜の符尾向きは通常楽譜と異なり、ある程度限定できることを利用して、本願構成では、符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合、即ち符尾上端が第５線より上且つ符尾下端が第１線より上の場合に、符尾は上向き［ハイハットオープン（ °）の誤認対策としても有効である］、符尾下端が五線より下に出ており且つ符尾上端が五線より上に出ていない場合、即ち符尾下端が第１線より下且つ符尾上端が第５線より下の場合に、符尾は下向きと判断して、先頭符頭と該符尾候補とを結合手段により結合させることとした。
【００２７】
上記構成は、請求項１９の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合に、符尾は上向き、符尾下端が五線より下に出ており且つ符尾上端が五線より上に出ていない場合に、符尾は下向きと判断して、先頭符頭と該符尾候補とを結合手段により結合させることとした。
【００２８】
しかし、符尾を分断する符頭の上述した認識処理及びこれらの符尾符頭の結合処理がなされた場合に、上記の符尾向きを判断する構成を実施すると、図１２に示される共有符頭に下向き符尾が連結した構成の認識が不可となる（符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合は、上向き符尾と判断されるため）。そのため本願構成では、符尾を分断する符頭のための上記処理を行なった後、符尾向きの正規化を行なうことにした。即ち、符尾を分断する符頭を有する音符を含むドラム音符の認識時に、黒玉を対象としない符頭と符尾候補の結合処理を結合手段により行い、符尾を分断する符頭を有するドラム音符については、該符頭を共有する符尾逆向きのドラム音符を認識した上で、符尾が下向きの音符を削除して、上下の符尾を結合したものを符尾候補として残りの先頭符頭と結合手段により結合させると共に、他のドラム音符については、符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合に、符尾は上向き、符尾下端が五線より下に出ており且つ符尾上端が五線より上に出ていない場合に、符尾は下向きと判断して、該符尾候補と残りの符頭とを結合手段により結合させ、これらの条件に合わないものは、元の符尾候補に戻した後（符尾向きの正規化処理）、該符尾候補と残りの符頭とを結合手段により結合させることとしている。
【００２９】
上記構成は、請求項２０の楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体についても同様であり、その構成としては、符尾を分断する符頭を有する音符を含むドラム音符の認識時に、黒玉を対象としない符頭と符尾候補の結合処理を結合手段により行い、符尾を分断する符頭を有するドラム音符については、該符頭を共有する符尾逆向きのドラム音符を認識した上で、符尾が下向きの音符を削除して、上下の符尾を結合したものを符尾候補として残りの先頭符頭と結合手段により結合させると共に、他のドラム音符については、符尾上端が五線より上に出ており且つ符尾下端が五線より下に出ていない場合に、符尾は上向き、符尾下端が五線より下に出ており且つ符尾上端が五線より上に出ていない場合に、符尾は下向きと判断して、該符尾候補と残りの符頭とを結合手段により結合させ、これらの条件に合わないものは、元の符尾候補に戻した後、該符尾候補と残りの符頭とを結合手段により結合させることとしている。
【００３０】
【発明の実施の形態】
以下本発明の一実施形態を添付図面に基づき説明する。図１３は本発明に係る楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体を後述するフレキシブルディスクドライブＦＤＤ５等の外部記憶装置（或いはＣＤ−ＲＯＭドライブ等）で読み込ませて稼動する楽譜認識装置の実施形態構成を示すブロック図である。この装置は、パソコンなどの電子計算機の構成に、スキャナやＭＩＤＩインターフェース回路を付加したものである。ＣＰＵ１は、ＲＯＭ２或いはＲＡＭ３に格納されるプログラムに基づき、楽譜認識装置全体の制御を行う中央演算処理装置である。また予め設定された所定の周期でＣＰＵ１に割り込みをかけるタイマ回路を内蔵している。ＲＡＭ３はプログラムエリアの他、画像データバッファ、ワークエリア等として使用される。ハードディスク装置ＨＤＤ４及びフレキシブルディスクドライブＦＤＤ５は、プログラム及び画像データ、演奏データ等を格納する。ＣＲＴ６はＣＰＵ１の制御に基づき、ＣＲＴインターフェース回路７から出力される映像情報を表示し、キーボード８から入力された情報は、キーボードインターフェース回路９を経てＣＰＵ１に取り込まれる。プリンタ１０は、ＣＰＵ１の制御に基づき、プリンタインターフェース回路１１から出力される印字情報を印字する。
【００３１】
スキャナ１２は、例えば（印刷された）楽譜を光学的に走査して、２値、グレースケール或いはカラーの画像データに変換するものであり、フラットベッド型、ハンディ型、フィーダ型等任意のタイプのスキャナを使用できる。スキャナ１２によって読み取られた画像情報は、スキャナインターフェース回路１３を介して、ＲＡＭ３或いはＨＤＤ４に取り込まれる。ＭＩＤＩインターフェース回路１４は、音源モジュール等の外部のＭＩＤＩ機器との間でＭＩＤＩデータの送受信を行う回路である。バス１５は、本楽譜認識装置内の各回路を接続し、各種データ、プログラム、アドレス等をやり取りさせている。なお、この他にマウスなどのポインティングデバイスやＲＳ２３２Ｃ等のシリアルインターフェース回路等を備えていても良い。
【００３２】
図１４はＣＰＵ１のメイン処理を示すフローチャートである。ステップＳ１においては、スキャナ１２によって楽譜のイメージをＲＡＭ３に取り込む。画像は２値の画像データとして取り込む。ステップＳ２においては、かすれやドットノイズ等を軽減するために、図形融合等の画質平滑化処理を行う。ステップＳ３においては、解像度と濃度の情報を得ると共に、後段における五線検出の基準データを得るために、後述する画質チェック処理を行う。楽譜の認識処理においては、解像度及び濃度が所定の範囲から外れると認識率が低下してしまうので、ステップＳ３においては、これらの値が、所定の範囲内に入っているか否かがチェックされる。ステップＳ４においては、ステップＳ３におけるチェック結果が画質ＯＫであるか否かが判定され、結果がＯＫでない場合にはステップＳ１に戻って、解像度や濃度を変えて再度取り込みを行う。ステップＳ５においては、後述する五線認識を行う。五線認識処理において、五線走査開始位置検出処理と五線シフト量の検出処理が行われる。ステップＳ６においては、段落認識処理を行う。この処理は、大きく、段落認識処理と、大かっこ認識処理に分かれる。段落認識処理においては、画像全体で五線を検出し、五線同士で左端が略同じ場所にある五線の組を探し、五線の端同士が、黒画素で結ばれているかどうかを検査し、段落を認識する。ステップＳ７においては、段落の認識結果を表示して、段落認識結果が正しいか否かを利用者にチェックさせることにより、ＯＫか否かが判定され、結果がＯＫでない場合にはステップＳ８に移行して、段落認識結果の修正が行われる。尚、五線認識が失敗した場合には、その後の処理が行えないので、解像度や濃度を変更して再度画像を取り込む必要がある。従ってステップＳ７においては、まず五線の認識結果を表示し、正しいか否かを利用者に判定させ、もし正しくない場合には、Ｓ１に戻ってイメージを再度取り込み、また五線が正しく認識されている場合には、段落認識結果を表示し、チェックさせるようにしても良い。
【００３３】
ステップＳ９においては、ユーザにより各段落のドラムパートを選択させる。その後ステップＳ１０において、通常パートは通常楽譜認識を、ドラムパートはドラム譜としての認識を行う。全てのページで記号の認識が終了した後、ステップＳ１１〜１３において、１曲中のドラムパートを２回走査（２回ループ）することで、ドラムパートに関して曲全体でドラム表記法の推定と該表記法に従った楽器の割り当てを行う。本構成では、ドラム表記法推定結果の修正インターフェースを備えていない。これは、認識結果が間違っていれば、認識された楽譜記号を修正することで対応するからである。最後にステップＳ１４において、割り当てられた発音楽器に対して、その音長及び音高を指定した演奏可能な楽譜データ形式に変換する。
【００３４】
以下ステップＳ９〜ステップＳ１４までを詳細に説明する。五線認識、段落認識を行い、段落認識のチェック時に同時に、或いは段落認識結果の修正時に同時に、ステップＳ９において、ドラムパートの設定をユーザに行わせる。これは認識された五線、段落の結果を表示して、ドラム譜である五線をチェックさせることで設定する。ここで段落認識結果を保存するデータのパート情報に、ドラム譜であるかどうかのフラグを設定する。
【００３５】
設定されたフラグ情報に基づいて、認識部で、通常楽譜認識とドラム譜認識の場合分けを行い、ステップＳ１０において、ドラム譜に関して記号認識を行う。通常楽譜認識と、ドラム譜認識の違いは次の通りである。ドラム譜認識では、ドラム譜に存在しない記号の認識をスキップする（但し誤設定、誤認識対策、表記間違いなどの対策のために、認識自体は行い、出力だけを制限する場合もある）。ドラム譜認識では、ドラム譜に固有の記号・固有の文字列の認識を追加し、他方ドラム譜に不要な文字列の認識を削除する。また黒玉・白玉以外のドラム符頭を後述の符頭記号認識手段の辞書に追加する。他方ドラム譜の記号の出現確率・出現形態に対応したしきい値の変更を行う（例えばスラーの出現確率は低いので、認識時にしきい値を厳しくすることにより高速化できる、など）。同様に、通常音符の認識しきい値を変更する（黒玉和音が少ない、白玉の出現率は小さい、等。そのため、黒玉のしきい値を厳しくしたり、場合によっては白玉を認識しないようにする。本構成では白玉は認識しないものとする）。
【００３６】
このうちドラム符頭の認識は以下のように行う。ドラム譜の符頭で、通常の楽譜と同じ黒玉は、通常楽譜同様に、五線の線などを消去して行う太細分離処理及び黒玉部分の認識のための楕円検出処理により行う。しかしドラム譜の場合、黒玉の和音（黒玉の接触がある場合）が少ないので、場合によっては楕円検出処理ではなく、符頭ラベル分離手段によって分離されたラベルを対象として符頭記号認識手段のマッチングによって符頭を検出することも可能である。また本構成では、前述のように、ドラム楽譜における白玉の出現確率は低いので、認識を行わない。他方、これら以外のドラム譜の符頭は（×、◇）等、細線で描かれており、またこの他にも色々なタイプが存在するので、これまでと同様に、太細分離処理及び楕円検出処理で検出することができない。そのため、符頭ラベル分離手段によって符尾を消去した上で符頭ラベル（対象とする記号を認識するために設定された矩形）を分離し、走査手段によって符尾候補（符尾と仮にされるもの）の周辺を走査して、符尾候補周辺にある検出されたラベルを符頭記号認識手段によりその辞書とマッチングすることにより行う。但し符尾消去により符頭が複数のラベルに分断されてしまうことがあるので、符頭記号認識手段で分離ラベルと辞書とのマッチングが失敗した場合、更に、走査手段により符尾候補周辺の走査を続けて、次に検出された符頭ラベルと前記分離ラベルとの結合処理を行った後、符頭記号認識手段により辞書とのマッチングを再度行う。この他、ドラム譜の認識及び結合処理においては、特有なものが存在するので、それらについては後に述べる。
【００３７】
認識対象符頭は図１５のようになる。これ以外にもドラム符頭は存在するが、この程度に対応しておけば一般的なドラム譜は略対応できることになる。また符頭が五線のどの位置にあるか（音高）によって認識対象符頭種類を変化させることも有効である［例えば符頭（Ｒ）は第３間しか存在しない等、本構成ではこのような認識は行っていない］。黒玉（白玉）以外の符頭に関しては、認識された符頭の種類を記号保存データに残す。即ち認識記号保存データ中の保存領域ｄｒｕｍＮｏｔｅに符頭種類を書き込む。
【００３８】
以下、本楽譜認識装置の構成におけるドラム譜の楽譜認識方法の詳細を説明する。その認識の前提として、スキャナ１２で読み取られた楽譜画像を１ドット１バイトで取得しておき、そのうちの１ビットを元画像のプレーン（ｂｉｔＳｒｃ）とする。
【００３９】
（１）  通常の音符の検出方法（白玉以外）
白玉を除く通常音符の検出（黒玉の検出）は、
▲１▼  太細分離処理
元画像のプレーン（ｂｉｔＳｒｃ）を、通常音符用及びドラム音符用に、別の２つのビットプレーン（ｂｉｔＴｉｃ、ｂｉｔＤｒｍ）にコピーする。コピーされた２つのビットプレーンにおいて、五線消去処理を行う。但し元画像のプレーン（ｂｉｔＳｒｃ）における五線消去は行わない。楽譜画像を横方向に走査し、コピーされたビットプレーンのうちの１つ（ｂｉｔＴｉｃ）から短いランを消去する。縦方向も走査し、短いランを消去する。残った部分は、楽譜上の太い構成要素（黒玉符頭、連鉤など）を構成している。
▲２▼  符尾検出
横方向走査で消去した短いランのビットを使用して、縦方向の細線を検出する。
▲３▼  符頭検出
上記縦の細線（以下符尾候補という）の周辺を走査しながら、太部分が存在した場合、この太部分の境界線を検出し、あるインターバルで座標を投票し、楕円式を計算する。この楕円式が符頭として妥当な形であれば、楕円保存データ（ｅｐ）に追加する。
▲４▼  符尾結合・認識
上記符尾候補と楕円が音符として妥当な位置関係にあるかどうかを判別し、妥当であれば、符尾との結合処理を行った上で、音符として、認識結果に追加する。
という手順で、行われる。
【００４０】
認識した黒玉は、次に行われるドラム符頭認識の対象にならないように、コピーされたもう１つのビットプレーン（ｂｉｔＤｒｍ）から消去しておく。また小音符は誤認の危険性が高いので、認識しないか、あるいは消去を行わないなどの処置を行う方が良い。
【００４１】
（２）  ドラム音符の認識基本処理
▲１▼  符頭ラベル分離
ドラム音符用のビットプレーン（ｂｉｔＤｒｍ）の符尾候補の左右のラベルビットを、図１に示すように、ある幅で消去する。そうすると、ドラム符頭のラベルが符尾と分離できる。しかし場合によっては、図２に示すように、符頭のラベルが複数のラベルに分離してしまう場合もある。そのため、後述するようにラベル結合を行いながら、認識を行う。
▲２▼  マッチング
符尾候補の周りを走査しながら、ビットプレーン（ｂｉｔＤｒｍ）のラベルを検出する。検出されたラベル矩形を左右に少し広げ、この矩形中にあるプレーン（ｂｉｔＳｒｃ）を辞書とのマッチングの対象とする。矩形を左右に少し広げるのは、符尾のノイズを減らすための処理である。即ち、検出されたラベルと符尾との距離が近いために、矩形そのままだと、符尾の一部が認識対象に入ったり入らなかったりし、辞書とのマッチングが大きく変わってしまうので、矩形を広げ、符尾を認識対象に入れてしまうようにしている。また、対象ビットプレーンをｂｉｔＤｒｍではなくｂｉｔＳｒｃにするのは、五線消去の状態がマッチングに影響しないようにするためである。
そして該矩形（ラベル）内のｂｉｔＳｒｃを辞書とマッチングする。マッチングの方式はどのようなものでも良い。
マッチングのための辞書は、符頭と符尾、五線の接触状態の組み合わせにより、１つの符頭種類に、複数のＩＤを用意する。マッチング後、ＩＤの統合処理を行う。即ち図１６及び図１７に示すように、符頭が五線と交差した場合及び符尾と交差した場合、更にこれらが組み合わされて、１つの符頭種類に、複数のＩＤが用意される。この時認識対象ラベル（辞書とマッチングするラベル）は、図１８に示すようになる。これらを別ＩＤとして辞書とマッチングし、最終的に符頭（×）という１つのＩＤに統合する。これらのパターンを最初から１つのＩＤとしても良いが、そうすると、１つのＩＤへの登録パターンが膨大になる。従って上記のように、五線との交差・符尾との交差によって分類しておいた方が、ＩＤあたりのパターン数が少なくなり、辞書作成時に整理がし易くなる。
マッチングをとるかどうかを矩形のサイズによって判断する。例えば縦幅が符頭よりも明らかに小さい矩形は、マッチングを取るまでもないので、後述のラベル結合処理に移る。また横幅が広い場合は、符頭にタイが連結した場合が考えられるので、後述のタイ消去処理を行う。この処理が失敗し、矩形が大きいままの場合は、最初からマッチング失敗とし、ラベル結合処理もリセットする。
▲３▼  ラベル結合
符頭辞書とラベルとのマッチングをとり、マッチングしなかった場合（ＩＤ＿ＭＡＴＣＨＩＮＧＮＯＮＥ）、ラベルの走査を続け、次に検出されたラベルと結合させて、再認識（再度辞書とマッチング）する。但し結合に使用した第２のラベル自体で一度マッチングを行い、マッチング結果のＩＤの優先度が最大であれば、こちらを優先する。またラベルの結合の最大サイズ（ｄｘｔ）のリセットと、ラベル結合のリセット（ラベル結合可の状態にする）を行い、新たな結合を開始する縦の距離（ｄｙｔ）も設定する。更に、認識結果のＩＤの優先度が最大であれば、その時点で矩形結合を終了し、新たな矩形結合を行うための、矩形や距離の初期化処理を行う（上記２つのリセット処理を行う）。
マッチングは、ラベルの結合中、本来認識すべき符頭を全て含む認識矩形にならないうちに、別の符頭と同じ形状となる場合があるので、認識結果に優先度を付ける。優先度の低い認識結果であった場合、そのＩＤと矩形を保存しておき、次のラベル走査を行う。これより優先度の高いＩＤが見つからなければこちらを優先する。
ラベル結合途中にできる認識対象ラベルが意図するのとは別のＩＤに認識されてしまう場合には、これをリジェクトラベルとして辞書に入れ、認識結果がこれになった場合には、認識失敗とすることもできる。符頭が結合したものを表す結合符頭やトレモロ記号など、マッチング結果が特殊な場合があるが、これらが認識された場合は、後述するように、それに応じた処理を行う。
辞書とのマッチングが取れた場合符頭データ（ｅｐ）にデータを追加する。
▲４▼  符尾結合・認識
黒玉と同様に、符尾候補との結合処理を行う。但しドラム符頭の場合には、特殊な処理が必要な場合がある。それについては後述する。そして黒玉（白玉）以外の符頭に関しては、認識された符頭の種類を記号保存データに残す。即ち認識記号保存データ中の保存領域ｄｒｕｍＮｏｔｅに符頭種類を書き込む。
【００４２】
上記ラベル結合処理を含むマッチング処理の詳細を、フローチャートとして図１９乃至図２１に示す。同図の処理は、符尾候補の縦線の周辺を或る幅ｄｗで走査しながらｂｉｔＤｒｍを探し、見つかればこれに塗装関数をかけて、矩形（ｒｅｃｔＣｕｒ：検出されたラベルを囲む矩形）を検出する。矩形の大きさを判断しながら、図２２（ａ）（ｂ）に示すように、まずｒｅｃｔＣｕｒだけでマッチングし、結果によっては、以前の矩形とマージし、マージ矩形（ｒｅｃｔＭｒｇ：ラベル同士を連結した矩形）でもマッチングする。
ステップＳ２１において、デフォルトの値をｒｅｃｔＭｒｇ、ｒｅｃｔＣｕｒの各座標に入れ、矩形の座標の初期化を行うと共に、保存符頭ＩＤの初期化も行う。ステップＳ２２において、符尾の最上点のｙ値をｙＢｅｆに入れる。ステップＳ２３において、ｙを符尾候補の最上から最下までループする。そしてステップＳ２４において、ｒｅｃｔＭｒｇの各座標がデフォルトの値か否かを判断し、デフォルト値であれば、後述するステップＳ２９に飛ぶ。この値がデフォルト値でなければ、ステップＳ２５に進む。その際ドットが何もない距離がある程度あると、次のものの走査のためにリセットしなければならない。そのためステップＳ２５において、捜査中のｙの点の値と符尾最上点の値との差の絶対値が上記ｄｙｔの値を超えたか否かを判断し、超えていなければ同じく後述するステップＳ２９に飛ぶが、もし越えていれば、更にステップＳ２６において、保存符頭ＩＤが初期状態であるか否かを判断する。初期状態であれば、後述するステップＳ２８に進む。反対に初期状態でなければ、ステップＳ２７において、保存符頭ＩＤと矩形を使用して符頭データを作成する。ステップＳ２８において、ｒｅｃｔＭｒｇの各座標にデフォルト値を入れ、保存符頭ＩＤの初期化も行う。Ｓ２５からＳ２８までの一連の処理はｒｅｃｔＭｒｇの座標が初期状態でない場合のみ行う（Ｓ２４参照）。この処理が済んだ後、或いはＳ２５において、その値が越えていないと判断された場合に、ステップＳ２９において、符尾候補の縦線の周辺をある幅ｄｗで走査する。ステップＳ３０において座標（ｘ、ｙ）にビットｂｉｔＤｒｍが存在するか否かが判断され、存在しなければ、後述するステップＳ４８に飛んで、ｘ方向の走査のループを終了する。Ｓ３０において、同ビットが存在すれば、ステップＳ３１においてこれに塗装関数をかけて、第２ラベル（矩形）を検出する（ｒｅｃｔＣｕｒ）。ステップＳ３２において、見つかった第２ラベル矩形がラベル結合の上記最大サイズ（ｄｘｔ）より大きいかが判断され、大きいと判断された場合は、ステップＳ３３において後述するタイ消去処理を行う。ステップＳ３４において、該タイ消去処理が成功したか否かが判断され、失敗した場合はステップＳ４２に飛び、ｒｅｃｔＣｕｒの最下ｙ座標をｙＢｅｆとする。Ｓ３４においてタイ消去処理が成功したと判断された場合、及び、Ｓ３２において、見つかった第２ラベル矩形が上記ｄｘｔより小さいと判断された場合は、ステップＳ３５において、第２ラベルがマッチングに十分な程の大きさか否かが判断され、小さい場合は、後述するステップＳ４８に飛んで、ｘ方向の走査のループを終了する。Ｓ３５において、十分な大きさであると判断されると、以後ステップＳ３６で、まず第２ラベル（ｒｅｃｔＣｕｒ）だけで一度マッチングが行われる。ステップＳ３７において、ＩＤの優先度が最大か否かが判断され、最大であると判断された場合は、ステップＳ４２に飛び、ｒｅｃｔＣｕｒの最下ｙ座標をｙＢｅｆとすると共に、ステップＳ４６において符頭データを作成する。Ｓ３７において優先度が最大でないと判断された場合は、ステップＳ３８において、結合されるラベルｒｅｃｔＭｒｇの座標がデフォルト値と一致するか否かが判断され、一致しない場合はステップＳ３９において、第１のラベルと第２のラベルの結合処理が行われ、一致する場合はステップＳ４０において結合処理が行われず、そのままの形がマージ矩形（ｒｅｃｔＭｒｇ）とされる。ステップＳ４１において、上記ｒｅｃｔＭｒｇの最下ｙ座標を上記ｙＢｅｆとする。次にステップＳ４３において、ｒｅｃｔＭｒｇがマッチングに十分な大きさか否かが判断され、十分でないと判断された場合は、後述するステップＳ４８に飛んで、ｘ方向の走査のループを終了する。Ｓ４３においてその大きさが十分な大きさであると判断されると、ステップＳ４４において、ｒｅｃｔＭｒｇの辞書とのマッチングが行われ、ステップＳ４５において、ＩＤの優先度が最大か否かが判断され、最大であると判断された場合は、ステップＳ４６に飛び、保存符頭ＩＤ及び矩形を用いて符頭データを作成し、その優先度が最大でなければ、ステップＳ４８に飛んで、ｘ方向の走査のループを終了する。上記ステップＳ４６の後に、ステップＳ４７において、ｒｅｃｔＭｒｇ各座標にデフォルト値を入れる処理（ラベル結合終了）を行うと共に、保存符頭ＩＤの初期化を行う。Ｓ４５で、優先度が最大でないと判断された場合、及びＳ４７でラベル結合終了処理がなされた場合は、ステップＳ４８で、ｘ方向の走査のループを終了する。更にステップＳ４９において、ｙ方向の走査のループを終了する。その後ステップＳ５０において、残った保存符頭ＩＤが初期状態か否かが判断され、初期状態であれば、処理を終了する。初期状態でなければ、ステップＳ５１において、符頭データを作成する。
【００４３】
図２３は、図２０のステップＳ３６及びステップＳ４４における矩形マッチング処理のフローを示している。ステップＳ５２において、辞書とのマッチングが行われ、その処理結果をＩＤに入れる。ステップＳ５３において、マッチングが成功したか否かが判断され、失敗（ＩＤ＿ＭＡＴＣＨＩＮＧＮＯＮＥ）と判断された場合は、処理を終了する。Ｓ５３で、マッチングの失敗がなかったと判断されると、ステップＳ５４において、マッチング結果がリジェクトラベルか否かが判断され、リジェクトラベルと判断された場合は、処理を終了する。Ｓ５４で、リジェクトラベルでないと判断されると、ステップＳ５５において、マッチング結果が結合符頭であるか否かが判断され、結合符頭と判断された場合は、ステップＳ５６において、符頭ＩＤ及び矩形の保存が行われる。他方Ｓ５５で、結合符頭でないと判断された場合は、ステップＳ５７で、マッチング結果がトレモロ記号であるか否かが判断され、トレモロ記号と判断された場合は、ステップＳ５８において、トレモロ太部分の消去処理がなされる。他方Ｓ５７で、トレモロ記号でないと判断された場合は、ステップＳ５９で、符頭ＩＤ及び矩形の保存がなされる。Ｓ５６、Ｓ５８及びＳ５９の処理を終了した後は、全体の処理を終了する。
【００４４】
（３）  タイ消去処理
前述のようにラベルの横幅が符頭よりも広い場合は、符頭にタイが連結していると考えられ、ラベルを分離できないので、図２０のステップＳ３２以下で行われるタイ消去処理を行うことになる。図２４に示すように、矩形の左右端から逆方向に向かって縦に走査し、見つかったランが１つであり、ラン長が或るしきい値ｄｙｔ２以下であるｘ幅が或るしきい値ｄｘｔ２以上である場合、これは、符頭であると判断できる。その場合ラン長が或る長さｄｖｔ２より長くなる（符頭と接触するタイの部分はランの長さがｄｙｔ２より長くなる）か、第２以降のラン（ランを走査していくうちに縦方向に別に見つかるラン）と接触する位置までをタイとして、その部分までを消去する。
【００４５】
（４）  結合符頭処理
ドラム譜に符頭の接触した和音は少なく、また黒玉同士或いは黒玉とそれ以外の符頭の接触は問題ないが、通常のドラムセット以外の楽器を同一五線上に表記している場合は、前記図３に示すように、（×）同士が接触した和音が存在する場合がある。このような場合、辞書とのマッチング前に、夫々の符頭を分離して認識矩形を設定するのは困難である。そのため、符頭同士が上下に接触した結合符頭自体を辞書に登録しておき、この辞書と該結合符頭とがマッチングした場合（図２３ステップＳ５５参照）には、符頭データに連結した符頭の数分だけデータを追加する（同図ステップＳ５６参照）。このようなラベルは縦方向に長い形をしているので、ラベルの縦幅により、辞書の対象ＩＤを変化させて、誤認識の率を下げることもできる。またマッチング自体に、サイズによる特徴量を追加することも有効である。
【００４６】
（５）  トレモロ記号処理
これまで説明してきた手順に従い、符尾候補の周辺のラベルを結合しながら辞書とマッチングしていくことで、図４に示すようなトレモロ記号を認識することもできる。特にドラム譜の場合トレモロ記号は比較的多い。トレモロ記号は連鉤と略同じ太さ、間隔も略同じなので、対策を行わないと、連鉤と同様に旗の計数を行なってしまい、３２分音符などの音長の短い音符と誤認してしまう。従って、図５に示すような形でトレモロ記号を辞書に登録しておく。但し、本構成では、記号張り付けインターフェースはトレモロ記号に対応していないので、これとマッチングした場合（図２３ステップＳ５７参照）には、太部分の消去処理を行い（同図ステップＳ５８参照）、連鉤検出時の旗計数失敗の対策とする。
【００４７】
（６）  符頭符尾結合処理
本構成では、通常楽譜の認識時に行われていると同様に符頭の認識後、該符頭と符尾の結合処理を行なっているが、ドラム譜の場合、この結合処理にも特別な処理が必用になる。
▲１▼  符頭と符尾の位置関係
その一つは、黒玉以外の符頭の場合、図２に示すように、符頭の中心に符尾が付く場合があることである。また符尾の両側に符頭が付くことは少ない。このような場合は、上向き符尾又は下向き符尾の先頭の符頭を結合した後、中間の符頭の結合を行なう。その場合の本構成として、黒玉、白玉以外の場合、楕円の中心と符尾のｘ座標の位置関係により、符頭の左右の符尾結合フラグのどちらかをチェックし、符尾の先頭の符頭については、このｘ方向の位置関係によって、結合の不可を判定しているが、ドラム符頭の場合（黒玉以外）、先頭の符頭結合時、符尾の縦方向の中心より上か下かによって、左右のどちらをチェックするかを決める。即ち、中点より下なら、ｘ方向の位置関係に拘わらず、符頭の右側をチェックする。符尾の中間の符頭は、符尾が上向きか下向きかによってチェック方向を決める。このように、符頭結合フラグが用いられているのは、フラグがチェックされた側への符尾候補の結合を不可とすることによって、符尾の重複結合を回避するためである。
▲２▼  符尾を分断する符頭
ドラム譜の場合に、特有な結合処理を行なわなければならないもう一つの理由は、図９（ａ）（ｂ）に示すような符尾を分断する符頭が存在することである。符尾を分断する符頭は、同図に示されるように、先頭の玉が黒玉であり、分断する符頭が１つ存在するというパターンが殆どである。そこで本構成では、まず黒玉を対象とせず、図１０（ａ）に示すように、符尾を分断する符頭とその上下の符尾候補との結合を行う。そうすると、同図（ｂ）のような該符頭を共有する符尾逆向きのドラム音符が認識できる。この後、符尾連結処理を行う。但し、この場合、連結前の状態の符尾長が短くなるので、符頭と結合する符尾の長さの最短しきい値を小さくしておく必要がある。また符尾連結処理前に、図１０（ｂ）の右側の符尾が下向きの音符を削除し、同図（ｃ）のように上下の符尾を結合したものに符尾候補を変更する（図右側）。それから黒玉も対象とした符頭符尾連結を行うと、上記処理で結合した符尾候補と黒玉が連結される。
▲３▼  ○符頭とハイハットオープン
ドラム譜の場合に、特有な結合処理を行なわなければならない更に別の理由は、○符頭を認識するために、ハイハットオープンの（  °）が符尾の近くに存在した場合、符頭と誤認する可能性があることである。この対策のため、本構成では、○符頭は、予め左右の符尾結合フラグのうち、左側をチェックしておく。こうすることで、○符頭に下向き符尾が付かなくなる。但し、図２５に示されるように、１つのイメージ中でパート毎に認識矩形が設定される（図中波線で示す）が、段落が接近していると、次段落の記号が認識矩形に入ってしまうことがある。このように次段落のハイハットオープンが認識矩形に入り込んでくる危険性や、第１線より下のペダルハイハットにハイハットオープンの（  °）が使われる可能性を考えて、第１線より下の○符頭は左側ではなく、右側のフラグをチェックするようにしても良い。
▲４▼  ハイハットクローズ・連符数字の誤認対策
また図１１に示されるハイハットクローズの（＋）の記号や連符数字が符頭と誤認されてしまい、これを符尾先頭の符頭として結合すると、符尾向きが逆の全く異なる音符として認識されてしまうことになる。その対策としてこれらの記号や連符数字をリジェクトラベルとして辞書に登録しても良いが、ドラム譜の符尾向きは通常楽譜と異なり、ある程度限定できることを利用して、本構成では、符尾上端が第５線より上且つ符尾下端が第１線より上の場合に、符尾は上向き［ハイハットオープン（  °）の誤認対策としても有効である］、符尾下端が第１線より下且つ符尾上端が第５線より下の場合に、符尾は下向きと判断して、先頭符頭と該符尾候補とを結合させることとした。
しかし、符尾を分断する符頭の上述した認識処理及びこれらの符尾符頭の結合処理がなされた場合に、上記の符尾向きを判断する構成を実施すると、図１２に示される共有符頭に下向き符尾が連結した構成の認識が不可となる（符尾上端が第５線より上且つ符尾下端が第１線より上の場合は、上向き符尾と判断されるため）。そのため本構成では符尾を分断する符頭のための上記処理を行なった後、符尾向きの正規化を行なうことにした。即ち、符尾を分断する符頭を有する音符を含むドラム音符の認識時に、これらのドラム音符の先頭符頭と符尾候補の結合処理を行い、符尾を分断する符頭を有するドラム音符については、該符頭を共有する符尾逆向きのドラム音符を認識した上で、符尾が下向きの音符を削除して、上下の符尾を結合したものを符尾候補として残りの先頭符頭と結合させると共に、他のドラム音符については、符尾上端が第５線より上且つ符尾下端が第１線より上の場合に、符尾は上向き、符尾下端が第１線より下且つ符尾上端が第５線より下の場合に、符尾は下向きと判断して、該符尾候補と残りの符頭と結合させ、これらの条件に合わないものは、元の符尾候補に戻した後（符尾向きの正規化処理）、該符尾候補と残りの符頭とを結合させることとしている。
▲５▼  符尾上の太部分の割合による誤認識の削減
通常楽譜でも、符尾候補上の太部分の割合が高い場合、符尾の誤認であるとして、符頭結合の対象外としていた。ドラム譜の場合には、黒玉の和音が少ないので、このしきい値を下げ、誤認識の確率を下げることができる。特にドラム譜の場合、符頭のラベルを分割しマッチングしているので、実際には音符ではない記号上に検出された縦線の周辺のラベルを分割・結合しながらマッチングするうちに、符頭として誤認してしまう可能性がある。そのため上記処理が有効となる。但し符尾を分割する符頭を処理する際、短い符尾候補が存在するので、注意が必要である。これを解決するためには、一旦図１０（ｂ）の右側の符尾が下向きの音符を削除し、同図（ｃ）のように上下の符尾を結合したものに符尾候補を変更し（図右側）、それから黒玉も対象とした符頭符尾連結を行った後、符尾上の太部分の割合を検出し、しきい値より高い場合、その音符を削除するようにすれば良い。
更に音符の誤認の場合、連鉤まで誤認する可能性は低いこと、連鉤の存在する音符の太部分の割合が比較的高いことを考慮して、連鉤のないもののみに、太部分の割合によるチェックを行ったり、連鉤のないものの太部分の割合チェックのしきい値を、連鉤のあるものより厳しくしたりすることも有効である。
【００４８】
以上の本実施形態構成では、ドラム譜において、通常楽譜同様に、五線の線などを消去して行う太細分離処理及び黒玉部分の認識のための楕円検出処理により、通常の楽譜と同じ黒玉の検出を行う。また該黒玉及び出現確率の低い白玉（認識を行わない）以外のドラム譜の符頭は（×、◇）等、細線で描かれており、この他にも色々なタイプが存在しているが、これらを黒玉検出と同じように太細分離処理及び楕円検出処理で検出することはできないため、符尾を消去した上で符頭ラベルを分離し、符尾候補を走査して符尾候補周辺にある検出されたラベルを辞書とマッチングすることにより行う。但し符尾消去により符頭が複数のラベルに分断されてしまうことがあるので、マッチングが失敗した場合、更に、符尾候補の走査を続けて次に検出された符頭ラベルと前記分離ラベルとの結合処理を行った後、辞書とのマッチングを再度行う。この他、ドラム譜の認識及び結合処理においては、特有なものが存在するので、これまで説明したように、夫々に特有な処理を行っている。
【００４９】
【発明の効果】
以上詳述した本発明の構成によれば、通常楽譜とは異なるドラム譜におけるドラム音符の認識を可能にし、演奏及び／又は表示可能なデータ形式に変換することができるようになる。特にドラム譜の符頭認識に当たっては、符尾を消去した上で符頭ラベルを分離し、符尾候補を走査して符尾候補周辺にある検出されたラベルを辞書とマッチングすることにより行っており、また符尾消去により符頭が複数のラベルに分断されてしまうことがあるので、マッチングが失敗した場合、更に、符尾候補の走査を続けて次に検出された符頭ラベルと前記分離ラベルとの結合処理を行った後、辞書とのマッチングを再度行うことで、ドラム音符の正確な認識が可能となる。
【図面の簡単な説明】
【図１】ドラム音符の符頭ラベル分離処理の状態を示す説明図である。
【図２】符尾消去処理により符頭が複数に分割された状態を示す説明図である。
【図３】符頭が上下に接触した状態の音符を含む楽譜例を示す説明図である。
【図４】トレモロ記号を含む楽譜例を示す説明図である。
【図５】トレモロ記号辞書用画像例を示す説明図である。
【図６】符頭と符尾の結合の場合の位置関係判定方法を示す説明図である。
【図７】ドラム譜の符頭と符尾の結合状態を示す説明図である。
【図８】符頭と符尾の結合の際にフラグのチェック状態を示す説明図である。
【図９】符頭により符尾が分断された例を示す説明図である。
【図１０】符尾を分断する符頭の音符認識処理の例を示す説明図である。
【図１１】ハイハットクローズ及び連符数字の記号をを含む楽譜例を示す説明図である。
【図１２】共有符頭に下向き符尾が連結した構成の例を示す説明図である。
【図１３】本発明に係る楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体を外部記憶装置で読み込ませて稼動する楽譜認識装置の実施形態構成を示すブロック図である。
【図１４】ＣＰＵのメイン処理を示すフローチャートである。
【図１５】認識対象符頭を示す説明図である。
【図１６】１つの符頭種類に統合されるべき符頭が五線と交差した場合の例を示す説明図である。
【図１７】同じく１つの符頭種類に統合されるべき符頭が符尾と交差した場合の例を示す説明図である。
【図１８】上記交差の場合に認識対象となるラベルの態様を示す説明図である。
【図１９】ラベル結合処理を含むマッチング処理の詳細を示すフローチャートである。
【図２０】同じくラベル結合処理を含むマッチング処理の詳細を示すフローチャートである。
【図２１】同じくラベル結合処理を含むマッチング処理の詳細を示すフローチャートである。
【図２２】ラベル結合処理を含むマッチング処理の実際の例を示す説明図である。
【図２３】矩形マッチング処理の流れを示すフローチャートである。
【図２４】タイと接触した符頭ラベルにおけるタイ認識処理を示す説明図である。
【図２５】次段落のハイハットオープンが認識矩形に入り込んできた状態を示す説明図である。
【図２６】楽譜上の段落の説明図である。
【図２７】認識対象たる音符の黒玉・白玉の符頭、符尾及び旗を示す説明図である。
【符号の説明】
１      ＣＰＵ
２      ＲＯＭ
３      ＲＡＭ
４      ハードディスク装置
５      フレキシブルディスクドライブ
６      ＣＲＴ
７      ＣＲＴインターフェース回路
８      キーボード
９      キーボードインターフェース回路
１０      プリンタ
１１      プリンタインターフェース回路
１２      スキャナ
１３      スキャナインターフェース回路
１４      ＭＩＤＩインターフェース回路
１５      バス
【図１】
0003597354.tif 000002
【図２】
0003597354.tif 000003
【図３】
0003597354.tif 000004
【図４】
0003597354.tif 000005
【図５】
0003597354.tif 000006
【図６】
0003597354.tif 000007
【図７】
0003597354.tif 000008
【図８】
0003597354.tif 000009
【図９】
0003597354.tif 000010
【図１０】
0003597354.tif 000011
【図１１】
0003597354.tif 000012
【図１２】
0003597354.tif 000013
【図１３】
0003597354.tif 000014
【図１４】
0003597354.tif 000015
【図１５】
0003597354.tif 000016
【図１６】
0003597354.tif 000017
【図１７】
0003597354.tif 000018
【図１８】
0003597354.tif 000019
【図１９】
0003597354.tif 000020
【図２０】
0003597354.tif 000021
【図２１】
0003597354.tif 000022
【図２２】
0003597354.tif 000023
【図２３】
0003597354.tif 000024
【図２４】
0003597354.tif 000025
【図２５】
0003597354.tif 000026
【図２６】
0003597354.tif 000027
【図２７】
0003597354.tif 000028