JP5735126B2 - システムおよび筆跡検索方法 - Google Patents

システムおよび筆跡検索方法 Download PDF

Info

Publication number
JP5735126B2
JP5735126B2 JP2013541096A JP2013541096A JP5735126B2 JP 5735126 B2 JP5735126 B2 JP 5735126B2 JP 2013541096 A JP2013541096 A JP 2013541096A JP 2013541096 A JP2013541096 A JP 2013541096A JP 5735126 B2 JP5735126 B2 JP 5735126B2
Authority
JP
Japan
Prior art keywords
stroke
strokes
stroke group
search
height
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
Application number
JP2013541096A
Other languages
English (en)
Other versions
JPWO2014174665A1 (ja
Inventor
筒井 秀樹
秀樹 筒井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Application granted granted Critical
Publication of JP5735126B2 publication Critical patent/JP5735126B2/ja
Publication of JPWO2014174665A1 publication Critical patent/JPWO2014174665A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/36Matching; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/414Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Artificial Intelligence (AREA)
  • Character Discrimination (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明の実施形態は、手書き文書を処理する技術に関する。
近年、タブレット、PDA、スマートフォンといった種々の電子機器が開発されている。この種の電子機器の多くは、ユーザによる入力操作を容易にするために、タッチスクリーンディスプレイを備えている。
ユーザは、タッチスクリーンディスプレイ上に表示されるメニューまたはオブジェクトを指などでタッチすることにより、これらメニューまたはオブジェクトに関連づけられた機能の実行を電子機器に指示することができる。
しかし、タッチスクリーンディスプレイを備える既存の電子機器の多くは、画像、音楽、他の各種メディアデータに対する操作性を追求したコンシューマ向け製品であり、会議、商談、商品開発などのビジネスシーンにおける利用については必ずしも適していない場合がある。このため、ビジネスシーンにおいては、いまなお、紙の手帳が広く利用されている。
最近では、手書き文字を認識するためのオンライン手書き文字認識技術も開発されている。
特開平10−97594号公報
しかし、従来では、所望の手書き文書を効率よく検索するための技術については考慮されていないのが現状である。
本発明の一形態の目的は、手書き文書を効率よく検索することができるシステムおよび筆跡検索方法を提供することである。
実施形態によれば、実施形態によれば、システムは、検索手段と、判定手段とを具備する。前記検索手段は、複数の第1ストロークを含む、検索キーである第1のストローク群が入力された場合、前記複数の第1ストロークの筆順および前記複数の第1ストロークの特徴量に基づき、前記第1のストローク群に対応する第2のストローク群であって前記複数の第1ストロークの特徴量に類似する特徴量をそれぞれ有する複数の第2ストロークを含む第2のストローク群を手書き文書から検索する。前記判定手段は、前記複数の第1ストロークを囲む外形の幅と高さの相対的な関係に関する値と前記複数の第2ストロークを囲む外形の幅と高さの相対的な関係に関する値との間の類似度に基づいて、前記第2のストローク群を前記検索キーに対応する検索結果とすべきか否かを判定する。
図1は実施形態に係るシステムで使用される電子機器の外観を示す例示的な斜視図である。 図2は図1の電子機器と外部装置との連携動作を示す例示的な図である。 図3は図1の電子機器のタッチスクリーンディスプレイ上に手書きされる手書き文書の例を示す図である。 図4は図1の電子機器によって生成される、図3の手書き文書に対応する時系列情報を説明するための例示的な図である。 図5は図1の電子機器のシステム構成を示す例示的なブロック図である。 図6は図1の電子機器によって実行されるデジタルノートブックアプリケーションプログラムの機能構成を示す例示的なブロック図である。 図7は図1の電子機器によって実行される筆跡検索において誤って検索される可能性があるストローク群とこのストローク群を検索結果から除外するための処理とを説明するための例示的な図である。 図8は図1の電子機器によって実行される筆跡検索において誤って検索される可能性があるストロークとこのストロークを検索結果から除外するための別の処理とを説明するための例示的な図である。 図9は図1の電子機器によって実行される筆跡検索処理の手順を説明するための例示的なフローチャートである。 図10は図1の電子機器によって表示される筆跡検索画面を示す例示的な図である。 図11は図10の筆跡検索画面上に表示される検索結果を示す例示的な図である。 図12は図10の筆跡検索画面からある手書きページにジャンプする様子を示す例示的な図である。
以下、実施の形態について図面を参照して説明する。
図1は、一実施形態に係るシステムで使用される電子機器の外観を示す斜視図である。この電子機器は、例えば、ペンまたは指によって手書き入力可能なペン・ベースの携帯型電子機器である。この電子機器は、タブレットコンピュータ、ノートブック型パーソナルコンピュータ、スマートフォン、PDA等として実現され得る。以下では、この電子機器がタブレットコンピュータ10として実現されている場合を想定する。タブレットコンピュータ10は、タブレットまたはストレートコンピュータとも称される携帯型電子機器であり、図1に示すように、本体11とタッチスクリーンディスプレイ17とを備える。本体11は、薄い箱形の筐体を有している。タッチスクリーンディスプレイ17は、本体11の上面に重ね合わせるように取り付けられている。
タッチスクリーンディスプレイ17には、フラットパネルディスプレイと、フラットパネルディスプレイの画面上のペンまたは指の接触位置を検出するように構成されたセンサとが組み込まれている。フラットパネルディスプレイは、例えば、液晶表示装置(LCD)であってもよい。センサとしては、例えば、静電容量方式のタッチパネル、電磁誘導方式のデジタイザなどを使用することができる。以下では、デジタイザとタッチパネルの2種類のセンサの双方がタッチスクリーンディスプレイ17に組み込まれている場合を想定する。
デジタイザは、例えば、フラットパネルディスプレイの画面の下側に配置される。タッチパネルは、例えば、フラットパネルディスプレイの画面上に配置される。このタッチスクリーンディスプレイ17は、指を使用した画面に対するタッチ操作のみならず、ペン100を使用した画面に対するタッチ操作も検出することができる。ペン100は例えば電磁誘導ペンであってもよい。ユーザは、外部オブジェクト(ペン100又は指)を使用してタッチスクリーンディスプレイ17上で手書き入力操作を行うことができる。手書き入力操作中においては、画面上の外部オブジェクト(ペン100又は指)の動きの軌跡、つまり手書き入力操作によって手書きされるストロークの軌跡(筆跡)がリアルタイムに描画され、これによって各ストロークの軌跡が画面上に表示される。外部オブジェクトが画面に接触されている間の外部オブジェクトの動きの軌跡が1ストロークに相当する。手書きされた文字または図形などに対応する多数のストロークの集合、つまり多数の軌跡(筆跡)の集合が手書き文書を構成する。
本実施形態では、この手書き文書は、イメージデータではなく、各ストロークの軌跡の座標列とストローク間の順序関係を示す時系列情報として記憶媒体に保存される。この時系列情報の詳細は図4を参照して後述するが、この時系列情報は、複数のストロークが手書きされた順を示し、且つ複数のストロークにそれぞれ対応する複数のストロークデータを含む。換言すれば、この時系列情報は、複数のストロークにそれぞれ対応する時系列のストロークデータの集合を意味する。各ストロークデータは、ある一つのストロークに対応し、このストロークの軌跡上の点それぞれに対応する座標データ系列(時系列座標)を含む。これらストロークデータの並びの順序は、ストロークそれぞれが手書きされた順序つまり筆順に相当する。
タブレットコンピュータ10は、記憶媒体から既存の任意の時系列情報(手書き文書)を読み出し、この時系列情報に対応する手書き文書、つまりこの時系列情報によって示される複数のストロークそれぞれに対応する軌跡を画面上に表示することができる。さらに、タブレットコンピュータ10は編集機能を有している。この編集機能は、「消しゴム」ツール、範囲指定ツール、および他の各種ツール等を用いたユーザによる編集操作に応じて、表示中の手書き文書内の任意のストロークまたは任意の手書き文字等を削除または移動することができる。さらに、この編集機能は、幾つかの手書き操作の履歴を取り消す機能も含んでいる。
さらに、タブレットコンピュータ10は、筆跡検索(ストローク検索)機能も有している。この筆跡検索は、検索キー(クエリ)として手書きされる1以上のストローク(クエリストローク)を用いて、このクエリストロークに対応する1以上のストロークを任意の手書き文書から検索できればどのようなものであっても良い。この筆跡検索は、1以上のクエリストロークに対応する1以上のストロークを含む手書き文書を記憶媒体から検索することもできる。1以上のクエリストロークに対応する1以上のストロークは、例えば、1以上のクエリストロークに類似する1以上のストロークであってもよい。筆跡検索では、例えば、クエリストロークと手書き文書内の複数のストロークそれぞれとの間のマッチング(ストロークマッチング)によって、クエリストロークの特徴量に類似する特徴量を有する1以上のストロークが手書き文書から検索される。検索キー(クエリ)として複数のストロークが手書きによって入力される場合には、クエリストローク群内のストローク毎に上述のストロークマッチングが実行される。
あるストロークの特徴量としては、このストロークの手書き特徴を表すことができる任意の特徴を使用することができる。例えば、特徴量としては、ストロークの形状、ストロークの筆画方向、ストロークの傾斜、等を表す特徴量データを使用しても良い。
この筆跡検索の機能は、ユーザが過去に作成した多数の手書き文書から所望の手書き文書を容易に見つけ出すことを可能にし、またユーザがある手書き文書内から所望の手書き部分を容易に見つけ出すことを可能にする。筆跡検索は、手書き文字だけでなく、手書きの図形、手書きのマーク等を検索することもできる。
本実施形態では、上述の時系列情報(手書き文書)は、1つまたは複数のページとして管理されうる。この場合、時系列情報(手書き文書)を1つの画面に収まる面積単位で区切ることによって、1つの画面に収まる時系列情報のまとまりを1つのページとして記録してもよい。あるいは、ページのサイズを可変できるようにしてもよい。この場合、ページのサイズは1つの画面のサイズよりも大きい面積に広げることができるので、画面のサイズよりも大きな面積の手書き文書を一つのページとして扱うことができる。1つのページ全体をディスプレイに同時に表示できない場合は、そのページを縮小してするようにしてもよいし、縦横スクロールによってページ内の表示対象部分を移動するようにしてもよい。
図2は、タブレットコンピュータ10と外部装置との連携動作の例を示している。タブレットコンピュータ10は、パーソナルコンピュータ1やクラウドと連携することができる。すなわち、タブレットコンピュータ10は、無線LANなどの無線通信デバイスを備えており、パーソナルコンピュータ1との無線通信を実行することができる。さらに、タブレットコンピュータ10は、インターネット上のサーバ2との通信を実行することもできる。サーバ2はオンラインストレージサービス、他の各種クラウドコンピューティングサービスを実行するサーバであってもよい。
パーソナルコンピュータ1はハードディスクドライブ(HDD)のようなストレージデバイスを備えている。タブレットコンピュータ10は、時系列情報(手書き文書)をネットワーク越しにパーソナルコンピュータ1に送信して、パーソナルコンピュータ1のHDDに記録することができる(アップロード)。タブレットコンピュータ10とパーソナルコンピュータ1との間のセキュアな通信を確保するために、通信開始時には、パーソナルコンピュータ1がタブレットコンピュータ10を認証するようにしてもよい。この場合、タブレットコンピュータ10の画面上にユーザに対してIDまたはパスワードの入力を促すダイアログを表示してもよいし、タブレットコンピュータ10のIDなどを自動的にタブレットコンピュータ10からパーソナルコンピュータ1に送信してもよい。
これにより、タブレットコンピュータ10内のストレージの容量が少ない場合でも、タブレットコンピュータ10が多数の時系列情報(手書き文書)あるいは大容量の時系列情報(手書き文書)を扱うことが可能となる。
さらに、タブレットコンピュータ10は、パーソナルコンピュータ1のHDDに記録されている任意の1以上の手書き文書を読み出し(ダウンロード)、その読み出した手書き文書によって示されるストロークそれぞれの軌跡をタブレットコンピュータ10のディスプレイ17の画面に表示することができる。この場合、複数の手書き文書それぞれのページを縮小することによって得られるサムネイルの一覧をディスプレイ17の画面上に表示してもよいし、これらサムネイルから選ばれた1ページをディスプレイ17の画面上に通常サイズで表示してもよい。
さらに、タブレットコンピュータ10が通信する先はパーソナルコンピュータ1ではなく、上述したように、ストレージサービスなどを提供するクラウド上のサーバ2であってよい。タブレットコンピュータ10は、手書き文書をネットワーク越しにサーバ2に送信して、サーバ2のストレージデバイス2Aに記録することができる(アップロード)。さらに、タブレットコンピュータ10は、サーバ2のストレージデバイス2Aに記録されている任意の手書き文書を読み出して(ダウンロード)、その手書き文書によって示されるストロークそれぞれの軌跡をタブレットコンピュータ10のディスプレイ17の画面に表示することができる。
このように、本実施形態では、手書き文書が格納される記憶媒体は、タブレットコンピュータ10内のストレージデバイス、パーソナルコンピュータ1内のストレージデバイス、サーバ2のストレージデバイスのいずれであってもよい。
また、上述の筆跡検索を実行可能な本実施形態のシステムは、タブレットコンピュータ10内で実現されるローカルなシステムであってもよいが、1以上のサーバから構成されるシステム(サーバシステム)であってもよい。この場合、タブレットコンピュータ10は、クエリストローク群をサーバシステムに送信する処理と、検索結果をサーバシステムから受信してタブレットコンピュータ10の画面上に検索結果を表示する処理とを実行可能なクライアント端末として機能してもよい。
次に、図3および図4を参照して、ユーザによって手書きされたストローク(文字、マーク、図形、表など)と手書き文書との関係について説明する。図3は、ペン100などを使用してタッチスクリーンディスプレイ17上に手書きされる手書き文字列の例を示している。
手書き文書では、一旦手書きされた文字や図形などの上に、さらに別の文字や図形などが手書きされるというケースが多い。図3においては、「ABC」の手書き文字列が「A」、「B」、「C」の順番で手書きされ、この後に、手書きの矢印が、手書き文字「A」のすぐ近くに手書きされた場合が想定されている。
手書き文字「A」は、ペン100などを使用して手書きされる2つのストローク(「∧」形状の軌跡、「−」形状の軌跡)によって、つまり2つの軌跡によって表現される。最初に手書きされる「∧」形状のペン100の軌跡は例えば等時間間隔でリアルタイムにサンプリングされ、これによって「∧」形状のストロークの時系列座標SD11、SD12、…SD1nが得られる。同様に、次に手書きされる「−」形状のペン100の軌跡も等時間間隔でリアルタイムにサンプリングされ、これによって「−」形状のストロークの時系列座標SD21、SD22、…SD2nが得られる。
手書き文字「B」は、ペン100などを使用して手書きされた2つのストローク、つまり2つの軌跡によって表現される。手書き文字「C」は、ペン100などを使用して手書きされた1つのストローク、つまり1つの軌跡によって表現される。手書きの「矢印」は、ペン100などを使用して手書きされた手書きされた2つのストローク、つまり2つの軌跡によって表現される。
図4は、図3の手書き文字列に対応する時系列情報200を示している。時系列情報200は、複数のストロークデータSD1、SD2、…、SD7を含む。時系列情報200内においては、これらストロークデータSD1、SD2、…、SD7は、筆跡順に、つまり複数のストロークが手書きされた順に時系列に並べている。
時系列情報200において、先頭の2つのストロークデータSD1、SD2は、手書き文字「A」の2つのストロークをそれぞれ示している。3番目と4番目のストロークデータSD3、SD4は、手書き文字「B」を構成する2つのストロークをそれぞれ示している。5番目のストロークデータSD5は、手書き文字「C」を構成する1つのストロークを示している。6番目と7番目のストロークデータSD6、SD7は、手書き「矢印」を構成する2つのストロークをそれぞれ示している。
各ストロークデータは、一つのストロークに対応する座標データ系列(時系列座標)、つまり一つのストロークの軌跡上の複数の点それぞれに対応する複数の座標を含む。各ストロークデータにおいては、複数の座標はストロークが書かれた順に時系列に並べられている。例えば、手書き文字「A」に関しては、ストロークデータSD1は、手書き文字「A」の「∧」形状のストロークの軌跡上の点それぞれに対応する座標データ系列(時系列座標)、つまりn個の座標データSD11、SD12、…SD1nを含む。ストロークデータSD2は、手書き文字「A」の「−」形状のストロークの軌跡上の点それぞれに対応する座標データ系列、つまりn個の座標データSD21、SD22、…SD2nを含む。なお、座標データの数はストロークデータ毎に異なっていてもよい。すなわち、ペン100の軌跡は等時間間隔でリアルタイムにサンプリングされるので、ストロークの長さが長いほど、あるいはストロークの手書き速度が遅いほど、座標データの数は増加する。
各座標データは、対応する軌跡内のある1点に対応するX座標およびY座標を示す。例えば、座標データSD11は、「∧」形状のストロークの始点のX座標(X11)およびY座標(Y11)を示す。SD1nは、「∧」形状のストロークの終点のX座標(X1n)およびY座標(Y1n)を示す。
さらに、各座標データは、その座標に対応する点が手書きされた時点に対応するタイムスタンプ情報Tを含んでいてもよい。手書きされた時点は、絶対時間(例えば、年月日時分秒)またはある時点を基準とした相対時間のいずれであってもよい。例えば、各ストロークデータに、ストロークが書き始められた絶対時間(例えば、年月日時分秒)をタイムスタンプ情報として付加し、さらに、ストロークデータ内の各座標データに、絶対時間との差分を示す相対時間をタイムスタンプ情報Tとして付加してもよい。
このように、各座標データにタイムスタンプ情報Tが追加された時系列情報を使用することにより、ストローク間の時間的関係をより精度よく表すことができる。
さらに、各座標データには、筆圧を示す情報(Z)を追加してもよい。
図4で説明したような構造を有する時系列情報(手書き文書情報)200は、個々のストロークの筆跡だけでなく、ストローク間の時間的関係も表すことができる。したがって、この手書き文書情報200を使用することにより、図3に示すようにたとえ手書き「矢印」の先端部が手書き文字「A」上に重ねてまたは手書き文字「A」に近接して書かれたとしても、手書き文字「A」と手書き「矢印」の先端部とを異なる文字または図形として扱うことが可能となる。なお、タイムスタンプ情報Tはオプション情報として使用してもよく、各々がタイムスタンプ情報Tを有さない複数のストロークデータを上述の時系列情報として使用しても良い。
さらに、本実施形態では、上述したように、手書き文書は、イメージまたは文字認識結果ではなく、時系列のストロークデータの集合として記憶されるので、手書き文字の言語に依存せずに手書き文字を扱うことができる。よって、本実施形態の手書き文書(時系列情報)200の構造は、使用言語の異なる世界中の様々な国で共通に使用できる。
図5は、タブレットコンピュータ10のシステム構成を示す。
タブレットコンピュータ10は、図5に示されるように、CPU101、システムコントローラ102、主メモリ103、グラフィクスコントローラ104、BIOS−ROM105、不揮発性メモリ106、無線通信デバイス107、エンベデッドコントローラ(EC)108等を備える。
CPU101は、タブレットコンピュータ10内の各種モジュールの動作を制御するプロセッサである。CPU101は、ストレージデバイスである不揮発性メモリ106から主メモリ103にロードされる各種ソフトウェアを実行する。これらソフトウェアには、オペレーティングシステム(OS)201、および各種アプリケーションプログラムが含まれている。アプリケーションプログラムには、デジタルノートブックアプリケーションプログラム202が含まれている。このデジタルノートブックアプリケーションプログラム202は、上述の手書き文書を作成および表示する機能、手書き文書を編集する機能、筆跡検索機能、および認識機能等を有している。
また、CPU101は、BIOS−ROM105に格納された基本入出力システム(BIOS)も実行する。BIOSは、ハードウェア制御のためのプログラムである。
システムコントローラ102は、CPU101のローカルバスと各種コンポーネントとの間を接続するデバイスである。システムコントローラ102には、主メモリ103をアクセス制御するメモリコントローラも内蔵されている。また、システムコントローラ102は、PCI EXPRESS規格のシリアルバスなどを介してグラフィクスコントローラ104との通信を実行する機能も有している。
グラフィクスコントローラ104は、本タブレットコンピュータ10のディスプレイモニタとして使用されるLCD17Aを制御する表示コントローラである。このグラフィクスコントローラ104によって生成される表示信号はLCD17Aに送られる。LCD17Aは、表示信号に基づいて画面イメージを表示する。このLCD17A上にはタッチパネル17Bおよびデジタイザ17Cが配置されている。タッチパネル17Bは、LCD17Aの画面上で入力を行うための静電容量式のポインティングデバイスである。指が接触される画面上の接触位置および接触位置の動き等はタッチパネル17Bによって検出される。デジタイザ17CはLCD17Aの画面上で入力を行うための電磁誘導式のポインティングデバイスである。ペン100が接触される画面上の接触位置および接触位置の動き等はデジタイザ17Cによって検出される。
無線通信デバイス107は、無線LANまたは3G移動通信などの無線通信を実行するように構成されたデバイスである。EC108は、電力管理のためのエンベデッドコントローラを含むワンチップマイクロコンピュータである。EC108は、ユーザによるパワーボタンの操作に応じて本タブレットコンピュータ10を電源オンまたは電源オフする機能を有している。
次に、図6を参照して、デジタルノートブックアプリケーションプログラム202の機能構成について説明する。
デジタルノートブックアプリケーションプログラム202は、ペン軌跡表示処理部301、時系列情報生成部302、編集処理部303、ページ保存処理部304、ページ取得処理部305、手書き文書表示処理部306、クエリストローク取得部307、および検索処理部308等を備える。
デジタルノートブックアプリケーションプログラム202は、タッチスクリーンディスプレイ17を用いて入力されるストロークデータを使用することによって、手書き文書(手書きデータ)の作成、表示、編集等を行う。タッチスクリーンディスプレイ17は、「タッチ」、「移動(スライド)」、「リリース」等のイベントの発生を検出するように構成されている。「タッチ」は、画面上に外部オブジェクトが接触したことを示すイベントである。「移動(スライド)」は、画面上に外部オブジェクトが接触されている間に接触位置が移動されたことを示すイベントである。「リリース」は、画面から外部オブジェクトが離されたことを示すイベントである。
ペン軌跡表示処理部301および時系列情報生成部302は、タッチスクリーンディスプレイ17によって発生される「タッチ」または「移動(スライド)」のイベントを受信し、これによって手書き入力操作を検出する。「タッチ」イベントには、接触位置の座標が含まれている。「移動(スライド)」イベントにも、移動先の接触位置の座標が含まれている。したがって、ペン軌跡表示処理部301および時系列情報生成部302は、タッチスクリーンディスプレイ17から、接触位置の動きの軌跡に対応する座標列を受信することができる。
ペン軌跡表示処理部301は、タッチスクリーンディスプレイ17から座標列を受信し、この座標列に基づいて、ペン100等を使用した手書き入力操作によって入力される複数のストロークの軌跡をタッチスクリーンディスプレイ17内のLCD17Aの画面上に表示する。このペン軌跡表示処理部301により、画面にペン100が接触している間のペン100の軌跡、つまり各ストロークの軌跡がLCD17Aの画面上に描かれる。
時系列情報生成部302は、タッチスクリーンディスプレイ17から出力される上述の座標列を受信し、この座標列に基づいて、上述の複数のストロークに対応する複数のストロークデータ(時系列情報)を生成する。これらストロークデータ(時系列情報)、つまり各ストロークの各点に対応する座標および各ストロークのタイムスタンプ情報は作業メモリ401に一時保存してもよい。
ページ保存処理部304は、複数のストロークに対応する複数のストロークデータを記憶媒体402に保存する。記憶媒体402は、上述したように、タブレットコンピュータ10内のストレージデバイス、パーソナルコンピュータ1内のストレージデバイス、サーバ2のストレージデバイスのいずれであってもよい。
ページ取得処理部305は、記憶媒体402から既に格納されている任意の手書き文書を読み出す。読み出された手書き文書は手書き文書表示処理部306に送られる。手書き文書表示処理部306は、手書き文書を解析し、この解析結果に基づいて、手書き文書内の複数のストロークデータによって示される複数のストロークの軌跡を画面上に手書きページとして表示する。
編集処理部303は現在表示中の手書き文書(手書きページ)を編集するための処理を実行する。すなわち、編集処理部303は、タッチスクリーンディスプレイ17上でユーザによって行われる編集操作に応じて、表示されている複数のストローク内の1以上のストロークを削除または移動等するための編集処理を実行する。さらに、編集処理部303は、編集処理の結果を表示中の手書き文書に反映するためにこの手書き文書を更新する。
ユーザは、「消しゴム」ツール等を使用して、表示されている複数のストローク内の任意のストロークを削除することができる。また、ユーザは、画面上の任意の部分を丸または四角によって囲むための「範囲指定」ツールを使用して、表示されている手書きページ内の任意の部分を範囲指定することができる。
クエリストローク取得部307は、検索キー(クエリ)として使用されるストローク群(クエリストローク群)を取得する。クエリストローク群としては、デジタルノートブックアプリケーションプログラム202によって表示される筆跡検索画面上にユーザによって検索キー(クエリ)として手書きされる1以上のストロークを使用することができる。また、ユーザによって選択される、手書きページ内の1以上のストロークを、クエリストローク群として使用することもできる。
検索処理部308は、上述の筆跡検索を実行するために、ストローク検索部309および外形類似度算出部310を備える。ストローク検索部309は、クエリストローク取得部307によって取得されるクエリストローク群を使用して上述の筆跡検索を実行するように構成されている。すなわち、ストローク検索部309は、クエリストローク群に対応するストローク群を手書き文書から検索する筆跡検索を実行する。この場合、例えば、ストローク検索部309は、クエリストローク群の特徴量と類似する特徴量を有するストローク群を手書き文書から検索してもよい。この筆跡検索では、ストローク間のマッチングによって、クエリストローク群に対応するストローク群、例えば、クエリストローク群の特徴量に類似する特徴量を有するストローク群、が手書き文書から検索される。クエリストローク群は1以上のストロークを含み、検索される各ストローク群も1以上のストロークを含む。上述したように、各ストロークの特徴量としては、ストロークの形状、ストロークの筆画方向、ストロークの傾斜、等を使用しても良い。
2つのストローク間の類似度の計算方法としては、様々な方法を使用することができる。例えば各ストロークをベクトルとして扱ってもよい。この場合、すべてのストロークが同じ点の数(サンプル数)を有するように、各ストロークを元のストロークデータに基づいて再サンプリングしてもよい。
さらに、各ストロークの相対的な位置関係を正規化するために、各ストロークのベクトルを差分ベクトルに変換してもよい。例えば、あるストロークが(x1,y1)、(x2,y2)、(x3,y3)という座標データ列を含む場合、この座標データ列を(0,0)、(x2−x1,y2−x1)、(x3−x1,y3−y1)という座標データ列に変換してもよい。このような変換により全てのストロークを原点から書いたストロークとみなすことができるので、各ストロークが書かれた手書きページ内の位置に関係なく、筆跡検索を行うことが可能となる。なお、座標データ列の変換には、各ストロークの相対的な位置関係を正規化することが可能な任意の変換方法を使用し得る。
またさらに、各ストロークの大きさを正規化するために、個々のストロークの最大幅または最大高さで個々のストロークのベクトル座標を割ってもよい。
そして、比較対象のベクトル(差分ベクトル)同士の類似度を計算するために、それら比較対象のベクトル(差分ベクトル)間の内積を比較対象のベクトル(差分ベクトル)間の類似度として算出してもよい。
また、計算の負荷を軽減するために、各手書き文書内の個々のストロークの特徴量を表す特徴量データ(特徴量ベクトル)を予め算出し、この特徴量データをデータベースに蓄積しても良い。この場合、ストローク検索部309は、クエリストローク群の特徴量を算出し、クエリストローク群の特徴量とデータベース内の各ストロークの特徴量データとを使用して、クエリストローク群の特徴量に類似する特徴量を有するストローク群を検索することができる。また、計算量を削減するために、特徴量ベクトルの次元を削減するための処理を行っても良い。
一般には、クエリストローク群は1ストロークではなく、複数のストロークを含むストローク列である場合が多い。この場合、クエリストローク群(クエリストローク列)に含まれるストローク毎に、このストロークと手書き文書内の複数のストロークそれぞれとの間の類似度が求められる。そして、クエリストローク列の筆順を考慮して、このクエリストローク列に類似するクエリストローク列が手書き文書から検索される。2つのストローク列間の類似度の算出においては、DP(Dynamic Programming)マッチングを使用してもよい。
ところで、筆跡検索では、クエリストローク列に含まれるストローク毎にこのストロークに対応するストロークが検索されるので、例えば、クエリストローク列に含まれるストローク毎にこのストロークと手書き文書内の個々のストロークとの間の類似度が求められるので、クエリストローク列に含まれるストロークの組み合わせによっては、例えば、クエリとして手書きされた手書き文字列と全く異なる手書き文字列等が、クエリストローク列に類似しているストローク列として誤って検索されてしまう場合がある。
例えば、3つのストロークを含む手書き文字「H」がクエリストローク群として手書きされた場合を想定する。この場合、別の3つの文字から構成される手書き文字列「1−1」などが誤って検索されてしまう場合がある。
このような検索の誤り(ストローク群の誤検出)は、クエリストローク群が複数のストロークを含む場合に発生しやすい。
そこで、本実施形態では、検索処理部308には外形類似度算出部310が追加されている。外形類似度算出部310は、クエリストローク群の外形と筆跡検索によって検索されるストローク群の外形に応じて、筆跡検索によって検索されるストローク群をクエリに対応する検索結果とすべきか否かを判定するように構成されている。この場合、外形類似度算出部310は、クエリストローク群の外形と筆跡検索によって検索されるストローク群の外形との間の類似度を求めてもよい。そして、外形類似度算出部310は、外形間の類似度に応じて、筆跡検索によって検索されるストローク群をクエリに対応する検索結果とすべきか否かを判定してもよい。
誤検出されるストローク群は、クエリストローク群の長さと大きく異なる長さを有するストローク群である場合がある。このため、クエリストローク群の外形と筆跡検索によって検索されるストローク群の外形とに応じて、筆跡検索によって検索されるストローク群をクエリに対応する検索結果とすべきか否かを判定するという上述の簡便な処理により、筆跡検索によって検索されるストローク群が、誤検出されたストローク群であるか否かを容易に推定することができる。
クエリストローク群の外形(または検索されるストローク群の外形)としては、ストローク群の大まかな外形形状(外観形状)を表すことができる任意の形状を使用することができる。
あるストローク群を含む2次元の領域、例えば、このストローク群の画面内の表示領域の外形を、このストローク群の外形として使用してもよい。また、このストローク群を囲む外接枠(外接矩形など)をこのストローク群の外形として使用してもよい。
上述したように、誤検出されるストローク群はクエリストローク群と異なる長さ(横方向の長さ)を有している場合が多い。したがって、外形間の類似度としては、クエリストローク群の外形の幅(横方向の長さ)と高さ(縦方向の長さ)の相対的な関係と、検索されるストローク群の外形の幅(横方向の長さ)と高さ(縦方向の長さ)の相対的な関係との間の類似度を使用しても良い。すなわち、外形類似度算出部310は、クエリストローク群の外形の幅と高さの相対的な関係に関する値と、検索されるストローク群の外形の幅と高さの相対的な関係に関する値とに応じて、検索されるストローク群をクエリに対応する検索結果とすべきか否かを判定する。これにより、外形が比較される2つのストローク群間のサイズ(面積)の違いに影響されること無く、検索されるストローク群が誤検出されたストローク群であるか否かを精度良く推定することができる。
あるいは、外形間の類似度は、クエリストローク群に含まれる手書きブロックの個数と、検索されるストローク群に含まれる手書きブロックの個数とに基づいて求めても良い。この場合、外形類似度算出部310は、クエリストローク群に含まれる手書きブロックの個数に関する値と、検索されるストローク群に含まれる手書きブロックの個数に関する値に応じて、検索されるストローク群をクエリに対応する検索結果とすべきか否かを判定する。
上述の手書きブロック(または単にブロックと云う)はストロークの集まりを意味する。換言すれば、孤立した1つのストローク、または互いに近接する複数のストロークを、一つの手書きブロックとして扱うことができる。接続されているストローク同士を互いに近接する複数のストロークとして扱っても良いし、ストローク間の距離が予め設定された閾値以下のストローク同士を互いに近接する複数のストロークとして扱っても良い。
図7は、筆跡検索において誤検出されるストローク群とこのストローク群を検索結果から除外するための処理とを説明するための図である。
ここでは、手書き文字列「ABH」に対応するストローク群410がクエリストローク群として取得された場合を想定する。この場合、もしストローク群420として示されているような手書き文字列が手書き文書内に存在するならば、このストローク群420がストローク群410に類似するストローク群として検索される場合がある。
本実施形態では、外形類似度算出部310は、クエリストローク群410の外形と検索されたストローク群420の外形との間の類似度を算出する。上述したように外形には様々な形状を使用し得るが、以下では、処理の単純化の為に、外接矩形を外形として使用する場合を想定する。外形類似度算出部310は、クエリストローク群410の外接矩形411の幅と高さの相対的な関係に関する値と、検索されたストローク群420の外接矩形の幅と高さの相対的な関係に関する値とに応じて、ストローク群420をクエリに対応する検索結果とすべきか否かを判定する。具体的には、外形類似度算出部310は、クエリストローク群410の外接矩形411のアスペクト比と、検索されたストローク群420の外接矩形のアスペクト比とを求める。
外接矩形411はクエリストローク群410を外形形状を表す枠である。この外接矩形411は、手書き文字列「ABH」が表示される画面上の表示領域に相当するものといえる。外接矩形411のアスペクト比は、外接矩形411の幅W1と高さH1の相対的な関係を表す指標として用いられる。同様に、外接矩形421はストローク群420を外形形状を表す枠である。この外接矩形421は、ストローク群420が表示される画面上の表示領域に相当するものといえる。外接矩形421のアスペクト比は、外接矩形421の幅W2と高さH2の相対的な関係を表す指標として用いられる。各外接矩形のアスペクト比としては、幅/高さ、または高さ/幅のいずれを使用しても良い。
外形類似度算出部310は、外接矩形411のアスペクト比(=W1/H1またはH1/W1)と外接矩形421のアスペクト比(=W2/H2またはH2/W2)とを比較し、これらアスペクト比間の比率がある閾範囲内に属する場合に、クエリストローク群410の外形とストローク群420の外形とが互いに類似していると判定し、比率がこの範囲を超える場合に、クエリストローク群410の外形とストローク群420の外形とが互いに類似していないと判定し得る。例えば、外接矩形411のアスペクト比(クエリストローク群410の外形のアスペクト比)をA1、外接矩形421のアスペクト比(検索結果候補であるストローク群420の外形のアスペクト比)をA2とするとき、A2/A1の値が0.8から1.2の範囲内であれば、外形類似度算出部310は、クエリストローク群410の外形とストローク群420の外形が互いに類似していると判定する。
ストローク群420の高さH2はクエリストローク群410の高さH1とほぼ等しいが、ストローク群420の幅W2はクエリストローク群410の幅W1よりも長い。したがって、外形類似度算出部310は、クエリストローク群410のアスペクト比とストローク群420のアスペクト比とを比較することによってクエリストローク群410の外形とストローク群420の外形が互いに類似していないと判断することができ、ストローク群420を検索結果から除外することができる。
次に、手書き文字列「TABLET」に対応するストローク群430がクエリストローク群として取得された場合を想定する。この場合、もし、たとえば手書き文字列「−1A131−E−1」と読めるストローク群440が手書き文書内に存在するならば、このストローク群440がストローク群430に類似するストローク群として検索される場合がある。外形類似度算出部310は、クエリストローク群430の外接矩形431のアスペクト比(=W3/H3またはH3/W3)とストローク群440の外接矩形441のアスペクト比(=W4/H4またはH4/W4)とを比較して、クエリストローク群430の外形とストローク群440の外形が類似しているか否かを判断する。
ストローク群440の高さH4はクエリストローク群430の高さH3とほぼ等しいが、ストローク群440の幅W4はクエリストローク群430の幅W3よりも長い。したがって、外形類似度算出部310は、クエリストローク群430のアスペクト比とストローク群440のアスペクト比とを比較することによってクエリストローク群430の外形とストローク群440の外形が互いに類似していないと判断することができ、ストローク群440を検索結果から除外することができる。
図8は、アスペクト比の代わりに手書きブロック数を使用して、外形間の類似度を求めるための処理を示す。
クエリストローク群410に関しては、外形類似度算出部310は、孤立した1つのストロークまたは互いに近接する複数のストロークが一つの手書きブロックに分類されるように、クエリストローク群410内の複数のストロークを分類する。これにより、クエリストローク群410内の複数のストロークは3つの手書きブロックB11,B12,B13に分類され得る。同様にして、外形類似度算出部310は、孤立した1つのストロークまたは互いに近接する複数のストロークが一つの手書きブロックに分類されるように、ストローク群420内の複数のストロークを分類する。これにより、ストローク群420内の複数のストロークは7つの手書きブロックB21,B22,B23,B24,B25,B26,B27に分類され得る。
外形類似度算出部310は、クエリストローク群410内の手書きブロックの数と、ストローク群420内の手書きブロックの数とを比較し、それら2つのブロック数の比率がある一定の範囲内であるならば、クエリストローク群410の外形とストローク群420の外形とが類似していると判定し、2つのブロック数の比率がこの範囲を超えるならば、クエリストローク群410の外形とストローク群420の外形とが類似していないと判定し得る。
例えばクエリストローク群410のブロック数をC1、ストローク群420のブロック数をC2とするとき、C2/C1の値が0.8から1.2の範囲内であるならば、外形類似度算出部310は、クエリストローク群410の外形とストローク群420の外形が類似していると判定する。
クエリストローク群410のブロック数が3であるのに対し、ストローク群420のブロック数は7であるので、外形類似度算出部310は、クエリストローク群410の外形とストローク群420の外形が類似していないと判断することができ、ストローク群420を検索結果から除外することができる。
次に、手書き文字列「TABLET」に対応するクエリストローク群430に類似するストローク群として、手書き文字列「−1A131−E−1」に対応するストローク群440が検索された場合を想定する。
クエリストローク群430に関しては、外形類似度算出部310は、孤立した1つのストロークまたは互いに近接する複数のストロークが一つの手書きブロックに分類されるように、クエリストローク群430内の複数のストロークを分類する。これにより、クエリストローク群430内の複数のストロークは6つの手書きブロックB31,B32,B33,B34,B35,B36に分類され得る。同様にして、外形類似度算出部310は、孤立した1つのストロークまたは互いに近接する複数のストロークが一つの手書きブロックに分類されるように、ストローク群440内の複数のストロークを分類する。これにより、ストローク群440内の複数のストロークは10個の手書きブロックB41,B42,B43,B44,B45,B46,B47,B48,B49,B50に分類され得る。
クエリストローク群430のブロック数が6であるのに対し、ストローク群440のブロック数は10であるので、外形類似度算出部310は、クエリストローク群430の外形とストローク群440の外形が類似していないと判断することができ、ストローク群440を検索結果から除外することができる。
図9のフローチャートは、上述の外形類似度を算出する処理を含む筆跡検索処理全体の手順を示す。
クエリストローク取得部307は、ユーザによって検索画面上に手書きされるクエリストローク群(クエリストロークデータ)を取得し、このクエリストロークデータを検索処理部308に入力する(ステップS11)。クエリストローク群は1以上のストロークを含む。このため、クエリストロークデータは、1以上のクエリストロークに対応する1以上のストロークデータである。
検索処理部308のストローク検索部309は、クエリストローク群に含まれる各ストロークと検索対象の手書き文書内の複数のストロークそれぞれとの間のマッチングによって、クエリストローク群に含まれるストローク毎に当該ストロークに対応するストロークを手書き文書から検索する(ステップS12)。ステップS12では、ストローク検索部309は、クエリストローク群に対応する1以上のストローク群を検索することができる。ステップS12では、例えば、クエリストローク群の特徴量に類似する特徴量を有する1以上のストローク群が検索される。以下では、クエリストローク群に対応する検索結果候補として、各々が1以上のストロークを含む複数のストローク群が検索された場合を想定する。
外形類似度算出部310は、検索された複数のストローク群内の1つのストローク群を選択する(ステップS13)。そして、外形類似度算出部310は、クエリストローク群の外形と選択したストローク群の外形に応じて、選択したストローク群をクエリに対応する検索結果とすべきか否かを判定する。例えば、外形類似度算出部310は、クエリストローク群の外形と選択したストローク群の外形との間の類似度(外形類似度)を求める(ステップS14)。このステップS14では、求めた外形類似度に基づいて、外形類似度算出部310は、選択したストローク群がクエリストローク群に対応するストローク群らしさを評価し、選択したストローク群をクエリに対応する検索結果とすべきか否かを判定する。上述したように、2つのストローク群間の外形類似度が所定の範囲内に属しているならば、つまり2つのストローク群の外形が互いに類似していれば、外形類似度算出部310は、選択したストローク群をクエリに対応する検索結果とすべきことを決定する。一方、2つのストローク群間の外形類似度が上述の所定の範囲内に属していないならば、つまり2つのストローク群の外形が互いに類似していなければ、外形類似度算出部310は、選択したストローク群をクエリに対応する検索結果とすべきでないことを決定する。
検索された全てのストローク群に対する評価が完了するまで、外形類似度算出部310は、ステップS13、S14の処理を繰り返し実行する(ステップS15)。検索された全てのストローク群に対する評価が完了すると(ステップS15のYES)、検索処理部308は、外形類似度算出部310による評価結果に基づき、外形類似度が低いと判定されたストローク群を検索結果から除外する。そして、検索処理部308は、検索結果とすべきことが決定されたストローク群のみを検索結果画面上に表示する(ステップS16)。これにより、クエリストローク群に対応する手書き文字列と全く異なる手書き文字列などが検索結果として出力されることを防止することができるので、筆跡検索処理の精度を高めることができる。
図10は、デジタルノートブックアプリケーションプログラム202によってユーザに提示される筆跡検索画面500の例示である。
筆跡検索画面500は、検索キー(クエリ)入力領域501、検索ボタン501A、クリアボタン501Bを表示する。検索キー入力領域501は、検索キー(クエリ)とすべき文字列または図形を手書きするための入力領域である。検索ボタン501Aは、筆跡検索処理の実行を指示するためのボタンである。クリアボタン501Bは、検索キー入力領域501に手書きされた文字列または図形の削除(クリア)を指示するためのボタンである。
筆跡検索画面500は、さらに、複数の手書きページサムネイル601を表示してもよい。図10の例においては、9個の手書き文書それぞれに対応する9個の手書きページサムネイル601が表示されている。
図11に示されているように、検索キー入力領域501に例えば手書き文字列「TABLET」が入力されている状態で、検索ボタン501A上で行われるジェスチャ(例えばタップジェスチャ等)が検出された場合、デジタルノートブックアプリケーションプログラム202は、9個の手書き文書の各々から手書き文字列「TABLET」に対応するクエリストローク群の特徴量に類似する特徴量を有するストローク群を検索するための筆跡検索を開始する。そして、デジタルノートブックアプリケーションプログラム202は、筆跡検索によって検索される複数のストローク群それぞれの外形とクエリストローク群の外形との間の類似度(外形類似度)に基づき、検索された個々のストローク群を、検索キーに対応する検索結果とすべきか否かを決定する。
この場合、デジタルノートブックアプリケーションプログラム202は、その外形(例えばアスペクト比、または手書きブロック数)がクエリストローク群の外形(例えばアスペクト比、または手書きブロック数)と著しく異なるストローク群を検索結果から除外する。そして、筆跡検索画面500上には、比較的高い外形類似度を有すると判定されたクエリストローク群(ここでは手書き文字列「TABLET」)を含む幾つかの手書き文書それぞれに対応する手書きページサムネイルが検索結果として表示される。図11においては、9個の手書きページの中の5個の手書きページが検索結果として表示された場合が例示されている。ヒットワード、つまり5個の手書きページサムネイル中の手書き文字列「TABLET」は強調表示される。
検索される5個の手書きページサムネイルの1つがユーザによって選択されたならば、図12に示すように、選択された手書きページサムネイル601Aに対応する手書きページ601Bが通常のサイズで画面上に表示される。手書きページ601Bには、検索ボタン700が表示される。ユーザによって検索ボタン700がタップされたならば、表示画面の内容は、図12の左側に示される検索画面に戻される。
以上説明したように、本実施形態においては、検索キーである第1のストローク群に対応する第2のストローク群を手書き文書から検索する筆跡検索が実行される。そして、第1のストローク群の外形と筆跡検索によって検索される第2のストローク群の外形に応じて、第2のストローク群を検索キーに対応する検索結果とすべきか否かが判定される。したがって、第1のストローク群に対応する手書き文字列とは全く異なる手書き文字列などが検索結果としてユーザに提示されてしまうことを防ぐことができ、筆跡検索処理の精度を高めることができる。
なお、本実施形態の手書き文書に対する各種処理はコンピュータプログラムによって実現することができるので、このコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じてこのコンピュータプログラムをコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
また、上述したように、本実施形態の筆跡検索処理の機能はタブレットコンピュータ10内のローカルなシステムによって実現しても良いが、1以上のサーバから構成されるサーバシステムであってもよい。あるいは、筆跡検索処理の機能の一部をタブレットコンピュータ10によって実行し、残りの部分を1以上のサーバによって実行するというシステム構成を利用してもよい。
また、本実施形態では、タブレットコンピュータを使用する場合を例示して説明したが、本実施形態の手書き文書処理機能は、通常のデスクトップパーソナルコンピュータに適用することもできる。この場合、手書き入力のための入力デバイスであるタブレット等をデスクトップパーソナルコンピュータに接続すれば良い。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。

Claims (15)

  1. 複数の第1ストロークを含む、検索キーである第1のストローク群が入力された場合、前記複数の第1ストロークの筆順および前記複数の第1ストロークの特徴量に基づき、前記第1のストローク群に対応する第2のストローク群であって前記複数の第1ストロークの特徴量に類似する特徴量をそれぞれ有する複数の第2ストロークを含む第2のストローク群を手書き文書から検索する筆跡検索を実行する検索手段と、
    前記複数の第1ストロークを囲む外形の幅と高さの相対的な関係に関する値と前記複数の第2ストロークを囲む外形の幅と高さの相対的な関係に関する値との間の類似度に基づいて、前記第2のストローク群を前記検索キーに対応する検索結果とすべきか否かを判定する判定手段とを具備するシステム。
  2. 前記判定手段は、前記複数の第1ストロークの外接矩形の幅と高さの相対的な関係に関する値と、前記複数の第2ストロークの外接矩形の幅と高さの相対的な関係に関する値との間の類似度に基づいて、前記第2のストローク群を前記検索キーに対応する検索結果とすべきか否かを判定する請求項1記載のシステム。
  3. 前記複数の第1ストロークの外接矩形の幅と高さの相対的な関係に関する値は、前記複数の第1ストロークの外接矩形のアスペクト比であり、
    前記複数の第2ストロークの外接矩形の幅と高さの相対的な関係に関する値は、前記複数の第2ストロークの外接矩形のアスペクト比である請求項記載のシステム。
  4. 前記判定手段は、前記複数の第1ストロークを囲む外形の幅と高さの相対的な関係に関する値と前記複数の第2ストロークを囲む外形の幅と高さの相対的な関係に関する値との間の類似度が第1の類似度未満である場合、前記第2のストローク群を前記検索キーに対応する検索結果から除外すべきと判定する請求項1記載のシステム。
  5. 前記検索手段は、前記第1のストローク群に含まれる各ストロークと前記手書き文書内の複数のストロークそれぞれとの間のマッチングによって、前記第1のストローク群に含まれるストローク毎に当該ストロークに対応するストロークを前記手書き文書から検索する請求項1記載のシステム。
  6. 複数の第1ストロークを含む、検索キーである第1のストローク群が入力された場合、前記複数の第1ストロークの筆順および前記複数の第1ストロークの特徴量に基づき、前記第1のストローク群に対応する第2のストローク群であって前記複数の第1ストロークの特徴量に類似する特徴量をそれぞれ有する複数の第2ストロークを含む第2のストローク群を手書き文書から検索する筆跡検索を実行し、
    前記複数の第1ストロークを囲む外形の幅と高さの相対的な関係に関する値と前記複数の第2ストロークを囲む外形の幅と高さの相対的な関係に関する値との間の類似度に基づいて、前記第2のストローク群を前記検索キーに対応する検索結果とすべきか否かを判定する、筆跡検索方法。
  7. 前記判定することは、前記複数の第1ストロークの外接矩形の幅と高さの相対的な関係に関する値と、前記複数の第2ストロークの外接矩形の幅と高さの相対的な関係に関する値との間の類似度に基づいて、前記第2のストローク群を前記検索キーに対応する検索結果とすべきか否かを判定する請求項6記載の筆跡検索方法。
  8. 前記複数の第1ストロークの外接矩形の幅と高さの相対的な関係に関する値は、前記複数の第1ストロークの外接矩形のアスペクト比であり、
    前記複数の第2ストロークの外接矩形の幅と高さの相対的な関係に関する値は、前記複数の第2ストロークの外接矩形のアスペクト比である請求項7記載の筆跡検索方法。
  9. 前記判定することは、前記複数の第1ストロークを囲む外形の幅と高さの相対的な関係に関する値と前記複数の第2ストロークを囲む外形の幅と高さの相対的な関係に関する値との間の類似度が第1の類似度未満である場合、前記第2のストローク群を前記検索キーに対応する検索結果から除外すべきと判定する請求項6記載の筆跡検索方法。
  10. 前記検索することは、前記第1のストローク群に含まれる各ストロークと前記手書き文書内の複数のストロークそれぞれとの間のマッチングによって、前記第1のストローク群に含まれるストローク毎に当該ストロークに対応するストロークを前記手書き文書から検索する請求項6記載の筆跡検索方法。
  11. コンピュータによって実行されるプログラムであって、前記プログラムは、前記コンピュータに、
    複数の第1ストロークを含む、検索キーである第1のストローク群が入力された場合、前記複数の第1ストロークの筆順および前記複数の第1ストロークの特徴量に基づき、前記第1のストローク群に対応する第2のストローク群であって前記複数の第1ストロークの特徴量に類似する特徴量をそれぞれ有する複数の第2ストロークを含む第2のストローク群を手書き文書から検索する筆跡検索を実行し、
    前記複数の第1ストロークを囲む外形の幅と高さの相対的な関係に関する値と前記複数の第2ストロークを囲む外形の幅と高さの相対的な関係に関する値との間の類似度に基づいて、前記第2のストローク群を前記検索キーに対応する検索結果とすべきか否かを判定する、ことを実行させるためのプログラム。
  12. 前記判定することは、前記複数の第1ストロークの外接矩形の幅と高さの相対的な関係に関する値と、前記複数の第2ストロークの外接矩形の幅と高さの相対的な関係に関する値との間の類似度に基づいて、前記第2のストローク群を前記検索キーに対応する検索結果とすべきか否かを判定する請求項11記載のプログラム。
  13. 前記複数の第1ストロークの外接矩形の幅と高さの相対的な関係に関する値は、前記複数の第1ストロークの外接矩形のアスペクト比であり、
    前記複数の第2ストロークの外接矩形の幅と高さの相対的な関係に関する値は、前記複数の第2ストロークの外接矩形のアスペクト比である請求項12記載のプログラム。
  14. 前記判定することは、前記複数の第1ストロークを囲む外形の幅と高さの相対的な関係に関する値と前記複数の第2ストロークを囲む外形の幅と高さの相対的な関係に関する値との間の類似度が第1の類似度未満である場合、前記第2のストローク群を前記検索キーに対応する検索結果から除外すべきと判定する請求項11記載のプログラム。
  15. 前記検索することは、前記第1のストローク群に含まれる各ストロークと前記手書き文書内の複数のストロークそれぞれとの間のマッチングによって、前記第1のストローク群に含まれるストローク毎に当該ストロークに対応するストロークを前記手書き文書から検索する請求項11記載のプログラム。
JP2013541096A 2013-04-26 2013-04-26 システムおよび筆跡検索方法 Active JP5735126B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/062384 WO2014174665A1 (ja) 2013-04-26 2013-04-26 システムおよび筆跡検索方法

Publications (2)

Publication Number Publication Date
JP5735126B2 true JP5735126B2 (ja) 2015-06-17
JPWO2014174665A1 JPWO2014174665A1 (ja) 2017-02-23

Family

ID=51789300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013541096A Active JP5735126B2 (ja) 2013-04-26 2013-04-26 システムおよび筆跡検索方法

Country Status (3)

Country Link
US (1) US20140321749A1 (ja)
JP (1) JP5735126B2 (ja)
WO (1) WO2014174665A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6125333B2 (ja) * 2013-05-31 2017-05-10 株式会社東芝 検索装置、方法及びプログラム
JP6430198B2 (ja) * 2014-09-30 2018-11-28 株式会社東芝 電子機器、方法及びプログラム
JP6147825B2 (ja) * 2015-09-29 2017-06-14 株式会社東芝 電子機器および方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08153164A (ja) * 1994-09-29 1996-06-11 Nippon Steel Corp 手書き文字認識方法及び装置
JPH08180135A (ja) * 1994-12-22 1996-07-12 Toshiba Corp 図形認識装置及び方法
JP2002259912A (ja) * 2001-02-26 2002-09-13 Mitsubishi Electric Corp オンライン文字列認識装置及びオンライン文字列認識方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPQ131399A0 (en) * 1999-06-30 1999-07-22 Silverbrook Research Pty Ltd A method and apparatus (NPAGE02)
US6002799A (en) * 1986-07-25 1999-12-14 Ast Research, Inc. Handwritten keyboardless entry computer system
IL100198A (en) * 1991-11-29 1999-10-28 Art Advanced Recognition Tech Character recognition method
US5454046A (en) * 1993-09-17 1995-09-26 Penkey Corporation Universal symbolic handwriting recognition system
US5710916A (en) * 1994-05-24 1998-01-20 Panasonic Technologies, Inc. Method and apparatus for similarity matching of handwritten data objects
IL111039A (en) * 1994-09-22 1998-08-16 Advanced Recognition Tech Handwriting recognition system
US5832474A (en) * 1996-02-26 1998-11-03 Matsushita Electric Industrial Co., Ltd. Document search and retrieval system with partial match searching of user-drawn annotations
JPH1097594A (ja) 1996-07-24 1998-04-14 Nippon Steel Corp 手書き文字認識方法、手書き文字認識装置及びその記録媒体
US6226403B1 (en) * 1998-02-09 2001-05-01 Motorola, Inc. Handwritten character recognition using multi-resolution models
US6628808B1 (en) * 1999-07-28 2003-09-30 Datacard Corporation Apparatus and method for verifying a scanned image
JP2004038321A (ja) * 2002-06-28 2004-02-05 Fujitsu Ltd 文書レイアウト解析プログラム、文書レイアウト解析装置および文書レイアウト解析方法
US7574048B2 (en) * 2004-09-03 2009-08-11 Microsoft Corporation Freeform digital ink annotation recognition
US8849034B2 (en) * 2004-12-09 2014-09-30 Hewlett-Packard Development Company, L.P. System, method, and apparatus for triggering recognition of a handwritten shape
JP4443443B2 (ja) * 2005-03-04 2010-03-31 富士通株式会社 文書画像レイアウト解析プログラム、文書画像レイアウト解析装置、および文書画像レイアウト解析方法
US7551779B2 (en) * 2005-03-17 2009-06-23 Microsoft Corporation Word or character boundary-based scratch-out gesture recognition
JP4744317B2 (ja) * 2006-02-16 2011-08-10 富士通株式会社 単語検索装置、単語検索方法、及びコンピュータプログラム
JP4919028B2 (ja) * 2006-03-03 2012-04-18 富士ゼロックス株式会社 画像処理装置および画像処理プログラム
US8311335B2 (en) * 2009-01-28 2012-11-13 Xerox Corporation Model-based comparative measure for vector sequences and word spotting using same
US8000528B2 (en) * 2009-12-29 2011-08-16 Konica Minolta Systems Laboratory, Inc. Method and apparatus for authenticating printed documents using multi-level image comparison based on document characteristics
US8151186B1 (en) * 2011-03-11 2012-04-03 Google Inc. Comparing text pages using image features based on word positions
US8331670B2 (en) * 2011-03-22 2012-12-11 Konica Minolta Laboratory U.S.A., Inc. Method of detection document alteration by comparing characters using shape features of characters
US8831350B2 (en) * 2011-08-29 2014-09-09 Dst Technologies, Inc. Generation of document fingerprints for identification of electronic document types
JP5395927B2 (ja) * 2012-05-11 2014-01-22 株式会社東芝 電子機器および手書き文書検索方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08153164A (ja) * 1994-09-29 1996-06-11 Nippon Steel Corp 手書き文字認識方法及び装置
JPH08180135A (ja) * 1994-12-22 1996-07-12 Toshiba Corp 図形認識装置及び方法
JP2002259912A (ja) * 2001-02-26 2002-09-13 Mitsubishi Electric Corp オンライン文字列認識装置及びオンライン文字列認識方法

Also Published As

Publication number Publication date
JPWO2014174665A1 (ja) 2017-02-23
US20140321749A1 (en) 2014-10-30
WO2014174665A1 (ja) 2014-10-30

Similar Documents

Publication Publication Date Title
JP5349645B1 (ja) 電子機器および手書き文書処理方法
JP5270027B1 (ja) 情報処理装置および手書き文書検索方法
JP5355769B1 (ja) 情報処理装置、情報処理方法及びプログラム
US9378427B2 (en) Displaying handwritten strokes on a device according to a determined stroke direction matching the present direction of inclination of the device
JP5395927B2 (ja) 電子機器および手書き文書検索方法
JP6464504B6 (ja) 電子機器、処理方法およびプログラム
JP5694234B2 (ja) 電子機器、手書き文書表示方法、及び表示プログラム
JP2015162088A (ja) 電子機器、方法及びプログラム
US20150146986A1 (en) Electronic apparatus, method and storage medium
WO2014147712A1 (ja) 情報処理装置、情報処理方法及びプログラム
JP5869179B2 (ja) 電子機器および手書き文書処理方法
US9183276B2 (en) Electronic device and method for searching handwritten document
JP5735126B2 (ja) システムおよび筆跡検索方法
JP6223687B2 (ja) 電子機器および手書き文書検索方法
JP2014203393A (ja) 電子機器、手書き文書処理方法、及び手書き文書処理プログラム
JP5330576B1 (ja) 情報処理装置および筆跡検索方法
JP6039066B2 (ja) 電子機器、手書き文書検索方法およびプログラム
JP2013239203A (ja) 電子機器、方法、及びプログラム
WO2016031016A1 (ja) 電子機器、方法及びプログラム
JP5666011B1 (ja) 方法及び電子機器
US20150128019A1 (en) Electronic apparatus, method and storage medium

Legal Events

Date Code Title Description
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: 20150317

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150415

R151 Written notification of patent or utility model registration

Ref document number: 5735126

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313121

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350