IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社リコーの特許一覧

特開2024-135959表示装置、表示システム、サーバー装置、表示方法、プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024135959
(43)【公開日】2024-10-04
(54)【発明の名称】表示装置、表示システム、サーバー装置、表示方法、プログラム
(51)【国際特許分類】
   G06F 3/04883 20220101AFI20240927BHJP
   G06F 40/171 20200101ALI20240927BHJP
   G06F 40/163 20200101ALI20240927BHJP
   G06V 30/00 20220101ALI20240927BHJP
   G06V 30/19 20220101ALI20240927BHJP
【FI】
G06F3/04883
G06F40/171
G06F40/163
G06V30/00 S
G06V30/19 G
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2023046888
(22)【出願日】2023-03-23
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100107515
【弁理士】
【氏名又は名称】廣田 浩一
(72)【発明者】
【氏名】吉田 拓郎
【テーマコード(参考)】
5B064
5B109
5E555
【Fターム(参考)】
5B064AA07
5B064AB03
5B064BA06
5B064DD03
5B064DD04
5B064DD11
5B064DD15
5B064DD16
5B064FA03
5B064FA13
5B109LA01
5B109NF03
5B109NF11
5E555AA13
5E555AA26
5E555BA02
5E555BA28
5E555BB02
5E555BB28
5E555BC19
5E555CA12
5E555CB10
5E555CC19
5E555DB45
5E555DC21
5E555EA13
5E555EA14
5E555FA00
(57)【要約】
【課題】既存の第2のテキストと、第2のテキストとは異なる第1のテキストとの間隔の表示を制御する表示装置を提供すること。
【解決手段】本発明は、手書きの入力を受け付ける入力受付部と、前記入力受付部が受け付けた手書きを第1のテキストに変換する変換部と、表示部に表示されている第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストの末尾と前記第1のテキストの先頭との間に間隔を空けて前記第1のテキストを表示させる表示制御部と、を有することを特徴とする表示装置を提供する。
【選択図】図1
【特許請求の範囲】
【請求項1】
手書きの入力を受け付ける入力受付部と、
前記入力受付部が受け付けた手書きを第1のテキストに変換する変換部と、
表示部に表示されている第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストの末尾と前記第1のテキストの先頭との間に間隔を空けて前記第1のテキストを表示させる表示制御部と、
を有することを特徴とする表示装置。
【請求項2】
表示部に表示されている第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれるか否かを判断する判断部を有し、
前記判断部が、前記第2のテキストと前記手書きとの距離が第1の距離より小さく、かつ、前記所定範囲に含まれないと判断する場合に、
前記表示制御部は、前記間隔を開けずに前記第2のテキストの末尾に続けて前記第1のテキストを表示させる請求項1に記載の表示装置。
【請求項3】
前記判断部が、前記第2のテキストと前記手書きとの距離が所定範囲に含まれると判断する場合に、
前記表示制御部は、前記第2のテキストの末尾の空白の数を、前記第2のテキストと前記手書きとの距離に応じて変更し、前記第2のテキストの末尾に挿入された1以上の空白を空けて前記第1のテキストを表示させる請求項2に記載の表示装置。
【請求項4】
前記判断部が、前記第2のテキストと前記手書きとの距離が前記所定範囲に含まれると判断し、かつ、前記第2のテキストが末尾に空白を有すると判断する場合、
前記表示制御部は、前記第2のテキストが末尾に空白を挿入しないで、前記第2のテキストが末尾に有する空白の直後に前記第1のテキストを表示させる請求項2又は3に記載の表示装置。
【請求項5】
前記所定範囲は、前記第1のテキストを起点に第1の距離より小さく第2の距離より大きい範囲であり、
前記判断部が、前記第2のテキストと前記手書きとの距離が前記第2の距離以下と判断し、かつ、前記第2のテキストが末尾に空白を有すると判断する場合、
前記表示制御部は、前記第2のテキストの空白でない最後の文字に続けて前記第1のテキストを表示させる請求項4に記載の表示装置。
【請求項6】
前記所定範囲は、前記第1のテキストを起点に第1の距離より小さく第2の距離より大きい範囲である請求項1に記載の表示装置。
【請求項7】
前記入力受付部が過去に受け付けた1つ以上の文字のサイズに基づいて、前記所定範囲を変更する請求項1に記載の表示装置。
【請求項8】
前記変換部は、前記手書きの大きさに基づいて前記第1のテキストのフォントサイズを特定し、
特定されたフォントサイズに基づいて、前記所定範囲を変更する変更部、を有する請求項7に記載の表示装置。
【請求項9】
前記第2のテキストと前記手書きとの距離が第1の距離より小さい場合、前記表示制御部は、前記第2のテキストに対応づけられたフォント情報により定まるフォントを用いて前記第1のテキストを表示させる請求項1に記載の表示装置。
【請求項10】
前記第2のテキストと前記手書きとの距離が第1の距離より小さい場合、前記表示制御部は、前記第2のテキストと上下方向の位置を一致させて、前記第1のテキストを表示させる請求項1に記載の表示装置。
【請求項11】
前記変換部は、表示部に表示されている前記第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストと前記第1のテキストが接続されたテキストを1つのオブジェクトとして保存する請求項1に記載の表示装置。
【請求項12】
表示装置とサーバー装置とがネットワークを介して通信できる表示システムであって、
手書きの入力を受け付ける入力受付部と、
前記手書きを第1のテキストに変換する変換部と、
前記表示装置に表示されている第2のテキストと前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストの末尾と前記第1のテキストの先頭との間に間隔を空けた前記第1のテキストの表示位置を決定する空白挿入制御部と、
前記第1のテキストを前記表示位置に表示させる表示制御部と、
を有する表示システム。
【請求項13】
手書きの入力を受け付ける入力受付部と、
前記手書きをサーバー装置に送信する第1通信部と、を有する表示装置とネットワークを介して通信できるサーバー装置であって、
前記表示装置から受信した前記手書きを第1のテキストに変換する変換部と、
前記表示装置に表示されている第2のテキストと前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストの末尾と前記第1のテキストの先頭との間に間隔を空けた前記第1のテキストの表示位置を決定する空白挿入制御部と、
前記第1のテキスト及び前記第1のテキストの表示位置を前記表示装置に送信する第2通信部と、を有するサーバー装置。
【請求項14】
入力受付部が、手書きの入力を受け付ける処理と、
変換部が、前記入力受付部が受け付けた手書きを第1のテキストに変換する処理と、
表示制御部が、表示部に表示されている第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストの末尾と前記第1のテキストの先頭との間に間隔を空けて前記第1のテキストを表示させる処理と、
を実行する表示方法。
【請求項15】
情報処理装置を、
手書きの入力を受け付ける入力受付部と、
前記入力受付部が受け付けた手書きを第1のテキストに変換する変換部と、
表示部に表示されている第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストの末尾と前記第1のテキストの先頭との間に間隔を空けて前記第1のテキストを表示させる表示制御部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示装置、表示システム、サーバー装置、表示方法、及びプログラムに関する。
【背景技術】
【0002】
手書き認識技術を利用し、手書きデータを文字などのテキストに変換して、ディスプレーに表示する表示装置が知られている。比較的大型のタッチパネルを備えた表示装置は会議室や公共施設などに配置され、複数のユーザーにより電子黒板などとして利用される。
【0003】
テキストを手書き入力する場合に、手書き入力された内容を変換したテキストを少ない操作で柔軟に整列可能な技術が知られている(例えば、特許文献1参照。)。特許文献1には、新たに認識されたテキストの入力位置と直前回に入力されたテキストの入力位置の高さ方向又は水平方向の差分が第1の閾値以内の場合、新たに認識されたテキストの入力位置を直前回に入力されたテキストの入力位置を基準に整列させると共に、新たに認識されたテキストのフォントサイズを直前回に入力されたテキストのフォントサイズに一致させる技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、手書き入力された内容を変換したテキスト(第1のテキスト)と既に手書き入力されて変換して表示されている既存のテキスト(第2のテキスト)との間隔が、ユーザーが意図しないものになる場合があった。例えば、「犬 猿」という第2のテキストがある状態で、ユーザーが第2のテキストと所定の間隔を開けて「キジ」のテキストを表示させたい場合がある。この場合に、「犬 猿」に続けて所定間隔を開けて「キジ」を手書きした場合に、「犬 猿キジ」のように、第2のテキストの直後に第1のテキストが表示される場合があり、ユーザーが望む内容で表示されない場合があった。
【0005】
本発明は、上記課題に鑑み、既存の第2のテキストと、第2のテキストとは異なる第1のテキストとの間隔の表示を制御する表示装置を提供する。
【課題を解決するための手段】
【0006】
上記課題に鑑み、本発明は、手書きの入力を受け付ける入力受付部と、前記入力受付部が受け付けた手書きを第1のテキストに変換する変換部と、表示部に表示されている第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストの末尾と前記第1のテキストの先頭との間に間隔を空けて前記第1のテキストを表示させる表示制御部と、を有することを特徴とする表示装置を提供する。
【発明の効果】
【0007】
既存の第2のテキストと、第2のテキストとは異なる第1のテキストとの間隔の表示を制御する表示装置を提供できる。
【図面の簡単な説明】
【0008】
図1】既存のテキストと入力中テキストとの間に空白を挿入するか否かの制御例を説明する図である。
図2】表示装置の配置例を示した図である。
図3】表示装置のハードウェア構成図の一例である。
図4】表示装置が有する機能をブロック状に分けて説明する機能ブロック図の一例である。
図5】オブジェクトデータ記憶部に記憶されるオブジェクトデータを説明する図である。
図6】自動調整用認識エリアとスペース入力用エリアを説明する図である。
図7】既存のテキストと入力中テキストの間に空白を挿入させない場合の既存のテキストと入力中テキストを示す図の一例である。
図8】既存のテキストと入力中テキストの間に空白を挿入させる場合の既存のテキストと入力中テキストを示す図の一例である。
図9】既存のテキストと入力中テキストの間に1つの空白を挿入させる場合の既存のテキストと入力中テキストを示す図の一例である。
図10】既存のテキストと入力中テキストの間に2つの空白を挿入させる場合の既存のテキストと入力中テキストを示す図の一例である。
図11】既存のテキストの末尾に空白が存在する場合の空白の挿入制御を説明する図である。
図12】表示制御部が既存のテキストと入力中テキストとの間に空白を挿入するか否かを判断する処理を説明するフローチャート図の一例である。
図13】表示制御部が既存のテキストと入力中テキストとの間に複数の空白を挿入するか否かを判断する処理を説明するフローチャート図の一例である。
図14】表示制御部が既存のテキストの末尾に空白がある場合に、空白を挿入するか否かを判断する処理を説明するフローチャート図の一例である。
図15】縦書きの場合に自動調整用認識エリアとスペース入力用エリアに基づいて、既存のテキストと入力中テキストとの間に挿入される空白について説明する図である。
図16】並列に表示された既存のテキストと入力中テキストを示す図である。
図17】ペンアップから所定時間が経過していない場合の同一認識グループを示す図の一例である。
図18】ペンアップから所定時間が経過した場合の同一認識グループを示す図の一例である。
図19】ストロークデータが同一認識グループとならない条件を説明する図である。
図20】認識グループ判断部が同一認識グループのストロークデータを決定する手順を説明するフローチャート図の一例である。
図21図20のステップS21、S23、S27で説明した、ストロークデータが同一認識グループとならない条件を満たすか否かを判断するフローチャート図の一例である。
図22】表示装置が有する機能をブロック状に分けて説明する機能ブロック図の一例である。
図23】(a)は設定情報の一例を示す図であり、(b)は、ユーザー別オフセット情報の一例を示す図である。
図24】変更部35がα/β/γの設定値を変更する処理を説明するフローチャート図の一例である。
図25】表示システムの概略構成図の一例である。
図26】表示システムの機能ブロック図の一例である。
図27】表示システムが既存のテキストと入力中テキストとの間に空白を挿入する処理を説明するシーケンス図の一例である。
【発明を実施するための形態】
【0009】
以下、本発明を実施するための形態の一例として表示装置と、表示装置が行う表示方法について図面を参照しながら説明する。
【0010】
<テキストの結合の概略>
表示装置にユーザーが手書きした場合、文字認識されたテキストは、手書きした位置に表示される。しかし、既存のテキストがすでに表示されている場合に、ユーザーが既存のテキストに別のテキスト(以下、入力中テキストという)を続けて表示させたい場合がある。一方、ユーザーとしては、既存のテキストの末尾から間隔を空けて入力中テキストを続けて表示させたい場合もある。
【0011】
そこで、本実施形態の表示装置は、既存のテキストと手書き入力している入力中テキストとの最短距離に応じて空白を挿入するか否か制御する。
【0012】
図1は、既存のテキスト301と入力中テキスト303との間に空白を挿入するか否かの制御例を説明する図である。図1(a)では、既存のテキスト301が「本日は」である。ユーザーは既存のテキスト301に続けて「晴れ」を入力したい。この場合、ユーザーは既存のテキスト301の近傍に「晴れ」という手書きデータ302を手書きする。表示装置は、図1(b)に示すように、「本日は」の後に空白を挿入せずに「晴れ」という入力中テキスト303を表示する。
【0013】
また、図1(c)では、既存のテキスト311が「犬 猿」である。ユーザーは既存のテキスト311の後に空白を挿入してから「キジ」を入力したい。この場合、ユーザーは既存のテキスト311から離して「キジ」という手書きデータ312を手書きする。表示装置は、図1(d)に示すように、「犬 猿」の後に空白314を挿入して「キジ」という入力中テキスト313を表示する。
【0014】
表示装置は、このような空白314の挿入制御のため、自動調整用認識エリア110とスペース入力用エリア120とを使用する。自動調整用認識エリア110は手書きデータの外接矩形から上下左右にオフセットα(オフセットα、βは距離である)だけ離れたエリアである(横書きの場合、手書きデータ302の左側のαが使用される)。スペース入力用エリア120は、手書きデータの外接矩形から左右にオフセットβ(<α)、上下にオフセットαだけ離れたエリアである(横書きの場合、手書きデータ302の左側のβが使用される)。
【0015】
表示装置は以下のように空白を挿入するか否か制御する。
・既存のテキスト301がスペース入力用エリア120と重複している
→ 表示装置は空白を挿入しない。
・既存のテキスト301が自動調整用認識エリア110と重複し、スペース入力用エリア120と重複していない
→ 表示装置は空白を挿入する。
【0016】
このように、本実施形態の表示装置は、既存のテキスト301に対しユーザーが手書きした位置に応じて、既存のテキスト301と入力中テキスト303との間に空白を挿入するか否か、すなわち間隔の表示を制御できる。
【0017】
<用語について>
入力手段とはタッチパネルに座標を指定して手書きが可能な手段であればよい。例えば、ペン、人の指や手、棒状部材などがある。
ユーザーがディスプレーに入力手段を押しつけて(この操作をペンダウンという)から連続的に移動させた後、ディスプレーから離す(この操作をペンアップという)という一連の操作をストロークという。ストロークは、ディスプレーに接触することなく、ユーザーの動きを追跡することを含む。この場合、表示装置は、例えばマウスやポインティングデバイスを使用して、ユーザーのジェスチャー、ユーザーの手若しくは足によるボタンの押下、又は他の方法で、ストロークを開始させてもよい。更に、ユーザーは、同じ又は異なるジェスチャー、ボタンを離す、又はマウスやポインティングデバイスを使用して、ストロークを終了させてもよい。
【0018】
ストロークデータとは、入力手段により入力される座標の軌跡に基づいてディスプレーに表示される情報である。ストロークデータは適宜、補間されてよい。手書きデータとは、1つ以上のストロークデータを有するデータである。手書き入力とは、ユーザーによって、手書きデータが入力されることを示している。手書き入力は、タッチインターフェース、ペンやスタイラスなどの触覚オブジェクト、又はユーザーの体を使って実行されてもよい。また、手書き入力は、ジェスチャーベースの入力、手の動きの追跡入力、又はユーザーによる他のタッチフリー入力など、他のタイプの入力を介して実行されてもよい。本発明の実施形態では、手書き入力及び手書き入力データに言及するが、他の形態の手書き入力が利用されてもよい。
【0019】
ストロークデータに基づいてディスプレーに表示される表示物をオブジェクトという。オブジェクトとは対象という意味であるが、本実施形態では表示対象などの意味である。ストロークデータが書き認識して変換されたオブジェクトには、文字列の他、「済」などの決まった文字やマークとして表示されるスタンプ、円や星などの図形、直線等も含まれてよい。
【0020】
第1のテキストとは、ユーザーが現在手書き入力した手書きデータから変換されたテキストである。本実施形態では、第1のテキストは、入力中テキストという用語で説明される。ただし、第1のテキストは入力済みであってもよく、ユーザーが移動させたテキストも含まれる。第2のテキストとはディスプレーにすでに表示されているテキストである。本実施形態では、第2のテキストは、既存のテキストという用語で説明される。
【0021】
所定範囲とは、ユーザーが既存のテキストの末尾に対し間隔を空けて入力中テキストを表示させるために空けたと推定される、既存のテキストと手書きデータの距離の範囲である。所定範囲は、入力中テキストを起点に第1の距離(後述するα)より小さく第2の距離(後述するβ)より大きい範囲である。なお、所定範囲とは、既存のテキストと手書きデータの距離の範囲であるものの、様々な距離を対象として良い。例えば、既存のテキストの末尾の文字と、手書きデータとの距離が最も小さい(短い)距離を対象としてもよい。
【0022】
間隔とは、文字列の通常の文字間隔よりも距離を空けることをいう。間隔は文字コードとしての空白でもよいし、単なる間隔でもよい。間隔は文字サイズの整数分でなくてよい。しかし、間隔を文字コードとしての空白とすることで、文字サイズに応じて決まった間隔を空けることができる。
【0023】
既存のテキストと入力中テキストの結合とは、既存のテキストのフォント情報と座標を使用して入力中テキストを表示する(整列させる)ことをいう。間隔を空けるか否か問わない。
【0024】
ペンアップとは、タッチパネルからペンが離れることである。ペンダウンとはタッチパネルにペンが接触することである。ユーザーがペンダウンして連続的に移動させた後、ペンアップするまでが1ストロークである。手書きを終えるとは、ペンアップから所定時間が経過することをいう。
【0025】
[第1実施形態]
図2を用いて、本実施形態に係る表示装置2の全体構成を説明する。図2は、表示装置2の配置例を示した図である。図2(a)は、表示装置2の一例として、壁につり下げられた横長の電子黒板として使用される表示装置2を示している。
【0026】
図2(a)に示されているように、表示装置2の上部には表示装置2の一例としてのディスプレー220が設置されている。ユーザーUは、ペン2500を用いて、ディスプレー220に文字等を手書きすることができる。
【0027】
図2(b)は壁につり下げられた縦長の電子黒板として使用される表示装置2を示している。
【0028】
図2(c)は机230に平置きされた表示装置2を示す。表示装置2は厚みが1cm程度なので、一般の机に平置きしても机の高さを調整する必要がない。また、ユーザーは表示装置2を容易に移動できる。
【0029】
なお、ペン2500の座標の入力方式には、電磁誘導方式、アクティブ静電結合方式などがある。また、ペン2500は、筆圧検知、傾き検知、ホバー機能(ペンが触れる前にカーソルを表示)、などの機能を有していてよい。
【0030】
<装置のハードウェア構成>
続いて、図3を用いて、表示装置2のハードウェア構成を説明する。表示装置2は図示するように情報処理装置又はコンピュータの構成を有している。図3は、表示装置2のハードウェア構成図の一例である。図3に示されているように、表示装置2は、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、及び、SSD(Solid State Drive)204を備えている。
【0031】
これらのうち、CPU201は、表示装置2全体の動作を制御する。ROM202は、CPU201やIPL(Initial Program Loader)等のCPU201の駆動に用いられるプログラムを記憶する。RAM203は、CPU201のワークエリアとして使用される。
【0032】
SSD204は、OSや表示装置2用のプログラム等の各種データを記憶する。このプログラムは汎用的なOS(Windows(登録商標)、Mac OS(登録商標)、Android(登録商標)、iOS(登録商標)等)を搭載した情報処理装置で動作するアプリケーションプログラムでもよい。この場合、普段は汎用的な情報処理装置として利用されるが、ユーザーがアプリケーションプログラムを実行すると、表示装置2の専用機と同様、ユーザーが手書きすることができる。
【0033】
また、表示装置2は、ディスプレーコントローラー213、タッチセンサーコントローラー215、タッチセンサー216、ディスプレー220、電源スイッチ227、チルトセンサー217、シリアルインタフェース218、スピーカー219、マイク221、無線通信装置222、赤外線I/F223、電源制御回路224、ACアダプター225、及びバッテリー226を備えている。
【0034】
ディスプレーコントローラー213は、出力画像をディスプレー220等へ出力するために画面表示の制御及び管理を行う。タッチセンサー216は、ディスプレー220上にペン2500やユーザーの手等(ペンやユーザーの手は入力手段となる)が接触したことを検知する。また、タッチセンサー216はペンIDを受信する。
【0035】
タッチセンサーコントローラー215は、タッチセンサー216の処理を制御する。タッチセンサー216は、座標の入力及び座標の検出を行う。この座標の入力及び座標の検出する方法について説明する。例えば、光学式の場合、ディスプレー220の上側両端部に設置された2つ受発光装置が、ディスプレー220に平行して複数の赤外線を放射する。2つ受発光装置は、ディスプレー220の周囲に設けられた反射部材によって反射されて、受光素子が放射した光の光路と同一の光路上を戻って来る光を受光する。
【0036】
タッチセンサー216は、物体によって遮断された2つの受発光装置が放射した赤外線の位置情報をタッチセンサーコントローラー215に出力し、タッチセンサーコントローラー215が、物体の接触位置である座標位置を特定する。また、タッチセンサーコントローラー215は通信ユニット215aを有しており、ペン2500と無線で通信することができる。例えば、Bluetooth(登録商標)などの規格で通信している場合は、市販されているペンを使用することができる。通信ユニット215aに予め1つ以上のペン2500を登録しておくと、ユーザーはペン2500を表示装置2と通信させる接続設定を行わなくても通信できる。
【0037】
電源スイッチ227は、表示装置2の電源のON/OFFを切り換えるためのスイッチである。チルトセンサー217は、表示装置2の傾き角度を検出するセンサーである。主に、表示装置2が図2(a)、図2(b)、又は、図2(c)のいずれかの設置状態で使用されているかを検出するために使用され、設置状態に応じて文字等の太さを自動で変更することができる。
【0038】
シリアルインタフェース218はUSBなどの外部との通信インタフェースである。シリアルインタフェース218は、外部からの情報の入力などに使用される。スピーカー219は音声の出力に使用され、マイク221は音声の入力に使用される。無線通信装置222は、ユーザーが携帯する端末と通信し、例えばインターネットへの接続を中継する。無線通信装置222はWi-FiやBluetooth(登録商標)などで通信するが、通信規格は問われない。無線通信装置222はアクセスポイントを形成しており、ユーザーが入手したSSID(Service Set Identifier)とパスワードをユーザーが携帯する端末に設定すると、アクセスポイントに接続できる。
【0039】
なお、無線通信装置222には2つのアクセスポイントが用意されているとよい。
a. アクセスポイント→インターネット
b. アクセスポイント→社内ネットワーク→インターネット
aのアクセスポイントは社外のユーザー用で、ユーザーは社内ネットワークにはアクセスできないが、インターネットを利用できる。bのアクセスポイントは社内のユーザー用で、ユーザーは社内ネットワーク及びインターネットを利用できる。
【0040】
赤外線I/F223は隣に配置された表示装置2を検出する。赤外線I/F223は、赤外線の直進性を利用して、隣に配置された表示装置2のみを検出できる。赤外線I/F223は各辺に1つずつ設けられることが好ましく、表示装置2のどの方向に他の表示装置2が配置されたのかを検出できる。これにより画面が広がり、隣の表示装置2に過去に手書きされた手書き情報(1つのディスプレー220の広さを1ページとして別のページの手書き情報)等を表示できる。
【0041】
電源制御回路224は表示装置2の電源であるACアダプター225とバッテリー226を制御する。ACアダプター225は商用電源が共有する交流を直流に変換する。
【0042】
ディスプレー220がいわゆる電子ペーパーの場合、画像の表示を維持するためにほとんど又は一切電力を消費しないので、バッテリー226による駆動も可能である。これにより、屋外など電源を接続しにくい場所でもデジタルサイネージなどの用途で表示装置2を使用することが可能になる。
【0043】
更に、表示装置2は、バスライン210を備えている。バスライン210は、図3に示されているCPU201等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
【0044】
なお、タッチセンサー216は、光学式に限らず、静電容量の変化を検知することにより接触位置を特定する静電容量方式のタッチパネルでもよい。タッチセンサー216は、対向する2つの抵抗膜の電圧変化によって接触位置を特定する抵抗膜方式のタッチパネルでもよい。タッチセンサー216は、接触物体が表示部に接触することによって生じる電磁誘導を検知して接触位置を特定する電磁誘導方式のタッチパネルでもよく、種々の検出手段を用いてもよい。タッチセンサー216は、ペン先のタッチの有無を検知するのに電子ペンが必要ない方式であってよい。この場合はタッチ操作をするのに指先やペン型の棒を使用できる。なお、ペン2500は、細長いペン型である必要はない。
【0045】
<機能について>
次に、図4を用いて表示装置2の機能について説明する。図4は、表示装置2が有する機能をブロック状に分けて説明する機能ブロック図の一例である。表示装置2は、入力受付部21、描画データ生成部22、変換部23、表示制御部24、データ記録部25、ネットワーク通信部26、操作受付部27、空白挿入制御部28、判断部29、認識グループ判断部30、領域変更部31、及び除外部32を有している。表示装置2が有する各機能は、図3に示されている各構成要素のいずれかが、SSD204からRAM203上に展開されたプログラムに従ったCPU201からの命令によって動作することで実現される機能又は手段である。
【0046】
入力受付部21はタッチセンサー216に対しペン2500等の入力手段が接触した位置の座標を検出することで、座標の軌跡(座標点列、手書きされたデータ)の入力を受け付ける。描画データ生成部22はペン2500のペン先が接触した座標を入力受付部21から取得する。描画データ生成部22は、この座標点列を補間することで接続してストロークデータを生成する。
【0047】
変換部23はユーザーが手書きした同一認識グループのストロークデータ(手書きデータ)に対し文字認識処理を行い、テキスト(文字コード)に変換する。同一認識グループについて詳細は後述するが、同一認識グループとは、まとめて文字認識される複数のストロークをいう。同一認識グループは、ペンアップから次のペンダウンまで所定時間Tが経過していない複数のストローク、又は、所定時間Tが経過したが既存のストロークの近くに手書きされたストロークである。
【0048】
変換部23は、ユーザーのペン操作と並行して文字(日本語だけでなく英語などの多国語)、数字、記号(%、$、&など)、を認識して変換する。また、変換部23はユーザーが手書きした1つ以上のストロークデータ(手書きデータ)に対し図形認識処理を行い、図形(線、丸、三角など)に変換する。認識方法については様々なアルゴリズムが考案されているが、本実施形態では公知の技術を利用できるとして詳細を割愛する。
【0049】
表示制御部24は手書きデータ、手書きデータから変換されたテキスト、及び、ユーザーが操作するための操作メニューなどをディスプレー220に表示させる。データ記録部25は、表示装置2に手書きされた手書きデータ、変換されたテキスト、及び、PC(Personal Computer)の画面、ファイル等を記憶部40に記憶する。ネットワーク通信部26はLAN等のネットワークに接続して、他の機器とネットワークを介したデータの送受信を行う。
【0050】
操作受付部27は、ペン2500等が接触した座標に基づいて、文字認識された複数の変換候補から任意の文字の選択を受け付けたり、メニューの押下を受け付けたりする。
【0051】
判断部29は、既存のテキストと入力中テキストを結合する際に、既存のテキストと入力中テキストの間に、空白を挿入するか否か判断する。空白挿入制御部28は、判断部29により空白を挿入すると判断された場合、既存のテキストの末尾と入力中テキストの先頭の間に間隔を空ける。空白挿入制御部28は例えば空白文字を挿入する。
【0052】
認識グループ判断部30は、複数のストロークが同一認識グループに含まれるか否かを判断する。認識グループ判断部30は領域変更部31と除外部32を有している。
【0053】
領域変更部31は、ストロークデータが同一認識グループに含まれるか否かが判断される後述の追加認識矩形102を、入力手段がタッチパネルから離れてから所定時間Tが経過するか否かで変更する。
【0054】
除外部32は、入力受付部21が受け付けたストロークデータが所定の条件を満たす場合、追加認識矩形102に手書きされたストロークデータであっても、同一認識グループから除外する。
【0055】
また、表示装置2は、図3に示されているSSD204やRAM203などに構築される記憶部40を有し、記憶部40にはオブジェクトデータ記憶部41が構築されている。
【0056】
図5は、オブジェクトデータ記憶部41に記憶されるオブジェクトデータを説明する図である。
【0057】
・オブジェクトIDの項目は、表示データを識別する識別情報である。
【0058】
・種別の項目は、オブジェクトデータの種類であり、手書き、テキスト、図形、画像、表、等がある。手書きはストロークデータ(座標点列)である。テキストは手書きデータから変換された1つ以上の文字や記号等(文字コード)である。図形は、三角や四角など手書きデータから変換された幾何学的な形状である。画像は、PCやインターネットなどから取り込まれたJpeg、Png、Tiffなどの画像データである。表は、一次元又は二次元のテーブル状のオブジェクトである。
【0059】
・表示装置2の1画面をページと称する。ページの項目はそのページ番号である。
【0060】
・座標の項目は、表示装置2の所定の原点を基準とするオブジェクトデータの位置を示す。オブジェクトデータの位置は例えばオブジェクトデータの外接矩形の左上頂点である。座標は例えば、ディスプレーの画素単位で表される。
【0061】
・サイズの項目は、オブジェクトデータの外接矩形の幅と高さである。
【0062】
・フォント情報の項目は、テキストのフォントを示す。フォント情報は、例えば、書体、フォントサイズ、フォント色等である。
【0063】
<自動調整用認識エリア、スペース入力用エリア>
図6に基づいて、自動調整用認識エリア110とスペース入力用エリア120について説明する。図6は、自動調整用認識エリア110とスペース入力用エリア120を説明する図である。自動調整用認識エリア110とスペース入力用エリア120は空白を挿入するか否かの判断に使用される。表示装置は、後述する同一認識グループのストローク331の外接矩形306に対し「上下左右:α(オフセット)」を加算した矩形を自動調整用認識エリア110に設定する。なお、起点となる外接矩形306は入力中テキストの外接矩形でもよい。
【0064】
一例の値を用いて説明する。
オフセット固定値 α= 3 [cm]
同一認識グループのストローク331の幅 15 [cm]、高さ 3 [cm] の場合、
自動調整用認識エリア110の幅と高さは以下となる。
幅 :α + α + (ストローク331の幅) = 21 [cm]
高さ:α + α + (ストローク331の高さ) = 9 [cm]
なお、オフセット固定値は、ディスプレーのサイズ、画素数、使用用途によって変わる。例として、40inchディスプレー(画素数2880 x 2160)を数人で共有できる手書きサイズを想定した場合は上記のような値でよいが、この値は一例である。
【0065】
次に、スペース入力用エリア120について説明する。表示装置2は、同一認識グループのストローク331の外接矩形306に対し「上下:α(オフセット)」「左右:β(オフセット)」を加算した矩形をスペース入力用エリア120に設定する。
【0066】
一例の値を用いて説明する。
オフセット固定値 α= 3 [cm]、β=2[cm]
同一認識グループのストローク331の幅 15 [cm]、高さ 3 [cm] の場合、
スペース入力用エリア120の幅と高さは以下となる。
幅 :β+β + (ストローク331の幅) = 19 [cm]
高さ:α +α+ (ストローク331の高さ) = 9 [cm]
なお、αは例えば1文字分、βは例えば半文字分とすることが考えられる。判断部29は、例えば過去にユーザーが入力した複数の文字の文字サイズの平均からαとβを算出し、適宜、変更することが好ましい。過去とは例えば直近のN個(Nは自然数)の文字等である。また、表示装置2が、αとβをユーザーに対応付けて記憶しておいてもよい。また、ユーザーが所望のαとβを設定してもよい。
【0067】
<自動調整用認識エリアとスペース入力用エリアを用いた空白の挿入制御>
空白挿入制御部28は、以下の条件A1,A2が成立する場合、既存のテキストと入力中テキストを結合する際に、空白を挿入する。必ずしも文字コードとしての空白の挿入は必要ないが説明の便宜上、空白の挿入を例にする。
(A1) 既存のテキスト301が手書きデータ302の自動調整用認識エリア110と重なっていること(結合の条件)
(A2) 既存のテキスト301が手書きデータ302のスペース入力用エリア120と重なっていないこと
図7(a)は、既存のテキスト301と入力中テキスト303の間に空白を挿入させない場合の既存のテキストと入力中テキストを示す。すでに「本日は」という既存のテキスト301が表示されている状態で、ユーザーが「晴れ」という手書きデータ302を入力した。「晴れ」という手書きデータ302は同一認識グループに入るが、既存のテキスト301が変換済みなので、既存のテキスト301とまとめてテキストや図形などに変換されることはない。
【0068】
「晴れ」という手書きデータ302をユーザーが書き終えると操作ガイド340が表示される。操作ガイド340は、手書きデータが文字認識された結果として1つ以上の変換候補341を表示する。ユーザーが変換候補341の1つから「晴れ」を選択した。この「晴れ」が入力中テキスト303になる。ユーザーが入力中テキスト303を選択すると、判断部29は、条件(A1)(A2)を判断する。図7(a)に示すように、既存のテキスト301と手書きデータ302は条件(A1)を満たすが(A2)を満たさないので、空白挿入制御部28は、「本日は」という既存のテキスト301と「晴れ」という入力中テキスト303の間に空白を挿入しない。
【0069】
図7(b)は、結合された既存のテキスト301と入力中テキスト303とを示す。表示制御部24は、入力中テキスト303のフォントサイズを既存のテキスト301と一致させ、上下方向の位置を既存のテキストと一致させる。そして、空白挿入制御部28が空白を挿入しないので、表示制御部24は、既存のテキスト301の直後に入力中テキスト303を表示させる。
【0070】
仮に、既存のテキスト311と手書きデータ312が重なっていた場合、条件(A1)を満たすが(A2)を満たさないので、表示制御部24は、既存のテキスト301の直後に入力中テキスト303を表示させる。ただし、このような場合、ユーザーが予め設定しておくことで、表示制御部24が手書きデータ302の位置に入力中テキスト303を表示させ、既存のテキスト301と入力中テキスト303を重ねて表示してもよい。
【0071】
図8(a)は、既存のテキスト311と入力中テキスト313の間に空白を挿入させる場合の既存のテキスト311と入力中テキスト313を示す。すでに「犬 猿」という既存のテキスト311が表示されている状態で、ユーザーが「キジ」という手書きデータを入力した。「キジ」という手書きデータは同一認識グループに入るが、既存のテキスト311が変換済みなので、まとめてテキストや図形などに変換されることはない。
【0072】
「キジ」という手書きデータ312をユーザーが書き終えると操作ガイドが表示されてよいが図8(a)では省略した。ユーザーが変換候補の1つから「キジ」を選択した。この「キジ」が入力中テキスト313になる。ユーザーが変換候補(入力中テキスト313)を選択すると、判断部29は、条件(A1)(A2)を判断する。図8(a)に示すように、既存のテキスト311と手書きデータ312は条件(A1)(A2)を満たすので、空白挿入制御部28は、「犬 猿」という既存のテキスト311と「キジ」という入力中テキスト313の間に空白を挿入する。
【0073】
図8(b)は、結合された既存のテキスト311と入力中テキスト313とを示す。表示制御部24は、入力中テキスト313のフォントサイズを既存のテキスト311と一致させ、上下方向の位置を既存のテキスト311と一致させる。そして、空白挿入制御部28が空白を挿入したので、表示制御部24は、既存のテキスト311の末尾の空白に続け、入力中テキスト313を表示させる。
【0074】
なお、入力中テキストが表示された後、図7,図8いずれの場合も、既存のテキストと入力中テキストは、独立した状態である。つまり、オブジェクトデータ記憶部41のオブジェクトIDは元のままでよい。こうすることで、ユーザーは既存のテキストと入力中テキストを別々に扱うことができる。
【0075】
一方、変換部23が、既存のテキストと入力中テキストを1つのテキストに統合してもよい。この場合、オブジェクトデータ記憶部41において既存のテキストと入力中テキストのエントリーが削除され、新しいオブジェクトIDに対応付けて接続されたテキストが登録される。2つのテキストが1つになるので、ユーザーは消しゴムツールでテキストを消去する際に一度の操作で統合されたテキストを消去できる。また、フォント情報の変更なども1テキスト分の操作でよい。
【0076】
<<複数の空白の入力制御>>
図9に示すように、空白挿入制御部28は、二種類のスペース入力用エリア120を用意することで、挿入する空白の個数(0、1,2)を制御できる。図9は、挿入される空白の個数の制御を説明する図である。図9に示すように、空白挿入制御部28は、スペース入力用エリア120Aとスペース入力用エリア120Bを使用する。スペース入力用エリア120Aは、手書きデータ312の外接矩形に対し「上下:α(オフセット)」「左右:β(オフセット)を加算した矩形である。スペース入力用エリア120Bは、手書きデータ312の外接矩形に対し「上下:α(オフセット)」「左右:γ(オフセット)を加算した矩形である。β>γなので、スペース入力用エリア120Aの幅はスペース入力用エリア120Bの幅より大きい。
【0077】
判断部29は、以下の条件に基づいて、既存のテキストと入力中テキスト313を結合する際に、挿入する空白の数を判断する。
(B1) 既存のテキスト311が手書きデータ312の自動調整用認識エリア110と重なっていること
この(B1)の条件については空白の数に関係なく共通である(結合の条件)。
・2個の場合
(B1_1) 既存のテキスト311が手書きデータ312のスペース入力用エリア120Aと重なっていないこと
・1個の場合
(B1_2) 既存のテキスト311が手書きデータ312のスペース入力用エリア120Aと重なりスペース入力用エリア120Bと重なっていないこと
・0個の場合
(B1_3) 既存のテキスト311が手書きデータ312のスペース入力用エリア120Bと重なっていること
図9(a)は、既存のテキスト311と入力中テキスト313の間に1つの空白を挿入させる場合の既存のテキスト311と入力中テキスト313を示す。すでに「犬 猿」という既存のテキスト311が表示されている状態で、ユーザーが「キジ」という手書きデータ312を入力した。「キジ」という手書きデータ312は同一認識グループに入るが、既存のテキスト311が変換済みなので、既存のテキスト311と手書きデータ312がまとめてテキストや図形などに変換されることはない。
【0078】
「キジ」という手書きデータ312をユーザーが書き終えると操作ガイドが表示されてよいが図9(a)では省略した。ユーザーが変換候補の1つから「キジ」を選択した。この「キジ」が入力中テキスト313になる。ユーザーが変換候補(入力中テキスト313)を選択すると、判断部29は、条件(B1)(B1_1)(B1_2)(B1_3)を判断する。図9(a)に示すように、既存のテキスト311と手書きデータ312は条件(B1)(B1_2)を満たすので、空白挿入制御部28は、「犬 猿」という既存のテキストと「キジ」という入力中テキスト313の間に1つの空白(半角空白)を挿入する。
【0079】
図9(b)は、結合された既存のテキスト311と入力中テキスト313とを示す。表示制御部24は、入力中テキスト313のフォントサイズを既存のテキスト311と一致させ、上下方向の位置を既存のテキスト311と一致させる。そして、空白挿入制御部28が1つの空白351を挿入したので、表示制御部24は、既存のテキスト311の後に挿入された1つの空白351に続けて入力中テキスト313を表示させる。
【0080】
図10(a)は、既存のテキスト311と入力中テキスト313の間に2つの空白を挿入させる場合の既存のテキスト311と入力中テキスト313を示す。ユーザーが変換候補(入力中テキスト313)を選択すると、判断部29は、条件(B1)(B1_1)(B1_2)(B1_3)を判断する。図10(a)に示すように、既存のテキスト311と手書きデータ312は条件(B1)(B1_1)を満たすので、空白挿入制御部28は、「犬 猿」という既存のテキスト311と「キジ」という入力中テキスト313の間に2つの半角空白(1つの全角空白)を挿入する。
【0081】
図10(b)は、結合された既存のテキスト311と入力中テキスト313とを示す。表示制御部24は、入力中テキスト313のフォントサイズを既存のテキスト311と一致させ、上下方向の位置を既存のテキスト311と一致させる。そして、空白挿入制御部28が2つの空白351,352を挿入したので、表示制御部24は、既存のテキスト311の後に挿入された2つの空白351,352に続けて入力中テキスト313を表示させる。
【0082】
なお、図9図10の説明では複数の半角空白が挿入されているが複数の全角の空白が挿入されてもよい。
【0083】
<<既存のテキストの末尾に空白が存在する場合>>
既存のテキスト311の末尾にすでに空白が存在している場合がある。例えば、ユーザーが空白を意識的に追加しておく場合もあるし、自動的に追加する設定の場合もある。既存のテキスト311の末尾にすでに空白が存在している場合、更に空白を挿入する必要性は低い。そこで、判断部29は、空白条件(A1)(A2)を満たしても、又は、条件(B1)と(B1_1)若しくは(B1_2)を満たしても、空白を挿入しないと判断する。
【0084】
図11は、既存のテキスト311の末尾に空白が存在する場合の空白の挿入制御を説明する図である。図11の説明では主に図8との相違を説明する。
【0085】
「キジ」という手書きデータ312をユーザーが書き終えると操作ガイドが表示されてよいが図11(a)では省略した。ユーザーが変換候補の1つから「キジ」を選択した。この「キジ」が入力中テキストになる。ユーザーが変換候補(入力中テキスト313)を選択すると、判断部29は、条件(A1)(A2)を判断する。図11(a)に示すように、既存のテキスト311と手書きデータ312は条件(A1)(A2)を満たすが、既存のテキスト311の末尾に空白381が存在するので、判断部29は、「犬 猿」という既存のテキスト311と「キジ」という入力中テキスト313の間に空白を挿入しないと判断する。
【0086】
図11(b)は、結合された既存のテキスト311と入力中テキスト313とを示す。表示制御部24は、入力中テキスト313のフォントサイズを既存のテキスト311と一致させ、上下方向の位置を既存のテキスト311と一致させる。そして、空白挿入制御部28が空白を挿入していないので、表示制御部24は、既存のテキスト311の後に空白を挿入せずに入力中テキスト313を表示させる。このように、既存のテキスト311の末尾にすでに空白が存在している場合、意図しない間隔が空いてしまうことを抑制できる。
【0087】
なお、既存のテキスト311がスペース入力用エリア120と重なっている場合(既存のテキスト311と手書きデータ312との距離がβ未満)、入力中テキスト313は、既存のテキスト311の空白でない最後の文字に続けて表示される。すなわち、図11(b)の空白381が消去される。既存のテキスト311がスペース入力用エリア120と重なっている場合、1文字分(末尾の空白)を空けないでユーザーが手書きしたので、ユーザーが既存のテキスト311とスペース入力用エリア120との間に間隔を開けたくないと推定されるためである。したがって、既存のテキストの末尾の空白を詰めることが可能になる。例えばデータ記録部25は既存のテキスト311の空白(文字コード)を削除してもよいし、そのままでもよい。
【0088】
また、既存のテキスト311の末尾の空白を詰めないようにユーザーが設定してもよい。こうすることで、既存のテキストの末尾に意図的に追加されている空白が消去されない。この場合、結合された既存のテキスト311と入力中テキスト313は図11(b)と同様になる。
【0089】
<空白を挿入するか否かの処理を含むテキストの表示>
図12は、表示制御部24が既存のテキストと入力中テキストとの間に空白を挿入するか否かを判断する処理を説明するフローチャート図である。図12は、条件(A1)(A2)の判断を説明する。
【0090】
まず、ユーザーがストロークを手書きする(S101)。入力受付部21が座標の軌跡の入力を受け付ける。描画データ生成部22はペン2500のペン先が接触した座標を入力受付部21から取得する。描画データ生成部22は、この座標点列を補間することで接続してストロークデータを生成する。
【0091】
ユーザーが手書きを終了すると、変換部23は同一認識グループのストロークを文字認識し、表示制御部24が変換候補を表示させる(S102)。
【0092】
次に、ユーザーが任意の変換候補(入力中テキストに相当)を選択すると、操作受付部27が選択を受け付ける(S103)。
【0093】
空白挿入制御部28は、同一認識グループのストロークデータの座標に基づいて自動調整用認識エリア110とスペース入力用エリア120を決定する(S104)。
【0094】
判断部29は、ディスプレーに他のオブジェクトが存在するか否か判断する(S105)。この他のオブジェクトは、テキスト、数字、記号、スタンプなど、文字認識により文字コードで表されたオブジェクトである。文字コードで表されたオブジェクトは結合可能だからである。
【0095】
また、他のオブジェクトには手書きのまま確定した手書きデータは含まれなくてよい。これにより、ユーザーはディスプレーの任意の場所に手書きできる(手書きデータ同士が結合されると手書きデータの表示位置が手書きした位置と変わってしまう)。しかし、例えばユーザーの設定で、他のオブジェクトに、手書きのまま確定した手書きデータが含まれてもよい。ユーザーは手書きデータ同士の間隔をつめたり、空白を挿入したりでき、また、上下方向の位置を清書した状態で表示させることができる。
【0096】
ステップS105の判断がNoの場合、表示制御部24は、ストロークを消去し、ストロークが手書きされた場所に、ステップS103でユーザーが選択したテキストを表示させる(S111)。
【0097】
ステップS105の判断がYesの場合、判断部29は、ステップS104で決定した自動調整用認識エリア110と既存のテキストが重なるか判断する(S106)。すなわち、判断部29は、手書きデータの左端から既存のテキストの末尾までの距離がオフセットαより小さいか否か判断する。
【0098】
ステップS106の判断がNoの場合、表示制御部24は、ストロークを消去し、ストロークが手書きされた場所にテキストを表示させる(S111)。
【0099】
ステップS106の判断がYesの場合、空白挿入制御部28は、既存のテキストのフォント情報を取得し、入力中テキストを表示するための上下、左右の座標を決定する(S107)。表示制御部24が、既存のテキストと同じフォントで表示するためと、上下位置を揃え、及び、空白を挿入するためである。上下の座標はオブジェクトデータ記憶部41に保存されている。左右の座標は、既存のテキストの直後に入力中テキストを表示する第1のx座標と、既存のテキストの末尾に空白を挿入して入力中テキストを表示する第2のx座標の2つが用意される。第2のx座標は、既存のテキストの末尾のx座標に1文字分の幅を足した座標でよいが、1文字分未満や1文字分超でもよい。また、空白は整数分である必要はない。
【0100】
次に、判断部29は、ステップS104で決定したスペース入力用エリア120と既存のテキストが重なるか判断する(S108)。すなわち、判断部29は、手書きデータの左端から既存のテキストの末尾までの距離がオフセットβ以下か否か判断する(所定の範囲はα未満β超)。
【0101】
ステップS108の判断がYesの場合、表示制御部24は、既存のテキストと入力中テキストとの間に空白が挿入されない状態で入力中テキストを表示させる(S109)。この処理は、表示制御部24が既存のテキストの末尾に続けて、第1のx座標から入力中テキストを表示させればよい。
【0102】
ステップS108の判断がNoの場合、表示制御部24は、既存のテキストの末尾に挿入された空白の後である第2のx座標から入力中テキストを表示させる(S110)。ステップS106の判断がYesかつステップS108の判断がNoの場合、既存のテキストと入力中テキストとの距離が所定範囲に含まれる場合に対応する。この処理は、既存のテキストの末尾に空白挿入制御部28が空白を挿入し、表示制御部24が第2のx座標から入力中テキストを表示させればよい。なお、空白挿入制御部28は文字コードとしての空白を挿入することまでは必要なく、表示制御部24は第2のx座標から入力中テキストを表示させればよい。
【0103】
<<複数の空白を挿入するか否かの処理を含むテキストの表示>>
図13は、表示制御部24が既存のテキストと入力中テキストとの間に複数の空白を挿入するか否かを判断する処理を説明するフローチャート図である。図13は、条件(B1)(B1_1)(B1_2)(B1_3)の判断を説明する。なお、図13の説明では主に図12との相違を説明する。図13のステップS201~S206の処理は図12のステップS101~S106と同様でよい。ただし、ステップS204では、スペース入力用エリア120Aとスペース入力用エリア120Bが決定される。
【0104】
ステップS206の判断がYesの場合、空白挿入制御部28は、既存のテキストのフォント情報を取得し、入力中テキストを表示するための上下、左右の座標を決定する(S207)。表示制御部24が、既存のテキストと同じフォントで表示するためと、上下位置を揃え、及び、空白を挿入するためである。上下位置はオブジェクトデータ記憶部41に保存されている。左右の座標は、既存のテキストの直後に入力中テキストを表示する第1のx座標と、既存のテキストの末尾に1文字分の空白を挿入して入力中テキストを表示する第2のx座標と、既存のテキストの末尾に2文字分の空白を挿入して入力中テキストを表示する第3のx座標、の3つが用意される。
【0105】
次に、判断部29は、既存のテキストがステップS204で決定したスペース入力用エリア120Aと重なり、かつ、スペース入力用エリア120Bとも重なるかどうか判断する(S208)。この判断は、スペース入力用エリア120Bと重なるかどうかだけ判断されてもよい。
【0106】
ステップS208の判断がYesの場合、表示制御部24は、ステップS207で算出したフォント情報、上下の座標に、空白を挿入せず入力中テキストを表示させる(S209)。この処理は、表示制御部24が既存のテキストの末尾に続けて、第1のx座標から入力中テキストを表示させればよい。
【0107】
ステップS208の判断がNoの場合、判断部29は、既存のテキストがスペース入力用エリア120Aとだけ重なるかどうか判断する(S210)。
【0108】
ステップS210の判断がYesの場合、表示制御部24は、ステップS207で算出したフォント情報で、上下の座標に、空白が1つ挿入された位置から入力中テキストを表示させる(S211)。この処理は、既存のテキストの末尾に空白挿入制御部28が1つの空白を挿入し、表示制御部24が第2のx座標から入力中テキストを表示させればよい。なお、空白挿入制御部28は文字コードとしての空白を挿入することまでは必要なく、表示制御部24は第2のx座標から入力中テキストを表示させればよい。
【0109】
ステップS210の判断がNoの場合、表示制御部24は、ステップS207で算出したフォント情報で、上下の座標に、空白が2つ挿入された位置から入力中テキストを表示させる(S212)。この処理は、既存のテキストの末尾に空白挿入制御部28が2つの空白を挿入し、表示制御部24が第3のx座標から入力中テキストを表示させればよい。なお、空白挿入制御部28は文字コードとしての空白を挿入することまでは必要なく、表示制御部24は第3のx座標から入力中テキストを表示させればよい。
【0110】
<<既存のテキストの末尾に空白がある場合のテキストの表示>>
図14は、表示制御部24が既存のテキストの末尾に空白がある場合に、空白を挿入するか否かを判断する処理を説明するフローチャート図である。なお、図14の説明では主に図12との相違を説明する。図14のステップS301~S306の処理は図12のステップS101~S106と同様でよい。
【0111】
ステップS306の判断がYesの場合、判断部29は、既存のテキストの末尾に空白があるか否か判断する(S307)。空白には予め所定の文字コード(0x20)が割り当てられているので、判断部29はこの文字コードの有無を判断する。なお、既存のテキストの末尾に複数の空白があってもよい。
【0112】
ステップS307の判断がNoの場合、空白挿入制御部28は、既存のテキストのフォント情報を取得し、入力中テキストを表示するための上下、左右の座標を決定する(S308)。この処理は図12のステップS107と同様でよい。すなわち、左右の座標は、既存のテキストの直後に入力中テキストを表示する第1のx座標と、既存のテキストの末尾に空白を挿入して入力中テキストを表示する第2のx座標の2つが用意される
ステップS307の判断がYesの場合、空白挿入制御部28は、既存のテキストのフォント情報を取得し、入力中テキストを表示するための上下の座標を決定し、既存のテキストの末尾の空白を考慮して左右の座標を決定する(S309)。左右の座標は、既存のテキストの直後に入力中テキストを表示する第4のx座標と、既存のテキストが有する末尾の空白を除いて、空白でない文字の直後に入力中テキストを表示する第5のx座標の2つが用意される。
【0113】
第1のx座標と第2のx座標が使用された場合の表示制御(ステップS310~S312)は、図12のステップS108~S110と同様なので、第4のx座標と第5のx座標が使用された場合の表示制御(ステップS310~S312)について説明する。
【0114】
判断部29は、ステップS304で決定したスペース入力用エリア120と既存のテキストが重なるか判断する(S310)。
【0115】
ステップS310の判断がYesの場合、表示制御部24は、既存のテキストと入力中テキストとの間に空白が挿入されない状態で入力中テキストを表示させる(S311)。この処理は、表示制御部24が既存のテキストの末尾(空白でない文字)に続けて、第5のx座標から入力中テキストを表示させればよい。この場合、既存のテキストの末尾にあった全ての空白は消去される。
【0116】
ステップS310の判断がNoの場合、表示制御部24は、既存のテキストの末尾にある空白の後である第4のx座標から入力中テキストを表示させる(S312)。挿入される空白は、既存のテキストの末尾の空白が利用されるので、空白挿入制御部28は空白を挿入しない。表示制御部24は、既存のテキストの末尾(空白の文字)の直後に入力中テキストを表示させる。既存のテキストの末尾(空白の文字)に複数の空白がある場合、表示制御部24は空白を1文字だけ残してもよいし、全ての空白を残してもよい。
【0117】
<縦書きの場合>
本実施形態では、横書きの場合を例にして説明したが、ユーザーが縦書きした場合も同様に適用できる。
【0118】
図15は、縦書きの場合に自動調整用認識エリア110とスペース入力用エリア120に基づいて、既存のテキスト361と入力中テキスト363との間に挿入される空白364について説明する図である。表示装置2は、同一認識グループのストローク362の外接矩形に対し「上下左右:α(オフセット)」を加算した矩形を自動調整用認識エリア110に設定する。
【0119】
一例の値を用いて説明する。
オフセット固定値 α= 3 [cm]
同一認識グループのストローク362の幅3 [cm]、高さ 15 [cm] の場合、
自動調整用認識エリア110は以下となる。
幅 :α + α + (ストローク362の幅) = 9 [cm]
高さ:α + α + (ストローク362の高さ) = 21 [cm]
スペース入力用エリア120について説明する。表示装置2は、同一認識グループのストローク362の外接矩形に対し「左右:α(オフセット)」「上下:β(オフセット)」を加算した矩形をスペース入力用エリア120に設定する。
【0120】
一例の値を用いて説明する。
オフセット固定値 α= 3 [cm]、β=2[cm]
同一認識グループのストローク362の幅 15 [cm]、高さ 3 [cm] の場合、
スペース入力用エリア120は以下となる。
幅 :α+α + (ストローク362の幅) = 9 [cm]
高さ:β +β+ (ストローク362の高さ) = 19 [cm]
自動調整用認識エリア110とスペース入力用エリア120を用いた空白の挿入制御についても横書きの場合と同様でよい。空白挿入制御部28は、以下の条件が成立する場合に、既存のテキストと入力中テキストを結合する際に空白を挿入する(必ずしも文字コードとしての空白の挿入は必要ない)。
(A1) 既存のテキストが同一認識グループのストローク362の自動調整用認識エリア110と重なっていること
(A2) 既存のテキストが同一認識グループのストローク362のスペース入力用エリア120と重なっていないこと
図15(a)は、既存のテキスト361と入力中テキスト363の間に空白364を挿入させる場合の既存のテキストと入力中テキストを示す。すでに「犬 猿」という既存のテキスト361が表示されている状態で、ユーザーが「キジ」という手書きデータを入力した。
【0121】
「キジ」という手書きデータをユーザーが書き終えると操作ガイド340が表示されるが図8(a)では省略した。ユーザーが変換候補341の1つから「キジ」を選択した。この「キジ」が入力中テキスト363になる。ユーザーが入力中テキスト363を選択すると、判断部29は、条件(A1)(A2)を判断する。図15(a)に示すように、既存のテキスト361と入力中テキスト363は条件(A1)(A2)を満たすので、空白挿入制御部28は、「犬 猿」という既存のテキスト361と「キジ」という入力中テキスト363の間に空白を挿入する。
【0122】
図15(b)は、結合された既存のテキスト361と入力中テキスト363とを示す。表示制御部24は、入力中テキスト363のフォントサイズを既存のテキストと一致させ、左右方向の位置を既存のテキスト361と一致させる。そして、空白挿入制御部28が空白を挿入したので、表示制御部24は、既存のテキスト361の後に挿入された空白に続けて入力中テキスト363を表示させる。
【0123】
<既存のテキストと入力中テキストの並列表示>
図16は、並列に表示された既存のテキスト371と入力中テキスト373を示す図である。自動調整用認識エリア110のうち左側のオフセットαは、空白の挿入制御に使用された。自動調整用認識エリア110のうち上側のオフセットαは、表示制御部24が、行頭を揃えて既存のテキスト371と入力中テキスト373を並列表示させるか否かの判断に使用される。
【0124】
図16(a)では、自動調整用認識エリア110のうち上側(オフセットα以下)に既存のテキスト371が重なっている。判断部29は既存のテキスト371の上方において既存のテキスト371との距離がオフセットα以下の場合、既存のテキスト371と行頭を揃えて入力中テキスト373を並列表示させると判断する。
【0125】
図16(b)は、行頭を揃えて並列表示された既存のテキスト371と入力中テキスト373を示す。こうすることで、既存のテキスト371と入力中テキスト373の行頭が揃うので、見やすくなる。
【0126】
図16(c)では、自動調整用認識エリア110のうち上側(オフセットα以下)に既存のテキスト371が重なっていない。判断部29は既存のテキスト371の上方において既存のテキスト371との距離がオフセットα以上の場合、既存のテキスト371と行頭を揃えて入力中テキスト373を並列表示させないと判断する。
【0127】
図16(d)は、手書きされた位置に表示された入力中テキスト373を示す。入力中テキスト373が手書きデータと同じ位置に表示されている。こうすることで、ユーザーは任意の位置に入力中テキスト373を入力できる。
【0128】
<同一認識グループの判断>
次に、図17図21を参照して、同一認識グループの判断方法を説明する。本実施形態では、オフセットα、βの設定のために同一認識グループのストロークデータが特定される。
【0129】
領域変更部31は、ストロークデータの入力を連続で受け付けているか否かで、ストロークデータが同一認識グループに含まれるか否かが判断される領域を変更する。換言すると、入力手段がタッチパネルから離れてから所定時間が経過するか否かで、ストロークデータが同一認識グループに含まれるか否かが判断される領域を変更する。
【0130】
A.ペンアップから所定時間Tが経過していない場合(連続筆記中)
図17は、ペンアップから所定時間Tが経過していない場合の同一認識グループを示す図である。連続筆記中のストロークデータの外接矩形が認識グループ矩形101である。これに対し、追加認識矩形102の領域は以下のように定義される。
「追加認識矩形102の上端=認識グループ矩形101の上端からβ1」
「追加認識矩形102の左端=認識グループ矩形101の左端からβ2」
「追加認識矩形102の下端=認識グループ矩形101の下端から認識グループ矩形101の幅W+β3」
「追加認識矩形102の右端=認識グループ矩形101の右端から認識グループ矩形101の高さH+β4」
追加認識矩形102に含まれるストロークデータは一部がはみ出していても、ストロークデータのうちはみ出し分が所定の割合以下なら、追加認識矩形102に手書きされたと判断される。また、認識グループ矩形101に手書きされたストロークデータは、追加認識矩形102と見なしてもよいし、そうでなくてもよい。
【0131】
したがって、認識グループ矩形101のストロークデータと追加認識矩形102に含まれるストロークデータは同一認識グループとなる。
【0132】
オフセットが、例えば、β1=β2= 1.5 [cm]、β3=β4= 2 [cm] とする。認識グループ矩形の幅Wが 1.5 [cm]、高さHが 0.5 [cm] の場合、追加認識矩形102の幅と高さは以下のようになる。
【0133】
幅 :β2 + (認識グループ矩形101の幅W) + (認識グループ矩形101の高さH) + β4= 5.5 [cm]
高さ:β1+ (認識グループ矩形101の高さH) + (認識グループ矩形101の幅W) + β3= 5.5 [cm]
なお、オフセットは、ディスプレー220のサイズや画素数、使用用途によって変わる。上記のオフセットは、約40インチで画素数2880 x 2160のディスプレー220に、数人で共有できる手書きデータのサイズを想定した場合の一例である。連続筆記中でない場合も同様である。
【0134】
認識グループ矩形101の「左」、「上」にオフセットβ1,β2によりストロークデータの手書きを受け付ける余裕をもたせるのは、日本語の文字は下又は右方向への筆記が多いが、稀にある左(「ふ」など)又は上方向(i、j等)の筆記を認識するためである。このため、β1、β2だけ左及び上方向に追加認識矩形102が大きくされている。
【0135】
認識グループ矩形101の「右」にストロークデータの手書きを受け付ける余裕をもたせるのは、漢字の成り立ちの特徴による。例えば「イ」(にんべん)の右にユーザーが連続筆記するケースでは、「イ」の高さが文字サイズと想定でき、右方向に文字サイズ分、追加認識矩形102を大きくした。
【0136】
認識グループ矩形101の「下」に付加長さが設定されるのは、漢字の成り立ちの特徴による。例えば「宀」(うかんむり)の下にユーザーが連続筆記するケースでは、「宀」の幅が文字サイズと想定でき、下方向に文字サイズ分、追加認識矩形102を大きくした。
【0137】
B.ペンアップから所定時間Tが経過した場合
図18は、ペンアップから所定時間Tが経過した場合の同一認識グループを示す図である。所定時間Tが経過するまでに手書きされたストロークデータの外接矩形が認識グループ矩形101である。これに対し、追加認識矩形102の領域は以下のように定義される。
【0138】
高さ:認識グループ矩形101の高さH
幅: 認識グループ矩形101の右端から認識グループ矩形101の高さH+λ
所定時間Tの経過後は日本語の横書きの文字サイズを想定して、文字サイズ分だけ右方向に追加認識矩形102を設ける。領域変更部31は、認識グループ矩形101に対し空白をあけてユーザーが右に書くことを想定して、オフセットλだけ右方向に大きくする。領域変更部31は、すでに入力されているストロークデータの外接矩形の右側の領域のみを、ストロークデータが同一認識グループに含まれるか否かが判断される領域に決定する。
【0139】
認識グループ矩形101の「お」と追加認識矩形102に含まれるストロークデータは同一認識グループとなる。
【0140】
オフセットが、例えば、λ= 3 [cm] とする。認識グループ矩形の幅が 4 [cm]、高さが 6 [cm] の場合、追加認識矩形102の幅と高さとは以下となる。
【0141】
幅 : (認識グループ矩形101の高さH) + λ= 9 [cm]
高さ:(認識グループ矩形101の高さH) = 6 [cm]
以上のように、領域変更部31は、入力手段がタッチパネルから離れてから所定時間Tが経過するか否かで、同一認識グループにストロークデータを含めるかどうかを変更できる。
【0142】
次に、図19を参照して、ストロークデータが同一認識グループから除外される場合を説明する。図19は、ストロークデータが同一認識グループとならない条件を説明する図である。除外部32は、ストロークデータが以下の条件(i)(ii)のいずれかを満たした場合に、ストロークデータが追加認識矩形102に含まれても、例外的に該ストロークデータを同一認識グループから除外する。
(i) ストロークデータの高さが閾値aより大きい
(ii) ストロークデータの幅が閾値bより大きい、かつ、高さが閾値cより小さい
なお、閾値a、bは例えば9〔cm〕、閾値cは例えば2.5〔cm〕などでよいが、ディスプレー220の大きさや画素数、テキストを何人で共有するか等により様々である。
【0143】
(i)の条件は、文字の最大高さとして閾値aを設定し、これを超えるストロークデータは図形と判断するための条件である。(ii)の条件は、一般的な文字の最大幅として閾値bを超えるストロークデータは図形、又は、英語の筆記体を1つの同一認識グループに含めるための条件である。
【0144】
図19の閾値a、b、cで区切った領域1~4を用いてストロークデータが同一認識グループと判断されるか否かを説明する。
【0145】
・領域1,2に全体が入るストロークデータは、(i)(ii)を満たさないので日本語文字である。よって、領域1,2に全体が入るストロークデータは、同一認識グループから除外されない。なお、領域1,2に全体が入るストロークデータを英語の筆記体として認識することもできる。
【0146】
・領域1,2、3に全体が入るストロークデータは、(i)(ii)を満たさないので、同一認識グループから除外されない。これにより、英語の筆記体に対応することができる。つまり、「English」などのように筆記体(一筆)で手書きされたストロークデータがあっても、同一認識グループから除外されない(図形とはみなされない)ので、表示装置2が文字として認識できる。
【0147】
・領域2,4に全体が入るストロークデータは、(ii)を満たすので図形(例えば横線)である。よって、領域2,4に全体が入るストロークデータは、同一認識グループから除外される。
【0148】
・領域1~4に全体が入るストロークデータは、(i)(ii)を満たさないので、同一認識グループから除外されない。この場合も英語の筆記体を認識可能になる。
【0149】
このように除外部32は、ストロークデータが(i)(ii)の条件を満たすか否かに応じて、追加認識矩形102に含まれるストロークデータでも、強制的に同一認識グループでないとみなす。これにより、図形と文字が混在して手書きされるような場合でも、文字と図形を切り分けて変換部23が文字を認識できる。
【0150】
なお、(i)(ii)以外に、同一認識グループとならない以下のような条件がある。
・ストロークデータが近傍矩形に含まれない場合
・使用中のペン2500で直前の動作に「文字変換」等、ストローク描画ではない処理が入った場合
・エリア制御など特殊な例で、別エリアへの筆記とみなされた場合
・ペン種が異なる場合
<<同一認識グループの判断に関する処理又は動作>>
図20は、認識グループ判断部30が同一認識グループのストロークデータを決定する手順を説明するフローチャート図である。図20の処理は表示装置2の起動中、繰り返し実行される。
【0151】
入力受付部21が、入力手段が接触した座標を検出し、描画データ生成部22がストロークデータを生成する。表示制御部24は、ストロークデータをディスプレー220に表示させる。除外部32は、ストロークデータが同一認識グループとならない条件(除外される条件)を満たすか否かを判断する。同一認識グループとならない条件を満たさない(つまり同一認識グループと判断された)ストロークデータのみが以降の処理の対象となる(S21)。ステップS21の判断については図21のフローチャート図で説明する。
【0152】
領域変更部31は、ステップS21のストロークデータの手書きが終わってペンアップしてから所定時間Tが経過した否かを判断する(S22)。
【0153】
所定時間Tが経過していない状態で(S22のYes)、入力受付部21が、入力手段が接触した座標を検出し、描画データ生成部22がストロークデータを生成する。表示制御部24は、ストロークデータをディスプレー220に表示させる。除外部32は、ステップS23のストロークデータが同一認識グループとならない条件を満たすか否かを判断する(S23)。同一認識グループとならない条件を満たさない(つまり同一認識グループと判断された)ストロークデータのみが以降の処理の対象となる。
【0154】
次に、領域変更部31は、ステップS21のストロークデータに基づいて連続筆記中の追加認識矩形102を設定し、ステップS23で手書きされたストロークデータが、この追加認識矩形102に含まれるか否かを判断する(S24)。
【0155】
ステップS23のストロークデータが追加認識矩形102に含まれる場合(S24のYes)、領域変更部31は、ステップS21とS23のストロークデータが同一認識グループであると判断する(S25)。
【0156】
ステップS23のストロークデータが追加認識矩形102に含まれない場合(S24のNo)、領域変更部31は、ステップS21とS23のストロークデータが同一認識グループでないと判断する(S26)。
【0157】
ステップS21のストロークデータの手書きが終わってペンアップしてから所定時間Tが経過した状態で(S22のNo)、入力受付部21が、入力手段が接触した座標を検出し、描画データ生成部22がストロークデータを生成する。表示制御部24は、ストロークデータをディスプレー220に表示させる。除外部32は、ストロークデータが同一認識グループとならない条件を満たすか否かを判断する。同一認識グループとならない条件を満たさないストロークデータのみが以降の処理の対象となる(S27)。
【0158】
次に、領域変更部31は、ステップS21のストロークデータに基づいて所定時間Tの経過後の追加認識矩形102を設定し、ステップS27で手書きされたストロークデータが、この追加認識矩形102に含まれるか否かを判断する(S28)。
【0159】
ステップS27のストロークデータが追加認識矩形102に含まれる場合(S28のYes)、領域変更部31は、ステップS21とS27のストロークデータが同一認識グループであると判断する(S25)。
【0160】
ステップS27のストロークデータが追加認識矩形102に含まれない場合(S28のNo)、領域変更部31は、ステップS21とS27のストロークデータが同一認識グループでないと判断する(S26)。
【0161】
図21は、図20のステップS21、S23、S27で説明した、ストロークデータが同一認識グループとならない条件を満たすか否かを判断するフローチャート図である。
【0162】
入力受付部21が、入力手段が接触した座標を検出し、描画データ生成部22がストロークデータを生成する。表示制御部24は、ストロークデータをディスプレー220に表示させる(S31)。
【0163】
除外部32は、ストロークデータの高さが閾値aより大きいか否かを判断する(S32)。
【0164】
ストロークデータの高さが閾値a以下の場合(S32のNo)、除外部32は、ステップS31のストロークデータの幅が閾値bより大きく、かつ、ストロークデータの高さが閾値cより小さいか否かを判断する(S33)。
【0165】
ステップS32又はステップS33のいずれかの判断がYesの場合、除外部32は、ステップS31で手書きされたストロークデータを同一認識グループから除外する(S34)。
【0166】
ステップS33の判断がNoの場合、領域変更部31は、ステップS31で手書きされたストロークデータを同一認識グループの判断対象とする。つまり、ステップS31で手書きされたストロークデータは、図20の処理で追加認識矩形102に含まれるかどうかが判断される。
【0167】
<主な効果>
本実施形態の表示装置2は、既存のテキスト301に対しユーザーが手書きした位置に応じて、既存のテキストと入力中テキストとの間に空白を挿入するか否か、すなわち間隔の表示を制御できる。
【0168】
[第2実施形態]
第1実施形態では、既存のテキストと入力中テキストの間に空白を挿入するか否かの判断のため、α/β/γの設定値を予め定めた値(固定値)として用いていた。しかし、既存のテキストに対しどのくらい間隔を空けて手書きすれば空白を挿入できるかという感覚はユーザーによって異なると考えられる。すなわち、α/β/γの最適な設定値はユーザーによって異なる。
【0169】
そこで、本実施形態では、機械学習を利用してオフセットα/β/γの設定値を自動で決定する表示装置2について説明する。表示装置2は、ユーザーの操作履歴を用いてα/β/γの設定値を特定して設定変更を行う。
【0170】
図22は、表示装置2が有する機能をブロック状に分けて説明する機能ブロック図の一例である。図22の説明では主に図4との相違を説明する。本実施形態の表示装置2は新たに変更部35を有している。変更部35は、ユーザーの操作履歴を用いてα/β/γの設定値を自動で変更する。
【0171】
また、記憶部40には、オフセット情報記憶部42が構築されている。オフセット情報記憶部42には、設定情報とユーザー別オフセット情報が記憶されている。図23(a)は設定情報の一例を示す。設定情報は、α/β/γの設定値をユーザーごとに可変にすることが、可能かどうかが設定された情報である。設定情報は、例えば管理者が予め設定しておく。
【0172】
図23(b)は、ユーザー別オフセット情報の一例を示す。ユーザー別オフセット情報には、ユーザーごとに自動で設定されたα/β/γの設定値が保存されている。図23(b)ではAさんとCさんにはα/β/γの設定値が保存されているので、AさんとCさんが表示装置2を使用する場合、ユーザーごとに適したオフセット値で空白の挿入判断が行われる。Bさんが表示装置2を使用する場合、初期設定のオフセット値で空白の挿入判断が行われる。
【0173】
図24は、変更部35がα/β/γの設定値を変更する処理を説明するフローチャート図である。まず、変更部35は、α/β/γの設定値をユーザーごとに設定(可変と)することが可能かを確認する(S501)。具体的には、変更部35が、記憶部40から設定情報を読み込む。変更部35は、読み込んだ設定情報に、α/β/γの設定値をユーザーごとに設定することが可能な設定であるかを確認する。
【0174】
設定情報においてユーザーごとの設定が禁止されている場合(S501のNo)、図24の処理は終了する。
【0175】
設定情報にてユーザーごとの設定が許可されている場合(S501でYes)、処理はステップS502に進む。
【0176】
変更部35は、手書きを行うユーザー(例えばログインしたユーザー)におけるα/β/γの設定値が、既に記憶されているかを確認する。具体的には、変更部35が、オフセット情報記憶部42にある対象ユーザーの設定情報を読み込んで、α/β/γの設定値が既に記憶されているか否か判断する(S502)。
【0177】
α/β/γの設定値が既に記憶されている場合(S502のYes)、変更部35は、対象ユーザーのα/β/γの設定値を取得する(S503)。この場合、判断部29は取得したα/β/γの設定値で空白の挿入判断を行う。
【0178】
α/β/γの設定値が記憶されていない(初期値である)場合には(S502のNo)、処理は、対象ユーザーのα/β/γを設定する処理へ進む。
【0179】
対象ユーザーが、例えば「犬」を手書きした際、描画データ生成部22が「犬」の手書きデータから、文字の大きさを取得する(S504)。一例として、描画データ生成部22は、「犬」の手書きデータの上下方向が24mmで左右方向が20mmであることを取得する。変換部23は、文字の大きさからフォントサイズを特定する。先ほどの例では、変更部35は、より大きい方向(今回は上下方向)の24mmに対応する72ptをフォントサイズとして特定する(S505)。
【0180】
変更部35は、対象ユーザーにおけるオフセットαの設定値を、特定したフォントサイズ(72pt)と同じ大きさである24mmに設定する(S506)。また、変更部35は、対象ユーザーにおけるオフセットβの設定値を、αの半分の値である12mmに設定する。また、変更部35は、対象ユーザーにおけるオフセットγの設定値を、αの3分の1の値である8mmに設定する。
【0181】
また、変更部35は、追加する空白(全角分)の長さは、上記のフォントサイズと同じ24mmとし、半角の空白はその半分の12mmに設定する。
【0182】
挿入される空白の大きさや、空白の挿入判断に用いられる設定値(α/β/γ)については、適切な値が、ユーザーの文字の手書きサイズによって異なる。そのため、ユーザーの手書きデータからフォントサイズを特定して設定値(α/β/γ)を自動的(可変的)に設定することで、空白の挿入判断や、追加する空白の大きさを、ユーザーごとにより適したものに設定することが可能となる。
【0183】
更に、各々のユーザーの手書きによって設定されたα/β/γの値を表示装置2がサーバー装置に送信して記憶しておき、他のユーザーがα/β/γの設定を使用できてもよい。 また、表示装置2が、各々のユーザーのα/β/γの設定値を用いて、管理者や新たなユーザーにα/β/γの設定値の変更を設定し直させる提案表示を行ってもよい。
【0184】
<主な効果>
本実施形態によれば、実施形態1の効果に加え、既存のテキスト301と入力中テキスト303との間隔の表示を、ユーザーごとにより適した間隔の表示に制御できる。
【0185】
[第3実施形態]
本実施形態では、サーバー・クライアントシステムの形態による表示システムについて説明する。図25は、表示システム19の概略構成図の一例である。表示装置2の機能は、図25のような、サーバー・クライアントシステムの形態でも実現できる。インターネット等のネットワークを介して表示装置2とサーバー装置12とが通信可能である。表示装置2は、ユーザーが手書きしたストロークデータをサーバー装置12に送信し、サーバー装置12は実施例1と同様に空白の挿入制御を行い、オブジェクトデータを表示装置2に送信する。
【0186】
なお、サーバー装置12のハードウェアブロック図については、コンピュータの既存のハードウェアブロック図と同様で良いため省略した。
【0187】
図26は、表示システム19の機能ブロック図を示す。表示システム19の場合、表示装置2は、図4に示した、入力受付部21、描画データ生成部22、表示制御部24、ネットワーク通信部26(第1通信部の一例)、及び操作受付部27を有する。
【0188】
一方、サーバー装置12は、変換部23、データ記録部25、ネットワーク通信部34(第2通信部の一例)、空白挿入制御部28、判断部29、認識グループ判断部30、領域変更部31、及び、除外部32を有する。
【0189】
なお、図25のシステム構成において、図26に示したサーバー装置の機能の一部又は全てを表示装置2が有していてもよい。
【0190】
図27は、表示システム19が既存のテキストと入力中テキストとの間に空白を挿入する処理を説明するシーケンス図である。
【0191】
S401:ユーザーがストロークを手書きする。
【0192】
S402:入力受付部21が座標の軌跡の入力を受け付ける。描画データ生成部22はペン2500のペン先が接触した座標を入力受付部21から取得する。描画データ生成部22は、この座標点列を補間することで接続してストロークデータを生成し、表示制御部24がストロークデータを表示させる。
【0193】
S403:表示装置2のネットワーク通信部26はストロークデータをサーバー装置12に送信する。
【0194】
S404:サーバー装置12のネットワーク通信部34はストロークデータを受信し、変換部23は同一認識グループのストロークを文字認識する。
【0195】
S405:サーバー装置12のネットワーク通信部34は変換候補を表示装置2に送信する。
【0196】
S406:表示装置2のネットワーク通信部26は変換候補を受信し、表示制御部24が1つ以上の変換候補(操作ガイド)を表示させる。
【0197】
S407:ユーザーが変換候補からテキストを選択すると操作受付部27が選択を受け付ける。選択された変換候補が入力中テキストになる。
【0198】
S408:表示装置2のネットワーク通信部26は入力中テキストをサーバー装置12に送信する。
【0199】
S409:サーバー装置12のネットワーク通信部34は入力中テキストを受信し、判断部29と空白挿入制御部28が例えば図12のステップS104~S110の処理を行う。図13図14の処理が行われてもよい。
【0200】
S410:サーバー装置12のネットワーク通信部34は入力中テキストの表示位置(座標)やフォント情報等を表示装置2に送信する。
【0201】
S411:表示装置2のネットワーク通信部26は入力中テキストの表示位置(座標)やフォント情報等を受信し、表示制御部24が受信したフォント情報で、空白挿入制御で決まった表示位置に入力中テキストを表示させる。
【0202】
<主な効果>
このように、表示システム19によれば、実施形態1、2の効果に加え、表示装置2とサーバー装置12がインタラクティブにテキストデータを表示できる。また、オブジェクトデータがサーバー装置12に保存されているので、遠隔地にある表示装置2やPCがサーバー装置12に接続してオブジェクトデータをリアルタイムに共有できる。
【0203】
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【0204】
例えば、ユーザーがすでに手書きしてある手書きデータ又はテキストを既存のテキストの近くに移動させた場合に、表示装置2が空白の挿入制御を行ってもよい。すなわち、空白の挿入制御は、ユーザーが手書きした直後の手書きデータから変換されたテキストには限られない。
【0205】
また、本実施形態では、既存のテキストの末尾と入力中テキストの先頭との間に空白を挿入するか否か制御したが、同様に、表示装置2は、既存のテキストの先頭と入力中テキストの末尾との間に空白を挿入するか否か制御できる。この場合、手書きデータの書き終わりの位置と既存のテキストの先頭との距離がオフセットα、βと比較される。
【0206】
また、既存のテキストの末尾が特定の文字、数字、又は記号であるかによって表示装置2が既存のテキストの末尾と入力中テキストとの間隔を制御してもよい。例えば、既存のテキストの末尾が句読点の場合、表示装置2は既存のテキストの末尾と入力中テキストの先頭との距離に関わらず空白を挿入しない。つまり、句読点の文字幅のみが確保され、直後に入力中テキストが表示される。また、既存のテキストの末尾が?などの記号の場合、表示装置2は既存のテキストの末尾と入力中テキストの先頭との距離に関わらず空白を挿入する。こうすることで、入力中テキストが見やすくなる。また、既存のテキストの末尾が数字で、入力中テキストが数字の場合は既存のテキストの末尾と入力中テキストの先頭との距離に応じた空白制御を行う。既存のテキストの末尾が数字で、入力中テキストが記号の場合は、距離に関わらず空白を挿入しない(記号が単位となる可能性がある)。既存のテキストの末尾が数字で、入力中テキストが文字の場合は(文字が単位を表すものでないと判断した上で)、距離に関わらず空白を挿入する(記号が単位となる可能性がある)。
【0207】
また、本実施形態では、ストロークデータが主に日本語に変換されているが、ストロークデータの変換先の言語は他の言語(英語、中国語、ヒンドゥー語、スペイン語、フランス語、アラビア語、ロシア語等)でよい。
【0208】
また、本実施形態では電子黒板を一例として説明したが、電子黒板は、電子ホワイトボード、電子情報ボード、などと呼ばれてよい。また、本実施形態は、タッチパネルを有する情報処理装置であれば好適に適用できる。タッチパネルを搭載した情報処理装置としては、例えば、プロジェクター、デジタルサイネージ等の出力装置、HUD(Head Up Display)装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、ノートPC、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPC又はデスクトップPC等であってもよい。
【0209】
また、本実施形態ではペン先の座標をタッチパネルで検知する方法でペンの座標を検出したが、表示装置2はペン先の座標を超音波により検出してもよい。また、ペンは発光と共に超音波を発信しており、表示装置2は超音波の到達時間により距離を算出する。表示装置2は、方向と距離によりペンの位置を特定でき、ペンの軌跡をストロークデータとしてプロジェクターが描画(投影)する。
【0210】
また、図4などの構成例は、表示装置2による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。表示装置2の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
【0211】
また、上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
【0212】
本発明の実施形態は、コンピュータの能力及び機能性に大きな改善をもたらす。これらの改善により、ユーザーは、情報処理装置において情報を格納し提示する方法であるテーブルとの、より効率的で堅牢な対話を提供するコンピュータを利用することができる。更に、本発明の実施形態は、より効率的で強力かつ堅牢なユーザーインタフェースの使用を通じて、より良いユーザー体験を提供する。このようなユーザーインタフェースは、人間と機械との間のより良い相互作用を提供する。
【0213】
<付記>
[付記1]
手書きの入力を受け付ける入力受付部と、
前記入力受付部が受け付けた手書きを第1のテキストに変換する変換部と、
表示部に表示されている第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストの末尾と前記第1のテキストの先頭との間に間隔を空けて前記第1のテキストを表示させる表示制御部と、
を有することを特徴とする表示装置。
[付記2]
表示部に表示されている第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれるか否かを判断する判断部を有し、
前記判断部が、前記第2のテキストと前記手書きとの距離が第1の距離より小さく、かつ、前記所定範囲に含まれないと判断する場合に、
前記表示制御部は、前記間隔を開けずに前記第2のテキストの末尾に続けて前記第1のテキストを表示させる付記1に記載の表示装置。
[付記3]
前記判断部が、前記第2のテキストと前記手書きとの距離が所定範囲に含まれると判断する場合に、
前記表示制御部は、前記第2のテキストの末尾の空白の数を、前記第2のテキストと前記手書きとの距離に応じて変更し、前記第2のテキストの末尾に挿入された1以上の空白を空けて前記第1のテキストを表示させる付記2に記載の表示装置。
[付記4]
前記判断部が、前記第2のテキストと前記手書きとの距離が前記所定範囲に含まれると判断し、かつ、前記第2のテキストが末尾に空白を有すると判断する場合、
前記表示制御部は、前記第2のテキストが末尾に空白を挿入しないで、前記第2のテキストが末尾に有する空白の直後に前記第1のテキストを表示させる付記2又は3に記載の表示装置。
[付記5]
前記所定範囲は、前記第1のテキストを起点に第1の距離より小さく第2の距離より大きい範囲であり、
前記判断部が、前記第2のテキストと前記手書きとの距離が前記第2の距離以下と判断し、かつ、前記第2のテキストが末尾に空白を有すると判断する場合、
前記表示制御部は、前記第2のテキストの空白でない最後の文字に続けて前記第1のテキストを表示させる付記4に記載の表示装置。
[付記6]
前記所定範囲は、前記第1のテキストを起点に第1の距離より小さく第2の距離より大きい範囲である付記1~5のいずれか1項に記載の表示装置。
[付記7]
前記入力受付部が過去に受け付けた1つ以上の文字のサイズに基づいて、前記所定範囲を変更する付記1~6のいずれか1項に記載の表示装置。
[付記8]
前記変換部は、前記手書きの大きさに基づいて前記第1のテキストのフォントサイズを特定し、
特定されたフォントサイズに基づいて、前記所定範囲を変更する変更部、を有する付記7に記載の表示装置。
[付記9]
前記第2のテキストと前記手書きとの距離が第1の距離より小さい場合、前記表示制御部は、前記第2のテキストに対応づけられたフォント情報により定まるフォントを用いて前記第1のテキストを表示させる付記1~8のいずれか1項に記載の表示装置。
[付記10]
前記第2のテキストと前記手書きとの距離が第1の距離より小さい場合、前記表示制御部は、前記第2のテキストと上下方向の位置を一致させて、前記第1のテキストを表示させる付記1~9のいずれか1項に記載の表示装置。
[付記11]
前記変換部は、表示部に表示されている前記第2のテキストと前記入力受付部が受け付けた前記手書きとの距離が所定範囲に含まれる場合、前記第2のテキストと前記第1のテキストが接続されたテキストを1つのオブジェクトとして保存する付記1~10のいずれか1項に記載の表示装置。
【符号の説明】
【0214】
2 表示装置
【先行技術文献】
【特許文献】
【0215】
【特許文献1】特開2015-075956号公報
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27