JP2014067286A - 手書入力装置、手書入力プログラム、および手書入力装置の制御方法 - Google Patents

手書入力装置、手書入力プログラム、および手書入力装置の制御方法 Download PDF

Info

Publication number
JP2014067286A
JP2014067286A JP2012213039A JP2012213039A JP2014067286A JP 2014067286 A JP2014067286 A JP 2014067286A JP 2012213039 A JP2012213039 A JP 2012213039A JP 2012213039 A JP2012213039 A JP 2012213039A JP 2014067286 A JP2014067286 A JP 2014067286A
Authority
JP
Japan
Prior art keywords
handwriting input
correction
displacement
vector
sample point
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
JP2012213039A
Other languages
English (en)
Inventor
Tetsuhiro Hayashi
哲洋 林
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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2012213039A priority Critical patent/JP2014067286A/ja
Publication of JP2014067286A publication Critical patent/JP2014067286A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】手書入力の追従性および描線の滑らかさの少なくともいずれかを実現する。
【解決手段】手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置1は、サンプル点の変位を示すベクトルの角度の変化に応じて、ベクトルの角度の加重平均を計算することで補正ベクトルを生成する補正データ生成部(24A)を備える。
【選択図】図4

Description

本発明は手書入力による描画を行う手書入力装置、手書入力プログラム、および手書入力装置の制御方法に関する。
従来、タブレット入力装置や、タッチパネル入力装置を用いた手書入力技術が知られている。このような手書入力技術では、例えば、手書入力された軌跡の座標をサンプリングして検出し、その検出座標に基づいて、手書入力軌跡が表示される。このような手書入力技術の分野において、描画の滑らかさや軌跡の正確さを得るために入力される描線を補正する技術として、次のような提案がなされている。
特許文献1には、手書入力の入力範囲に応じて、検出座標のサンプル数を設定する技術や、サンプリングして得た検出座標に基づき最小二乗法による演算を行って描画曲線を算出する技術が開示されている。
特許文献2には、座標データの取得を複数回行って、取得した座標データを加算平均した座標値を出力する技術、および入力者の描画速度に応じて座標データの加算平均回数を変更する技術が開示されている。
特許文献3には、最新の座標が検出されるたびに、最新の座標と該最新の座標の検出処理の1回前の処理で検出された座標とがそれぞれ示す2つの点間の距離に応じて、座標検出のサンプリング間隔を設定する技術が開示されている。
なお、既存の画像の平滑化を行い画像に含まれるノイズを低減または除去する技術としては、平均化フィルタや、ガウシアンフィルタなどが知られている。
特開平8−179874(1996年7月12日公開) 特開平9−34629(1997年2月7日公開) 特開2000−10721(2000年1月14日公開)
しかしながら、上述のような従来技術は、単に、サンプル数の変更またはサンプル間隔の変更により描画の滑らかさや、応答反応性を確保するにとどまっている。よって、角度の変化に対応し、描画曲線滑らかさ向上や、手書入力の追従性の向上を図ることは提案されていない。
例えば、上述のような従来技術では、補正後の描画曲線は、過去の入力データの影響を受け得る。すなわち、従来技術では、過去から現在までの手書入力の角度の変化の影響を考慮していない。
このため、過去の入力データの影響により、描画追従性、または、描画の円滑さの点において、所望の結果が得られない場合があった。
例えば、単純に入力座標の加算平均を算出するだけでは、補正値において過去の入力データの影響が均一に現れる。よって、手書入力の角度が急に変化した場合、実際の手書入力に対して、描画曲線の追従性が低下する。
また、例えば、手書入力が大きくカーブした部分においては、過去データの直進性が強く補正値に表れるので、実際の手書入力データと補正値との間に大きな差が生じてしまう。
また、曲線を描画する際、描画の角度を一定にしたいにもかかわらず、手振れにより入力角度が変化し、滑らかな曲線が得られない場合があった。
本発明は、上記問題に鑑みてなされたものであり、その目的は、角度の変化に対応し、描画曲線の滑らかさ向上や、手書入力の追従性の向上を図ることができる手書入力装置を実現することにある。
上記の課題を解決するために、本発明の一態様に係る手書入力装置は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置において、サンプル点の変位の成す角度の変化に応じて、サンプル点の変位の新旧に応じた重み付けを用いてサンプル点の変位を補正することで上記手書入力データを生成する補正手段(補正データ生成部24A)を備える。
別の観点から言えば、本発明の一態様に係る手書入力装置は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置において、サンプル点の変位の成す角度の変化に応じて、補正対象サンプル点と、当該補正対象サンプル点の直前にサンプリングされた直近サンプル点との変位に対して、該直近サンプリング点よりも前のサンプル点の変位に対する重みよりも大きな重み付けを用いて補正対象サンプル点の変位を補正することで上記手書入力データを生成する補正手段を備える。
上記の課題を解決するために、本発明の一態様に係る手書入力装置の制御方法は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置の制御方法において、サンプル点の変位の成す角度の変化に応じて、サンプル点の変位の新旧に応じた重み付けを用いてサンプル点の変位を補正することで上記手書入力データを生成する補正ステップを含む。
上記の課題を解決するために、本発明の他の態様に係る手書入力装置は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置において、サンプリングの都度、得られたサンプル点への第1の変位と、該第1の変位のひとつ前の第2の変位とが成す角度の変化率を算出する変化率算出手段と、上記変化率が、所定の範囲内に収まるように、該第1の変位を補正することで上記手書入力データを生成する変位補正手段と、を備える。
上記の課題を解決するために、本発明の他の態様に係る手書入力装置の制御方法は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置の制御方法において、サンプリングの都度、得られたサンプル点への第1の変位と、該第1の変位のひとつ前の第2の変位とが成す角度の変化率を算出する変化率算出ステップと、上記変化率が、所定の範囲内に収まるように、該第1の変位を補正することで上記手書入力データを生成する変位補正ステップと、を含む。
本発明の一態様によれば、サンプル点の変位の補正に用いる重み付けを手書入力の入力角度に応じて適宜変更することで、手書入力の追従性の向上、および、円滑化の少なくともいずれかを図ることができる。
また、本発明の他の態様によれば、手書入力データが表す描線において、曲線を表現するための各変位間の角度が極端に変化することを防ぐことができる。これにより、ユーザーの手書入力に基づいて、より滑らかな曲線を描画することができる。
以上のように、本発明によれば、角度の変化に対応し、描画曲線滑らかさ向上や、手書入力の追従性の向上を図ることができる。
本発明の実施形態1に係る手書入力装置の機能的な構成の一例について示す機能ブロック図である。 上記手書入力装置が備えるタッチパネル表示部の表示画面において、ユーザーが左から右に水平方向に手書入力を行った場合について示す図である。 上記手書入力装置における手書入力データの補正処理の流れの一例について示すフローチャートである。 本発明の実施形態2に係る手書入力装置の機能的な構成の一例について示す機能ブロック図である。 上記手書入力装置が備えるタッチパネル表示部の表示画面において、ユーザーが左から右に水平に手書入力を行ったあとに手書入力方向を変化させる場合について示している。 角度計算について説明する図である。 2つのベクトルの角度平均を算出する方法について説明する図である。 重み付けによる補正角の算出について説明する図である。 上記手書入力装置における手書入力データの補正処理の流れの一例について示すフローチャートである。 本発明の実施形態3に係る手書入力装置の機能的な構成の一例について示す機能ブロック図である。 ベクトルの角度の変化率が一定になるようベクトルを補正し、滑らかな描画曲線を得る方法について説明する図である。 上記手書入力装置における手書入力データの補正処理の流れの一例について示すフローチャートである。
〔実施形態1〕
以下、本発明の一実施形態について、図1〜図3を用いて説明すれば、以下のとおりである。
まず、図1を用いて、本発明の一実施形態である手書入力装置1の構成について説明すると次のとおりである。図1は、手書入力装置1の機能的な構成の一例について示す機能ブロック図である。図1に示す手書入力装置1は、ユーザーから手書入力による操作を受け付け、受け付けた手書入力を補正した手書入力データを生成し、補正後の手書入力データを出力する。手書入力装置1は、例示的には、タブレット端末や、スマートフォンなどの高機能携帯電話機等のタッチパネル入力装置を備える装置である。
手書入力装置1は、手書入力の速度の変化に応じて、手書入力に対する描画の追従性や、描画の滑らかさを調整する。
図1に示すように手書入力装置1は、記憶部10、制御部20、および、タッチパネル表示部30と、を備える構成である。
記憶部10は、各種データ、表示コンテンツおよびプログラムを記憶させておくものである。また、制御部20は、電子機器1の各種機能を統括的に制御するものである。制御部20は、例えば、タッチパネル表示部30における表示処理およびタッチ操作に応じた情報処理を制御する。記憶部10および制御部20の詳細については後述する。
タッチパネル表示部30は、ユーザーからの接触操作を受け付ける操作部31および画面表示を行う表示部32を備える。なお、操作部31および表示部32は、例示的に、ユーザーから見て操作部31および表示部32の順で積層されており、ユーザーが表示部32の表示画面を視認しながら、当該表示画面に対して接触操作(タッチ操作)を行うことができるようになっている。
操作部31は、表示部32の表示画面に対するユーザーの接触操作を検出して、当該接触操作に関する操作データを生成し、生成した操作データを制御部20に供給する。なお、操作データには、接触操作位置や、接触操作の向き、加速度および強さなどが含まれていてもよい。
以下では、説明のため、タッチパネル表示部30(操作部31)に対する手書入力操作(文字や曲線の手書入力等)を検出することで操作データを生成するものとする。また、手書入力操作を検出することにより生成された操作データのことを手書入力データと称する。
手書入力操作の検出方法に特に制限はなく、任意の検出手法を用いることができる。また、操作部31は、ユーザーの指によるタッチ操作だけでなく、スタイラスやタッチペンなどの入力器具Mを用いた接触操作にも対応している。
操作部31が接触操作位置を検出する具体的な手法としては、例えば、マトリクス・スイッチ、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式、静電容量方式、および、対象物の画像を検出する方式(光センサ方式)などが挙げられる。しかしながら、これに限られず、接触操作位置を検出する手法には、種々の手法を適宜適用することができる。なお、上記した接触操作位置を検出する手法には、「接触」だけでなく「近接」を検出する手法が含まれる。ただし、以下では、説明の便宜上、「接触」および「近接」の区別をすることなく、単に「接触」とのみ記載する。
また、操作部31は、所定の間隔により、接触操作の検出を実行し、上記手書入力データを生成する。手書入力データの詳細については後述する。
表示部32は、画像データを表示するための表示画面を有しており、制御部20から画像データを受信し、受信した画像データに基づいてその表示画面に画像を表示するものである。表示部32は、例えば、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、EL(Electroluminescence)ディスプレイなどにより実現することができる。
(記憶部の詳細)
次に、図1を引き続き参照しながら、記憶部10の詳細について説明する。図1に示すように記憶部10は、サンプル点履歴情報記憶部11、速度閾値記憶部12、重み記憶部13、および補正データ履歴情報記憶部14を含む構成である。
サンプル点履歴情報記憶部11には、手書入力データが記憶される。手書入力データは、具体的には、タッチパネル表示部30におけるタッチ操作のサンプリングによって得られるサンプル点により構成される。よって、サンプル点履歴情報記憶部11には、サンプリングによって得られるサンプル点が時系列ごとに記憶される。
サンプル点は、例えば、タッチパネル表示部30における操作位置を示す座標値(例えば、X座標およびY座標から成る2次元座標)により表現されていてもよい。
なお、手書入力データには、サンプル点に加えて、前のサンプル点からの変位を示すベクトルが含まれていてもよい。また、手書入力データには、ベクトルの大きさや、角度が含まれていてもよい。また、ベクトルの角度は、基準となる方向(例えば、表示画面の座標系のX軸方向)と、ベクトルの方向との間の角度により表現されていてもよい。
速度閾値記憶部12には、タッチパネル表示部30において検出される手書入力の速度の変化量、および/または、変化率と比較するための閾値が記憶される。
重み記憶部13には、手書入力データの補正に用いるための重みに関する情報が記憶される。なお、重み記憶部13に記憶される重み情報は、重み付けを行うための値そのものであってもよいし、重み付けを行うための値を導出するための算出式であってもよい。
補正データ履歴情報記憶部14には、補正後の手書入力データ、すなわち補正データが記憶される。補正データは、手書入力データを構成するサンプル点の補正値、および、サンプル点の変位を示すベクトルの補正値(補正ベクトル)を含む。よって、補正データ履歴情報記憶部14には、サンプル点およびベクトルの補正値が時系列ごとに記憶される。
(制御部の詳細)
次に、図1をさらに参照しながら、制御部20の詳細について説明する。図1に示すように、制御部20は、サンプル点取得部21、速度条件判定部22、重み設定部23、補正データ生成部24、および描画部25を備える構成である。
サンプル点取得部21は、タッチパネル表示部30における所定の間隔による接触操作の検出処理(すなわちサンプリング処理)を制御して、サンプル点を取得する。具体的には、サンプル点取得部21は、所定の間隔で、接触操作の検出を実行するようタッチパネル表示部30の操作部31に指示し、操作部31から手書入力データを取得し、手書入力データに基づいてサンプル点を取得する。言い換えれば、サンプル点取得部21は、タッチパネル表示部30において行われる手書入力をサンプリングして得られる複数のサンプル点を取得する。
また、サンプル点取得部21は、サンプル点間のベクトル(変位)を算出する。図2を用いて、サンプル点取得部21によるベクトル算出処理について説明すると次のとおりである。図2は、タッチパネル表示部30の表示画面において、ユーザーが左から右に水平方向に手書入力を行った場合について示している。
図2の“元データ”に示すように、サンプル点が、P、P、P、およびPの順に取得されているとする。このときサンプル点取得部21は、PおよびPに基づいて、PからPへの変位を示すベクトルvを求める。同様に、サンプル点取得部21は、PおよびPからベクトルvを求め、PおよびPからベクトルvを求める。
なお、図2では、Pが最新のサンプル点であり、ベクトルvが最新のベクトル(以下、最新ベクトルと称する)である。
サンプル点取得部21は、サンプリングによって得られたサンプル点と、サンプル点に基づいて求めたベクトルと、ベクトルの大きさおよび角度とを、速度条件判定部22に供給するとともに、サンプル点履歴情報記憶部11に記憶する。
速度条件判定部22は、タッチパネル表示部30における手書入力の速度の変化量または変化率が閾値以上であるか否かを判定する。速度条件判定部22は、上記閾値を速度閾値記憶部12から取得することができる。
手書入力の速度は、タッチパネル表示部30での手書入力のサンプリングにおけるサンプル点間の距離(すなわちベクトルの大きさ)に基づいて求めることができる。例えば、速度条件判定部22は、サンプル点履歴情報記憶部11に記憶されているベクトルの大きさを取得して手書入力の速度を求めることができる。
また、速度条件判定部22は、例えば、手書入力の速度の変化を、(1)最新ベクトルの大きさと、当該最新ベクトルよりも前に求められたベクトルの大きさとに基づいて求めてもよいし、(2)最新ベクトルの大きさと、過去の補正により得られた補正ベクトルの大きさとに基づいて求めてもよい。
例えば、速度条件判定部22は、(1)最新ベクトルの大きさと、当該最新ベクトルの直前のベクトルの大きさとに基づいて変化を求めてもよいし、(2)最新ベクトルの大きさと、当該最新ベクトルが取得される直前の補正により得られた補正ベクトルの大きさとに基づいて手書入力の速度を求めてもよい。
なお、以下において、最新ベクトルの直前のベクトルおよび最新ベクトルの直前の補正ベクトルのことをまとめて、過去ベクトルと称する場合がある。
重み設定部23は、手書入力の速度の変化に応じて、手書入力データに対する補正を行うための重み値を設定する。詳細は後述するが、手書入力データの補正は、例示的に、最新ベクトルと、直前の補正ベクトルとの重み付け加算により実行される。そこで、重み設定部23は、最新ベクトルに対する重み値と、直前の補正ベクトルに対する重み値とを設定する。
重み設定部23は、最新ベクトルに対する重み値を直前の補正ベクトルに対する重み値と同一にしてもよい。
重み設定部23は、最新ベクトルに対する重み値を直前の補正ベクトルに対する重み値よりも大きくしてもよい。この場合、手書入力の追従性の向上を図ることができる。
また、重み設定部23は、最新ベクトルに対する重み値を直前の補正ベクトルに対する重み値よりも小さくしてもよい。この場合、手書入力の結果において描画される曲線の滑らかさを向上させることができる。
このため、重み設定部23が設定する重み値は描線をどのように表現したいのかに応じて、適宜大きくしたり小さくしたりすることができる。
重み設定部23は、例えば、以下のとおり重み値を設定することができる。
[設定1]手書入力速度が急激に早くなったときにおいて、その変化に対応して追従性を向上させたい場合は、重み値を大きくする。
[設定2]手書入力速度が急激に早くなったときにおいて、その変化に対応して曲線の滑らかさを向上させたい場合は、重み値を小さくする。
[設定3]手書入力速度が急激に遅くなったときにおいて、その変化に対応して追従性を向上させたい場合は、重み値を大きくする。
[設定4]手書入力速度が急激に遅くなったときに、その変化に対応して曲線の滑らかさを向上させたい場合は、重み値を小さくする。
[設定5]手書入力速度がそれほど変わらないのであれば、重み値を均等にする。
補正データ生成部24は、重み設定部23が設定した重み値を用いて手書入力データを補正することで補正データを生成する。そして、補正データ生成部24は、補正ベクトルを補正データとして描画部25に供給するとともに、補正データを補正データ履歴情報記憶部14に記憶する。なお、補正データ生成部24における補正の詳細については後述する。
描画部25は、補正データ生成部24から供給される補正データに基づいて手書入力結果を示す画像データを生成し、生成した画像データを表示部32に供給する。
(手書入力データの補正の詳細)
図2を用いて、補正データ生成部24における手書入力データの補正の具体例について説明すると次のとおりである。
図2に、手書入力装置1における手書入力データの“元データ”、当該“元データ”を、重みを一定にして補正したときの補正ベクトル、および、当該“元データ”を、重みを変化させて補正したときの補正ベクトルの一例を示している。
“元データ”は、上述のように、サンプリングされたサンプル点P、P、P、およびPから構成される補正前の手書入力データである。
間のベクトルvの大きさと、P間のベクトルvの大きさとは略同じである。一方、P間のベクトルvの大きさは、P間のベクトルvまたはP間のベクトルvの大きさよりも大幅に大きい。
補正データ生成部24は、上述のとおり、最新のサンプル点、および、該最新のサンプル点の直前のサンプル点の変位を示す最新ベクトルと、直前の変位を示す補正ベクトルとの加重和(加重平均)により補正ベクトルを生成する。“重みを変化させた補正値”は、このように加重平均により補正値を生成する場合について示している。
一方、“重みを一定にした補正値”は、最新の変位と、直前の変位との間で相加平均(すなわち重み一定とした重み付け和)を算出することで補正ベクトルを生成する場合について示している。
以下、より具体的に、“重みを一定にした補正値”および“重みを変化させた補正値”のそれぞれについて説明する。
[重みを一定にした補正値]
図2に示す“重みを一定にした補正値”について説明すると次のとおりである。まず、ベクトルvは、補正ベクトルv´と同様とする。
次に、ベクトルvの補正ベクトルv´は、ベクトルvと、直前の補正ベクトルv´の相加平均により得られる。ベクトルvと補正ベクトルv´とは略同じであるので、補正ベクトルv´は、ベクトルv、ベクトルvおよび補正ベクトルv´と同様である。
続いて、ベクトルvの補正ベクトルv´は、ベクトルvと、直前の補正ベクトルv´との相加平均により求められる。この相加平均は、例えば、v´=0.5v+0.5v´で求めることができる。また、上記に限られず、最新ベクトルから過去の所定のサンプル点までの過去ベクトルを用いる移動平均の算出式を用いても構わない。
ベクトルvは、直前の補正ベクトルv´よりも大幅に大きい。しかしながら、ベクトルvと、直前の補正ベクトルv´とは同じ重み付けにより加算されるので、加算により得られる補正ベクトルv´には、ベクトルvの影響が大きく現れる。このため補正ベクトルv´の大きさは、ベクトルvの大きさよりも大幅に小さくなる。
なお、上記“[設定5]手書入力速度がそれほど変わらないのであれば、重み値を均等にする。”の場合、重み設定部23は、上述のように均一な重みを設定してもよい。
[重みを変化させた補正値]
“重みを変化させた補正値”について説明すると次のとおりである。以下で説明する手書入力データの補正は、上述の“[設定1]手書入力速度が急激に早くなったときにおいて、その変化に対して追従性を向上させたい場合は、重み値を大きくする。”に該当する。
具体的には、補正データ生成部24は、重み設定部23が設定した重みを用いて、最新ベクトルおよび直前の補正ベクトルの加重和を算出することで補正ベクトルを得る。この加重和は、以下の式(A)により表わすことができる。
v´=αv+(1−α)v´n−1・・・(A)
上記式(A)において、v´は、最新の補正ベクトル、vは、最新ベクトル、v´n−1は、最新の補正ベクトルの直前の補正ベクトルである。また、αは、重み設定部23が設定する重み値を示している。
なお、上記式(A)に限られず、最新ベクトルから過去の所定のサンプル点までの過去ベクトルを用いる加重移動平均の算出式を用いても構わない。
図2に示す“重みを変化させた補正値”について説明すると次のとおりである。まず、ベクトルv、ベクトルv、補正ベクトルv´´、補正ベクトルv´´とは相互に同じであるものとする。
ここで、補正ベクトルv´´は、ベクトルvと、直前の補正ベクトルv´との加重平均により求められる。この加重平均は、例えば、重み設定部23が、上記式(A)における重み値αをα>0.5と設定することで求めることができる。
ベクトルvは、直前の補正ベクトルv´よりも大幅に大きいので、上記式(A)においてベクトルv(v;n=2)に適用する重み値(α)を大きくする一方で、直前の補正ベクトルv´(v´n−1;n=2)に適用する重み値(1−α)を小さくする。
これにより、補正ベクトルv´´には、ベクトルvが大きく反映された補正が施される。
この加重平均により求めた補正ベクトルにより得られる補正値P´´は、相加平均により求めた補正ベクトルにより得られる補正値P´と比べて、サンプル点Pとの差が小さいため、追従性のよい入力が得られる。
(処理の流れ)
次に、図3を用いて、手書入力装置1における手書入力データの補正処理の流れについて説明する。図3は、手書入力装置1における手書入力データの補正処理の流れの一例について示すフローチャートである。
図3に示すように、タッチパネル表示部30が手書入力を受け付けると(S11)、サンプル点取得部21が、当該手書入力による手書入力データを取得する(S12)。すなわち、サンプル点取得部21は、サンプリングにより得られる最新ベクトルを取得する。
次に、速度条件判定部22が、手書入力の速度の変化量または変化率を算出する(S13)。具体的には、速度条件判定部22は、過去ベクトル(元データの変位を示すベクトルまたは補正された変位を示すベクトル)と最新ベクトルとの間における速度の変化量または変化率を算出する(S13)。
さらに、速度条件判定部22は、上記変化量または変化率が閾値以上か否かを判定する(S14)。変位が閾値以上であれば(S14においてYES)、重み設定部23が、重みを計算し、補正データを生成するための重み値に設定する(S15)。すなわち、重み設定部23は、補正に用いる最新ベクトルおよび直前の補正ベクトルに応じて計算した重みを重み値に設定する。
一方、変位が閾値未満の場合(S14においてNO)、重み設定部23は、各変位に対して一定の重みを重み値に設定する(S16)。
次に、補正データ生成部24が、S15またはS16において設定された重み値を用いて補正データを生成する(S17)。
(重み付けに関するより詳細な説明)
以下において、手書入力装置1における重み付けに関するより詳細な説明を以下に記載する。
[重みを変化させるための条件]
以上では、S13およびS14において、速度条件判定部22が、速度の変化量に対する閾値または速度の変化率に対する閾値を判定に用いることについて説明したが、これらの閾値について以下に詳細に説明する。
[速度の変化量に対して閾値を設定する]
速度の変化量に対して閾値を設定する場合、以下のとおりに設定することができる。
[1] 予め設定しておいた定数aと、最新ベクトルVの大きさとの差を計算し、下記閾値Xに関する条件式(B−1)を満たす場合に重みを変更するようにしてもよい。
|V|−a > X ・・・(B−1)
上記式(B−1)において|V|は、ベクトルの大きさを表す。
[2] また、最新ベクトルの大きさと、過去ベクトルの大きさとの差を計算し、下記閾値Xに関する条件式(B−2)または(B−3)を満たす場合に重みを変更するようにしてもよい。
|V|−|Vn−1| > X ・・・(B−2)
または、
|V|−|V´n−1| > X ・・・(B−3)
[速度の変化率に対して閾値を設定する]
また、速度の変化率に対して閾値を設定する場合、以下のとおり、最新ベクトルの大きさと過去ベクトルの大きさとの変化率を計算し、下記閾値Xに係る条件式(B−4)〜(B−7)のいずれかを満たす場合に重みを変更するようにしてもよい。
|V|/|Vn−1| > X ・・・(B−4)
または、
|V|/|V´n−1| > X ・・・(B−5)
または、
(|V|―|Vn−1|)/|Vn−1| > X ・・・(B−6)
または、
(|V|―|V´n−1|)/|V´n−1| > X ・・・(B−7)
なお、上記条件式(B−1)〜(B−7)は、組み合わせて用いてもよい。
[重み値の設定方法]
上記“重みを変化させるための条件”を満たした場合、重み設定部23は、上記S15において、例えば、以下のとおり重み値を設定することができる。
[予め設定されている定数値を重み値として設定する]
[1] 定数値βを用いる
|V|−|Vn−1| > X を満たす場合、予め設定されている定数値βを重み値αとして設定することができる。
[2] 重み値テーブルを予め用意しておき、上記“重みを変化させるための条件”を満たした場合、速度の変化量または速度の大きさに応じて、重み値テーブルの値を参照し、重みを決定する
[2−1]重み値テーブルをβ[3]={0.6,0.7,0.8}と予め設定しておく。そして、速度の変化量と閾値Xとに応じて以下のとおり重み値αを設定する。
< |V|−|Vn−1| < X を満たす場合、β[0]={0.6}を重み値αとして設定する。
< |V|−|Vn−1| < X を満たす場合、β[1]={0.7}を重み値αとして設定する。
< |V|−|Vn−1| < X を満たす場合、β[2]={0.8}を重み値αとして設定する。
なお、上記に限られず、速度の変化率と閾値Xとに基づく重み値の設定を行っても構わない。すなわち、上記において、|V|―|Vn−1|に代えて、(|V|−|Vn−1|)/|Vn−1|を採用することができる。
[2−2]重み値テーブルをβ[3]={0.6,0.7,0.8}と予め設定しておく。そして、速度の大きさと閾値Xとに応じて以下のとおり重み値αを設定する。
< |V| <X を満たす場合、β[0]={0.6}を重み値αとして設定する。
< |V| <X を満たす場合、β[1]={0.7}を重み値αとして設定する。
< |V| <X を満たす場合、β[2]={0.8}を重み値αとして設定する。
[速度の変化等から求められる変数値を重み値として設定する]
速度の変化率または速度の大きさを所定の計算式に適用することで重み値αを設定してもよい。
[1] 最新の重み値をαとし、直前の重み値をαn−1とし、また予め定数bを設定しておき、下記式(C−1)に従って重み値αを設定する。
α = (|V|−|Vn−1|) × b + αn−1 ・・・ (C−1)
なお、上記式(C−1)において、|Vn−1|は、|V´n−1|を用いても構わない。
[2] 最新の重み値をαとし、予め定数bを設定しておき、下記式(C−2)に従って、重み値αを設定する。
α = |V|×b ・・・ (C−2)
〔実施形態2〕
以下、本発明の他の実施形態について、図4〜図9を用いて説明すれば、以下のとおりである。
まず、図4を用いて、本発明の他の実施形態である手書入力装置1Aの構成について説明すると次のとおりである。図4は、手書入力装置1Aの機能的な構成の一例について示す機能ブロック図である。図4に示す手書入力装置1Aは、ユーザーから手書入力による操作を受け付け、受け付けた手書入力を補正した手書入力データを生成し、補正後の手書入力データを出力する。手書入力装置1Aは、例示的には、タブレット端末や、スマートフォンなどの高機能携帯電話機等のタッチパネル入力装置を備える装置である。
手書入力装置1Aは、手書入力の角度の変化に応じて、手書入力に対する描画の追従性や、描画の滑らかさを調整する。
図4に示すように手書入力装置1Aは、記憶部10、制御部20、および、タッチパネル表示部30と、を備える構成である。
記憶部10は、各種データ、表示コンテンツおよびプログラムを記憶させておくものである。また、制御部20は、電子機器1の各種機能を統括的に制御するものである。制御部20は、例えば、タッチパネル表示部30における表示処理およびタッチ操作に応じた情報処理を制御する。記憶部10および制御部20の詳細については後述する。
タッチパネル表示部30は、ユーザーからの接触操作を受け付ける操作部31および画面表示を行う表示部32を備える。なお、操作部31および表示部32は、例示的に、ユーザーから見て操作部31および表示部32の順で積層されており、ユーザーが表示部32の表示画面を視認しながら、当該表示画面に対して接触操作(タッチ操作)を行うことができるようになっている。
操作部31は、表示部32の表示画面に対するユーザーの接触操作を検出して、当該接触操作に関する操作データを生成し、生成した操作データを制御部20に供給する。なお、操作データには、接触操作位置や、接触操作の向き、加速度および強さなどが含まれていてもよい。
以下では、説明のため、タッチパネル表示部30(操作部31)に対する手書入力操作(文字や曲線の手書入力等)を検出することで操作データを生成するものとする。また、手書入力操作を検出することにより生成された操作データのことを手書入力データと称する。
手書入力操作の検出方法に特に制限はなく、任意の検出手法を用いることができる。また、操作部31は、ユーザーの指によるタッチ操作だけでなく、スタイラスやタッチペンなどの入力器具Mを用いた接触操作にも対応している。
操作部31が接触操作位置を検出する具体的な手法としては、例えば、マトリクス・スイッチ、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式、静電容量方式、および、対象物の画像を検出する方式(光センサ方式)などが挙げられる。しかしながら、これに限られず、接触操作位置を検出する手法には、種々の手法を適宜適用することができる。なお、上記した接触操作位置を検出する手法には、「接触」だけでなく「近接」を検出する手法が含まれる。ただし、以下では、説明の便宜上、「接触」および「近接」の区別をすることなく、単に「接触」とのみ記載する。
また、操作部31は、所定の間隔により、接触操作の検出を実行し、上記手書入力データを生成する。手書入力データの詳細については後述する。
表示部32は、画像データを表示するための表示画面を有しており、制御部20から画像データを受信し、受信した画像データに基づいてその表示画面に画像を表示するものである。表示部32は、例えば、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、EL(Electroluminescence)ディスプレイなどにより実現することができる。
(記憶部の詳細)
次に、図4を引き続き参照しながら、記憶部10の詳細について説明する。図4に示すように記憶部10は、サンプル点履歴情報記憶部11、角度閾値記憶部12A、重み記憶部13、および補正データ履歴情報記憶部14を含む構成である。
サンプル点履歴情報記憶部11には、手書入力データが記憶される。手書入力データは、具体的には、タッチパネル表示部30におけるタッチ操作のサンプリングによって得られるサンプル点により構成される。よって、サンプル点履歴情報記憶部11には、サンプリングによって得られるサンプル点が時系列ごとに記憶される。
サンプル点は、例えば、タッチパネル表示部30における操作位置を示す座標値(例えば、X座標およびY座標から成る2次元座標)により表現されていてもよい。
なお、手書入力データには、サンプル点に加えて、前のサンプル点からの変位を示すベクトルが含まれていてもよい。また、手書入力データには、ベクトルの大きさや、角度が含まれていてもよい。また、ベクトルの角度は、基準となる方向(例えば、表示画面の座標系のX軸方向)と、ベクトルの方向との間の角度により表現されていてもよい。
角度閾値記憶部12Aには、タッチパネル表示部30において検出される手書入力の角度の変化量、および/または、変化率と比較するための閾値が記憶される。
重み記憶部13には、手書入力データの補正に用いるための重みに関する情報が記憶される。なお、重み記憶部13に記憶される重み情報は、重み付けを行うための値そのものであってもよいし、重み付けを行うための値を導出するための算出式であってもよい。
補正データ履歴情報記憶部14には、補正後の手書入力データ、すなわち補正データが記憶される。補正データは、手書入力データを構成するサンプル点の補正値、および、サンプル点の変位を示すベクトルの補正値(補正ベクトル)を含む。よって、補正データ履歴情報記憶部14には、サンプル点およびベクトルの補正値が時系列ごとに記憶される。
(制御部の詳細)
次に、図4をさらに参照しながら、制御部20の詳細について説明する。図4に示すように、制御部20は、サンプル点取得部21、角度条件判定部22A、重み設定部23A、補正データ生成部24A、および描画部25を備える構成である。
サンプル点取得部21は、タッチパネル表示部30における所定の間隔による接触操作の検出処理(すなわちサンプリング処理)を制御して、サンプル点を取得する。具体的には、サンプル点取得部21は、所定の間隔で、接触操作の検出を実行するようタッチパネル表示部30の操作部31に指示し、操作部31から手書入力データを取得し、手書入力データに基づいてサンプル点を取得する。言い換えれば、サンプル点取得部21は、タッチパネル表示部30において行われる手書入力をサンプリングして得られる複数のサンプル点を取得する。
また、サンプル点取得部21は、サンプル点間のベクトル(変位)を算出する。図5を用いて、サンプル点取得部21によるベクトル算出処理について説明すると次のとおりである。図5は、タッチパネル表示部30の表示画面において、ユーザーが左から右に水平に手書入力を行ったあとに手書入力方向を変化させる場合について示している。
図5の“元データ”に示すように、サンプル点が、P、P、P、P、およびPの順に取得されているとする。このときサンプル点取得部21は、P、P、P、およびPに対応するベクトルv、v、v、およびvをそれぞれ求める。
なお、図5では、Pが最新のサンプル点であり、ベクトルvが最新のベクトルである。
サンプル点取得部21は、サンプリングによって得られたサンプル点と、サンプル点に基づいて求めたベクトルと、ベクトルの大きさおよび角度とを、角度条件判定部22Aに供給するとともに、サンプル点履歴情報記憶部11に記憶する。
角度条件判定部22Aは、タッチパネル表示部30における手書入力の角度の変化量または変化率が閾値以上であるか否かを判定する。角度条件判定部22Aは、上記閾値を角度閾値記憶部12Aから取得することができる。
角度条件判定部22Aは、サンプル点履歴情報記憶部11に記憶されているベクトルの角度を取得して手書入力の角度を求めることができる。
また、角度条件判定部22Aは、例えば、手書入力の角度の変化を、(1)最新ベクトルの角度と、当該最新ベクトルよりも前に求められたベクトルの角度とに基づいて求めてもよいし、(2)最新ベクトルの角度と、過去の補正により得られた補正ベクトルの角度とに基づいて求めてもよい。
例えば、角度条件判定部22Aは、(1)最新ベクトルの角度と、当該最新ベクトルの直前のベクトルの角度とに基づいて変化を求めてもよいし、(2)最新ベクトルの角度と、当該最新ベクトルが取得される直前の補正により得られた補正ベクトルの角度とに基づいて手書入力の角度を求めてもよい。
重み設定部23Aは、手書入力データに対する補正を行うための重み値を設定する。詳細は後述するが、手書入力データの補正は、例示的に、最新ベクトルの角度と、直前の補正ベクトルの角度との重み付け加算により実行される。そこで、重み設定部23Aは、最新ベクトルに対する重み値と、直前の補正ベクトルに対する重み値とを設定する。
なお、手書入力データの補正は、“ベクトルの角度”ではなく、“ベクトル”を用いてもよい。すなわち、手書入力データの補正は、最新ベクトルと、直前の補正ベクトルとの重み付け加算により実行してもかまわない。以下において同様である。
重み設定部23は、最新ベクトルの角度に対する重み値を直前の補正ベクトルの角度に対する重み値と同一にしてもよい。
重み設定部23Aは、最新ベクトルの角度に対する重み値を直前の補正ベクトルの角度に対する重み値よりも大きくしてもよい。この場合、手書入力の追従性の向上を図ることができる。
また、重み設定部23Aは、最新ベクトルの角度に対する重み値を直前の補正ベクトルの角度に対する重み値よりも小さくしてもよい。この場合、手書入力の結果において描画される曲線の滑らかさを向上させることができる。
このため、重み設定部23Aが設定する重み値は描線をどのように表現したいのかに応じて、適宜大きくしたり小さくしたりすることができる。
重み設定部23Aは、例えば、以下のとおり重み値を設定することができる。
[設定A]ベクトルの成す角が大きく変化(角度が小さくなった、または、大きくなった)したときにおいて、その変化に対応して追従性を向上させたい場合は、重み値を大きくする。
[設定B]ベクトルの成す角が大きく変化(角度が小さくなった、または、大きくなった)したときにおいて、その変化に対応して曲線の滑らかさを向上させたい場合は、重み値を小さくする。
[設定C]ベクトルの成す角がそれほど変わらないのであれば、重み値を均等にする。
補正データ生成部24Aは、重み設定部23Aが設定した重み値を用いて手書入力データを補正することで補正データを生成する。また、補正データ生成部24は、補正ベクトルを補正データとして描画部25に供給するとともに、補正データを補正データ履歴情報記憶部14に記憶する。なお、補正データ生成部24Aにおける動作の詳細については後述する。
描画部25は、補正データ生成部24から供給される補正データに基づいて手書入力結果を示す画像データを生成し、生成した画像データを表示部32に供給する。
(手書入力データの補正の詳細)
以下において、補正データ生成部24Aにおける補正について具体的に説明する。具体的には、補正データ生成部24Aは、重み設定部23Aが設定した重み値を用いて補正角の角度計算を行って、最新ベクトルを補正することで補正ベクトルを得る。
図5を用いて、補正データ生成部24Aにおける手書入力データの補正の概略について説明すると次のとおりである。
図5に示す、サンプル点P、P、P、P、Pは、手書入力データの“元データ”であり、サンプリングにより得られたサンプル点を示している。
また、図5に、P、P、P、およびPの各サンプル点間の変位を示すベクトルv、v、v、およびvを示している。各ベクトルの大きさは略同じである。なお、ベクトルv、vの方向を角度の基準とする(すなわち、角度“0°”)。
図5に示すように、P間、およびP間は、手書入力は、左から右にかけて水平方向に行われる。その後、P間、およびP間において、手書入力方向が大きく変化する。
また、P´、およびP´は、“重みを一定にした補正値”を示している。PP´間、P´P´間の変位を示すベクトルを、それぞれV´、V´と示している。
また、P´´、およびP´´は、“重みを変化させた補正値”を示している。PP´´間、P´´P´´間の変位を示すベクトルを、それぞれV´´、V´´と示している。
なお、サンプル点P〜Pにかけては角度変化がないため、ベクトルv、vとその補正値v´、v´(v´´、v´´)は、同一とする。
このような場合において得られる“重みを一定にした補正値”および“重みを変化させた補正値”のそれぞれについて説明する。
[重みを一定にした補正値]
ベクトルvの補正ベクトルv´の角度は、ベクトルvの角度と、直前の補正ベクトルv´の角度との相加平均により得られる。すなわち、ベクトルvの角度と、直前の補正ベクトルv´の角度との均一な重み付けにより、補正ベクトルv´の角度を得ることができる。なお、上記に限られず、最新ベクトルの角度から過去の所定のサンプル点までの過去ベクトルの角度を用いる移動平均の算出式を用いても構わない。
図5では、ベクトルvにおいて大きく角度が変化しているが、補正ベクトルv´が角度“0°”であるので、補正ベクトルv´は、補正ベクトルv´の影響を大きく受ける。また、補正ベクトルv´についても同様である。
その結果、サンプル点P、Pと補正値P´、P´との間に大きな差が生じる。
なお、上記“[設定C]ベクトルの成す角がそれほど変わらないのであれば、重み値を均等にする。”の場合、重み設定部23Aは、上述のように均一な重みを設定してもよい。
[重みを変化させた補正値]
以下で説明する手書入力データの補正は、上述の“[設定A]ベクトルの成す角が大きく変化(角度が小さくなった、または、大きくなった)したときにおいて、その変化に対応して追従性を向上させたい場合は、重み値を大きくする。”に該当する。
ベクトルvの補正ベクトルv´´の角度は、ベクトルvの角度と、直前の補正ベクトルv´´の角度との加重平均により得られる。この時点の最新ベクトルvの角度に対して補正ベクトルv´´の角度よりも大きな重み付けを行う。よって、補正ベクトルv´´の角度では、ベクトルvの角度変化が大きく反映される。また、補正ベクトルv´´の角度についても同様である。
その結果、“重みを一定にした補正値”と比べて、より追従性がよく、より滑らかな曲線が得られる補正値P´´、P´´が得られる。
次に、補正データ生成部24Aにおいて補正値および補正角を算出する手法について具体的に説明する。
[補正角算出1]
補正データ生成部24Aは、重み設定部23が設定した重みを用いて、最新ベクトルおよび直前の補正ベクトルの角度の加重和を算出することで補正角を算出してもよい。この加重和は、以下の式(C)により表わすことができる。
θ´=αθ+(1−α)θ´n−1・・・(C)
上記式(C)において、θ´は、補正角、θは、最新ベクトルの角度、θ´は、最新の補正ベクトルの角度である。また、αは、重み値を示している。
なお、補正データ生成部24Aが上記式(C)を用いる手法について説明したが、これに限られない。補正データ生成部24は、上記式(C)に限られず、最新ベクトルの角度から過去の所定のサンプル点までのベクトルの角度を用いる加重移動平均の算出式を用いても構わない。
また、角度には、同じ角度を示すものであっても異なる表現がある。例えば、−10°と、350°とは表現方法は異なるが同じ角度を示す。このため、上記角度計算においては、以下の調整処理を行ってもよい。
図6に示すように、ユーザーがP、P、およびPの順で手書入力を行った場合を想定する。ここで、θ=30°とし、θ=−30°とすると角度の差は、θ−θ=−60°となり、角度の変化の大きさは、60°となる。
しかし、θ=330°と表現されていた場合、θ−θ=300°となる。よって、角度の差の計算結果が180°を超えている場合、その計算結果から360°を引くことで角度を調整してもよい。
例えば、上記の“θ−θ=300°”の場合、300°−360°=−60°と調整してもよい。
なお、計算結果が、−180°未満である場合、計算結果に360°を足せばよい。
[補正角算出2]
補正データ生成部24Aは、重み設定部23が設定した重みを用いて、最新ベクトルの角度の正弦または余弦および直前の補正ベクトルの角度の正弦または余弦の加重和を算出して得られる値に基づいて補正角を算出してもよい。
ここで、重み付けによる補正角の算出について説明する前に、まず図7を用いて、2つのベクトルの平均角度を求める手法について説明しておく。
上述のとおり角度には、同じ角度を示すものであっても異なる表現がある。図7に例示するように、角度θのベクトルVと、角度θのベクトルVとがある場合、次のとおりである(なお、|・|は、ベクトルの大きさを示す)。
まず、角度表現が、θ=45°、θ=−45°であれば、平均は、(θ+θ)/2=(45°+(−45°))/2=0°となる。これに対して、角度表現が、θ=45°、θ=315°であれば、平均は、(θ+θ)/2=(45°+(315°))/2=300°となる。
そこで、ベクトルVとベクトルVとの平均角度は、ベクトル(cos(θ)+cos(θ),sin(θ)+sin(θ))の角度を求めることで得ることができる。
X=cos(θ)+cos(θ)、Y=sin(θ)+sin(θ)とすると、下記数式(1)および(2)を計算することによって、平均角度を求めることができる。
Figure 2014067286
Figure 2014067286
上記数式(1)および(2)を、図7に示す例に適用すると、下記数式(3)に示すように、
Figure 2014067286
となり、所望の平均値“0”を得ることができる。
続いて、上記平均角度の算出方法を踏まえたうえで、図8を用いて、重み付けによる補正角の算出について説明する。図8に例示するP´n−3、P´n−2、P´n−1は、補正後のサンプル点である。また、図8には、P´n−3からP´n−2への変位を示す補正後のベクトルである補正ベクトルV´n−2、および、P´n−2からP´n−1への変位を示す補正後のベクトルである補正ベクトルV´n−1を示している。
すなわち、図8に示す例では、n−1番目のサンプル点までは補正値が算出されている。
ここで、最新のサンプル点Pの補正(すなわち、補正後のサンプル点P´n−1から最新のサンプル点Pへの変位を示す最新ベクトルVの補正)について以下に説明する。なお、最新ベクトルVは、補正ベクトルV´n−1と同じ大きさである(|V´n−1|=|V|)。
補正データ生成部24Aは、最新ベクトルVおよび補正ベクトルV´n−1に基づいて最新ベクトルVの補正後のベクトルV´を算出する。
より具体的には、上記平均角度の算出方法の場合において、平均角度を求めるときに導出したベクトルに重み値αを適用する。すなわち、補正ベクトル(X,Y)=(αcos(θ)+(1−α)cos(θ´n−1),αsin(θ)+sin(θ´n−1))の角度を求めれば、重み付けを適用した角度を算出することができる。なお、θは、最新ベクトルVの角度であり、θ´n−1は、補正ベクトルV´n−1の角度である。
よって、下記数式(4)により、補正後の角度θ´を求めることができる。
Figure 2014067286
以上の説明をまとめると、補正データ生成部24Aは、角度が、θ=45°、θ´n−1=−45°というような、−180°〜180°の間の表現である場合、以下の式(D)により補正値を求めてもよい。
θ´=αθ+(1−α)θ´n−1 ・・・(D)
また、補正データ生成部24Aは、角度が、θ=45°、θ´n−1=315°というような、0°〜360°の間の表現である場合、以下の数式(5)により補正値を求めればよい。
Figure 2014067286
(処理の流れ)
次に、図9を用いて、手書入力装置1Aにおける手書入力データの補正処理の流れについて説明する。図9は、手書入力装置1Aにおける手書入力データの補正処理の流れの一例について示すフローチャートである。
図9に示すように、タッチパネル表示部30が手書入力を受け付けると(S21)、サンプル点取得部21が、当該手書入力による手書入力データを取得する(S22)。すなわち、サンプル点取得部21は、サンプリングにより得られる最新ベクトルを取得する。
次に、角度条件判定部22Aが、手書入力の角度の変化量または変化率を算出する(S23)。具体的には、角度条件判定部22Aは、過去ベクトル(元データの変位を示すベクトルまたは補正された変位を示すベクトル)と最新ベクトルとの間における角度の変化量または変化率を算出する(S23)。
さらに、角度条件判定部22Aは、上記変化量または変化率が閾値以上か否かを判定する(S24)。変位が閾値以上であれば(S24においてYES)、重み設定部23Aが、重みを計算し、補正データを生成するための重み値に設定する(S25)。すなわち、重み設定部23Aは、補正に用いる最新ベクトルおよび直前の補正ベクトルに応じて計算した重みを重み値に設定する。
一方、変位が閾値未満の場合(S24においてNO)、重み設定部23Aは、各変位に対して一定の重みを重み値に設定する(S26)。
次に、補正データ生成部24Aが、S25またはS26において設定された重み値を用いて補正データを生成する(S27)。
(重み付けに関するより詳細な説明)
以下において、手書入力装置1Aにおける重み付けに関するより詳細な説明を以下に記載する。
[重みを変化させるための条件]
以上では、S23およびS24において、角度条件判定部22Aが、角度の変化量に対する閾値または角度の変化率に対する閾値を判定に用いることについて説明したが、これらの閾値について以下に詳細に説明する。
なお、以下において|・|は、絶対値を取ることを表わす。また、角度の差の絶対値(例えば、|θ−θ|)は、θ−θの計算結果が180°を超えている場合、その計算結果から360°を引いた後の値、また、計算結果が、−180°未満である場合、計算結果に360°を足した後の値に対して絶対値を取るものとする。
[角度の変化量に対して閾値を設定する]
角度の変化量に対して閾値を設定する場合、以下のとおりに設定することができる。
[1]予め設定しておいた定数aと、最新ベクトルVの角度θとの差を計算し、下記閾値Xに関する条件式(E−1)を満たす場合に重みを変更するようにしてもよい。
|θ−a| > X ・・・(E−1)
[2] また、最新ベクトルの角度と、過去ベクトルの角度との差を計算し、下記閾値Xに関する条件式(E−2)または(E−3)を満たす場合に重みを変更するようにしてもよい。
|θ−θn−1| > X ・・・(E−2)
または、
|θ−θ´n−1| > X ・・・(E−3)
[角度の変化率に対して閾値を設定する]
また、角度の変化率に対して閾値を設定する場合、以下のとおり、最新ベクトルの角度と過去ベクトルの角度との変化率を計算し、下記閾値Xに係る条件式(E−4)および(E−5)のいずれかを満たす場合に重みを変更するようにしてもよい。
(|θ|―|θn−1|)/|θn−1| > X ・・・(E−4)
または、
(|θ|―|θ´n−1|)/|θ´n−1| > X ・・・(E−5)
なお、上記条件式(E−1)〜(E−5)は、組み合わせて用いてもよい。
[重み値の設定方法]
上記“重みを変化させるための条件”を満たした場合、重み設定部23Aは、上記S25において、例えば、以下のとおり重み値を設定することができる。
[予め設定されている定数値を重み値として設定する]
[1] 定数値βを用いる
|θ−θn−1| > X を満たす場合、予め設定されている定数値βを重み値αとして設定することができる。
[2] 重み値テーブルを予め用意しておき、上記“重みを変化させるための条件”を満たした場合、角度の変化量または角度の大きさに応じて、重み値テーブルの値を参照し、重みを決定する
[2−1]重み値テーブルをβ[3]={0.6,0.7,0.8}と予め設定しておく。そして、角度の変化量と閾値Xとに応じて以下のとおり重み値αを設定する。
< |θ−θn−1| < X を満たす場合、β[0]={0.6}を重み値αとして設定する。
< |θ−θn−1| < X を満たす場合、β[1]={0.7}を重み値αとして設定する。
< |θ−θn−1| < X を満たす場合、β[2]={0.8}を重み値αとして設定する。
[2−2]重み値テーブルをβ[3]={0.6,0.7,0.8}と予め設定しておく。そして、角度の変化率と閾値Xとに応じて以下のとおり重み値αを設定する。
< |(θ−θ´n−1)/θ´n−1| <X を満たす場合、β[0]={0.6}を重み値αとして設定する。
< |(θ−θ´n−1)/θ´n−1| <X を満たす場合、β[1]={0.7}を重み値αとして設定する。
< |(θ−θ´n−1)/θ´n−1| <X を満たす場合、β[2]={0.8}を重み値αとして設定する。
[角度の変化等から求められる変数値を重み値として設定する]
角度の変化量または角度の変化率を所定の計算式に適用することで重み値αを設定してもよい。
[1] 最新の重み値をαとし、直前の重み値をαn−1とし、また予め定数bを設定しておき、下記式(F−1)に従って重み値αを設定する。
α = (|θ−θn−1|) × b + αn−1 ・・・ (F−1)
[2] 最新の重み値をαとし、予め定数bを設定しておき、下記式(F−2)に従って、重み値αを設定する。
α = |(θ−θn−1)/θn−1|×b ・・・ (F−2)
なお、上記式(F−1)および(F−2)において、θn−1に、θ´n−1を用いても構わない。
〔実施形態3〕
以下、本発明のさらに他の実施形態について、図10〜図12を用いて説明すれば、以下のとおりである。なお、説明の便宜上、実施形態2にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
まず、図10を用いて、本発明のさらに他の実施形態である手書入力装置1Bの構成について説明すると次のとおりである。図10は、手書入力装置1Bの機能的な構成の一例について示す機能ブロック図である。
手書入力装置1Aは、手書入力の角度の変化が所定の範囲(例えば、一定)に収まるよう、手書入力データを補正する。
図10に示す手書入力装置1Bと、図4に示した手書入力装置1Aとの相違点について説明すると次のとおりである。
図10に示す手書入力装置1Bは、図4に示した手書入力装置1Aにおいて次の構成変更を施したものである。まず、手書入力装置1Aの記憶部10において、指定変化率記憶部15を追加するとともに、角度閾値記憶部12Aと重み記憶部13とを省略している。また、手書入力装置1Aの制御部20において、変化率指定判定部26および角度算出部27、変化率指定部28を追加し、補正データ生成部24Aを、補正データ生成部24Bに変更し、さらに、角度条件判定部22A、重み設定部23Aを省略している。
以下、手書入力装置1Aにおいて追加・変更した構成である指定変化率記憶部15、変化率指定判定部26、角度算出部27、補正データ生成部24Bについて説明する。
(記憶部の追加構成)
指定変化率記憶部15は、手書入力の角度の変化率の許容範囲を示す指定値が設定される。指定値は、所定の範囲を示すものであってもよいし、定数値であってもよい。また、以下では、指定値が、直前の補正ベクトルと最新ベクトルとが成す角度の変化率を示すものとするが、これに限られない。指定値は、直前の補正ベクトルの角度に対する最新ベクトルの角度の変化率を指定するものであってもよい。
(制御部の追加・変更構成)
変化率指定判定部26は、指定変化率記憶部15に指定値が設定されているか否かを判定し、当該判定結果を角度算出部27に通知する。
角度算出部27は、ベクトルの角度を算出する。また、角度算出部27は、指定値が設定されている場合には、指定値に応じた補正角を算出する。
補正データ生成部24Bは、角度算出部27が算出する補正角に応じて手書入力データを補正する。
変化率指定部28は、指定変化率記憶部15に変化率の指定値を設定する。変化率指定部28は、ユーザーの操作部31等における操作に応じて指定値を設定してもよいし、制御部20において実行されるアプリケーションに応じて設定してもよい。
(手書入力データの補正の詳細)
以下において、補正データ生成部24Bにおける補正についてより具体的に説明する。図11を用いて、ベクトルの角度の変化率が一定になるようベクトルを補正し、滑らかな描画曲線を得る方法について例示的に説明する。なお、指定変化率記憶部15には、指定値として定数値が設定される。
図11に示すように、サンプル点Q、Q、Q、Q、Qは、手書入力データの“元データ”であり、サンプリングにより得られたサンプル点を示している。
また、図11には、Q、Q、Q、およびQの各サンプル点間の変位を示すベクトルr、r、r、およびrを示している。各ベクトルの大きさは略同じである。
ベクトルrは、水平方向に左から右へ向かう変位を示す。ここで、ベクトルrの方向を基準とする。すなわち、ベクトルrの角度は“0”である。また、ベクトルrの角度はθである。よって、ベクトルrおよびベクトルrの角度は、θである。
従って、以後のサンプリングにおいて、ベクトル間の成す角が一定であれば、すなわち、ベクトル間の成す角の変化率が0であれば、滑らかな曲線を描くことができる。
ここで、図示のとおり、サンプル点Qの次にサンプリングされるサンプル点Qにおけるベクトルrとベクトルrとが成す角度θが、θでない(図11では、θ>θ)ため、ベクトルの成す角の変化率が0にならない。そこで、ベクトル間の成す角の変化率を0にして滑らかな曲線を描くため、角度算出部27が補正角を算出し、当該補正角に基づいて補正データ生成部24Bがベクトルrを補正する。
角度算出部27は、例えば、補正角θ´=θを算出する。なお、このとき、角度の基準となるベクトルrとベクトルrとが成す角度は、2×θとなる。
補正データ生成部24Bは、ベクトルrを補正した補正ベクトルr´を算出する。補正ベクトルr´は、基準となる角度に対し、角度θ´´=θ´+θ=2×θを有する。
続いて、サンプル点Qの次にサンプリングされるサンプル点Qにおけるベクトルrとベクトルr´とが成す角度は、θでない。
角度算出部27は、補正角θ´を算出する。補正データ生成部24Bは、補正角θ´に基づいて補正ベクトルr´を生成する。補正ベクトルr´は、基準となる角度に対し、角度θ´´=θ´+θ´´=3×θを有する。
(処理の流れ)
次に、図12を用いて、手書入力装置1Bにおける手書入力データの補正処理の流れについて説明する。図12は、手書入力装置1Bにおける手書入力データの補正処理の流れの一例について示すフローチャートである。
図12に示すように、タッチパネル表示部30が手書入力を受け付けると(S31)、サンプル点取得部21が、当該手書入力による手書入力データを取得する(S32)。すなわち、サンプル点取得部21は、サンプリングにより得られる最新ベクトルを取得する。また、サンプル点取得部21は、最新ベクトルの角度を算出する(S33)。
次に、変化率指定判定部26が、変化率の指定の有無を判定する(S34)。すなわち、変化率指定判定部26は、指定値の設定があるか否かを判定する。指定値の設定がない場合(S34においてNO)、処理は終了する。
これに対して、指定値の設定がある場合(S35においてYES)、角度算出部27は、指定値に示される変化率に基づいて、直前の補正ベクトルと、最新ベクトルの補正ベクトルとが成す角を補正角として算出する(S36)。
次に、補正データ生成部24Bは、角度算出部27が算出した補正角を用いて、補正値を決定する(S37)。例えば、補正データ生成部24Bは、補正角と直前の補正ベクトルとを用いて、最新ベクトルの補正ベクトルを生成する(S37)。
〔まとめ〕
本発明の一態様に係る手書入力装置は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置において、サンプル点の変位の成す角度の変化に応じて、サンプル点の変位の新旧に応じた重み付けを用いてサンプル点の変位を補正することで上記手書入力データを生成する補正手段(補正データ生成部24A)を備える。
別の観点から言えば、本発明の一態様に係る手書入力装置は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置において、サンプル点の変位の成す角度の変化に応じて、補正対象サンプル点と、当該補正対象サンプル点の直前にサンプリングされた直近サンプル点との変位に対して、該直近サンプリング点よりも前のサンプル点の変位に対する重みよりも大きな重み付けを用いて補正対象サンプル点の変位を補正することで上記手書入力データを生成する補正手段を備える。
本発明の一態様に係る手書入力装置の制御方法は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置の制御方法において、サンプル点の変位の成す角度の変化に応じて、サンプル点の変位の新旧に応じた重み付けを用いてサンプル点の変位を補正することで上記手書入力データを生成する補正ステップを含む。
上記手書入力装置は、例示的には、スタイラスによる入力を受け付けるタブレット入力装置や、手書入力を受け付けるタッチパネルを備えるタッチパネル入力装置である。
上記サンプル点は、手書入力の入力位置を示すものであり、例えば、2次元座標、すなわちX座標、Y座標にて表現することができる。
また、上記サンプル点の変位とは、あるサンプル点と、該あるサンプル点の次の(前の)サンプル点との間における位置の変化のことである。サンプル点の変位は、例えば、あるサンプル点から別のサンプル点に向かうベクトルにより表現することができる。また、サンプル点をサンプリングするサンプリング間隔は任意に設定することができる。また、手書入力データは手書入力結果を表示するために用いられる描線データである。
また、上記サンプル点の変位の成す角度を測る基準は、任意に設定することができる。例えば、サンプル点の変位の成す角度は、P、P、およびPの3つのサンプル点がある場合、上記変位の成す角度の変化は、PとPとがなす角度を求めてもよい。
また、例えば、サンプル点の変位の成す角度は、X軸を角度の測る基準とし、変位の方向とX軸方向とがなす角度と定義することも可能である。
上記角度の変化は、PがX軸となす角度Qと、PがX軸となす角度Qとの差分または角度Qおよび角度Qの間の変化率であってもよい。
上記構成によれば、サンプル点の変位の成す角度の変化に応じて、サンプル点の変位の新旧に応じた重み付けを用いてサンプル点の変位を補正することができる。
サンプル点の変位の新旧に応じた重み付けとは、例えば、サンプル点が新しいほど大きな重み付けを適用するとともに、サンプル点が古いほど小さな重み付けを適用するということである。逆に、サンプル点が新しいほど小さな重み付けを適用するとともに、サンプル点が古いほど大きな重み付けを適用してもかまわない。なお、上記補正はサンプル点を検出する都度行ってもよい。また、上記重み付けの設定方法は、予め設定されている定数値を適用してもよいし、変位の成す角の変化に応じて設定される変数値を適用してもよい。
よって、上記構成によれば、上記変位の成す角度の変化が大きくなった場合、サンプル点が新しいほど大きな重み付けを用いてサンプル点の変位を補正し、手書入力による描線の追従性を向上させたり、サンプル点が新しいほど小さな重み付けを用いてサンプル点の変位を補正し、手書入力による描線を滑らかにさせたりすることができる。
このように、上記構成によれば、サンプル点の変位の補正に用いる重み付けを手書入力の入力角度に応じて適宜変更することで、手書入力の追従性の向上、および、円滑化の少なくともいずれかを図ることができるという効果を奏する。
さらに、本発明の一態様に係る手書入力装置では、上記補正手段は、上記サンプル点の変位の成す角度の変化が所定の閾値より大きくなったときに、より新しいサンプル点に対してより大きな重み付けを用いる補正を行ってもよい。
上記構成によれば、上記サンプル点の変位の成す角度の導出値の変化が大きくなったときに、より新しいサンプル点に対してより大きな重み付けを用いる補正を行う。
このため、手書入力の角度が大きくなったような場合において、より新しいサンプル点に対してより大きな重み付けを用いる補正を行う。
よって、過去のデータも考慮しつつ、より新しい入力データに近い補正値を算出することができ、これにより追従性と滑らかさとを両立させるような、よりよい描画を行うことができる。
さらに、本発明の一態様に係る手書入力装置では、上記補正手段は、上記閾値より大きくなった上記サンプル点の変位の成す角度の変化が小さくなったときに、より新しいサンプル点に対してより大きな重み付けを用いる補正を行ってもよい。
上記構成によれば、手書入力の角度が大きくなって、その後、当該角度が小さくなったような場合において、より新しいサンプル点に対してより大きな重み付けを用いる補正を行う。
よって、角度変化の前後において、追従性を確保することができる。
さらに、本発明の一態様に係る手書入力装置では、上記補正手段は、上記閾値より大きくなった上記サンプル点の変位の成す角度の変化が小さくなったときに、より新しいサンプル点に対してより小さな重み付けを用いる補正を行ってもよい。
上記構成によれば、手書入力の角度が大きくなって、その後、当該角度が小さくなったような場合において、より新しいサンプル点に対してより小さい重み付けを用いる補正を行う。
よって、角度変化の前後において、描画の滑らかさを維持することができる。
さらに、本発明の一態様に係る手書入力装置では、上記補正手段は、最新のサンプル点と該最新のサンプル点の一つ前のサンプル点との間における変位と、それ以前のサンプル点についての補正により得られた変位との加重平均を用いた補正を行ってもよい。
上記構成によれば、最新の変位と、ひとつ前の変位の補正値とを用いて補正を行うことができる。
この補正は例えば、“V´=αV+(1−α)V´n−1”という式により表わすことができる。ここで、V´は、対象となる補正による補正後の変位を表わす。また、V´n−1は、対象となる補正のひとつ前の補正により得られた変位を示す。Vは、補正前の変位を表わす。また、αは重み付け係数を表わす。
このように、最新の変位と、ひとつ前の変位の補正値とを用いるだけで済むので、所定数の変位を記憶しておき、記憶した所定数の変位を計算に用いる加重移動平均を補正に使う場合よりも、記憶領域が少なくて済む。
よって精度のよい補正を比較的簡便に行うことができる。
本発明の一態様に係る手書入力装置は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置において、サンプリングの都度、得られたサンプル点への第1の変位と、該第1の変位のひとつ前の第2の変位とが成す角度の変化率を算出する変化率算出手段(変化率指定判定部26)と、上記変化率が、所定の範囲内に収まるように、該第1の変位を補正することで上記手書入力データを生成する変位補正手段(角度算出部27、補正データ生成部24B)と、を備える。
本発明の一態様に係る手書入力装置の制御方法は、手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置の制御方法において、サンプリングの都度、得られたサンプル点への第1の変位と、該第1の変位のひとつ前の第2の変位とが成す角度の変化率を算出する変化率算出ステップと、上記変化率が、所定の範囲内に収まるように、該第1の変位を補正することで上記手書入力データを生成する変位補正ステップと、を含む。
サンプル点への第1の変位の変位前の点は、前回の補正により得られた変位の変位先である補正後のサンプル点、および、前回のサンプリングによって得られたサンプル点(いわゆる生データ)のいずれかであってもよい。また、上記第2の変位についても、その変位前後の点は、生データが示すものであってもよいし、該生データを補正した後の補正後データが示すものであってもよい。
上記構成によれば、サンプリングの都度、得られたサンプル点への第1の変位と、該第1の変位のひとつ前の第2の変位とが成す角度の変化率を算出するとともに、上記変化率が、所定の範囲内に収まるように、該第1の変位を補正する。当該所定の範囲は、描こうとしている描線の曲率に応じて定めることができる。
このため、手書入力データが表す描線において、曲線を表現するための各変位間の角度が極端に変化することを防ぐことができる。これにより、ユーザーの手書入力に基づいて、より滑らかな曲線を描画することができる。
さらに、本発明の一態様に係る手書入力装置では、上記変位補正手段は、上記変化率が、一定になるように上記第1の変位を補正してもよい。
上記構成によれば、サンプル点間において変化率を一定とするので、描線の曲率が一定となり、円弧を描線として描くことができる。これにより、ユーザーが手書入力により円を描こうとしている場合、多少、ユーザーが入力した手書入力による曲線がゆがんでいたとしても、補正により滑らかな円弧を描くことができる。
さらに、本発明の一態様に係る手書入力装置では、上記変位補正手段は、上記変化率が所定の閾値以上であれば、上記補正を行うことを抑制してもよい。
上記構成において、“抑制する”とは、上記補正を行う描画モードから、上記補正を行わない描画モードにモードが移行することを含む。
また、ユーザーが所定の閾値を超えるような角度の変化率で描画を行うときは、曲線を描くことをやめようとしている可能性が高い。
上記構成によれば、上記変化率が所定の閾値以上であれば、上記補正を行うことを抑制する。よって、曲線を描くことをやめようとしている可能性が高い場合において、補正を行うことを控え、よりユーザーの意図を反映した描画を行うことができる。
なお、上記手書入力装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させることにより手書入力装置をコンピュータにて実現させる手書入力装置制御プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
〔ソフトウェアによる実現例〕
最後に、手書入力装置1の各ブロック、特に制御部20の各部は、集積回路(ICチップ)上に形成された論理回路によってハードウェア的に実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェア的に実現してもよい。
後者の場合、手書入力装置1は、各機能を実現するプログラムの命令を実行するCPU、上記プログラムを格納したROM(Read Only Memory)、上記プログラムを展開するRAM(Random Access Memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである手書入力装置1の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記手書入力装置1に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
上記記録媒体としては、一時的でない有形の媒体(non-transitory tangible medium)、例えば、磁気テープやカセットテープ等のテープ類、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク類、ICカード(メモリカードを含む)/光カード等のカード類、マスクROM/EPROM/EEPROM(登録商標)/フラッシュROM等の半導体メモリ類、あるいはPLD(Programmable logic device)やFPGA(Field Programmable Gate Array)等の論理回路類などを用いることができる。
また、手書入力装置1を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL(Asymmetric Digital Subscriber Line)回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、IEEE802.11無線、HDR(High Data Rate)、NFC(Near Field Communication)、DLNA(Digital Living Network Alliance)、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
本発明は、タブレット端末や、スマートフォンなどの高機能携帯電話機等のタッチパネル入力装置を備える装置に利用することができる。
1、1A、1B 手書入力装置
10 記憶部
11 サンプル点履歴情報記憶部
12 速度閾値記憶部
12A 角度閾値記憶部
13 重み記憶部
14 補正データ履歴情報記憶部
15 指定変化率記憶部
20 制御部
21 サンプル点取得部
22 速度条件判定部
23 重み設定部
24、24A、24B 補正データ生成部
25 描画部
26 変化率指定判定部
27 角度算出部
28 変化率指定部
30 タッチパネル表示部
31 操作部
32 表示部

Claims (11)

  1. 手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置において、
    サンプル点の変位の成す角度の変化に応じて、サンプル点の変位の新旧に応じた重み付けを用いてサンプル点の変位を補正することで上記手書入力データを生成する補正手段を備えることを特徴とする手書入力装置。
  2. 上記補正手段は、上記サンプル点の変位の成す角度の変化が所定の閾値より大きくなったときに、より新しいサンプル点に対してより大きな重み付けを用いる補正を行うことを特徴とする請求項1に記載の手書入力装置。
  3. 上記補正手段は、上記閾値より大きくなった上記サンプル点の変位の成す角度の変化が小さくなったときに、より新しいサンプル点に対してより大きな重み付けを用いる補正を行うことを特徴とする請求項2に記載の手書入力装置。
  4. 上記補正手段は、上記閾値より大きくなった上記サンプル点の変位の成す角度の変化が小さくなったときに、より新しいサンプル点に対してより小さな重み付けを用いる補正を行うことを特徴とする請求項2に記載の手書入力装置。
  5. 上記補正手段は、最新のサンプル点と該最新のサンプル点の一つ前のサンプル点との間における変位と、それ以前のサンプル点についての補正により得られた変位との加重平均を用いた補正を行うことを特徴とする請求項1から4のいずれか1項に記載の手書入力装置。
  6. 手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置において、
    サンプリングの都度、得られたサンプル点への第1の変位と、該第1の変位のひとつ前の第2の変位とが成す角度の変化率を算出する変化率算出手段と、
    上記変化率が、所定の範囲内に収まるように、該第1の変位を補正することで上記手書入力データを生成する変位補正手段と、を備えることを特徴とする手書入力装置。
  7. 上記変位補正手段は、上記変化率が、一定になるように上記第1の変位を補正することを特徴とする請求項6に記載の手書入力装置。
  8. 上記変位補正手段は、上記変化率が所定の閾値以上であれば、上記補正を行うことを抑制することを特徴とする請求項6または7に記載の手書入力装置。
  9. 請求項1から8のいずれか1項に記載の手書入力装置を動作させる手書入力装置制御プログラムであって、コンピュータを上記の各手段として機能させるための手書入力装置制御プログラム。
  10. 手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置の制御方法において、
    サンプル点の変位の成す角度の変化に応じて、サンプル点の変位の新旧に応じた重み付けを用いてサンプル点の変位を補正することで上記手書入力データを生成する補正ステップを含むことを特徴とする手書入力装置の制御方法。
  11. 手書入力をサンプリングして得られる複数のサンプル点に基づいて、描線表示のための手書入力データを生成する手書入力装置の制御方法において、
    サンプリングの都度、得られたサンプル点への第1の変位と、該第1の変位のひとつ前の第2の変位とが成す角度の変化率を算出する変化率算出ステップと、
    上記変化率が、所定の範囲内に収まるように、該第1の変位を補正することで上記手書入力データを生成する変位補正ステップと、を含むことを特徴とする手書入力装置の制御方法。
JP2012213039A 2012-09-26 2012-09-26 手書入力装置、手書入力プログラム、および手書入力装置の制御方法 Pending JP2014067286A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012213039A JP2014067286A (ja) 2012-09-26 2012-09-26 手書入力装置、手書入力プログラム、および手書入力装置の制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012213039A JP2014067286A (ja) 2012-09-26 2012-09-26 手書入力装置、手書入力プログラム、および手書入力装置の制御方法

Publications (1)

Publication Number Publication Date
JP2014067286A true JP2014067286A (ja) 2014-04-17

Family

ID=50743605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012213039A Pending JP2014067286A (ja) 2012-09-26 2012-09-26 手書入力装置、手書入力プログラム、および手書入力装置の制御方法

Country Status (1)

Country Link
JP (1) JP2014067286A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6022137B1 (ja) * 2016-03-22 2016-11-09 三菱電機株式会社 座標補正装置、座標補正方法及び座標補正プログラム
CN110515527A (zh) * 2019-07-12 2019-11-29 沈阳美行科技有限公司 一种书写笔迹显示方法、装置及相关系统
JP2020091754A (ja) * 2018-12-06 2020-06-11 セイコーエプソン株式会社 表示装置、表示システム及び表示方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09106321A (ja) * 1995-10-11 1997-04-22 Canon Inc 座標入力方法及びその装置
JP2004303019A (ja) * 2003-03-31 2004-10-28 Sanyo Electric Co Ltd 表示制御装置及び表示制御装置を実装した携帯通信端末
JP2011123750A (ja) * 2009-12-11 2011-06-23 Panasonic Corp 座標入力装置、携帯端末装置、及び座標入力方法
WO2011119483A1 (en) * 2010-03-24 2011-09-29 Neonode Inc. Lens arrangement for light-based touch screen

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09106321A (ja) * 1995-10-11 1997-04-22 Canon Inc 座標入力方法及びその装置
JP2004303019A (ja) * 2003-03-31 2004-10-28 Sanyo Electric Co Ltd 表示制御装置及び表示制御装置を実装した携帯通信端末
JP2011123750A (ja) * 2009-12-11 2011-06-23 Panasonic Corp 座標入力装置、携帯端末装置、及び座標入力方法
WO2011119483A1 (en) * 2010-03-24 2011-09-29 Neonode Inc. Lens arrangement for light-based touch screen

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6022137B1 (ja) * 2016-03-22 2016-11-09 三菱電機株式会社 座標補正装置、座標補正方法及び座標補正プログラム
WO2017163297A1 (ja) * 2016-03-22 2017-09-28 三菱電機株式会社 座標補正装置、座標補正方法及び座標補正プログラム
CN108700961A (zh) * 2016-03-22 2018-10-23 三菱电机株式会社 坐标校正装置、坐标校正方法及坐标校正程序
JP2020091754A (ja) * 2018-12-06 2020-06-11 セイコーエプソン株式会社 表示装置、表示システム及び表示方法
JP7238371B2 (ja) 2018-12-06 2023-03-14 セイコーエプソン株式会社 表示装置、表示システム及び表示方法
CN110515527A (zh) * 2019-07-12 2019-11-29 沈阳美行科技有限公司 一种书写笔迹显示方法、装置及相关系统
CN110515527B (zh) * 2019-07-12 2022-10-18 沈阳美行科技股份有限公司 一种书写笔迹显示方法、装置及相关系统

Similar Documents

Publication Publication Date Title
US10388004B2 (en) Image processing method and apparatus
US9547391B2 (en) Method for processing input and electronic device thereof
US8811951B1 (en) Managing display of private information
AU2014315443B2 (en) Tilting to scroll
US10186062B2 (en) Contour segmentation apparatus and method based on user interaction
US10228840B2 (en) Method of controlling touch function and an electronic device thereof
US20120139952A1 (en) Image transmission method, device, and computer-readable storage medium storing image transmission program
WO2017163297A1 (ja) 座標補正装置、座標補正方法及び座標補正プログラム
JP5269964B2 (ja) 電子機器及び映像処理方法
CN107438812B (zh) 信息处理设备、信息处理方法和程序
TW201435671A (zh) 顯示方法、電子裝置以及電腦程式產品
JPWO2012111194A1 (ja) 入力装置、入力方法およびプログラム
US20170192589A1 (en) Method and device for adjusting object attribute information
JP6911834B2 (ja) 情報処理装置、情報処理方法、およびプログラム
TW202013316A (zh) 人臉圖像的處理方法及裝置、電子設備和儲存介質
WO2015196715A1 (zh) 图像重定位方法、装置及终端
CN107277346A (zh) 一种图像处理方法及终端
US9001033B2 (en) Coordinate information updating device
JP2014067286A (ja) 手書入力装置、手書入力プログラム、および手書入力装置の制御方法
JP6100064B2 (ja) 電子機器および画像処理方法
KR20140008041A (ko) 방향 적응적 영상 보간 방법 및 그 전자 장치
TW201421298A (zh) 修正觸碰位置的方法
WO2021189514A1 (zh) 一种触摸交互方法、装置、终端设备及存储介质
JP2014067285A (ja) 手書入力装置、手書入力プログラム、および手書入力装置の制御方法
CN111126101B (zh) 关键点位置的确定方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150318

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160223

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160823