(57)【要約】【課題】ストロークが属するクラスに関する特徴量に、ストロークに固有の特徴量を用いることができる特徴算出装置、方法及びプログラムを提供する。【解決手段】実施形態の特徴算出装置は、取得部と、第１算出部と、抽出部と、第２算出部と、統合部と、を備える。取得部は、ユーザが手書きした複数のストロークを取得する。第１算出部は、ストローク毎に、当該ストロークの特徴に関するストローク特徴量を算出する。抽出部は、ストローク毎に、複数のストロークから当該ストロークの周囲に存在する１以上の周辺ストロークを抽出する。第２算出部は、ストローク毎に、当該ストロークと１以上の周辺ストロークとの組合せの特徴に関する組合せ特徴量を算出する。統合部は、ストローク毎に、ストローク特徴量と組合せ特徴量とを統合した統合特徴量を生成する。【選択図】図１
2015099566.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが手書きした複数のストロークを取得する取得部と、
前記ストローク毎に、当該ストロークの特徴に関するストローク特徴量を算出する第１算出部と、
前記ストローク毎に、前記複数のストロークから当該ストロークの周囲に存在する１以上の周辺ストロークを抽出する抽出部と、
前記ストローク毎に、当該ストロークと前記１以上の周辺ストロークとの組合せの特徴に関する組合せ特徴量を算出する第２算出部と、
前記ストローク毎に、前記ストローク特徴量と前記組合せ特徴量とを統合した統合特徴量を生成する統合部と、
を備える特徴算出装置。
【請求項２】
前記組合せ特徴量は、前記ストロークと前記１以上の周辺ストロークの少なくともいずれかとの関係を示す第１特徴量を含む請求項１に記載の特徴算出装置。
【請求項３】
前記第１特徴量は、前記ストロークと前記１以上の周辺ストロークの少なくともいずれかとの形状の類似度、及び前記ストロークと前記１以上の周辺ストロークの少なくともいずれかとの位置関係を特定する特定値の少なくとも一方である請求項２に記載の特徴算出装置。
【請求項４】
前記形状の類似度は、前記ストロークと前記１以上の周辺ストロークの少なくともいずれかとの長さ、曲率総和、主成分方向、外接矩形面積、外接矩形長、外接矩形縦横比、始点・終点距離、方向密度ヒストグラム、及び屈曲点数の少なくともいずれかの類似度である請求項３に記載の特徴算出装置。
【請求項５】
前記特定値は、前記ストロークと前記１以上の周辺ストロークの少なくともいずれかとの外接矩形の重なり率、重心距離、重心距離の方向、端点距離、端点距離の方向、及び交差点数の少なくともいずれかである請求項３に記載の特徴算出装置。
【請求項６】
前記組合せ特徴量は、前記ストロークの形状に関する特徴量と前記１以上の周辺ストロークそれぞれの形状に関する特徴量との総和である総和値を用いた第２特徴量を含む請求項１に記載の特徴算出装置。
【請求項７】
前記第２特徴量は、前記組合せの外接矩形長に対する前記ストロークの長さと前記１以上の周辺ストロークそれぞれの長さとの総和の比、前記ストローク及び前記１以上の周辺ストロークの方向密度ヒストグラムの総和値、及び前記組合せの外接矩形面積に対する前記ストロークの外接矩形面積と前記１以上の周辺ストロークそれぞれの外接矩形面積との総和の比の少なくともいずれかである請求項６に記載の特徴算出装置。
【請求項８】
前記１以上の周辺ストロークは、前記複数のストロークのうち前記ストロークとの距離が所定距離内の１以上のストロークである請求項１に記載の特徴算出装置。
【請求項９】
前記距離は、空間的距離及び時系列的距離の少なくとも一方である請求項８に記載の特徴算出装置。
【請求項１０】
前記抽出部は、前記距離が空間的距離の場合、前記ストロークを包含するウィンドウを生成し、前記１以上の周辺ストロークとして、前記複数のストロークのうち前記ウィンドウに含まれる１以上のストロークを抽出する請求項９に記載の特徴算出装置。
【請求項１１】
前記抽出部は、前記ストロークのサイズ、前記ストロークが存在するページのサイズ、又は前記複数のストロークの外接矩形の合計サイズに基づいて、前記ウィンドウのサイズを決定する請求項１０に記載の特徴算出装置。
【請求項１２】
前記抽出部は、領域基準、空間的距離基準、又は時系列的距離に基づいて、前記複数のストロークをグループ化し、前記１以上の周辺ストロークとして、前記ストロークが含まれるグループのストロークを抽出する請求項１に記載の特徴算出装置。
【請求項１３】
前記１以上の周辺ストロークは、前記複数のストロークのうち前記ストロークとの距離が所定距離内、かつ前記ストロークとの形状の類似度が閾値以上の１以上のストロークである請求項１に記載の特徴算出装置。
【請求項１４】
前記ストローク特徴量は、前記ストロークの形状に関する特徴量である請求項１に記載の特徴算出装置。
【請求項１５】
前記ストローク毎に、前記統合特徴量を用いて、当該ストロークが属するクラスを識別する識別部を更に備える請求項１に記載の特徴算出装置。
【請求項１６】
前記クラスは、文字、図、表、絵、及びその他の少なくともいずれかである請求項１５に記載の特徴算出装置。
【請求項１７】
前記ストローク毎に、前記統合特徴量を用いて、当該ストロークが属するクラスを学習する学習部を更に備える請求項１に記載の特徴算出装置。
【請求項１８】
前記抽出部は、前記ストローク毎に、前記複数のストロークから当該ストロークの周囲に存在する１以上の周辺ストロークを抽出するとともに当該ストロークの周囲に存在する文書情報を抽出し、
前記組合せ特徴量は、前記ストローク、前記１以上の周辺ストローク、及び前記文書情報の組合せの特徴に関する特徴量である請求項１に記載の特徴算出装置。
【請求項１９】
ユーザが手書きした複数のストロークを取得する取得ステップと、
前記ストローク毎に、当該ストロークの特徴に関するストローク特徴量を算出する第１算出ステップと、
前記ストローク毎に、前記複数のストロークから当該ストロークの周囲に存在する１以上の周辺ストロークを抽出する抽出ステップと、
前記ストローク毎に、当該ストロークと前記１以上の周辺ストロークとの組合せの特徴に関する組合せ特徴量を算出する第２算出ステップと、
前記ストローク毎に、前記ストローク特徴量と前記組合せ特徴量とを統合した統合特徴量を生成する統合ステップと、
を含む特徴算出方法。
【請求項２０】
ユーザが手書きした複数のストロークを取得する取得ステップと、
前記ストローク毎に、当該ストロークの特徴に関するストローク特徴量を算出する第１算出ステップと、
前記ストローク毎に、前記複数のストロークから当該ストロークの周囲に存在する１以上の周辺ストロークを抽出する抽出ステップと、
前記ストローク毎に、当該ストロークと前記１以上の周辺ストロークとの組合せの特徴に関する組合せ特徴量を算出する第２算出ステップと、
前記ストローク毎に、前記ストローク特徴量と前記組合せ特徴量とを統合した統合特徴量を生成する統合ステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、特徴算出装置、方法及びプログラムに関する。
【背景技術】
【０００２】
ユーザが手書きすることで順次入力されるストロークの集合を空間的又は時間的まとまりで構造化し、構造化した構造単位で、当該構造に帰属するストロークが属するクラス（例えば、文字を構成する文字ストロークであるか図形などの非文字を構成する非文字ストロークであるかなど）を識別する技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４７４５７５８号公報
【非特許文献】
【０００４】
【非特許文献１】Akshay  Bhat,  Tracy  Hammond:  “Using  entropy  to  distinguish  shape  versus  text  in  hand-drawn  diagrams”,  IJCAI'09  Proceedings  of  the  21st  international  jont  conference  on  Artifical  intelligence,  2009.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したような従来技術では、ストロークが属するクラスの識別に、当該ストロークが帰属する構造の特徴を利用しており、当該ストロークに固有の特徴を利用しているわけではない。
【０００６】
本発明が解決しようとする課題は、ストロークが属するクラスに関する特徴量に、ストロークに固有の特徴量を用いることができる特徴算出装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００７】
実施形態の特徴算出装置は、取得部と、第１算出部と、抽出部と、第２算出部と、統合部と、を備える。取得部は、ユーザが手書きした複数のストロークを取得する。第１算出部は、前記ストローク毎に、当該ストロークの特徴に関するストローク特徴量を算出する。抽出部は、前記ストローク毎に、前記複数のストロークから当該ストロークの周囲に存在する１以上の周辺ストロークを抽出する。第２算出部は、前記ストローク毎に、当該ストロークと前記１以上の周辺ストロークとの組合せの特徴に関する組合せ特徴量を算出する。統合部は、前記ストローク毎に、前記ストローク特徴量と前記組合せ特徴量とを統合した統合特徴量を生成する。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態の特徴算出装置の例を示す構成図。
【図２】第１実施形態のストローク特徴量の例の説明図。
【図３】第１実施形態のストロークの方向密度ヒストグラムの例を示す図。
【図４】第１実施形態のウィンドウを用いたストローク抽出手法の例の説明図。
【図５】第１実施形態のウィンドウを用いたストローク抽出手法の例の説明図。
【図６】第１実施形態のウィンドウの形状及びサイズの例の説明図。
【図７】第１実施形態のウィンドウの形状及びサイズの例の説明図。
【図８】第１実施形態のウィンドウの形状及びサイズの例の説明図。
【図９】第１実施形態のウィンドウの形状及びサイズの例の説明図。
【図１０】第１実施形態のフィルタリング手法の例の説明図。
【図１１】第１実施形態のフィルタリング手法の例の説明図。
【図１２】第１実施形態の形状の類似度の算出手法の例の説明図。
【図１３】第１実施形態の形状の類似度の算出手法の例の説明図。
【図１４】第１実施形態の特定値の例の説明図。
【図１５】第１実施形態の識別処理例を示すフローチャート図。
【図１６】第２実施形態の特徴算出装置の例を示す構成図。
【図１７】第２実施形態の学習処理例を示すフローチャート図。
【図１８】第３実施形態の特徴算出装置の例を示す構成図。
【図１９】第４実施形態の特徴算出装置の例を示す構成図。
【図２０】各実施形態及び変形例の特徴算出装置のハードウェア構成例を示す図。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら、実施形態を詳細に説明する。
【００１０】
（第１実施形態）
図１は、第１実施形態の特徴算出装置１０の一例を示す構成図である。図１に示すように、特徴算出装置１０は、入力部１１と、取得部１３と、ストローク記憶部１５と、第１算出部１７と、抽出部１９と、第２算出部２１と、統合部２３と、辞書データ記憶部２５と、識別部２７と、出力部２９とを、備える。
【００１１】
入力部１１は、例えば、タッチパネル、タッチパッド、マウス、及び電子ペンなどの手書き入力可能な入力装置により実現できる。取得部１３、第１算出部１７、抽出部１９、第２算出部２１、統合部２３、識別部２７、及び出力部２９は、例えば、ＣＰＵ（Central  Processing  Unit）などの処理装置にプログラムを実行させること、即ち、ソフトウェアにより実現してもよいし、ＩＣ（Integrated  Circuit）などのハードウェアにより実現してもよいし、ソフトウェア及びハードウェアを併用して実現してもよい。ストローク記憶部１５及び辞書データ記憶部２５は、例えば、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、メモリカード、光ディスク、ＲＯＭ（Read  Only  Memory）、及びＲＡＭ（Random  Access  Memory）などの磁気的、光学的、又は電気的に記憶可能な記憶装置により実現できる。
【００１２】
入力部１１は、ユーザが手書きしたストロークを特徴算出装置１０に順次入力することで、複数のストロークを特徴算出装置１０に入力する。複数のストロークは、例えば、ユーザが手書きした文字や非文字（例えば、図形等）などのデータである手書きデータが該当する。
【００１３】
第１実施形態では、入力部１１はタッチパネルであり、ユーザがスタイラスペンや指を用いてタッチパネル上で文字や図形を手書きすることにより、複数のストロークを入力することを想定しているが、これに限定されるものではない。例えば、入力部１１をタッチパッド、マウス、及び電子ペンなどで実現してもよい。
【００１４】
ストロークは、ユーザが手書した文字や図形などの１画、即ち、スタイラスペンや指がタッチパネルの入力面に接してから離れるまで（ペンダウンからペンアップまで）の軌跡を示すデータであり、例えば、スタイラスペンや指と入力面との接点の時系列の座標値として表すことができる。
【００１５】
例えば、複数のストロークが第１ストローク〜第３ストロークである場合、第１ストロークは｛（ｘ（１，１），ｙ（１，１））、（ｘ（１，２），ｙ（１，２））、…、（ｘ（１，Ｎ（１）），ｙ（１，Ｎ（１）））｝、第２ストロークは｛（ｘ（２，１），ｙ（２，１））、（ｘ（２，２），ｙ（２，２））、…、（ｘ（２，Ｎ（２）），ｙ（２，Ｎ（２）））｝、第３ストロークは｛（ｘ（３，１），ｙ（３，１））、（ｘ（３，２），ｙ（３，２））、…、（ｘ（３，Ｎ（３）），ｙ（３，Ｎ（３）））｝と表すことができる。Ｎ（ｉ）は、第ｉストロークのサンプリング時のサンプリング点数を示す。
【００１６】
なお、入力部１１は、複数のストロークが記述されるページ（タッチパネルの表示面に表示されたページ）のページ情報を、複数のストロークそれぞれに付与して特徴算出装置１０に入力してもよい。ページ情報は、例えば、ページを識別するページ識別情報などが該当する。
【００１７】
取得部１３は、入力部１１から入力された複数のストロークを取得し、ストローク記憶部１５に記憶する。
【００１８】
第１算出部１７は、取得部１３により取得されたストローク毎（ストローク記憶部１５に記憶されたストローク毎）に、当該ストロークの特徴に関するストローク特徴量を算出する。例えば、第１算出部１７は、特徴算出装置１０が有する図示せぬアプリケーションなどにより、統合特徴量算出命令が発行されると、ストローク記憶部１５に記憶された複数のストロークを順次取得し、ストローク毎にストローク特徴量を算出する。なお、ストローク記憶部１５に記憶されたストロークにページ情報が付与されている場合、アプリケーションは、ページ単位で統合特徴量算出命令を発行することが可能である。
【００１９】
ストローク特徴量は、詳細には、ストロークの形状に関する特徴量であり、例えば、長さ、曲率総和、主成分方向、外接矩形面積、外接矩形長、外接矩形縦横比、始点・終点距離、方向密度ヒストグラム、及び屈曲点数などの少なくともいずれかが挙げられる。
【００２０】
図２は、第１実施形態のストローク特徴量の一例の説明図である。図２では、ストローク５０の形状を例にとり、ストローク５０のストローク特徴量を説明する。なお、ストローク５０は、単一（一画）のストロークである。
【００２１】
長さは、ストローク５０の場合、ストローク５０の長さである。曲率総和は、ストローク５０の場合、ストローク５０の曲率の総和である。主成分方向は、ストローク５０の場合、方向５１である。外接矩形面積は、ストローク５０の場合、外接矩形５２の面積である。外接矩形長は、ストローク５０の場合、外接矩形５２の長さである。外接矩形縦横比は、ストローク５０の場合、外接矩形５２の縦横比である。始点・終点距離は、ストローク５０の場合、始点５３から終点５４の直線距離である。屈曲点数は、ストローク５０の場合、屈曲点５５〜５８の数、即ち、４点である。方向密度ヒストグラムは、ストローク５０の場合、図３に示すヒストグラムである。
【００２２】
第１実施形態では、第１算出部１７は、取得部１３により取得されたストローク毎に、当該ストロークの形状の１以上の特徴量を算出し、算出した１以上の特徴量を並べた特徴量ベクトルをストローク特徴量とするものとするが、これに限定されるものではない。
【００２３】
なお第１算出部１７は、ストローク特徴量を算出する前に、ストロークを一定の座標の数で表現するようにリサンプリングしてもよい。また第１算出部１７は、ストロークを分割し、分割したストロークの各々について、ストローク特徴量を算出してもよい。ストロークの分割には、例えば、屈曲点などを利用すればよい。
【００２４】
また第１算出部１７は、算出したストローク特徴量を正規化してもよい。例えば、第１算出部１７は、ストローク特徴量として長さを算出している場合、算出した複数のストロークの長さのうちの最大値又は中央値などで、複数のストロークそれぞれの長さを除算し、ストローク特徴量を正規化してもよい。なお、この正規化手法は、長さ以外のストローク特徴量の正規化にも適用できる。また例えば、第１算出部１７は、ストローク特徴量として外接矩形面積を算出している場合、算出した複数のストロークの外接矩形面積の総和を算出し、算出した外接矩形面積の総和を外接矩形面積（ストローク特徴量）の正規化に用いてもよい。なお、この正規化手法は、外接矩形面積だけでなく、外接矩形長や外接矩形縦横比などの正規化にも適用できる。
【００２５】
抽出部１９は、取得部１３により取得されたストローク毎（ストローク記憶部１５に記憶されたストローク毎）に、取得部１３により取得された複数のストローク（ストローク記憶部１５に記憶された複数のストローク）から当該ストロークの周囲に存在する１以上の周辺ストロークを抽出する。例えば、抽出部１９は、前述の図示せぬアプリケーションなどにより、統合特徴量算出命令が発行されると、ストローク記憶部１５に記憶された複数のストロークを順次取得し、ストローク毎に１以上の周辺ストロークを抽出する。
【００２６】
１以上の周辺ストロークは、例えば、複数のストロークのうち対象ストロークとの距離が所定距離内の１以上のストロークである。対象ストロークとは、複数のストロークのうち１以上の周辺ストロークを抽出する対象となるストロークである。距離は、空間的距離及び時系列的距離の少なくとも一方であればよい。
【００２７】
例えば、抽出部１９は、距離が空間的距離の場合、対象ストロークを包含するウィンドウを生成し、１以上の周辺ストロークとして、複数のストロークのうち当該ウィンドウに含まれる１以上のストロークを抽出する。なお抽出部１９は、ストロークの一部でもウィンドウに含まれていれば、当該ストロークを抽出する。
【００２８】
図４及び図５は、第１実施形態のウィンドウを用いたストローク抽出手法の一例の説明図であり、図４はストローク抽出前、図５はストローク抽出後を示す。図４に示す例では、抽出部１９が、対象ストローク６１を中心にウィンドウ６３を生成しており、ストローク６４〜６６のうちストローク６４、６５がウィンドウ６３内に含まれている。このため、図５に示すように、抽出部１９は、対象ストローク６１の１以上の周辺ストロークとして、ストローク６４、６５を抽出している。
【００２９】
図４及び図５に示す例では、ウィンドウの形状を円としたが、これに限定されず、矩形としてもよいし、対象ストロークの形状に基づく形状としてもよい。
【００３０】
また抽出部１９は、ウィンドウのサイズを固定サイズとしてもよいし、対象ストロークのサイズ、対象ストロークが存在するページ（対象ストロークが記述されるページ）のサイズ、又は複数のストロークの外接矩形の合計サイズに基づいて、ウィンドウのサイズを決定してもよい。
【００３１】
図６〜図９は、第１実施形態のウィンドウの形状及びサイズの一例の説明図である。例えば、抽出部１９は、図６に示すように、ストローク７１の各々の座標をストローク７１の外側へＮ１倍膨張させた形状８１をウィンドウとしてもよい。また例えば、抽出部１９は、図７に示すように、ストローク７１の外接矩形７２を、Ｎ２倍拡大させた形状８２をウィンドウとしてもよいし、Ｎ３ピクセル拡大した形状８２をウィンドウとしてもよい。また例えば、抽出部１９は、図８に示すように、取得部１３により取得された複数のストロークの外接矩形面積の総和７５をＮ４倍縮小した形状８５をウィンドウとしてもよい。また例えば、抽出部１９は、図９に示すように、複数のストロークが記述されるページ７６のページサイズをＮ４倍縮小した形状８６をウィンドウとしてもよい。この場合、特徴算出装置１０は、ページ７６のページサイズを予め記憶しているものとする。
【００３２】
また抽出部１９は、ウィンドウの中心座標が、対象ストロークの重心点、対象ストロークの始点、対象ストロークの終点、又は対象ストロークの外接矩形の中心点に一致するように、ウィンドウを生成してもよい。
【００３３】
また抽出部１９は、対象ストロークの近傍空間を複数に分割し、分割した複数の近傍空間それぞれにウィンドウを生成してもよいし、対象ストロークを構成する座標それぞれにウィンドウを生成してもよい。
【００３４】
また抽出部１９は、対象ストロークに対し、サイズの異なる複数のウィンドウを生成してもよい。
【００３５】
また例えば、抽出部１９は、距離が空間的距離の場合、対象ストロークと複数のストロークそれぞれとの空間的距離を算出し、１以上の周辺ストロークとして、複数のストロークの中から対象ストロークとの空間的距離が短い順にＮ本のストロークを抽出するようにしてもよい。この場合、空間的距離は、例えば、ストローク間の重心距離や端点距離などが挙げられる。
【００３６】
また例えば、抽出部１９は、距離が時系列的距離の場合、１以上の周辺ストロークとして、複数のストロークの中から対象ストロークを基準に一定秒数内に特徴算出装置１０に入力されたストロークを抽出するようにしてもよい。
【００３７】
また例えば、抽出部１９は、距離が時系列的距離の場合、対象ストロークと複数のストロークそれぞれとの時系列的距離を算出し、１以上の周辺ストロークとして、複数のストロークの中から対象ストロークとの時系列的距離が短い順にＮ本のストロークを抽出するようにしてもよい。
【００３８】
また例えば、抽出部１９は、領域基準、空間的距離基準、又は時系列的距離に基づいて、複数のストロークをグループ化し、１以上の周辺ストロークとして、対象ストロークが含まれるグループのストロークを抽出するようにしてもよい。
【００３９】
なお抽出部１９は、上述した抽出手法を組み合わせて１以上の周辺ストロークを抽出してもよい。例えば、抽出部１９は、複数のストロークから時系列的距離の手法でストロークを抽出した後に、当該抽出したストロークから空間的距離の手法でストロークを更に抽出することで１以上の周辺ストロークを抽出してもよいし、複数のストロークから空間的距離の手法でストロークを抽出した後に、当該抽出したストロークから時系列的距離の手法でストロークを更に抽出することで１以上の周辺ストロークを抽出してもよい。また例えば、抽出部１９は、時系列的距離の手法と空間的距離の手法を併用し、時系列的距離の手法で抽出したストロークと空間的距離の手法で抽出したストロークとを、１以上の周辺ストロークとしてもよい。
【００４０】
また抽出部１９は、上述した抽出手法で抽出したストロークをフィルタリングしたものを１以上の周辺ストロークとしてもよい。
【００４１】
例えば抽出部１９は、１以上の周辺ストロークとして、複数のストロークの中から、対象ストロークとの距離が所定距離内かつ対象ストロークとの形状の類似度が閾値以上の１以上のストロークを抽出してもよい。つまり、抽出部１９は、複数のストロークの中から対象ストロークとの距離が所定距離内のストロークを抽出し、抽出したストロークを対象ストロークとの形状の類似度でフィルタリングしたものを１以上の周辺ストロークとしてもよい。
【００４２】
形状の類似度は、例えば、両ストロークの長さの類似度、主成分方向の類似度、曲率の類似度、外接矩形面積の類似度、外接矩形長の類似度、屈曲点数の類似度、及び方向角度密度ヒストグラムの類似度などの少なくともいずれかが挙げられる。
【００４３】
図１０及び図１１は、第１実施形態のフィルタリング手法の一例の説明図であり、図１０はフィルタリング前、図１１はフィルタリング後を示す。図１０に示す例では、抽出部１９が、対象ストローク９１を中心にウィンドウ９２を生成しており、ストローク９３〜９５がウィンドウ９２内に含まれている。なお、対象ストローク９１、ストローク９４、９５は、文字を構成する文字ストロークであり、ストローク９３は、図形など文字以外を構成する非文字ストロークである。また、ストローク９４、９５では、説明の便宜上、単一の文字ストロークではなく、複数の文字ストロークに対し、符号を付しているが、対象ストローク９１との類所度の算出は、ストローク９４、９５の各ストロークに対して行われる。
【００４４】
一般的に、文字ストローク同士は類似度が高く、文字ストロークと非文字ストロークとは類似度が低くなるため、この場合、抽出部１９は、図１１に示すように、対象ストローク９１の１以上の周辺ストロークとして、ストローク９３〜９５のうち、対象ストローク９１との類似度が閾値以上のストローク９４、９５をフィルタリングして抽出する。
【００４５】
このように、対象ストロークとの形状の類似度でフィルタリングして１以上の周辺ストロークを抽出すれば、１以上の周辺ストロークに対象ストロークが属するクラスと異なるクラスのストロークが混在してしまうことが防ぎやすくなる。クラスは、文字、図、表、絵（例えば、ラフスケッチ）、及びその他の少なくともいずれかが挙げられるが、少なくとも文字と非文字とを大別できればよい。
【００４６】
第２算出部２１は、取得部１３により取得されたストローク毎（ストローク記憶部１５に記憶されたストローク毎）に、当該ストローク（対象ストローク）と抽出部１９により抽出された１以上の周辺ストロークとの組合せの特徴に関する組合せ特徴量を算出する。
【００４７】
組合せ特徴量は、対象ストロークと１以上の周辺ストロークの少なくともいずれかとの関係を示す第１特徴量を含む。また、組合せ特徴量は、対象ストロークの形状に関する特徴量と１以上の周辺ストロークそれぞれの形状に関する特徴量との総和である総和値を用いた第２特徴量を含む。
【００４８】
第１特徴量は、対象ストロークと１以上の周辺ストロークの少なくともいずれかとの形状の類似度、及び対象ストロークと１以上の周辺ストロークの少なくともいずれかとの位置関係を特定する特定値の少なくとも一方である。
【００４９】
形状の類似度は、例えば、対象ストロークと１以上の周辺ストロークの少なくともいずれかとの長さ、曲率総和、主成分方向、外接矩形面積、外接矩形長、外接矩形縦横比、始点・終点距離、方向密度ヒストグラム、及び屈曲点数の少なくともいずれかの類似度である。つまり、形状の類似度は、例えば、対象ストロークのストローク特徴量と１以上の周辺ストロークの少なくともいずれかのストローク特徴量との類似度とすることができる。
【００５０】
例えば、第２算出部２１は、対象ストロークのストローク特徴量と１以上の周辺ストロークそれぞれのストローク特徴量とを、除算したり、減算したりするなど比較して、１以上の形状の類似度を算出する。
【００５１】
図１２及び図１３は、第１実施形態の形状の類似度の算出手法の一例の説明図である。図１２に示すように、対象ストローク１０３の周辺ストロークが、周辺ストローク１０１、１０２、１０４であるとする。この場合、第２算出部２１は、図１３に示すように、対象ストローク１０３のストローク特徴量と周辺ストローク１０１、１０２、１０４それぞれのストローク特徴量とを比較して、対象ストローク１０３のストローク特徴量と周辺ストローク１０１、１０２、１０４それぞれのストローク特徴量との形状の類似度を算出する。
【００５２】
特定値は、例えば、対象ストロークと１以上の周辺ストロークの少なくともいずれかとの外接矩形の重なり率、重心距離、重心距離の方向、端点距離、端点距離の方向、及び交差点数の少なくともいずれかである。
【００５３】
図１４は、第１実施形態の特定値の一例の説明図である。図１４では、対象ストローク１１１と周辺ストローク１２１を例にとり、対象ストローク１１１と周辺ストローク１２１との特定値を説明する。
【００５４】
外接矩形の重なり率は、対象ストローク１１１及び周辺ストローク１２１の場合、対象ストローク１１１の外接矩形１１２の面積と周辺ストローク１２１の外接矩形１２２の面積との総和に対する外接矩形１１２と外接矩形１２２との重複部分の面積の割合である。重心距離は、対象ストローク１１１及び周辺ストローク１２１の場合、対象ストローク１１１の重心点１１３と周辺ストローク１２１の重心点１２３との直線距離であり、重心距離の方向は、当該直線距離の方向である。端点距離は、対象ストローク１１１及び周辺ストローク１２１の場合、対象ストローク１１１の端点１１４と周辺ストローク１２１の端点１２４との直線距離であり、端点距離の方向は、当該直線距離の方向である。交差点数は、対象ストローク１１１及び周辺ストローク１２１の場合、交差点１３１の数、即ち、１点である。
【００５５】
第１実施形態では、第２算出部２１は、対象ストロークの第１特徴量を算出する場合、周辺ストローク毎に当該対象ストロークとの形状の類似度及び特定値の組を算出し、算出した周辺ストローク数分の形状の類似度及び特定値の組を第１特徴量とするものとするが、第１特徴量は、これに限定されるものではない。
【００５６】
例えば、第１特徴量を、周辺ストローク数分の形状の類似度及び特定値の組のうちの一定数としてもよいし、最大値の組としてもよいし、最小値の組としてもよいし、中央値の組としてもよいし、周辺ストローク数分の組の総和としてもよい。
【００５７】
なお、抽出部１９が対象ストロークに対し複数のウィンドウを生成し、ウィンドウ毎に１以上の周辺ストロークを抽出している場合、１の周辺ストロークに対し、類似度及び特定値の組が複数算出される場合がある。この場合、第２算出部２１は、複数の組の平均値を用いてもよいし、複数の組それぞれに重み付けを行い、重み付け後の複数の組の平均値を用いてもよい。例えば、サイズの異なる複数のウィンドウそれぞれで１以上の周辺ストロークを抽出している場合、第２算出部２１は、サイズの小さいウィンドウで抽出された周辺ストローク程、重みを大きくすれば、対象ストロークに近い周辺ストロークを重視した形状の類似度及び特定値の組とすることができる。
【００５８】
第２特徴量は、例えば、組合せの外接矩形長に対する対象ストロークの長さと１以上の周辺ストロークそれぞれの長さとの総和の比、対象ストローク及び１以上の周辺ストロークの方向密度ヒストグラムの総和値、及び組合せの外接矩形面積に対する対象ストロークの外接矩形面積と１以上の周辺ストロークそれぞれの外接矩形面積との総和の比の少なくともいずれかである。
【００５９】
なお、抽出部１９が対象ストロークに対し複数のウィンドウを生成し、ウィンドウ毎に１以上の周辺ストロークを抽出している場合、１の周辺ストロークに対し、複数の長さ、複数の方向密度ヒストグラム、又は複数の外接矩形面積が算出される場合がある。この場合、第２算出部２１は、複数の長さそれぞれ、複数の方向密度ヒストグラムそれぞれ、又は複数の外接矩形面積それぞれに重み付けを行い、重み付け後の複数の長さ、複数の方向密度ヒストグラム、又は複数の外接矩形面積の平均値を用いてもよい。例えば、サイズの異なる複数のウィンドウそれぞれで１以上の周辺ストロークを抽出している場合、第２算出部２１は、サイズの小さいウィンドウで抽出された周辺ストローク程、重みを大きくすれば、対象ストロークに近い周辺ストロークを重視した長さ、方向密度ヒストグラム、又は外接矩形面積とすることができる。
【００６０】
第１実施形態では、第２算出部２１は、対象ストローク毎に、算出した第１特徴量と第２特徴量とを並べた特徴量ベクトルを組合せ特徴量とするものとするが、これに限定されるものではない。
【００６１】
統合部２３は、取得部１３により取得されたストローク毎（ストローク記憶部１５に記憶されたストローク毎）に、第１算出部１７により算出されたストローク特徴量と第２算出部２１により算出された組合せ特徴量とを統合した統合特徴量を生成する。
【００６２】
第１実施形態では、統合部２３は、ストローク特徴量と組合せ特徴量とを並べた特徴量ベクトルを統合特徴量とするものとするが、これに限定されるものではない。
【００６３】
辞書データ記憶部２５は、辞書データを記憶する。辞書データは、複数のサンプルストロークの統合特徴量とクラス毎の正解データとを用いて学習された学習結果であり、複数のサンプルストロークの統合特徴量それぞれがいずれのクラスに属するかを示す。クラスは、前述したとおり、文字、図、表、絵、及びその他の少なくともいずれかが挙げられるが、少なくとも文字と非文字とを大別できればよい。
【００６４】
識別部２７は、取得部１３により取得されたストローク毎（ストローク記憶部１５に記憶されたストローク毎）に、統合部２３により統合された統合特徴量を用いて、当該ストロークが属するクラスを識別する。具体的には、識別部２７は、辞書データ記憶部２５から辞書データを読み込み、読み込んだ辞書データ及び統合部２３により統合された統合特徴量を用いて、ストロークが属するクラスを識別する。識別部２７は、例えば、ニューラルネットワーク（多層パーセプトロン）、サポートベクターマシーン、及びＡｄａＢｏｏｓｔなどの識別器により実現できる。
【００６５】
出力部２９は、識別部２７の識別結果、即ち、ストロークが属するクラスを出力する。
【００６６】
図１５は、第１実施形態の特徴算出装置１０で行われる識別処理の手順の流れの一例を示すフローチャート図である。
【００６７】
まず、取得部１３は、入力部１１から入力された複数のストロークを取得し、ストローク記憶部１５に記憶する（ステップＳ１０１）。
【００６８】
続いて、第１算出部１７は、ストローク記憶部１５に記憶されたストローク毎に、当該ストロークの特徴に関するストローク特徴量を算出する（ステップＳ１０３）。
【００６９】
続いて、抽出部１９は、ストローク記憶部１５に記憶されたストローク毎に、ストローク記憶部１５に記憶された複数のストロークから当該ストロークの周囲に存在する１以上の周辺ストロークを抽出する（ステップＳ１０５）。
【００７０】
続いて、第２算出部２１は、ストローク記憶部１５に記憶されたストローク毎に、当該ストロークと抽出部１９により抽出された１以上の周辺ストロークとの組合せの特徴に関する組合せ特徴量を算出する（ステップＳ１０７）。
【００７１】
続いて、統合部２３は、ストローク記憶部１５に記憶されたストローク毎に、第１算出部１７により算出されたストローク特徴量と第２算出部２１により算出された組合せ特徴量とを統合した統合特徴量を生成する（ステップＳ１０９）。
【００７２】
続いて、識別部２７は、ストローク記憶部１５に記憶されたストローク毎に、統合部２３により統合された統合特徴量を用いて、当該ストロークが属するクラスを識別する（ステップＳ１１１）。
【００７３】
続いて、出力部２９は、識別部２７の識別結果、即ち、ストロークが属するクラスを出力する（ステップＳ１１３）。
【００７４】
以上のように第１実施形態では、ストロークの特徴量として、ストロークの特徴に関するストローク特徴量と、当該ストロークの周囲に存在する１以上の周辺ストロークとの組合せの特徴に関する組合せ特徴量と、を統合した統合特徴量を算出する。
【００７５】
ここで、組合せ特徴量は、当該ストロークに固有の特徴量であるが、当該ストロークだけでなく、１以上の周辺ストロークの特徴も加味されたものであるため、当該ストロークが属するクラスに関する特徴量として利用できる。
【００７６】
このため第１実施形態によれば、ストロークが属するクラスに関する特徴量に、ストロークに固有の特徴量を用いることができる。
【００７７】
また第１実施形態によれば、統合特徴量、即ち、ストロークに固有の特徴量を用いてストロークが属するクラスの識別を行うため、クラスの識別精度を向上させることができる。
【００７８】
従って、第１実施形態の特徴算出装置１０を、例えば、ユーザが手書きした手書き図形が、文字、図形、表、及び絵などのいずれであるかを識別して、整形する整形装置などに適用すると、識別精度を向上させた整形装置の提供が可能となる。
【００７９】
（第２実施形態）
第２実施形態では、統合特徴量を用いて学習する例について説明する。以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【００８０】
図１６は、第２実施形態の特徴算出装置２１０の一例を示す構成図である。図１６に示すように、第２実施形態の特徴算出装置２１０は、識別部２７及び出力部２９を備えず、正解データ記憶部２３３及び学習部２３５を備える点で、第１実施形態と相違する。
【００８１】
正解データ記憶部２３３は、クラス毎の正解データを記憶する。
【００８２】
学習部２３５は、取得部１３により取得されたストローク毎（ストローク記憶部１５に記憶されたストローク毎）に、統合部２３により統合された統合特徴量を用いて、当該ストロークが属するクラスを学習する。具体的には、学習部２３５は、正解データ記憶部２３３から正解データを読み込み、読み込んだ正解データ及び統合部２３により統合された統合特徴量を用いて、当該ストロークが属するクラスを学習し、学習結果を辞書データ記憶部２５に記憶する。
【００８３】
なお、学習部２３５の学習手法には、公知の学習手法を用いることがきる。例えば、学習結果（辞書データ）を用いる識別器がニューラルネットワークであれば、学習部２３５は、誤差逆伝搬法によって学習を行うことができる。
【００８４】
図１７は、第２実施形態の特徴算出装置２１０で行われる学習処理の手順の流れの一例を示すフローチャート図である。
【００８５】
まず、ステップＳ２０１〜ステップＳ２０９までの処理は、図１５に示すフローチャートのステップＳ１０１〜ステップＳ１０９までの処理と同様である。
【００８６】
続いて、学習部２３５は、ストローク記憶部１５に記憶されたストローク毎に、統合部２３により統合された統合特徴量を用いて、当該ストロークが属するクラスを学習し（ステップＳ２１１）、学習結果を辞書データ記憶部２５に記憶する（ステップＳ２１３）。
【００８７】
第２実施形態によれば、統合特徴量、即ち、ストロークに固有の特徴量を用いてストロークが属するクラスの学習を行うため、クラスの学習精度を向上させることができる。
【００８８】
（第３実施形態）
第３実施形態では、周辺ストロークを抽出する際に文書情報も抽出し、組合せ特徴量に抽出した文書情報も含める例について説明する。以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【００８９】
図１８は、第３実施形態の特徴算出装置３１０の一例を示す構成図である。図１８に示すように、第３実施形態の特徴算出装置３１０は、文書データ記憶部３１８、抽出部３１９、及び第２算出部３２１が、第１実施形態と相違する。
【００９０】
なお、第３実施形態では、ユーザは、白紙のページに対してストロークを入力するのではなく、文書情報が記述されたページに対してストロークを入力するものとする。
【００９１】
文書データ記憶部３１８は、文書データを記憶する。文書データは、ページに記述された文書情報であり、例えば、文字情報、図表情報、及びレイアウト情報などを含む。なお、文書データが画像データである場合は、ＯＣＲ（Optical  Character  Reader）などを用いて文書情報を復元しておけばよい。なお、文書データは、動画データなど他のコンテンツデータであってもよい。
【００９２】
抽出部３１９は、取得部１３により取得されたストローク毎（ストローク記憶部１５に記憶されたストローク毎）に、複数のストロークから当該ストロークの周囲に存在する１以上の周辺ストロークを抽出するとともに、当該ストロークの周囲に存在する文書情報を抽出する。
【００９３】
第２算出部３２１は、取得部１３により取得されたストローク毎（ストローク記憶部１５に記憶されたストローク毎）に、当該ストローク（対象ストローク）、抽出部３１９により抽出された１以上の周辺ストローク、及び抽出部３１９により抽出された文書情報の組合せの特徴に関する組合せ特徴量を算出する。
【００９４】
一般的に、文書に手書きで情報を加える場面では、強調部分や修正部分を指示する記号（丸囲い、下線引き、引き出し線、挿入記号、及び取り消し線など）などの非文字ストロークは、文書の情報にかぶせるように手書きされ、コメントや注釈などの文字ストロークは、読み取りやすいように空白部分に手書きされる。このため識別部２７は、辞書データを用いた識別結果に加え、上述したような内容（ストロークが文字領域に存在するか、空白領域に存在するかなど）を更に加味して、ストロークが属するクラスを識別すればよい。
【００９５】
従って、第３実施形態の特徴算出装置３１０を、例えば、ストロークを強調部分や修正部分など意味ごとに識別し、表示に反映させる情報処理装置などに適用すると、識別精度を向上させた情報処理装置の提供が可能となる。
【００９６】
（第４実施形態）
第４実施形態では、周辺ストロークを抽出する際に文書情報も抽出し、組合せ特徴量に抽出した文書情報も含める例について説明する。以下では、第２実施形態との相違点の説明を主に行い、第２実施形態と同様の機能を有する構成要素については、第２実施形態と同様の名称・符号を付し、その説明を省略する。
【００９７】
図１９は、第４実施形態の特徴算出装置４１０の一例を示す構成図である。図１９に示すように、第４実施形態の特徴算出装置４１０は、文書データ記憶部３１８、抽出部３１９、及び第２算出部３２１が、第２実施形態と相違する。
【００９８】
但し、文書データ記憶部３１８、抽出部３１９、及び第２算出部３２１については、第３実施形態で説明したとおりなので、ここでは、説明を省略する。
【００９９】
（変形例）
上記各実施形態では、特徴算出装置がストローク記憶部及び辞書データ記憶部などの各記憶部を備える例について説明したが、これに限定されるものではなく、例えば、クラウド上に設けるなど、特徴算出装置の外部に設けるようにしてもよい。
【０１００】
また、上記各実施形態を適宜組み合わせるようにしてもよい。例えば、上記第１実施形態と上記第２実施形態とを組み合わせてもよいし、上記第３実施形態と上記第４実施形態とを組み合わせてもよい。
【０１０１】
（ハードウェア構成）
図２０は、上記各実施形態及び変形例の特徴算出装置のハードウェア構成の一例を示す図である。上記各実施形態及び変形例の特徴算出装置は、ＣＰＵなどの制御装置９０１と、ＲＯＭやＲＡＭなどの記憶装置９０２と、ＨＤＤなどの外部記憶装置９０３と、ディスプレイなどの表示装置９０４と、キーボードやマウスなどの入力装置９０５と、通信インタフェースなどの通信装置９０６と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【０１０２】
上記各実施形態及び変形例の特徴算出装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ（Digital  Versatile  Disk）、フレキシブルディスク（ＦＤ）等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
【０１０３】
また、上記各実施形態及び変形例の特徴算出装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記各実施形態及び変形例の特徴算出装置で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、上記各実施形態及び変形例の特徴算出装置で実行されるプログラムを、ＲＯＭ等に予め組み込んで提供するようにしてもよい。
【０１０４】
上記各実施形態及び変形例の特徴算出装置で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、ＣＰＵがＨＤＤからプログラムをＲＡＭ上に読み出して実行することにより、上記各部がコンピュータ上で実現されるようになっている。
【０１０５】
なお、本発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。
【０１０６】
例えば、上記各実施形態のフローチャートにおける各ステップを、その性質に反しない限り、実行順序を変更し、複数同時に実施し、あるいは実施毎に異なった順序で実施してもよい。
【０１０７】
以上のように、上記各実施形態及び変形例によれば、ストロークが属するクラスに関する特徴量に、ストロークに固有の特徴量を用いることができる。
【０１０８】
例えば、これまで確率伝搬（ＨＭＭ）や、構造とし用いるストロークなどから関係性を記述していた。例えば、単一のストロークに固有（特に形状）の特徴量を用いる手法（参考：Distinguishing  Text  from  Graphics  in  On-line  Handwritten  Ink,  bishop  et  al.）などもその一例である。これらに対し、ストローク固有の特徴量に加え、周辺に存在するストロークを含めた特徴量を用いることが可能になり、より識別性を有することが可能になる。また、ストローク間の関係性を連続的に記述して、当該ストロークの識別にその関係性が用いることができる。
【符号の説明】
【０１０９】
１０、２１０、３１０，４１０  特徴算出装置
１１  入力部
１３  取得部
１５  ストローク記憶部
１７  第１算出部
１９、３１９  抽出部
２１、３２１  第２算出部
２３  統合部
２５  辞書データ記憶部
２７  識別部
２９  出力部
２３３  正解データ記憶部
２３５  学習部
３１８  文書データ記憶部
【図１】
2015099566.tif 000003
【図２】
2015099566.tif 000004
【図３】
2015099566.tif 000005
【図４】
2015099566.tif 000006
【図５】
2015099566.tif 000007
【図６】
2015099566.tif 000008
【図７】
2015099566.tif 000009
【図８】
2015099566.tif 000010
【図９】
2015099566.tif 000011
【図１０】
2015099566.tif 000012
【図１１】
2015099566.tif 000013
【図１２】
2015099566.tif 000014
【図１３】
2015099566.tif 000015
【図１４】
2015099566.tif 000016
【図１５】
2015099566.tif 000017
【図１６】
2015099566.tif 000018
【図１７】
2015099566.tif 000019
【図１８】
2015099566.tif 000020
【図１９】
2015099566.tif 000021
【図２０】
2015099566.tif 000022