(57)【特許請求の範囲】
【請求項１】
画像を表す手書き図形により生成される空間的サンプルのシーケンスから該画像を識別する画像識別装置であって、
上記手書き図形を描画するための描画ツールを有し、上記描画ツールの移動により、上記画像を表す手書き図形の描画に応じて時間的に参照された空間的サンプルを生成する描画手段と、
上記描画手段に接続され、上記時間的に参照された空間的サンプルに基づいて、上記手書き図形を描画するために実行された複数のストロークを表すストロークデータを判定するセグメント処理手段と、
上記空間的サンプルのシーケンスと、上記判定されたストロークデータとに基づいて、上記描画された手書き図形を表すパラメータに相当するパラメータデータを生成するストローク前処理手段と、
上記ストローク前処理手段に接続され、上記パラメータデータに基づいて、上記画像を識別する画像識別手段とを備え、
上記セグメント処理手段は、
上記空間的サンプルから上記描画ツールの相対的移動方向に基づく相対方向情報を生成し、上記相対方向情報から上記描画ツールが移動方向を変化させた回数を判定し、上記描画ツールが移動方向を変化させた回数に基づいて、上記手書き図形のストロークデータを判定するとともに、
複数個の空間的サンプルに添付された時間的参照情報から、該空間的サンプルに対応する上記描画ツールの描画時の相対移動速度を示す相対速度情報を生成し、上記相対速度情報から上記描画ツールが速度を変化させた回数を判定し、上記速度の変化の回数に基づいて、上記手書き図形のストロークデータを判定する
画像識別装置。
【請求項２】
上記セグメント処理手段は、
上記相対方向情報から上記描画ツールの移動方向の変化率を示す情報を生成し、
上記描画ツールが移動方向を変化させた回数を示す上記描画ツールの移動方向の変化率におけるピークの数を判定することを特徴とする請求項１記載の画像識別装置。
【請求項３】
上記セグメント処理手段は、上記相対方向情報が通過されるフィルタを備え、
上記描画ツールの移動方向の変化の回数は、上記フィルタによりフィルタリングされた相対方向情報に基づいて判定されることを特徴とする請求項１又は２記載の画像識別装置。
【請求項４】
上記セグメント処理手段は、
上記相対速度情報から上記描画ツールの移動速度の変化率を示す情報を生成し、
上記移動速度の変化率がゼロになった時点を識別し、
上記描画ツールが速度を変化させた回数は、最小速度に対応する、移動速度の変化率がゼロになった時点から判定されることを特徴とする請求項１記載の画像識別装置。
【請求項５】
上記セグメント処理手段は、上記相対速度情報が通過されるフィルタを備え、
上記描画ツールが移動速度を変化させた回数は、上記フィルタによりフィルタリングされた相対速度情報に基づいて判定されることを特徴とする請求項１又は４記載の画像識別装置。
【請求項６】
上記セグメント処理手段は、上記相対方向情報と上記相対速度情報とを組み合わせて上記手書き図形のストロークデータを判定することを特徴とする請求項１乃至５いずれか１項記載の画像識別装置。
【請求項７】
上記ストローク前処理手段は、
各ストロークの開始点及び終了点を判定し、
上記ストロークの開始点及び終了点から上記手書き図形の外側の境界を定義し、
上記外側の境界から、上記空間的サンプルをそれぞれ比例させて所定の参照単位に適応化することにより該手書き図形を正規化し、
上記正規化された手書き図形からパラメータデータを生成することを特徴とする請求項１乃至６いずれか１項記載の画像識別装置。
【請求項８】
上記パラメータデータは、上記ストロークの回数、上記手書き図形の重心、上記手書き図形の平均ベクトル、上記手書き図形の正規化されたベクトル、上記手書き図形の長さ、上記手書き図形のバランスのうちの少なくとも１つを含むことを特徴とする請求項７記載の画像識別装置。
【請求項９】
上記画像識別手段は、複数の画像を保存する画像保存装置にアクセスし、上記パラメータデータに基づいて、該複数の画像のうちどの画像が上記手書き図形に対応するかを判定することを特徴とする請求項１乃至８いずれか１項記載の画像識別装置。
【請求項１０】
上記画像識別手段は、上記予め保存された複数の画像に対応するパラメータデータによりトレーニングされ、該予め保存された複数の画像のどれがパラメータデータに対応するかを示す参照識別データを生成するニューラルネットワークであることを特徴とする請求項９記載の画像識別装置。
【請求項１１】
上記ニューラルネットワークは、複数層のパーセプトロンからなり、入力層の入力端子の数は上記パラメータデータの項数に対応し、該パラメータデータの各項は、それぞれ対応する入力端子に供給されることを特徴とする請求項１０記載の画像識別装置。
【請求項１２】
上記画像識別手段は、上記識別された画像を表すデータを表示装置に供給し、該画像を表示させることを特徴とする請求項１乃至１１いずれか１項記載の画像識別装置。
【請求項１３】
画像を表す手書き図形により生成される空間的サンプルのシーケンスから該画像を識別する画像識別方法であって、
描画ツールによる上記画像を表す手書き図形の描画に応じて時間的に参照された空間的サンプルを生成するステップと、
上記時間的に参照された空間的サンプルから、上記手書き図形を描画するために実行された複数のストロークを分解するステップと、
上記空間的サンプルのシーケンスを、上記分解された複数のストロークに関連付けて、上記描画された手書き図形を表すパラメータに相当するパラメータデータを生成するステップと、
上記パラメータデータに基づいて、上記画像を識別するステップとを有し、
上記複数のストロークを分解するステップは、
上記空間的サンプルから、上記手書き図形の描画に使用されるツールの相対的移動方向に基づく相対方向情報を生成し、上記相対方向情報から上記ツールが移動速度を変化させた回数を判定し、上記ツールが移動方向を変化させた回数に基づいて、上記手書き図形のストロークデータを判定するステップと、
複数個の空間的サンプルに添付された時間的参照情報から該空間的サンプルに対応する上記ツールの描画時の相対移動速度を示す相対速度情報を生成し、上記相対速度情報から上記ツールが速度を変化させた回数を判定し、上記速度の変化の回数に基づいて、上記手書き図形のストロークデータを判定するステップとを有する
画像識別方法。
【請求項１４】
上記相対方向情報から上記ツールが移動方向を変化させた回数を判定するステップは、
上記相対方向情報から上記ツールの移動方向の変化率を示す情報を生成するステップと、
上記ツールが移動方向を変化させた回数を示す上記ツールの移動方向の変化率におけるピークの数を判定するステップとを有することを特徴とする請求項１３記載の画像識別方法。
【請求項１５】
上記複数のストロークを分解するステップは、上記相対方向情報をフィルタリングするステップを有することを特徴とする請求項１３又は１４記載の画像識別方法。
【請求項１６】
上記相対速度情報から上記ツールが速度を変化させた回数を判定するステップは、
上記相対速度情報から上記ツールの移動速度の変化率を示す情報を生成するステップと、
上記移動速度の変化率がゼロになった時点を識別するステップと、
移動速度の変化率がゼロになった時点のどれが最小速度に対応するかを判定するステップとを有することを特徴とする請求項１３記載の画像識別方法。
【請求項１７】
上記複数のストロークを分解するステップは、上記ツールが速度を変化させた回数を判定するステップの前に、上記相対速度情報をフィルタリングするステップを有することを特徴とする請求項１３又は１６記載の画像識別方法。
【請求項１８】
上記複数のストロークを分解するステップは、上記ツールの速度の変化と方向の変化を組み合わせるステップを有することを特徴とする請求項１３乃至１７いずれか１項記載の画像識別方法。
【請求項１９】
上記パラメータデータを生成するステップは、
各ストロークの開始点及び終了点を判定するステップと、
上記ストロークの開始点及び終了点から上記手書き図形の外側の境界を定義するステップと、
上記外側の境界から、上記空間的サンプルをそれぞれ比例させて所定の参照単位に適応化することにより該手書き図形を正規化するステップと、
上記正規化された手書き図形からパラメータデータを生成するステップとを有することを特徴とする請求項１３乃至１８いずれか１項記載の画像識別方法。
【請求項２０】
上記パラメータデータは、上記ストロークの回数、上記手書き図形の重心、上記手書き図形の平均ベクトル、上記手書き図形の正規化されたベクトル、上記手書き図形の長さ、上記手書き図形のバランスのうちの少なくとも１つを含むことを特徴とする請求項１９記載の画像識別方法。
【請求項２１】
上記パラメータデータに基づいて、上記画像を識別するステップは、
上記パラメータデータに基づいて参照指示データを生成するステップと、
上記参照指示データに基づいて、複数の画像から１つの画像を選択するステップとを有することを特徴とする請求項１３乃至２０いずれか１項記載の画像識別方法。
【請求項２２】
上記パラメータデータに基づいて、上記画像を識別するステップは、上記予め保存された複数の画像に対応するパラメータデータによりトレーニングされ、該予め保存された複数の画像のどれがパラメータデータに対応するかを示す参照識別データを生成するニューラルネットワークに上記パラメータデータを適用するステップを有することを特徴とする請求項１３乃至２１いずれか１項記載の画像識別方法。
【請求項２３】
上記ニューラルネットワークは、複数層のパーセプトロンからなり、入力層の入力端子の数は上記パラメータデータの項数に対応し、該パラメータデータの各項は、それぞれ対応する入力端子に供給されることを特徴とする請求項２２記載の画像識別方法。
【請求項２４】
上記識別された画像を表すデータを表示装置に供給し、該画像を表示させるステップを有することを特徴とする請求項１３乃至２３いずれか１項記載の画像識別方法。
【請求項２５】
上記予め記憶された画像は所定の作品に必要な画像であり、上記請求項１３乃至２４いずれか１項記載の画像識別方法を実行することにより上記所定の作品を表すストーリーボードを作成するストーリーボード作成方法。
【請求項２６】
コンピュータに、請求項１３乃至２５いずれか１項記載の画像識別方法における各ステップを実行させるコンピュータプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像識別装置及び画像識別方法に関し、特に、手書き入力された画像を識別する画像識別装置及び画像識別方法に関する。
【０００２】
【従来の技術】
画像を作成する手法は様々である。古くから、画像の作者又は画家は、例えば鉛筆やペン、その他の描画用具を用いて画像を描いてきた。また、コンピュータにより実行される描画アプリケーションを用いて、例えば、矩形、直線、円等のこのアプリケーションにおいて予め定義された要素を選択し、これらを位置決めし、サイズ及び形状を変更するなどして画像を作成する作者もいる。さらに、画像作成に要する時間を短縮するために、アプリケーションには、予め作成された画像が用意されていることがある。これら画像は、選択され、コピーされて所望のシーンの作成に使用される。予め作成された画像は、シーンの全体であっても一部であってもよく、所定の物品をデザインしたものであってもよく、劇、テレビ番組、映画等の１シーンを表すものであってもよい。
【０００３】
文字認識の分野においては、例えばアルファベット文字を表す画像が認識され、認識されたアルファベットに対応するアルファベットデータが生成される。このような処理の一例は、インターネットウェブサイトhttp://www-cgi.cs.cmu.edu、カーネギーメロン大学（Carnegie Mellon University）、ロボティクス学会（Robotics Institute）、画像システムラボ（Imaging Systems Lab.）のアール・ロメオ（R.Romeo）、アール・バーガー（R.Berger）、アール・シバドー（R.Thibadeau）、ディー・トゥレツスキー（D.Touretsky）らによる「光学的漢字認識のためのニューラルネットワーク分類法(Neural Network Classifiers for Optical Chinese Character)」に開示されている。また、入力される画像は手書きの画像であってもよい。この場合、画像認識を補助するために、認識する画像を描画した際のペンの複数の異なるストロークに対応して画像をセグメント化するようになっている。この手法は、１９９６年４月１日にインターネットウェブサイトhttp://hwr.nici.kun.nl/recog/hwr-tutor/velocity.htmlにて発表された、ランバート・シューメイカー（Lambart Schomaker）が著作権を有する「手書きにおけるペン先の速度（Pen-tip velocity in Handwriting）」に開示されている。
【０００４】
【発明が解決しようとする課題】
手書き入力された画像から、所望の画像を効率的に生成する装置の実現が望まれている。このような装置は、例えば、創造的なアイデアが手書きにより表現される、ピクチャ、デザイン、シーンのアイデア又は原案（initial thought）を作成する初期段階において必要とされる。
【０００５】
そこで本発明は、所望の画像を効率的に作成することができる画像識別装置及び画像識別方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上述の目的を達成するために、本発明に係る画像識別装置は、画像を表す手書き図形により生成される空間的サンプルのシーケンスから画像を識別する画像識別装置において、空間的サンプルに基づいて、手書き図形を描画するために実行されたストロークを表すストロークデータを判定するセグメント処理手段と、空間的サンプルのシーケンスと、判定されたストロークデータとに基づいて、パラメータデータを生成するストローク前処理手段と、ストローク前処理手段に接続され、パラメータデータに基づいて、画像を識別する画像識別手段とを備える。
【０００７】
例えば描画手段を用いて、画像の手書き図形に対応する空間的サンプルを生成できることが知られている。しかしながら、空間的サンプルから画像を認識するための従来の画像識別装置には技術的問題が存在する。空間的サンプルが供給され、空間的サンプルに基づいて、手書き図形を描画するために実行されたストロークを表すストロークデータを判定するセグメント処理手段を設け、ストロークデータと空間的サンプルを組み合わせることにより生成されたデータのセットを用いて画像を識別することにより、空間的サンプルのみを用いる場合に比べてデータ量を低減することができる。すなわち、ストロークデータと空間的サンプルを組み合わせて生成されたより少ないデータセットにより、従来より容易に画像を識別できる。ストロークデータに含まれる、手書き図形を生成するために用いられたストロークの回数を示す情報により画像が示唆される。例えば、三角形は３回のストロークにより生成され、正方形は４回のストロークにより生成される。
【０００８】
ストローク前処理手段は、パラメータデータを生成し、このパラメータデータが示すデータセットから画像を識別することができる。ストローク前処理手段は、判定されたストロークに空間的サンプルを組み合わせ、これにより生成されたデータセットにより画像識別手段は、より容易に対応する画像を識別することができる。
【０００９】
手書き図形を生成し、この画像を表す手書き図形から空間サンプルを生成する手法としては様々な手法がある。空間サンプルは、所定の空間座標に関連する描画手段の位置のサンプルである。画像識別装置には、他の装置から空間的サンプルのシーケンスを供給するようにしてもよいが、本発明に係る画像識別装置は、好ましくは、手書き図形を作成するための描画手段を備え、空間的サンプルのシーケンスは、描画手段の移動により生成される。
【００１０】
描画手段は、手書き画像から空間サンプルを生成するものであればいかなるものであってもよい。描画手段は、画像の手書き図形に対応する空間サンプルを生成するが、この空間サンプルに基づいて、画像の手書き図形を描画する際に実行されたストロークを正確に判定する要求が残されている。本発明に係る画像識別装置において、好ましくは、セグメント処理手段は、空間的サンプルから描画手段の相対的移動方向に基づく相対方向情報を生成し、相対方向情報から描画手段が移動方向を変化させた回数を判定し、描画手段が移動方向を変化させた回数に基づいて、手書き図形のストロークデータを判定する。描画手段の移動方向の変化の回数を容易に検出できるようにするために、セグメント処理手段は、例えば、相対方向情報から描画手段の移動方向の変化率を示す情報を生成し、描画手段が移動方向を変化させた回数を示す描画手段の移動方向の変化率におけるピークの数を判定する。手書き図形を描画する際に用いられたストロークの検出の確実性を高めるために、セグメント処理手段は、好ましくは、相対方向情報が通過されるフィルタを備え、描画手段の移動方向の変化の回数をフィルタリングされた相対方向情報に基づいて判定する。
【００１１】
空間的サンプルは、所定の空間座標に関連付けられた描画手段の位置のサンプルであってもよい。また、空間サンプルにサンプルが生成された相対的時間を示す時間的参照データを添付してもよい。このような場合、好ましい実施の形態においては、セグメント処理手段は、複数個の空間的サンプルの時間的参照情報から空間的サンプルに対応する描画手段の描画時の相対移動速度を示す相対速度情報を生成し、相対速度情報から描画手段が速度を変化させた回数を判定し、速度の変化の回数に基づいて、手書き図形のストロークデータを判定する。画像の手書き図形を描画するために使用されたストロークの数の判定を改善するために、セグメント処理手段は、相対速度情報から描画手段の移動速度の変化率を示す情報を生成し、移動速度の変化率がゼロになった時点を識別して、描画手段が速度を変化させた回数は、最小速度に対応する、移動速度の変化率がゼロになった時点から判定される。手書き図形を描画する際に用いられたストロークの検出の確実性を高めるために、セグメント処理手段は、好ましくは、相対速度情報が通過される相対速度情報が通過されるフィルタを備え、描画手段が移動速度を変化させた回数は、フィルタによりフィルタリングされた相対速度情報に基づいて判定される。
【００１２】
さらに、手書き図形を描画する際に用いたストロークを正しく検出する可能性を高めるために、相対方向情報と相対速度情報とを組み合わせて手書き図形のストロークデータを判定するとよい。すなわち、移動方向の変化と速度の低下を相関させることにより手書き図形を描画する際に用いられたストロークをより正確に検出することができる。
【００１３】
手書き図形から画像を識別する処理をさらに向上させるために、ストローク前処理手段に識別された手書き図形のストロークと空間サンプルとを組み合わせて処理させることにより、ストローク前処理手段を設けない場合に画像を定義するために必要なデータ量に比べて、手書き図形を定義するデータセットのデータ量を実質的に低減できる。本発明の好適な実施の形態において、ストローク前処理手段は、各ストロークの開始点及び終了点を判定し、ストロークの開始点及び終了点から手書き図形の外側の境界を定義し、外側の境界から、空間的サンプルをそれぞれ比例させて所定の参照単位に適応化することにより手書き図形を正規化し、正規化された手書き図形からパラメータデータを生成する。所定の参照単位に対して手書き図形を正規化することにより、ユーザが描画した図形の大きさから独立して画像を認識することができる。これにより、画像識別装置は、任意の画像に対する異なる図形からその画像を同様に認識することができる。これは、特に、異なるユーザが同一の図形を異なる大きさで描画するような状況で有効であり、さらに、ユーザが特定の単位となる範囲内で図形を描画するように制約されていない状況において有効である。
【００１４】
好適な実施の形態において、パラメータデータは、ストロークの回数、手書き図形の重心、手書き図形の平均ベクトル、手書き図形の正規化されたベクトル、手書き図形の長さ、手書き図形のバランスのうちの少なくとも１つを含む。
【００１５】
さらに、好適な実施の形態において、画像識別手段は、複数の画像を保存する画像保存装置にアクセスし、パラメータデータに基づいて、複数の画像のうちどの画像が手書き図形に対応するかを判定する。画像識別手段により画像を示す参照識別データを提供してもよいが、画像識別装置に画像保存装置を設け、画像保存装置に複数の画像を保存し、これら保存された画像から手書き図形に対応する画像を識別するような構成とすることによりさらなる利益が得られる。
【００１６】
本発明の好適な実施の形態において、画像識別手段は、予め保存された複数の画像に対応するパラメータデータによりトレーニングされ、予め保存された複数の画像のどれがパラメータデータに対応するかを示す参照識別データを生成するニューラルネットワークである。このニューラルネットワークは、例えば、複数層のパーセプトロンからなり、入力層の入力端子の数はパラメータデータの項数に対応し、パラメータデータの各項は、それぞれ対応する入力端子に供給される。
【００１７】
選択された画像をユーザに示すために、画像識別手段は、識別された画像を表すデータを表示装置に供給し、画像を表示させてもよい。
【００１８】
本発明に係る画像識別装置は、様々な分野に適用することができる。以下に説明する実施の形態では、本発明をストーリーボード作成装置の一部に適用した具体例を説明する。予め記憶された画像を用いることにより、オーディオビジュアル作品のストーリーボードを効率的に作成することができる。
【００１９】
また、本発明に係る画像識別方法は、画像を表す手書き図形により生成される空間的サンプルのシーケンスから画像を識別する画像識別方法において、空間的サンプルから、手書き図形を描画するために実行されたストロークを分解するステップと、空間的サンプルのシーケンスを、分解されたストロークデータに関連付けてパラメータデータを生成するステップと、パラメータデータに基づいて、画像を識別するステップとを有する。
【００２０】
【発明の実施の形態】
以下、本発明に係る画像識別装置及び画像識別方法について図面を参照して詳細に説明する。
【００２１】
手書き図形の識別処理は、画像認識や手書き文字認識等のいくつかの分野で必要とされる処理である。例えば、手書き図形から画像を生成することにより、普遍的な意思伝達が実現され、すなわち、ある者が、ある国の言語を知らない場合でも、その者が所望の物の画像を描くことにより、この画像からその言語においてその物を示す単語を検索することができる。この他の応用例としては、手書きされた文字を認識する手書き文字認識がある。同様に、手書き図形を予め記憶されているより複雑な画像と対応させて画像を生成することにより、絵画又はイラストレーションにおける複雑なシーンを効率的に描画することができる。本発明の理解を容易にする適用例として、ストーリーボード（俗に、絵コンテとも呼ばれる。）作成装置（story board generation station）がある。このストーリーボード作成装置により、ユーザは映画、コマーシャルフィルム、ドキュメンタリー等のストーリーボードを作成することができる。本発明を適用したストーリーボード作成装置によれば、特別な才能及び技能を有さない者であっても、その才能や技能に関わらず、正確で複雑な視覚的描写を含むストーリーボードを作成することができる。本発明を適用したストーリーボード作成装置の具体的構成例を図１に示す。
【００２２】
本発明を適用したストーリーボード作成装置は、図１に示すように、データ処理装置（data processor）１と、表示装置２と、データ保存装置４と、ペン５及びタブレットからなる描画装置６とを備える。表示装置２は、接続チャンネル１０を介して、データ処理装置１内の表示装置（visual display unit：以下、ＶＤＵという。）駆動プロセッサ８に接続されている。描画装置６は、接続チャンネル１４を介してデータ処理装置１内のインターフェイスプロセッサ１２に接続されている。インターフェイスプロセッサ１２には、キーボード７及びコンピュータマウス９２も接続されている。データ保存装置４は、接続チャンネル１６を介して、データ処理装置１内のデータ保存アクセスプロセッサ１８に接続されている。ＶＤＵ駆動プロセッサ８、インターフェイスプロセッサ１２及びデータ保存アクセスプロセッサ１８は、データ処理装置１内の制御プロセッサ２０に接続されている。制御プロセッサ２０は、データ保存装置４、表示装置２を制御し、描画装置６から入力される情報を処理することにより、このストーリーボード作成装置内における処理を制御する。図１に示すストーリーボード作成装置の動作の詳細については、制御プロセッサ２０を詳細に示す図２を用いて、以下に説明する。
【００２３】
制御プロセッサ２０は、図２に示すように、セグメント処理回路（segment processor）２２と、ストローク前処理回路（stroke pre-processor）２４と、画像識別回路（image identifier）２６と、インターフェイス回路（interface controller）２８とを備える。この具体例では、ストーリーボード作成装置のユーザは、図１に示すように、描画装置６のペン５を用いて正方形２１を描画している。このユーザの描画に基づいて、空間的サンプル（spatial sample）が生成され、この空間的サンプルに時間的参照データ（temporal reference）が添付される。空間的サンプルは、描画装置６のタブレット上に形成されるｘｙ平面における、ペンの座標位置の離散的サンプルである。セグメント処理回路２２には、入力チャンネル３０を介して、描画装置６から時間的参照データが添付された空間的サンプルが入力される。後に詳細に説明するように、セグメント処理回路２２は、時間的参照データが添付された空間的サンプルを処理して、ユーザが手書きにより描画した際の複数のペン先の動き（stroke：以下、ストロークという。）を表すサンプルデータを生成する。このようなサンプルデータを本明細書ではストロークデータと呼ぶ。これらのストロークデータは、接続線３４を介してストローク前処理回路２４に供給される。また、接続チャンネル３１を介してセグメント処理回路２２に供給された、手書き図形を表すデータ、すなわち時間的参照データが添付された空間的サンプルも、接続線３２を介して、ストローク前処理回路２４に供給される。ストローク前処理回路２４は、ストロークデータと、時間的参照データが添付された空間的サンプルとを組み合わせて、ユーザが手書き図形を描画した際に用いたストロークを表し、記述する所定のパラメータ（以下、ストロークパラメータという。）の組を生成する。図２に示す具体例では、１２個のストロークパラメータが生成されるが、ここで生成されるストロークパラメータの数はいくつでもよい。１２個のストロークパラメータを示すデータは、ストロークパラメータデータと呼ばれ、これらのストロークパラメータデータは、１２本のそれぞれ独立した平行接続線３６のうちのいずれかを介して、画像識別回路２６に供給される。
【００２４】
画像識別回路２６には、このストーリーボード作成装置のユーザが描画装置６を使用して描画した手書き図形に関するストロークパラメータデータが複数の平行接続線３６を介して供給される。画像識別回路２６は、これらのストロークパラメータデータを処理し、例えば、ストロークパラメータに最も類似する複数の画像を示す一連のデジットである参照指示データ（reference indication）を生成する。画像識別回路２６は、この参照指示データを接続線３８を介してインターフェイス回路２８に供給する。インターフェイス回路２８は、第１の双方向接続チャンネル４０を介して、データ保存アクセスプロセッサ１８に接続されており、また第２の接続チャンネル４２を介して、ＶＤＵ駆動プロセッサ８に接続されている。データ保存アクセスプロセッサ１８は、データ保存装置４にアクセスし、このデータ保存装置４に格納されている複数の画像から、１つの画像を検索する。データ保存アクセスプロセッサ１８によって選択される画像は、画像識別回路２６により生成された参照指示データに対応する予め格納されている画像データである。ここで選択された画像データは、接続チャンネル４０を介してインターフェイス回路２８に供給される。インターフェイス回路２８は、この画像データを接続チャンネル４２を介してＶＤＵ駆動プロセッサ８に供給する。ＶＤＵ駆動プロセッサ８は、この画像データを表示装置２を駆動するための信号に変換する。変換された信号は、接続チャンネル１０を介して表示装置２に供給され、表示装置２は、データ保存装置４から選択された画像をこのストーリーボード作成装置のユーザに対して表示する。
【００２５】
制御プロセッサ２０の機能及び動作については、後述するセグメント処理回路２２、ストローク前処理回路２４、画像識別回路２６のそれぞれに関する詳細な説明によりさらに明らかとなる。上述したように、描画装置６は、手書き図形を描画するためのペン５の移動及び位置に基づいて、時間的に参照された空間的サンプルを生成する。これら時間的に参照された空間的サンプルは、いかなる手法で作成してもよく、例えばコンピュータマウス９、キーボード７、あるいは作者が所望の画像を描画し、その画像から空間的サンプルが生成できる装置であればいかなる装置を用いてもよい。本発明の具体例においては、ペン５及びタブレットからなる描画装置６を用い、描画装置６は、ペン５の動きにより時間的に参照された空間的サンプルを生成する。このような描画装置６としては、例えば、ワコム社（Wacom）により製造されている描画装置を用いることができる。このような製品の詳細な情報については、インターネットウェブサイトwww.wacom.comから入手できる。
【００２６】
図１に示す描画装置６を用いて、ユーザはストーリーボードのシーンを作成するために必要な画像を手書きで入力する。このような画像の例を図３に示す。図３に示す手書き図形は、男性５０、女性５２、ネコ５４、ネズミ５６、車５８、家６０、テーブル６２、いす６４である。ストーリーボードの作成において有用なこれら手書き図形のうちのいくつかは一筆書き（single stroke）可能なものである。しかしながら、多くの手書き図形は、その画像を作成するために複数回ペンを移動させる必要があり、すなわち、「マルチストローク（multi-stroke）」が必要である。このような手書き図形、又は手書き図形の一部を以下の説明ではジェスチャと呼ぶ。
【００２７】
制御プロセッサ２０の動作の一例を、図１に示す正方形２１を例に説明する。手書き図形から特定の画像を識別するために、制御プロセッサ２０は、ユーザが図形を描画するために行ったペンストロークの組を識別する。ペンストロークの識別は、周知のストローク捕捉（stroke capture）処理及びストロークデータが生成された手書き図形をセグメント化する処理により実現できる。空間的サンプルは、ストロークデータに基づいて前処理され、手書き図形を分析することによりパラメータデータが生成される。続いて、手書き図形は、このパラメータデータに基づいて識別される。これら３つの処理は、それぞれセグメント処理回路２２、ストローク前処理回路２４、画像識別回路２６によって個々に実行される。
【００２８】
図４は、手書きされた正方形２１をストロークマーカ６６とともに示す図である。これらのストロークマーカ６６は、ストローク捕捉処理及びセグメント化の処理ステップにおいて、セグメント処理回路２２により生成される。詳しくは、セグメント処理回路２２は、時間的に参照された空間的サンプルを分析してペン５のストロークの開始点及び終了点を識別することによりストロークマーカ６６を生成する。ストローク捕捉処理及びセグメント化処理を実行するために、本発明の具体例におけるセグメント処理回路２２は、２つの分析処理のうちの１つ又は両方を使用する。セグメント処理回路２２の詳細な構成は図５に示されている。
【００２９】
セグメント処理回路２２は、図５に示すように、キャッシュメモリ１００を備え、キャッシュメモリ１００には、描画装置６において生成された空間的サンプルがインターフェイスプロセッサ１２から接続チャンネル３０を介して供給される。キャッシュメモリ１００の第１の出力用接続線１０２には、方向処理回路１０６が接続されており、第２の出力用接続線１０４には、速度処理回路１０８が接続されている。方向処理回路１０６の出力端子は第１の低域通過フィルタ１１０に接続され、速度処理回路１０８出力端子は、第２の低域通過フィルタ１１２に接続されている。第１の低域通過フィルタ１１０の出力端子は、第１のセグメント推定回路（segment estimator）１１４に接続されており、第２の低域通過フィルタ１１２の出力端子は、第２のセグメント推定回路１１６に接続されている。第１のセグメント推定回路１１４の出力端子及び第２のセグメント推定回路１１６の出力端子は、セグメント化回路（segmenter）１１８に接続されており、このセグメント化回路１１８は、手書き図形の描画に用いられたストロークを識別するために用いられるストロークデータを接続線３４から出力する。また、セグメント処理回路２２は、キャッシュメモリ１００とセグメント化回路１１８に接続された制御回路１２０を備えており、制御回路１２０は、このセグメント処理回路２２の動作を制御する。
【００３０】
セグメント処理回路２２は、手書き図形の描画時に用いられたストロークを識別し、そのストロークの開始点及び終了点を含み、そのストロークを識別するためのストロークデータを生成する。セグメント処理回路２２は、手書き図形におけるストロークを識別するために、ペン５の相対的方向を分析する処理及びペン５の相対的速度を分析する処理を行う。制御回路１２０は、トリガ信号が入力されると、キャッシュメモリ１００に格納された空間的サンプルの読出処理を開始する。制御回路１２０にトリガ信号を供給する手法としては、様々な手法が考えられる。例えば、描画装置６により、ペン５が描画装置６から離れたことを示す信号を生成させてもよい。この信号は、インターフェイスプロセッサ１２により検出され、トリガ信号として制御チャンネル３１に出力される。この他の手法としては、ユーザが所定のキーをキーボード７から入力するか、コンピュータマウス９からコマンド信号を生成させてもよい。これらの入力信号又はコマンド信号もインターフェイスプロセッサ１２により検出され、トリガ信号として制御チャンネル３１に出力される。さらにこの他の手法として、セグメント処理回路２２内の制御回路１２０によりトリガ信号を発生させてもよい。この場合、例えば、キャッシュメモリ１００において、直前の空間的サンプルが供給されてから所定の時間が経過した後にトリガ信号を発生するようにできる。この時間の経過を計測するために、セグメント処理回路２２は、制御回路１２０に接続されたクロック１２１を備え、制御回路１２０は、このクロック１２１を参照して、上述した所定の時間の経過を計測する。
【００３１】
セグメント処理回路２２にトリガ信号入力されると、又はトリガ信号が発生されると、制御回路１２０は、キャッシュメモリ１００から方向処理回路１０６及び速度処理回路１０８に空間的サンプルを供給させる。方向処理回路１０６は、空間的サンプルを分析して、手書き図形作成時のストロークを識別する。この分析により、時間に関連してペン５が相対的に移動した方向を示す移動路（plot）を表すデータが生成される。この例として、手書きの正方形２１の分析結果を図６に示す。図６は、正方形２１を描画した際の、ペン５の移動方向を時間軸に沿って示すグラフである。図６において、分析結果は破線で示されている。
【００３２】
ユーザは、１つのジェスチャを一回のペン動作で（一筆書きで）描画することもでき、複数回の動作で描画することもできる。例えば、ユーザは、４回のストロークで正方形２１を描画することができる。正方形２１は、４つの直線からなり、４つの直線を４回の独立したペン動作で描画してもよく、又は連続したペン動作で描画してもよい。ストロークキャプチャ処理及びセグメント化処理は、特定の数のストロークからなる特定のジェスチャを描画するために必要な動作の回数に関わらず一様に行われる。ストロークキャプチャ処理及びセグメント化処理は、相対的なペンの移動方向の分析に基づいて実行してもよく、ペンの速度分析に基づいて実行してもよく、図２に示す具体例のように、相対的な移動方向と速度の両方を分析して実行してもよい。
【００３３】
キャッシュメモリ１００に格納された、手書き図形に基づく空間的サンプルが読み出され、例えば正方形２１におけるコーナのような、コーナ部において、ペンの移動方向が変更されたことが推定される。ジェスチャから入手可能なデータの量に応じて、現在の画素の前後ｎ個の画素を用いて、ペンの移動が算出される。前後ｎ個の画素を用いて、ペンの移動を算出することにより、ジェスチャの中に存在する雑音の影響を低減することができる。図６では、雑音が低減されたデータを破線７０で示している。この相対的移動方向を表すデータ（以下、相対方向データ（relative direction data）と呼ぶ。）は、第１の低域通過フィルタ１１０を通過し、これにより雑音成分が除去される。図６では、フィルタリングされた相対方向データを実線７２で示している。フィルタリングされた相対方向データは、第１のセグメント推定回路１１４に供給され、第１のセグメント推定回路１１４は、ペン５の相対的移動方向の変化率（rate-of-change）を判定する。図６では、ここで判定された変化率を一点鎖線７４で示している。ペン５の移動方向は、コーナ部において急激に変化するため、変化率は、コーナ部に相当する位置でスパイク（spike）を示す。図６に示す例では、一点鎖線７４は、３つのスパイク７５を有している。第１のセグメント推定回路１１４は、これらスパイク７５を検出する。正方形２１の例では、３つのスパイク７５は、４つのストロークにおける３回の方向の変化に対応するものである。
【００３４】
一方、速度処理回路１０８は、ペン５の速度の相対的変化から、ストロークの回数と、開始点及び終了点に関する推定値（estimation）を生成する。すなわち、速度処理回路１０８は、キャッシュメモリ１００から供給された空間的サンプルを分析し、ペン５の相対速度を表すデータを生成する。図７は、この相対速度を表すデータの一例を示すものであり、この図７においては、正方形２１を描画するためにペン５が移動した際のペン５の速度の変化を破線７６で表している。手書き図形を描画するためのストロークを検出するために、例えば正方形２１のようなジェスチャをユーザが描画する際、ペンの移動速度は、４つのコーナ部において急速に低下すると仮定され、これによりコーナ部、すなわちストロークの終了点を検出することができる。速度処理回路１０８により生成された、破線７６で示す速度データは、第２の低域通過フィルタ１１２によりフィルタリングされ、これにより雑音成分が除去される。図７では、フィルタリングされた速度データを実線７８で示している。フィルタリングされた速度データは、第２のセグメント推定回路１１６に供給され、第２のセグメント推定回路１１６は、速度の変化率（rate-of-change of speed）、すなわち加速度を示すデータを生成する。そして、このデータのゼロ交叉点（zero crossing point）を検出する。すなわち、位置の２階微分係数（second differential）を算出し、この２階微分係数のゼロ交差点が速度データの最小値又は最大値に対応するかを判定して、２階微分係数の正の範囲における速度データの最小値に対応するゼロ交差点を検出する。そして、ゼロ交叉点が最小値である場合、ストロークが検出される。図７では、変化率は一点鎖線８０で示されており、ゼロ交叉点８２は、正方形２１のコーナ部でペン５の移動速度が減速した点に対応している。
【００３５】
以上のようにして求められた、手書き図形を構成するストロークの推定値は、第１及び第２のセグメント推定回路１１４，１１６からセグメント化回路１１８に供給される。セグメント化回路１１８は、相対方向分析の結果と速度分析の結果とを比較し、組み合わせ、ジェスチャを独立した複数のストロークにセグメント化するための位置（location）のリストを生成する。続いて、セグメント化回路１１８は、セグメント化された複数のストロークからストロークデータを生成し、接続線３４を介して、このストロークデータをストローク前処理回路２４に供給する。ストローク前処理回路２４には、キャッシュメモリ１００から接続線３２を介して、手書き図形に対応する空間的サンプルを表すデータも供給されている。
【００３６】
図２に示すように、以上の処理により、ストローク前処理回路２４には、時間的に参照された空間的サンプルとストロークデータが供給される。ストローク前処理回路２４は、１２個の所定のパラメータの各値を算出する。これらパラメータの値を算出するために、ストローク前処理回路２４は、ジェスチャに基づいて生成された手書き図形を所定の境界（boundary）を用いて正規化する。所定の境界は、この具体例では単位正方形（unit square）である。ジェスチャは、単位正方形境界ボックス（unit square bounding box）の内部に収まるように、座標をスケーリングすることにより正規化される。この正規化の処理を図８に示す。図８では、破線８６により単位正方形境界ボックスを示し、この単位正方形境界ボックス内に手書き図形である正方形２１が納められる。
【００３７】
ストローク前処理回路２４は、この正規化したジェスチャを用いて、所定のパラメータの値を算出する。この具体例において使用するパラメータは、以下のとおりである。
（１）ストロークの回数（単一のパラメータ）
（２）ｘｙ座標で表されるジェスチャの重心（２つのパラメータ）
（３）ｘｙ座標で表されるジェスチャの平均ベクトル（２つのパラメータ）
（４）ｘｙ座標で表されるジェスチャの正規化ベクトル（２つのパラメータ）
（５）ジェスチャの長さ（単一のパラメータ）
（６）ジェスチャのバランス（４つのパラメータ）
【００３８】
図９は、これパラメータを示す図である。ストロークの回数は、自明であり、実際には、セグメント処理回路２２により判定される。ジェスチャの重心（center of gravity）は、各画素の座標の総和を求め、これを画素数で除算することにより算出される。図９（ａ）に示す具体例では、単位正方形境界ボックス８６内の正方形２１内のマーク８８が正方形２１の重心を示している。ジェスチャの平均ベクトル（mean vector）は、各ストロークの開始点から終了点までのベクトルを加算し、これをストロークの総数で除算することにより求められる。図９（ｂ）に示す具体例では、マーク９０は、正方形２１を定義するジェスチャの平均ベクトルを示している。正規化ベクトルのパラメータは、平均ベクトルのパラメータに類似したものであるが、各ベクトルが重心を巡って時計回りの方向に判定されるように、各ベクトルを重心に対して正規化した後に、正規化ベクトルを算出する点が平均ベクトルと異なっている。図９（ｃ）に示す具体例では、マーク９２は、正規化ベクトルを示している。ジェスチャの長さは、正規化されたジェスチャにおける画素点間の距離をすべて加算することにより求められる。ジェスチャのバランスは、正規化されたジェスチャの境界を定義する単位正方形を４つの象限に分割して求められる。そして、各ストロークについて、開始点及び終了点がどの象限に存在するかを調べる。続いて、各象限内のストローク終了点の数を示すカウント値を求める。図１０（ａ）は、破線９４により４つの象限に分割された単位正方形境界ボックス８６を示す。図１０（ｂ）は、分割された４つの象限に基づいて求められたジェスチャのバランスを示す表である。
【００３９】
以上説明した１２個のパラメータに対応する値は、図２に示すように、平行接続線３６を介して画像識別回路２６に供給され、画像識別回路２６は、１２個のパラメータの値に最も類似する参照指示データ（reference indication）に基づいて、参照指示データを生成する。図１１は、画像識別回路２６の内部構成を詳細に示す図である。この図１１に示すように、画像識別回路２６は、それぞれ一列に示された３層のニューロン（neurone）を備え、この３層のニューロンによりニューラルネットワーク（neural network）が形成されている。ニューラルネットワークは、当業者にとって周知の分野であるが、その詳細については、１９８８年、マサチューセッツ州ケンブリッジ、ＭＩＴプレス社（MIT Press）により発行され、アンダーソン・アンド・ローゼンフェルド（Anderson and Rosenfeld）により再版された、Ｄ・Ｅ・ルメルハルト（D.E.Rumelhart）、Ｊ・Ｌ・マクレランド（J.L.McClelland）及びＰＤＰ開発グループ（PDP Reserch Group (Eds)）による「並列分散処理：認知の微構造の探求、第１巻基礎編（Paralle Distributed Processing: Explorations in the Microstructure of Cognition, Volume 1: foundations）」に詳細に記述されている。
【００４０】
この具体例におけるニューラルネットワークは、複層パーセプトロンネットワーク（multi layer perceptron network）であり、１２個のストロークパラメータに対応する１２個のニューロンを入力層１３０に有し、隠れ層（hidden layer）１３２に１０個のニューロンを有している。１２個のパラメータは、平行接続線３６を介して、入力層１３０の１２個のニューロンにそれぞれ入力される。これらのニューロンは、相互に接続されたニューラルネットワークを形成しており、出力層１３４は、手書き図形に対応する画像の参照指示データを生成する。この具体例では、３つのニューロンからなるニューラルネットワークの出力層１３４からの出力により、最大８個の異なる手書き図形を区別（classify）できる。なお、出力層１３４におけるニューロンの数を変更することにより、区別できる手書き図形の数を任意に変更することができる。ネットワークのトレーニングは、オフラインで行う。このトレーニングは、この具体例では、１５人のユーザが各ジェスチャについて、それぞれ２０個の例（example）を入力することにより、およそ１５分で行われる。すなわち、このトレーニングにより、２４００個の個別のジェスチャが入力される。この程度のトレーニングデータの量により、いかなるユーザに対しても、良好な認識率を得ることができる。ネットワークをトレーニングするにあたり、広範囲の多様なユーザに十分な量のトレーニングデータを入力させることが好ましい。なお、この具体例に示す画像識別回路２６は、ストロークの方向については関知しない。例えば、水平な直線をジェスチャとして入力する場合、画像識別回路２６は、その直線が右から左に描かれたか、左から右に描かれたかについては区別しない。このように方向を区別しない性質（directional invariance）は、同一のジェスチャが異なるストロークの順序で描画される場合に有効であるが、方向情報を含むジェスチャについては、その方向情報を除外することとなる。
【００４１】
以上の説明により、図１に示すストーリーボード作成装置の動作が明らかになった。ストーリーボードを作成する際、ユーザは、所望の画像を表す図形を描画装置６を用いて描画する。データ処理装置１は、手書き図形を処理し、この手書き図形に最も類似する画像を表示装置２に表示する。ユーザは、キーボード７又はコンピュータマウス９を用いて適切なコマンドを入力することにより、データ処理装置１は、画像を保存し、この画像を表示部２に表示されているスクリーン上の所望の位置に移動させることができる。さらに、ユーザは、必要に応じて、描画装置６を用いて別の図形を手書き入力し、これにより対応する画像がデータ保存装置４から検索され、表示装置２のスクリーン上に表示される。ユーザは、この画像を所望の位置に移動し、保存する。このような作業によりストーリーボードが作成される。
【００４２】
本発明の具体例において、ペン５が描画装置６のタブレットから離れたことを検出することにより、更なる利益が得られる。既に説明したように、ペン５がタブレットから離れた際に、トリガ信号を生成し、このトリガ信号により、手書き図形に対する画像識別回路２６の処理を開始させる。すなわち、ペン５がタブレットから離れると、データ処理装置１は、その時点に描画されているジェスチャを直ちに処理し、このジェスチャに対応する画像をデータ保存装置４から検索し、表示装置２に表示する。表示装置２に画像が表示されると、ユーザは、キーボード７又はコンピュータマウス９を用いてこの画像が正しいものであることを確認（confirm）し、これによりインターフェイスプロセッサ１２は、接続チャンネル３１に制御信号を出力してキャッシュメモリ１００に記憶されているデータを消去（clear）する。なお、ユーザが描画装置６のペン５を用いてさらに継続して図形を描画した場合、制御プロセッサ２０は、既にキャッシュメモリ１００に格納されている以前のジェスチャ又は手書き図形のジェスチャを表すデータに新たなジェスチャの空間的サンプルを追加する。トリガ信号が生成されると、セグメント処理回路２２内の制御回路１２０は、再びストロークデータと空間的サンプルを生成し、これにより制御プロセッサ２０は、手書き図形により表されている画像の更なる推定処理を実行する。このようにして、正しい画像が検索され、表示装置２に表示されると、ユーザは、直ちにこの画像を確認し、この時点で、手書き図形を完成することなく、対応する画像を使用することができる。したがって、このようなストーリーボード作成装置により、ストーリーボードを合理的且つ効率的に作成することができる。
【００４３】
以上、本発明をストーリーボード作成装置の具体例に基づいて説明してきたが、本発明は、例えば汎用対話装置（universal communicator）等の他の分野にも適用できることは、当業者にとって明らかである。すなわち、相手の言語を知らないユーザが、相手に伝えたい物の手書き図形を入力することにより、その物を画像として相手に伝えることができる。これにより、買い物や手書き図形に対応する画像を用いた対話が実現できる。
【００４４】
なお、実施の形態において、ハードウェアとして実現されている画像識別装置の各部分は、ソフトウェアプログラム又は適切なプロセッサにより実行されるコンピュータプログラムとしても同等に実現できることは明らかである。同様に、コンピュータプログラムとして実現されている部分をハードウェアとして同等に実現することもできる。したがって、コンピュータに読み込まれて画像識別装置として機能するコンピュータプログラムも本発明の範囲内にある。同様に、上述した画像識別の手法を実現する命令を表すコンピュータプログラムも本発明の範囲内にある。
【００４５】
【発明の効果】
以上のように、本発明に係る画像識別装置は、空間的サンプルに基づいて、手書き図形を描画するために実行されたストロークを表すストロークデータを判定するセグメント処理手段と、空間的サンプルのシーケンスと、判定されたストロークデータとに基づいて、パラメータデータを生成するストローク前処理手段と、ストローク前処理手段に接続され、パラメータデータに基づいて、画像を識別する画像識別手段とを備える。ストロークデータと空間的サンプルを組み合わせることにより生成されたデータのセットを用いて画像を識別することにより、空間的サンプルのみを用いる場合に比べてデータ量を低減することができる。これにより、従来より少ないデータ量で効率的な画像の識別処理を実現することができる。
【００４６】
また、本発明に係る画像識別方法は、空間的サンプルから、手書き図形を描画するために実行されたストロークを分解するステップと、空間的サンプルのシーケンスを、分解されたストロークデータに関連付けてパラメータデータを生成するステップと、パラメータデータに基づいて、画像を識別するステップとを有する。ストロークデータと空間的サンプルを組み合わせることにより生成されたデータのセットを用いて画像を識別することにより、空間的サンプルのみを用いる場合に比べてデータ量を低減することができる。これにより、従来より少ないデータ量で効率的な画像の識別処理を実現することができる。
【図面の簡単な説明】
【図１】本発明を適用したストーリーボード作成装置の構成を示すブロック図である。
【図２】図１に示すストーリーボード作成装置の制御部の内部構成を示すブロック図である。
【図３】手書き図形の８つの例を示す図である。
【図４】手書きされた正方形を示す図である。
【図５】図２に示すセグメント処理回路の内部構成を示す図である。
【図６】時間に対するペンの移動方向の変化を表すグラフを示す図である。
【図７】時間に対するペンの移動速度の変化を表すグラフを示す図である。
【図８】手書きされた正方形を単位正方形内で示す図である。
【図９】手書きされた正方形のストロークパラメータを示す図であり、（ａ）は重心を示し、（ｂ）は平均ベクトルを示し、（ｃ）は正規化されたベクトルを示す。
【図１０】（ａ）は手書きされた正方形のバランスを示す図であり、（ｂ）は正方形のバランスを表すために、各象限における各ストロークの開始点及び終了点の数を示す図である。
【図１１】画像識別回路の内部構成を示す図である。
【符号の説明】
２０  制御プロセッサ、２２  セグメント処理回路、２４  ストローク前処理回路、２６  画像識別回路、２８  インターフェイス回路
【図１】
0004697718.tif 000002
【図２】
0004697718.tif 000003
【図３】
0004697718.tif 000004
【図４】
0004697718.tif 000005
【図５】
0004697718.tif 000006
【図６】
0004697718.tif 000007
【図７】
0004697718.tif 000008
【図８】
0004697718.tif 000009
【図９】
0004697718.tif 000010
【図１０】
0004697718.tif 000011
【図１１】
0004697718.tif 000012