JPWO2016170690A1 - 入力制御プログラム、入力制御装置、入力制御方法、文字修正プログラム、文字修正装置、及び文字修正方法 - Google Patents

入力制御プログラム、入力制御装置、入力制御方法、文字修正プログラム、文字修正装置、及び文字修正方法 Download PDF

Info

Publication number
JPWO2016170690A1
JPWO2016170690A1 JP2017513942A JP2017513942A JPWO2016170690A1 JP WO2016170690 A1 JPWO2016170690 A1 JP WO2016170690A1 JP 2017513942 A JP2017513942 A JP 2017513942A JP 2017513942 A JP2017513942 A JP 2017513942A JP WO2016170690 A1 JPWO2016170690 A1 JP WO2016170690A1
Authority
JP
Japan
Prior art keywords
stroke
input
character
display
information
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.)
Pending
Application number
JP2017513942A
Other languages
English (en)
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2016170690A1 publication Critical patent/JPWO2016170690A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Character Discrimination (AREA)

Abstract

コンピュータに、入力項目に対応づけて保持された前記入力項目に対する手書き入力のストロークを、前記入力項目と対応づけて表示する処理と、表示された前記ストロークに対する修正に応じて、前記入力項目に表示された前記ストロークによる入力結果を修正する処理と、を実行させる。

Description

本発明は、入力制御プログラム、入力制御装置、入力制御方法、文字修正プログラム、文字修正装置、及び文字修正方法に関する。
ユーザによる手書き入力を受け付け、手書き入力について文字認識して得られた認識文字を入力文字として処理するツールが知られている。
特開2005−235116号公報 特開2001−337993号公報
しかし、ユーザが手書き入力を行い、正常に文字認識がなされた場合であっても、後に、異なる内容の文字に修正したい場合がある。例えば、年、月、日付の順で文字を手書き入力したものの、月、年、日付の順に入力順を変更したい場合がある。
このような場合に、ユーザは、日付部分は同じであるにもかかわらず、最初から月、年、日付を手入力しなければならず修正作業負荷が高く、不便であるという問題がある。
また、複数の文字種を対象とした手書き入力における文字の認識においては、前後の文字の文字種や間隔、文字の大きさ、高さ、形、縦横比等が認識精度に影響する。このため、手書き入力により入力内容を修正する際に、手書き入力による単一の文字を認識させて修正すると、異なる文字種の類似する字形等の文字と誤って認識される場合がある。
1つの側面では、手書き入力のストロークに対する修正により、手書き入力の認識結果の修正を可能とすることを目的とする。
また、1つの側面では、手書き入力による認識文字が入力された項目について、入力確定後も手書きストロークを参照可能とすることを目的とする。
一態様によれば、コンピュータに、入力項目に対応づけて保持された前記入力項目に対する手書き入力のストロークを、前記入力項目と対応づけて表示する処理と、表示された前記ストロークに対する修正に応じて、前記入力項目に表示された前記ストロークによる入力結果を修正する処理と、を実行させる。
一側面によれば、手書き入力のストロークに対する修正により、手書き入力の認識結果の修正を可能とする
また、一側面によれば、手書き入力による認識文字が入力された項目について、入力確定後も手書きストロークを参照可能となる。
第一の実施形態の主なプログラム構成を説明する図である。 文字修正装置の手書き入力による修正を説明する図である。 文字修正装置のハードウェア構成の一例を示す図である。 第一の実施形態の文字修正装置の機能構成を説明する図である。 ストローク対応付け情報の一例の構成を示す図である。 第一の実施形態の手書き入力処理の一例を説明するフローチャートである。 第一の実施形態の表示テキスト修正処理の一例を説明するフローチャートである。 第一の実施形態の表示テキスト修正の具体例を説明する図である。 第一の実施形態の手書き修正処理の一例を説明するフローチャートである。 第一の実施形態の手書き修正の具体例を説明する図である。 第二の実施形態の文字修正装置の機能構成を説明する図である。 第二の実施形態の表示ストロークの表示処理の一例を説明するフローチャートである。 第二の実施形態の表示ストロークの具体例を説明する図である。 第三の実施形態の文字修正装置の機能構成を説明する図である。 第三の実施形態の表示テキスト修正処理の一例を説明するフローチャートである。 第三の実施形態の表示テキスト修正の具体例を説明する図である。 第四の実施形態の文字修正システムの一例を示す図である。 第五の実施形態の文字修正システムの一例を示す図である。
(第一の実施形態)
以下に図面を参照して第一の実施形態について説明する。図1は、第一の実施形態の主なプログラム構成を説明する図である。
第一の実施形態は、主なプログラムとして、第1のアプリケーション10、文字修正プログラム20、及び認識プログラム30を有する。
第1のアプリケーション10は、例えば伝票作成アプリケーションやメール作成アプリケーション等の入力された文字群(テキスト)を表示するプログラムである。第1のアプリケーション10により表示されたテキストを、以降では、「表示テキスト」と表す。なお、表示テキストは、手書き入力による文字に限られず、例えばキーボード等により入力された文字が含まれても良い。
文字修正プログラム20は、手書き入力された表示テキストに対して文字の修正指示がされた場合に、手書き入力された際のストロークを表示させる。また、文字修正プログラム20は、表示されたストローク(表示ストローク)に対して、手書き入力による文字の修正がされた場合に、入力されたストロークに基づき、表示ストロークを修正する。なお、手書き入力は、指によりストロークを入力する場合に限られず、例えばスタイラス(stylus)等を用いてストロークを入力しても良い。
認識プログラム30は、手書き入力により入力されたストロークや修正された表示ストロークから文字を認識する。すなわち、認識プログラム30は、手書き入力により入力されたストロークや修正された表示ストロークに対応する文字又は文字群を認識結果として取得する。
第一の実施形態の第1のアプリケーション10、文字修正プログラム20、及び認識プログラム30は、それぞれが独立した装置に実装されていても良いし、それぞれが1つの装置に実装されていても良い。以降の第一の実施形態の説明では、第1のアプリケーション10、文字修正プログラム20、及び認識プログラム30が1つの装置に実装された場合について説明する。以降の説明では、第1のアプリケーション10、文字修正プログラム20、及び認識プログラム30実装された装置を「文字修正装置」と表す。
次に、第一の実施形態の文字修正装置において、表示テキストを手書き入力により修正する場合について説明する。図2は、文字修正装置の手書き入力による修正を説明する図である。
文字修正装置1には画面2が表示されているものとする。画面2には、氏名を示す表示テキスト「山田太郎」、電話番号を示す表示テキスト「090−1234−××××」が表示されている。また、画面2には、メールアドレスを示す表示テキスト「yamada@sample.com」、メールアドレス(確認用)を示す表示テキスト「yamafa@sample.com」が表示されている。このとき、誤って入力されたメールアドレス(確認用)の表示テキスト「yamafa@sample.com」を、「yamada@sample.com」に手書きにより修正する場合について説明する。なお、画面2の各表示テキストは、第1のアプリケーション10により表示されている。
本実施形態の手書き入力による修正では、画面3に示すように、ユーザが文字修正装置1のタッチパネル等により修正対象の表示テキストを指定すると、文字修正プログラム20は、指定された表示テキストが手書き入力された際のストロークを示す表示ストローク3aを表示させる。ここで、図2において、表示ストローク3aは、表示テキストと異なる位置に表示される。また、表示ストローク3aの表示色を、表示テキストと異なる色で表示させても良い。これにより、表示ストローク3aが見え易くなり、ユーザが手書き入力を行い易くなる。
画面3が表示されると、ユーザは、画面4に示すように、文字修正装置1のタッチパネル等により、表示ストローク4aを直接、手書き入力により修正する。すなわち、ユーザは、文字修正装置1のタッチパネル等により、表示ストローク4aの手書き入力された際の「f」の位置に、直接、「d」を手書き入力する。
すると、文字修正装置1は、文字修正プログラム20により、手書き入力された「f」を「d」に修正する。このように、文字修正装置1は、文字修正プログラム20により、表示ストローク「yamafa@sample.com」を「yamada@sample.com」に修正する。
続いて、文字修正プログラム20は、修正された表示ストローク「yamada@sample.com」のストロークを示す情報を認識プログラム30に渡す。認識プログラム30は、ストロークを示す情報から文字列「yamada@sample.com」を認識し、修正が反映された文字列を認識結果として第1のアプリケーション10に渡す。
このように、文字修正装置1は、修正対象の表示テキストと対応する表示ストロークにおいて、一部のストロークが修正された場合に、修正されたストロークを含む表示ストローク全体を再度、認識プログラム30に認識させる。
したがって、本実施形態では、認識プログラム30に、修正されたストロークの前後の文字の文字種や間隔、文字の大きさ、高さ、形、縦横比等を含めた文字認識を行わせることができ、修正されたストロークの認識精度を向上させることができる。
図2の例では、修正された表示ストローク「d」を含む表示ストローク「yamada@sample.com」全体が、認識プログラム30により認識される。したがって、認識プログラム30は、例えば、修正された表示ストローク「d」の前後の文字の文字種がアルファベットの小文字であることから、修正された表示ストローク「d」は、アルファベットの小文字であると認識できる。
第1のアプリケーションは、認識結果の文字群「yamada@sample.com」を表示させる。図2の例では、画面5に示すように、表示テキスト「yamafa@sample.com」は、修正された表示テキスト「yamada@sample.com」となる。
このように、第一の実施形態の文字修正装置1は、第1のアプリケーション10により表示された表示テキストのうち、修正対象の表示テキストの表示ストロークを表示させる。そして、ユーザは、文字修正装置1のタッチパネル等により、表示ストロークに対して、直接、手書き入力することで、文字又は文字群の修正を行うことができる。
なお、図2の手書き入力による修正では、表示テキストに含まれる文字「f」を文字「d」に置換する修正について説明したが、表示テキストに含まれる文字「f」の前又は後ろに文字「d」を挿入する修正であっても良い。
また、図2の例では、修正対象の表示テキストは、複数の文字を含むものとしたが、これに限られない。第1のアプリケーション10により表示された表示テキストのうち、手書き入力による修正対象の表示テキストは、1文字であっても良い。
また、手書き修正により修正する文字の文字数は、2以上であっても良い(すなわち、文字群を置換又は挿入しても良い)。以降では、手書き修正について、詳細に説明する。
まず、文字修正装置1のハードウェア構成について説明する。図3は、文字修正装置のハードウェア構成の一例を示す図である。本実施形態の文字修正装置1は、それぞれバスBで相互に接続されている表示操作装置101、ドライブ装置102、補助記憶装置103、メモリ装置104、演算処理装置105、及びインターフェース装置106を有する。
表示操作装置101は、例えばタッチパネル等であり、各種信号の入力と、各種信号の表示(出力)に用いられる。インターフェース装置106は、モデル、LANカード等を含み、ネットワークに接続する為に用いられる。
第1のアプリケーション10、文字修正プログラム20、及び認識プログラム30は、文字修正装置1を制御する各種プログラムの少なくとも一部である。これらのプログラムは、例えば記録媒体107による配布やネットワークからのダウンロード等によって提供される。第1のアプリケーション10、文字修正プログラム20、及び認識プログラム30を記録した記録媒体107は、CD−ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
また、第1のアプリケーション10、文字修正プログラム20、及び認識プログラム30を記録した記録媒体107がドライブ装置102にセットされると、各プログラムは記録媒体107からドライブ装置102を介して補助記憶装置103にインストールされる。ネットワークからダウンロードされた各プログラムは、インターフェース装置106を介して補助記憶装置103にインストールされる。
補助記憶装置103は、インストールされた第1のアプリケーション10、文字修正プログラム20、及び認識プログラム30を格納すると共に、基本ソフトウェアであるOS(Operating System)、必要なファイル、データ等を格納する。メモリ装置104は、各プログラムの起動時に補助記憶装置103にそれぞれのプログラムを読み出して格納する。そして、演算処理装置105は、メモリ装置104に格納された各プログラムに従って、後述するような各種処理を実現している。
次に、文字修正装置1の機能構成について説明する。図4は、第一の実施形態の文字修正装置の機能構成を説明する図である。本実施形態の文字修正装置1は、第1のアプリ実行部11、文字修正処理部21、認識部31、及び記憶部41を有する。
本実施形態の第1のアプリ実行部11は、演算処理装置105が第1のアプリケーション10を実行することで実現される。本実施形態の文字修正処理部21は、演算処理装置105が文字修正プログラム20を実行することで実現される。本実施形態の認識部31は、演算処理装置105が認識プログラム30を実行することで実現される。本実施形態の記憶部41は、補助記憶装置103やメモリ装置104により実現される。
記憶部41は、第1の座標情報42、第2の座標情報43、及びストローク対応付け情報44を有する。
第1の座標情報42は、表示ストロークで形成される各文字の外接枠を特定する座標情報である。ここで、外接枠とは、文字に外接する四角形の枠のことである。したがって、第1の座標情報42は、外接枠の上辺を特定する第1のtop座標情報、底辺を特定する第1のbottom座標情報、左辺を特定する第1のleft座標情報、右辺を特定する第1のright座標情報が含まれる。
第2の座標情報43は、ユーザの手書き入力により入力されたストロークの外接枠を特定する座標情報である。第2の座標情報43も第1の座標情報42と同様に、外接枠のそれぞれの辺を特定する第2のtop座標情報、第2のbottom座標情報、第2のleft座標情報、第2のright座標情報が含まれる。
なお、外接枠は、四角形に限られず、多角形であっても良い。この場合には、第1の座標情報42及び第2の座標情報43は、多角形のそれぞれの辺を特定する座標情報を有する。
ストローク対応付け情報44は、手書き入力により入力されたストロークを示すストローク情報と、後述する認識部31による認識結果である文字とを対応付けるための情報である。本実施形態のストローク対応付け情報44は、ストローク情報テーブル441、文字情報テーブル442、及び認識結果情報テーブル443を含む。ストローク対応付け情報44の詳細については後述する。
なお、ストローク情報とは、手書き入力により入力された1画分のストローク(筆跡)を示す情報であり、2以上の座標情報が含まれる。すなわち、本実施形態では、ストローク情報に含まれる2以上の座標情報が示す座標を結ぶことにより、1画分のストロークが特定される。したがって、認識部31は、ストローク情報により示されるストロークで形成される文字を認識する。
ここで、第1の座標情報42、第2の座標情報43、及びストローク情報に含まれる各座標情報は、例えば、文字修正装置1により表示されるページ画像において予め設定された基準点を原点としたXY座標値である。基準点としては、例えば、文字修正装置1により表示されるページ画像における左上端の画素の位置とすれば良い。このとき、例えば、基準点を原点として、X軸を基準点から右方向に正、Y軸を基準点から下方向に正とすれば良い。
第1のアプリ実行部11は、認識部31より取得された文字を表示させる。
文字修正処理部21は、手書き入力により入力されたストローク情報を認識部31による認識結果である文字と対応付けて、ストローク対応付け情報44として記憶部41に保存する。また、文字修正処理部21は、第1のアプリ実行部11により表示された表示テキストの修正指示に応じて、ストローク対応付け情報44に基づき表示ストロークを表示させる。さらに、文字修正処理部21は、手書き入力により表示ストロークを修正する。文字修正処理部21の詳細は後述する。
認識部31は、手書き入力により入力されたストローク情報や、文字修正処理部21により修正された表示ストロークのストローク情報から文字を認識し、認識結果として文字を取得する。
以下に、文字修正処理部21の詳細を説明する。本実施形態の文字修正処理部21は、ストローク情報取得部22、保存判定部23、ストローク情報管理部24、ストローク表示部25、領域特定部26、重なり判定部27、及び文字修正部28を有する。
ストローク情報取得部22は、ユーザからの手書き入力において入力されたストロークを示すストローク情報を取得する。
保存判定部23は、ストローク情報取得部22により取得されたストローク情報に基づくストローク対応付け情報44を、記憶部41に保存するか否かを判定する。
具体的には、本実施形態の保存判定部23は、第1のアプリケーション10により表示テキストが表示される文字入力欄(テキストボックス等)の属性を示すパラメータに応じて、ストローク対応付け情報44を保存するか否かを判定する。例えば、保存判定部23は、手書き入力により文字が入力される文字入力欄の属性が、パスワード入力欄であることを示すパラメータであった場合、ストローク対応付け情報44を保存しないと判定する。
このように、本実施形態では、例えばユーザの個人情報等、機密性の高い情報が入力される入力欄等に情報が手書き入力された場合には、ストローク対応付け情報44が保存されない。よって、本実施形態では、情報漏洩の発生を防止できる。
ストローク情報管理部24は、保存判定部23の判定結果に応じて、ストローク情報取得部22により取得されたストローク情報と、認識部31により認識結果として取得された文字とを対応付けてストローク対応付け情報44を生成し、記憶部41に保存する。
ストローク表示部25は、ストローク情報管理部24により保存されたストローク対応付け情報44に基づき表示ストロークを表示させる。
領域特定部26は、表示ストロークのストローク対応付け情報44から第1の座標情報42を取得する。そして、領域特定部26は、第1の座標情報42により特定される外接枠で囲まれる領域(表示ストローク領域)を特定する。
また、領域特定部26は、表示ストロークを修正するために手書き入力されたストロークを示すストローク情報から第2の座標情報43を取得する。そして、領域特定部26は、第2の座標情報43により特定される外接枠で囲まれる領域(入力ストローク領域)を特定する。
重なり判定部27は、領域特定部26により特定された表示ストローク領域及び入力ストローク領域について、入力ストローク領域において、表示ストローク領域と重なっている領域の割合が、予め設定された第1の閾値以上であるか否かを判定する。
文字修正部28は、重なり判定部27の判定結果に応じて、表示ストロークを、手書き入力されたストロークで置換又は手書き入力されたストロークを挿入することで、修正する。
次に、ストローク対応付け情報44の詳細について説明する。図5は、ストローク対応付け情報の一例の構成を示す図である。ストローク対応付け情報44は、ストローク情報テーブル441、文字情報テーブル442、及び認識結果情報テーブル443を有する。
ストローク情報テーブル441は、手書き入力された1画分のストロークを示すストローク情報を格納する。ストローク情報テーブル441は、データ項目として、ストローク情報を一意に識別する「ストローク情報ID」、1画分のストロークを形成するための「座標情報」を有する。
例えば、ストローク情報ID「s01」で識別されるストローク情報がストロークは、座標情報(x11,y11),・・・,(xn1,yn1)のそれぞれが示す座標を結ぶことにより形成される。
文字情報テーブル442は、ストロークにより形成される文字に関する情報を格納する。文字情報テーブル442は、データ項目として、ストロークにより形成される文字を示す「文字」、文字を形成するストロークを識別するための「ストローク情報ID」を有する。
例えば、文字情報テーブル442では、文字「A」は、ストローク情報ID「s01」、「s02」、及び「s03」で識別されるストローク情報が示すストロークで形成される。同様に、例えば、文字「B」は、ストローク情報ID「s04」及び「s05」で識別されるストローク情報が示すストロークで形成される。
認識結果情報テーブル443は、認識部31の認識結果として取得された文字に関する情報を格納する。認識結果情報テーブル443は、データ項目として、認識部31の認識結果を識別するための「認識ID」、認識結果として取得された文字を示す「文字群」、認識結果として取得された文字が第1のアプリケーション10により表示される入力領域を特定するための座標情報を示す「入力領域」を有する。
例えば、認識結果情報テーブル443では、認識ID「r01」で識別される認識結果として取得された文字群は「ABCDE」であり、文字群「ABCDE」は座標情報(X11,Y11),・・・,(X41,Y41)が示す座標で特定される入力領域に表示される。
ここで、入力領域とは、認識部31による1回の認識処理により認識された文字群が手書き入力により入力された領域である。
例えば、第1のアプリケーション10により表示される文字入力欄において、手書き入力により入力された文字群「abc」が認識された後に、同じ文字入力欄に手書き入力により文字群「def」が入力されて認識されたとする。この場合、認識部31は、2回の認識処理を行うことになる。このため、文字入力欄には、入力領域は、文字群「abc」に対応する入力領域と、文字群「def」と対応する入力領域の2つが存在することになる。
なお、図5の例では、入力領域の頂点を示す4つの座標情報により入力領域を特定している。ただし、これに限られず、入力領域は、入力領域の対角に位置する頂点を示す2つ座標情報により入力領域を特定しても良い。
本実施形態の文字修正装置1は、図5に示すストローク対応付け情報44を保持することにより、ユーザにより修正対象の表示テキストが指定された場合に、ストローク表示部25により表示テキストと対応した表示ストロークを表示させることができる。
次に、本実施形態の文字修正装置1の動作について説明する。まず、第1のアプリケーション10により表示される文字入力欄(例えばテキストボックス)等に、手書き入力により文字を入力する処理について説明する。図6は、第一の実施形態の手書き入力処理の一例を説明するフローチャートである。
本実施形態の文字修正装置1は、文字修正処理部21のストローク情報取得部22により、手書き入力において入力されたストロークを示すストローク情報を取得する(ステップS601)。次に、文字修正装置1は、文字修正処理部21のストローク情報取得部22により、手書き入力が終了したか否かを判定する(ステップS602)。ここで、ストローク情報取得部22は、所定の時間、ストローク情報を取得しなかった場合、手書き入力が終了したと判定すれば良い。
ステップS602において、手書き入力が終了していないと判定された場合、文字修正装置1は、ステップS601に戻る。
ステップS602において、手書き入力が終了したと判定された場合、文字修正装置1は、認識部31により、取得されたストローク情報を認識する(ステップS603)。すなわち、認識部31は、ストローク情報取得部22により取得されたストローク情報に対応する文字を認識し、認識結果として文字を取得する。
次に、文字修正装置1は、保存判定部23により、手書き入力により文字が入力される文字入力欄の属性を示すパラメータを取得し、取得したパラメータに基づき、ストローク対応付け情報44を保存するか否かを判定する(ステップS604)。なお、保存判定部23は、第1のアプリ実行部11を介して、第1のアプリケーション10により表示される文字入力欄の属性を示すパラメータを取得する。
ステップS604において、ストローク対応付け情報44を保存しないと判定された場合、文字修正装置1は、ステップS606に進む。これにより、文字修正装置1は、第1のアプリケーション10により表示される文字入力欄が、例えばパスワード入力欄等である場合には、ストローク対応付け情報44を保存しない。これにより、パスワード入力欄等においては、表示ストロークが表示されることによるパスワード等の機密情報の流出を防止することができる。
ステップS604において、ストローク対応付け情報44を保存すると判定された場合、文字修正装置1は、ストローク情報管理部24により、ストローク対応付け情報44を記憶部41に保存する(ステップS605)。
最後に、文字修正装置1は、第1のアプリ実行部11により、第1のアプリケーション10により表示された文字入力欄に、認識結果として取得した文字を表示させる(ステップS606)。これにより、本実施形態の文字修正装置1は、手書き入力により表示テキストが表示される。
ここで、図6のステップS605でストローク情報管理部24により記憶部41に保存されるストローク対応付け情報44について、図5を参照しながら具体的に説明する。
まず、ストローク情報管理部24は、ストローク情報取得部22により取得されたストローク情報をストローク情報テーブル441に格納する。すなわち、ストローク情報管理部24は、1画分のストロークを示すストローク情報毎にストローク情報IDを割り振って、ストローク情報IDと対応付けてストローク情報に含まれる座標情報を格納する。このようにして、ストローク情報管理部24は、入力されたすべてのストロークのストローク情報をストローク情報テーブル441に格納する。
例えば、3画の文字「A」が手書き入力された場合、ストローク情報管理部24は、1画目のストローク情報にストローク情報ID「s01」を割り振って、このストローク情報に含まれる座標情報(x11,y11),・・・,(xn1,yn1)と対応付けて、ストローク情報テーブル441に格納する。同様に、ストローク情報管理部24は、2画目のストローク情報にストローク情報ID「s02」を割り振って、このストローク情報に含まれる座標情報(x12,y12),・・・,(xn2,yn2)と対応付けて、ストローク情報テーブル441に格納する。3画目のストローク情報についても同様である。
次に、ストローク情報管理部24は、認識部31により認識された認識結果を認識結果情報テーブル443に格納する。すなわち、ストローク情報管理部24は、認識部31により認識結果として取得された文字に対して認識IDを割り振って、入力領域を特定する座標情報と対応付けて格納する。なお、ストローク情報管理部24は、第1のアプリ実行部11を介して、入力領域を特定する座標情報を取得すれば良い。
例えば、ストローク情報管理部24は、認識結果として取得した文字が「ABCDE」である場合、文字「ABCDE」に認識ID「r01」を割り振って、第1のアプリ実行部11を介して取得した入力領域を特定する座標情報(X11,Y11),・・・,(Xn1,Yn1)と対応付けて、認識結果情報テーブル443に格納する。
続いて、ストローク情報管理部24は、認識結果として取得した各文字とストローク情報との対応付けを文字情報テーブル442に格納する。すなわち、ストローク情報管理部24は、認識部31により認識結果として取得された各文字について、それぞれの文字を形成するストロークのストローク情報IDを対応付けて格納する。
例えば、ストローク情報管理部24は、認識結果として取得した文字が「ABCDE」である場合、文字「ABCDE」に含まれる文字「A」と、文字「A」を形成するストロークのストローク情報ID「s01」、「s02」、及び「s03」とを対応付けて文字情報テーブル442に格納する。同様に、文字「ABCDE」に含まれる文字「B」と、文字「B」を形成するストロークのストローク情報ID「s04」及び「s05」とを対応付けて文字情報テーブル442に格納する。文字「ABCDE」に含まれる文字「C」、「D」、「E」についても同様である。
以上で具体的に説明したように、本実施形態の文字修正装置1は、ストローク情報管理部24により、ストローク対応付け情報44を保存する。このように、本実施形態の文字修正装置1は、手書き入力されたストロークのストローク情報が、表示テキストと対応付けられて保存される。
次に、本実施形態の文字修正装置1において、第1のアプリケーション10により表示されている表示テキストを手書き入力により修正する場合の処理について説明する。図7は、第一の実施形態の表示テキスト修正処理の一例を説明するフローチャートである。
本実施形態の文字修正装置1は、ユーザにより表示操作装置101を介して、修正対象の表示テキストの指定を受け付ける(S701)。例えば、文字修正装置1は、例えば、ユーザにより表示操作装置101を介して、表示テキストが表示された文字入力欄が選択されることにより、修正対象の表示テキストの指定を受け付ける。
次に、文字修正装置1は、ストローク情報管理部24により、指定された表示テキストのストローク対応付け情報44が記憶部41に保存されているか否かを判定する(ステップS702)。具体的にはストローク情報管理部24は、指定された表示テキストの入力領域を特定する座標情報が認識結果情報テーブル443に格納されているか否かにより判定すれば良い。
ステップS702において、指定された表示テキストのストローク対応付け情報44が記憶部41に保存されていないと判定された場合、文字修正装置1は、処理を終了させる。この場合、ユーザは、例えば図6で説明した手書き入力やキーボード入力等により、表示テキストを修正する。なお、表示テキストのストローク対応付け情報44が記憶部41に保存されていない場合とは、例えば、表示テキストが表示された文字入力欄がパスワード入力等である場合や表示テキストがキーボード入力等の手書き入力以外の方法で入力された場合等である。
ステップS702において、指定された表示テキストのストローク対応付け情報44が記憶部41に保存されていると判定された場合、文字修正装置1は、ストローク情報管理部24により、ストローク対応付け情報44を取得する。そして、文字修正装置1は、ストローク表示部25により、取得されたストローク対応付け情報44に基づき表示ストロークを表示させる(ステップS703)。
すなわち、ストローク情報管理部24は、指定された表示テキストのストローク対応付け情報44を取得する。次に、ストローク情報管理部24は、表示テキストのストローク対応付け情報44から、表示テキストが手書き入力された際のストロークを示すストローク情報を取得する。そして、ストローク表示部25は、取得されたストローク情報に基づき表示ストロークを表示させる。これにより、本実施形態の文字修正装置1は、ユーザにより指定された表示テキストが手書き入力された際のストローク(表示ストローク)を表示させることができる。
次に、文字修正装置1は、手書き修正処理を行う(ステップS704)。すなわち、文字修正装置1は、ユーザの手書き入力により表示ストロークの修正を受け付けると、修正された表示ストロークが示すストロークを認識し、認識結果として文字を取得する。この手書き修正処理の詳細については後述する。
続いて、文字修正装置1は、ストローク情報管理部24により、修正された表示ストロークに基づきストローク対応付け情報44を更新する(ステップS705)。すなわち、ストローク情報管理部24は、修正後の表示ストロークが示すストロークから認識結果として取得された文字と、修正後の表示ストロークのストローク情報とを対応付けて記憶部41に保存することで、ストローク対応付け情報44を更新する。
最後に、文字修正装置1は、認識部31により、修正後の表示ストロークが示すストロークから認識結果として取得した文字を表示させる(ステップS706)。これにより、本実施形態の文字修正装置1は、ユーザにより指定された表示テキストが手書き入力により修正される。
次に、図8を参照して、図7で説明した表示テキストを手書き入力により修正する場合を具体的に説明する。図8は、第一の実施形態の表示テキスト修正の具体例を説明する図である。
まず、文字修正装置1において、文字入力欄に表示テキスト「ABCDE」が表示されているものとする(状態S11)。
状態S11において、文字修正装置1は、ユーザにより修正対象の表示テキストの指定を受け付けると、表示テキストが手書き入力された際のストロークを示す表示ストロークを表示する(状態S12)。図8の例では、文字修正装置1は、ユーザにより指定された表示テキスト「ABCDE」が手書き入力された際の表示ストロークを表示している。
次に、文字修正装置1は、ユーザの手書き入力により表示ストロークに対する修正を受け付ける(状態S13)。図8の例では、文字修正装置1は、表示ストローク「ABCDE」のうちの文字「C」を文字「B」に修正する手書き入力を受け付ける。
続いて、文字修正装置1は、修正された表示ストロークが示すストロークを認識した認識結果として取得された文字を表示させて、表示テキストを修正する(状態S14)。図8の例では、文字修正装置1は、表示テキスト「ABCDE」を「ABBDE」に修正した表示テキストを表示する。
以上のように、本実施形態の文字修正装置1は、ユーザが手書き入力により表示ストロークを直接修正することで、表示テキストが修正される。
次に、図7で説明した表示テキスト修正処理のステップS704における手書き修正処理について説明する。図9は、第一の実施形態の手書き修正処理の一例を説明するフローチャートである。なお、上述したように、文字修正装置1には、ユーザにより指定された修正対象の表示テキストが手書き入力された際のストローク(表示ストローク)が表示されている。
まず、本実施形態の文字修正装置1は、領域特定部26により、表示ストローク領域を特定する(ステップS901)。すなわち、領域特定部26は、表示ストロークにおける各文字について、各文字を形成するストロークのストローク情報を取得し、取得されたストローク情報から各文字の第1の座標情報42を取得する。そして、領域特定部26は、表示ストロークにおける各文字について、第1の座標情報42により特定される外接枠で囲まれる領域を表示ストローク領域と特定する。
次に、文字修正装置1は、ストローク情報取得部22により、表示ストロークに対してユーザが手書き入力により入力したストロークのストローク情報を取得する(ステップS902)。
次に、文字修正装置1は、領域特定部26により、入力ストローク領域を特定する(ステップS903)。すなわち、領域特定部26は、ユーザにより手書き入力されたストロークを示すストローク情報から第2の座標情報43を取得する。そして、領域特定部26は、第2の座標情報43により特定される外接枠で囲まれる領域を入力ストローク領域と特定する。
続いて、文字修正装置1は、重なり判定部27により、入力ストローク領域において、表示ストローク領域と重なっている領域の割合が、第1の閾値以上であるか否かを判定する(ステップS904)。なお、第1の閾値としては、例えば、1/2とすれば良い。この場合、重なり判定部27は、入力ストローク領域が表示ストローク領域と半分(1/2)以上重なっているか否かを判定する。
ステップS904において、入力ストローク領域において、表示ストローク領域と重なっている領域の割合が、第1の閾値以上であると判定された場合、文字修正装置1は、文字修正部28により、入力ストローク領域のストロークで表示ストローク領域のストロークを置換する(ステップS905)。なお、このとき、置換対象の表示ストローク領域のストロークは、入力ストローク領域と重なっている領域の割合が第1の閾値以上である表示ストローク領域のストロークである。
ステップS904において、入力ストローク領域において、表示ストローク領域と重なっている領域の割合が、第1の閾値以上でないと判定された場合、文字修正装置1は、文字修正部28により、入力ストローク領域のストロークを、手書き入力によりストロークが入力された位置に挿入する(ステップS906)。
続いて、文字修正装置1は、ストローク情報取得部22により、表示ストロークに対するユーザの手書き入力が終了したか否か判定する(ステップS907)。ここで、ストローク情報取得部22は、所定の時間、ストローク情報を取得しなかった場合、手書き入力が終了したと判定すれば良い。
ステップS907において、手書き入力が終了していないと判定された場合、文字修正装置1は、ステップS902に戻る。
ステップS907において、手書き入力が終了したと判定された場合、文字修正装置1は、認識部31により、ユーザの手書き入力により修正された表示ストロークが示すストロークのストローク情報に対応する文字を認識し、認識結果として文字を取得する(ステップ908)。このとき、認識部31は、手書き入力により修正された修正箇所を含む表示ストロークが示すストローク情報に対応する文字を認識する。これにより、本実施形態の文字修正装置1は、修正されたストロークの前後の文字の文字種や間隔、文字の大きさ、高さ、形、縦横比等を含めた文字認識を行うことができ、修正されたストロークの認識精度を向上させることができる。
次に、図10を参照して、図9で説明した手書き入力により表示ストロークを修正する場合を具体的に説明する。図10は、第一の実施形態の手書き修正の具体例を説明する図である。
まず、文字修正装置1において、表示テキスト「ABCDE」に対応する表示ストロークが表示されており、領域特定部26により、表示ストローク領域201〜205が特定されたとする(状態S21)。
領域特定部26は、具体的には次のようにして表示ストローク領域201〜205を特定する。まず、領域特定部26は、表示ストロークの1文字分のストロークを示すストローク情報から第1の座標情報42を取得する。これは、1文字分のストロークを形成するストローク情報に含まれる座標情報のうち、Y座標が最小である座標情報を第1のtop座標情報、Y座標が最大である座標情報を第1のbottom座標情報、X座標が最小である座標情報を第1のleft座標情報、X座標が最大である座標情報を第1のright座標情報として、第1の座標情報42を取得すれば良い。このようにして、表示ストロークにおける文字「A」の第1の座標情報42、文字「B」の第1の座標情報42、・・・、文字「E」の第1の座標情報42を取得する。
そして、領域特定部26は、取得した第1の座標情報42から表示ストローク領域201を特定する。同様に、領域特定部26は、第1の座標情報42〜第1の座標情報42からそれぞれ表示ストローク領域202〜205を特定する。
状態S21において、文字修正装置1は、表示ストロークの文字「C」を「B」に修正するために、文字「B」の1画目のストロークの入力を受け付ける。すると、文字修正装置1は、領域特定部26により、入力ストローク領域301を特定する(状態S22)。
領域特定部26は、具体的には次のようにして入力ストローク領域301を特定する。まず、領域特定部26は、入力されたストロークのストローク情報から第2の座標情報43を取得する、これは、入力されたストロークのストローク情報に含まれる座標情報のうち、Y座標が最小である座標情報を第2のtop座標情報、Y座標が最大である座標情報を第2のbottom座標情報、X座標が最小である座標情報を第2のleft座標情報、X座標が最大である座標情報を第2のright座標情報として、第2の座標情報43を取得すれば良い。
そして、領域特定部26は、取得した第2の座標情報43から入力ストローク領域301を特定する。
続いて、文字修正装置1は、重なり判定部27により、入力ストローク領域301が、表示ストローク領域201〜205のそれぞれと第1の閾値以上重なっているか否かを判定する。そして、文字修正装置1は、文字修正部28の判定結果に応じて、入力ストローク領域301のストロークで置換又は挿入する。
図10の状態S22では、入力ストローク領域301は、表示ストローク領域203と重なっている。また、図10の状態S22では、入力ストローク領域301において、表示ストローク領域203と重なっている領域の割合は、1/2以上である。したがって、重なり判定部27は、入力ストローク領域301が表示ストローク領域203と第1の閾値以上重なっていると判定する。
文字修正部28は、この判定結果から、入力ストローク領域301の文字「B」の1画目を示すストロークで、表示ストローク領域203の文字「C」を示すストロークを置換する(状態S23)。
状態S23において、文字修正装置1は、文字「B」の2画目のストロークの入力を受け付ける。すると、文字修正装置1は、1画目及び2画目を併せたストロークに外接枠で特定される入力ストローク領域302を特定する。
そして、文字修正装置1は、重なり判定部27により、入力ストローク領域302が、表示ストローク領域201及び202、204及び205のそれぞれと第1の閾値以上重なっているか否かを判定する。そして、文字修正装置1は、文字修正部28の判定結果に応じて、入力ストローク領域301のストロークで置換又は挿入する(状態S24)。
図10の状態S24では、入力ストローク領域302は、表示ストローク領域201及び202並びに表示ストローク領域204及び205のいずれとも重なっていない。したがって、重なり判定部27は、入力ストローク領域302が表示ストローク領域201及び202並びに表示ストローク領域204及び205と第1の閾値以上重なっていないと判定する。
文字修正部28は、この判定結果から、入力ストローク領域302の文字「B」の1画目及び2画目を示すストロークを、これらのストロークが入力された位置に挿入する。
このように、本実施形態の文字修正装置1では、ユーザは、表示ストロークに対して手書き入力によりストロークを直接修正することができる。また、上述したように、本実施形態の文字修正装置1では、修正された表示ストローク全体が示すストローク情報に対応する文字を認識する。これにより、本実施形態の文字修正装置1は。表示ストロークにおける修正されたストロークの認識精度を向上させることができる。
(第二の実施形態)
次に、第二の実施形態について説明する。第二の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有するものには第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
本実施形態の文字修正装置1Aは、画面における表示テキストの表示位置に応じて、表示ストロークを表示させるものである。
図11は、第二の実施形態の文字修正装置の機能構成を説明する図である。本実施形態の文字修正装置1Aは、文字修正処理部21Aを有する。また、文字修正処理部21Aは、表示検知部29を有する。
表示検知部29は、表示操作装置101に表示される画面において、所定の位置にある表示テキストを検知する。ここで、所定の位置とは、例えば、表示操作装置101に表示される画面の中央を示す座標である。以降では、所定の位置とは、表示操作装置101に表示される画面の中央を示す座標であるとして説明する。
次に、本実施形態の文字修正装置1Aの動作について説明する。図12は、第二の実施形態の表示ストロークの表示処理の一例を説明するフローチャートである。図12では、表示操作装置101に表示される画面における表示テキストの表示位置に応じて、表示ストロークを表示させる処理である。
本実施形態の文字修正装置1Aは、表示検知部29により、表示操作装置101に表示される画面の中央の位置を示す座標情報を取得する(ステップS1201)。なお、表示検知部29は、例えば、表示操作装置101に表示される画面が表示された際、又はスクローク等された際に、画面の中央の位置を示す座標情報を取得する。
なお、本実施形態の画面の中央の位置を示す座標は、例えば、文字修正装置1により表示されるページ画像における左上端の画素を原点として、X軸を基準点から右方向に正、Y軸を基準点から下方向に正として示される相対座標とした。したがって、本実施形態の画面の中央の位置を示す座標は、例えばスクロール操作によって変化していく。
次に、文字修正装置1Aは、表示検知部29により、ストローク対応付け情報44の認識結果情報テーブル443を参照して、取得した座標情報が示す座標が含まれる入力領域が存在するか否かを判定する(ステップS1202)。すなわち、表示検知部29は、画面の中央の位置に、手書き入力により入力された表示テキストが存在するか否かを判定する。ここで、画面の中央の位置を示す座標情報が入力領域に含まれるとは、入力領域として特定される領域内に画面の中央の座標が含まれることを意味する。
ステップS1202において、該当する入力領域が存在する場合、文字修正装置1Aは、ストローク情報管理部24により、ストローク対応付け情報44において、画面の中央の座標が含まれると判定された入力領域に対応付けられているストローク情報を取得する。そして、文字修正装置1Aは、ストローク表示部25により、取得されたストローク情報に基づき表示ストロークを表示させる(ステップS1203)。
ステップS1202において、該当する入力領域が存在しない場合、文字修正装置1Aは、ステップS1201に戻る。
なお、図12において、ページ画像が表示される表示領域の大きさ等が変化した場合は、画面の中央の座標を示す座標情報や入力領域を特定する座標情報に対して、大きさ等の変化に応じた変換を行えば良い。例えば、表示領域の縦横比が2:1から1:2に変化した場合、座標情報に含まれるX座標の値及びY座標の値をそれぞれ1/2倍及び2倍にする変換を行えば良い。
次に、図13を参照して、図12で説明した画面の中央の位置の表示テキストに対応する表示ストロークを表示させる場合を具体的に説明する。図13は、第二の実施形態の表示ストロークの具体例を説明する図である。
まず、文字修正装置1Aにおいて、画面6の中央の位置にある「生年月日」を示す表示テキストの表示ストローク6aが表示されている(状態S31)。
状態S31において、文字修正装置1Aは、画面6が上方向にスクロールされて画面7が表示された場合、表示検知部29により、画面7の中央の位置を示す座標が含まれる入力領域が存在するか否かを判定する。状態S31では、「電話番号」を示す表示テキストが表示された表示欄が該当する入力領域である。
そこで、文字修正装置1Aは、ストローク表示部25により、「電話番号」を示す表示テキストが表示された表示欄(入力領域)と対応するストローク情報を取得し、表示ストローク7aを表示させる(状態S32)。
このように、本実施形態の文字修正装置1Aは、ユーザが修正対象の表示テキストを指定しなくても、画面の所定の位置にある表示テキストに対応する表示ストロークを表示させることができる。
したがって、本実施形態では、例えば過去に入力した手書き入力の筆跡を確認したい場合や、どの情報が手書き入力されたかを確認したい場合等に、画面をスクロール操作するだけで順次所望の表示スクロールを表示させることができる。
(第三の実施形態)
次に、第三の実施形態について説明する。第三の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有するものには第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
本実施形態の文字修正装置1Bは、表示ストロークを手書き入力により修正することで、表示テキストの文字の削除を行うことができるものである。
図14は、第三の実施形態の文字修正装置の機能構成を説明する図である。本実施形態の文字修正装置1Bは、文字修正処理部21B、認識部31A、及び記憶部41Aを有する。また、文字修正処理部21Bは、削除判定部51を有する。さらに、記憶部41Aは、評価値情報45を有する。
認識部31Aは、手書き入力により入力されたストローク情報や、文字修正処理部21Bにより修正された表示ストロークのストローク情報から文字を認識し、認識された文字及び文字の評価値を含む評価値情報45を認識結果として取得する。
評価値情報45は、認識部31Aにより認識結果として取得される情報であり、ストローク情報から認識された文字及び文字の評価値を含む情報である。ここで、評価値とは、ストローク情報から認識された文字の確からしさを示す値である。なお、評価値情報45は、複数の文字及びこれらの文字の評価値であっても良い。
削除判定部51は、認識部31Aによる認識結果として取得された評価値情報45に基づき、手書き入力された内容が文字の削除であるか否かを判定する。すなわち、削除判定部51は、認識部31Aによる認識結果として取得された評価値情報45における削除を示す文字の評価値が予め設定された第2の閾値以上である場合、文字の削除であると判定する。ここで、削除を示す文字とは、例えば、「−」により表せる削除記号である。
次に、本実施形態の文字修正装置1Bの動作について説明する。図15は、第三の実施形態の表示テキスト修正処理の一例を説明するフローチャートである。図15では、主に、文字修正装置1Bに表示されている表示テキストを手書き入力により削除する処理について説明する。なお、手書き入力により文字を置換又は挿入する場合については、第一の実施形態において、図9で説明した通りであるため、説明を省略する。
ステップS904において、入力ストローク領域において表示ストローク領域と重なっている領域の割合が第1の閾値以上であると判定された場合、文字修正装置1Bは、認識部31Aにより、手書き入力されたストロークを示すストローク情報から文字を認識し、認識結果を取得する(ステップS1501)。ここで、取得された認識結果には、ストローク情報から認識された文字と、文字の評価値を含む評価値情報45とが含まれる。
次に、本実施形態の文字修正装置1Bは、削除判定部51により、評価値情報45における削除を示す文字の評価値が第2の閾値以上であるか否かを判定する(ステップS1502)。
ステップS1502において、評価値情報45における削除を示す文字の評価値が第2の閾値以上であると判定された場合、文字修正装置1Bは、文字修正部28により、該当の表示ストローク領域のストロークを削除する(ステップS1503)。すなわち、文字修正部28は、ステップS904において入力ストローク領域と重なっている割合が第1の閾値以上であると判定された表示ストローク領域のストロークを削除する。
ステップS1503において、評価値情報45における削除を示す文字の評価値が第2の閾値以上であると判定されなかった場合、文字修正装置1Bは、ステップS905に進む。すなわち、文字修正装置1Bは、図9において説明した通り、文字修正部28により、入力ストローク領域のストロークで表示ストローク領域のストロークを置換する。
次に、図16を参照して、図15で説明した表示テキストの修正において、特に、文字の削除を行う場合を具体的に説明する。図16は、第三の実施形態の表示テキスト修正の具体例を説明する図である。
まず、文字修正装置1Bの表示操作装置101において表示テキスト「ABCDE」の表示ストロークが表示されており、表示ストローク領域401〜405が特定された状態であるとする(状態S41)。
文字修正装置1Bは、状態S41において、表示ストローク領域402の文字「C」を削除するための手書き入力を行ったとする。すると、文字修正装置1Bは、手書き入力により入力されたストロークの入力ストローク領域501を特定する(状態S42)。図16の例では、領域特定部26は、削除を示す文字「−」の入力ストローク領域501を特定している。
図12の状態S42において、入力ストローク領域501において、表示ストローク領域401〜405のうちの表示ストローク領域403と重なっている領域の割合は、1/2以上である。したがって、重なり判定部27は、入力ストローク領域501が、表示ストローク領域403と第1の閾値以上重なっていると判定する。
また、削除判定部51は、評価値情報45に含まれる削除を示す文字の評価値が第2の閾値以上であるか否かを判定する。例えば、評価値情報45に、文字「一」(漢数字)及び評価値「50」、文字「−」(ハイフン)及び評価値「40」、削除を示す文字「−」及び評価値「35」等の文字及び評価値が含まれており、第2の閾値が「30」であるとする。この場合、削除判定部51は、評価値情報45に含まれる削除を示す文字の評価値が第2の閾値以上であると判定する。
文字修正装置1Bは、この判定結果から、文字修正部28により、表示ストローク領域403のストロークを削除する(状態S43)。
このように、本実施形態の文字修正装置1Bは、さらに、表示ストロークを手書き入力により修正することができる。そして、文字修正装置1Bは、修正後の表示ストロークが示すストロークを認識し、認識結果として文字を取得することで、表示テキストの文字の削除を行うことができる。
(第四の実施形態)
次に、第四の実施形態について説明する。第四の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有するものには第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
本実施形態では、文字修正プログラム20及び認識プログラム30が文字修正装置1とは異なる装置にインストールされている場合について説明する。図17は、第四の実施形態の文字修正システムの一例を示す図である。
本実施形態の文字修正装置1Cは、第1のアプリケーション10を有する。また、文字修正装置1CとネットワークNを介して接続されるサーバ装置50は、文字修正プログラム20及び認識プログラム30を有する。
本実施形態では、手書き入力処理において、文字修正装置1Cは、第1のアプリケーション10により、ユーザにより手書き入力されたストローク情報と、手書き入力された入力領域を特定する座標情報とをサーバ装置50に送信する。サーバ装置50では、認識プログラム30により、ストローク情報から文字を認識し、認識結果として取得した文字を文字修正装置1Cに送信する。また、サーバ装置50は、ストローク情報と、認識結果として取得された文字と、入力領域を特定する座標情報とを対応付けたストローク対応付け情報44を、サーバ装置50の記憶領域に保存する。
なお、手書き入力処理において、ストローク対応付け情報44をサーバ装置50で保存するものとして説明したが、これに限られない。サーバ装置50は、ストローク対応付け44を文字修正装置1に送信し、文字修正装置1においてストローク対応付け情報44を保存しても良い。
本実施形態では、手書き修正処理において、文字修正装置1Cは、第1のアプリケーション10により、サーバ装置50からストローク対応付け情報44を取得し、取得したストローク対応付け情報44のストローク情報に基づき表示ストロークを表示させる。また、文字修正装置1Cは、手書き入力により修正された修正後の表示ストロークを示すストローク情報をサーバ装置50に送信する。サーバ装置50は、修正後の表示ストロークを示すストローク情報から文字を認識し、認識結果として取得した文字を文字修正装置1Cに送信する。また、サーバ装置50は、修正後の表示ストロークを示すストローク情報に基づいて、ストローク対応付け情報44を更新する。
以上により、本実施形態の文字修正システムでは、文字修正装置1Cに表示された表示テキストが修正される。本実施形態の構成により、文字修正装置1Cは、第1のアプリケーション10がインストールされていれば、第一の実施形態乃至第三の実施形態で説明した手書き入力による修正を行うことができるようになる。
また、サーバ装置50が認識プログラム30を有する構成とすることにより、例えば、認識プログラム30が文字の認識に用いる情報をサーバ装置50において管理することができる。したがって、サーバ装置50において、認識プログラム30が参照するデータベース等が更新されて、認識プログラム30による文字認識の精度が向上した場合等には、手書き入力による修正で入力されたストロークの認識においても、その恩恵を受けることができる。
(第五の実施形態)
次に、第五の実施形態について説明する。第五の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有するものには第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
本実施形態では、認識プログラム30が文字修正装置1とは異なる装置にインストールされている場合について説明する。図18は、第五の実施形態の文字修正システムの一例を示す図である。
本実施形態の文字修正装置1Dは、第1のアプリケーション10及び文字修正プログラム20を有する。また、文字修正装置1DとネットワークNを介して接続されるサーバ装置50Aは、認識プログラム30を有する。
本実施形態では、手書き入力処理において、文字修正装置1Dは、第1のアプリケーションにより、ユーザにより手書き入力されたストローク情報をサーバ装置50Aに送信する。サーバ装置50Aでは、認識プログラム30により、ストローク情報から文字を認識し、認識結果として取得した文字を文字修正装置1Dに送信する。そして、文字修正装置1Dは、ストローク情報と、認識結果として取得された文字とを対応付けたストローク対応付け情報44を記憶部41に保存する。
なお、手書き入力処理において、ストローク対応付け情報44を文字修正装置1Cで保存するものとして説明したが、これに限られない。文字修正装置1Dは、手書き入力された入力領域を特定する座標情報をサーバ装置50Aに送信し、サーバ装置50Aにおいてストローク対応付け情報44を保存しても良い。
本実施形態では、手書き修正処理において、文字修正装置1Dは、文字修正プログラム20により、記憶部41からストローク対応付け情報44を取得し、取得したストローク対応付け情報44のストローク情報に基づき表示ストロークを表示させる。また、文字修正装置1Dは、手書き入力により修正された修正後の表示ストロークを示すストローク情報をサーバ装置50Aに送信する。サーバ装置50Aは、修正後の表示ストロークを示すストローク情報から文字を認識し、認識結果として取得した文字を文字修正装置1Dに送信する。そして、文字修正装置1は、修正後の表示ストロークを示すストローク情報と、認識結果として取得された文字とに基づきストローク対応付け情報を更新する。
以上により、本実施形態の文字修正システムでは、文字修正装置1Dに表示された表示テキストが修正される。本実施形態の構成により、文字修正装置1Dは、第1のアプリケーション10及び文字修正プログラム20がインストールされていれば、第一の実施形態乃至第三の実施形態で説明した手書き入力による修正を行うことができるようになる。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1 文字修正装置
10 第1のアプリケーション
20 文字修正プログラム
21 文字修正処理部
22 ストローク情報取得部
23 保存判定部
24 ストローク情報管理部
25 ストローク表示部
26 領域特定部
27 重なり判定部
28 文字修正部
30 認識プログラム

Claims (20)

  1. コンピュータに、
    入力項目に対応づけて保持された前記入力項目に対する手書き入力のストロークを、前記入力項目と対応づけて表示する処理と、
    表示された前記ストロークに対する修正に応じて、前記入力項目に表示された前記ストロークによる入力結果を修正する処理と、
    を実行させることを特徴とする入力制御プログラム。
  2. 請求項1記載の入力制御プログラムであって、
    前記表示する処理は、前記入力項目の選択に応じて表示されることを特徴とする、入力制御プログラム。
  3. 請求項1記載の入力制御プログラムであって、
    前記表示する処理は、前記入力項目の表示画面の特定の領域への表示に応じて表示されることを特徴とする、入力制御プログラム。
  4. コンピュータに、
    入力項目に対する手書き入力のストロークおよび前記手書き入力の認識文字を記憶する処理と、
    前記入力項目に前記認識文字を表示する処理と、
    前記入力項目の選択に応じて、前記ストロークを表示する処理と、
    を実行させることを特徴とする入力制御プログラム。
  5. 請求項4記載の入力制御プログラムであって、
    前記ストロークを表示する処理は、前記入力項目の認識文字の表示位置と異なる位置に表示する処理を含む、
    ことを特徴とする入力制御プログラム。
  6. 請求項4記載の入力制御プログラムであって、
    前記ストロークを表示する処理は、前記ストロークの表示色を、前記入力項目の認識文字の表示色と異ならせる処理を含む、
    ことを特徴とする入力制御プログラム。
  7. 前記手書き入力は、スタイラスにより入力される、ことを特徴とする請求項1乃至6の何れか1項に記載の入力制御プログラム。
  8. 入力項目に対応づけて保持された前記入力項目に対する手書き入力のストロークを、前記入力項目と対応づけて表示する表示部と、
    表示された前記ストロークに対する修正に応じて、前記入力項目に表示された前記ストロークによる入力結果を修正する修正部と
    を有することを特徴とする入力制御装置。
  9. 入力項目に対する手書き入力のストロークおよび前記手書き入力の認識文字を記憶する記憶部と、
    前記入力項目に前記認識文字を表示する認識文字表示部と、
    前記入力項目の選択に応じて、前記ストロークを表示するストローク表示部と
    を有することを特徴とする入力制御装置。
  10. コンピュータによる入力制御方法であって、該コンピュータが、
    入力項目に対応づけて保持された前記入力項目に対する手書き入力のストロークを、前記入力項目と対応づけて表示する処理と、
    表示された前記ストロークに対する修正に応じて、前記入力項目に表示された前記ストロークによる入力結果を修正する処理と、
    を実行することを特徴とする入力制御方法。
  11. コンピュータによる入力制御方法であって、該コンピュータが、
    入力項目に対する手書き入力のストロークおよび前記手書き入力の認識文字を記憶する処理と、
    前記入力項目に前記認識文字を表示する処理と、
    前記入力項目の選択に応じて、前記ストロークを表示する処理と、
    を実行することを特徴とする入力制御方法。
  12. コンピュータに、
    第1のアプリケーションに対する手書き入力におけるストローク情報群を、前記第1のアプリケーションにおけるテキストの領域ごとに対応づけて保持し、
    前記第1のアプリケーションの特定の領域のテキストについて、前記特定の領域に対応する前記ストローク情報群を表示し、
    前記表示されたストローク情報群に対する修正に応じ、少なくとも前記修正の対象を含むストローク情報を認識した結果により、前記特定の領域のテキストを更新する、
    処理を実行させることを特徴とする文字修正プログラム。
  13. 前記更新する処理は、
    前記表示されたストローク情報群に対応する修正に応じて修正されたストロークのストローク情報と、前記修正されたストロークの前後のストロークのストローク情報と、を含むストローク情報を認識した結果により、前記特定の領域のテキストを更新する、ことを特徴とする請求項12記載の文字修正プログラム。
  14. 前記更新する処理は、
    前記テキストの領域ごとに対応づけて保持されている前記ストローク情報群を更新する、ことを特徴とする請求項12又は13記載の文字修正プログラム。
  15. 前記表示する処理は、
    前記テキストの領域が、画面における所定の位置を示す座標を含むとき、前記領域に対応する前記ストローク情報群を表示させる、ことを特徴とする請求項12乃至14の何れか一項に記載の文字修正プログラム。
  16. 前記所定の位置を示す座標は、前記画面に表示されるページ画像上の基準点との相対的な関係を示す相対座標である請求項15記載の文字修正プログラム。
  17. 前記テキストの領域は、
    1回の認識により認識されたストローク情報群が手書き入力された領域である請求項12乃至16の何れか一項に記載の文字修正プログラム。
  18. 前記テキストは、手書き入力により認識された文字群である、ことを特徴とする請求項12乃至17の何れか1項に記載の文字修正プログラム。
  19. 第1のアプリケーションに対する手書き入力におけるストローク情報群を、前記第1のアプリケーションにおけるテキストの領域ごとに対応づけて保持する保持部と、
    前記第1のアプリケーションの特定の領域のテキストについて、前記特定の領域に対応する前記ストローク情報群を表示する表示部と、
    前記表示されたストローク情報群に対する修正に応じ、少なくとも前記修正の対象を含むストローク情報を認識した結果により、前記特定の領域のテキストを更新する更新部と、
    を有することを特徴とする文字修正装置。
  20. コンピュータによる文字修正方法であって、該コンピュータが、
    第1のアプリケーションに対する手書き入力におけるストローク情報群を、前記第1のアプリケーションにおけるテキストの領域ごとに対応づけて保持し、
    前記第1のアプリケーションの特定の領域のテキストについて、前記特定の領域に対応する前記ストローク情報群を表示し、
    前記表示されたストローク情報群に対する修正に応じ、少なくとも前記修正の対象を含むストローク情報を認識した結果により、前記特定の領域のテキストを更新する、
    ことを特徴とする文字修正方法。
JP2017513942A 2015-04-24 2015-04-24 入力制御プログラム、入力制御装置、入力制御方法、文字修正プログラム、文字修正装置、及び文字修正方法 Pending JPWO2016170690A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/062609 WO2016170690A1 (ja) 2015-04-24 2015-04-24 入力制御プログラム、入力制御装置、入力制御方法、文字修正プログラム、文字修正装置、及び文字修正方法

Publications (1)

Publication Number Publication Date
JPWO2016170690A1 true JPWO2016170690A1 (ja) 2018-02-08

Family

ID=57143476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017513942A Pending JPWO2016170690A1 (ja) 2015-04-24 2015-04-24 入力制御プログラム、入力制御装置、入力制御方法、文字修正プログラム、文字修正装置、及び文字修正方法

Country Status (5)

Country Link
US (1) US20180032244A1 (ja)
EP (1) EP3287952A4 (ja)
JP (1) JPWO2016170690A1 (ja)
CN (1) CN107533647A (ja)
WO (1) WO2016170690A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111079502A (zh) * 2019-07-26 2020-04-28 广东小天才科技有限公司 一种识别书写内容的方法及电子设备
CN115480659A (zh) * 2021-05-31 2022-12-16 华为技术有限公司 一种手写笔编辑笔势识别方法、介质及电子设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0757053A (ja) * 1993-08-13 1995-03-03 Sony Corp 手書き入力表示方法
JP2003178257A (ja) * 2001-12-07 2003-06-27 Sharp Corp 文字入力装置、文字入力方法および文字を入力するためのプログラム
US20030189603A1 (en) * 2002-04-09 2003-10-09 Microsoft Corporation Assignment and use of confidence levels for recognized text
JP2007511003A (ja) * 2003-11-10 2007-04-26 マイクロソフト コーポレーション 電子テキストと対話するためのユーザインターフェース及び電子テキストを修正するためのシステム並びに方法
JP2008242541A (ja) * 2007-03-26 2008-10-09 Dainippon Printing Co Ltd 電子フォーム入力システム
JP2010532059A (ja) * 2007-06-27 2010-09-30 マイクロソフト コーポレーション 中央を固定されたリスト
JP2011111061A (ja) * 2009-11-27 2011-06-09 Fujitsu Ten Ltd 車載表示システム
JP2013246633A (ja) * 2012-05-25 2013-12-09 Toshiba Corp 電子機器、手書き文書作成方法、及び手書き文書作成プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6690364B1 (en) * 2001-05-31 2004-02-10 Palm Source, Inc. Method and system for on screen text correction via pen interface
JP4733415B2 (ja) * 2005-04-05 2011-07-27 シャープ株式会社 電子文書の表示装置及び方法、並びにコンピュータプログラム
US8116569B2 (en) * 2007-12-21 2012-02-14 Microsoft Corporation Inline handwriting recognition and correction
JP2012238295A (ja) * 2011-04-27 2012-12-06 Panasonic Corp 手書き文字入力装置及び手書き文字入力方法
FR3005175B1 (fr) * 2013-04-24 2018-07-27 Myscript Systeme de synchronisation permanente pour la saisie manuscrite

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0757053A (ja) * 1993-08-13 1995-03-03 Sony Corp 手書き入力表示方法
JP2003178257A (ja) * 2001-12-07 2003-06-27 Sharp Corp 文字入力装置、文字入力方法および文字を入力するためのプログラム
US20030189603A1 (en) * 2002-04-09 2003-10-09 Microsoft Corporation Assignment and use of confidence levels for recognized text
JP2007511003A (ja) * 2003-11-10 2007-04-26 マイクロソフト コーポレーション 電子テキストと対話するためのユーザインターフェース及び電子テキストを修正するためのシステム並びに方法
JP2008242541A (ja) * 2007-03-26 2008-10-09 Dainippon Printing Co Ltd 電子フォーム入力システム
JP2010532059A (ja) * 2007-06-27 2010-09-30 マイクロソフト コーポレーション 中央を固定されたリスト
JP2011111061A (ja) * 2009-11-27 2011-06-09 Fujitsu Ten Ltd 車載表示システム
JP2013246633A (ja) * 2012-05-25 2013-12-09 Toshiba Corp 電子機器、手書き文書作成方法、及び手書き文書作成プログラム

Also Published As

Publication number Publication date
CN107533647A (zh) 2018-01-02
WO2016170690A1 (ja) 2016-10-27
EP3287952A4 (en) 2018-04-11
EP3287952A1 (en) 2018-02-28
US20180032244A1 (en) 2018-02-01

Similar Documents

Publication Publication Date Title
JP5402099B2 (ja) 情報処理システム、情報処理装置、情報処理方法およびプログラム
US9207808B2 (en) Image processing apparatus, image processing method and storage medium
US20140321751A1 (en) Character input apparatus and method
US10210141B2 (en) Stylizing text by replacing glyph with alternate glyph
US11080472B2 (en) Input processing method and input processing device
CN111209909A (zh) 资质识别模板构建方法、装置、设备和存储介质
WO2016170690A1 (ja) 入力制御プログラム、入力制御装置、入力制御方法、文字修正プログラム、文字修正装置、及び文字修正方法
JP5229102B2 (ja) 帳票検索装置、帳票検索プログラムおよび帳票検索方法
JP2006277001A (ja) 入力イメージ表示方法および入力イメージ表示プログラム
JP6603194B2 (ja) 画面認識装置、画面認識方法、および、画面認識プログラム
JP2018067298A (ja) 手書き内容編集装置および手書き内容編集方法
JP2019169182A (ja) 情報処理装置、制御方法、プログラム
JP2018055256A (ja) 情報処理装置、情報処理方法及びプログラム
US20150043825A1 (en) Electronic device, method and computer-readable medium
JP4964080B2 (ja) 画像処理システム、画像処理方法、画像処理プログラム
JP7302175B2 (ja) 情報処理装置、及び情報処理プログラム
US11163992B2 (en) Information processing apparatus and non-transitory computer readable medium
US10509543B2 (en) Control method for ordering of a displayed list, and control apparatus and storage medium provided therewith
US9912834B2 (en) Document camera device and cutout assistance method
JP6190549B1 (ja) 文書処理システム
JP7015706B2 (ja) 計算機及び文書データの処理方法
US11030473B2 (en) Information processing apparatus and non-transitory computer readable medium storing information processing program
JP2017204270A (ja) 文字列領域・文字矩形抽出装置、文字列領域・文字矩形抽出方法、およびプログラム
JP2018085093A (ja) 情報処理装置、制御方法、プログラム
JP4241820B2 (ja) 文字認識方法および文字認識システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180524

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180703