JP6444041B2 - Handwritten music symbol recognition apparatus and handwritten music symbol recognition program - Google Patents
Handwritten music symbol recognition apparatus and handwritten music symbol recognition program Download PDFInfo
- Publication number
- JP6444041B2 JP6444041B2 JP2014070018A JP2014070018A JP6444041B2 JP 6444041 B2 JP6444041 B2 JP 6444041B2 JP 2014070018 A JP2014070018 A JP 2014070018A JP 2014070018 A JP2014070018 A JP 2014070018A JP 6444041 B2 JP6444041 B2 JP 6444041B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- vectors
- information
- stroke
- input means
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/30—Character recognition based on the type of data
- G06V30/304—Music notations
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Character Discrimination (AREA)
Description
本発明は手書き音楽記号認識装置及び手書き音楽記号認識プログラムに関し、特に、タブレット端末(タッチ対応PC含む)などで、手書き(ペン使用含む)で楽譜を作成する場合に、手書きした記号を認識するために用いて好適な技術に関する。 The present invention relates to a handwritten music symbol recognition apparatus and a handwritten music symbol recognition program, and in particular, for recognizing handwritten symbols when a score is created by handwriting (including using a pen) on a tablet terminal (including a touch-compatible PC). The present invention relates to a technique suitable for use.
手書きに対応したタブレット端末は、指が画面に触れてから離れるまで、指の移動がある度にその位置情報を取得するAPIを備えている。一連の位置情報の変化を複数のベクトルとして記憶し、そのベクトルから指の動きの特徴を抽出し、描かれた記号を認識する。 A tablet terminal that supports handwriting is equipped with an API that acquires position information whenever a finger moves until the finger touches the screen and then leaves. A series of changes in position information is stored as a plurality of vectors, the features of finger movement are extracted from the vectors, and the drawn symbols are recognized.
実際のAPI動作は、指が画面に触れてから離れるまで、微小な位置情報の変化を数多く取得する。したがって小さなベクトルが数多く生成される。
そのままでは指の動きの特徴が掴みにくい上、演算量が多くなってしまう。
The actual API operation acquires many minute changes in position information until the finger touches the screen and then leaves. Therefore, many small vectors are generated.
If it is as it is, it is difficult to grasp the characteristics of finger movement and the amount of calculation increases.
このような問題点を解決するために、特許文献1において、入力された座標データから直線成分を抽出する直線成分抽出方法が提案されている。 In order to solve such a problem, Patent Document 1 proposes a linear component extraction method for extracting a linear component from input coordinate data.
特許文献1で提案された技術は、入力された複数の座標データが所定の直線化範囲内にあれば、始点座標と終点座標を結ぶ直線データとする技術である。順次直線成分の確認を行いながら、入力された座標データが直線化範囲外であると判断された場合に、該座標データの前のデータと始点データとを直線成分として抽出し記憶する。このため、入力された記号の全体を認識するために必要な演算量が多くなってしまう問題点があった。
本発明は前述の問題点に鑑み、手書き入力されることにより多くのベクトルが生成された記号を認識する際にデータを圧縮して必要な演算量を削減できるようにすることを目的とする。
The technique proposed in Patent Document 1 is a technique for making straight line data connecting start point coordinates and end point coordinates if a plurality of input coordinate data are within a predetermined linearization range. When it is determined that the input coordinate data is out of the linearization range while sequentially checking the linear component, the data before the coordinate data and the start point data are extracted and stored as the linear component. For this reason, there has been a problem that the amount of calculation required for recognizing the entire input symbol increases.
In view of the above-described problems, an object of the present invention is to reduce the amount of calculation required by compressing data when recognizing a symbol in which many vectors are generated by handwriting input.
本発明の手書き音楽記号認識装置は、入力手段が画面に触れてから離れるまで、前記入力手段が移動するごとにその位置情報を取得するタッチ情報取得手段と、前記タッチ情報取得手段から得た位置情報から前記入力手段の移動を示すベクトル情報を作成し、前記入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶するストローク情報記憶手段と、一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶するオブジェクト情報記憶手段と、前記ベクトル情報から、そのストロークの特徴量を算出するストローク特徴量算出手段と、前記複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮するデータ圧縮手段とを有し、前記まとめ処理とは、最初のベクトルの始点と最終ベクトルの終点を結ぶ直線を求め、ベクトルの終点から前記求めた直線までの距離が規定値以内であれば、複数のベクトルをまとめて1つのベクトルを生成する処理であることを特徴とする。
また、本発明の手書き音楽記号認識装置は、入力手段が画面に触れてから離れるまで、前記入力手段が移動するごとにその位置情報を取得するタッチ情報取得手段と、前記タッチ情報取得手段から得た位置情報から前記入力手段の移動を示すベクトル情報を作成し、前記入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶するストローク情報記憶手段と、一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶するオブジェクト情報記憶手段と、前記ベクトル情報から、そのストロークの特徴量を算出するストローク特徴量算出手段と、前記複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮するデータ圧縮手段とを有し、前記まとめ処理とは、ベクトルを方向別に分類するときに、互いに隣り合うベクトルか否かを判断し、互いに隣り合うベクトルの場合、それらの閾値となる角度の上限角度と下限角度を算出し、共に上限角度と下限角度の範囲内である場合は、それらのベクトルまとめて1つのベクトルを生成する処理であることを特徴とする。
本発明の手書き音楽記号認識プログラムは、入力手段が画面に触れてから離れるまで、前記入力手段が移動するごとにその位置情報を取得するタッチ情報取得処理と、前記タッチ情報取得処理から得た位置情報から前記入力手段の移動を示すベクトル情報を作成し、前記入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶するストローク情報記憶処理と、一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶するオブジェクト情報記憶処理と、前記ベクトル情報から、そのストロークの特徴量を算出するストローク特徴量算出処理と、前記複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮するデータ圧縮処理とをコンピュータに実行させる手書き音楽記号認識プログラムであって、前記まとめ処理とは、最初のベクトルの始点と最終ベクトルの終点を結ぶ直線を求め、ベクトルの終点から前記求めた直線までの距離が規定値以内であれば、複数のベクトルをまとめて1つのベクトルを生成する処理であることを特徴とする。
また、本発明の手書き音楽記号認識プログラムは、入力手段が画面に触れてから離れるまで、前記入力手段が移動するごとにその位置情報を取得するタッチ情報取得処理と、前記タッチ情報取得処理から得た位置情報から前記入力手段の移動を示すベクトル情報を作成し、前記入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶するストローク情報記憶処理と、一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶するオブジェクト情報記憶処理と、前記ベクトル情報から、そのストロークの特徴量を算出するストローク特徴量算出処理と、前記複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮するデータ圧縮処理とをコンピュータに実行させる手書き音楽記号認識プログラムであって、前記まとめ処理とは、ベクトルを方向別に分類するときに、互いに隣り合うベクトルか否かを判断し、互いに隣り合うベクトルの場合、それらの閾値となる角度の上限角度と下限角度を算出し、共に上限角度と下限角度の範囲内である場合は、それらのベクトルまとめて1つのベクトルを生成する処理であることを特徴とする。
The handwritten music symbol recognition apparatus according to the present invention includes a touch information acquisition unit that acquires position information every time the input unit moves until the input unit touches the screen and leaves, and a position obtained from the touch information acquisition unit. Stroke information storage means for creating vector information indicating movement of the input means from the information, storing a series of vectors from when the input means touches the screen until it completely leaves as one stroke information, and a series of 1 to 1 Includes object information storage means for storing one or more stroke information in which a plurality of vector information is stored, stroke feature quantity calculation means for calculating a feature quantity of the stroke from the vector information, and a plurality of vector information. Among them, data compression means for compressing the number of vectors by performing a collective process to convert a predetermined number of vectors into one vector It has a, and the summarizing processing obtains a straight line connecting the end point of the start point and the final vector of the first vector, as long as the distance to the straight line obtained from said end point of the vector is within the prescribed value, combine multiple vectors This is a process for generating one vector .
In addition, the handwritten music symbol recognition apparatus of the present invention is obtained from the touch information acquisition unit that acquires the position information every time the input unit moves until the input unit touches the screen and then leaves. Stroke information storage means for creating vector information indicating movement of the input means from the obtained position information, and storing a series of vectors as one stroke information from when the input means touches the screen until it completely leaves; Object information storage means for storing one or more stroke information in which one or more vector information is stored; stroke feature quantity calculation means for calculating a feature quantity of the stroke from the vector information; Data pressure that compresses the number of vectors by combining the number of vectors into one vector. Means for determining whether the vectors are adjacent to each other when the vectors are classified by direction, and in the case of vectors adjacent to each other, an upper limit angle and a lower limit of angles serving as threshold values thereof are determined. When the angle is calculated and both are within the range of the upper limit angle and the lower limit angle, these vectors are combined to generate one vector.
The handwritten music symbol recognition program according to the present invention includes a touch information acquisition process for acquiring position information every time the input unit moves until the input unit touches the screen and then leaves, and a position obtained from the touch information acquisition process. Stroke information storage processing for creating vector information indicating movement of the input means from the information, storing a series of vectors from when the input means touches the screen until it completely leaves as one stroke information; Is an object information storage process for storing one or more stroke information in which a plurality of vector information is stored, a stroke feature quantity calculation process for calculating a feature quantity of the stroke from the vector information, and a plurality of vector information. Among them, the data pressure that compresses the number of vectors by performing a batch process to convert a predetermined number of vectors into one vector A handwritten music symbol recognition program for executing a processing on a computer, and the summarizing processing obtains a straight line connecting the end point of the start point and the final vector of the first vector, the distance to the straight line obtained from said end point of the vector If it is within a prescribed value, it is a process for generating a single vector by combining a plurality of vectors .
Further, the handwritten music symbol recognition program of the present invention is obtained from the touch information acquisition process for acquiring the position information every time the input unit moves until the input unit touches the screen and then leaves, and the touch information acquisition process. Stroke information storage processing for creating a vector information indicating the movement of the input means from the obtained position information, and storing a series of vectors as one stroke information from when the input means touches the screen until it completely leaves; Object information storage processing for storing one or more stroke information in which one or more vector information is stored; stroke feature amount calculation processing for calculating a feature amount of the stroke from the vector information; Among the vectors, a predetermined number of vectors are combined into one vector, and the number of vectors is compressed. In the case of vectors adjacent to each other, it is determined whether the vectors are adjacent to each other when the vectors are classified by direction. The upper limit angle and the lower limit angle of the threshold angle are calculated, and when both are within the upper limit angle and the lower limit angle, the vectors are combined to generate one vector. .
本発明によれば、手書き入力されることにより多くのベクトルが生成された記号を認識する際に必要な演算量を削減することができる。 ADVANTAGE OF THE INVENTION According to this invention, the amount of calculations required when recognizing the symbol by which many vectors were produced | generated by handwriting input can be reduced.
まず、図面を参照しながら本発明の実施形態に係る手書き音楽記号認識装置におけるデータ圧縮方法の実施形態を説明する。 First, an embodiment of a data compression method in a handwritten music symbol recognition apparatus according to an embodiment of the present invention will be described with reference to the drawings.
以下、図面を参照しながら本発明の手書き音楽記号認識装置を説明する。
図1は、手書き音楽記号認識装置10の概略構成を示すブロック図であり、手書き音楽記号認識装置10はタブレット端末(タッチ対応PCを含む)により構成されている。
The handwritten music symbol recognition apparatus of the present invention will be described below with reference to the drawings.
FIG. 1 is a block diagram illustrating a schematic configuration of a handwritten music
図1において、11はバス、12はROM、13はRAM、14はCPU、15はフラッシュメモリ、16はネットワークインターフェイス、17はタッチディスプレイ、18はオーディオ出力装置、19はMIDI出力装置である。 In FIG. 1, 11 is a bus, 12 is ROM, 13 is RAM, 14 is CPU, 15 is flash memory, 16 is a network interface, 17 is a touch display, 18 is an audio output device, and 19 is a MIDI output device.
手書き音楽記号認識装置10の全体動作を制御するプログラムはフラッシュメモリ15に記憶されており、これを読み出してRAM13に展開し、CPU14が実行することにより動作する。
タッチ情報取得手段は、タッチディスプレイ17、RAM13、CPU14、フラッシュメモリ15などにより構成され、指やタッチペンなどの入力手段が画面に触れてから離れるまで、前記入力手段が移動するごとにその位置情報を取得する。
A program for controlling the overall operation of the handwritten music
The touch information acquisition means includes the
ストローク情報記憶手段、オブジェクト情報記憶手段は、RAM13で構成される。ストローク情報記憶手段は、入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶する。
オブジェクト情報記憶手段は、一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶する。
ストローク特徴量算出手段、ストローク認識手段、オブジェクト認識手段は、RAM13、CPU14、フラッシュメモリ15、で構成される。ストローク特徴量算出手段は、入力手段の移動を示すベクトル情報から、そのストロークの特徴量を算出する。
The stroke information storage means and the object information storage means are constituted by the
The object information storage means stores one or more stroke information in which a series of one or more vector information is stored.
The stroke feature amount calculating means, stroke recognizing means, and object recognizing means are composed of a
ネットワークインターフェイス16は、認識した音楽記号情報をファイルとして他のハードウェアに保存、または保存済の音楽記号情報ファイルを読み込むためのものである。
オーディオ出力装置18は、認識した音楽記号から音楽演奏情報を作成し、音響出力できるようにするために設けられている。
MIDI出力装置19は、認識した音楽記号からMIDI情報を作成し、MIDI出力できるようにするために設けられている。
The
The
The
本実施形態のベクトルIDのつけ方を説明する。
本実施形態においては、処理を簡略化するために、ベクトルを9つの種類に分類する。
図2に示すように、ベクトルの始点(x1,y1)、終点(x2,y2)から傾きaを式(1)より求める。
そして、x1,y1,x2,y2の位置関係を考慮してベクトルIDを決める。y軸は下側が「+」である。
A method of assigning a vector ID according to this embodiment will be described.
In the present embodiment, the vectors are classified into nine types in order to simplify the processing.
As shown in FIG. 2, the slope a is obtained from the starting point (x1, y1) and the ending point (x2, y2) of the vector using the equation (1).
Then, the vector ID is determined in consideration of the positional relationship of x1, y1, x2, and y2. The lower side of the y-axis is “+”.
|a|>2
y2<y1:下→上
y2>y1:下→上
−2≦a<−0.5
x2<x1:左下→右上
x2>x1:右上→左下
|a|≦0.5
x2>x1:左→右
x2<x1:右→左
0.5<a≦2
x2>x1:左上→右下
x2<x1:右下→左上
x1=x2
y2<y1:下→上
y2>y1:下→上
x1=x2 かつ y1=y2
点
となる。
| a |> 2
y2 <y1: Lower → Up y2> y1: Lower → Up-2 ≦ a <−0.5
x2 <x1: lower left → upper right x2> x1: upper right → lower left
| a | ≦ 0.5
x2> x1: Left → Right x2 <x1: Right → Left 0.5 <a ≦ 2
x2> x1: upper left → lower right x2 <x1: lower right → upper left x1 = x2
y2 <y1: Bottom → Up y2> y1: Bottom → Up x1 = x2 and y1 = y2
It becomes a point.
<各特徴量の説明>
(始点終点距離)
この距離が規定値よりも小さい場合は、円のように閉じた図形と考えられ、大きい場合は弧線のように閉じていない図形と考えられる。
先頭ベクトルの始点座標を(x1,y1)、最終ベクトルの終点座標を(x2,y2)とすると、始点終点距離Dseは、次の式(2)で求める。
<Description of each feature>
(Start point end point distance)
When this distance is smaller than the specified value, it is considered as a closed figure like a circle, and when it is larger, it is considered as a figure not closed like an arc line.
If the start point coordinates of the first vector are (x1, y1) and the end point coordinates of the final vector are (x2, y2), the start point / end point distance D se is obtained by the following equation (2).
(接続タイプ)
記号が滑らかどうか、角はあるかどうか、などを判断するために用いる。
当該ベクトルのIDと次のベクトルのIDから決める。本実施形態においては、鈍角か、直角か、鋭角かに分けられる。
(Connection type)
It is used to judge whether the symbol is smooth or has corners.
It is determined from the ID of the vector and the ID of the next vector. In this embodiment, it is divided into an obtuse angle, a right angle, or an acute angle.
(回転方向)
回転方向が変わった点は、記号を特定する手がかりとして重要である。
例えば、「f」の1画目は、「S」のように滑らかにベクトルが連続しており、始点と終点が離れているが、「S」には回転方向が変わる点が1か所あるので、区別することができる。これも、当該ベクトルのIDと、次のベクトルのIDより決定する。
(Direction of rotation)
The point where the rotation direction has changed is important as a clue for identifying the symbol.
For example, in the first stroke of “f”, vectors are smoothly continuous like “S”, the start point and the end point are separated, but “S” has one point where the rotation direction changes. So you can distinguish. This is also determined from the ID of the vector and the ID of the next vector.
(回転角度)
図3に、当該ベクトルから次のベクトルへの回転角度の変化例を示す。この累計で、記号が円であるか多重円であるかを判別できる。
当該ベクトルの始点を(x11,y11)、終点を(x12,y12)とし、次のベクトルの始点を(x21,y21)、終点を(x22,y22)とすると、2つのベクトルのなす角Deg(°)は、以下の式で求まる。
(rotation angle)
FIG. 3 shows a change example of the rotation angle from the vector to the next vector. From this total, it can be determined whether the symbol is a circle or a multiple circle.
If the start point of the vector is (x11, y11), the end point is (x12, y12), the start point of the next vector is (x21, y21), and the end point is (x22, y22), the angle Deg ( °) is obtained by the following formula.
(左右移動方向及び上下移動方向)
単純に上から下、左から右に描かれた線分のような記号かどうかを判定する。
ベクトルIDより求める。ベクトルIDが下→上であれば、左右移動方向はなし、上下移動方向は上である。また、ベクトルIDが右下→左上であれば、左右移動方向は左、上下移動方向は上となる。
(Left / Right direction and Up / Down direction)
It is determined whether the symbol is simply a line segment drawn from top to bottom or from left to right.
Obtained from the vector ID. If the vector ID is down → up, there is no left / right movement direction, and the up / down movement direction is up. If the vector ID is lower right → upper left, the left / right moving direction is left and the up / down moving direction is up.
本発明の手書き音楽記号認識装置におけるデータ圧縮方法は、複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮する。
以下、本発明の手書き音楽記号認識装置におけるデータ圧縮方法について、図面を参照しながら詳細に説明する。
The data compression method in the handwritten music symbol recognition apparatus of the present invention compresses the number of vectors by performing a collective process of converting a predetermined number of vectors into one vector among a plurality of vectors.
Hereinafter, a data compression method in the handwritten music symbol recognition apparatus of the present invention will be described in detail with reference to the drawings.
(第1の実施形態)
本実施形態においては、微小ベクトルをまとめてある程度の大きさのベクトルに変換するベクトル変換処理について説明する。
図4(a)に示す10の微小なベクトルa1〜a10をまとめて、図4(b)に示すように、ある程度の大きさの2つのベクトルb1、b2に変換する例を説明する。
ストロークデータには、
・APIから取得した位置情報から生成したベクトルデータを記憶する、ベクトル配列1と、
・変換対象となる微小ベクトルを記憶する、ベクトル配列2と、
・変換されたベクトルを記憶する、ベクトル配列3をもつ。
(First embodiment)
In the present embodiment, a vector conversion process for collectively converting minute vectors into a vector having a certain size will be described.
An example will be described in which ten minute vectors a1 to a10 shown in FIG. 4A are collectively converted into two vectors b1 and b2 having a certain size as shown in FIG. 4B.
For stroke data,
A vector array 1 for storing vector data generated from position information acquired from the API;
A
It has a vector array 3 that stores the converted vector.
図5のフローチャートを参照しながら、本実施形態の処理手順を説明する。このフローチャートの処理は、フラッシュメモリ15に記憶されたプログラムをRAM13に展開し、CPU14が実行することにより実現する。
S51では、ベクトル配列1からベクトル配列2へ、1つのベクトルをコピーする。
S52では、ベクトル配列2の先頭ベクトルの始点を始点、ベクトル配列2の最後のベクトルの終点を終点とするベクトル(テストベクトル)を生成し、その大きさを求める。
S53では、テストベクトルの大きさが規定値以上か否かを判断する大きさ規定値判定処理を行う。規定値以上であれば、S54へ移行する。規定値未満であれば、S51の処理へ戻り、次のベクトルをベクトル配列1からベクトル配列2へコピーする。
The processing procedure of the present embodiment will be described with reference to the flowchart of FIG. The processing of this flowchart is realized by developing a program stored in the
In S51, one vector is copied from the vector array 1 to the
In S52, a vector (test vector) having the start point of the first vector of the
In S53, a specified size determination process for determining whether the size of the test vector is equal to or greater than a specified value is performed. If it is equal to or greater than the specified value, the process proceeds to S54. If it is less than the specified value, the process returns to S51, and the next vector is copied from the vector array 1 to the
さらに、最初のベクトルの始点を始点、今回追加されたベクトルの終点を終点とするテストベクトルを生成し、その大きさを求める。その大きさが規定値を超えるまで、S51〜S53の処理が繰り返し行われる。 Further, a test vector having the start point of the first vector as the start point and the end point of the vector added this time as the end point is generated, and its size is obtained. The processes of S51 to S53 are repeatedly performed until the size exceeds the specified value.
S54では、生成されたテストベクトルを、ベクトル配列3に登録し、ベクトル配列2をクリアする。
S55では、ベクトル配列1に未処理のベクトルがあるか否かを判断し、未処理のベクトルがなければ処理を終了し、未処理のベクトルがあれば処理S51へ戻る。
In S54, the generated test vector is registered in the vector array 3, and the
In S55, it is determined whether or not there is an unprocessed vector in the vector array 1. If there is no unprocessed vector, the process ends. If there is an unprocessed vector, the process returns to S51.
S51〜S55の処理を行うことにより、微小なベクトルをまとめて、ある程度の大きさのベクトルに変換することができる。これにより、データ圧縮を行うことができるとともに、記号の特徴を掴みやすくすることができる。 By performing the processing of S51 to S55, minute vectors can be collected and converted into a vector of a certain size. As a result, data compression can be performed and the characteristics of the symbols can be easily grasped.
(第2の実施形態)
本実施形態においては、直線ベクトルのゆらぎ補正する処理を説明する。
人間が指で直線を書くとき、線が揺らいでしまう場合がある。この揺らぎを吸収し、1つの直線にする処理をしないと、正しくは直線と判定すべきものを、弧線と誤判定する場合がある。
(Second Embodiment)
In the present embodiment, a process for correcting fluctuation of a straight line vector will be described.
When humans draw straight lines with their fingers, the lines may fluctuate. If the process of absorbing this fluctuation and making it a single straight line is not performed, what should be correctly determined as a straight line may be erroneously determined as an arc line.
本実施形態においては、図6(a)に示すように、始点と終点を結ぶ直線からの距離が規定値以内であれば、図6(b)に示すように、1つのベクトルにまとめる。以下、図7のフローチャートを参照しながら、本実施形態の処理手順を説明する。このフローチャートの処理は、フラッシュメモリ15に記憶されたプログラムをRAM13に展開し、CPU14が実行することにより実現する。
S71では、最初のベクトルの始点と最後のベクトルの終点を結ぶ直線の方程式を求める。
S72では、ベクトルの終点から、S71で求めた直線に垂線を下ろし、その交点とベクトルの終点との距離を求める。
In this embodiment, as shown in FIG. 6 (a), if the distance from the straight line connecting the start point and the end point is within a specified value, they are combined into one vector as shown in FIG. 6 (b). Hereinafter, the processing procedure of this embodiment will be described with reference to the flowchart of FIG. The processing of this flowchart is realized by developing a program stored in the
In S71, a straight line equation connecting the start point of the first vector and the end point of the last vector is obtained.
In S72, a perpendicular is drawn from the end point of the vector to the straight line obtained in S71, and the distance between the intersection and the end point of the vector is obtained.
S73では、S72で求めた距離が、規定値内か否かを判断するずれ幅規定値判定処理を行う。規定値外であれば処理を終了し、規定値内であればS74の処理へ移る。
S74では、未処理のベクトルの有無を判断する。未処理のベクトルがあれば、S72へ戻って次のベクトルの処理を行い、未処理のベクトルがなければS75に進む。
In S73, a deviation width specified value determination process is performed to determine whether or not the distance obtained in S72 is within a specified value. If it is outside the specified value, the process ends. If it is within the specified value, the process proceeds to S74.
In S74, it is determined whether there is an unprocessed vector. If there is an unprocessed vector, the process returns to S72 to process the next vector, and if there is no unprocessed vector, the process proceeds to S75.
S75では、ベクトル配列の最初のベクトルの始点を始点、最後のベクトルの終点を終点とするベクトルを生成する。そして、ベクトル配列の全てのベクトルを削除し、生成したベクトルをベクトル配列に記憶する。 In S75, a vector having the start point of the first vector in the vector array as the start point and the end point of the last vector as the end point is generated. Then, all the vectors in the vector array are deleted, and the generated vector is stored in the vector array.
このような処理を行うことにより、複数の微小なベクトルが入力された際に、複数の微小なベクトルにおいて、最初のベクトルの始点と最終ベクトルの終点を結ぶ直線からの距離が規定値以内であれば、1つのベクトルにまとめることができる。これにより、データ圧縮を行うことができるとともに、記号の特徴を掴みやすくすることができる。 By performing such processing, when a plurality of minute vectors are input, the distance from the straight line connecting the start point of the first vector and the end point of the final vector is within the specified value in the plurality of minute vectors. For example, they can be combined into one vector. As a result, data compression can be performed and the characteristics of the symbols can be easily grasped.
(第3の実施形態)
本実施形態においては、ベクトルを方向別にグルーピングし、同じグループのベクトルが連続した場合は、それらを1つにまとめる場合を説明する。
図8(a)に示すように、ベクトルの傾きをもとに、ベクトルを9つにグルーピングする。
(Third embodiment)
In the present embodiment, a case will be described in which vectors are grouped by direction, and when vectors of the same group are continuous, they are combined into one.
As shown in FIG. 8A, the vectors are grouped into nine groups based on the gradient of the vectors.
本実施形態においては、グルーピングとは、点、下→上、左下→右上、左→右、左上→右下、上→下、右上→左下、右→左、右下→左上の9つのIDのうち、1つのIDをベクトルに与えることである。IDの与え方は、図2を参照しながら前述したとおりである。 In the present embodiment, grouping means nine IDs of point, bottom → top, bottom left → top right, left → right, top left → bottom, top → bottom, top right → bottom left, right → left, bottom right → top left. Of these, one ID is given to the vector. The method of giving the ID is as described above with reference to FIG.
図8(b)に示すように、b1〜b6の6つのベクトルで構成されたストロークを例にして説明する。
最初の3つのベクトルb1、b2、b3は、IDが左→右である。この場合、図8(c)に示すように、最初のベクトルb1の始点を始点とし、3つ目のベクトルb3の終点を終点とするベクトルc1を生成し、この3つのベクトルと置き換える。さらに4つ目から6つ目のベクトルb4、b5、b6は、IDが上→下である。この場合も4つ目のベクトルb4の始点を始点とし、6つ目のベクトルb6の終点を終点とするベクトルc2を生成し、この3つのベクトルと置き換える。
As shown in FIG. 8B, description will be made by taking as an example a stroke composed of six vectors b1 to b6.
The first three vectors b1, b2, b3 have IDs from left to right. In this case, as shown in FIG. 8C, a vector c1 having the start point of the first vector b1 as the start point and the end point of the third vector b3 as the end point is generated and replaced with these three vectors. Further, the fourth to sixth vectors b4, b5, and b6 have IDs of up → down. Also in this case, a vector c2 having the start point of the fourth vector b4 as the start point and the end point of the sixth vector b6 as the end point is generated and replaced with these three vectors.
図9のフローチャートを参照しながら、ベクトルを置き換える処理手順を説明する。このフローチャートの処理は、フラッシュメモリ15に記憶されたプログラムをRAM13に展開し、CPU14が実行することにより実現する。
S91では、n個目のベクトルを基準ベクトルとしてコピーする。nの初期値は1である。
S92では、基準ベクトルと、n+m個目のベクトルのベクトルIDが同じか否かを比較する。mの初期値は1である。IDが同じであれば、S93へ移行し、異なればS94へ移行する。
A processing procedure for replacing a vector will be described with reference to the flowchart of FIG. The processing of this flowchart is realized by developing a program stored in the
In S91, the nth vector is copied as a reference vector. The initial value of n is 1.
In S92, it is compared whether or not the vector IDs of the reference vector and the (n + m) th vector are the same. The initial value of m is 1. If the IDs are the same, the process proceeds to S93, and if they are different, the process proceeds to S94.
S93では、基準ベクトルの終点を、n+m個目のベクトルの終点に変更して、基準ベクトルのベクトルIDを計算し直し、mを「+1」する。その後、S95へ移る。
S94では、基準ベクトルを、処理済みベクトル配列に記憶する。n=n+mとする。S96へ移行する。
In S93, the end point of the reference vector is changed to the end point of the (n + m) th vector, the vector ID of the reference vector is recalculated, and m is incremented by “+1”. Thereafter, the process proceeds to S95.
In S94, the reference vector is stored in the processed vector array. Let n = n + m. The process proceeds to S96.
S95では、全てのベクトルの処理が終了しているか否かを判断する。終了していれば、処理を完了する。全てのベクトルの処理が終了していなければS93に戻って前述した処理を行う。
S96では、全てのベクトルの処理が終了しているか否かを判断する。終了していれば、処理を完了する。全てのベクトルの処理が終了していなければS91に戻って前述した処理を行う。
In S95, it is determined whether or not all vectors have been processed. If finished, the process is completed. If all the vectors have not been processed, the process returns to S93 to perform the above-described processing.
In S96, it is determined whether or not all vectors have been processed. If finished, the process is completed. If all the vectors have not been processed, the process returns to S91 to perform the above-described processing.
このような処理を行うことにより、複数の微小なベクトルが入力された際に、ベクトルの傾きをもとにグルーピングし、同じグループのベクトルが連続した場合には、それらのベクトルを1つのベクトルにまとめることができる。これにより、データ圧縮を行うことができるとともに、記号の特徴を掴みやすくすることができる。 By performing such processing, when a plurality of minute vectors are input, grouping is performed based on the gradient of the vectors, and when the same group of vectors continues, these vectors are combined into one vector. Can be summarized. As a result, data compression can be performed and the characteristics of the symbols can be easily grasped.
(第4の実施形態)
本実施形態においては、傾きの閾値付近のベクトルをまとめる例を説明する。
ベクトルを方向別に分類するときに、ベクトルの傾きによって分類を行う。このとき、傾きの閾値に近い直線を書こうとすると、手のブレなどで、あるベクトルは閾値を超えたID、別のベクトルは閾値以下のIDを与えられ、実際には同じIDとしたいベクトルが異なるIDになってしまい、前述した第3の実施形態の方法でベクトルをまとめることができない場合がある。
(Fourth embodiment)
In the present embodiment, an example will be described in which vectors in the vicinity of the inclination threshold are collected.
When vectors are classified by direction, classification is performed based on the gradient of the vectors. At this time, if an attempt is made to draw a straight line that is close to the threshold of inclination, a vector that is given an ID that exceeds the threshold and another vector that is below the threshold is given due to camera shake or the like. May become different IDs, and the vectors may not be collected by the method of the third embodiment described above.
このような問題点を解消するために、本実施形態では傾きの閾値付近のベクトルをまとめるようにした。
ベクトルの傾きが
-2.0未満の場合、そのベクトルのIDは、下→上となり、
-2.0〜-0.5の場合、そのベクトルのIDは、左下→右上となり、
-0.5以上の場合、そのベクトルのIDは、左→右
になるとする(図2を参照)。
In order to solve such problems, in the present embodiment, vectors near the threshold of inclination are collected.
Vector slope is
If it is less than -2.0, the vector ID will be down → up,
In the case of -2.0 to -0.5, the vector ID is from lower left to upper right,
In the case of -0.5 or more, it is assumed that the vector ID changes from left to right (see FIG. 2).
この場合の例を、図10を参照しながら説明する。
(a)に示すように、傾き-2.0に近いベクトルa1及びベクトルa2は、ベクトルa3に示すように1つにまとめる。
(b)に示すように、傾きの閾値付近のベクトルをまとめると、ベクトルb1、ベクトルb2、ベクトルb3は1つのベクトルb7になり、ベクトルb4、ベクトルb5、ベクトルb6は1つのベクトルb8になる。
An example of this case will be described with reference to FIG.
As shown to (a), the vector a1 and the vector a2 which are near inclination-2.0 are put together into one as shown to the vector a3.
As shown in (b), when vectors near the threshold of inclination are collected, the vectors b1, b2, and b3 become one vector b7, and the vectors b4, b5, and b6 become one vector b8.
次に、図11のフローチャートを参照しながら、本実施形態の処理手順を説明する。このフローチャートの処理は、フラッシュメモリ15に記憶されたプログラムをRAM13に展開し、CPU14が実行することにより実現する。
S111では、ベクトル配列からまとめるべきベクトルのIndexの配列を生成する。この処理の詳細は、図12のフローチャートを参照しながら後述する。
S112では、S111で作成したリストにおいて、Index配列の有無を判断する。Indexが空の場合は処理を終了する。IndexがあればS113へ移行する。
Next, the processing procedure of this embodiment will be described with reference to the flowchart of FIG. The processing of this flowchart is realized by developing a program stored in the
In S111, an array of vector indices to be collected is generated from the vector array. Details of this processing will be described later with reference to the flowchart of FIG.
In S112, it is determined whether or not there is an Index array in the list created in S111. If Index is empty, the process ends. If there is an Index, the process proceeds to S113.
S113では、Index配列の最初のIndexのベクトルの始点を始点とし、Index配列の最後のベクトルの終点を終点とするまとめベクトルを生成する。
S114では、ベクトル配列からIndex配列のIndexのベクトルを削除する。
S115では、ベクトル配列の最初のIndexの位置にまとめベクトルを挿入する。その後、S111へ戻り、前述したまとめるベクトル配列を生成する。
In S113, a summary vector is generated with the start point of the first Index vector in the Index array as the start point and the end point of the last vector in the Index array as the end point.
In S114, the Index vector of the Index array is deleted from the vector array.
In S115, a summary vector is inserted at the position of the first index in the vector array. Thereafter, the process returns to S111, and the vector array to be collected is generated.
前述のように、傾きの閾値付近のベクトルをまとめることにより、傾きの閾値に近い直線が書かれる際に、手のブレなどで、あるベクトルは閾値を超えたID、別のベクトルは閾値以下のIDが与えられたりする問題点を解消することが可能となる。 As described above, when vectors near the tilt threshold are collected, when a straight line close to the tilt threshold is written, due to camera shake or the like, one vector is an ID that exceeds the threshold, and another vector is less than the threshold. It is possible to solve the problem of giving an ID.
次に、S111で行われるベクトル配列からまとめるべきベクトルのIndexの配列を生成する処理の内容を図12のフローチャートを参照しながら説明する。図12のフローチャートの処理は、フラッシュメモリ15に記憶されたプログラムをRAM13に展開し、CPU14が実行することにより実現する。
Next, the contents of the process of generating an index array of vectors to be collected from the vector array performed in S111 will be described with reference to the flowchart of FIG. The processing of the flowchart in FIG. 12 is realized by developing a program stored in the
S121では、ベクトルnとベクトルn+1のID(方向)を調べ、互いに隣り合うか否かを判断する。互いに隣り合うベクトルであれば、その組み合わせに応じて、ベクトルnまたはベクトルn+1のIDを一時記憶ベクトルIDとして記憶するとともに、その隣り合うベクトルIDの閾値が、x軸に近い傾きかどうかを示すx軸フラグをセットする。
記憶するIDとx軸フラグは、図13のようになる。
In S121, the IDs (directions) of the vector n and the vector n + 1 are checked to determine whether or not they are adjacent to each other. If the vectors are adjacent to each other, the ID of vector n or vector n + 1 is stored as a temporary storage vector ID according to the combination, and x indicates whether the threshold of the adjacent vector ID is an inclination close to the x-axis. Set the axis flag.
The stored ID and x-axis flag are as shown in FIG.
S122では、一時記憶ベクトルIDと、前回の一時記憶ベクトルIDに応じて処理の文息を行う。
・一時記憶ベクトルIDが方向無でなければ、S123へ移る(ケース1)。
・一時記憶ベクトルIDが方向無、で前回の一時記憶ベクトルIDも方向無なら、S121へ戻る(ケース2)。
・一時記憶ベクトルIDが方向無、で前回の一時記憶ベクトルIDが方向無以外なら、処理を終了する(ケース3)。
In S122, processing is executed according to the temporary storage vector ID and the previous temporary storage vector ID.
If the temporary storage vector ID is not directionless, the process proceeds to S123 (case 1).
If the temporary storage vector ID is no direction and the previous temporary storage vector ID is also no direction, the process returns to S121 (case 2).
If the temporary storage vector ID is non-directional and the previous temporary storage vector ID is other than non-directional, the process ends (Case 3).
S123では、前回の一時記憶ベクトルIDと今回の一時記憶ベクトルIDとを比較し、同じであれば、処理を終了し、異なっていれば、S124へ移る。
S124では、x軸フラグと一時記憶ベクトルIDに応じて、ベクトルの閾値角度を決定する。これは、図14の様に決定する。さらに、ベクトルn、ベクトルn+1の角度を求めて、S125へ移る。
In S123, the previous temporary storage vector ID and the current temporary storage vector ID are compared. If they are the same, the process ends. If they are different, the process proceeds to S124.
In S124, the threshold angle of the vector is determined according to the x-axis flag and the temporary storage vector ID. This is determined as shown in FIG. Further, the angles of the vector n and the vector n + 1 are obtained, and the process proceeds to S125.
S125では、ベクトルnおよびn+1の角度がともに閾値内であれば、まとめベクトルのIndex配列にベクトルn+1のIndexを登録する。n=0であれば、ベクトルnのIndexを登録してから、n+1のIndexを登録してS126に進む。
ベクトルnまたはn+1の角度が閾値外であれば、一時記憶ベクトルIDを方向無に変更してS126に進む。
In S125, if both the angles of vectors n and n + 1 are within the threshold, the index of vector n + 1 is registered in the index array of the summary vector. If n = 0, the index of vector n is registered, then the index of n + 1 is registered, and the process proceeds to S126.
If the angle of the vector n or n + 1 is outside the threshold, the temporary storage vector ID is changed to no direction and the process proceeds to S126.
S126では、今回と前回の一時記憶ベクトルIDを調べる。前回の一時記憶ベクトルIDが方向無ではなく、今回の一時記憶ベクトルIDと異なる場合(ケース1)は処理を終了し、それ以外(ケース2)であればS127へ移る。
S127では、前回の一時記憶ベクトルIDに今回の一時記憶ベクトルIDを代入して、S121へ戻る。
In S126, the current and previous temporary storage vector IDs are checked. If the previous temporary storage vector ID is not directionless but is different from the current temporary storage vector ID (Case 1), the process ends. Otherwise (Case 2), the process proceeds to S127.
In S127, the current temporary storage vector ID is substituted for the previous temporary storage vector ID, and the process returns to S121.
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、前述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種のコンピュータ読み取り可能な記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other embodiments)
The present invention can also be realized by executing the following processing. That is, software (computer program) that implements the functions of the above-described embodiments is supplied to a system or apparatus via a network or various computer-readable storage media. Then, the computer (or CPU, MPU, etc.) of the system or apparatus reads out and executes the program.
10 手書き音楽記号認識装置
11 バス
12 ROM
13 RAM
14 CPU
15 フラッシュメモリ
16 ネットワークインターフェイス
17 タッチディスプレイ
18 オーディオ出力装置
19 MIDI出力装置
10 Handwritten Music
13 RAM
14 CPU
15
Claims (4)
前記タッチ情報取得手段から得た位置情報から前記入力手段の移動を示すベクトル情報を作成し、前記入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶するストローク情報記憶手段と、
一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶するオブジェクト情報記憶手段と、
前記ベクトル情報から、そのストロークの特徴量を算出するストローク特徴量算出手段と、
前記複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮するデータ圧縮手段とを有し、
前記まとめ処理とは、最初のベクトルの始点と最終ベクトルの終点を結ぶ直線を求め、ベクトルの終点から前記求めた直線までの距離が規定値以内であれば、複数のベクトルをまとめて1つのベクトルを生成する処理であることを特徴とする手書き音楽記号認識装置。 Touch information acquisition means for acquiring position information each time the input means moves until the input means touches the screen and then leaves,
A stroke that creates vector information indicating the movement of the input means from the position information obtained from the touch information acquisition means, and stores a series of vectors as one stroke information from when the input means touches the screen until it completely leaves. Information storage means;
Object information storage means for storing one or more stroke information in which a series of one or more vector information is stored;
Stroke feature value calculating means for calculating a feature value of the stroke from the vector information;
Data compression means for compressing the number of vectors by performing a summarizing process to convert a predetermined number of vectors into one vector among the plurality of vectors;
The summarization process is to obtain a straight line connecting the start point of the first vector and the end point of the final vector, and if the distance from the end point of the vector to the calculated straight line is within a specified value, a plurality of vectors are combined into one vector. handwritten music symbol recognition device you being a process of generating.
前記タッチ情報取得手段から得た位置情報から前記入力手段の移動を示すベクトル情報を作成し、前記入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶するストローク情報記憶手段と、
一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶するオブジェクト情報記憶手段と、
前記ベクトル情報から、そのストロークの特徴量を算出するストローク特徴量算出手段と、
前記複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮するデータ圧縮手段とを有し、
前記まとめ処理とは、ベクトルを方向別に分類するときに、互いに隣り合うベクトルか否かを判断し、互いに隣り合うベクトルの場合、それらの閾値となる角度の上限角度と下限角度を算出し、共に上限角度と下限角度の範囲内である場合は、それらのベクトルまとめて1つのベクトルを生成する処理であることを特徴とする手書き音楽記号認識装置。 Touch information acquisition means for acquiring position information each time the input means moves until the input means touches the screen and then leaves,
A stroke that creates vector information indicating the movement of the input means from the position information obtained from the touch information acquisition means, and stores a series of vectors as one stroke information from when the input means touches the screen until it completely leaves. Information storage means;
Object information storage means for storing one or more stroke information in which a series of one or more vector information is stored;
Stroke feature value calculating means for calculating a feature value of the stroke from the vector information;
Data compression means for compressing the number of vectors by performing a summarizing process to convert a predetermined number of vectors into one vector among the plurality of vectors;
In the summary processing, when vectors are classified by direction, it is determined whether or not the vectors are adjacent to each other. If the vectors are adjacent to each other, the upper limit angle and the lower limit angle of the threshold values are calculated. If it is within the range between the upper angle and lower angles, handwritten music symbol recognition device characterized in that collectively their vectors is a process of generating one vector.
前記タッチ情報取得処理から得た位置情報から前記入力手段の移動を示すベクトル情報を作成し、前記入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶するストローク情報記憶処理と、
一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶するオブジェクト情報記憶処理と、
前記ベクトル情報から、そのストロークの特徴量を算出するストローク特徴量算出処理と、
前記複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮するデータ圧縮処理とをコンピュータに実行させる手書き音楽記号認識プログラムであって、
前記まとめ処理とは、最初のベクトルの始点と最終ベクトルの終点を結ぶ直線を求め、ベクトルの終点から前記求めた直線までの距離が規定値以内であれば、複数のベクトルをまとめて1つのベクトルを生成する処理であることを特徴とする手書き音楽記号認識プログラム。 Touch information acquisition processing for acquiring the position information every time the input means moves until the input means touches the screen and then leaves,
A stroke that creates vector information indicating the movement of the input means from the position information obtained from the touch information acquisition process, and stores a series of vectors from the touch of the input means until the input means completely leaves as one stroke information Information storage processing;
An object information storage process for storing one or more stroke information in which a series of one or more vector information is stored;
A stroke feature amount calculation process for calculating a feature amount of the stroke from the vector information;
A handwritten music symbol recognition program that performs a summarizing process to convert a predetermined number of vectors into one vector from the plurality of vectors, and causes a computer to execute a data compression process for compressing the number of vectors .
The summarization process is to obtain a straight line connecting the start point of the first vector and the end point of the final vector, and if the distance from the end point of the vector to the calculated straight line is within a specified value, a plurality of vectors are combined into one vector. A program for recognizing handwritten music symbols, which is a process for generating
前記タッチ情報取得処理から得た位置情報から前記入力手段の移動を示すベクトル情報を作成し、前記入力手段が画面に触れてから完全に離れるまでの一連のベクトルを1つのストローク情報として記憶するストローク情報記憶処理と、
一連の1乃至は複数のベクトル情報が記憶されたストローク情報を、1乃至は複数記憶するオブジェクト情報記憶処理と、
前記ベクトル情報から、そのストロークの特徴量を算出するストローク特徴量算出処理と、
前記複数のベクトルのうち、所定個数のベクトルを1つのベクトルにするまとめ処理を行い、ベクトル数を圧縮するデータ圧縮処理とをコンピュータに実行させる手書き音楽記号認識プログラムであって、
前記まとめ処理とは、ベクトルを方向別に分類するときに、互いに隣り合うベクトルか否かを判断し、互いに隣り合うベクトルの場合、それらの閾値となる角度の上限角度と下限角度を算出し、共に上限角度と下限角度の範囲内である場合は、それらのベクトルまとめて1つのベクトルを生成する処理であることを特徴とする手書き音楽記号認識プログラム。 Touch information acquisition processing for acquiring the position information every time the input means moves until the input means touches the screen and then leaves,
A stroke that creates vector information indicating the movement of the input means from the position information obtained from the touch information acquisition process, and stores a series of vectors from the touch of the input means until the input means completely leaves as one stroke information Information storage processing;
An object information storage process for storing one or more stroke information in which a series of one or more vector information is stored;
A stroke feature amount calculation process for calculating a feature amount of the stroke from the vector information;
A handwritten music symbol recognition program that performs a summarizing process to convert a predetermined number of vectors into one vector from the plurality of vectors, and causes a computer to execute a data compression process for compressing the number of vectors .
In the summary processing, when vectors are classified by direction, it is determined whether or not the vectors are adjacent to each other. If the vectors are adjacent to each other, the upper limit angle and the lower limit angle of the threshold values are calculated. A handwritten music symbol recognition program, which is a process of generating one vector by combining the vectors when the angle is within the range of the upper limit angle and the lower limit angle .
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2014070018A JP6444041B2 (en) | 2014-03-28 | 2014-03-28 | Handwritten music symbol recognition apparatus and handwritten music symbol recognition program |
| PCT/JP2015/050875 WO2015141260A1 (en) | 2014-03-17 | 2015-01-15 | Handwritten music notation recognition device and program |
| US14/911,963 US10725650B2 (en) | 2014-03-17 | 2015-01-15 | Handwritten music sign recognition device and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2014070018A JP6444041B2 (en) | 2014-03-28 | 2014-03-28 | Handwritten music symbol recognition apparatus and handwritten music symbol recognition program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2015191581A JP2015191581A (en) | 2015-11-02 |
| JP6444041B2 true JP6444041B2 (en) | 2018-12-26 |
Family
ID=54425989
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2014070018A Active JP6444041B2 (en) | 2014-03-17 | 2014-03-28 | Handwritten music symbol recognition apparatus and handwritten music symbol recognition program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6444041B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7000206B2 (en) | 2018-03-06 | 2022-01-19 | 富士フイルム株式会社 | Medical image processing equipment, medical image processing methods, and medical image processing programs |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05225396A (en) * | 1992-02-07 | 1993-09-03 | Seiko Epson Corp | Hand-written character recognizing device |
| JP3471942B2 (en) * | 1994-12-22 | 2003-12-02 | 株式会社東芝 | Figure recognition apparatus and method |
| JP5030144B2 (en) * | 2006-11-10 | 2012-09-19 | 株式会社河合楽器製作所 | Music score recognition apparatus and program |
-
2014
- 2014-03-28 JP JP2014070018A patent/JP6444041B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2015191581A (en) | 2015-11-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110532984B (en) | Key point detection method, gesture recognition method, device and system | |
| CN111931710B (en) | Online handwritten character recognition method and device, electronic equipment and storage medium | |
| EP3514724B1 (en) | Depth map-based heuristic finger detection method | |
| TWI475422B (en) | Method for recognizing gesture and electronic device | |
| KR20170030613A (en) | Touch classification | |
| JP6055065B1 (en) | Character recognition program and character recognition device | |
| KR101559502B1 (en) | Method and recording medium for contactless input interface with real-time hand pose recognition | |
| JP6066093B2 (en) | Finger shape estimation device, finger shape estimation method, and finger shape estimation program | |
| KR102694644B1 (en) | Extract text lines | |
| CN108701215B (en) | System and method for identifying multi-object structures | |
| US9971954B2 (en) | Apparatus and method for producing image processing filter | |
| CN108596079B (en) | Gesture recognition method, device and electronic device | |
| CN114360047A (en) | Hand-lifting gesture recognition method and device, electronic equipment and storage medium | |
| CN112740201A (en) | Ink data generating device, method and program | |
| JP6098498B2 (en) | Information processing apparatus, information processing method, and program | |
| TWI224288B (en) | Method for aligning gesture feature of image | |
| JP6444041B2 (en) | Handwritten music symbol recognition apparatus and handwritten music symbol recognition program | |
| US9250802B2 (en) | Shaping device | |
| JP2019194788A (en) | Learning device, recognition device, learning method and computer program | |
| WO2015141260A1 (en) | Handwritten music notation recognition device and program | |
| CN106662927A (en) | Motion recognition method and motion recognition device | |
| JP6437205B2 (en) | Handwritten music symbol recognition apparatus and program | |
| JP6437208B2 (en) | Handwritten music symbol recognition apparatus and handwritten music symbol recognition program | |
| US20150269430A1 (en) | Recognition apparatus, method, and computer program product | |
| KR20230141582A (en) | Method of extracting drawing information from 2-dimensional drawing image in graph structure and method of comparing one drawing image with another drawing image |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170220 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180424 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180611 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20181120 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181127 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6444041 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |