JP6500986B2 - 電子機器、及び、駆動制御方法 - Google Patents

電子機器、及び、駆動制御方法 Download PDF

Info

Publication number
JP6500986B2
JP6500986B2 JP2017524524A JP2017524524A JP6500986B2 JP 6500986 B2 JP6500986 B2 JP 6500986B2 JP 2017524524 A JP2017524524 A JP 2017524524A JP 2017524524 A JP2017524524 A JP 2017524524A JP 6500986 B2 JP6500986 B2 JP 6500986B2
Authority
JP
Japan
Prior art keywords
amplitude
image
subject
unit
electronic device
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.)
Expired - Fee Related
Application number
JP2017524524A
Other languages
English (en)
Other versions
JPWO2016208036A1 (ja
Inventor
鈴木 達也
達也 鈴木
裕一 鎌田
裕一 鎌田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2016208036A1 publication Critical patent/JPWO2016208036A1/ja
Application granted granted Critical
Publication of JP6500986B2 publication Critical patent/JP6500986B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/043Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means using propagating acoustic waves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0236Character input methods using selection techniques to select from displayed items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
    • G06F3/0425Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/014Force feedback applied to GUI
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/045Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means using resistive elements, e.g. a single continuous surface or two parallel surfaces put in contact

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、電子機器、及び、駆動制御方法に関する。
従来より、被写体の3次元情報を持つ距離画像を用いて、指でなぞった部分における被写体の傾斜情報をもとに、凹凸などの形状に関する提示触感を自動決定する方法がある(例えば、非特許文献1参照)。
Kim, Seung-Chan, Ali Israr, and Ivan Poupyrev. "Tactile rendering of 3D features on touch surfaces." Proceedings of the 26th annual ACM symposium on User interface software and technology. ACM, 2013.
ところで、従来の提示触感の自動決定方法は、物体の形状に関する触感のみを提示するものであり、光沢の有無に応じた触感を提供することはできない。
そこで、光沢の有無に応じた触感を提供することができる電子機器と駆動制御方法を提供することを目的とする。
本発明の実施の形態の電子機器は、被写体を含む視野の画像と距離画像を取得する撮像部と、前記画像と、前記距離画像とに基づき、前記被写体の距離画像を抽出する距離画像抽出部と、前記被写体の距離画像に含まれるデータの欠落部に基づき、前記被写体が光沢のある物体であるかどうかを判定する光沢判定部と、前記画像を表示する表示部と、前記表示部の表示面側に配設され、操作面を有するトップパネルと、前記操作面に行われる操作入力の位置を検出する位置検出部と、前記操作面に超音波帯の固有振動を発生させる駆動信号で駆動され、前記操作面に超音波帯の固有振動を発生させる振動素子と、前記光沢判定部によって光沢のある物体であると判定された前記被写体の表示領域に、前記駆動信号の振幅データとして第1振幅を割り当て、前記光沢判定部によって光沢のない物体であると判定された前記被写体の表示領域に、前記駆動信号の振幅データとして前記第1振幅よりも小さい第2振幅を割り当てる振幅データ割当部と、前記光沢判定部によって光沢のある物体であると判定される前記被写体が前記表示部に表示されている領域内で前記操作面への操作入力が行われると、前記操作入力の位置の時間的変化度合に応じて前記第1振幅が割り当てられた前記駆動信号で前記振動素子を駆動し、前記光沢判定部によって光沢のない物体であると判定される前記被写体が前記表示部に表示されている領域内で前記操作面への操作入力が行われると、前記操作入力の位置の時間的変化度合に応じて前記第2振幅が割り当てられた前記駆動信号で前記振動素子を駆動する、駆動制御部とを含む。
光沢の有無に応じた触感を提供することができる電子機器と駆動制御方法を提供することができる。
実施の形態1の電子機器を示す斜視図である。 実施の形態1の電子機器を示す平面図である。 図2に示す電子機器のA−A矢視断面を示す図である。 実施の形態1の電子機器を示す底面図である。 超音波帯の固有振動によってトップパネルに生じる定在波のうち、トップパネルの短辺に平行に形成される波頭を示す図である。 電子機器のトップパネルに生じさせる超音波帯の固有振動により、操作入力を行う指先に掛かる動摩擦力が変化する様子を説明する図である。 実施の形態1の電子機器の構成を示す図である。 電子機器の利用の仕方の一例を示す図である。 赤外線カメラによって取得される距離画像を説明する図である。 赤外線カメラによって取得される距離画像を説明する図である。 ノイズを含む距離画像を示す図である。 実施の形態1の電子機器が振幅データを割り当てるために実行する処理を表すフローチャートを示す図である。 実施の形態1の電子機器が振幅データを割り当てるために実行する処理を表すフローチャートを示す図である。 図12のフローの一部の詳細を示すフローチャートである。 図14に示すフローによる画像処理を示す図である。 ノイズ割合を取得する処理を示すフローチャートである。 振幅データ割当部によって特定領域に割り当てられた振幅データを示す図である。 メモリに格納する光沢物体用の振幅データと、非光沢物体用の振幅データとを示す図である。 メモリに格納されるデータを示す図である。 実施の形態の電子機器の駆動制御部が実行する処理を示すフローチャートである。 実施の形態1の電子機器の動作例を示す図である。 電子機器の利用シーンを示す図である。 実施の形態2の電子機器が振幅データを割り当てるために実行する処理を表すフローチャートを示す図である。 ノイズ割合の確率分布を示す図である。 モード法により閾値を決定する方法を示す図である。 実施の形態3による特定領域の画像の取得方法の処理を示すフローチャートである。 図26に示すフローによって行われる画像処理を示す図である。 実施の形態4の電子機器を示す側面図である。
以下、本発明の電子機器、及び、駆動制御方法を適用した実施の形態について説明する。
<実施の形態1>
図1は、実施の形態1の電子機器100を示す斜視図である。
電子機器100は、一例として、タッチパネルを入力操作部とする、スマートフォン端末機、又は、タブレット型コンピュータである。電子機器100は、タッチパネルを入力操作部とする機器であればよいため、例えば、携帯情報端末機、又は、ATM(Automatic Teller Machine)のように特定の場所に設置されて利用される機器であってもよい。
電子機器100の入力操作部101は、タッチパネルの下にディスプレイパネルが配設されており、ディスプレイパネルにGUI(Graphic User Interface)による様々なボタン102A、又は、スライダー102B等(以下、GUI操作部102と称す)が表示される。
電子機器100の利用者は、通常、GUI操作部102を操作するために、指先で入力操作部101に触れる。
次に、図2を用いて、電子機器100の具体的な構成について説明する。
図2は、実施の形態1の電子機器100を示す平面図であり、図3は、図2に示す電子機器100のA−A矢視断面を示す図である。図4は、実施の形態1の電子機器100を示す底面図である。なお、図2乃至図4では、図示するように直交座標系であるXYZ座標系を定義する。
電子機器100は、筐体110、トップパネル120、両面テープ130、振動素子140、タッチパネル150、ディスプレイパネル160、及び基板170を含む。また、電子機器100は、カメラ180と、赤外線カメラ190及び赤外線光源191とを含む。カメラ180と、赤外線カメラ190及び赤外線光源191とは、電子機器100の底面(図4参照)に設けられている。
筐体110は、例えば、樹脂製であり、図3に示すように凹部110Aに基板170、ディスプレイパネル160、及びタッチパネル150が配設されるとともに、両面テープ130によってトップパネル120が接着されている。筐体110の底面(図4参照)には、カメラ180と、赤外線カメラ190及び赤外線光源191とが設けられている。
トップパネル120は、平面視で長方形の薄い平板状の部材であり、透明なガラス、又は、ポリカーボネートのような強化プラスティックで作製される。トップパネル120の表面120A(Z軸正方向側の面)は、電子機器100の利用者が操作入力を行う操作面の一例である。
トップパネル120は、Z軸負方向側の面に振動素子140が接着され、平面視における四辺が両面テープ130によって筐体110に接着されている。なお、両面テープ130は、トップパネル120の四辺を筐体110に接着できればよく、図3に示すように矩形環状である必要はない。
トップパネル120のZ軸負方向側にはタッチパネル150が配設される。トップパネル120は、タッチパネル150の表面を保護するために設けられている。なお、トップパネル120の表面120Aに、さらに別なパネル又は保護膜等が設けられていてもよい。
トップパネル120は、Z軸負方向側の面に振動素子140が接着された状態で、振動素子140が駆動されることによって振動する。実施の形態1では、トップパネル120の固有振動周波数でトップパネル120を振動させて、トップパネル120に定在波を生じさせる。ただし、トップパネル120には振動素子140が接着されているため、実際には、振動素子140の重さ等を考慮した上で、固有振動周波数を決めることが好ましい。
振動素子140は、トップパネル120のZ軸負方向側の面において、Y軸正方向側において、X軸方向に伸延する短辺に沿って接着されている。振動素子140は、超音波帯の振動を発生できる素子であればよく、例えば、ピエゾ素子のような圧電素子を含むものを用いることができる。
振動素子140は、後述する駆動制御部から出力される駆動信号によって駆動される。振動素子140が発生する振動の振幅(強度)及び周波数は駆動信号によって設定される。また、振動素子140のオン/オフは駆動信号によって制御される。
なお、超音波帯とは、例えば、約20kHz以上の周波数帯をいう。実施の形態1の電子機器100では、振動素子140が振動する周波数は、トップパネル120の振動数と等しくなるため、振動素子140は、トップパネル120の固有振動数で振動するように駆動信号によって駆動される。
タッチパネル150は、ディスプレイパネル160の上(Z軸正方向側)で、トップパネル120の下(Z軸負方向側)に配設されている。タッチパネル150は、電子機器100の利用者がトップパネル120に触れる位置(以下、操作入力の位置と称す)を検出する位置検出部の一例である。
タッチパネル150の下にあるディスプレイパネル160には、GUIによる様々なボタン等(以下、GUI操作部と称す)が表示される。このため、電子機器100の利用者は、通常、GUI操作部を操作するために、指先でトップパネル120に触れる。
タッチパネル150は、利用者のトップパネル120への操作入力の位置を検出できる位置検出部であればよく、例えば、静電容量型又は抵抗膜型の位置検出部であればよい。ここでは、タッチパネル150が静電容量型の位置検出部である形態について説明する。タッチパネル150とトップパネル120との間に隙間があっても、静電容量型のタッチパネル150は、トップパネル120への操作入力を検出できる。
また、ここでは、タッチパネル150の入力面側にトップパネル120が配設される形態について説明するが、トップパネル120はタッチパネル150と一体的であってもよい。この場合、タッチパネル150の表面が図2及び図3に示すトップパネル120の表面120Aになり、操作面を構築する。また、図2及び図3に示すトップパネル120を省いた構成であってもよい。この場合も、タッチパネル150の表面が操作面を構築する。また、この場合には、操作面を有する部材を、当該部材の固有振動で振動させればよい。
また、タッチパネル150が静電容量型の場合は、トップパネル120の上にタッチパネル150が配設されていてもよい。この場合も、タッチパネル150の表面が操作面を構築する。また、タッチパネル150が静電容量型の場合は、図2及び図3に示すトップパネル120を省いた構成であってもよい。この場合も、タッチパネル150の表面が操作面を構築する。また、この場合には、操作面を有する部材を、当該部材の固有振動で振動させればよい。
ディスプレイパネル160は、例えば、液晶ディスプレイパネル又は有機EL(Electroluminescence)パネル等の画像を表示できる表示部であればよい。ディスプレイパネル160は、筐体110の凹部110Aの内部で、図示を省略するホルダ等によって基板170の上(Z軸正方向側)に設置される。
ディスプレイパネル160は、後述するドライバIC(Integrated Circuit)によって駆動制御が行われ、電子機器100の動作状況に応じて、GUI操作部、画像、文字、記号、図形等を表示する。
なお、ディスプレイパネル160の表示領域の位置と、タッチパネル150の座標とは関連付けられている。例えば、ディスプレイパネル160の各ピクセルと、タッチパネル150の座標とを関連付けておけばよい。
基板170は、筐体110の凹部110Aの内部に配設される。基板170の上には、ディスプレイパネル160及びタッチパネル150が配設される。ディスプレイパネル160及びタッチパネル150は、図示を省略するホルダ等によって基板170及び筐体110に固定されている。
基板170には、後述する駆動制御装置の他に、電子機器100の駆動に必要な種々の回路等が実装される。
カメラ180は、カラー画像を取得するデジタルカメラであり、被写体を含む視野の画像を取得する。カメラ180が取得する視野の画像には、被写体の画像と背景の画像とが含まれる。カメラ180は、第1撮像部の一例である。デジタルカメラは、例えば、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサを有するものを用いることができる。なお、カメラ180は、モノクロ撮影用のデジタルカメラであってもよい。
赤外線カメラ190は、赤外線光源191から被写体に照射した赤外線の反射光を撮像することにより、被写体を含む視野の距離画像を取得する。赤外線カメラ190が取得する視野の距離画像には、被写体の距離画像と背景の距離画像とが含まれる。
赤外線カメラ190は、投光型距離画像カメラである。投光型距離画像カメラとは、被写体に赤外線などを投光し、被写体で反射された赤外線を読み取るカメラである。投光型距離画像カメラの一例として、TOF(Time Of Flight)距離画像カメラがある。TOF距離画像カメラは、投光した赤外線が被写体との往復にかかる時間から、TOF距離画像カメラから被写体までの距離を計測するカメラである。TOF距離画像カメラは、赤外線カメラ190と赤外線光源191を含む。赤外線カメラ190及び赤外線光源191は、第2撮像部の一例である。
なお、カメラ180と赤外線カメラ190は、筐体110の底面に近接して並べて配設されている。これは、カメラ180で取得する画像と、赤外線カメラ190で取得する距離画像とを用いて画像処理を行うため、カメラ180と赤外線カメラ190を近接して配置することにより、カメラ180で取得する画像と、赤外線カメラ190で取得する距離画像とにおける物体の大きさ及び方向等を合わせるためである。カメラ180で取得する画像と、赤外線カメラ190で取得する距離画像とにおける物体の大きさ及び方向等のずれが小さい方が、画像処理を容易に行えるからである。
以上のような構成の電子機器100は、カメラ180で取得した視野の画像と、赤外線カメラ190によって取得される距離画像とに基づき、被写体の距離画像を抽出する。そして、被写体の距離画像に含まれるノイズに基づき、被写体が光沢のある物体であるかどうかを判定する。ここで、光沢のある物体の一例は、金属製の置物である。また、光沢のない物体の一例は、ぬいぐるみである。
電子機器100は、ディスプレイパネル160に表示される被写体の画像に利用者が触れてトップパネル120の表面120Aに沿って指先を移動させると、振動素子140を駆動してトップパネル120を超音波帯の周波数で振動する。この超音波帯の周波数は、トップパネル120と振動素子140とを含む共振系の共振周波数であり、トップパネル120に定在波を発生させる。
また、このときに、電子機器100は、被写体が光沢のある物体である場合には、被写体が光沢のない物体である場合よりも、振幅の大きい駆動信号で振動素子140を駆動する。
一方、電子機器100は、被写体が光沢のない物体である場合には、被写体が光沢のある物体である場合よりも、振幅の小さい駆動信号で振動素子140を駆動する。
このように、被写体が光沢のある物体である場合に、被写体が光沢のない物体である場合よりも、振幅の大きい駆動信号で振動素子140を駆動するのは、利用者の指先につるつるとした滑らかな触感を提供するためである。
比較的振幅が大きい駆動信号で振動素子140を駆動すれば、スクイーズ効果によってトップパネル120の表面120Aと指との間に介在する空気層が厚くなり、動摩擦係数が低くなるため、光沢のある物体の表面に触れたような触感を提供できるからである。
一方、被写体が光沢のない物体である場合に、被写体が光沢のある物体である場合よりも、振幅の小さい駆動信号で振動素子140を駆動するのは、利用者の指先にソフトで弱い触感を提供するためである。
比較的振幅が小さい駆動信号で振動素子140を駆動すれば、スクイーズ効果によってトップパネル120の表面120Aと指との間に介在する空気層が薄くなり、被写体が光沢のある物体である場合よりも動摩擦係数が高くなるため、光沢のない物体の表面に触れたような触感を提供できるからである。
また、被写体が光沢のない物体である場合には、駆動信号の振幅を時間の経過に応じて変化させてもよい。例えば、被写体がぬいぐるみである場合には、駆動信号の振幅を時間の経過に応じて変化させることにより、利用者の指先にぬいぐるみに触れているような触感を提供するようにしてもよい。
なお、電子機器100は、利用者がディスプレイパネル160に表示される被写体の画像以外の領域に触れると、振動素子140を駆動しない。
以上のように、電子機器100は、被写体が光沢のある物体であるかどうかで駆動信号の振幅を変えることにより、トップパネル120を通じて利用者に被写体の触感を提供する。
次に、図5を用いて、トップパネル120に発生させる定在波について説明する。
図5は、超音波帯の固有振動によってトップパネル120に生じる定在波のうち、トップパネル120の短辺に平行に形成される波頭を示す図であり、図5の(A)は側面図、(B)は斜視図である。図5の(A)、(B)では、図2及び図3と同様のXYZ座標を定義する。なお、図5の(A)、(B)では、理解しやすさのために、定在波の振幅を誇張して示す。また、図5の(A)、(B)では振動素子140を省略する。
トップパネル120のヤング率E、密度ρ、ポアソン比δ、長辺寸法l、厚さtと、長辺方向に存在する定在波の周期数kとを用いると、トップパネル120の固有振動数(共振周波数)fは次式(1)、(2)で表される。定在波は1/2周期単位で同じ波形を有するため、周期数kは、0.5刻みの値を取り、0.5、1、1.5、2・・・となる。
Figure 0006500986
Figure 0006500986
なお、式(2)の係数αは、式(1)におけるk以外の係数をまとめて表したものである。
図5の(A)、(B)に示す定在波は、一例として、周期数kが10の場合の波形である。例えば、トップパネル120として、長辺の長さlが140mm、短辺の長さが80mm、厚さtが0.7mmのGorilla(登録商標)ガラスを用いる場合には、周期数kが10の場合に、固有振動数fは33.5[kHz]となる。この場合は、周波数が33.5[kHz]の駆動信号を用いればよい。
トップパネル120は、平板状の部材であるが、振動素子140(図2及び図3参照)を駆動して超音波帯の固有振動を発生させると、図5の(A)、(B)に示すように撓むことにより、表面120Aに定在波が生じる。
なお、ここでは、1つの振動素子140がトップパネル120のZ軸負方向側の面において、Y軸正方向側において、X軸方向に伸延する短辺に沿って接着される形態について説明するが、振動素子140を2つ用いてもよい。2つの振動素子140を用いる場合は、もう1つの振動素子140をトップパネル120のZ軸負方向側の面において、Y軸負方向側において、X軸方向に伸延する短辺に沿って接着すればよい。この場合に、2つの振動素子140は、トップパネル120の2つの短辺に平行な中心線を対称軸として、軸対称になるように配設すればよい。
また、2つの振動素子140を駆動する場合は、周期数kが整数の場合は同一位相で駆動すればよく、周期数kが小数(整数部と小数部とを含む数)の場合は逆位相で駆動すればよい。
次に、図6を用いて、電子機器100のトップパネル120に生じさせる超音波帯の固有振動について説明する。
図6は、電子機器100のトップパネル120に生じさせる超音波帯の固有振動により、操作入力を行う指先に掛かる動摩擦力が変化する様子を説明する図である。図6の(A)、(B)では、利用者が指先でトップパネル120に触れながら、指をトップパネル120の奥側から手前側に矢印に沿って移動する操作入力を行っている。なお、振動のオン/オフは、振動素子140(図2及び図3参照)をオン/オフすることによって行われる。
また、図6の(A)、(B)では、トップパネル120の奥行き方向において、振動がオフの間に指が触れる範囲をグレーで示し、振動がオンの間に指が触れる範囲を白く示す。
超音波帯の固有振動は、図5に示すようにトップパネル120の全体に生じるが、図6の(A)、(B)には、利用者の指がトップパネル120の奥側から手前側に移動する間に振動のオン/オフを切り替える動作パターンを示す。
このため、図6の(A)、(B)では、トップパネル120の奥行き方向において、振動がオフの間に指が触れる範囲をグレーで示し、振動がオンの間に指が触れる範囲を白く示す。
図6の(A)に示す動作パターンでは、利用者の指がトップパネル120の奥側にあるときに振動がオフであり、指を手前側に移動させる途中で振動がオンになっている。
一方、図6の(B)に示す動作パターンでは、利用者の指がトップパネル120の奥側にあるときに振動がオンであり、指を手前側に移動させる途中で振動がオフになっている。
ここで、トップパネル120に超音波帯の固有振動を生じさせると、トップパネル120の表面120Aと指との間にスクイーズ効果による空気層が介在し、指でトップパネル120の表面120Aをなぞったときの動摩擦係数が低下する。
従って、図6の(A)では、トップパネル120の奥側にグレーで示す範囲では、指先に掛かる動摩擦力は大きく、トップパネル120の手前側に白く示す範囲では、指先に掛かる動摩擦力は小さくなる。
このため、図6の(A)に示すようにトップパネル120に操作入力を行う利用者は、振動がオンになると、指先に掛かる動摩擦力の低下を感知し、指先の滑り易さを知覚することになる。このとき、利用者はトップパネル120の表面120Aがより滑らかになることにより、動摩擦力が低下するときに、トップパネル120の表面120Aに凹部が存在するように感じる。
一方、図6の(B)では、トップパネル120の奥前側に白く示す範囲では、指先に掛かる動摩擦力は小さく、トップパネル120の手前側にグレーで示す範囲では、指先に掛かる動摩擦力は大きくなる。
このため、図6の(B)に示すようにトップパネル120に操作入力を行う利用者は、振動がオフになると、指先に掛かる動摩擦力の増大を感知し、指先の滑り難さ、あるいは、引っ掛かる感じを知覚することになる。そして、指先が滑りにくくなることにより、動摩擦力が高くなるときに、トップパネル120の表面120Aに凸部が存在するように感じる。
以上より、図6の(A)と(B)の場合は、利用者は指先で凹凸を感じ取ることができる。このように人間が凹凸の知覚することは、例えば、"触感デザインのための印刷物転写法とSticky-band Illusion"(第11回計測自動制御学会システムインテグレーション部門講演会論文集 (SI2010, 仙台)____174-177, 2010-12)に記載されている。また、"Fishbone Tactile Illusion"(日本バーチャルリアリティ学会第10 回大会論文集(2005 年9 月))にも記載されている。
なお、ここでは、振動のオン/オフを切り替える場合の動摩擦力の変化について説明したが、これは、振動素子140の振幅(強度)を変化させた場合も同様である。
次に、図7を用いて、実施の形態1の電子機器100の構成について説明する。
図7は、実施の形態1の電子機器100の構成を示す図である。
電子機器100は、振動素子140、アンプ141、タッチパネル150、ドライバIC(Integrated Circuit)151、ディスプレイパネル160、ドライバIC161、カメラ180、赤外線カメラ190、赤外線光源191、制御部200、正弦波発生器310、及び振幅変調器320を含む。
制御部200は、アプリケーションプロセッサ220、通信プロセッサ230、駆動制御部240、及びメモリ250を有する。制御部200は、例えば、ICチップで実現される。
なお、ここでは、アプリケーションプロセッサ220、通信プロセッサ230、駆動制御部240、及びメモリ250が1つの制御部200によって実現される形態について説明するが、駆動制御部240は、制御部200の外部に別のICチップ又はプロセッサとして設けられていてもよい。この場合には、メモリ250に格納されているデータのうち、駆動制御部240の駆動制御に必要なデータは、メモリ250とは別のメモリに格納すればよい。
図7では、筐体110、トップパネル120、両面テープ130、及び基板170(図2参照)は省略する。また、ここでは、アンプ141、ドライバIC151、ドライバIC161、アプリケーションプロセッサ220、駆動制御部240、メモリ250、正弦波発生器310、及び振幅変調器320について説明する。
アンプ141は、振幅変調器320と振動素子140との間に配設されており、振幅変調器320から出力される駆動信号を増幅して振動素子140を駆動する。
ドライバIC151は、タッチパネル150に接続されており、タッチパネル150への操作入力があった位置を表す位置データを検出し、位置データを制御部200に出力する。この結果、位置データは、アプリケーションプロセッサ220と駆動制御部240に入力される。
ドライバIC161は、ディスプレイパネル160に接続されており、アプリケーションプロセッサ220から出力される描画データをディスプレイパネル160に入力し、描画データに基づく画像をディスプレイパネル160に表示させる。これにより、ディスプレイパネル160には、描画データに基づくGUI操作部又は画像等が表示される。
アプリケーションプロセッサ220は、電子機器100の種々のアプリケーションを実行する処理を行う。ここでは、特に、アプリケーションプロセッサ220が含む構成要素のうちのカメラ制御部221、画像処理部222、距離画像抽出部223、光沢判定部224、及び振幅データ割当部225を示す。
カメラ制御部221は、カメラ180、赤外線カメラ190、及び赤外線光源191の制御を行う。カメラ制御部221は、ディスプレイパネル160にGUI操作部として表示されるカメラ180のシャッターボタンが操作されるとカメラ180で撮像処理を行う。また、カメラ制御部221は、ディスプレイパネル160にGUI操作部として表示される赤外線カメラ190のシャッターボタンが操作されると、赤外線光源191から赤外線を出力させて、赤外線カメラ190で撮像処理を行う。
カメラ制御部221には、カメラ180によって取得される画像を表す画像データと、赤外線カメラ190によって取得される距離画像を表す距離画像データとが入力される。カメラ制御部221は、画像データと距離画像データを距離画像抽出部223に出力する。
画像処理部222は、距離画像抽出部223と光沢判定部224が行う画像処理以外の画像処理を実行する。画像処理部222が実行する画像処理については後述する。
距離画像抽出部223は、カメラ制御部221から入力される画像データと距離画像データとに基づき、被写体の距離画像を抽出する。被写体の距離画像は、被写体を表す画像の各ピクセルに、赤外線カメラ190のレンズから被写体までの距離を表すデータを関連付けたデータである。なお、被写体の距離画像を抽出する処理については、図8及び図12を用いて後述する。
光沢判定部224は、距離画像抽出部223によって抽出される被写体の距離画像に含まれるノイズを解析し、解析結果に基づいて被写体が光沢のある物体であるかどうかを判定する。ノイズの解析結果に基づいて被写体が光沢のある物体であるかどうかを判定する処理については、図12を用いて後述する。
振幅データ割当部225は、光沢判定部224によって光沢のある物体と判定された被写体の画像、又は、光沢判定部224によって光沢のない物体と判定された被写体の画像に対して、振動素子140の駆動信号の振幅データを割り当てる。振幅データ割当部225が実行する処理の詳細については、図12を用いて後述する。
通信プロセッサ230は、電子機器100が3G(Generation)、4G(Generation)、LTE(Long Term Evolution)、WiFi等の通信を行うために必要な処理を実行する。
駆動制御部240は、2つの所定の条件が揃った場合に、振幅データを振幅変調器320に出力する。振幅データは、振動素子140の駆動に用いる駆動信号の強度を調整するための振幅値を表すデータである。振幅値は、位置データの時間的変化度合に応じて設定される。ここで、位置データの時間的変化度合としては、利用者の指先がトップパネル120の表面120Aに沿って移動する速度を用いる。利用者の指先の移動速度は、ドライバIC151から入力される位置データの時間的な変化度合に基づいて、駆動制御部240が算出する。
駆動制御部240は、利用者の指先がトップパネル120の表面120Aに沿って移動したときに、指先に掛かる動摩擦力を変化させるためにトップパネル120を振動させる。動摩擦力は、指先が移動しているときに発生するため、駆動制御部240は、移動速度が所定の閾値速度以上になったときに、振動素子140を振動させる。移動速度が所定の閾値速度以上になることは、1つ目の所定の条件である。
従って、駆動制御部240が出力する振幅データが表す振幅値は、移動速度が所定の閾値速度未満のときはゼロであり、移動速度が所定の閾値速度以上になると、移動速度に応じて所定の振幅値に設定される。移動速度が所定の閾値速度以上のときには、移動速度が高いほど振幅値は小さく設定され、移動速度が低いほど振幅値を大きく設定される。
また、駆動制御部240は、操作入力を行う指先の位置が、振動を発生させるべき所定の領域内にある場合に、振幅データを振幅変調器320に出力する。操作入力を行う指先の位置が、振動を発生させるべき所定の領域内にあることは、2つ目の所定条件である。
操作入力を行う指先の位置が振動を発生させるべき所定の領域内にあるかどうかは、操作入力を行う指先の位置が、振動を発生させるべき所定の領域の内部にあるか否かに基づいて判定される。なお、振動を発生させるべき所定の領域とは、利用者によって特定される被写体を表示する領域である。
ここで、ディスプレイパネル160に表示するGUI操作部、画像を表示する領域、又は、ページ全体を表す領域等のディスプレイパネル160上における位置は、当該領域を表す領域データによって特定される。領域データは、すべてのアプリケーションにおいて、ディスプレイパネル160に表示されるすべてのGUI操作部、画像を表示する領域、又は、ページ全体を表す領域について存在する。
このため、2つ目の所定条件として、操作入力を行う指先の位置が、振動を発生させるべき所定の領域内にあるかどうかを判定する際には、電子機器100が起動しているアプリケーションの種類が関係することになる。アプリケーションの種類により、ディスプレイパネル160の表示が異なるからである。
また、アプリケーションの種類により、トップパネル120の表面120Aに触れた指先を移動させる操作入力の種類が異なるからである。トップパネル120の表面120Aに触れた指先を移動させる操作入力の種類としては、例えば、GUI操作部を操作する際には、所謂フリック操作がある。フリック操作は、指先をトップパネル120の表面120Aに沿って、はじく(スナップする)ように比較的短い距離移動させる操作である。
また、ページを捲る場合には、例えば、スワイプ操作を行う。スワイプ操作は、指先をトップパネル120の表面120Aに沿って掃くように比較的長い距離移動させる操作である。スワイプ操作は、ページを捲る場合の他に、例えば、写真を捲る場合に行われる。また、GUI操作部によるスライダー(図1のスライダー102B参照)をスライドさせる場合には、スライダーをドラッグするドラッグ操作が行われる。
ここで一例として挙げるフリック操作、スワイプ操作、及びドラッグ操作のように、トップパネル120の表面120Aに触れた指先を移動させる操作入力は、アプリケーションによる表示の種類によって使い分けられる。このため、操作入力を行う指先の位置が、振動を発生させるべき所定の領域内にあるかどうかを判定する際には、電子機器100が起動しているアプリケーションの種類が関係することになる。
駆動制御部240は、ドライバIC151から入力される位置データが表す位置が、振動を発生させるべき所定の領域の内部にあるか否かを判定する。
以上より、駆動制御部240が振幅データを振幅変調器320に出力するために必要な2つの所定の条件は、指先の移動速度が所定の閾値速度以上であることと、操作入力の位置の座標が振動を発生させるべき所定の領域の内部にあることである。
なお、電子機器100は、利用者によって特定される被写体がディスプレイパネル160に表示される領域の内部に操作入力の位置があるときに、表示される被写体の画像に利用者が触れてトップパネル120の表面120Aに沿って指先を移動させると、振動素子140を駆動してトップパネル120を超音波帯の周波数で振動する。
このため、振動を発生させるべき所定の領域とは、利用者によって特定される被写体がディスプレイパネル160に表示される領域である。
駆動制御部240は、指先の移動速度が所定の閾値速度以上であり、操作入力の位置の座標が振動を発生させるべき所定の領域の内部にある場合に、振幅値を表す振幅データをメモリ250から読み出して、振幅変調器320に出力する。
メモリ250は、アプリケーションプロセッサ220がアプリケーションの実行に必要とするデータ及びプログラム、及び、通信プロセッサ230が通信処理に必要とするデータ及びプログラム等を格納する。
正弦波発生器310は、トップパネル120を固有振動数で振動させるための駆動信号を生成するのに必要な正弦波を発生させる。例えば、トップパネル120を33.5[kHz]の固有振動数fで振動させる場合は、正弦波の周波数は、33.5[kHz]となる。正弦波発生器310は、超音波帯の正弦波信号を振幅変調器320に入力する。
振幅変調器320は、駆動制御部240から入力される振幅データを用いて、正弦波発生器310から入力される正弦波信号の振幅を変調して駆動信号を生成する。振幅変調器320は、正弦波発生器310から入力される超音波帯の正弦波信号の振幅のみを変調し、周波数及び位相は変調せずに、駆動信号を生成する。
このため、振幅変調器320が出力する駆動信号は、正弦波発生器310から入力される超音波帯の正弦波信号の振幅のみを変調した超音波帯の正弦波信号である。なお、振幅データがゼロの場合は、駆動信号の振幅はゼロになる。これは、振幅変調器320が駆動信号を出力しないことと等しい。
図8は、電子機器100の利用の仕方の一例を示す図である。
まず、第1ステップとして、利用者は電子機器100のカメラ180と赤外線カメラ190を用いて、ぬいぐるみ1と金属の置物2の写真を撮影する。より具体的には、カメラ180でぬいぐるみ1を撮影し、カメラ180で金属の置物2の写真を撮影する。また、赤外線カメラ190でぬいぐるみ1を撮影し、赤外線カメラ190で金属の置物2の写真を撮影する。第1ステップは、カメラ制御部221によって行われる。
ここで、ぬいぐるみ1は、動物のキャラクターのぬいぐるみである。ぬいぐるみ1は光沢のない布製であり、手で触れるとフワフワした触感である。ぬいぐるみ1は、光沢のない物体の一例である。
また、金属の置物2は、骸骨の形状の置物である。金属の置物2は、表面が滑らかな曲面であり、手で触れるとつるつるした触感である。金属の置物2は、光沢のある物体の一例である。
なお、光沢があるとは、物体の表面がある程度滑らかな平面又は曲面であり、光をある程度反射し、触れるとある程度つるつるした触感が得られることをいう。ここでは、光沢があるかないかは、触感で判断することとする。
触感には個人差があるため、ここでは一例として、光沢があるかないかを決める境界値(閾値)は、利用者が好みで設定できるようにする。
次に、第2ステップとして、ぬいぐるみ1の画像1Aと金属の置物2の画像2Aを得る。画像1Aと画像2Aは、カメラ180がぬいぐるみ1と金属の置物2を別々に撮影することによって得られる。画像1Aと画像2Aは、電子機器100のディスプレイパネル160に表示される。第2ステップは、カメラ制御部221と画像処理部222によって行われる。
次に、第3ステップとして、電子機器100が画像1Aと画像2Aに画像処理を行い、画像1Aと画像2Aにそれぞれ含まれる被写体(ぬいぐるみ1と金属の置物2)が表示される領域(以下、特定領域と称す)を表す画像1Bと画像2Bを作成する。
画像1Bでは、被写体が表示される領域である特定領域が白く示されており、被写体以外の背景の部分が黒く示されている。黒く示される部分は、データが存在しない領域である。白く示される部分は、被写体の画像が存在するピクセルを表し、ぬいぐるみ1の表示領域に対応している。
同様に、画像2Bでは、被写体が表示される領域である特定領域が白く示されており、被写体以外の背景の部分が黒く示されている。黒く示される部分は、データが存在しない領域である。白く示される部分は、被写体の画像が存在するピクセルを表し、金属の置物2の表示領域に対応している。なお、第3ステップは、画像処理部222によって行われる。
また、第4ステップでは、ぬいぐるみ1の距離画像1Cと金属の置物2の距離画像2Cを得る。距離画像1Cと距離画像2Cは、赤外線カメラ190がぬいぐるみ1と金属の置物2を別々に撮影することによって得られる。なお、第4ステップは、第2ステップ及び第3ステップと平行して、画像処理部222によって行われる。
次に、第5ステップでは、距離画像1Cと2Cのうち、画像1Bと2Bに含まれる特定領域の内部のピクセルに対応する画像を抽出することにより、特定領域の距離画像1Dと2Dをそれぞれ取得する。第5ステップは、距離画像抽出部223によって行われる。
次に、第6ステップでは、特定領域の距離画像1Dと2Dに含まれるノイズの割合を算出し、算出したノイズの割合が所定値以上であるかどうかを判定する。算出したノイズの割合が所定値以上であれば、特定領域の距離画像1D又は2Dに対応する被写体は光沢のある物体である。一方、算出したノイズの割合が所定値以上でなければ、特定領域の距離画像1D又は2Dに対応する被写体は光沢のない物体である。
ここでは、一例として、特定領域の距離画像1Dに対応する被写体(ぬいぐるみ1)は光沢のない物体であると判定され、特定領域の距離画像2Dに対応する被写体(金属の置物2)は光沢のある物体であると判定される。
光沢のない物体と判定された特定領域の距離画像1Dがある領域1E(以下、非光沢領域1E)に対しては、光沢のない物体に応じた比較的小さい振幅を表す振幅データが割り当てられる。
また、光沢のある物体と判定された特定領域の距離画像2Dがある領域2E(以下、光沢領域2E)に対しては、光沢のある物体に応じた比較的大きい振幅を表す振幅データが割り当てられる。
このように、振幅データが割り当てられた非光沢領域1Eと光沢領域2Eを表すデータは、メモリ250に格納される。これで第6ステップが終了する。なお、第6ステップは、光沢判定部224と振幅データ割当部225によって行われる。
そして、第7ステップとして、電子機器100のディスプレイパネル160に金属の置物2の画像2Aを表示し、利用者が画像2Aが表示された部分を指でなぞると、振動素子140が駆動されて金属の置物2に応じた触感が提供される。
次に、図9及び図10を用いて、赤外線カメラ190によって取得される距離画像について説明する。
図9及び図10は、赤外線カメラ190によって取得される距離画像を説明する図である。
図9に示すように、赤外線光源191から物体3(被写体)に赤外線を照射すると、赤外線は物体3の表面で拡散反射する。そして、物体3によって反射された赤外線を赤外線カメラ190で撮像することにより、距離画像を得る。
図10の下側に示す距離画像5は、物体3の距離画像3Aと、背景の距離画像4Aとを含む。距離画像5は、ピクセル毎に距離の情報が与えられているが、図10の下側に示す距離画像5では、説明の便宜上、赤外線カメラ190からの距離をグレースケールで表す。図10では、赤外線カメラ190に近いものほど薄いグレーで示し、赤外線カメラ190から遠いものほど濃いグレーで示す。赤外線カメラ190から見ると、背景よりも物体3が近いので、物体3の距離画像3Aは薄いグレーで示され、背景の距離画像4Aは濃いグレーで示されている。
図10の上側には、図10の下側に示す距離画像5のうちの一部(四角で囲んだ部分)を拡大して示す。距離画像5における距離の情報は、各ピクセルに与えられている。ここでは、一例として、物体3の距離画像3Aには100(mm)という距離の情報が与えられており、背景の距離画像4Aには300(mm)という距離の情報が与えられている。
次に、図11を用いて、距離画像に含まれるノイズについて説明する。
図11は、ノイズ3A1を含む距離画像5を示す図である。
物体3が光沢物質製である場合には、ある特定の方向に強い反射を起こす鏡面反射の性質が強いため、一部の画素で反射光が赤外線カメラ190に戻らないことがある。赤外線光源191から照射される赤外線の反射光が戻らなかった部分の画素は、反射光の光のデータを有しないため、ノイズ3A1となる。ノイズ3A1は、光のデータがないため、黒く表示される。なお、ノイズ3A1は、反射光のデータが欠落したデータ欠落部として取り扱うことができる。
実施の形態1の電子機器100は、ノイズ3A1を利用して、物体3が光沢のある物体であるかどうかを判定し、判定結果に応じて振幅データを割り当てる。
図12及び図13は、実施の形態1の電子機器100が振幅データを割り当てるために実行する処理を表すフローチャートを示す図である。図12及び図13に示す処理は、アプリケーションプロセッサ220によって実行される。
アプリケーションプロセッサ220は、閾値を決定する(ステップS100)。閾値は、後にステップS170で特定領域の距離画像に含まれるノイズの割合が多いか少ないかを判定する際の基準値として用いられる。ステップS100は、アプリケーションプロセッサ220の画像処理部222によって実行される処理である。
ここでは、アプリケーションプロセッサ220が閾値を設定するための入力画面を160に表示し、入力画面を通じて利用者に閾値の設定を求める。利用者は160の入力画面を操作することによって、閾値を設定する。なお、利用者によって入力画面が操作されたときのアプリケーションプロセッサ220の処理については、図13を用いて後述する。
アプリケーションプロセッサ220は、カメラ180と赤外線カメラ190で被写体を撮影する(ステップS110)。アプリケーションプロセッサ220が160に被写体の撮影を求めるメッセージを表示し、利用者がカメラ180と赤外線カメラ190で被写体を撮影することにより、ステップS110の処理が実現される。
なお、ステップS110は、カメラ制御部221によって実行される処理であり、図8に示す第1ステップに相当する。
ステップS110が終了すると、アプリケーションプロセッサ220は、ステップS120〜S130の処理と、ステップS140の処理とを平行して同時に行う。
アプリケーションプロセッサ220は、カメラ180からカラー画像を取得する(ステップS120)。ステップS120は、カメラ制御部221と画像処理部222によって実行される処理であり、図8に示す第2ステップに相当する。
アプリケーションプロセッサ220は、ステップS120で取得したカラー画像に対して画像処理を行うことにより、特定領域の画像を取得する(ステップS130)。ステップS130は、画像処理部222によって実行される処理であり、図8に示す第3ステップに相当する。なお、特定領域の画像を取得する処理の詳細については、図14及び図15を用いて後述する。
また、アプリケーションプロセッサ220は、赤外線カメラ190から距離画像を取得する(ステップS140)。ステップS140は、図8に示す第4ステップに相当する。
アプリケーションプロセッサ220は、ステップS130で取得した特定領域の画像と、ステップS140で取得した距離画像とに基づき、特定領域の距離画像を取得する(ステップS150)。特定領域の距離画像は、被写体の距離画像を表す。ステップS150は、カメラ制御部221と画像処理部222によって実行される処理であり、図8に示す第5ステップに相当する。
次に、アプリケーションプロセッサ220は、ステップS150で求めた特定領域の距離画像に含まれるノイズの特定領域の距離画像に対する割合を求める(ステップS160)。ステップS160は、光沢判定部224によって実行される処理であり、図8に示す第6ステップに相当する。なお、ノイズの割合の求め方の詳細については、図16を用いて後述する。
アプリケーションプロセッサ220は、ノイズの割合がステップS100で求めた閾値以上であるかどうかを判定する(ステップS170)。ステップS170は、図8に示す第6ステップに相当する。
アプリケーションプロセッサ220は、ノイズの割合が閾値以上ではない(S170:NO)と判定すると、特定領域を非光沢領域と判定する(ステップS180A)。ステップS180Aは、光沢判定部224によって実行される処理であり、図8に示す第6ステップに相当する。
一方、アプリケーションプロセッサ220は、ノイズの割合が閾値以上である(S170:YES)と判定すると、特定領域を光沢領域と判定する(ステップS180B)。ステップS180Bは、光沢判定部224によって実行される処理であり、図8に示す第6ステップに相当する。
アプリケーションプロセッサ220は、ステップS180A又はステップS180Bの判定結果に応じた振幅データを特定領域に割り当てる(ステップS190)。アプリケーションプロセッサ220は、振幅データが割り当てられた特定領域を表すデータをメモリ250に格納する。ステップS190は、振幅データ割当部225によって実行される処理であり、図8に示す第6ステップに相当する。
図13に示す処理は、ステップS100の処理が開始することによってスタートされる。
まず、アプリケーションプロセッサ220は、光沢のある物体(以下、光沢物体)の数m(mは1以上の整数)を1に設定する(ステップS101A)。1個目の光沢物体についてカラー画像を取得するための準備である。
アプリケーションプロセッサ220は、m個目の光沢物体の距離画像を取得する(ステップS102A)。光沢物体の距離画像は、ステップS110、S120、S130、S140、及びS150の処理と同様に、カメラ180で取得したカラー画像と、赤外線カメラ190で取得した距離画像とを用いて、光沢物体に対応する特殊領域の距離画像を求めることによって取得される。
すなわち、カメラ180と赤外線カメラ190でそれぞれ撮影する視野に含まれる光沢物体のみの距離画像が、光沢物体に対応する特殊領域の距離画像として取得される。
なお、ステップS102Aで用いるカラー画像と距離画像は、カメラ180と赤外線カメラ190で身の回りにある光沢物体を撮影することによって取得してもよいし、利用者が電子機器100のメモリ250に予め保存してあるカラー画像と距離画像を読み出すことによって取得してもよい。
アプリケーションプロセッサ220は、m個目の光沢物体のノイズ割合を取得する(ステップS103A)。ノイズ割合は、ステップS102Aで取得した特殊領域の距離画像に対して、ステップS160と同様の処理を行うことによって取得することができる。
アプリケーションプロセッサ220は、ノイズ割合は50%以上であるかどうかを判定する(ステップS104A)。ここでは、一例として判定に用いる閾値を50%に設定しているが、利用者の好みで任意の値に設定できるようにしてもよい。
アプリケーションプロセッサ220は、ノイズ割合は50%以上である(S104A:YES)と判定すると、判定対象になっている特殊領域の距離画像を破棄する(ステップS105A)。ノイズ割合が50%以上の特殊領域の距離画像は、光沢のある物体の特定領域の距離画像がある領域(光沢領域)として適切ではないためである。
アプリケーションプロセッサ220は、数値mをインクリメントする(ステップS106A)。すなわち、m=m+1となる。アプリケーションプロセッサ220は、ステップS106Aの処理が終了すると、フローをステップS102Aにリターンする。
また、アプリケーションプロセッサ220は、104Aでノイズ割合は50%以上ではない(S104A:NO)と判定すると、判定対象になっている特殊領域の距離画像とノイズ割合とを光沢領域のデータとして採用する(ステップS107A)。
アプリケーションプロセッサ220は、ステップS107Aで採用した光沢領域のデータをメモリ250に保存する(ステップS108A)。アプリケーションプロセッサ220は、ステップS108Aを終えると、フローをステップS101Bに進行させる。
アプリケーションプロセッサ220は、光沢のない物体(以下、非光沢物体)の数n(nは1以上の整数)を1に設定する(ステップS101B)。1個目の非光沢物体についてカラー画像を取得するための準備である。
アプリケーションプロセッサ220は、n個目の非光沢物体の距離画像を取得する(ステップS102B)。非光沢物体の距離画像は、ステップS110、S120、S130、S140、及びS150の処理と同様に、カメラ180で取得したカラー画像と、赤外線カメラ190で取得した距離画像とを用いて、非光沢物体に対応する特殊領域の距離画像を求めることによって取得される。
すなわち、カメラ180と赤外線カメラ190でそれぞれ撮影する視野に含まれる非光沢物体のみの距離画像が、非光沢物体に対応する特殊領域の距離画像として取得される。
なお、ステップS102Bで用いるカラー画像と距離画像は、カメラ180と赤外線カメラ190で身の回りにある非光沢物体を撮影することによって取得してもよいし、利用者が電子機器100のメモリ250に予め保存してあるカラー画像と距離画像を読み出すことによって取得してもよい。
アプリケーションプロセッサ220は、n個目の非光沢物体のノイズ割合を取得する(ステップS103B)。ノイズ割合は、ステップS102Bで取得した特殊領域の距離画像に対して、ステップS160と同様の処理を行うことによって取得することができる。
アプリケーションプロセッサ220は、ノイズ割合は50%以上であるかどうかを判定する(ステップS104B)。ここでは、一例として判定に用いる閾値を50%に設定しているが、利用者の好みで任意の値に設定できるようにしてもよい。
アプリケーションプロセッサ220は、ノイズ割合は50%以上である(S104B:YES)と判定すると、判定対象になっている特殊領域の距離画像を破棄する(ステップS105B)。ノイズ割合が50%以上の特殊領域の距離画像は、光沢のない物体の特定領域の距離画像がある領域(非光沢領域)として適切ではないためである。
アプリケーションプロセッサ220は、数値nをインクリメントする(ステップS106B)。すなわち、n=n+1となる。アプリケーションプロセッサ220は、ステップS106Bの処理が終了すると、フローをステップS102Bにリターンする。
また、アプリケーションプロセッサ220は、104Bでノイズ割合は50%以上ではない(S104B:NO)と判定すると、判定対象になっている特殊領域の距離画像とノイズ割合とを非光沢領域のデータとして採用する(ステップS107B)。
アプリケーションプロセッサ220は、ステップS107Bで採用した非光沢領域のデータをメモリ250に保存する(ステップS108B)。
アプリケーションプロセッサ220は、メモリ250に保存した光沢領域のデータと、非光沢領域のデータとに含まれる特殊領域のノイズ割合をディスプレイパネル160に表示する(ステップS109B)。
ノイズ割合の閾値を設定する利用者の参考用に、光沢領域のデータと、非光沢領域のデータとに含まれる特殊領域のノイズ割合を表示することとしたものである。
アプリケーションプロセッサ220は、利用者の操作入力によって指定される値に閾値を設定する(ステップS109C)。
例えば、金属の置物2についての特殊領域のノイズ割合が5%で、ぬいぐるみ1についての特殊領域のノイズ割合が0%である場合には、利用者は、例えば、ノイズ割合の閾値を2.5%に設定する。
以上により、ステップS100の閾値が決定する。
図14は、ステップS130の処理の詳細を示すフローチャートである。図14に示すフローを説明するにあたり、図15を用いる。図15は、ステップS130による画像処理を示す図である。
アプリケーションプロセッサ220は、ステップS132の処理で分割されるカラー画像の中の2つの領域のうち面積の大きい方と面積の小さい方のどちらを特定領域として扱うかを設定する(ステップS131)。この設定は、利用者の入力内容に従って行われる。なお、特定領域は、被写体の表示領域を表す領域である。
このような設定を行うのは、被写体を含む視野において、被写体を大きく撮るか、又は、被写体を小さく取るかによって、カラー画像の中における被写体と背景の面積の大小関係が異なるからである。
なお、ここでは、一例として、2つの領域のうち面積の小さい方が特定領域として扱われるように設定されたこととする。
アプリケーションプロセッサ220は、グラフカットにより、カラー画像を被写体と背景との2つの領域に分割した画像を取得する(ステップS132)。例えば、図15の(A)に示す画像2A(カラー画像)に対してグラフカットを行うことにより、図15の(B)に示す画像2A1を得る。画像2A1の中では、領域2A11と、領域2A12とに分割されている。
なお、この時点では、領域2A11と領域2A12のうちのどちらが被写体の表示領域であるかは分かっていない。
次に、アプリケーションプロセッサ220は、一方の領域2A11の面積と、他方の領域2A12との面積を計算する(ステップS133A、S133B)。面積の計算は、例えば、領域2A11と領域2A12とにそれぞれ含まれるピクセル数を数えることによって行うことができる。
ピクセル数の数えるときは、例えば、図10に示すようなXY座標系において、原点Oに最も近いピクセルからX軸正方向(列方向における正方向)に数えて行き、Y軸正方向(行方向における正方向)に1行ずつずらしながら、すべてのピクセルを数えればよい。
例えば、図15の(C)に示すように、領域2A11のピクセル数が92,160 [pixel]で、領域2A12のピクセル数215,040 [pixel]であったとする。
アプリケーションプロセッサ220は、ステップS133A及びS133Bで計算した面積を比較する(ステップS134)。
次いで、アプリケーションプロセッサ220は、比較結果に基づいて、特定領域を決定する(ステップS135)。ここでは、一例として、ステップS131において、2つの領域のうち面積の小さい方が被写体の表示領域を表す特定領域として扱われるように設定されているため、領域2A11と領域2A12とのうち、面積の小さい領域2A11が特定領域として決定される。
次いで、アプリケーションプロセッサ220は、特定領域の画像を取得する(ステップS136)。例えば、図15の(B)に示す領域2A11を特定領域とする画像2B(図15の(D)参照)を取得する。
画像2Bでは、被写体が表示される領域である特定領域が白く示されており、被写体以外の背景の部分が黒く示されている。画像2Bは、特定領域にのみデータが存在し、特定領域のデータは、被写体の画像が存在するピクセルを表す。
次に、図16を用いて、ノイズ割合の取得方法について説明する。
図16は、ノイズ割合を取得する処理を示すフローチャートである。
図16に示すフローは、ステップS160においてノイズ割合を決定する処理の詳細を示すものである。図16に示すフローは、振幅データ割当部225によって実行される。
以下では、特定領域に含まれるピクセル数をP、特定領域に含まれるピクセルのうち、k(1≦k≦P)番目のピクセルに与えられる距離を表す値をI(k)、ノイズの生じているピクセル数をN(0≦N≦P)、ノイズ割合をR(0%≦R≦100%)とする。
なお、k番目とは、ピクセルを数えるときの順番と同様に、原点O(図10参照)に最も近いピクセルからX軸正方向(列方向における正方向)に順番を割り振り、Y軸正方向(行方向における正方向)に1行ずつずらしながら、すべてのピクセルに順番を割り振ればよい。
アプリケーションプロセッサ220は、処理がスタートすると、特定領域に含まれる距離画像のピクセル数Pを取得する(ステップS161)。ピクセル数としては、ステップS133A及びS133Bで数えたピクセル数のうち、ステップS135で特定領域であると判定された方のピクセル数を取得すればよい。例えば、図15の(C)に示す領域2A11の92,160 [pixel]を取得する。
アプリケーションプロセッサ220は、k=1、N=0に設定する(ステップS162)。
アプリケーションプロセッサ220は、k番目のピクセルに与えられる距離を表す値I(k)を参照する(ステップS163)。値I(k)は、特定領域のk番目のピクセルから読み出せばよい。
アプリケーションプロセッサ220は、k番目のピクセルの距離を表す値I(k)があるかどうかを判定する(ステップS164)。距離を表す値I(k)があるかどうかは、距離を表す値I(k)が0(ゼロ)であれば値I(k)がないと判定し、距離を表す値I(k)が0(ゼロ)でなければ(正の値があれば)距離を表す値I(k)があると判定する。
アプリケーションプロセッサ220は、距離を表す値I(k)がない(S164:NO)と判定すると、ノイズの生じているピクセル数Nをインクリメントする(ステップS165)。すなわち、N=N+1となる。アプリケーションプロセッサ220は、ステップS165の処理が終わると、フローをステップS166に進行する。
一方、アプリケーションプロセッサ220は、距離を表す値I(k)がある(S164:YES)と判定すると、フローをステップS166に進行させ、kの値をインクリメントする(ステップS166)。すなわち、k=k+1となる。
アプリケーションプロセッサ220は、k>Pが成立するかどうかを判定する(ステップS167)。
アプリケーションプロセッサ220は、k>Pが成立しない(S167:NO)と判定すると、フローをステップS163にリターンする。
一方、アプリケーションプロセッサ220は、k>Pが成立する(S167:YES)と判定すると、フローをステップS168に進行させる。なお、k>Pが成立するのは、特定領域に含まれるすべてのピクセルについて処理が終わり、k=P+1になった場合である。
アプリケーションプロセッサ220は、ノイズ割合を求める(ステップS168)。ノイズ割合は、次の式(3)によって求められる。
R=100×N/P (3)
すなわち、ノイズ割合は、すべての画素の数Pに対する、ノイズの生じている画素数Nの割合を百分率で表したものである。
以上により、ステップS160におけるノイズ割合が求められる。
図17は、振幅データ割当部225によって特定領域に割り当てられた振幅データを示す図である。
特定領域のピクセルは、図10に示すXY座標を用いて表される。図17には、X軸方向において1列目、2列目、3列目で、Y軸方向において1行目のピクセルに割り当てられる振幅データ(電圧値)を示す。
なお、X軸方向において1列目とは、X軸方向において原点Oに最も近い列を表す。また、Y軸方向において1行目とは、Y軸方向において原点Oに最も近い行を表す。図17に示すデータは、特定領域の原点に最も近い一部のピクセルに与えられる振幅値を示しており、X軸方向及びY軸方向にさらにデータを有する。
なお、振幅データは、光沢物体用の振幅データと、非光沢物体用の振幅データとをメモリ250に格納しておき、特定領域の各ピクセルに振幅データ割当部225が振幅データを割り当てる際に読み出せばよい。
図18は、メモリ250に格納する光沢物体用の振幅データと、非光沢物体用の振幅データとを示す図である。
図18では、一例として、光沢物体用の振幅データは1.0(V)に設定されており、非光沢物体用の振幅データは0.5(V)に設定されている。なお、振幅データは、特定領域のピクセルによって異なる値に設定されてもよい。例えば、ぬいぐるみ1(図8参照)のように、表面に凹凸がある場合には、一定のピクセル数おきに、振幅データが周期的に変化するようにしてもよい。このような振幅データを特定領域に割り当てれば、ぬいぐるみ1の表面の触感をより忠実に再現することができる。
図19は、メモリ250に格納されるデータを示す図である。
図19に示すデータは、アプリケーションの種類を表すデータと、特定領域の座標値を表す領域データと、振動パターンを表すパターンデータとを関連付けたデータである。
アプリケーションの種類を表すデータとして、アプリケーションID(Identification)を示す。アプリケーションIDは、例えば、振動データを関連付ける特定領域毎に割り振ればよい。すなわち、例えば、ぬいぐるみ1(図8参照)の特定領域と、金属の置物2(図8参照)の特定領域とでは、アプリケーションIDが異なるようにすればよい。
また、領域データとして、特定領域の座標値を表す式f1~f4を示す。式f1~f4は、例えば、画像1Bと2Bに含まれる特定領域(図8の第3ステップ参照)のような特定領域の座標を表す式である。また、振動パターンを表すパターンデータとして、P1〜P4を示す。パターンデータP1〜P4は、特定領域内の各ピクセルについて、図18に示す振幅データが割り当てられたデータである。
次に、図20を用いて、実施の形態の電子機器100の駆動制御部240が実行する処理について説明する。
図20は、実施の形態の電子機器100の駆動制御部240が実行する処理を示すフローチャートである。
電子機器100のOS(Operating System)は、所定の制御周期毎に電子機器100を駆動するための制御を実行する。このため、駆動制御部240は、所定の制御周期毎に、図20に示すフローを所定の制御周期毎に繰り返し実行する。
駆動制御部240は、電子機器100の電源がオンにされることにより、処理をスタートさせる。
駆動制御部240は、現在のアプリケーションの種類に応じて、振動パターンと関連付けられた領域データを取得する(ステップS1)。
駆動制御部240は、移動速度が所定の閾値速度以上であるか否かを判定する(ステップS2)。移動速度は、ベクトル演算によって算出すればよい。なお、閾値速度は、所謂フリック操作、スワイプ操作、又はドラッグ操作等のように指先を移動させながら操作入力を行う際における指先の移動速度の最低速度として設定すればよい。このような最低速度は、実験結果に基づいて設定してもよく、タッチパネル150の分解能等に応じて設定してもよい。
駆動制御部240は、ステップS2で移動速度が所定の閾値速度以上であると判定した場合は、現在の位置データが表す座標が、ステップS1で求めた領域データが表す特定領域の中になるか否かを判定する(ステップS3)。
駆動制御部240は、現在の位置データが表す座標が、ステップS1で求めた領域データが表す特定領域の中にあると判定する場合は、現在の位置データが表す座標に対応する振動パターンを図19に示すデータから求める(ステップS4)。
駆動制御部240は、振幅データ出力する(ステップS5)。これにより、振幅変調器320において、正弦波発生器310から出力される正弦波の振幅が変調されることによって駆動信号が生成され、振動素子140が駆動される。
一方、ステップS2で移動速度が所定の閾値速度以上ではないと判定した場合(S2:NO)と、ステップS3で現在の座標が、ステップS1で求めた領域データが表す特定領域の中にないと判定した場合は、駆動制御部240は、振幅値をゼロに設定する(ステップS6)。
この結果、駆動制御部240は、振幅値がゼロの振幅データが出力され、振幅変調器320において、正弦波発生器310から出力される正弦波の振幅がゼロに変調された駆動信号が生成される。このため、この場合は、振動素子140は駆動されない。
図21は、実施の形態1の電子機器100の動作例を示す図である。
図21において、横軸は時間軸を表し、縦軸は振幅データの振幅値を表す。また、ここでは、利用者がトップパネル120の表面120Aに沿って指先を移動させる速度は略一定であることとする。また、ディスプレイパネル160には、光沢のある物体が表示されており、利用者は、光沢のある物体の画像をなぞる操作を行う。
トップパネル120の特定領域の外に触れた指先を、時刻t1において利用者が左方向に移動し始めたとする。そして、時刻t2において、指先が光沢のある物体が表示される特定領域内に入ると、駆動制御部240は、振動素子140を振動する。
このときの振動パターンは、振幅がA11であり、指先が特定領域内で移動している間は、振動が連続する駆動パターンである。
時刻t3で利用者の指先が特定領域の外に出ると、駆動制御部240は、振幅値をゼロに設定する。このため、時刻t3の直後に振幅がゼロになる。
このように、指先が特定領域内で移動している間は、駆動制御部240は、一例として、振幅が一定値(A11)の振幅データを出力する。このため、利用者が特定領域に表示される物体の画像に触れながら指先を移動している間は、利用者の指先に掛かる動摩擦力は低下し、利用者に指先がつるつると滑る感覚を提供することができ、利用者は光沢のある物体の触感を得ることができる。なお、光沢のない物体の場合は、振幅が小さくなるため、触感が弱くなる。例えば、ぬいぐるみ1(図8参照)の場合は、ふわふわした柔らかい触感が提供される。
図22は、電子機器100の利用シーンを示す図である。
特定領域に振幅データを割り当てた後に、利用者は、電子機器100のディスプレイパネル160に骸骨の形をした金属の置物2の画像2Aを表示し、トップパネル120を指でなぞると、金属の置物2が表示されている特定領域以外では、振動素子140(図2、3、7参照)が振動されないため、スクイーズ効果は生じない。
利用者の指先が、金属の置物2が表示されている特定領域の内部で移動すると、上述のように特定領域に割り当てられた振幅データによって強度が変調された駆動信号によって振動素子140が駆動される。
この結果、利用者は、金属の置物2が表示されている特定領域の内部で指先を移動させると、スクイーズ効果によってつるつるした触感を得ることができる。
すなわち、金属の置物2が表示されている特定領域以外では、短い矢印で示すように、利用者の指先はゆっくりと移動し、金属の置物2が表示されている特定領域の内部では、長い矢印で示すように利用者の指先が速い速度で移動する。
また、ディスプレイパネル160にぬいぐるみ1(図8参照)を表示して、ぬいぐるみ1が表示されている特定領域の内部で移動すると、金属の置物2よりも小さい振幅データによって強度が変調された駆動信号によって振動素子140が駆動される。このため、利用者は、ぬいぐるみ1を触っているようなふわふわした触感を得ることができる。
以上、実施の形態1によれば、光沢の有無に応じた触感を提供することができる電子機器100と、駆動制御方法とを提供することができる。
なお、特定領域に割り当てる振幅データは、利用者が自由に設定できるようにしてもよい。この場合は、利用者の好みに応じた様々な触感を提供することができる。
また、以上では、カメラ180から取得したカラー画像に対して画像処理を行うことにより、特定領域の画像を取得する形態について説明した。しかしながら、電子機器100は、カメラ180を含まずに、赤外線カメラ190で赤外線画像を取得し、上述したカラー画像の代わりに、赤外線画像に対して画像処理を行うことにより、特定領域の画像を取得してもよい。赤外線画像とは、被写体に赤外線を照射し、反射光の強度を画素値にした画像であり、白黒で表される画像である。
この場合には、電子機器100のディスプレイパネル160に赤外線画像を表示すればよい。
また、カメラ180から取得したカラー画像に対して画像処理を行うことによって特定領域の画像を取得する場合に、赤外線カメラ190で取得した赤外線画像をディスプレイパネル160に表示してもよい。
また、これとは逆に、赤外線カメラ190で取得した赤外線画像に対して画像処理を行うことによって特定領域の画像を取得する場合に、カメラ180から取得したカラー画像をディスプレイパネル160に表示してもよい。
また、カメラ180で取得する画像は、カラー画像ではなく白黒の画像であってもよい。
<実施の形態2>
実施の形態2は、ステップS100(図12参照)における閾値の設定方法が実施の形態1と異なる。それ以外は、実施の形態1の電子機器100と同様であるため、同様の構成要素には同一符号を付し、その説明を省略する。
図23は、実施の形態2の電子機器100が振幅データを割り当てるために実行する処理を表すフローチャートを示す図である。図23に示す処理は、アプリケーションプロセッサ220によって実行される。
図23に示すフローのうち、ステップS101A〜S108Aと、ステップS101B〜S108Bとは、図13に示すステップS101A〜S108Aと、ステップS101B〜S108Bと同様である。
ただし、ステップS101Aでは、光沢領域のデータの数x1を0(ゼロ)に設定する処理が追加されている。また、ステップS101Bでは、非光沢領域のデータの数y1を0(ゼロ)に設定する処理が追加されている。なお、x1、y1はともに2以上の整数である。
また、ステップS107AとS108Aとの間には、ステップS208Aが挿入されている。また、ステップS108AとS101Bとの間には、ステップS209Aが挿入されている。
また、ステップS107BとS108Bとの間には、ステップS208Bが挿入されている。また、ステップS108Bの後には、ステップS209B、S210A、S210Bが設けられている。
ここでは、一例として、判別分析法を用いて、アプリケーションプロセッサ220が閾値を自動的に決定する。判別分析法とは、ヒストグラムを2つのクラスに分割する手法である。このため、図23に加えて、図24を用いて説明を行う。図24は、ノイズ割合の確率分布を示す図である。
実施の形態2では、アプリケーションプロセッサ220は、光沢のある物体(以下、光沢物体)の数m(mは1以上の整数)を1に設定するとともに、光沢領域のデータの数x1を0(ゼロ)に設定する(ステップS101A)。1個目の光沢物体についてカラー画像を取得するための準備である。
次いで、アプリケーションプロセッサ220は、実施の形態1のステップS102AからステップS107Aと同様の処理を行う。
アプリケーションプロセッサ220は、ステップS107Aで光沢領域のデータを採用すると、光沢領域のデータの数x1をインクリメントする(ステップS208A)。
次いで、アプリケーションプロセッサ220は、ステップS107Aで採用した光沢領域のデータをメモリ250に保存する(ステップS108A)。
次いで、アプリケーションプロセッサ220は、光沢領域のデータの数x1が所定の数x2に達したかを判定する(ステップS209A)。所定の数x2は、予め設定された、必要な光沢領域のデータの数である。光沢領域のデータの数x2の設定は、利用者が決めてもよいし、電子機器100に予め設定されていてもよい。
アプリケーションプロセッサ220は、光沢領域のデータの数x1が所定の数x2に達した(S209A:YES)と判定すると、フローをステップS101Bに進行させる。
また、アプリケーションプロセッサ220は、光沢領域のデータの数x1が所定の数x2に達していない(S209A:NO)と判定すると、フローをステップS106Aにリターンする。この結果、光沢領域のデータの数x1が所定の数x2に達するまで処理が繰り返される。
アプリケーションプロセッサ220は、光沢のない物体(以下、非光沢物体)の数n(nは1以上の整数)を1に設定するとともに、非光沢領域のデータの数y1を0(ゼロ)に設定する(ステップS101B)。1個目の非光沢物体についてカラー画像を取得するための準備である。
次いで、アプリケーションプロセッサ220は、実施の形態1のステップS102BからステップS107Bと同様の処理を行う。
アプリケーションプロセッサ220は、ステップS107Bで非光沢領域のデータを採用すると、非光沢領域のデータの数y1をインクリメントする(ステップS208B)。
次いで、アプリケーションプロセッサ220は、ステップS107Bで採用した光沢領域のデータをメモリ250に保存する(ステップS108B)。
次いで、アプリケーションプロセッサ220は、非光沢領域のデータの数y1が所定の数y2に達したかを判定する(ステップS209B)。所定の数y2は、予め設定された、必要な非光沢領域のデータの数である。非光沢領域のデータの数y2の設定は、利用者が決めてもよいし、電子機器100に予め設定されていてもよい。
アプリケーションプロセッサ220は、非光沢領域のデータの数y1が所定の数y2に達した(S209B:YES)と判定すると、フローをステップS210Aに進行させる。
また、アプリケーションプロセッサ220は、非光沢領域のデータの数y1が所定の数y2に達していない(S209B:NO)と判定すると、フローをステップS106Bにリターンする。この結果、光沢領域のデータの数y1が所定の数y2に達するまで処理が繰り返される。
アプリケーションプロセッサ220は、ステップS209Bの処理を終えると、ノイズ割合の確率分布を作成し、分離度αを求める(ステップS210A)。
アプリケーションプロセッサ220は、確率分布に対して、判別分析法により、図24に示す通り、まず、仮の閾値Thを設定し、非光沢領域データのサンプル数ω、ノイズ割合の平均m、ノイズ割合の分散σと、光沢領域データのサンプル数ω、ノイズ割合の平均m、ノイズ割合の分散σとを求める。
なお、ここでは、光沢領域データとして採用された複数のデータの群を光沢領域データクラスと称し、非光沢領域データとして採用された複数のデータの群を非光沢領域データクラスと称す。
次に、アプリケーションプロセッサ220は、これらの値を用いて、式(4)、(5)に従って、クラス内分散とクラス間分散を求める。そして、クラス内分散とクラス間分散から、式(6)に従って分離度αを求める。
Figure 0006500986
アプリケーションプロセッサ220は、分離度αを求める計算を、仮の閾値Thを動かしながら繰り返す。
アプリケーションプロセッサ220は、最終的に、分離度αを最大化する仮の閾値ThをステップS100で用いる閾値として決定する(ステップS210B)。
以上により、ステップS100で用いる閾値を決定することができる。
また、判別分析法の代わりにモード法を用いてもよい。モード法とは、判別分析法と同様で、ヒストグラムを2つのクラスに分割する手法である。
モード法を用いる場合は、図23に示すステップS210Bの代わりに、次のような処理を行う。
図25は、モード法により閾値を決定する方法を示す図である。
まず、確率分布に含まれる2つの極大値を探索する。ここでは、極大値1と極大値2が求められたとする。
次に、極大値1と極大値2の間の極小値を探索し、極小値となる点をステップS100で用いる閾値に決定する。
<実施の形態3>
実施の形態3は、ステップS130(図12参照)における特定領域の画像の取得方法が実施の形態1と異なる。それ以外は、実施の形態1の電子機器100と同様であるため、同様の構成要素には同一符号を付し、その説明を省略する。
図26は、実施の形態3による特定領域の画像の取得方法の処理を示すフローチャートである。図27は、図26に示すフローによって行われる画像処理を示す図である。
アプリケーションプロセッサ220は、カメラ180を用いて背景画像を取得する(ステップS331)。例えば、図27の(A)に示すように、物体7(図27の(B)参照)を配置しない状態で、背景のみを視野に入れてカメラ180で撮影を行うことにより、背景画像8Aを取得する。
次に、アプリケーションプロセッサ220は、カメラ180を用いて物体7の画像を取得する(ステップS332)。例えば、図27の(B)に示すように、物体7を配置した状態で、物体7と背景とを視野に入れてカメラ180で撮影を行うことにより、物体画像8Bを取得する。
次に、アプリケーションプロセッサ220は、物体画像8Bの画素値から背景画像8Aの画素値を減算して、物体7の差分画像8Cを取得する(ステップS333)。図27の(C)に示すように、物体画像8Bの画素値から背景画像8Aの画素値を減算して、物体7についての差分画像8Cを取得する。
次に、アプリケーションプロセッサ220は、差分画像8Cを2値化して、特定領域の画像8Dを取得する(ステップS334)。特定領域の画像8Dは、図27の(D)に示すように、物体7の表示領域8D1(白い領域)内に'1'の値を持ち、物体7の表示領域8D1以外の領域8D2(黒い領域)内に'0'の値を持つデータである。表示領域8D1は、特定領域である。
2値化を行う際には、差分画像8Cに対して、'0'に限りなく近い値の閾値を用いて、画素値がある表示領域8D1と、画素値がない領域8D2とに分割すればよい。
以上のような処理を行うことにより、特定領域を求めてもよい。
<実施の形態4>
図28は、実施の形態4の電子機器400を示す側面図である。図28は、図3に対応する側面を示す図である。
実施の形態4の電子機器400は、実施の形態1の電子機器100のように振動素子140を用いて触感を提供するのではなく、トップパネル120とタッチパネル150との間に配設される透明な電極板410を利用して触感を提供する。なお、トップパネル120の表面120Aと反対側の面は、絶縁面である。トップパネル120がガラス板の場合には、表面120Aと反対側の面に絶縁コーティングを施してもよい。
電極板410に電圧を印加すると、トップパネル120の表面120Aには電荷が生じる。ここで、一例として、トップパネル120の表面120Aに負の電荷が生じたとする。
このような状態で、利用者が指先を近づけると、指先に正の電荷が誘導されるため、表面120Aに負の電荷と指先に正の電荷とが引き合うことによって静電気力が発生し、指先にかかる摩擦力が増大する。
このため、利用者の指先がトップパネル120の表面に触れる位置(操作入力の位置)が特定領域の中にあって、かつ、操作入力の位置が移動しているときには、電極板410に電圧を印加しないようにする。電極板410に電圧を印加して静電気力が発生している場合よりも、利用者の指先にかかる摩擦力を低減するためである。
一方、操作入力の位置が特定領域以外の領域にあって、かつ、操作入力の位置が移動しているときには、電極板410に電圧を印加する。電極板410に電圧を印加して静電気力が発生させることにより、静電気力が発生していない場合よりも、利用者の指先にかかる摩擦力を増大させるためである。
このようにすれば、実施の形態1の電子機器100と同様に、光沢の有無に応じた触感を提供することができる。
以上、本発明の例示的な実施の形態の電子機器、及び、駆動制御方法について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
1 ぬいぐるみ
2 金属の置物
100 電子機器
110 筐体
120 トップパネル
130 両面テープ
140 振動素子
150 タッチパネル
160 ディスプレイパネル
170 基板
180 カメラ
190 赤外線カメラ
191 赤外線光源
200 制御部
220 アプリケーションプロセッサ
221 カメラ制御部
222 画像処理部
223 距離画像抽出部
224 光沢判定部
225 振幅データ割当部
230 通信プロセッサ
240 駆動制御部
250 メモリ
310 正弦波発生器
320 振幅変調器
410 電極板

Claims (11)

  1. 被写体を含む視野の画像と距離画像を取得する撮像部と、
    前記画像と、前記距離画像とに基づき、前記被写体の距離画像を抽出する距離画像抽出部と、
    前記被写体の距離画像に含まれるデータの欠落部に基づき、前記被写体が光沢のある物体であるかどうかを判定する光沢判定部と、
    前記画像を表示する表示部と、
    前記表示部の表示面側に配設され、操作面を有するトップパネルと、
    前記操作面に行われる操作入力の位置を検出する位置検出部と、
    前記操作面に超音波帯の固有振動を発生させる駆動信号で駆動され、前記操作面に超音波帯の固有振動を発生させる振動素子と、
    前記光沢判定部によって光沢のある物体であると判定された前記被写体の表示領域に、前記駆動信号の振幅データとして第1振幅を割り当て、前記光沢判定部によって光沢のない物体であると判定された前記被写体の表示領域に、前記駆動信号の振幅データとして前記第1振幅よりも小さい第2振幅を割り当てる振幅データ割当部と、
    前記光沢判定部によって光沢のある物体であると判定される前記被写体が前記表示部に表示されている領域内で前記操作面への操作入力が行われると、前記操作入力の位置の時間的変化度合に応じて前記第1振幅が割り当てられた前記駆動信号で前記振動素子を駆動し、前記光沢判定部によって光沢のない物体であると判定される前記被写体が前記表示部に表示されている領域内で前記操作面への操作入力が行われると、前記操作入力の位置の時間的変化度合に応じて前記第2振幅が割り当てられた前記駆動信号で前記振動素子を駆動する、駆動制御部と
    を含む、電子機器。
  2. 前記駆動制御部は、前記被写体が前記表示部に表示されている領域以外で前記操作面への操作入力が行われると、前記振動素子を駆動しない、請求項1記載の電子機器。
  3. 前記光沢判定部は、前記データの欠落部が所定の閾値以上の場合に、前記被写体が光沢のある物体であると判定する、請求項1又は2記載の電子機器。
  4. 前記第1振幅及び前記第2振幅を表す振幅データを格納するメモリをさらに含み、
    前記振幅データ割当部は、前記メモリに格納される前記第1振幅及び前記第2振幅を前記振幅データとして割り当てる、請求項1乃至3のいずれか一項記載の電子機器。
  5. 前記振幅データ割当部は、利用者による前記操作入力の内容に基づいて、前記第1振幅又は前記第2振幅を設定する、請求項1乃至3のいずれか一項記載の電子機器。
  6. 前記第2振幅は、前記光沢判定部によって光沢のない物体であると判定された前記被写体の表示領域内の位置によって異なる、請求項1乃至5のいずれか一項記載の電子機器。
  7. 前記撮像部は、
    前記画像を取得する第1撮像部と、
    前記距離画像を取得する第2撮像部と
    を有する、請求項1乃至6のいずれか一項記載の電子機器。
  8. 前記第1撮像部と前記第2撮像部は、近接して並べて配置される、請求項7記載の電子機器。
  9. 前記第1撮像部は、前記画像としてカラー画像を取得するカメラである、請求項7又は8記載の電子機器。
  10. 前記撮像部は、前記画像として赤外線画像を取得するとともに、前記距離画像を取得する赤外線カメラである、請求項1乃至6のいずれか一項記載の電子機器。
  11. 被写体を含む視野の画像と距離画像を取得する撮像部と、前記画像と、前記距離画像とに基づき、前記被写体の距離画像を抽出する距離画像抽出部と、前記被写体の距離画像に含まれるデータの欠落部に基づき、前記被写体が光沢のある物体であるかどうかを判定する光沢判定部と、前記画像を表示する表示部と、前記表示部の表示面側に配設され、操作面を有するトップパネルと、前記操作面に行われる操作入力の位置を検出する位置検出部と、前記操作面に超音波帯の固有振動を発生させる駆動信号で駆動され、前記操作面に超音波帯の固有振動を発生させる振動素子とを含む電子機器の前記振動素子を駆動する、駆動制御方法であって、
    コンピュータが、
    前記光沢判定部によって光沢のある物体であると判定された前記被写体の表示領域に、前記駆動信号の振幅データとして第1振幅を割り当て、前記光沢判定部によって光沢のない物体であると判定された前記被写体の表示領域に、前記駆動信号の振幅データとして前記第1振幅よりも小さい第2振幅を割り当て、
    前記光沢判定部によって光沢のある物体であると判定される前記被写体が前記表示部に表示されている領域内で前記操作面への操作入力が行われると、前記操作入力の位置の時間的変化度合に応じて前記第1振幅が割り当てられた前記駆動信号で前記振動素子を駆動し、前記光沢判定部によって光沢のない物体であると判定される前記被写体が前記表示部に表示されている領域内で前記操作面への操作入力が行われると、前記操作入力の位置の時間的変化度合に応じて前記第2振幅が割り当てられた前記駆動信号で前記振動素子を駆動する、駆動制御方法。
JP2017524524A 2015-06-25 2015-06-25 電子機器、及び、駆動制御方法 Expired - Fee Related JP6500986B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/068370 WO2016208036A1 (ja) 2015-06-25 2015-06-25 電子機器、及び、駆動制御方法

Publications (2)

Publication Number Publication Date
JPWO2016208036A1 JPWO2016208036A1 (ja) 2018-03-29
JP6500986B2 true JP6500986B2 (ja) 2019-04-17

Family

ID=57585268

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017524524A Expired - Fee Related JP6500986B2 (ja) 2015-06-25 2015-06-25 電子機器、及び、駆動制御方法

Country Status (4)

Country Link
US (1) US20180088698A1 (ja)
JP (1) JP6500986B2 (ja)
CN (1) CN107710114A (ja)
WO (1) WO2016208036A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102591807B1 (ko) * 2016-11-21 2023-10-23 한국전자통신연구원 촉감자극을 생성하는 방법 및 장치
US10977910B1 (en) * 2017-09-06 2021-04-13 Apple Inc. Tactile outputs for input structures of electronic devices
CN110007841B (zh) * 2019-03-29 2021-05-18 联想(北京)有限公司 一种控制方法和电子设备
JP7054794B2 (ja) * 2019-12-09 2022-04-15 パナソニックIpマネジメント株式会社 入力装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06300543A (ja) * 1993-04-19 1994-10-28 Toshiba Eng Co Ltd 光沢物抽出装置
JP2003308152A (ja) * 2002-04-17 2003-10-31 Nippon Hoso Kyokai <Nhk> 触感提示装置
US8405618B2 (en) * 2006-03-24 2013-03-26 Northwestern University Haptic device with indirect haptic feedback
JP5541653B2 (ja) * 2009-04-23 2014-07-09 キヤノン株式会社 撮像装置及びその制御方法
CN103973971B (zh) * 2013-01-30 2017-10-13 奥林巴斯株式会社 信息设备以及信息设备的控制方法
US9158379B2 (en) * 2013-09-06 2015-10-13 Immersion Corporation Haptic warping system that transforms a haptic signal into a collection of vibrotactile haptic effect patterns
KR101550601B1 (ko) * 2013-09-25 2015-09-07 현대자동차 주식회사 촉감 피드백을 제공하는 곡면 터치 디스플레이 장치 및 그 방법
CN104662495B (zh) * 2013-09-26 2017-06-23 富士通株式会社 驱动控制装置、电子设备以及驱动控制方法
WO2015121971A1 (ja) * 2014-02-14 2015-08-20 富士通株式会社 触感提供装置、及び、システム
CN104199547B (zh) * 2014-08-29 2017-05-17 福州瑞芯微电子股份有限公司 一种虚拟触屏操作装置、系统及方法

Also Published As

Publication number Publication date
US20180088698A1 (en) 2018-03-29
JPWO2016208036A1 (ja) 2018-03-29
WO2016208036A1 (ja) 2016-12-29
CN107710114A (zh) 2018-02-16

Similar Documents

Publication Publication Date Title
JP6500986B2 (ja) 電子機器、及び、駆動制御方法
US20220276713A1 (en) Touch Display Device with Tactile Feedback
CN104714733B (zh) 图像处理设备及触感控制方法
KR101516926B1 (ko) 구동 제어 장치, 전자 기기 및 구동 제어 방법
JP6234364B2 (ja) 電気振動型タクタイル・ディスプレイ
CN103649900B (zh) 边缘手势
JP6013583B2 (ja) 有効インターフェース要素の強調のための方式
US20120326995A1 (en) Virtual touch panel system and interactive mode auto-switching method
CN108431734B (zh) 用于非触摸式表面交互的触觉反馈
US20160349846A1 (en) Electronic device, input apparatus, and drive controlling method
US20120098753A1 (en) System and method for providing multi-dimensional touch input vector
CN111475059A (zh) 基于近距离传感器和图像传感器的手势检测
CN109725724B (zh) 有屏设备的手势控制方法和装置
CN107430455A (zh) 驱动控制装置、电子设备、驱动控制程序以及驱动控制方法
Zhang et al. Multidimensional tactile sensor with a thin compound eye-inspired imaging system
JP6819783B2 (ja) 駆動制御装置、電子機器、及び駆動制御方法
JP6589995B2 (ja) 電子機器、及び、電子機器の駆動制御方法
JP2015080090A (ja) 電気触覚提示装置およびプログラム並びに記録媒体
JP2017174210A (ja) 電子機器、及び、電子機器の駆動方法
WO2016178289A1 (ja) 電子機器及び振動制御プログラム
AU2015202408B2 (en) Drive controlling apparatus, electronic device and drive controlling method
JP6512299B2 (ja) 駆動制御装置、電子機器、駆動制御プログラム、及び駆動制御方法
Nakhate et al. Touchless Screen Technology
Blundell 3D Displays and Spatial Interaction: Exploring the Science, Art, Evolution and Use of

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171205

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190304

R150 Certificate of patent or registration of utility model

Ref document number: 6500986

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees