画像処理装置、画像処理システム、画像処理方法及びプログラム
【課題】画面のスクロールの操作性を格段に高めるとともに、画面の視認性を向上させる。
【解決手段】本発明の情報処理装置100は、ユーザの操作に応じた位置情報を取得する位置情報取得部111と、位置情報に基づいて、ユーザの操作に応じて移動するポインタ300の位置を設定するポインタ位置設定部113と、ポインタの周囲に所定の領域を設定する領域設定部114と、領域に対するポインタ300の相対的な位置に基づいて画面のスクロール処理を行う画像処理部130と、を備える。
【解決手段】本発明の情報処理装置100は、ユーザの操作に応じた位置情報を取得する位置情報取得部111と、位置情報に基づいて、ユーザの操作に応じて移動するポインタ300の位置を設定するポインタ位置設定部113と、ポインタの周囲に所定の領域を設定する領域設定部114と、領域に対するポインタ300の相対的な位置に基づいて画面のスクロール処理を行う画像処理部130と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理システム、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
近時においては、パーソナルコンピュータ(PC)等の装置において、ユーザによる操作を実現するため、キーボードとともにマウスが広く用いられている。ユーザは、マウスを用いることにより、表示画面を参照しながらクリック操作や画面のスクロール操作等を容易に行うことができる。例えば下記の特許文献1には、マウスに関連して、マウスを容易に保持させることを想定した技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−61617号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、画面のスクロール操作を行う場合、ユーザによる操作が画面のスクロールの動きに直接的に反映されてしまうと、画面のスクロールの動きに細かい揺れなどが生じてしまい、画面の視認性が低下するという問題があった。同様に、ユーザによる操作が画面のスクロールの動きに直接的に反映されてしまうと、スクロール速度が細かく増減してしまい、やはり画面の視認性が低下してしまうという問題があった。また、従来のマウスデバイス等による表示画像のスクロール操作においては、ドラッグ方向の絶対方向を基準にスクロール方向を算出、決定するものであり、スクロール方向の時系列的な微調整が困難であった。また、マウスデバイスによる表示画像のスクロール操作においては、ポインタが画面上を移動する位置と、スクロールの移動する位置が対応しており、スクロール中のポインタを、スクロールの移動距離と関係なく移動することができなかった。
【0005】
また、上記従来の技術では、マウスによって画面をスクロールする場合、そのスクロール速度は、マウスを操作する速度によって決定される。この場合、画面のスクロール速度を速くしようとすると、ユーザは机などの上に載置されてマウスを素早く移動させる必要があり、煩雑な操作が必要となっていた。特に、画面のスクロール量を大きくして、且つスクロール速度をより速くしようとすると、マウスを比較的長い距離で素早く移動させる必要があり、マウスの移動範囲が非常に大きくなり限られたスペースの机上等では操作が困難になる場合があった。このため、マウスを移動した後、マウスを元の位置に戻して再度スクロールを行うといった、スクロール操作を複数に分けて行う必要が生じ、非常に煩雑な操作が要求されていた。
【0006】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、画面のスクロールの操作性を格段に高めるとともに、画面の視認性を向上させることが可能な、新規かつ改良された画像処理装置、画像処理システム、画像処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある観点によれば、ユーザの操作に応じた位置情報を取得する位置情報取得部と、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するポインタ位置設定部と、前記ポインタの周囲に所定の領域を設定する領域設定部と、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う画像処理部と、を備える、画像処理装置が提供される。
【0008】
また、ユーザの操作に応じて、画面のスクロール速度に関する情報を取得するスクロール速度情報取得部を備え、前記画像処理部は、前記スクロール速度に関する情報に基づいて画面のスクロールを行うものであってもよい。
【0009】
また、前記スクロール速度に関する情報は、ユーザが操作する操作入力装置のキーの押し下げ量に応じて得られた情報であってもよい。
【0010】
また、前記領域に対する前記ポインタの相対的な位置に基づいてスクロール速度を決定するスクロール速度決定部を備え、前記画像処理部は、前記スクロール速度に基づいて画面のスクロールを行うものであってもよい。
【0011】
また、前記領域に対する前記ポインタの相対的な位置に基づいてスクロール方向を決定するスクロール方向決定部を備え、前記画像処理部は、前記スクロール方向に基づいて画面のスクロールを行うものであってもよい。
【0012】
また、前記画像処理部は、画面上に前記ポインタを表示する処理を行うものであってもよい。
【0013】
また、前記画像処理部は、画面上に前記ポインタとともに前記領域を表示する処理を行うものであってもよい。
【0014】
また、前記画像処理部は、画面のスクロール速度に応じて前記ポインタの形状を変化させて表示する処理を行うものであってもよい。
【0015】
また、前記画像処理部は、画面のスクロール方向に応じて前記領域の形状を変化させて表示する処理を行うものであってもよい。
【0016】
また、前記領域に対する前記ポインタの相対的な位置に基づいて得られた画面のスクロール方向が所定の角度範囲に含まれる場合は、当該角度範囲内に予め定められた1の方向に画面のスクロールを行うものであってもよい。
【0017】
また、上記課題を解決するために、本発明の別の観点によれば、ユーザによる操作が行われ、操作に応じた情報が入力される操作入力装置と、ユーザの操作に応じた位置情報を取得する位置情報取得部と、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するポインタ位置設定部と、前記ポインタの周囲に所定の領域を設定する領域設定部と、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う画像処理部と、を有する画像処理装置と、を備える画像処理システムが提供される。
【0018】
また、上記課題を解決するために、本発明の別の観点によれば、ユーザの操作に応じた位置情報を取得するステップと、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するステップと、前記ポインタの周囲に所定の領域を設定するステップと、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行うステップと、を備える画像処理方法が提供される。
【0019】
また、上記課題を解決するために、本発明の別の観点によれば、ユーザの操作に応じた位置情報を取得する手段、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定する手段、前記ポインタの周囲に所定の領域を設定する手段、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う手段、としてコンピュータを機能させるためのプログラムが提供される。
【発明の効果】
【0020】
本発明によれば、画面のスクロールの操作性を格段に高めるとともに、画面の視認性を向上させることが可能な画像処理装置、画像処理システム、画像処理方法及びプログラムを提供することが可能となる。
【図面の簡単な説明】
【0021】
【図1】本発明の一実施形態に係るシステムの構成を示す模式図である。
【図2】操作入力装置の構成を示す模式図である。
【図3】スクロール操作の概念を説明するための模式図である。
【図4】スクロール操作を表す概念モデルを示す模式図である。
【図5】図4に示す概念モデルに従って、ポインタの動きに伴って仮想的な円が画面内で移動する様子を示す模式図である。
【図6】図5において、円の位置を算出する処理の一例を示す模式図である。
【図7】ポインタの位置が円の中心Oから離れた場合に、中心Oに対するポインタの移動方向に画面のスクロールを行う様子を示す模式図である。
【図8】上方向にスクロールした後、下方向にスクロールする場合を示す模式図である。
【図9】円の中に表示されたポインタを詳細に示す模式図である。
【図10】ポインタが、長さLの中点を基準として、スクロール速度が速いほど長さLが大きくなる様子を示す模式図である。
【図11】円を画面上に表示した場合に、円の形を変形させる例を示す模式図である。
【発明を実施するための形態】
【0022】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0023】
なお、説明は以下の順序で行うものとする。
1.本実施形態のシステム構成
2.本実施形態による画面のスクロール操作
3.スクロール速度の調節について
4.本実施形態のシステムにおける処理
【0024】
[1.本実施形態のシステム構成]
まず、図1を参照して、本発明の一実施形態に係るシステムの構成について説明する。図1に示すように、本実施形態に係るシステムは、情報処理装置100と、操作入力装置200とを有して構成されている。情報処理装置100は、例えばパーソナルコンピュータ(PC)などの装置である。また、操作入力装置200は、例えばマウスなどの装置である。本システムでは、ユーザが操作入力装置200を操作することにより、情報処理装置100の画像表示部140に表示される画面(例えば地図など)をスクロールすることができる。なお、操作入力装置200はマウスに限定されるものではない。操作入力装置200は、例えばタッチパネル、キーボード、またはその他の入力部により操作される装置であっても良い。
【0025】
図1に示すように、情報処理装置100は、演算部110、メモリ120、画像処理部130、画像表示部140を有して構成される。また、操作入力装置200は、クリック検出部(検出スイッチ)210、ポインティングセンサー220、感圧センサー230、コンバータ240,250、A/Dインタフェース260を有して構成される。なお、図1に示す各構成要素は、ハードウェア(回路)、またはCPU(中央演算処理装置)とこれを機能させるためのプログラム(ソフトウェア)から構成されることができる。
【0026】
図2は、本実施形態に係る操作入力装置200の構成を示す模式図である。なお、図2では、操作入力装置200としてマウスを例示するが、操作入力装置200はマウスに限定されるものではなく、例えばキーボード式の入力装置、タッチパネル式の入力装置などであってもよい。
【0027】
図2(A)は、操作入力装置200を上方から見た平面図を示している。また、図2(B)は、操作入力装置200を側面から見た状態を示しており、ユーザが手で操作入力装置200を操作している様子を示している。
【0028】
図2(A)に示すように、操作入力装置200には、実行キー(クリック部)212が設けられている。ユーザは、実行キー212を押すことにより、通常のクリック操作を行うことができる。クリック操作は、クリック検出部210によって検出される。
【0029】
また、本実施形態の操作入力装置200は、実行キー212の押し下げによりクリック操作が行われ、更に実行キー212が押し下げられると、実行キー212の動きが板バネ214によって感圧センサー230に伝わり、感圧センサー230により押し下げの圧力が検出される。感圧センサー230で検出される圧力は、実行キー212の押し下げ量の増加に応じて増加する。従って、感圧センサー230は、ユーザによる実行キー212の押し下げ量に応じた圧力を検出することができる。
【0030】
このため、図2(B)に示すように、先ず、ユーザが初期状態から“a”の位置まで実行キー212を押し下げると、クリック検出部210に含まれるメカニカルスイッチが導通し、クリックが検出される。これにより、ユーザによるクリック操作が実行される。ユーザが“a”の位置から更に実行キー212を押し下げると、感圧センサー230により押し下げの圧力が検出される。これにより、感圧センサー230において、ユーザによる実行キー212の押し下げ量に応じた圧力が検出される。
【0031】
後で詳細に説明するが、本実施形態では、感圧センサー230で検出された、実行キー212の押し下げ量に応じた圧力に応じて、スクロール速度を調整するようにしている。これにより、ユーザは1つの実行キー212を操作することで、クリック操作と、スクロール速度の調整とを行うことが可能である。
【0032】
[2.本実施形態による画面のスクロール操作]
次に、本実施形態による画面のスクロール操作について説明する。図3は、本実施形態によるスクロール操作の概念を説明するための模式図である。図3に示すように、情報処理部100の画像表示部140には、ユーザによる操作入力装置200の操作に応じて移動するポインタ300が表示される。また、ポインタ300の周囲には、所定の半径を有する仮想的な円310が設定される。なお、円310は、通常は画像表示部140には表示されないものとするが、所定の操作によって画像表示部140に表示することもできる。また、円310を常時表示するものとしても良い。
【0033】
そして、本実施形態では、操作入力装置200のスクロール操作によって操作されるポインタ300と、ポインタ300の周囲に設定される円310との位置関係に応じてスクロール操作を行う。
【0034】
一般的なスクロール操作では、マウスの位置に応じてポインタが移動すると、ポインタの動きに応じて画面のスクロールが行われる。換言すれば、ポインタの動きと画面のスクロールの動きとは1対1で対応している。一方、本実施形態では、ポインタ300の動きと仮想的な円310の相対的な位置関係に応じてスクロールが行われる。
【0035】
図4は、本実施形態のスクロール操作を表す概念モデルを示す模式図である。図4に示す概念図においては、ポインタ300が軸400に対応し、円310が円筒410に対応している。図4の概念モデルでは、軸400が移動すると、軸400が円筒410の内面に接触した場合に、円筒410が軸400とともに移動する。一方、軸400が円筒410の内部で移動し、軸400が円筒410の内面に接触しない場合は、軸400のみが移動し、円筒410は移動しない。本実施形態では、この概念モデルのように、ユーザが軸400(ポインタ300)を移動した場合に、軸400が円筒410の内部で移動し、円筒410が移動しない場合は、画面のスクロールを行わない。一方、ユーザが軸400を移動した場合に、軸400が円筒410の内面に接して、軸400とともに円筒410が動く場合は、画面のスクロールを行う。
【0036】
図5は、図4に示す概念モデルに従って、ポインタ300の動きに伴って仮想的な円310が画面内で移動する様子を示す模式図である。先ず、初期状態では、表示画面が画面をスクロールさせるモードに設定されていない。このため、ユーザが操作入力装置200を机上などで動かしても、画面のスクロールは行われず、ポインタ300の位置のみが操作入力装置200の位置に応じて移動する。ユーザが実行キー212を押してクリック操作を行い、クリック検出部210がクリック操作を検出すると、スクロールが可能な状態(スクロールがアクティブな状態)となる。この状態で、ユーザ300が操作入力装置200を机上などで動かすと、ポインタ300が仮想的な円310の中で移動する。そして、図5に示す概念モデルで説明したように、ポインタ300(軸400)が仮想的な円310(円筒410)の輪郭に接すると、ポインタ300(軸400)とともに円310(円筒410)がポインタ300の移動方向に移動する。そして、図5の例では、円310の移動方向に沿って画面がスクロールする。つまり、図4において、ユーザが軸400を動かした際に、軸400とともに円筒410が動いた場合のみ、スクロールが行われるような操作を実現できる。
【0037】
このような画面のスクロールによれば、図5中に示す円310では、ポインタ300が円310の輪郭に接しているため、ポインタ300の動きとともに円310が移動し、円310の移動方向に画面がスクロールする。一方、図4の円310aに示すように、円310aの内部でポインタ300が移動した場合は、円310は移動しないため、画面のスクロールは行われない。
【0038】
図6は、図5において、円310の位置を算出する処理の一例を示す模式図であって、ポインタ300の位置とスクロール方向を決定する円310の関係式を示している。図5中では、円310を円c1として示し、ポインタ300をポインタp1として示している。ここで、c1._xは円c1の中心のx座標を、c1._yは円310の中心のy座標を、それぞれ示している。円c1内に位置するポインタp1と、円c1の中心との距離c1kyoriを算出し、c1kyoriと円c1の半径とを比較する。そして、c1kyori≦rの場合は、円c1は移動せず、c1._xとc1._yの値は変化しない。
【0039】
一方、c1kyori>rの場合は、ポインタが円c1の外に位置するため、円c1をポインタの位置に応じて移動する。ここでは、以下の式によりポインタの位置の角度degを算出する。
deg =
Math.PI*0.5 - Math.atan2( p1._x- c1._x , p2._y - c1._y)
そして、図6に示すように、c1._xとc1._yの値を、角度degのコサイン成分、サイン成分だけそれぞれ増減する。これにより、新たな円c1の位置を算出することができる。
【0040】
図5では、円310がポインタ300と共に移動した場合に画面のスクロールが行われるものとした。一方、ポインタ300の位置が円310の中心Oと一致している場合は、スクロールを行わず、ポインタ300の位置が円310の中心Oから離れた場合に、中心Oに対するポインタ300の移動方向に画面のスクロールを行うようにしても良い。
【0041】
図7は、ポインタ300の位置が円310の中心Oから離れた場合に、中心Oに対するポインタ300の移動方向に画面のスクロールを行う様子を示す模式図である。ここでは、「富士山」の画像が表示されている画面をスクロールさせる場合について説明する。
【0042】
図7(A)は、画面を上方向にスクロールさせる場合を示している。先ず、画面1に示すように、操作入力装置200の実行キー212をクリックすると、スクロールが可能な状態となる。この状態で、画面2に示すように、ポインタ300の位置を円310の中心Oよりも上方向に移動すると、中心Oに対するポインタ300の移動方向に画面がスクロールする。従って、画面の範囲が上方向にスクロールし、「富士山」を含む画面全体が下方向(矢印方向)に移動する。
【0043】
次に、画面3に示すように、スクロールをしながら更にポインタ300の位置を円内の上方向に移動すると、ポインタ300が円310の縁(輪郭)と接する。この状態においても、画面2と同様に、画面は上方向にスクロールし、「富士山」は下に移動する。
【0044】
次に、ポインタ300が円310の縁と接した状態で、更にポインタ300を上方向に移動すると、画面4に示すように、ポインタ300が円310とともに画面内で上方向に移動する。従って、画面4に示すように、ポインタ300と円310は、画面内で中央よりも上に位置した状態となる。この状態においても、画面2、画面3と同様に、画面は上方向に移動し、「富士山」は下に移動する。
【0045】
図7(B)は、画面を右方向にスクロールさせる場合を示している。先ず、画面1に示すように、操作入力装置200の実行キー212をクリックすると、スクロールが可能な状態となる。この状態で、画面2に示すように、ポインタ300の位置を円310の中心Oよりも右方向に移動すると、中心Oに対するポインタ300の移動方向に画面がスクロールする。従って、画面の範囲が右方向にスクロールし、「富士山」含む画面全体が左方向(矢印方向)に移動する。
【0046】
次に、画面3に示すように、スクロールをしながら更にポインタ300の位置を円内の右方向に移動すると、ポインタ300が円310の縁(輪郭)と接する。この状態においても、画面2と同様に、画面は右方向に移動し、「富士山」は左に移動する。
【0047】
次に、ポインタ300が円310の縁と接した状態で、更にポインタ300を右方向に移動すると、画面4に示すように、ポインタ300が円310とともに画面内で右方向に移動する。従って、画面4に示すように、ポインタ300と円310は、画面内で中央よりも右に位置した状態となる。この状態においても、画面2、画面3と同様に、画面は右方向に移動し、「富士山」は左に移動する。
【0048】
図7(C)は、右から上に向かうように放物線状に画面をスクロールさせる場合を示している。先ず、画面1に示すように、操作入力装置200の実行キー212をクリックすると、スクロールが可能な状態となり、円310の中心Oに対してポインタ300を右に移動することで、画面が右に移動する。この状態で、画面2に示すように、ポインタ300の位置を円210内の右側から右上に移動すると、画面の範囲が右上にスクロールし、「富士山」を含む画面全体が右下方向(矢印方向)に移動する。
【0049】
次に、画面3に示すように、スクロールをしながら更にポインタ300の位置を円310内の上方に向かって移動すると、スクロールの方向が、円310の中心に対してポインタ300が位置する方向(角度αの方向)に変わる。これにより、スクロールの方向がより上方向となるように変化する。
【0050】
次に、画面4に示すように、スクロールをしながらポインタ300の位置が円310内の最上部に位置すると、スクロールの方向が、円310の中心に対してポインタ300が位置する方向(90°方向)に変わる。これにより、スクロールの方向が上方向(画面4中に示す矢印方向)となり、「富士山」は下へ移動する。
【0051】
なお、ポインタ300が位置する方向が90°を中心とする所定範囲(例えば85°から95°の範囲)に入る場合は、スクロールの方向を90°の方向としても良い。これにより、ユーザは、ポインタ300の位置を厳密に90°方向に設定しなくても、90°方向へのスクロールを行うことができる。水平方向、45°方向などについても同様の処理を行うことで、ユーザは、ポインタ300の位置を厳密に所望の方向に設定しなくても、望む方向へのスクロールを行うことができる。
【0052】
図8は、上方向にスクロールした後、下方向にスクロールする場合を示している。先ず、画面1に示すように、操作入力装置200の実行キー212をクリックすると、スクロールが可能な状態となる。この状態で、画面2に示すように、ポインタ300の位置を円310の中心から上方向に移動すると、中心Oに対するポインタ300の移動方向に画面がスクロールする。従って、画面の範囲が上方向にスクロールし、「富士山」を含む画面全体が下方向(矢印方向)に移動する(図7(A)の画面3と同様)。
【0053】
次に、画面3は、画面2の状態から、ポインタ300の位置を円310内で下側に動かしている状態を示している。この状態においても、ポインタ300の位置は中心Oよりも上に位置しているため、中心Oに対するポインタ300の移動方向に画面がスクロールする。従って、画面は上方向にスクロールし、「富士山」は下方向(矢印方向)に移動する。従って、画面3では、ユーザはポインタ300を下に動かしているが、画面のスクロールは上方向に行われることになる。
【0054】
次に、画面4は、画面3の状態から引き続きポインタ300を円310内で下側に動かし、ポインタ300が円310の中心Oよりも下に位置した状態を示している。このように、ポインタ300が円310の中心Oよりも下に位置すると、画面は下方向にスクロールし、「富士山」は上方向(矢印方向)に移動する。
【0055】
このように、本実施形態では、ポインタ300の動きとスクロールの方向は完全には対応しておらず、画面のスクロール方向を反転させる場合は、ポインタ300の位置を中心Oに対して反対側に動かすことによって行う。換言すれば、本実施形態では、円310(の中心O)に対するポインタ300の位置に応じて、スクロールの方向が決定される。これにより、ポインタの操作と画面のスクロールの動きを一致させる場合と比較すると、より滑らかにスクロールを行うことができ、スムーズなスクロール操作が可能となる。また、ユーザによる操作入力装置200の微細な動がスクロールの動きに影響を与えることがないため、スクロール画面をより見易くすることが可能である。また、連続的なドラッグ方向の変化と、スクロール方向の変化に関数を与えることで、スクロール方向の時系列的な微調整が可能となる。更に、感圧センサー230を搭載した操作入力装置200と、情報処理装置100との組み合わせにより、スクロール中のポインタ300を、スクロールの移動距離と関係なく移動することができるようになり、スクロールしながらも、任意の位置へ素早くポインタ300を移動することが可能となる。
【0056】
[3.スクロール速度の調節について]
次に、本実施形態のシステムにおいて、スクロール速度を調整する方法について説明する。本実施形態では、操作入力装置200の感圧センサー230が、実行キー212の押し下げ量に応じた圧力を検出する。検出された圧力値は、操作入力装置200から情報処理装置100へ送られる。
【0057】
情報処理装置100では、操作入力装置200から送られた圧力値に基づいて、圧力値が大きい場合ほど、すなわち、実行キー212の押し下げ量が大きいほど、スクロールの速度を速くする。これにより、ユーザは、実行キー212の操作に応じて、スクロールの速度を自由に調節することができる。
【0058】
[4.本実施形態のシステムにおける処理]
次に、上述したスクロール動作を実現するための処理について説明する。ユーザによる操作入力装置200の操作は、クリック検出部210、ポインティングセンサー220、及び感圧センサー230によって検知される。実行キー212によるクリック操作(図2(B)中の位置bまでの押し下げ)は、クリック検出部210によって検知され、コンバータ240によってデジタル信号に変換されて情報処理装置100へ送られる。また、操作入力装置200自体の位置(水平方向)は、ポインティングセンサー220によって検知され、コンバータ250によってデジタル信号に変換されて情報処理装置100へ送られる。また、実行キー212が図2(B)中の位置bよりも下に押し下げた際の圧力は、感圧センサー230によって検知され、A/Dインタフェース260によってデジタル信号に変換されて、情報処理装置100へ送られる。
【0059】
操作入力装置200から送られた信号は、情報処理装置100の演算部110に入力される。図1に示すように、演算部110は、位置情報取得部111、押し下げ圧力取得部112、ポインタ位置設定部113、領域設定部114、スクロール方向決定部115、スクロール速度決定部116を有する。演算部110は、コンバータ240からクリックが行われた旨の信号を受ける以前は、画面をスクロールするモードに設定しない。このため、演算部110は、コンバータ250から送られた操作入力装置200の位置情報に基づいて、画面上にポインタ300を表示する。
【0060】
演算部110は、コンバータ240からクリックが行われた旨の信号を受けると、画面をスクロール可能なモードに設定し、操作入力装置200の位置に応じて画面のスクロールを行う。具体的に説明すると、演算部110は、コンバータ240からクリックが行われた旨の信号を受けると、画面をスクロール可能なモードに設定し、その時の画面上のポインタ300の位置をメモリ120に保存する。また、演算部110は、クリックが行われた時の画面上のポインタ300の位置を円310の位置としてメモリ120に保存する。また、演算部110は、全画面の表示内容を所定のサンプリング時間毎にメモリ120に保存する。
【0061】
そして、演算部110の位置情報取得部111は、ポインティングセンサー220によって検知された操作入力装置200の位置を所定のサンプリング時間毎に取得し、その値をメモリ120に保存する。そして、演算部110は、操作入力装置200の位置を新たに取得する度に、前回取得した位置と比較し、その差分を演算する。また、演算部110は、所定のサンプリング時間毎に画面上のポインタ300の位置を取得し、その値をメモリ120に保存する。そして、演算部110のポインタ位置設定部113は、前回のポインタ300の位置に対して、上述した差分だけポインタ310を移動し、新たなポインタ300の位置を算出する。新たなポインタ300の位置は、画像処理部140に送られる。
【0062】
また、演算部110の領域設定部114は、新たなポインタ300の位置に応じて、新たな円310の位置を算出し、円310を設定する。新たなポインタ300の位置に応じて、円310の縁にポインタ300が当接した状態で円310がポインタ300とともに移動する場合は、所定のサンプリング時間毎に新たな円310の位置をメモリ120に記憶させる。また、新たな円310の位置は、画像処理部130に送られる。
【0063】
また、演算部110のスクロール方向決定部115は、ポインタ300の位置と円310の位置との関係に応じて、画面のスクロール方向を演算し、演算結果を画像処理部130へ送る。また、押し下げ圧力取得部112は、コンバータ250から送られた、感圧センサー230で検出された圧力値を取得する。演算部110のスクロール速度決定部116は、感圧センサー230で検出された圧力値に基づいて、画面のスクロールの速度を演算し、画像処理部130へ送る。
【0064】
なお、上述した例では、実行キー202の押し下げ量に応じてスクロール速度を可変するようにしたが、ポインタ300と円310との位置関係に応じてスクロール速度を可変するようにしても良い。例えば、スクロール速度決定部116は、ポインタ300の位置が円310の中心Oから離れるほど、スクロール速度を速くして、ポインタ300が円310の輪郭と接した場合にスクロール速度を最大とするようにしても良い。
【0065】
画像処理部130は、演算部110から送られた新たなポインタ300の位置に応じて、ポインタ300の位置を移動する処理を行う。また、画像処理部130は、演算部110から送られた新たな円310の位置に応じて円310の位置を移動する処理を行う。また、画像処理部130は、演算部110から送られたスクロールに関する情報(スクロールの方向、速度)に応じて、メモリ120に保存されている全画面の表示内容をスクロールする処理を行う。画像処理部130によるこれらの処理結果は、画像表示部140に送られて、画像表示部140に新たな画面が表示される。スクロール量は、スクロール速度と、スクロールが指示されている時間とによって定めることができる。なお、上述のように、仮想的な円310については通常は表示せず、特定のキーが操作された場合に表示するようにしても良い。
【0066】
図9は、円310の中に表示されたポインタ300を詳細に示す模式図である。図9に示すように、ポインタ300は、スクロール方向の先端に位置する円300aと尾300bとによって表示される。尾300bは、スクロール方向と平行に配置される。従って、ユーザは、円300aと尾300bを視認することで、スクロール方向を視覚的に瞬時に認識することができる。
【0067】
また、図9に示すように、円300aの先端から尾300bの後端までの長さLは、スクロール速度を表している。図10に示すように、長さLの中点を基準として、スクロール速度が速いほど長さLが大きくなる。従って、ユーザは、長さLを視認することで、スクロール速度を視覚的に瞬時に認識することができる。なお、これらの画像処理は演算部110及び画像処理部130による処理の結果により行われる。
【0068】
図11は、円310を画面上に表示した場合に、円310の形を変形させる例を示す模式図である。図11に示すように、ポインタ300が円310の輪郭に接した後、更にポインタ300が円310の外へ移動する場合、画像処理部130は、円310のポインタ300と当接している箇所が外側に変形するように処理を行っても。このような構成によれば、円310とポインタ300をともに表示した場合に、円310の形状からポインタ300の位置を認識することができ、これにより、円310の形状から画面のスクロール方向を認識することが可能である。
【0069】
以上説明したように本実施形態によれば、ポインタ300と仮想的な円310との位置関係に応じて画面のスクロールを制御するため、ユーザによる操作が画面のスクロールの動きに直接的に反映されてしまうことを抑止できる。これにより、画面のスクロールをより滑らかに行うことができ、画面の視認性を大幅に高めることが可能となる。また、ポインティングデバイス(操作入力装置200)による表示画像のスクロール操作において、ドラッグ操作時のポインタ300の位置の時系列変化に応じて、情報処理システムがスクロール方向の補正をかけることで、スクロール操作の操作性を向上させることができる。
【0070】
また、スクロール速度を実行キー212の押し下げ量に応じて制御することができるため、操作入力装置200の操作量(水平方向への移動量)を最小限に抑えた状態で、スクロール速度を自由に制御することが可能となる。従って、煩雑な操作を行うことなくスクロール速度を制御することが可能となる。操作部に感圧センサー230を有する操作入力装置200がユーザの操作によって押し圧を検出し、表示された画像のスクロール速度を算出することで、ユーザの意図に応じたスクロール速度を実現することが可能である。
【0071】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【0072】
100 画像処理装置
111 位置情報取得部
113 ポインタ位置設定部
114 領域設定部
130 画像処理部
200 操作入力装置
【技術分野】
【0001】
本発明は、画像処理装置、画像処理システム、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
近時においては、パーソナルコンピュータ(PC)等の装置において、ユーザによる操作を実現するため、キーボードとともにマウスが広く用いられている。ユーザは、マウスを用いることにより、表示画面を参照しながらクリック操作や画面のスクロール操作等を容易に行うことができる。例えば下記の特許文献1には、マウスに関連して、マウスを容易に保持させることを想定した技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−61617号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、画面のスクロール操作を行う場合、ユーザによる操作が画面のスクロールの動きに直接的に反映されてしまうと、画面のスクロールの動きに細かい揺れなどが生じてしまい、画面の視認性が低下するという問題があった。同様に、ユーザによる操作が画面のスクロールの動きに直接的に反映されてしまうと、スクロール速度が細かく増減してしまい、やはり画面の視認性が低下してしまうという問題があった。また、従来のマウスデバイス等による表示画像のスクロール操作においては、ドラッグ方向の絶対方向を基準にスクロール方向を算出、決定するものであり、スクロール方向の時系列的な微調整が困難であった。また、マウスデバイスによる表示画像のスクロール操作においては、ポインタが画面上を移動する位置と、スクロールの移動する位置が対応しており、スクロール中のポインタを、スクロールの移動距離と関係なく移動することができなかった。
【0005】
また、上記従来の技術では、マウスによって画面をスクロールする場合、そのスクロール速度は、マウスを操作する速度によって決定される。この場合、画面のスクロール速度を速くしようとすると、ユーザは机などの上に載置されてマウスを素早く移動させる必要があり、煩雑な操作が必要となっていた。特に、画面のスクロール量を大きくして、且つスクロール速度をより速くしようとすると、マウスを比較的長い距離で素早く移動させる必要があり、マウスの移動範囲が非常に大きくなり限られたスペースの机上等では操作が困難になる場合があった。このため、マウスを移動した後、マウスを元の位置に戻して再度スクロールを行うといった、スクロール操作を複数に分けて行う必要が生じ、非常に煩雑な操作が要求されていた。
【0006】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、画面のスクロールの操作性を格段に高めるとともに、画面の視認性を向上させることが可能な、新規かつ改良された画像処理装置、画像処理システム、画像処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある観点によれば、ユーザの操作に応じた位置情報を取得する位置情報取得部と、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するポインタ位置設定部と、前記ポインタの周囲に所定の領域を設定する領域設定部と、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う画像処理部と、を備える、画像処理装置が提供される。
【0008】
また、ユーザの操作に応じて、画面のスクロール速度に関する情報を取得するスクロール速度情報取得部を備え、前記画像処理部は、前記スクロール速度に関する情報に基づいて画面のスクロールを行うものであってもよい。
【0009】
また、前記スクロール速度に関する情報は、ユーザが操作する操作入力装置のキーの押し下げ量に応じて得られた情報であってもよい。
【0010】
また、前記領域に対する前記ポインタの相対的な位置に基づいてスクロール速度を決定するスクロール速度決定部を備え、前記画像処理部は、前記スクロール速度に基づいて画面のスクロールを行うものであってもよい。
【0011】
また、前記領域に対する前記ポインタの相対的な位置に基づいてスクロール方向を決定するスクロール方向決定部を備え、前記画像処理部は、前記スクロール方向に基づいて画面のスクロールを行うものであってもよい。
【0012】
また、前記画像処理部は、画面上に前記ポインタを表示する処理を行うものであってもよい。
【0013】
また、前記画像処理部は、画面上に前記ポインタとともに前記領域を表示する処理を行うものであってもよい。
【0014】
また、前記画像処理部は、画面のスクロール速度に応じて前記ポインタの形状を変化させて表示する処理を行うものであってもよい。
【0015】
また、前記画像処理部は、画面のスクロール方向に応じて前記領域の形状を変化させて表示する処理を行うものであってもよい。
【0016】
また、前記領域に対する前記ポインタの相対的な位置に基づいて得られた画面のスクロール方向が所定の角度範囲に含まれる場合は、当該角度範囲内に予め定められた1の方向に画面のスクロールを行うものであってもよい。
【0017】
また、上記課題を解決するために、本発明の別の観点によれば、ユーザによる操作が行われ、操作に応じた情報が入力される操作入力装置と、ユーザの操作に応じた位置情報を取得する位置情報取得部と、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するポインタ位置設定部と、前記ポインタの周囲に所定の領域を設定する領域設定部と、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う画像処理部と、を有する画像処理装置と、を備える画像処理システムが提供される。
【0018】
また、上記課題を解決するために、本発明の別の観点によれば、ユーザの操作に応じた位置情報を取得するステップと、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するステップと、前記ポインタの周囲に所定の領域を設定するステップと、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行うステップと、を備える画像処理方法が提供される。
【0019】
また、上記課題を解決するために、本発明の別の観点によれば、ユーザの操作に応じた位置情報を取得する手段、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定する手段、前記ポインタの周囲に所定の領域を設定する手段、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う手段、としてコンピュータを機能させるためのプログラムが提供される。
【発明の効果】
【0020】
本発明によれば、画面のスクロールの操作性を格段に高めるとともに、画面の視認性を向上させることが可能な画像処理装置、画像処理システム、画像処理方法及びプログラムを提供することが可能となる。
【図面の簡単な説明】
【0021】
【図1】本発明の一実施形態に係るシステムの構成を示す模式図である。
【図2】操作入力装置の構成を示す模式図である。
【図3】スクロール操作の概念を説明するための模式図である。
【図4】スクロール操作を表す概念モデルを示す模式図である。
【図5】図4に示す概念モデルに従って、ポインタの動きに伴って仮想的な円が画面内で移動する様子を示す模式図である。
【図6】図5において、円の位置を算出する処理の一例を示す模式図である。
【図7】ポインタの位置が円の中心Oから離れた場合に、中心Oに対するポインタの移動方向に画面のスクロールを行う様子を示す模式図である。
【図8】上方向にスクロールした後、下方向にスクロールする場合を示す模式図である。
【図9】円の中に表示されたポインタを詳細に示す模式図である。
【図10】ポインタが、長さLの中点を基準として、スクロール速度が速いほど長さLが大きくなる様子を示す模式図である。
【図11】円を画面上に表示した場合に、円の形を変形させる例を示す模式図である。
【発明を実施するための形態】
【0022】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0023】
なお、説明は以下の順序で行うものとする。
1.本実施形態のシステム構成
2.本実施形態による画面のスクロール操作
3.スクロール速度の調節について
4.本実施形態のシステムにおける処理
【0024】
[1.本実施形態のシステム構成]
まず、図1を参照して、本発明の一実施形態に係るシステムの構成について説明する。図1に示すように、本実施形態に係るシステムは、情報処理装置100と、操作入力装置200とを有して構成されている。情報処理装置100は、例えばパーソナルコンピュータ(PC)などの装置である。また、操作入力装置200は、例えばマウスなどの装置である。本システムでは、ユーザが操作入力装置200を操作することにより、情報処理装置100の画像表示部140に表示される画面(例えば地図など)をスクロールすることができる。なお、操作入力装置200はマウスに限定されるものではない。操作入力装置200は、例えばタッチパネル、キーボード、またはその他の入力部により操作される装置であっても良い。
【0025】
図1に示すように、情報処理装置100は、演算部110、メモリ120、画像処理部130、画像表示部140を有して構成される。また、操作入力装置200は、クリック検出部(検出スイッチ)210、ポインティングセンサー220、感圧センサー230、コンバータ240,250、A/Dインタフェース260を有して構成される。なお、図1に示す各構成要素は、ハードウェア(回路)、またはCPU(中央演算処理装置)とこれを機能させるためのプログラム(ソフトウェア)から構成されることができる。
【0026】
図2は、本実施形態に係る操作入力装置200の構成を示す模式図である。なお、図2では、操作入力装置200としてマウスを例示するが、操作入力装置200はマウスに限定されるものではなく、例えばキーボード式の入力装置、タッチパネル式の入力装置などであってもよい。
【0027】
図2(A)は、操作入力装置200を上方から見た平面図を示している。また、図2(B)は、操作入力装置200を側面から見た状態を示しており、ユーザが手で操作入力装置200を操作している様子を示している。
【0028】
図2(A)に示すように、操作入力装置200には、実行キー(クリック部)212が設けられている。ユーザは、実行キー212を押すことにより、通常のクリック操作を行うことができる。クリック操作は、クリック検出部210によって検出される。
【0029】
また、本実施形態の操作入力装置200は、実行キー212の押し下げによりクリック操作が行われ、更に実行キー212が押し下げられると、実行キー212の動きが板バネ214によって感圧センサー230に伝わり、感圧センサー230により押し下げの圧力が検出される。感圧センサー230で検出される圧力は、実行キー212の押し下げ量の増加に応じて増加する。従って、感圧センサー230は、ユーザによる実行キー212の押し下げ量に応じた圧力を検出することができる。
【0030】
このため、図2(B)に示すように、先ず、ユーザが初期状態から“a”の位置まで実行キー212を押し下げると、クリック検出部210に含まれるメカニカルスイッチが導通し、クリックが検出される。これにより、ユーザによるクリック操作が実行される。ユーザが“a”の位置から更に実行キー212を押し下げると、感圧センサー230により押し下げの圧力が検出される。これにより、感圧センサー230において、ユーザによる実行キー212の押し下げ量に応じた圧力が検出される。
【0031】
後で詳細に説明するが、本実施形態では、感圧センサー230で検出された、実行キー212の押し下げ量に応じた圧力に応じて、スクロール速度を調整するようにしている。これにより、ユーザは1つの実行キー212を操作することで、クリック操作と、スクロール速度の調整とを行うことが可能である。
【0032】
[2.本実施形態による画面のスクロール操作]
次に、本実施形態による画面のスクロール操作について説明する。図3は、本実施形態によるスクロール操作の概念を説明するための模式図である。図3に示すように、情報処理部100の画像表示部140には、ユーザによる操作入力装置200の操作に応じて移動するポインタ300が表示される。また、ポインタ300の周囲には、所定の半径を有する仮想的な円310が設定される。なお、円310は、通常は画像表示部140には表示されないものとするが、所定の操作によって画像表示部140に表示することもできる。また、円310を常時表示するものとしても良い。
【0033】
そして、本実施形態では、操作入力装置200のスクロール操作によって操作されるポインタ300と、ポインタ300の周囲に設定される円310との位置関係に応じてスクロール操作を行う。
【0034】
一般的なスクロール操作では、マウスの位置に応じてポインタが移動すると、ポインタの動きに応じて画面のスクロールが行われる。換言すれば、ポインタの動きと画面のスクロールの動きとは1対1で対応している。一方、本実施形態では、ポインタ300の動きと仮想的な円310の相対的な位置関係に応じてスクロールが行われる。
【0035】
図4は、本実施形態のスクロール操作を表す概念モデルを示す模式図である。図4に示す概念図においては、ポインタ300が軸400に対応し、円310が円筒410に対応している。図4の概念モデルでは、軸400が移動すると、軸400が円筒410の内面に接触した場合に、円筒410が軸400とともに移動する。一方、軸400が円筒410の内部で移動し、軸400が円筒410の内面に接触しない場合は、軸400のみが移動し、円筒410は移動しない。本実施形態では、この概念モデルのように、ユーザが軸400(ポインタ300)を移動した場合に、軸400が円筒410の内部で移動し、円筒410が移動しない場合は、画面のスクロールを行わない。一方、ユーザが軸400を移動した場合に、軸400が円筒410の内面に接して、軸400とともに円筒410が動く場合は、画面のスクロールを行う。
【0036】
図5は、図4に示す概念モデルに従って、ポインタ300の動きに伴って仮想的な円310が画面内で移動する様子を示す模式図である。先ず、初期状態では、表示画面が画面をスクロールさせるモードに設定されていない。このため、ユーザが操作入力装置200を机上などで動かしても、画面のスクロールは行われず、ポインタ300の位置のみが操作入力装置200の位置に応じて移動する。ユーザが実行キー212を押してクリック操作を行い、クリック検出部210がクリック操作を検出すると、スクロールが可能な状態(スクロールがアクティブな状態)となる。この状態で、ユーザ300が操作入力装置200を机上などで動かすと、ポインタ300が仮想的な円310の中で移動する。そして、図5に示す概念モデルで説明したように、ポインタ300(軸400)が仮想的な円310(円筒410)の輪郭に接すると、ポインタ300(軸400)とともに円310(円筒410)がポインタ300の移動方向に移動する。そして、図5の例では、円310の移動方向に沿って画面がスクロールする。つまり、図4において、ユーザが軸400を動かした際に、軸400とともに円筒410が動いた場合のみ、スクロールが行われるような操作を実現できる。
【0037】
このような画面のスクロールによれば、図5中に示す円310では、ポインタ300が円310の輪郭に接しているため、ポインタ300の動きとともに円310が移動し、円310の移動方向に画面がスクロールする。一方、図4の円310aに示すように、円310aの内部でポインタ300が移動した場合は、円310は移動しないため、画面のスクロールは行われない。
【0038】
図6は、図5において、円310の位置を算出する処理の一例を示す模式図であって、ポインタ300の位置とスクロール方向を決定する円310の関係式を示している。図5中では、円310を円c1として示し、ポインタ300をポインタp1として示している。ここで、c1._xは円c1の中心のx座標を、c1._yは円310の中心のy座標を、それぞれ示している。円c1内に位置するポインタp1と、円c1の中心との距離c1kyoriを算出し、c1kyoriと円c1の半径とを比較する。そして、c1kyori≦rの場合は、円c1は移動せず、c1._xとc1._yの値は変化しない。
【0039】
一方、c1kyori>rの場合は、ポインタが円c1の外に位置するため、円c1をポインタの位置に応じて移動する。ここでは、以下の式によりポインタの位置の角度degを算出する。
deg =
Math.PI*0.5 - Math.atan2( p1._x- c1._x , p2._y - c1._y)
そして、図6に示すように、c1._xとc1._yの値を、角度degのコサイン成分、サイン成分だけそれぞれ増減する。これにより、新たな円c1の位置を算出することができる。
【0040】
図5では、円310がポインタ300と共に移動した場合に画面のスクロールが行われるものとした。一方、ポインタ300の位置が円310の中心Oと一致している場合は、スクロールを行わず、ポインタ300の位置が円310の中心Oから離れた場合に、中心Oに対するポインタ300の移動方向に画面のスクロールを行うようにしても良い。
【0041】
図7は、ポインタ300の位置が円310の中心Oから離れた場合に、中心Oに対するポインタ300の移動方向に画面のスクロールを行う様子を示す模式図である。ここでは、「富士山」の画像が表示されている画面をスクロールさせる場合について説明する。
【0042】
図7(A)は、画面を上方向にスクロールさせる場合を示している。先ず、画面1に示すように、操作入力装置200の実行キー212をクリックすると、スクロールが可能な状態となる。この状態で、画面2に示すように、ポインタ300の位置を円310の中心Oよりも上方向に移動すると、中心Oに対するポインタ300の移動方向に画面がスクロールする。従って、画面の範囲が上方向にスクロールし、「富士山」を含む画面全体が下方向(矢印方向)に移動する。
【0043】
次に、画面3に示すように、スクロールをしながら更にポインタ300の位置を円内の上方向に移動すると、ポインタ300が円310の縁(輪郭)と接する。この状態においても、画面2と同様に、画面は上方向にスクロールし、「富士山」は下に移動する。
【0044】
次に、ポインタ300が円310の縁と接した状態で、更にポインタ300を上方向に移動すると、画面4に示すように、ポインタ300が円310とともに画面内で上方向に移動する。従って、画面4に示すように、ポインタ300と円310は、画面内で中央よりも上に位置した状態となる。この状態においても、画面2、画面3と同様に、画面は上方向に移動し、「富士山」は下に移動する。
【0045】
図7(B)は、画面を右方向にスクロールさせる場合を示している。先ず、画面1に示すように、操作入力装置200の実行キー212をクリックすると、スクロールが可能な状態となる。この状態で、画面2に示すように、ポインタ300の位置を円310の中心Oよりも右方向に移動すると、中心Oに対するポインタ300の移動方向に画面がスクロールする。従って、画面の範囲が右方向にスクロールし、「富士山」含む画面全体が左方向(矢印方向)に移動する。
【0046】
次に、画面3に示すように、スクロールをしながら更にポインタ300の位置を円内の右方向に移動すると、ポインタ300が円310の縁(輪郭)と接する。この状態においても、画面2と同様に、画面は右方向に移動し、「富士山」は左に移動する。
【0047】
次に、ポインタ300が円310の縁と接した状態で、更にポインタ300を右方向に移動すると、画面4に示すように、ポインタ300が円310とともに画面内で右方向に移動する。従って、画面4に示すように、ポインタ300と円310は、画面内で中央よりも右に位置した状態となる。この状態においても、画面2、画面3と同様に、画面は右方向に移動し、「富士山」は左に移動する。
【0048】
図7(C)は、右から上に向かうように放物線状に画面をスクロールさせる場合を示している。先ず、画面1に示すように、操作入力装置200の実行キー212をクリックすると、スクロールが可能な状態となり、円310の中心Oに対してポインタ300を右に移動することで、画面が右に移動する。この状態で、画面2に示すように、ポインタ300の位置を円210内の右側から右上に移動すると、画面の範囲が右上にスクロールし、「富士山」を含む画面全体が右下方向(矢印方向)に移動する。
【0049】
次に、画面3に示すように、スクロールをしながら更にポインタ300の位置を円310内の上方に向かって移動すると、スクロールの方向が、円310の中心に対してポインタ300が位置する方向(角度αの方向)に変わる。これにより、スクロールの方向がより上方向となるように変化する。
【0050】
次に、画面4に示すように、スクロールをしながらポインタ300の位置が円310内の最上部に位置すると、スクロールの方向が、円310の中心に対してポインタ300が位置する方向(90°方向)に変わる。これにより、スクロールの方向が上方向(画面4中に示す矢印方向)となり、「富士山」は下へ移動する。
【0051】
なお、ポインタ300が位置する方向が90°を中心とする所定範囲(例えば85°から95°の範囲)に入る場合は、スクロールの方向を90°の方向としても良い。これにより、ユーザは、ポインタ300の位置を厳密に90°方向に設定しなくても、90°方向へのスクロールを行うことができる。水平方向、45°方向などについても同様の処理を行うことで、ユーザは、ポインタ300の位置を厳密に所望の方向に設定しなくても、望む方向へのスクロールを行うことができる。
【0052】
図8は、上方向にスクロールした後、下方向にスクロールする場合を示している。先ず、画面1に示すように、操作入力装置200の実行キー212をクリックすると、スクロールが可能な状態となる。この状態で、画面2に示すように、ポインタ300の位置を円310の中心から上方向に移動すると、中心Oに対するポインタ300の移動方向に画面がスクロールする。従って、画面の範囲が上方向にスクロールし、「富士山」を含む画面全体が下方向(矢印方向)に移動する(図7(A)の画面3と同様)。
【0053】
次に、画面3は、画面2の状態から、ポインタ300の位置を円310内で下側に動かしている状態を示している。この状態においても、ポインタ300の位置は中心Oよりも上に位置しているため、中心Oに対するポインタ300の移動方向に画面がスクロールする。従って、画面は上方向にスクロールし、「富士山」は下方向(矢印方向)に移動する。従って、画面3では、ユーザはポインタ300を下に動かしているが、画面のスクロールは上方向に行われることになる。
【0054】
次に、画面4は、画面3の状態から引き続きポインタ300を円310内で下側に動かし、ポインタ300が円310の中心Oよりも下に位置した状態を示している。このように、ポインタ300が円310の中心Oよりも下に位置すると、画面は下方向にスクロールし、「富士山」は上方向(矢印方向)に移動する。
【0055】
このように、本実施形態では、ポインタ300の動きとスクロールの方向は完全には対応しておらず、画面のスクロール方向を反転させる場合は、ポインタ300の位置を中心Oに対して反対側に動かすことによって行う。換言すれば、本実施形態では、円310(の中心O)に対するポインタ300の位置に応じて、スクロールの方向が決定される。これにより、ポインタの操作と画面のスクロールの動きを一致させる場合と比較すると、より滑らかにスクロールを行うことができ、スムーズなスクロール操作が可能となる。また、ユーザによる操作入力装置200の微細な動がスクロールの動きに影響を与えることがないため、スクロール画面をより見易くすることが可能である。また、連続的なドラッグ方向の変化と、スクロール方向の変化に関数を与えることで、スクロール方向の時系列的な微調整が可能となる。更に、感圧センサー230を搭載した操作入力装置200と、情報処理装置100との組み合わせにより、スクロール中のポインタ300を、スクロールの移動距離と関係なく移動することができるようになり、スクロールしながらも、任意の位置へ素早くポインタ300を移動することが可能となる。
【0056】
[3.スクロール速度の調節について]
次に、本実施形態のシステムにおいて、スクロール速度を調整する方法について説明する。本実施形態では、操作入力装置200の感圧センサー230が、実行キー212の押し下げ量に応じた圧力を検出する。検出された圧力値は、操作入力装置200から情報処理装置100へ送られる。
【0057】
情報処理装置100では、操作入力装置200から送られた圧力値に基づいて、圧力値が大きい場合ほど、すなわち、実行キー212の押し下げ量が大きいほど、スクロールの速度を速くする。これにより、ユーザは、実行キー212の操作に応じて、スクロールの速度を自由に調節することができる。
【0058】
[4.本実施形態のシステムにおける処理]
次に、上述したスクロール動作を実現するための処理について説明する。ユーザによる操作入力装置200の操作は、クリック検出部210、ポインティングセンサー220、及び感圧センサー230によって検知される。実行キー212によるクリック操作(図2(B)中の位置bまでの押し下げ)は、クリック検出部210によって検知され、コンバータ240によってデジタル信号に変換されて情報処理装置100へ送られる。また、操作入力装置200自体の位置(水平方向)は、ポインティングセンサー220によって検知され、コンバータ250によってデジタル信号に変換されて情報処理装置100へ送られる。また、実行キー212が図2(B)中の位置bよりも下に押し下げた際の圧力は、感圧センサー230によって検知され、A/Dインタフェース260によってデジタル信号に変換されて、情報処理装置100へ送られる。
【0059】
操作入力装置200から送られた信号は、情報処理装置100の演算部110に入力される。図1に示すように、演算部110は、位置情報取得部111、押し下げ圧力取得部112、ポインタ位置設定部113、領域設定部114、スクロール方向決定部115、スクロール速度決定部116を有する。演算部110は、コンバータ240からクリックが行われた旨の信号を受ける以前は、画面をスクロールするモードに設定しない。このため、演算部110は、コンバータ250から送られた操作入力装置200の位置情報に基づいて、画面上にポインタ300を表示する。
【0060】
演算部110は、コンバータ240からクリックが行われた旨の信号を受けると、画面をスクロール可能なモードに設定し、操作入力装置200の位置に応じて画面のスクロールを行う。具体的に説明すると、演算部110は、コンバータ240からクリックが行われた旨の信号を受けると、画面をスクロール可能なモードに設定し、その時の画面上のポインタ300の位置をメモリ120に保存する。また、演算部110は、クリックが行われた時の画面上のポインタ300の位置を円310の位置としてメモリ120に保存する。また、演算部110は、全画面の表示内容を所定のサンプリング時間毎にメモリ120に保存する。
【0061】
そして、演算部110の位置情報取得部111は、ポインティングセンサー220によって検知された操作入力装置200の位置を所定のサンプリング時間毎に取得し、その値をメモリ120に保存する。そして、演算部110は、操作入力装置200の位置を新たに取得する度に、前回取得した位置と比較し、その差分を演算する。また、演算部110は、所定のサンプリング時間毎に画面上のポインタ300の位置を取得し、その値をメモリ120に保存する。そして、演算部110のポインタ位置設定部113は、前回のポインタ300の位置に対して、上述した差分だけポインタ310を移動し、新たなポインタ300の位置を算出する。新たなポインタ300の位置は、画像処理部140に送られる。
【0062】
また、演算部110の領域設定部114は、新たなポインタ300の位置に応じて、新たな円310の位置を算出し、円310を設定する。新たなポインタ300の位置に応じて、円310の縁にポインタ300が当接した状態で円310がポインタ300とともに移動する場合は、所定のサンプリング時間毎に新たな円310の位置をメモリ120に記憶させる。また、新たな円310の位置は、画像処理部130に送られる。
【0063】
また、演算部110のスクロール方向決定部115は、ポインタ300の位置と円310の位置との関係に応じて、画面のスクロール方向を演算し、演算結果を画像処理部130へ送る。また、押し下げ圧力取得部112は、コンバータ250から送られた、感圧センサー230で検出された圧力値を取得する。演算部110のスクロール速度決定部116は、感圧センサー230で検出された圧力値に基づいて、画面のスクロールの速度を演算し、画像処理部130へ送る。
【0064】
なお、上述した例では、実行キー202の押し下げ量に応じてスクロール速度を可変するようにしたが、ポインタ300と円310との位置関係に応じてスクロール速度を可変するようにしても良い。例えば、スクロール速度決定部116は、ポインタ300の位置が円310の中心Oから離れるほど、スクロール速度を速くして、ポインタ300が円310の輪郭と接した場合にスクロール速度を最大とするようにしても良い。
【0065】
画像処理部130は、演算部110から送られた新たなポインタ300の位置に応じて、ポインタ300の位置を移動する処理を行う。また、画像処理部130は、演算部110から送られた新たな円310の位置に応じて円310の位置を移動する処理を行う。また、画像処理部130は、演算部110から送られたスクロールに関する情報(スクロールの方向、速度)に応じて、メモリ120に保存されている全画面の表示内容をスクロールする処理を行う。画像処理部130によるこれらの処理結果は、画像表示部140に送られて、画像表示部140に新たな画面が表示される。スクロール量は、スクロール速度と、スクロールが指示されている時間とによって定めることができる。なお、上述のように、仮想的な円310については通常は表示せず、特定のキーが操作された場合に表示するようにしても良い。
【0066】
図9は、円310の中に表示されたポインタ300を詳細に示す模式図である。図9に示すように、ポインタ300は、スクロール方向の先端に位置する円300aと尾300bとによって表示される。尾300bは、スクロール方向と平行に配置される。従って、ユーザは、円300aと尾300bを視認することで、スクロール方向を視覚的に瞬時に認識することができる。
【0067】
また、図9に示すように、円300aの先端から尾300bの後端までの長さLは、スクロール速度を表している。図10に示すように、長さLの中点を基準として、スクロール速度が速いほど長さLが大きくなる。従って、ユーザは、長さLを視認することで、スクロール速度を視覚的に瞬時に認識することができる。なお、これらの画像処理は演算部110及び画像処理部130による処理の結果により行われる。
【0068】
図11は、円310を画面上に表示した場合に、円310の形を変形させる例を示す模式図である。図11に示すように、ポインタ300が円310の輪郭に接した後、更にポインタ300が円310の外へ移動する場合、画像処理部130は、円310のポインタ300と当接している箇所が外側に変形するように処理を行っても。このような構成によれば、円310とポインタ300をともに表示した場合に、円310の形状からポインタ300の位置を認識することができ、これにより、円310の形状から画面のスクロール方向を認識することが可能である。
【0069】
以上説明したように本実施形態によれば、ポインタ300と仮想的な円310との位置関係に応じて画面のスクロールを制御するため、ユーザによる操作が画面のスクロールの動きに直接的に反映されてしまうことを抑止できる。これにより、画面のスクロールをより滑らかに行うことができ、画面の視認性を大幅に高めることが可能となる。また、ポインティングデバイス(操作入力装置200)による表示画像のスクロール操作において、ドラッグ操作時のポインタ300の位置の時系列変化に応じて、情報処理システムがスクロール方向の補正をかけることで、スクロール操作の操作性を向上させることができる。
【0070】
また、スクロール速度を実行キー212の押し下げ量に応じて制御することができるため、操作入力装置200の操作量(水平方向への移動量)を最小限に抑えた状態で、スクロール速度を自由に制御することが可能となる。従って、煩雑な操作を行うことなくスクロール速度を制御することが可能となる。操作部に感圧センサー230を有する操作入力装置200がユーザの操作によって押し圧を検出し、表示された画像のスクロール速度を算出することで、ユーザの意図に応じたスクロール速度を実現することが可能である。
【0071】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【0072】
100 画像処理装置
111 位置情報取得部
113 ポインタ位置設定部
114 領域設定部
130 画像処理部
200 操作入力装置
【特許請求の範囲】
【請求項1】
ユーザの操作に応じた位置情報を取得する位置情報取得部と、
前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するポインタ位置設定部と、
前記ポインタの周囲に所定の領域を設定する領域設定部と、
前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う画像処理部と、
を備える、画像処理装置。
【請求項2】
ユーザの操作に応じて、画面のスクロール速度に関する情報を取得するスクロール速度情報取得部を備え、
前記画像処理部は、前記スクロール速度に関する情報に基づいて画面のスクロールを行う、請求項1に記載の画像処理装置。
【請求項3】
前記スクロール速度に関する情報は、ユーザが操作する操作入力装置のキーの押し下げ量に応じて得られた情報である、請求項2に記載の画像処理装置。
【請求項4】
前記領域に対する前記ポインタの相対的な位置に基づいてスクロール速度を決定するスクロール速度決定部を備え、
前記画像処理部は、前記スクロール速度に基づいて画面のスクロールを行う、請求項1に記載の画像処理装置。
【請求項5】
前記領域に対する前記ポインタの相対的な位置に基づいてスクロール方向を決定するスクロール方向決定部を備え、
前記画像処理部は、前記スクロール方向に基づいて画面のスクロールを行う、請求項1に記載の画像処理装置。
【請求項6】
前記画像処理部は、画面上に前記ポインタを表示する処理を行う、請求項1に記載の画像処理装置。
【請求項7】
前記画像処理部は、画面上に前記ポインタとともに前記領域を表示する処理を行う、請求項5に記載の画像処理装置。
【請求項8】
前記画像処理部は、画面のスクロール速度に応じて前記ポインタの形状を変化させて表示する処理を行う、請求項6に記載の画像処理装置。
【請求項9】
前記画像処理部は、画面のスクロール方向に応じて前記領域の形状を変化させて表示する処理を行う、請求項7に記載の画像処理装置。
【請求項10】
前記領域に対する前記ポインタの相対的な位置に基づいて得られた画面のスクロール方向が所定の角度範囲に含まれる場合は、当該角度範囲内に予め定められた1の方向に画面のスクロールを行う、請求項1に記載の画像処理装置。
【請求項11】
ユーザによる操作が行われ、操作に応じた情報が入力される操作入力装置と、
ユーザの操作に応じた位置情報を取得する位置情報取得部と、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するポインタ位置設定部と、前記ポインタの周囲に所定の領域を設定する領域設定部と、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う画像処理部と、を有する画像処理装置と、
を備える画像処理システム。
【請求項12】
ユーザの操作に応じた位置情報を取得するステップと、
前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するステップと、
前記ポインタの周囲に所定の領域を設定するステップと、
前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行うステップと、
を備える、画像処理方法。
【請求項13】
ユーザの操作に応じた位置情報を取得する手段、
前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定する手段、
前記ポインタの周囲に所定の領域を設定する手段、
前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う手段、
としてコンピュータを機能させるためのプログラム。
【請求項1】
ユーザの操作に応じた位置情報を取得する位置情報取得部と、
前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するポインタ位置設定部と、
前記ポインタの周囲に所定の領域を設定する領域設定部と、
前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う画像処理部と、
を備える、画像処理装置。
【請求項2】
ユーザの操作に応じて、画面のスクロール速度に関する情報を取得するスクロール速度情報取得部を備え、
前記画像処理部は、前記スクロール速度に関する情報に基づいて画面のスクロールを行う、請求項1に記載の画像処理装置。
【請求項3】
前記スクロール速度に関する情報は、ユーザが操作する操作入力装置のキーの押し下げ量に応じて得られた情報である、請求項2に記載の画像処理装置。
【請求項4】
前記領域に対する前記ポインタの相対的な位置に基づいてスクロール速度を決定するスクロール速度決定部を備え、
前記画像処理部は、前記スクロール速度に基づいて画面のスクロールを行う、請求項1に記載の画像処理装置。
【請求項5】
前記領域に対する前記ポインタの相対的な位置に基づいてスクロール方向を決定するスクロール方向決定部を備え、
前記画像処理部は、前記スクロール方向に基づいて画面のスクロールを行う、請求項1に記載の画像処理装置。
【請求項6】
前記画像処理部は、画面上に前記ポインタを表示する処理を行う、請求項1に記載の画像処理装置。
【請求項7】
前記画像処理部は、画面上に前記ポインタとともに前記領域を表示する処理を行う、請求項5に記載の画像処理装置。
【請求項8】
前記画像処理部は、画面のスクロール速度に応じて前記ポインタの形状を変化させて表示する処理を行う、請求項6に記載の画像処理装置。
【請求項9】
前記画像処理部は、画面のスクロール方向に応じて前記領域の形状を変化させて表示する処理を行う、請求項7に記載の画像処理装置。
【請求項10】
前記領域に対する前記ポインタの相対的な位置に基づいて得られた画面のスクロール方向が所定の角度範囲に含まれる場合は、当該角度範囲内に予め定められた1の方向に画面のスクロールを行う、請求項1に記載の画像処理装置。
【請求項11】
ユーザによる操作が行われ、操作に応じた情報が入力される操作入力装置と、
ユーザの操作に応じた位置情報を取得する位置情報取得部と、前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するポインタ位置設定部と、前記ポインタの周囲に所定の領域を設定する領域設定部と、前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う画像処理部と、を有する画像処理装置と、
を備える画像処理システム。
【請求項12】
ユーザの操作に応じた位置情報を取得するステップと、
前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定するステップと、
前記ポインタの周囲に所定の領域を設定するステップと、
前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行うステップと、
を備える、画像処理方法。
【請求項13】
ユーザの操作に応じた位置情報を取得する手段、
前記位置情報に基づいて、ユーザの操作に応じて移動するポインタの位置を設定する手段、
前記ポインタの周囲に所定の領域を設定する手段、
前記領域に対する前記ポインタの相対的な位置に基づいて画面のスクロール処理を行う手段、
としてコンピュータを機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−93951(P2012−93951A)
【公開日】平成24年5月17日(2012.5.17)
【国際特許分類】
【出願番号】特願2010−240641(P2010−240641)
【出願日】平成22年10月27日(2010.10.27)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成24年5月17日(2012.5.17)
【国際特許分類】
【出願日】平成22年10月27日(2010.10.27)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]