【実施例】
【0022】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る操作制御プログラム及び操作制御方法並びに情報処理装置について、
図1乃至
図14を参照して説明する。
図1は、本実施例の情報処理装置の構成を示すブロック図である。また、
図2乃至
図4は、オブジェクトとしてテキストを入力した場合の候補を説明する図であり、
図5乃至
図7は、オブジェクトとしてイメージ及びテキストを入力した場合の候補を説明する図である。また、
図8は、本実施例の情報処理装置の処理を示すフローチャート図であり、
図9は、その具体例を示す図である。また、
図10乃至
図14は、候補の表示例のバリエーションを示す図である。
【0023】
本実施例の情報処理装置は、コンピュータ装置やタブレット端末、演算機能を備えた表示パネル、電子黒板などであり、
図1(a)に示すように、制御部20と表示部30と操作部40と記憶部50などで構成される。
【0024】
制御部20は、CPU(Central Processing Unit)21とROM(Read Only Memory)22やRAM(Random Access Memory)23などのメモリとで構成され、CPU21は、ROM22から読み出したプログラムをRAM23に展開して実行することにより、情報処理装置10全体の動作を制御する。また、ROM22は、CPUが実行するプログラムなどを格納する。RAM23は、CPU21の演算処理結果などを格納する。
【0025】
この制御部20は、
図1(b)に示すように、処理部24及び表示制御部25としても機能する。
【0026】
処理部24は、操作部40を用いて入力された文字や図形などのオブジェクトを記憶部50に保存する。その際、入力されたオブジェクトが手書き入力のテキストの場合は、公知のOCR(Optical Character Reader)技術を利用してテキストの内容を認識する。また、予め定められた複数の基準(クライテリアと呼ぶ。)に基づいて、入力されたオブジェクトを分割して複数の候補を抽出し、抽出した候補をクライテリアに対応付けて管理するためのリスト(後述する分割候補管理リスト)を作成して記憶部50に保存する。また、操作部40からの操作指示(例えば、操作指定)に従って、複数のクライテリアの中から指定された操作に対応するクライテリアを特定し、記憶部50に保存している分割候補管理リストの中から、特定したクライテリアに対応する複数の候補を抽出し、その複数の候補を表示制御部25に通知する。また、操作部40からの操作指示(例えば、位置指定)に従って、表示部30に表示されている複数の候補の中から指定された位置に対応する候補を特定し、特定した候補に対して指定された操作を実行する。
【0027】
表示制御部25は、操作部40を用いて入力されたオブジェクトを表示部30に表示させる。また、処理部24から複数の候補が通知されたら、複数の候補の各々を識別可能にするためのマーク(例えば、各々の候補を囲む枠など)を表示部30に表示させる。
【0028】
なお、上記処理部24及び表示制御部25は、ハードウェアとして構成してもよいし、制御部20を、処理部24及び表示制御部25として機能させるソフトウェア(操作支援プログラム)として構成してもよい。
【0029】
表示部30は、LCD(Liquid Crystal Display)や有機EL(electroluminescence)ディスプレイなどで構成され、表示制御部25の指示に従って、入力されたオブジェクトやオブジェクトを分割した複数の候補の各々を識別可能にするマークなどを表示する。
【0030】
操作部40は、情報処理装置10がタブレット端末などの場合は、表示部30上に配置された格子状の電極からなるタッチセンサやハードキーなどで構成される。また、情報処理装置10がコンピュータ装置の場合は、マウスやキーボードなどで構成される。そして、操作部40は、オブジェクトの入力指示やオブジェクトに対する操作の指定、候補を選択するための位置の指定などを受け付ける。
【0031】
記憶部50は、メモリやHDD(Hard Disk Drive)などで構成され、入力されたオブジェクトやオブジェクトを複数の候補に分割するためのクライテリア、複数のクライテリアに基づいて分割した複数の候補、複数の候補をクライテリアに対応付けて管理するための分割候補管理リストなどを記憶する。
【0032】
なお、本実施例では、情報処理装置10に表示部30及び操作部40を備える構成とするが、情報処理装置10には表示部30を設けず、情報処理装置10の操作部で操作した結果を外部の表示装置に表示させるようにしてもよいし、情報処理装置10には表示部30及び操作部40を設けず、情報処理装置10では操作及び表示の制御のみを行うようにしてもよい。
【0033】
以下、本実施例の情報処理装置10の処理について説明する。なお、以下では、情報処理装置10としてタッチパネルを備える手書き入力装置を前提として説明するが、タッチパネルを備えていないコンピュータ装置に対しても同様に適用することができる。
【0034】
まず、複数のクライテリアに基づいて入力されたオブジェクトを複数の候補に分割する方法について、具体例を挙げて説明する。
【0035】
図2は入力されたオブジェクトの一例であり、操作部40を用いて表示部30のワークスペースにオブジェクト(ここでは、「今日の天気は晴れ」というテキスト)が入力されたとする。このオブジェクトに対して、制御部20(処理部24)は、公知のOCR技術を利用してテキストの内容を認識し、認識したテキストを複数のクライテリアに基づいて複数の候補に分割する。ここでは、複数のクライテリアとして、文字、単語、文節、文、段落の5つを用いる。
【0036】
具体的には、
図3に示すように、制御部20(処理部24)は、オブジェクトを文字で分割する場合は、「今」、「日」、「の」、「天」、「気」、「は」、「晴」、「れ」の8つの候補を抽出する。また、オブジェクトを単語で分割する場合は、「今日」、「の」、「天気」、「は」、「晴れ」の5つの候補を抽出する。また、オブジェクトを文節で分割する場合は、「今日の」、「天気は」、「晴れ」の3つの候補を抽出する。また、オブジェクトを文で分割する場合は、「今日の天気」、「天気は晴れ」、「今日の天気は晴れ」の3つの候補を抽出する。また、オブジェクトを段落で分割する場合は、「今日の天気は晴れ」の1つの候補を抽出する。
【0037】
ここで、従来の手法では、1つの基準に基づいてオブジェクトを分割しているため、候補が競合する(同じ文字が複数の候補に使用される)ことはないが、本実施例の手法では、複数の基準に基づいてオブジェクトを分割しているため、候補が競合する。そこで、制御部20(表示制御部25)は、各々の候補を認識可能にするために、各々の候補を囲む枠などのマークを表示部30に表示させる。
【0038】
図4は、上記複数のクライテリアを用いて分割した複数の候補を管理するリストであり、制御部20(処理部24)は、ワークスペースの内容が更新される(入力や操作が行われる)度に、分割した候補とクライテリアとを対応付ける分割候補管理リストを作成し、記憶部50に記憶する。なお、
図4では、分割候補管理リストに、対応するストロークの欄を設けているが、この欄は本発明の理解を容易にするために記載したものであり、分割候補管理リストには、少なくともクライテリアの種別と候補を特定する情報とを含んでいればよい。また、
図4では、候補を特定する情報としてストローク番号を記載しているが、各々の文字のJISコードなどを記載してもよい。
【0039】
図2乃至
図4では、オブジェクトとしてテキストが入力された場合を示したが、入力されたオブジェクトにイメージを含む場合は、
図5乃至
図7のように候補を抽出することができる。
【0040】
例えば、
図5に示すように、操作部40を用いて表示部30のワークスペースに、右矢印のイメージと四角のイメージとを続けて入力し、所定の時間(例えば、30秒)を空けて「ストローク情報で区切る」というテキストが入力されたとする。このようなイメージを含むオブジェクトが入力された場合は、制御部20(処理部24)は、必要に応じて、公知のOCR技術を用いてテキストの内容を認識した後、複数のクライテリア(ここでは、前後の入力の時間間隔と前後の入力の距離)を用い、時間間隔が基準値(例えば、10秒)となる時点、距離(空間間隔)が基準値(例えば、10mm)となる位置を切れ目として複数の候補に分割する。なお、上記基準値は任意で設定可能であり、ユーザの以前のオブジェクトの入力履歴に応じて適宜設定可能である。
【0041】
具体的には、
図6に示すように、制御部20(処理部24)は、オブジェクトを時間間隔で分割する場合は、右矢印及び四角のイメージと、「ストローク情報で区切る」のテキストの2つの候補を抽出する。また、オブジェクトを距離で分割する場合は、右矢印のイメージと、四角のイメージ及び「ストローク情報で区切る」のテキストの2つの候補を抽出する。そして、制御部20(表示制御部25)は、各々の候補を認識可能にするためのマーク(各々の候補を囲む枠)を表示部30に表示させる。
【0042】
図7は、上記複数のクライテリアを用いて分割した複数の候補を管理するリストであり、制御部20(処理部24)は、ワークスペースの内容が更新される(入力や操作が行われる)度に、分割した候補とクライテリアとを対応付ける分割候補管理リストを作成し、記憶部50に記憶する。なお、ここでも、分割候補管理リストに、対応するストロークの欄を設けているが、分割候補管理リストには少なくともクライテリアの種別と候補を特定する情報とを含んでいればよい。また、
図7では、候補を特定する情報としてストローク番号を記載しているが、各々のオブジェクトの画面上の座標などを記載してもよい。
【0043】
上記
図2乃至
図7は、オブジェクトを複数の候補に分割する手法の一例であり、複数のクライテリアを用いてオブジェクトを複数の候補に分割する限りにおいて、オブジェクトの種類、クライテリアの内容、候補の構成などは任意に設定可能である。
【0044】
例えば、
図2乃至
図4では、テキストオブジェクトが入力された場合を示し、
図5乃至
図7では、イメージとテキストが混在するオブジェクトが入力された場合を示したが、イメージのみからなるオブジェクトが入力された場合や、テキストに重なるようにイメージが入力された場合などに対しても、同様の手順で候補に分割することができる。また、
図2乃至
図4では、文字、単語、文節、文、段落の5つのクライテリアを用い、
図5乃至
図7では、前後の入力の時間間隔と距離の2つのクライテリアを用いたが、例えば、テキストが複数行にわたって入力された場合などには、文字、単語、文節、文、段落のみならず、前後の入力の時間間隔や距離を加味して複数の候補に分割してもよい。
【0045】
また、
図5乃至
図7では、前後の入力の時間間隔と距離を別々のクライテリアとしたが、前後の入力の時間間隔と距離とを複合したクライテリアを用いても複数の候補に分割してもよいし、前後の入力の時間間隔と距離の基準値として、複数の基準値(例えば、時間間隔として10秒と1分、距離として10mmと20mmなど)を設けて複数の候補に分割してもよい。
【0046】
また、
図4及び
図7では、分割候補管理リストにクライテリアに基づいて分割した複数の候補のみを記載したが、これらの加えて、ユーザが任意にオブジェクトを分割した候補を加えても良い。例えば、
図2の例では、「今日の天気は」という候補を加えたり、
図7の例では、右矢印と「ストローク情報で区切る」とを組み合わせた候補を加えたりしてもよい。
【0047】
次に、本実施例の情報処理装置10の処理について説明する。制御部20のCPU21は、ROM22に記憶した操作支援プログラムをRAM23に展開して実行することにより、
図8のフローチャートに示す処理を実行する。なお、以下の説明において、操作の対象となるオブジェクトは操作部40を用いて入力(例えば、タッチパネルを用いて手書き若しくはマウス及びキーボードを用いて入力)されているものとする。また、必要に応じて、予め定めた複数のクライテリアに基づいて、入力されたオブジェクトを分割して複数の候補を抽出し、複数の候補とクライテリアとを対応付ける分割候補管理リストを作成して記憶部50に記憶しているものとする。
【0048】
まず、ユーザは操作部40を操作して、オブジェクトに対して行う操作を指定する。この操作の指定方法は特に限定されず、例えば、情報処理装置10がタッチパネルを備えるタブレット端末などの場合は、タッチパネルに表示されるキーの中から所望の操作に対応するキーを選択したり、ハードキーなどを操作して所望の操作を選択したりすることができる。また、情報処理装置10がコンピュータ装置の場合は、マウスの右クリックで操作内容が一覧表示されるウィンドウを表示して、その中から所望の操作を選択したり、キーボードのキーの中から所望の操作に対応するキーを選択したりすることができる。そして、制御部20(処理部24)は、操作部40から出力される信号に基づいて、ユーザが指定した操作内容を認識する(S101)。
【0049】
次に、制御部20(処理部24)は、ユーザが指定した操作内容がオブジェクトの「移動」であるか、オブジェクトの「コピー」であるかを判断する(S102)。なお、ここでは、操作内容として「移動」と「コピー」の2つを例示するが、オブジェクトに対して実行可能な操作であればよく、例えば、「削除」や「拡大」、「縮小」などの操作として良い。
【0050】
そして、制御部20(処理部24)は、操作内容に対応する2以上のクライテリアに基づいてオブジェクトを分割して候補をすべて抽出する。例えば、操作内容が「移動」の場合は、「移動」に対応するクライテリアとして「文節」、「文」、「段落」が予め指定されているとすると、記憶部50に保存した分割候補管理リストの中から、「文節」、「文」、「段落」の各々に基づいて分割した候補を抽出する(S103)。また、操作内容が「コピー」の場合は、「コピー」に対応するクライテリアとして「単語」、「文節」、「文」、「段落」が指定されているとすると、記憶部50に保存した分割候補管理リストの中から、「単語」、「文節」、「文」、「段落」の各々に基づいて分割した候補を抽出する(S104)。
【0051】
なお、本実施例では、予め定めたクライテリアに基づいてオブジェクトを分割して分割候補管理リストを作成しておき、オブジェクトに対する操作が指定されたら、分割候補管理リストの中から、その操作に対応する2以上のクライテリアに基づいて分割した候補を抽出しているが、操作が指定される前には候補の抽出は行わず、操作が指定されてから、その操作に対応するクライテリアに基づいて候補を抽出するようにしてもよい。
【0052】
そして、制御部20(表示制御部25)は、抽出した複数の候補の各々を識別可能にするマークを表示部30の画面に表示させる(S105)。
【0053】
ここまでの処理について、
図9を参照して具体的に説明する。例えば、
図9(a)に示すように、「今日の天気は晴れ」というテキストオブジェクトが入力された場合、まず、
図2乃至
図4に示すように、そのオブジェクトを「文字」、「単語」、「文節」、「文」、「段落」の5つのクライテリアに基づいて分割して複数の候補を抽出し、複数の候補をクライテリアに対応付けて分割候補管理リストに登録する。
【0054】
そして、入力されたオブジェクトに対して、「移動」の操作が指定された場合は、
図9(b)の左側に示すように、分割候補管理リストの中から、「文節」の候補として「今日の」と「天気は」と「晴れ」の3つの候補を抽出し、「文」の候補として、「今日の天気」と「天気は晴れ」と「今日の天気は晴れ」の3つの候補を抽出し、「段落」の候補として「今日の天気は晴れ」の1つの候補を抽出し、計7個(重複する候補を除くと6個)の候補の各々を識別可能にするためのマーク(候補の周囲を囲む枠など)を表示して、特に、競合する候補(ここでは、「今日の天気」と「天気は晴れ」)を識別しやすくする。
【0055】
また、入力されたオブジェクトに対して、「コピー」の操作が指定された場合は、
図9(b)の右側に示すように、「単語」の候補として、「今日」と「の」と「天気」と「は」と「晴れ」の5つの候補を抽出し、「文節」の候補として「今日の」と「天気は」と「晴れ」の3つの候補を抽出し、「文」の候補として、「今日の天気」と「天気は晴れ」と「今日の天気は晴れ」の3つの候補を抽出し、「段落」の候補として「今日の天気は晴れ」の1つの候補を抽出し、計12個(重複する候補を除くと10個)の候補の各々を識別可能にするためのマーク(候補の周囲を囲む枠など)を表示して、特に、競合する候補(ここでも、「今日の天気」と「天気は晴れ」)を識別しやすくする。
【0056】
図8のフローチャート図に戻って、ユーザは操作部40を操作して候補を選択する基準となる位置を指定する。この位置の指定方法も特に限定されず、例えば、情報処理装置10がタッチパネルを備えるタブレット端末などの場合は、タッチパネルにペンや指でタッチすることによって位置を指定することができ、情報処理装置10がコンピュータ装置の場合は、マウスを移動させて左クリックすることにより位置を指定することができる。そして、制御部20(処理部24)は、操作部40から出力される信号に基づいて、ユーザが指定した位置を特定し、その位置に対応する候補(例えば、その位置から最も中心が近い候補)を操作対象として特定する(S106)。
【0057】
例えば、
図9(c)の左側に示すように、「日」の近傍をユーザが指定した場合、複数の候補の内、中心位置がその指定位置に最も近いのは「今日の」という候補であるため、その候補(図の太枠で示す候補)を操作対象として特定する。一方、
図9(c)の右側に示すように、同様に「日」の近傍をユーザが指定した場合、複数の候補の内、中心位置がその指定位置に最も近いのは「今日」という候補であるため、その候補(図の太枠で示す候補)を操作対象として特定する。
【0058】
なお、ここでは、ユーザが指定した位置から最も中心が近い候補を操作対象として特定する場合を示したが、候補の特定方法は上記方法に限定されず、例えば、ユーザが指定した位置から枠が最も近い候補を操作対象として選択するなど、他のルールで候補を特定しても良い。
【0059】
再び、
図8のフローチャート図に戻って、制御部20(処理部24)は、操作対象として特定した候補に対して、ユーザに指定された操作を実行する(S107)。例えば、
図9(d)の左側に示すように、操作内容が「移動」の場合は、「今日の」という候補が操作対象として特定されるため、その候補を指定された位置(タッチされた位置やマウスで指定された位置)に移動させる操作を実行する。一方、
図9(d)の右側に示すように、操作内容が「コピー」の場合は、「今日」という候補が操作対象として特定されるため、その候補を指定された位置にコピーする操作を実行する。
【0060】
このように、本実施例の情報処理装置10は、複数のクライテリア(好ましくは、ユーザが指定した操作に応じた2以上のクライテリア)に基づいてオブジェクトを分割して複数の候補を抽出し、その複数の候補の各々に枠などのマークを付加して識別可能に表示し、ユーザが指定した位置に基づいて、表示されている複数の候補の中から所定の候補を特定し、特定した候補に対して指定された操作を実行する制御を行うため、ユーザの意図に合致するようにオブジェクトを操作することができる。
【0061】
上記説明では、複数の候補の各々を識別可能に表示するために、複数のクライテリアに基づいて抽出した複数の候補を枠で囲んで表示したが、複数の候補が識別可能であれば、その表示形態は適宜変更可能である。
図10乃至
図14は、候補の表示方法のバリエーションを示しており、各々の図の(a)は指定された操作が「移動」の場合の例、(b)は指定された操作が「コピー」の場合の例である。
【0062】
例えば、
図10に示すように、候補の下側に線を引いて各々の候補を識別可能にしてもよい。また、線を引いて各々の候補を識別可能にする場合において、候補の数が多い場合は、
図11に示すように、候補の上側及び下側に線を引いて各々の候補を識別しやすくしてもよいし、
図12に示すように、クライテリアの種類に応じて線の種類を変更して各々の候補を識別しやすくしてもよい。また、候補の範囲を分かりやすくするために、
図13に示すように、線の始点及び終点を強調した図形を用いて各々の候補を識別可能にしてもよいし、
図14に示すように、種類の異なる括弧(「」や()、{}、[]など)を用いて各々の候補を識別可能にしてもよい。
【0063】
また、上記実施例では、指定された操作に対応する複数のクライテリアに基づいて分割した候補の全てに対してマークを表示したが、例えば、操作対象となる候補を特定した際に、その候補を抽出するために使用したクライテリアを記憶しておき、その後に操作対象となる候補を特定する際に、複数のクライテリアの中から使用頻度の高いクライテリアを選択し、選択したクライテリアに基づいて分割した候補に対してのみマークを表示するなど、履歴情報に基づいてユーザに適した候補を選択しやすくしてもよい。例えば、あるユーザはコピー操作に際してクライテリアとして「文節」と「文」を使用する頻度が高い場合は、「文節」と「文」に基づいて抽出した候補に対してのみマークを表示するようにしても良い。
【0064】
また、複数のクライテリアの中から順番にクライテリアを選択し、選択した個々のクライテリアに基づいて分割した候補に対してマークを表示するなど、マークをクライテリア毎に順番に表示して、複数の候補をより識別しやすくしてもよい。
【0065】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、情報処理装置の構成や制御部の処理は適宜変更可能である。
【0066】
例えば、上記実施例では、手書き入力したオブジェクトを複数のクライテリアに基づいて複数の候補に分割する場合について説明したが、キーボードを用いて入力したオブジェクトや電子データとして入力したオブジェクトを複数の候補に分割する場合に対しても、本発明の手法を同様に適用することができる。