(57)【要約】【課題】従来、文字の正誤判断が適切にできなかった。【解決手段】正解の文字を示す正解文字情報であり、文字の骨格を構成する端点または分岐点または交点である構造点の情報である構造点情報を含む正解文字情報を、１以上格納し得る正解文字情報格納部と、手書き入力された１以上の文字を含む画像である文字画像を格納し得る文字画像格納部と、文字画像格納部に格納されている文字画像に含まれる各文字に対して、１以上の構造点を検出し、当該構造点の情報である構造点情報を、１以上取得する点情報取得部と、文字画像に含まれる各文字に対応する正解文字情報に含まれる構造点情報と、点情報取得部が取得した構造点情報とを比較し、文字画像に含まれる各文字が不正解か否かを判断する判断部１５と、判断部１５における判断結果を出力する判断結果出力部を具備する判定装置により、文字の正誤判断が適切にできる。【選択図】図１
2010231529.tif 000002
【特許請求の範囲】
【請求項１】
正解の文字を示す正解文字情報であり、文字の骨格を構成する端点または分岐点または交点である構造点の情報である構造点情報を含む正解文字情報を、１以上格納し得る正解文字情報格納部と、
手書き入力された１以上の文字を含む画像である文字画像を格納し得る文字画像格納部と、
前記文字画像格納部に格納されている文字画像に含まれる各文字に対して、１以上の構造点を検出し、当該構造点の情報である構造点情報を、１以上取得する点情報取得部と、
前記文字画像に含まれる文字に対応する正解文字情報に含まれる構造点情報と、前記点情報取得部が取得した構造点情報とを比較し、文字画像に含まれる文字が不正解か否かを判断する判断部と、
前記判断部における判断結果を出力する判断結果出力部を具備する判定装置。
【請求項２】
前記文字画像格納部に格納されている文字画像に含まれる２以上の文字から、各文字を切り出す文字分割部をさらに具備し、
前記点情報取得部は、
前記文字分割部が切り出した文字に対して、１以上の構造点を検出し、１以上の構造点情報を取得する請求項１記載の判定装置。
【請求項３】
前記正解文字情報は、
文字の骨格を構成する端点または分岐点または交点である構造点の情報である構造点情報と、２つの構造点を結ぶ線であるエッジ上の点であり、閾値より曲がりの程度の大きい点である特徴点の情報である特徴点情報とを有し、
前記点情報取得部は、
前記文字画像格納部に格納されている文字画像に含まれる文字に対して、１以上の構造点情報を取得する構造点情報取得手段と、
前記文字画像格納部に格納されている文字画像に含まれる文字に対して、１以上の特徴点情報を取得する特徴点情報取得手段とを具備し、
前記判断部は、
構造点情報と特徴点情報を異なる用い方により、前記構造点情報取得手段が取得した１以上の構造点情報および前記特徴点情報取得手段が取得した１以上の特徴点情報と、前記正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、文字画像に含まれる文字が不正解か否かを判断する請求項１または請求項２記載の判定装置。
【請求項４】
前記判断部は、
前記構造点情報取得手段が取得した１以上の構造点情報と、前記正解文字情報に含まれる１以上の構造点情報を比較し、文字画像に含まれる文字が不正解か否かを判断する構造判断手段と、
前記構造判断手段が文字画像に含まれる文字が不正解でないと判断した文字に対して、前記構造点情報取得手段が取得した１以上の構造点情報および前記特徴点情報取得手段が取得した１以上の特徴点情報と、前記正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、前記文字が不正解か否かを判断する特徴判断手段とを具備する請求項３記載の判定装置。
【請求項５】
前記特徴判断手段は、
一文字に含まれる構造点および特徴点を、連結されている構造点または特徴点を有する１以上のグループに分割するグループ分割手段と、
各グループごとに、前記構造点情報取得手段が取得した１以上の構造点情報および前記特徴点情報取得手段が取得した１以上の特徴点情報と、前記正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、前記文字が不正解か否かを判断するグループ特徴判断手段と、
手書き入力された文字のグループ間のバランスを示す１以上の特徴量を取得する特徴量取得手段と、
前記特徴量取得手段が取得した１以上の特徴量を用いて、前記文字が不正解か否かを判断するバランス判断手段とを具備する請求項４記載の判定装置。
【請求項６】
前記グループ特徴判断手段は、
各グループごとに、前記構造点情報取得手段が取得した１以上の構造点情報および前記特徴点情報取得手段が取得した１以上の特徴点情報が示す各点に対応する点であり、前記正解文字情報に含まれる１以上の構造点情報または１以上の特徴点情報のうちのいずれかが示す点の情報である対応点情報を取得し、
前記１以上の構造点情報および前記１以上の特徴点情報の各々が示す各点と、各対応点情報が示す各点との距離を算出し、
前記距離の絶対値の和を算出し、
当該距離の絶対値の和が閾値以上または閾値より大きい場合に、前記文字が不正解であると判断する請求項５記載の判定装置。
【請求項７】
前記特徴量取得手段は、
手書き入力された文字の１以上のグループにより構成される文字の部分が占める面積の比率を特徴量として算出し、
前記バランス判断手段は、
正解の文字の１以上のグループにより構成される文字の部分が占める面積の比率を含む判断情報を取得し、前記特徴量取得手段が算出した特徴量と前記判断情報とから、前記文字が不正解か否かを判断する請求項５または請求項６記載の判定装置。
【請求項８】
前記特徴量取得手段は、
手書き入力された文字の各グループ間の距離を特徴量として算出し、
前記バランス判断手段は、
正解の文字のグループ間の距離を含む判断情報を取得し、前記特徴量取得手段が算出した特徴量と前記判断情報とから、前記文字が不正解か否かを判断する請求項５または請求項６記載の判定装置。
【請求項９】
前記判断結果出力部が出力した判断結果に対する正誤に関する情報である正誤情報を受け付ける受付部をさらに具備し、
前記判断部は、
前記正誤情報を用いて、文字画像に含まれる文字が不正解か否かを判断する基準を変更する請求項２から請求項８いずれか記載の判定装置。
【請求項１０】
前記正解文字情報は、
正解の文字を特徴付ける１以上の特徴量を含む判断情報を有し、
前記正誤情報は、
１以上の特徴量であり、
前記判断部は、
前記受付部が受け付けた１以上の特徴量を含む判断情報を用いて、文字画像に含まれる文字が不正解か否かを判断する請求項９記載の判定装置。
【請求項１１】
前記文字は、漢字である請求項１から請求項１０いずれか記載の判定装置。
【請求項１２】
記録媒体に、
正解の文字を示す正解文字情報であり、文字の骨格を構成する端点または分岐点または交点である構造点の情報である構造点情報を含む１以上の正解文字情報と、手書き入力された１以上の文字を含む画像である文字画像とを格納しており、
コンピュータを、
前記記録媒体に格納されている文字画像に含まれる各文字に対して、１以上の構造点を検出し、当該構造点の情報である構造点情報を、１以上取得する点情報取得部と、
前記文字画像に含まれる文字に対応する正解文字情報に含まれる構造点情報と、前記構造点情報取得部が取得した構造点情報とを比較し、文字画像に含まれる文字が不正解か否かを判断する判断部と、
前記判断部における判断結果を出力する判断結果出力部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手書き入力された文字の正誤を判断する判定装置等に関するものである。
【背景技術】
【０００２】
従来、入力された文字のストロークを、直線と２次ベジェ曲線とを連ねたパスとして入力実施中にディスプレイに表示する際に、該ストロークの始点・終点・折れ点・曲線の描き方を決める点などの特徴点を図形による印として表示する手書き文字入力システムがあった。（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１０８１７７号公報（第１頁、段落［００５９］等）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の手書き文字入力システムにおいては、文字の骨格を構成する端点または分岐点または交点である構造点に着目した処理を行っておらず、文字の正誤判断処理の速度が遅い、という課題があった。また、従来の手書き文字入力システムにおいては、構造点と特徴点を区別して、それぞれを異なるアルゴリズムに適用して、文字の正誤判断処理を行っていないため、文字の正誤判断が適切にできない、という課題があった。
【課題を解決するための手段】
【０００５】
本第一の発明の判定装置は、正解の文字を示す正解文字情報であり、文字の骨格を構成する端点または分岐点または交点である構造点の情報である構造点情報を含む正解文字情報を、１以上格納し得る正解文字情報格納部と、手書き入力された１以上の文字を含む画像である文字画像を格納し得る文字画像格納部と、前記文字画像格納部に格納されている文字画像に含まれる各文字に対して、１以上の構造点を検出し、当該構造点の情報である構造点情報を、１以上取得する点情報取得部と、前記文字画像に含まれる各文字に対応する正解文字情報に含まれる構造点情報と、前記点情報取得部が取得した構造点情報とを比較し、文字画像に含まれる各文字が不正解か否かを判断する判断部と、前記判断部における判断結果を出力する判断結果出力部を具備する判定装置である。
【０００６】
かかる構成により、文字の正誤判断が高速にできる。
【０００７】
また、本第二の発明の判定装置は、第一の発明に対して、文字画像格納部に格納されている文字画像に含まれる２以上の文字から、各文字を切り出す文字分割部をさらに具備し、点情報取得部は、文字分割部が切り出した各文字に対して、１以上の構造点を検出し、１以上の構造点情報を取得する判定装置である。
【０００８】
かかる構成により、文字の正誤判断が高速にできる。
【０００９】
また、本第三の発明の判定装置は、第一、第二いずれかの発明に対して、正解文字情報は、文字の骨格を構成する端点または分岐点または交点である構造点の情報である構造点情報と、２つの構造点を結ぶ線であるエッジ上の点であり、閾値より曲がりの程度の大きい点である特徴点の情報である特徴点情報とを有し、点情報取得部は、文字画像格納部に格納されている文字画像に含まれる各文字に対して、１以上の構造点情報を取得する構造点情報取得手段と、文字画像格納部に格納されている文字画像に含まれる各文字に対して、１以上の特徴点情報を取得する特徴点情報取得手段とを具備し、判断部は、構造点情報と特徴点情報を異なる用い方により、構造点情報取得手段が取得した１以上の構造点情報および特徴点情報取得手段が取得した１以上の特徴点情報と、正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、文字画像に含まれる文字が不正解か否かを判断する判定装置である。
【００１０】
かかる構成により、文字の正誤判断が精度高くできる。
【００１１】
また、本第四の発明の判定装置は、第三の発明に対して、判断部は、構造点情報取得手段が取得した１以上の構造点情報と、正解文字情報に含まれる１以上の構造点情報を比較し、文字画像に含まれる文字が不正解か否かを判断する構造判断手段と、構造判断手段が文字画像に含まれる文字が不正解でないと判断した文字に対して、構造点情報取得手段が取得した１以上の構造点情報および特徴点情報取得手段が取得した１以上の特徴点情報と、正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、文字が不正解か否かを判断する特徴判断手段とを具備する判定装置である。
【００１２】
かかる構成により、文字の正誤判断が高速に、かつ精度高くできる。
【００１３】
また、本第五の発明の判定装置は、第四の発明に対して、特徴判断手段は、一文字に含まれる構造点および特徴点を、連結されている構造点または特徴点を有する１以上のグループに分割するグループ分割手段と、各グループごとに、構造点情報取得手段が取得した１以上の構造点情報および特徴点情報取得手段が取得した１以上の特徴点情報と、正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、文字が不正解か否かを判断するグループ特徴判断手段と、手書き入力された文字の各グループ間のバランスを示す１以上の特徴量と、正解の文字の各グループの１以上の特徴量とを取得する特徴量取得手段と、特徴量取得手段が取得した、手書き入力された文字の各グループの１以上の特徴量と正解の文字の各グループの１以上の特徴量とを比較し、文字が不正解か否かを判断するバランス判断手段とを具備する判定装置である。
【００１４】
かかる構成により、文字の正誤判断が、さらに精度高くできる。
【００１５】
また、本第六の発明の判定装置は、第五の発明に対して、グループ特徴判断手段は、各グループごとに、構造点情報取得手段が取得した１以上の構造点情報および特徴点情報取得手段が取得した１以上の特徴点情報が示す各点に対応する点であり、正解文字情報に含まれる１以上の構造点情報または１以上の特徴点情報のうちのいずれかが示す点の情報である対応点情報を取得し、１以上の構造点情報および１以上の特徴点情報の各々が示す各点と、各対応点情報が示す各点との距離を算出し、距離の絶対値の和を算出し、距離の絶対値の和が閾値以上または閾値より大きい場合に、文字が不正解であると判断する判定装置である。
【００１６】
かかる構成により、文字の正誤判断が、さらに精度高くできる。
【００１７】
また、本第七の発明の判定装置は、第五、第六いずれかの発明に対して、バランス判断手段は、手書き入力された文字の１以上のグループにより構成される文字の部分が占める面積の比率を特徴量として算出し、かつ正解の文字の１以上のグループにより構成される文字の部分が占める面積の比率を含む判断情報を取得し、前記手書き入力された文字の特徴量と前記判断情報とから、前記文字が不正解か否かを判断する判定装置である。
【００１８】
かかる構成により、文字の正誤判断が、さらに精度高くできる。
【００１９】
また、本第八の発明の判定装置は、第五、第六いずれかの発明に対して、バランス判断手段は、手書き入力された文字の各グループ間の距離をパラメータとして算出し、かつ正解の文字の各グループ間の距離をパラメータとして算出し、２つの特徴量を比較し、文字が不正解か否かを判断する判定装置である。
【００２０】
かかる構成により、文字の正誤判断が、さらに精度高くできる。
【００２１】
また、本第九の発明の判定装置は、第二から第八いずれかの発明に対して、判断結果出力部が出力した判断結果に対する正誤に関する情報である正誤情報を受け付ける受付部をさらに具備し、前記判断部は、前記正誤情報を用いて、文字画像に含まれる文字が不正解か否かを判断する基準を変更する判定装置である。
【００２２】
かかる構成により、文字の正誤判断が、さらに精度高くできる。
【００２３】
また、本第十の発明の判定装置は、第九の発明に対して、前記正解文字情報は、正解の文字を特徴付ける１以上の特徴量を含む判断情報を有し、前記正誤情報は、１以上の特徴量であり、前記判断部は、前記受付部が受け付けた１以上の特徴量を含む判断情報を用いて、文字画像に含まれる文字が不正解か否かを判断する判定装置である。
【００２４】
かかる構成により、文字の正誤判断が、さらに精度高くできる。
【００２５】
また、本第十一の発明の判定装置は、第一から第十いずれかの発明に対して、文字は、漢字である判定装置である。
【００２６】
かかる構成により、漢字の正誤判断が精度高くできる。
【発明の効果】
【００２７】
本発明による判定装置によれば、文字の正誤判断が適切にできる。
【図面の簡単な説明】
【００２８】
【図１】実施の形態１における判定装置のブロック図
【図２】同グラフデータの生成処理を説明する概念図
【図３】同構造比較処理を説明する概念図
【図４】同特徴比較処理を説明する概念図
【図５】同特徴比較処理を説明する概念図
【図６】同判定装置の動作について説明するフローチャート
【図７】同点情報取得処理の動作について説明するフローチャート
【図８】同判断処理の動作について説明するフローチャート
【図９】同構造比較処理の動作について説明するフローチャート
【図１０】同形状比較処理の動作について説明するフローチャート
【図１１】同特徴量比較処理の動作について説明するフローチャート
【図１２】同正解文字情報管理表を示す図
【図１３】同接続情報の例を示す図
【図１４】同正解文字情報管理表を示す図
【図１５】同判断結果出力画面と特徴量の修正処理を示す図
【図１６】同シミュレーション画面を示す図
【図１７】同判断結果出力画面と特徴量の修正処理を示す図
【図１８】同シミュレーション画面を示す図
【図１９】同コンピュータシステムの概観図
【図２０】同コンピュータシステムのブロック図
【発明を実施するための形態】
【００２９】
以下、判定装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００３０】
（実施の形態１）
【００３１】
本実施の形態において、入力された手書き文字（画像）から構造点を取得し、構造点を用いて、正解文字と比較し、比較結果を出力する判定装置について説明する。また、本実施の形態において、手書き文字の構造点を用いて構造比較し、次に構造点および特徴点を用いて特徴比較を行う判定装置について説明する。
【００３２】
図１は、本実施の形態における判定装置のブロック図である。判定装置１は、文字画像読取部１０、正解文字情報格納部１１、文字画像格納部１２、文字分割部１３、点情報取得部１４、判断部１５、判断結果出力部１６、受付部１７、判断情報更新部１８を具備する。
【００３３】
点情報取得部１４は、構造点情報取得手段１４１、特徴点情報取得手段１４２を具備する。
【００３４】
判断部１５は、構造判断手段１５１、特徴判断手段１５２を具備する。
【００３５】
特徴判断手段１５２は、グループ分割手段１５２１、グループ特徴判断手段１５２２、特徴量取得手段１５２３、バランス判断手段１５２４を具備する。
【００３６】
文字画像読取部１０は、手書き入力された１以上の文字を読み取る。文字画像読取部１０は、紙などの媒体に記載された１以上の文字から、当該文字を含む画像を構成する。文字画像読取部１０は、例えば、スキャナやデジタルカメラなどである。
【００３７】
正解文字情報格納部１１は、１以上の正解文字情報を格納し得る。正解文字情報とは、正解の文字を示す情報である。正解文字情報とは、文字の骨格を構成する構造点を示す情報である構造点情報を含む。構造点とは、文字の骨格を構成する端点または分岐点または交点である。正解の文字とは、手書き入力された文字と比較される比較対象の文字である。
【００３８】
構造点情報は、通常、点の位置を示す位置情報（ｘ、ｙ）を有する。構造点を示すフラグが付与されていても良い。また、文字とは、漢字やひらがなやアルファベットやハングル文字など、何でも良い。ただし、本判定装置１の処理は、漢字を対象にすることは好適である。正解文字情報は、１以上の特徴点情報を含むことは好適である。特徴点情報とは、特徴点の情報である。特徴点とは、エッジ上の点であり、閾値より曲がりの程度の大きい点である。エッジとは、２つの構造点を結ぶ線である。また、正解文字情報は、文字の特徴を示す１以上の判断情報を有することは好適である。判断情報とは、特徴量または特徴量の範囲を示す情報である。特徴量とは、例えば、後述するグループの占める面積の比率、１以上のグループである文字の部分の占める面積の比率、グループ間の距離、文字のはねの長さ、特定の線（画）の長さなど、文字の特徴を示す値であれば何でも良い。グループとは、文字の骨格を構成する一の連結されている構造点または特徴点の集合である。また、グループとは、文字の骨格を構成する一の連結されている構造点または特徴点の集合から構成される線図でも良い。さらに具体的には、正解文字情報は、例えば、構造点情報または特徴点情報であるノード情報、および構造点や特徴点の接続を示す接続情報を有することは好適である。
【００３９】
正解文字情報格納部１１は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００４０】
正解文字情報格納部１１に正解文字が記憶される過程は問わない。例えば、記録媒体を介して正解文字が正解文字情報格納部１１で記憶されるようになってもよく、通信回線等を介して送信された正解文字が正解文字情報格納部１１で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された正解文字が正解文字情報格納部１１で記憶されるようになってもよい。
【００４１】
文字画像格納部１２は、手書き入力された１以上の文字を含む画像である文字画像（適宜、「入力文字画像」という）を格納し得る。文字画像格納部１２は、通常、文字画像読取部１０が取得した文字画像を格納している。文字画像格納部１２は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。文字画像格納部１２に文字画像が記憶される過程は問わない。例えば、記録媒体を介して文字画像が文字画像格納部１２で記憶されるようになってもよく、通信回線等を介して送信された文字画像が文字画像格納部１２で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された文字画像が文字画像格納部１２で記憶されるようになってもよい。
【００４２】
文字分割部１３は、文字画像格納部１２に格納されている文字画像に含まれる２以上の文字から、各文字を切り出す。文字分割部１３は、文字認識処理などで利用されている公知技術であるので詳細な説明を省略する。文字分割部１３は、通常、ＭＰＵやメモリ等から実現され得る。文字分割部１３の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００４３】
点情報取得部１４は、文字画像格納部１２に格納されている文字画像に含まれる各文字に対して、１以上の構造点情報、および１以上の特徴点情報を取得する。また、点情報取得部１４は、文字画像格納部１２に格納されている文字画像に含まれる各文字に対して、１以上の構造点情報のみを取得しても良い。なお、文字画像格納部１２に格納されている文字画像に含まれる各文字とは、文字分割部１３が切り出した各文字である。さらに詳細には、点情報取得部１４は、文字画像に含まれる各文字をグラフ化し、ノードとエッジ（線分）を検出し、特定のノードである端点または分岐点または交点を検出する。この特定のノードは、構造点である。また、点情報取得部１４は、２つの構造点を結ぶ線であるエッジ上の点であり、閾値より曲がりの程度の大きい点である特徴点を検出する。なお、点情報取得部１４は、閾値を予め格納している。また、曲がりの程度とは、例えば、２つの直線により構成される角度である。また、曲がりの程度とは、エッジ上の各点の微分値（傾き）などでも良い。なお、ここで、ノードとは、構造点または特徴点である。
【００４４】
点情報取得部１４は、通常、ＭＰＵやメモリ等から実現され得る。点情報取得部１４の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００４５】
構造点情報取得手段１４１は、文字画像格納部１２に格納されている文字画像に含まれる各文字に対して、1以上の構造点情報を取得する。さらに具体的には、構造点情報取得手段１４１は、例えば、図２に示すように動作する。まず、構造点情報取得手段１４１は、手書き文字画像に対して、細線化処理を行う。細線化処理とは、手書きの文字画像（ａ）から太さを除去して、線画画像に変換後、線画画像（ラスター）から線画データ（ベクター（ｂ））に変換する。かかる変換をラスターベクター変換という。次に、構造点情報取得手段１４１は、グラフデータ作成処理を行う。つまり、構造点情報取得手段１４１は、線画データ（ベクター）から構造点を抽出する。構造点は、線画データの端点、分岐点、または交点である。
【００４６】
構造点情報取得手段１４１は、通常、ＭＰＵやメモリ等から実現され得る。構造点情報取得手段１４１の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００４７】
特徴点情報取得手段１４２は、文字画像格納部１２に格納されている文字画像に含まれる各文字に対して、１以上の特徴点情報を取得する。つまり、特徴点情報取得手段１４２は、図２の線画データ（ベクター）より特徴点を抽出する。構造点情報取得手段１４１の処理と、特徴点情報取得手段１４２の処理により、ノード（構造点または特徴点）とエッジを有するグラフデータ（図２（ｃ））が構成される。また、点情報取得部１４は、正規化されていないグラフデータ（図２（ｃ））を正規化し、正規化されたグラフデータ（図２（ｄ））を得る。正規化とは、ここでは、ノードの位置情報を、ＸＹ座標系の（０，０）（０，１）（１，１）（１，０）の矩形領域に収める処理である。
【００４８】
特徴点情報取得手段１４２は、通常、ＭＰＵやメモリ等から実現され得る。特徴点情報取得手段１４２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００４９】
判断部１５は、文字画像に含まれる各文字に対応する正解文字情報に含まれる構造点情報と、点情報取得部１４が取得した構造点情報とを比較し、文字画像に含まれる各文字が不正解か否かを判断する。判断部１５は、２つの構造点情報から、２つの文字の構造が一致しないと判断した場合、２つの文字が異なる、と判断する。
【００５０】
判断部１５は、構造点情報と特徴点情報を異なる用い方により、構造点情報取得手段１４１が取得した１以上の構造点情報および特徴点情報取得手段１４２が取得した１以上の特徴点情報と、正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、文字画像に含まれる文字が不正解か否かを判断する。ここで、「異なる用い方」とは、例えば、構造点情報を用いて構造の一致／不一致を判断し、構造点情報と特徴点情報を用いて形状の一致／不一致を判断することである。また、例えば、「異なる用い方」とは、構造点情報を用いて構造の一致／不一致を判断し、特徴点情報を用いて文字の曲がり度合いの一致／不一致を判断すること等である。
【００５１】
判断部１５は、受付部１７が受け付けた１以上のパラメータ（「特徴量」と同意義である。）を基準にして、文字画像に含まれる文字が不正解か否かを判断することは好適である。ここで、受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。なお、判断部１５は、さらに具体的には、後述する構造判断手段１５１、特徴判断手段１５２により、文字画像に含まれる各文字が不正解か否かを判断する。
【００５２】
判断部１５は、通常、ＭＰＵやメモリ等から実現され得る。判断部１５の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００５３】
構造判断手段１５１は、構造点情報取得手段１４１が取得した１以上の構造点情報と、正解文字情報に含まれる１以上の構造点情報を比較し、文字画像に含まれる文字が不正解か否かを判断する。構造判断手段１５１は、２つの文字の構造を比較し、異なる文字か否かを判断する。構造判断手段１５１は、構造点の接続情報を用いて、２つの文字の構造を比較し、異なる文字か否かを判断することは好適である。構造判断手段１５１は、さらに具体的には、図３に示すような方法で、文字画像に含まれる文字が不正解か否かを判断する。つまり、構造判断手段１５１は、入力文字の構造点情報（ここでは、各構造点の接続情報）と、正解文字の構造点情報（ここでは、各構造点の接続情報）とを取得する。そして、構造判断手段１５１は、２つの構造点情報が有する接続情報（グラフ構造）がすべて一致しない場合に、２つの文字は異なる、と判断する。また、構造判断手段１５１は、入力文字の構造点の位置情報と、対応する正解文字の構造点の位置情報とを比較し、その差を算出しても良い。そして、その差の集合（例えば、差の絶対値をすべて加えた値）を用いて、２つの文字の形状の違いを判断しても良い。つまり、例えば、構造判断手段１５１は、差の絶対値をすべて加えた値が所定以上の値であれば、両文字は異なると判断しても良い。
【００５４】
構造判断手段１５１は、通常、ＭＰＵやメモリ等から実現され得る。構造判断手段１５１の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００５５】
特徴判断手段１５２は、構造判断手段１５１が文字画像に含まれる文字が不正解でないと判断した文字に対して、構造点情報取得手段１４１が取得した１以上の構造点情報および特徴点情報取得手段１４２が取得した１以上の特徴点情報と、正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、文字が不正解か否かを判断する。なお、特徴判断手段１５２は、主として、２つの文字の形を比較し、文字画像に含まれる文字が不正解か否かを判断する。具体的には、特徴判断手段１５２は、グループ分割手段１５２１、グループ特徴判断手段１５２２、特徴量取得手段１５２３、およびバランス判断手段１５２４により、文字が不正解か否かを判断することは好適である。
【００５６】
特徴判断手段１５２は、通常、ＭＰＵやメモリ等から実現され得る。特徴判断手段１５２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００５７】
グループ分割手段１５２１は、一文字に含まれる構造点および特徴点を、連結されている構造点または特徴点を有する１以上のグループに分割する。つまり、グループ分割手段１５２１は、例えば、ひらがな「い」は２つのグループに分割する。また、グループ分割手段１５２１は、例えば、漢字「淳」を６つのグループに分割する。グループ分割手段１５２１は、図４に示すように、連結しているノード群を一つのグループである、と判断する。文字「ぽ」は、３つのグループに分割される。
【００５８】
グループ分割手段１５２１は、通常、ＭＰＵやメモリ等から実現され得る。グループ分割手段１５２１の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００５９】
グループ特徴判断手段１５２２は、各グループごとに、構造点情報取得手段１４１が取得した１以上の構造点情報および特徴点情報取得手段１４２が取得した１以上の特徴点情報と、正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、文字が不正解か否かを判断する。
【００６０】
グループ特徴判断手段１５２２は、まず、各グループごとに、構造点情報取得手段１４１が取得した１以上の構造点情報および特徴点情報取得手段１４２が取得した１以上の特徴点情報が示す各点に対応する点であり、正解文字情報に含まれる１以上の構造点情報または１以上の特徴点情報のうちのいずれかが示す点の情報である対応点情報を取得する。そして、グループ特徴判断手段１５２２は、構造点情報取得手段１４１が取得した１以上の構造点情報および特徴点情報取得手段１４２が取得した１以上の特徴点情報が示す各点と対応する点の位置情報を用いて、文字が不正解か否かを判断する。
【００６１】
グループ特徴判断手段１５２２は、例えば、図５に示すように、各グループごとに、対応するノードを決定し、そのノード間の距離を算出する。そして、距離の集合を用いて、２つのグループの評価値を算出する。グループ特徴判断手段１５２２は、その評価値が所定より大きい場合（以上も含む）、２つの文字は異なると判断する。具体的には、例えば、図５に示すように、入力文字「ぽ」の第１画のグループがＰ１、Ｐ２、Ｐ３、Ｐ４のノードを有する、とする。また、正解文字「ぽ」の第１画のグループがＱ１、Ｑ２、Ｑ３、Ｑ４、Ｑ５のノードを有する、とする。そして、グループ特徴判断手段１５２２は、２つの文字のグループ間で、他方のノードであり、距離が最も近いノードを、対応するノードでると決定する。図５において、グループ特徴判断手段１５２２は、Ｑ１、Ｑ２、Ｑ３、Ｑ４、Ｑ５は、それぞれ、Ｐ１、Ｐ２、Ｐ２、Ｐ３、Ｐ４に対応すると決定する。次に、グループ特徴判断手段１５２２は、対応する２点「（Ｐ１，Ｑ１）（Ｐ２，Ｑ２）（Ｐ２，Ｑ３）（Ｐ３，Ｑ４）（Ｐ４，Ｑ５）」のそれぞれの距離を算出する。そして、グループ特徴判断手段１５２２は、その距離を、数式１に代入し、評価値を算出する。次に、グループ特徴判断手段１５２２は、その評価値が閾値以上であれば、入力文字が不正解であると判断する。
【数１】
2010231529.tif 000003
【００６２】
数式１において、点Ｐｉの位置情報が（ｐｘｉ，ｐｙｉ）、点Ｑｊの位置情報が（ｑｘｊ，ｑｙｊ）である。
【００６３】
グループ特徴判断手段１５２２は、通常、ＭＰＵやメモリ等から実現され得る。グループ特徴判断手段１５２２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００６４】
特徴量取得手段１５２３は、手書き入力された文字のバランスを示す１以上の特徴量を取得する。文字のバランスとは、通常、グループ間のバランスである。また、グループ間のバランスとは１以上のグループ（文字の部分）間のバランスも含む趣旨である。
【００６５】
特徴量取得手段１５２３は、例えば、各文字を構成するグループが有するノードの位置情報から、各グループが含まれる最小の矩形の面積を、グループごとに算出する。そして、特徴量取得手段１５２３は、文字が有するノードの位置情報から、文字が含まれる最小の矩形の面積を算出する。そして、特徴量取得手段１５２３は、各グループの矩形の面積、文字の矩形の面積を用いて、各グループの、文字全体に占める面積の割合を算出する。かかる場合、特徴量は、各グループの、文字全体に占める面積の割合である。
【００６６】
また、特徴量取得手段１５２３は、例えば、手書き入力された文字の１以上のグループにより構成される文字の部分が占める面積の比率を特徴量として算出する。かかる場合、特徴量は、１以上のグループにより構成される文字の部分が占める面積の比率である。
【００６７】
また、特徴量取得手段１５２３は、例えば、手書き入力された文字の各グループ間の距離を特徴量として算出する。かかる場合、特徴量は各グループ間の距離である。
【００６８】
特徴量取得手段１５２３は、例えば、入力文字の各グループに対して、他のそれぞれのグループとの最短距離を算出する。そして、特徴量取得手段１５２３は、例えば、得た距離の和を算出する。かかる場合、特徴量は１以上のグループ間の距離の和である。
【００６９】
特徴量取得手段１５２３は、例えば、ハネなどの特定の線分の長さを取得する。かかる場合、特徴量は特定の線分の長さである。
【００７０】
特徴量取得手段１５２３は、通常、ＭＰＵやメモリ等から実現され得る。特徴量取得手段１５２３の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７１】
バランス判断手段１５２４は、特徴量取得手段１５２３が取得した１以上の特徴量を用いて、入力文字が不正解か否かを判断する。バランス判断手段１５２４は、特徴量取得手段１５２３が取得した１以上の特徴量を、判断情報に適用し、判断情報が示す条件を満たすか否かを判断する。判断情報が示す条件を満たさない場合、バランス判断手段１５２４は、入力文字が不正解であると判断する。なお、判断情報は、特徴量のみでも良く、特徴量を有する判断のためのルールや式などでも良い。判断情報は、通常、正解文字情報格納部１１の正解文字情報が有する。
【００７２】
バランス判断手段１５２４は、通常、ＭＰＵやメモリ等から実現され得る。バランス判断手段１５２４の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７３】
判断結果出力部１６は、判断部１５における判断結果を出力する。また、判断結果出力部１６は、判断部１５における判断結果、および正解の文字列、および入力文字画像を出力しても良い。なお、判断結果とは、２以上の文字を比較する場合、すべての文字が正解の場合に、正解と出力しても良い。判断結果出力部１６は、２以上の文字を比較する場合、文字ごとに判断結果を出力しても良い。ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
【００７４】
判断結果出力部１６は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。判断結果出力部１６は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００７５】
受付部１７は、正誤情報を受け付ける。正誤情報とは、判断結果の正誤に関する情報である。正誤情報は、例えば、正解か否か、特徴量、特徴量を含む判断情報などである。
【００７６】
正誤情報の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。受付部１７は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００７７】
判断情報更新部１８は、受付部１７が受け付けた正誤情報を用いて、入力文字画像に含まれる文字が不正解か否かを判断する基準を変更する。判断情報更新部１８は、受付部１７が受け付けた正誤情報を用いて、判断情報を更新する。
【００７８】
判断情報更新部１８は、通常、ＭＰＵやメモリ等から実現され得る。判断情報更新部１８の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７９】
次に、判定装置１の動作について図６のフローチャートを用いて説明する。
【００８０】
（ステップＳ６０１）文字画像読取部１０は、手書き入力された１以上の文字を読み取ったか否かを判断する。文字を読み取ればステップＳ６０２に行き、文字を読み取らなければステップＳ６０１に戻る。
【００８１】
（ステップＳ６０２）文字分割部１３は、ステップＳ６０１で読み取られた文字から文字画像を取得する。
【００８２】
（ステップＳ６０３）文字分割部１３は、ステップＳ６０２で取得した文字画像を、各文字の画像に分割する。
【００８３】
（ステップＳ６０４）点情報取得部１４は、カウンタｉに１を代入する。
【００８４】
（ステップＳ６０５）点情報取得部１４は、ステップＳ６０３で分割された文字の画像の中に、ｉ番目の文字の画像が存在するか否かを判断する。ｉ番目の文字の画像が存在すればステップＳ６０６に行き、ｉ番目の文字の画像が存在しなければステップＳ６１０に行く。
【００８５】
（ステップＳ６０６）点情報取得部１４は、点情報取得処理を行う。点情報取得処理について、図７のフローチャートを用いて説明する。
【００８６】
（ステップＳ６０７）判断部１５は、判断処理を行う。判断処理について、図８のフローチャートを用いて説明する。
【００８７】
（ステップＳ６０８）点情報取得部１４は、ステップＳ６０７における判断処理の結果が「ＯＫ」か「ＮＧ」であるかを判断する。「ＯＫ」であればステップＳ６０９に行き、「ＮＧ」であればステップＳ６１０に行く。
【００８８】
（ステップＳ６０９）点情報取得部１４は、カウンタｉを１、インクリメントする。ステップＳ６０５に戻る。
【００８９】
（ステップＳ６１０）判断結果出力部１６は、判断結果を出力する。
【００９０】
（ステップＳ６１１）判断情報更新部１８は、判断部１５が判断処理に用いる判断情報を更新するか否かを判断する。判断情報を更新する場合はステップＳ６１２に行き、判断情報を更新しない場合は処理を終了する。なお、判断情報を更新する場合とは、たとえば、処理結果がＮＧであった場合である。また、判断情報更新部１８は、判断情報を更新する場合は、判断情報を更新するための画面（パネル）を出力しても良い。
【００９１】
（ステップＳ６１２）受付部１７は、ユーザから正誤情報を受け付けたか否かを判断する。正誤情報を受け付ければステップＳ６１３に行き、正誤情報を受け付けなければステップＳ６１２に戻る。
【００９２】
（ステップＳ６１３）判断情報更新部１８は、受付部１７が受け付けた正誤情報を用いて、文字画像に含まれる文字が不正解か否かを判断する基準（ここでは、判断情報）を変更する。処理を終了する。
【００９３】
なお、図６のフローチャートにおいて、判断情報を更新する処理は必須ではない、ことは言うまでもない。
【００９４】
次に、ステップＳ６０６の点情報取得処理について、図７のフローチャートを用いて説明する。
【００９５】
（ステップＳ７０１）点情報取得部１４は、手書きの文字画像から太さを除去して、線画画像に変換する。かかる処理は公知技術である。
【００９６】
（ステップＳ７０２）点情報取得部１４は、ステップＳ７０１で得られた線画画像から線画データ（ベクター）に変換し、ベクターデータを得る。かかる処理は公知技術である。
【００９７】
（ステップＳ７０３）構造点情報取得手段１４１は、ステップＳ７０２で得られたベクターデータから、構造点を抽出する。また、特徴点情報取得手段１４２は、ステップＳ７０２で得られたベクターデータから、特徴点を抽出する。なお、構造点、特徴点の抽出方法は、上述した通りである。
【００９８】
（ステップＳ７０４）構造点情報取得手段１４１または特徴点情報取得手段１４２は、構造点または特徴点の位置情報（ここでは、座標情報（ｘ，ｙ））を取得し、記憶媒体に蓄積する。
【００９９】
（ステップＳ７０５）構造点情報取得手段１４１または特徴点情報取得手段１４２は、構造点および特徴点の接続情報を取得し、記憶媒体に蓄積する。上位処理にリターンする。
【０１００】
なお、図７のフローチャートにおいて、構造点と特徴点の抽出、位置情報の取得、および接続情報の取得をシーケンシャルに行わず、並行して行っても良い。
【０１０１】
次に、ステップＳ６０７の判断処理について、図８のフローチャートを用いて説明する。
【０１０２】
（ステップＳ８０１）判断部１５は、判断対象の入力文字に対応する正解文字の正解文字情報を、正解文字情報格納部１１から読み出す。
【０１０３】
（ステップＳ８０２）構造判断手段１５１は、構造比較処理を行う。構造比較処理について、図９のフローチャートを用いて説明する。
【０１０４】
（ステップＳ８０３）特徴判断手段１５２は、ステップＳ８０２における判断結果が「ＯＫ」であったか否かを判断する。「ＯＫ」であればステップＳ８０４に行き、「ＯＫ」でなければ上位処理にリターンする。
【０１０５】
（ステップＳ８０４）特徴判断手段１５２は、形状比較処理を行う。形状比較処理について、図１０のフローチャートを用いて説明する。
【０１０６】
（ステップＳ８０５）特徴判断手段１５２は、ステップＳ８０４における判断結果が「ＯＫ」であったか否かを判断する。「ＯＫ」であればステップＳ８０６に行き、「ＯＫ」でなければ上位処理にリターンする。
【０１０７】
（ステップＳ８０６）特徴判断手段１５２は、特徴量比較処理を行う。特徴量比較処理について、図１１のフローチャートを用いて説明する。
【０１０８】
なお、図８のフローチャートにおいて、構造比較処理を最初に行うことは好ましいが、構造比較処理と形状比較処理と特徴量比較処理の順序は問わない。
【０１０９】
次に、ステップＳ７０２の構造比較処理について、図９のフローチャートを用いて説明する。
【０１１０】
（ステップＳ９０１）構造判断手段１５１は、一文字に含まれる構造点および特徴点を、連結されている構造点または特徴点を有する１以上のグループに分割する。なお、かかるグループに分割する処理は、グループ分割手段１５２１が行っても良い。
【０１１１】
（ステップＳ９０２）構造判断手段１５１は、初期化処理を行う。初期化処理とは、カウンタｉに１を代入し、変数の判断結果に「ＯＫ」を代入する処理である。
【０１１２】
（ステップＳ９０３）構造判断手段１５１は、ｉ番目のグループが存在するか否かを判断する。ｉ番目のグループが存在すればステップＳ９０３に行き、ｉ番目のグループが存在しなければ上位処理にリターンする。
【０１１３】
（ステップＳ９０４）構造判断手段１５１は、入力文字のｉ番目のグループの構造点情報を取得する。
【０１１４】
（ステップＳ９０５）構造判断手段１５１は、正解文字のｉ番目のグループの構造点情報を取得する。
【０１１５】
（ステップＳ９０６）構造判断手段１５１は、カウンタｊに１を代入する。
【０１１６】
（ステップＳ９０７）構造判断手段１５１は、入力文字のｉ番目のグループにｊ番目の構造点が存在するか否かを判断する。ｊ番目の構造点が存在すればステップＳ９０８に行き、ｊ番目の構造点が存在しなければステップＳ９１０に行く。
【０１１７】
（ステップＳ９０８）構造判断手段１５１は、ｊ番目の構造点に対応する構造点が、正解文字情報のｉ番目のグループの中に存在するか否かを判断する。存在すればステップＳ９０９に行き、存在しなければステップＳ９１１に行く。なお、「対応する」か否かは、例えば、ｉ番目のグループの接続情報から構造点のノードのみを残し、当該残ったノードを検査することにより判断され得る。検査とは、入力文字の構造点の接続の順に、正解文字に対応する構造点が存在するか否かを判断することである。対応するか否かは、構造点の接続情報のみで判断を行うことが好適であるが、構造点の位置情報のみで判断を行っても良いし、構造点の接続情報と位置情報の両方を用いて判断を行っても良い。
【０１１８】
（ステップＳ９０９）構造判断手段１５１は、カウンタｊを１、インクリメントする。ステップＳ９０７に戻る。
【０１１９】
（ステップＳ９１０）構造判断手段１５１は、ステップＳ９０８における対応するか否かの判断において、判断の対象にならなかった構造点（余った構造点）が存在するか否かを判断する。余った構造点が存在すればステップＳ９１１に行き、余った構造点が存在しなければステップＳ９１２に行く。
【０１２０】
（ステップＳ９１１）構造判断手段１５１は、判断結果に「ＮＧ」を代入する。上位処理にリターンする。
【０１２１】
（ステップＳ９１２）構造判断手段１５１は、カウンタｉを１、インクリメントする。ステップＳ９０３に戻る。
【０１２２】
次に、ステップＳ８０４の形状比較処理について、図１０のフローチャートを用いて説明する。
【０１２３】
（ステップＳ１００１）グループ分割手段１５２１は、一文字に含まれる構造点および特徴点を、連結されている構造点または特徴点を有する１以上のグループに分割する。
【０１２４】
（ステップＳ１００２）グループ特徴判断手段１５２２は、初期化処理を行う。初期化処理とは、カウンタｉに１を代入し、変数の判断結果に「ＯＫ」を代入する処理である。
【０１２５】
（ステップＳ１００３）グループ特徴判断手段１５２２は、ｉ番目のグループが存在するか否かを判断する。ｉ番目のグループが存在すればステップＳ１００４に行き、ｉ番目のグループが存在しなければ上位処理にリターンする。
【０１２６】
（ステップＳ１００４）グループ特徴判断手段１５２２は、入力文字のｉ番目のグループの構造点情報、および特徴点情報を取得する。
【０１２７】
（ステップＳ１００５）グループ特徴判断手段１５２２は、正解文字のｉ番目のグループの構造点情報、および特徴点情報を取得する。
【０１２８】
（ステップＳ１００６）グループ特徴判断手段１５２２は、入力文字のｉ番目のグループと、正解文字のｉ番目のグループのノード数を比較し、ノード数の多い方の文字のグループを決定する。ノード数の多い方の文字のグループを基準に、以下、チェックを行う。
【０１２９】
（ステップＳ１００７）グループ特徴判断手段１５２２は、初期化処理を行う。初期化処理とは、カウンタｊに１を代入し、変数の評価値に「０」を代入する処理である。
【０１３０】
（ステップＳ１００８）グループ特徴判断手段１５２２は、基準のグループのｊ番目のノードが存在するか否かを判断する。ノードが存在すればステップＳ１００９に行き、ノードが存在しなければステップＳ１０１３に行く。
【０１３１】
（ステップＳ１００９）グループ特徴判断手段１５２２は、基準とならない他方の文字のグループのノードのうち、ｊ番目のノード（基準となる文字のノード）に対応するノードを決定し、２つのノードの組の情報を、少なくとも一時蓄積する。なお、ｊ番目のノードに対応するノードとは、例えば、ｊ番目のノードに最も距離が近いノードである。また、２つのノードの組とは、２つの文字の対応する２つのノードである。
【０１３２】
（ステップＳ１０１０）グループ特徴判断手段１５２２は、ステップＳ１００９で組とした２つのノード間の距離を算出する。グループ特徴判断手段１５２２は、２つのノードの情報が有する２つの位置情報から距離を算出する。
【０１３３】
（ステップＳ１０１１）グループ特徴判断手段１５２２は、評価値に距離を加える。なお、評価値は、最終的に、２つのノード間の距離の和となる。
【０１３４】
（ステップＳ１０１２）グループ特徴判断手段１５２２は、カウンタｊを１、インクリメントする。ステップＳ１００８に戻る。
【０１３５】
（ステップＳ１０１３）グループ特徴判断手段１５２２は、評価値が閾値より大きいか否か（「以上であるか否か」を含む）を判断する。大きければステップＳ１０１４に行き、大きくなければステップＳ１０１５に行く。
【０１３６】
（ステップＳ１０１４）グループ特徴判断手段１５２２は、判断結果に「ＮＧ」を代入する。上位処理にリターンする。
【０１３７】
（ステップＳ１０１５）グループ特徴判断手段１５２２は、カウンタｉを１、インクリメントする。ステップＳ１００３に戻る。
【０１３８】
次に、ステップＳ８０６の特徴量比較処理について、図１１のフローチャートを用いて説明する。なお、特徴量比較処理は、バランス比較処理を含む。
【０１３９】
（ステップＳ１１０１）特徴量取得手段１５２３は、入力文字の矩形の面積を取得する。入力文字の矩形の面積は、例えば、入力文字のノードがすべて含まれる矩形の面積である。
【０１４０】
（ステップＳ１１０２）特徴量取得手段１５２３は、初期化処理を行う。初期化処理とは、カウンタｉに１を代入し、判断結果に「ＯＫ」を代入する処理である。
【０１４１】
（ステップＳ１１０３）特徴量取得手段１５２３は、入力文字の中に、ｉ番目のグループが存在するか否かを判断する。ｉ番目のグループが存在すればステップＳ１１０４に行き、ｉ番目のグループが存在しなければステップＳ１１１１に行く。
【０１４２】
（ステップＳ１１０４）特徴量取得手段１５２３は、ｉ番目のグループの矩形の面積を算出する。
【０１４３】
（ステップＳ１１０５）特徴量取得手段１５２３は、文字全体の面積に対する、ｉ番目のグループの面積の比率を算出する。
【０１４４】
（ステップＳ１１０６）バランス判断手段１５２４は、ステップＳ１１０５で取得された比率が許容範囲か否かを判断する。許容範囲は、判断情報であり、例えば、正解文字情報格納部１１に格納されている。許容範囲であればステップＳ１１０７に行き、許容範囲でなければステップＳ１１１０に行く。
【０１４５】
（ステップＳ１１０７）特徴量取得手段１５２３は、ｉ番目のグループと他のグループとの距離を算出する。距離とは、ｉ番目のグループの矩形の重心と、他のグループの矩形の重心との距離でも良いし、ｉ番目のグループのノードと他のグループのノードとの距離のうち、最も近い２ノード間の距離でも良い。ここで、グループが３以上存在する場合、特徴量取得手段１５２３は、２以上の距離を算出しても良い。他のグループとは、隣接する一のグループでも良いし、隣接する１以上のグループでも良いし、他のすべてのグループでも良い。
【０１４６】
（ステップＳ１１０８）バランス判断手段１５２４は、ステップＳ１１０７で取得された１以上の距離を用いて算出される値が許容範囲か否かを判断する。許容範囲であればステップＳ１１０９に行き、許容範囲でなければステップＳ１１１０に行く。１以上の距離を用いて算出される値とは、例えば、１以上の距離の和などである。
【０１４７】
（ステップＳ１１０９）特徴量取得手段１５２３は、カウンタｉを１、インクリメントする。ステップＳ１１０３に戻る。
【０１４８】
（ステップＳ１１１０）バランス判断手段１５２４は、判断結果に「ＮＧ」を代入する。上位処理にリターンする。
【０１４９】
（ステップＳ１１１１）特徴量取得手段１５２３は、他の特徴量が存在するか否かを判断する。他の特徴量が存在すればステップＳ１１１２に行き、他の特徴量が存在しなければ上位処理にリターンする。なお、他の特徴量が存在するか否かは、例えば、正文字情報の中をチェックすることにより判断され得る。なお、他の特徴量に対応する値とは、例えば、はねの長さである。はねの長さは、通常、特定の２つの構造点間の距離である。
【０１５０】
（ステップＳ１１１２）特徴量取得手段１５２３は、他の特徴量に対応する値を、入力文字の構造点情報、または特徴点情報、または構造点情報と特徴点情報から取得する。
【０１５１】
（ステップＳ１１１３）バランス判断手段１５２４は、ステップＳ１１１２で取得した他の特徴量に対応する値が、許容範囲であるか否かを判断する。許容範囲であればステップＳ１１１１に行き、許容範囲でなければステップＳ１１１０に行く。
【０１５２】
以下、本実施の形態における判定装置の具体的な動作について説明する。
【０１５３】
今、正解文字情報格納部１１は、図１２に示す正解文字情報管理表を保持している。正解文字情報管理表は、１以上の正解文字の正解文字情報を保持している。正解文字情報は、構造点情報と特徴点情報を有する。なお、図１２において、構造点情報と特徴点情報とは、ノード位置情報および接続情報であり、区別されていない。ただし、図１２において、接続情報から、端点、分岐点、交点は判断可能であるので、構造点と特徴点は区別され得る。正解文字情報は、文字コードと、ノード位置情報と接続情報を有する。図１２の右側の文字と丸と丸の中の数字とにより構成される絵文字は、ノード位置情報と接続情報により構成される文字のイメージを示す絵文字である。図１２の右側の文字の丸は、構造点または特徴点を示す。構造点は白抜きの丸である。特徴点は網掛けの丸である。文字「か」において、ノード位置情報のＰ１は、右側の絵文字の丸１の構造点を示す。文字「か」において、ノード位置情報のＰ３は、右側の絵文字の丸３の特徴点を示す。文字は、正規化された大きさであるので、ノード位置情報は（０，１）の範囲に収まる。なお、ノード位置情報は、ノードの位置情報である。また、接続情報は、点の接続を示す情報であり、図１２のデータは一例である。また、図１２において、ノード位置情報に対応して、ノードの種類（構造点または特徴点）を示すフラグを有しても良い。接続情報は、図１３に示すような情報でも良い。図１３において、縦軸、横軸ともにノードを示し、「＊」は、対応する縦軸のノードと対応する横軸のノードが接続されていることを示す。
【０１５４】
かかる状況において、文字画像読取部１０は、ユーザが手書き入力した文字「ぽすと」を読み取った、とする。
【０１５５】
次に、文字分割部１３は、読み取られた文字「ぽすと」から文字画像を取得する。文字画像は、図２（ａ）に示したように、太さを有するビットマップである。
【０１５６】
そして、文字分割部１３は、取得した文字画像「ぽすと」を、「ぽ」「す」「と」の３つの文字の画像に分割する。
【０１５７】
次に、点情報取得部１４は、１番目の文字の画像「ぽ」に対して、以下のように点情報取得処理を行う。つまり、点情報取得部１４は、手書きの文字画像から太さを除去して、線画画像に変換する（図２（ｂ）参照）。そして、点情報取得部１４は、線画画像から線画データ（ベクター）に変換し、ベクターデータを得る。
【０１５８】
次に、構造点情報取得手段１４１は、ベクターデータの端点、分岐点、および交点を構造点と決定し、構造点の位置情報を蓄積する。
【０１５９】
次に、特徴点情報取得手段１４２は、ベクターデータの特徴点情報を取得する。つまり、特徴点情報取得手段１４２は、ベクターデータが構成するエッジ間の角度を取得し、当該角度が示す曲がりの程度が、閾値より大きい場合、エッジの交点を特徴点として検出し、当該特徴点の位置情報を蓄積する。
【０１６０】
次に、点情報取得部１４は、構造点および特徴点の接続情報を取得し、蓄積する。以上の処理により、正規化されていないグラフデータが取得できた（図２（ｃ）参照）。
【０１６１】
次に、点情報取得部１４は、正規化し、グラフデータが（０，０）（０，１）（１，１）（１，０）の矩形に収まるように、構造点および特徴点の位置情報を変換する。かかる正規化の処理は公知技術であるので、詳細な説明は省略する。以上の処理により、正規化されたグラフデータが取得できた（図２（ｄ）参照）。
【０１６２】
次に、判断部１５は、以下のような判断処理を行う。つまり、判断部１５は、判断対象の入力文字「ぽ」に対応する正解文字の正解文字情報（図１２の「ぽ」の情報）を、正解文字情報格納部１１から読み出す。
【０１６３】
次に、構造判断手段１５１は、以下のように構造比較処理を行う。つまり、構造判断手段１５１は、文字「ぽ」に含まれる構造点および特徴点を、連結されている構造点または特徴点を有する３つのグループに分割する。そして、構造判断手段１５１は、図９のフローチャートにしたがって、グループごとに、入力文字の「ぽ」の各ノードに対応するノードが、正解文字の「ぽ」のノード中に存在するか否かを判断する。
【０１６４】
そして、図９のフローチャートにしたがって、構造判断手段１５１は、入力文字の「ぽ」のすべてのノードについて、対応するノードが正解文字の「ぽ」のノード中に存在し、かつ、正解文字の「ぽ」のノード中に余ったノードが存在しない場合に、入力文字の「ぽ」が不正解でない、と判断する（図３参照）。なお、余ったノードとは、対応するノードが存在しないノードである。
【０１６５】
次に、特徴判断手段１５２は、以下のような形状比較処理を行う（図１０のフローチャートを参照のこと）。つまり、グループ分割手段１５２１は、文字「ぽ」のグループ毎に、入力文字の形状が正解文字と同じか否かを判断する。具体的には、図５に示したように、特徴判断手段１５２は、グループ毎に、入力文字を構成するノードと、正解文字を構成するノードの対応をとる。そして、特徴判断手段１５２は、入力文字のノードと正解文字のノード（対応がとれたノード）との距離を算出する。そして、特徴判断手段１５２は、１以上の距離の値を用いて、評価値を算出する。この算出式の例が上述した数式１である。
【０１６６】
そして、特徴判断手段１５２は、予め格納している閾値を読み出す。そして、特徴判断手段１５２は、評価値と閾値を比較し、入力文字の形状が、正解文字の形状と比較して、予め決められた以上の近似度を有するか否かを判断する。予め決められた以上の近似度を有しなければ入力文字を不正解である、と判断する。
【０１６７】
以上の処理を全グループに対して行い、一つのグループでも、予め決められた以上の近似度を有しなければ、入力文字を不正解である、と判断する。
【０１６８】
次に、特徴量取得手段１５２３、およびバランス判断手段１５２４は、特徴量比較処理を行う。
【０１６９】
以上の処理を２番目の文字「す」、３番目の文字「と」に対しても行い、３つの文字、すべてが不正解でない場合に、入力文字は正解である、と判断される。
【０１７０】
そして、判断結果出力部１６は、判断結果を出力する。判断結果の出力態様は問わない。
【０１７１】
次に、特徴量比較処理の具体例について説明する。まず、正解文字情報格納部１１は、図１４に示す正解文字情報管理表を保持している。正解文字情報管理表は、１以上の正解文字の正解文字情報を保持している。正解文字情報は、文字コードと、ノード位置情報と接続情報と特徴量を有する。ここでは、文字は「奈」であり、正解文字情報は、２つの特徴量を有する。
【０１７２】
図１４において、特徴量（１）「５＜＝Ｐ１５−Ｐ１６」は、漢字「奈」の下側のハネが５ピクセル以上であることを示す。図１４の特徴量（１）に対応するコメント「ハネが不十分」は、特徴量（１）が適用されて、文字が不正解であると判断された場合に出力されるコメントである。
【０１７３】
図１４の特徴量（２）「０．８＜＝Ａ／Ｂ＜＝１．２」は、漢字「奈」の上部「大」と、下部「示」の比率が０．８以上、１．２以下であることを示す。なお、図１４の特徴量（２）の「Ａ（Ｐ１−Ｐ４−・・・）」は、漢字「奈」の上部「大」を示す。図１４の特徴量（２）の「Ｂ（Ｐ１０−Ｐ１１，Ｐ１２−・・・）」は、漢字「奈」の下部「示」を示す。図１４の特徴量（２）に対応するコメント「バランスが悪い」は、特徴量（２）が適用されて、文字が不正解であると判断された場合に出力されるコメントである。
【０１７４】
なお、特徴量の定義方法は、上記に限られないことは言うまでもない。
【０１７５】
かかる状況において、多数の被験者に対して漢字テストを実施する、とする。そして、多数の受講生が漢字「奈良」を紙に記載し、文字画像読取部１０は、かかる紙を読み取って、文字画像を取得した、とする。
【０１７６】
次に、文字分割部１３は、取得した文字画像を分割しようとし、漢字「奈」と「良」を取得した、とする。
【０１７７】
次に、点情報取得部１４は、１番目の文字の画像「奈」に対して、上述したような点情報取得処理を行う。次に、構造判断手段１５１は、１番目の文字の画像「奈」に対して、上述したような構造比較処理を行う。さらに、特徴判断手段１５２は、１番目の文字の画像「奈」に対して、上述したような形状比較処理を行った、とする。
【０１７８】
そして、次に、特徴量取得手段１５２３およびバランス判断手段１５２４は、以下のように特徴量比較処理を行う。
【０１７９】
まず、バランス判断手段１５２４は、正解文字情報格納部１１から、漢字「奈」の特徴量（１）、および特徴量（２）を読み出す。
【０１８０】
次に、特徴量取得手段１５２３は、特徴量（１）の「Ｐ１５−Ｐ１６」から、入力文字のハネの長さ（「Ｐ１５−Ｐ１６」の距離）を取得する。そして、バランス判断手段１５２４は、特徴量取得手段１５２３が取得したハネの長さが５ピクセル以上であるか否かを判断する。５ピクセル未満であれば、バランス判断手段１５２４は、入力文字を不正解、とする。
【０１８１】
そして、判断結果出力部１６は、図１５（ａ）のような判断結果を出力する。図１５（ａ）は、特徴量（１）の「５＜＝Ｐ１５−Ｐ１６」を満たさない不正解の文字を出力している。そして、図１５（ａ）のハネの部分の丸は、判断結果出力部１６が「Ｐ１５−Ｐ１６」から、構造点Ｐ１５、Ｐ１６が中に含まれる丸を描画したもの、とする。
【０１８２】
そして、判断結果出力部１６は、図１５（ｂ）のような、判断情報更新画面を出力する。判断情報更新画面は、ここでは、ハネの長さの条件（判断情報）を変更するための画面である。そして、ユーザは、図１５（ｂ）の判断情報更新画面に対して、キーボード等の入力手段を用いて、「５ピクセル以上」を「３ピクセル以上」に変更し、「更新」ボタンを押下した、とする。すると、受付部１７は、正誤情報「３」を受け付ける。そして、判断情報更新部１８は、受付部１７が受け付けた正誤情報「３」から、判断情報「３＜＝Ｐ１５−Ｐ１６」を構成し、図１４の判断情報を変更する。
【０１８３】
次に、ユーザは、図１５（ｂ）の「シミュレーション」ボタンを押下した、とする。すると、特徴量取得手段１５２３、およびバランス判断手段１５２４は、上述したアルゴリズムにより、採点対象の各文字が、特徴量（１）の判断情報「３＜＝Ｐ１５−Ｐ１６」を満たすか否かを判断する。そして、判断結果出力部１６は、図１６に示すような判断結果（シミュレーション画面）を出力する。図１６の判断結果において、○は、判断情報を「３＜＝Ｐ１５−Ｐ１６」に変更したことによって、正解となった文字を示す。図１６の判断結果において、×は、判断情報を「３＜＝Ｐ１５−Ｐ１６」に変更した場合でも、不正解である文字を示す。図１６に示すように、シミュレーションを行うことにより、ユーザは、適正な判断情報を得ることができる。
【０１８４】
次に、特徴量取得手段１５２３が取得したハネの長さが３ピクセル以上である場合、特徴量取得手段１５２３は、特徴量（２）の「Ａ＝（Ｐ１−Ｐ４・・・）」から、「奈」の上部の「大」の矩形の面積（Ａ）を取得する。次に、特徴量取得手段１５２３は、特徴量（２）の「Ｂ＝（Ｐ１０−Ｐ１１，Ｐ１２―・・・）」から、「奈」の下部の「示」の矩形の面積（Ｂ）を取得する。そして、特徴量取得手段１５２３は、比率（Ａ／Ｂ）を算出する。
【０１８５】
そして、バランス判断手段１５２４は、比率（Ａ／Ｂ）が「０．８＜＝Ａ／Ｂ＜＝１．２」を満たすか否かを判断する。満たさない場合、バランス判断手段１５２４は、入力文字を不正解、とする。
【０１８６】
そして、判断結果出力部１６は、図１７（ａ）のような判断結果を出力する。図１７（ａ）は、特徴量（２）の判断情報を満たさない不正解の文字を出力している。
【０１８７】
そして、判断結果出力部１６は、図１７（ｂ）のような、判断情報更新画面を出力する。判断情報更新画面は、ここでは、比率（Ａ／Ｂ）に関する判断情報を変更するための画面である。そして、ユーザは、図１７（ｂ）の判断情報更新画面に対して、キーボード等の入力手段を用いて、「比率  ０．８以上１．２以下」を「比率  ０．７以上１．４以下」に変更し、「更新」ボタンを押下した、とする。すると、受付部１７は、正誤情報「０．７以上１．４以下」を受け付ける。そして、判断情報更新部１８は、受付部１７が受け付けた正誤情報「０．７以上１．４以下」から、判断情報「０．７＜＝Ａ／Ｂ＜＝１．４」を構成し、図１４の判断情報を変更する。
【０１８８】
次に、ユーザは、図１７（ｂ）の「シミュレーション」ボタンを押下した、とする。すると、特徴量取得手段１５２３、およびバランス判断手段１５２４は、上述したアルゴリズムにより、採点対象の各文字が、特徴量（２）の判断情報「０．７＜＝Ａ／Ｂ＜＝１．４」を満たすか否かを判断する。そして、判断結果出力部１６は、図１８に示すような判断結果（シミュレーション画面）を出力する。図１８の判断結果において、○は、判断情報を「０．７＜＝Ａ／Ｂ＜＝１．４」に変更したことによって、正解となった文字を示す。図１８の判断結果において、×は、判断情報を「０．７＜＝Ａ／Ｂ＜＝１．４」に変更した場合でも、不正解である文字を示す。図１８に示すように、シミュレーションを行うことにより、ユーザは、適正な判断情報を得ることができる。
【０１８９】
以上、本実施の形態によれば、文字の正誤判断が適切にできる。特に、本実施の形態によれば、入力文字から構造点および特徴点を抽出し、構造点の情報と特徴点の情報とを、異なる用い方をする（異なるアルゴリズムを適用する）ことにより、文字の正誤判断が適切にできる。
【０１９０】
また、本実施の形態によれば、まず、判定装置１は、構造点を用いて構造比較し、次に、構造点および特徴点を用いて特徴比較を行った。そのため、異なる文字の判断が高速に、かつ、精度高くできた。
【０１９１】
また、本実施の形態によれば、判定装置１は、構造点および特徴点を用いて、各グループの形状、および特徴をチェックした。そのため、精度高く、文字の正誤判断が可能となった。
【０１９２】
また、本実施の形態によれば、判定装置１は、さらに、特徴量をも用いて、文字の特徴的なポイント（ハネやバランスなど）をチェックした。そのため、非常に精度高く、文字の正誤判断が可能となった。
【０１９３】
さらに、本実施の形態によれば、判定装置１は、採点された１以上の入力文字を見ながら、特徴量（または判断情報）を変更し、シミュレーションできた。そのため、ユーザは、実際に入力された文字を見ながら、適切な特徴量（または判断情報）を設定できる。
【０１９４】
なお、本実施の形態において、判定装置１は、文字の正誤判断の際に、構造点のみを抽出して、構造点のみを用いて、正誤判断を行っても良い。かかる場合、非常に高速に正誤判断が可能である。
【０１９５】
また、本実施の形態によれば、特徴量（または判断情報）は、主として、ハネまたは文字の部分間の比率であった。しかし、他の特徴量（または判断情報）を適用しても良いことは言うまでもない。他の特徴量（または判断情報）とは、例えば、文字の部分間の距離である。なお、文字の部分とは、１以上のグループである。また、比率は、面積の比でなくとも良い。比率は、文字の部分の矩形の対角線の長さの比でも良い。
【０１９６】
また、本実施の形態において、文字は漢字であることが好適であるが、漢字であるとは問わない。また、本実施の形態において、文字は、一般的な文字に限らず、絵文字などでも良い。さらに、本実施の形態において、文字は、構造点または／および特徴点が取り出されることができる図形などでも良い。
【０１９７】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記録媒体に、正解の文字を示す正解文字情報であり、文字の骨格を構成する端点または分岐点または交点である構造点の情報である構造点情報を含む１以上の正解文字情報と、手書き入力された１以上の文字を含む画像である文字画像とを格納しており、コンピュータを、前記記録媒体に格納されている文字画像に含まれる各文字に対して、１以上の構造点を検出し、当該構造点の情報である構造点情報を、1以上取得する点情報取得部と、前記文字画像に含まれる文字に対応する正解文字情報に含まれる構造点情報と、前記点情報取得部が取得した構造点情報とを比較し、文字画像に含まれる文字が不正解か否かを判断する判断部と、前記判断部における判断結果を出力する判断結果出力部として機能させるためのプログラム、である。
【０１９８】
また、上記プログラムにおいて、コンピュータを、前記記録媒体に格納されている文字画像に含まれる２以上の文字から、各文字を切り出す文字分割部としてさらに機能させ、前記点情報取得部は、前記文字分割部が切り出した文字に対して、１以上の構造点を検出し、1以上の構造点情報を取得するものとして、コンピュータを機能させることは好適である。
【０１９９】
また、上記プログラムにおいて、前記正解文字情報は、文字の骨格を構成する端点または分岐点または交点である構造点の情報である構造点情報と、２つの構造点を結ぶ線であるエッジ上の点であり、閾値より曲がりの程度の大きい点である特徴点の情報である特徴点情報とを有し、前記点情報取得部は、前記文字画像格納部に格納されている文字画像に含まれる各文字に対して、1以上の構造点情報を取得する構造点情報取得手段と、前記文字画像格納部に格納されている文字画像に含まれる各文字に対して、1以上の特徴点情報を取得する特徴点情報取得手段とを具備し、前記判断部は、構造点情報と特徴点情報を異なる用い方により、前記構造点情報取得手段が取得した１以上の構造点情報および前記特徴点情報取得手段が取得した１以上の特徴点情報と、前記正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、文字画像に含まれる文字が不正解か否かを判断するものとして、コンピュータを機能させることは好適である。
【０２００】
また、上記プログラムにおいて、前記判断部は、前記構造点情報取得手段が取得した１以上の構造点情報と、前記正解文字情報に含まれる１以上の構造点情報を比較し、文字画像に含まれる文字が不正解か否かを判断する構造判断手段と、前記構造判断手段が文字画像に含まれる文字が不正解でないと判断した文字に対して、前記構造点情報取得手段が取得した１以上の構造点情報および前記特徴点情報取得手段が取得した１以上の特徴点情報と、前記正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、前記文字が不正解か否かを判断する特徴判断手段とを具備するものとして、コンピュータを機能させることは好適である。
【０２０１】
また、上記プログラムにおいて、前記特徴判断手段は、一文字に含まれる構造点および特徴点を、連結されている構造点または特徴点を有する１以上のグループに分割するグループ分割手段と、各グループごとに、前記構造点情報取得手段が取得した１以上の構造点情報および前記特徴点情報取得手段が取得した１以上の特徴点情報と、前記正解文字情報に含まれる１以上の構造点情報および１以上の特徴点情報とを比較し、前記文字が不正解か否かを判断するグループ特徴判断手段と、手書き入力された文字の各グループ間のバランスを示す１以上の特徴量と、正解の文字の各グループの１以上の特徴量とを取得する特徴量取得手段と、前記特徴量取得手段が取得した、手書き入力された文字の各グループの１以上の特徴量と正解の文字の各グループの１以上の特徴量とを比較し、前記文字が不正解か否かを判断するバランス判断手段とを具備するものとして、コンピュータを機能させることは好適である。
【０２０２】
また、上記プログラムにおいて、前記グループ特徴判断手段は、各グループごとに、前記構造点情報取得手段が取得した１以上の構造点情報および前記特徴点情報取得手段が取得した１以上の特徴点情報が示す各点に対応する点であり、前記正解文字情報に含まれる１以上の構造点情報または１以上の特徴点情報のうちのいずれかが示す点の情報である対応点情報を取得し、前記１以上の構造点情報および前記１以上の特徴点情報の各々が示す各点と、各対応点情報が示す各点との距離を算出し、前記距離の絶対値の和を算出し、当該距離の絶対値の和が閾値以上または閾値より大きい場合に、前記文字が不正解であると判断するものとして、コンピュータを機能させることは好適である。
【０２０３】
また、上記プログラムにおいて、前記バランス判断手段は、手書き入力された文字の各グループが占める面積の比率を特徴量として算出し、かつ正解の文字の各グループが占める面積の比率を特徴量として算出し、当該特徴量とを比較し、前記文字が不正解か否かを判断するものとして、コンピュータを機能させることは好適である。
【０２０４】
また、上記プログラムにおいて、前記バランス判断手段は、手書き入力された文字の各グループ間の距離を特徴量として算出し、かつ正解の文字の各グループ間の距離を特徴量として算出し、当該特徴量とを比較し、前記文字が不正解か否かを判断するものとして、コンピュータを機能させることは好適である。
【０２０５】
また、上記プログラムにおいて、前記判断結果出力部は、前記判断部における判断結果、および正解の文字、および前記文字画像を出力し、判断結果の正誤に関する情報である正誤情報を受け付ける受付部をさらに具備し、前記判断部は、前記正誤情報を用いて、文字画像に含まれる文字が不正解か否かを判断する基準を変更するものとして、コンピュータを機能させることは好適である。
【０２０６】
また、図１９は、本明細書で述べたプログラムを実行して、上述した実施の形態の判定装置等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図１９は、このコンピュータシステム３４０の概観図であり、図２０は、コンピュータシステム３４０のブロック図である。
【０２０７】
図１９において、コンピュータシステム３４０は、ＦＤドライブ、ＣＤ−ＲＯＭドライブを含むコンピュータ３４１と、キーボード３４２と、マウス３４３と、モニタ３４４とを含む。
【０２０８】
図２０において、コンピュータ３４１は、ＦＤドライブ３４１１、ＣＤ−ＲＯＭドライブ３４１２に加えて、ＭＰＵ３４１３と、ＣＤ−ＲＯＭドライブ３４１２及びＦＤドライブ３４１１に接続されたバス３４１４と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ３４１５とに接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのＲＡＭ３４１６と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク３４１７とを含む。ここでは、図示しないが、コンピュータ３４１は、さらに、ＬＡＮへの接続を提供するネットワークカードを含んでも良い。
【０２０９】
コンピュータシステム３４０に、上述した実施の形態の判定装置等の機能を実行させるプログラムは、ＣＤ−ＲＯＭ３５０１、またはＦＤ３５０２に記憶されて、ＣＤ−ＲＯＭドライブ３４１２またはＦＤドライブ３４１１に挿入され、さらにハードディスク３４１７に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ３４１に送信され、ハードディスク３４１７に記憶されても良い。プログラムは実行の際にＲＡＭ３４１６にロードされる。プログラムは、ＣＤ−ＲＯＭ３５０１、ＦＤ３５０２またはネットワークから直接、ロードされても良い。
【０２１０】
プログラムは、コンピュータ３４１に、上述した実施の形態の判定装置等の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム３４０がどのように動作するかは周知であり、詳細な説明は省略する。
【０２１１】
なお、上記プログラムにおいて、ハードウェアによって行われる処理、例えば、モデムやインターフェースカードなどで行われる処理（ハードウェアでしか行われない処理）は含まれない。
【０２１２】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０２１３】
また、上記各実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０２１４】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０２１５】
以上のように、本発明にかかる判定装置は、文字の正誤判断が適切にできる、という効果を有し、例えば、漢字の正誤の判定装置等として有用である。
【符号の説明】
【０２１６】
１  判定装置
１０  文字画像読取部
１１  正解文字情報格納部
１２  文字画像格納部
１３  文字分割部
１４  点情報取得部
１５  判断部
１６  判断結果出力部
１７  受付部
１８  判断情報更新部
１４１  構造点情報取得手段
１４２  特徴点情報取得手段
１５１  構造判断手段
１５２  特徴判断手段
１５２１  グループ分割手段
１５２２  グループ特徴判断手段
１５２３  特徴量取得手段
１５２４  バランス判断手段
【図１】
2010231529.tif 000004
【図６】
2010231529.tif 000005
【図７】
2010231529.tif 000006
【図８】
2010231529.tif 000007
【図９】
2010231529.tif 000008
【図１０】
2010231529.tif 000009
【図１１】
2010231529.tif 000010
【図１２】
2010231529.tif 000011
【図１４】
2010231529.tif 000012
【図１９】
2010231529.tif 000013
【図２０】
2010231529.tif 000014
【図２】
2010231529.tif 000015
【図３】
2010231529.tif 000016
【図４】
2010231529.tif 000017
【図５】
2010231529.tif 000018
【図１３】
2010231529.tif 000019
【図１５】
2010231529.tif 000020
【図１６】
2010231529.tif 000021
【図１７】
2010231529.tif 000022
【図１８】
2010231529.tif 000023