JP6245938B2 - Information processing apparatus and control method thereof, computer program, and storage medium - Google Patents

Information processing apparatus and control method thereof, computer program, and storage medium Download PDF

Info

Publication number
JP6245938B2
JP6245938B2 JP2013222524A JP2013222524A JP6245938B2 JP 6245938 B2 JP6245938 B2 JP 6245938B2 JP 2013222524 A JP2013222524 A JP 2013222524A JP 2013222524 A JP2013222524 A JP 2013222524A JP 6245938 B2 JP6245938 B2 JP 6245938B2
Authority
JP
Japan
Prior art keywords
touch
unit
recognition target
target surface
target
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
JP2013222524A
Other languages
Japanese (ja)
Other versions
JP2015084173A (en
JP2015084173A5 (en
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2013222524A priority Critical patent/JP6245938B2/en
Publication of JP2015084173A publication Critical patent/JP2015084173A/en
Publication of JP2015084173A5 publication Critical patent/JP2015084173A5/ja
Application granted granted Critical
Publication of JP6245938B2 publication Critical patent/JP6245938B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Position Input By Displaying (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は認識対象とタッチ対象面の近接状態に基づいて、当該認識対象によって行われるタッチ操作を認識する技術に関する。   The present invention relates to a technique for recognizing a touch operation performed by a recognition target based on a proximity state between the recognition target and a touch target surface.

近年では、AR(Augmented Reality)やMR(Mixed Reality)といった環境において、物理的には存在しないタッチ対象面(仮想面)に対するタッチ操作が行われる場面がある。また、プロジェクションによってユーザインタフェース(以下、UI)を壁や机、物体の表面など任意のタッチ対象面に投影し、投影したUIに対してタッチ操作が行われる場面がある。以下、特に、UIを構成する部品や動画像を投影対象とする面(例えば、壁面や机の上面)に投影し、投影した内容に対するユーザの操作を実現するUIの形態を投影UIという。投影UIにおいては、タッチ状態における認識対象の動作に基づいて、行われたタッチ操作の種別を判定する。これによって、従来のタッチパネルUIにおけるタップ(画面中の1箇所を軽くたたくようにタッチする操作で、マウス操作におけるクリックに相当)やドラッグ(タッチしたまま指示位置を動かす)と同等の操作が実現されている。以下、タップやドラッグ等といった操作の種別を操作種別という。   In recent years, in an environment such as AR (Augmented Reality) and MR (Mixed Reality), there is a scene where a touch operation is performed on a touch target surface (virtual surface) that does not physically exist. Further, there is a scene in which a user interface (hereinafter referred to as UI) is projected onto an arbitrary touch target surface such as a wall, a desk, or an object surface by projection, and a touch operation is performed on the projected UI. Hereinafter, in particular, a UI form that projects a part or a moving image constituting a UI onto a projection target surface (for example, a wall surface or an upper surface of a desk) and realizes a user operation on the projected content is referred to as a projection UI. In the projection UI, the type of the touch operation performed is determined based on the recognition target operation in the touch state. As a result, an operation equivalent to a tap on a conventional touch panel UI (touching with a single tap on the screen, equivalent to a click on a mouse operation) or dragging (moving the indicated position while touching) is realized. ing. Hereinafter, the type of operation such as tap or drag is referred to as an operation type.

投影UIや仮想面に対するタッチ操作を認識する場合、ステレオカメラや距離画像センサ等を用い、タッチ対象面と、操作を行う指示部として認識すべき認識対象(例えばユーザの指)との間の距離に基づき、両者が接触しているか否かを判断することが多い。具体的には、タッチ対象面と、タッチ対象面に近接している認識対象との間の距離に所定の閾値を設ける。そして、当該距離が閾値より小さければ、タッチ対象面がタッチされている状態を示す「タッチ状態」、閾値より大きければタッチ対象面がタッチされていない状態を示す「非タッチ状態(リリース状態)」であるという判定を行う。以下、このように、認識対象とタッチ操作の対象面の近接状態に基づいてタッチ状態と非タッチ状態を判定する処理をタッチ判定、タッチ判定にいる閾値をタッチ判定閾値と記載する。   When recognizing a touch operation on a projection UI or a virtual surface, a distance between a touch target surface and a recognition target (for example, a user's finger) to be recognized as an instruction unit for performing the operation using a stereo camera, a distance image sensor, or the like. In many cases, it is determined whether or not both are in contact with each other. Specifically, a predetermined threshold is provided for the distance between the touch target surface and the recognition target close to the touch target surface. If the distance is smaller than the threshold, a “touch state” indicating that the touch target surface is touched, and if the distance is greater than the threshold, a “non-touch state (release state)” indicating a state where the touch target surface is not touched. It is determined that Hereinafter, the process for determining the touch state and the non-touch state based on the proximity state between the recognition target and the target surface of the touch operation will be described as touch determination, and the threshold for touch determination will be referred to as a touch determination threshold.

このように、タッチ対象面と認識対象の間の近接状態に応じてユーザによるタッチ操作を判定する方法として、特許文献1が提案されている。特許文献1では、センサと認識対象の間の距離に応じて表示内容を変化させることで、ユーザによる操作が、装置によってどのように認識されるかを教示し、ユーザの入力を支援することを可能にしている。   As described above, Patent Document 1 has been proposed as a method of determining a touch operation by a user according to a proximity state between a touch target surface and a recognition target. Patent Document 1 teaches how the operation by the user is recognized by the device by changing the display content according to the distance between the sensor and the recognition target, and supports the user's input. It is possible.

特開2013−45217JP2013-45217A

投影UIや仮想面に対するタッチ操作の場合、タッチ操作の対象となる面は必ずしも平面である必要はない。しかしながら、特許文献1では、センサと認識対象の間の距離とあらかじめ設定された基準との比較を行うものであった。すなわち、タッチ対象面の高さは一様であることが前提とされている。しかしながら、タッチ操作の種別によっては、認識対象は操作中も平行移動を続けるため、タッチ対象面の高さが一様でない場合には、認識対象の高さが変化しなくても、タッチ対象面との間隔が変わってしまうことがある。   In the case of a touch operation on a projection UI or a virtual surface, the surface that is the target of the touch operation is not necessarily a flat surface. However, in Patent Document 1, the distance between the sensor and the recognition target is compared with a preset reference. That is, it is assumed that the height of the touch target surface is uniform. However, depending on the type of touch operation, the recognition target continues to move during the operation. Therefore, if the height of the touch target surface is not uniform, the touch target surface may be changed even if the height of the recognition target does not change. The interval between and may change.

本発明は、上記課題を考慮したものであり、タッチ対象面が、高さが一様な平面ではない場合でも、認識対象とタッチ対象面の近接状態に基づいて複数の種別のタッチ操作を認識する場合の誤認識を低減することを目的とする。   The present invention takes the above-mentioned problems into consideration, and recognizes a plurality of types of touch operations based on the proximity state of the recognition target and the touch target surface even when the touch target surface is not a uniform flat surface. The purpose is to reduce misrecognition.

上記課題を解決するため、本発明は、認識対象によるタッチ操作を認識する情報処理装置であって、前記認識対象によって示される指示位置を検出する検出手段と、基準面の表面と前記基準面に載置された物体の表面とを含む、高さが一様でないタッチ対象面の、当該高さを含む表面形状を示す情報を取得する取得手段と、前記タッチ対象面における、前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を、前記表面形状を示す情報に基づいて異ならせて設定する設定手段と、前記検出手段が検出した指示位置前記設定手段が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定手段と、を備え、前記判定手段は、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記取得手段が取得した前記タッチ対象面の表面形状を示す情報のうち、前記認識対象が移動してきた経路上で得た高さを示す情報に基づいて、前記判定を行うことを特徴とする。 In order to solve the above problems, the present invention provides an information processing apparatus for recognizing a touch operation by a recognition target, a detection unit that detects an indication position indicated by the recognition target, a reference surface, and a reference surface. An acquisition unit that acquires information indicating a surface shape including a height of a touch target surface having a non-uniform height including the surface of the placed object, and the detection unit detects the touch target surface. A setting unit that sets a condition for determining whether the position corresponding to the designated position is touched by the recognition target based on the information indicating the surface shape, and the instruction detected by the detection unit position, when satisfying said setting means has set, and a determination means to have been touched by the touch object surface the recognition target, the determination means before While the recognition object is moving while touching the touch object surface, of the information showing the surface shape of the touch object surface obtained by the obtaining unit, the high the recognition target is obtained on path has moved The determination is performed based on information indicating the above.

本発明によれば、タッチ対象面が一様な平面ではない場合でも、認識対象とタッチ対象面の近接状態に基づいて複数の種別のタッチ操作を認識する場合の誤認識を低減することが可能となる。   According to the present invention, even when the touch target surface is not a uniform plane, it is possible to reduce misrecognition when recognizing a plurality of types of touch operations based on the proximity state of the recognition target and the touch target surface. It becomes.

情報処理装置の外観及びハードウェア構成の一例を示す図The figure which shows an example of the external appearance and hardware constitutions of information processing apparatus 情報処理装置の機能構成の一例を示すブロック図The block diagram which shows an example of a function structure of information processing apparatus 情報処理装置が実行するタッチ操作の認識処理の一例を示すフローチャートThe flowchart which shows an example of the recognition process of the touch operation which information processing apparatus performs 情報処理装置が実行する閾値設定処理の一例を示すフローチャートThe flowchart which shows an example of the threshold value setting process which information processing apparatus performs 情報処理装置が設定するタッチ判定の閾値の一例を示す図The figure which shows an example of the threshold value of the touch determination which an information processing apparatus sets 一様な平面でないタッチ対象面上でのドラッグ操作の様子を示す図The figure which shows the mode of the drag operation on the touch target surface which is not the uniform plane 情報処理装置を使ってドラッグ操作を行った際に取得できるデータと判定結果の一例を示す表Table showing an example of data and determination results that can be acquired when a drag operation is performed using the information processing device 一様な平面でないタッチ対象面上でのドラッグ操作の様子を示す図The figure which shows the mode of the drag operation on the touch target surface which is not the uniform plane 情報処理装置の操作例を示す図The figure which shows the example of operation of information processing apparatus 情報処理装置の操作例を示す図The figure which shows the example of operation of information processing apparatus 情報処理装置が実行する閾値設定処理の一例を示すフローチャートThe flowchart which shows an example of the threshold value setting process which information processing apparatus performs

以下、本発明の実施形態について図面を参照して詳細に説明する。なお、以下で説明する実施形態は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In addition, embodiment described below shows an example at the time of implementing this invention concretely, and is not restricted to this.

<第1の実施形態>
第1の実施形態として、平面上に物体が載置された状態で、平面上および物体上の両方に対するタッチ操作が認識される例を説明する。特に、本実施形態に係る情報処理装置では、平面上および物体上の両者を経由するドラッグ操作を認識可能とする。なお、本実施形態では、情報処理装置に対する操作を行う指示部として認識すべき認識対象の一例として、ユーザの手及びその指先を挙げて説明する。ただし、本実施形態は認識対象をスタイラスペンや差し棒などの操作器具に置き換えても適応可能である。
<First Embodiment>
As a first embodiment, an example will be described in which a touch operation on both a plane and an object is recognized while the object is placed on the plane. In particular, in the information processing apparatus according to the present embodiment, it is possible to recognize a drag operation via both a plane and an object. In the present embodiment, a user's hand and its fingertip will be described as an example of a recognition target to be recognized as an instruction unit that performs an operation on the information processing apparatus. However, the present embodiment can be applied even if the recognition target is replaced with an operation instrument such as a stylus pen or a pointing stick.

図1(A)は、本実施形態で説明する情報処理装置100を設置したシステムの外観の一例を示している。図1(A)に示すように情報処理装置100には投影装置105が搭載されており、自由に投影対象とする面を設定できる。テーブル101上には物体102が置かれている。の例の場合は、情報処理装置100を、テーブル101の上面および物体102の上面に対して投影ができるように設置していることを示している。ここで、図1(A)の103a〜dは、投影装置105によってテーブル上面および物体上面に投影された電子データやボタンなどUIを構成する部品(以下、まとめて表示オブジェクトと記載する)を示している。本実施形態では、テーブル101に載置された物がない初期状態では、テーブル101表面がタッチ対象面となり、テーブル101に物が載置されている場合は、テーブル101および載置された物の上側の面がタッチ対象面である。初期状態におけるタッチ対象面を、基準面といい、情報処理装置100は、認識対象と基準面との距離に基づいて、タッチ対象面が認識対象によってタッチされているかを判断する。本実施形態では、ユーザが手指104を使ってタップ操作やドラッグ操作を行い、前記表示オブジェクトに対して入力操作を行う場合について説明する。なお、本実施形態において、ドラッグ操作とは、単に指示位置が移動される操作と、移動が開始されたときの指示位置に表示されているオブジェクトを移動させる操作とを総称するものである。一般に、これらを区別する場合には、単に指示位置が移動される操作はムーブ操作と表現される。また本実施形態ではテーブル101および物体102に投影対象とする例を述べるが、投影対象はテーブルおよびそこに置かれた物体以外でもよい。例えば壁およびそこに張り付けられた物体に投影して利用しても構わない。また、投影対象面自体が凹凸を有ししている場合にも利用可能である。本実施形態の情報処理装置100には、投影装置105の他に、赤外光発光部106と赤外カメラ107が搭載されている。赤外光発光部106から照射された赤外光はテーブル101と物体102およびユーザの手指104に反射し、赤外反射光として赤外カメラにおいて撮像される。情報処理装置100は、この赤外画像を各種画像処理することによってタッチ対象面となるテーブル上面と物体上面の表面形状(凹凸状態)および認識対象となる手指の三次元位置を計測し、その結果からタッチ判定を行う。可視光カメラ108は、テーブル上に載置された物体や紙媒体等の読み取り対象を読み取った読み取り画像を撮像する。   FIG. 1A shows an example of the appearance of a system in which an information processing apparatus 100 described in this embodiment is installed. As shown in FIG. 1A, a projection device 105 is mounted on the information processing apparatus 100, and a plane to be projected can be freely set. An object 102 is placed on the table 101. In the case of the example, it is shown that the information processing apparatus 100 is installed so as to project onto the upper surface of the table 101 and the upper surface of the object 102. Here, reference numerals 103a to 103d in FIG. 1A denote components (hereinafter collectively referred to as display objects) constituting the UI such as electronic data and buttons projected onto the table upper surface and the object upper surface by the projection device 105. ing. In the present embodiment, in the initial state where there is no object placed on the table 101, the surface of the table 101 is a touch target surface, and when an object is placed on the table 101, the table 101 and the placed object The upper surface is the touch target surface. The touch target surface in the initial state is referred to as a reference surface, and the information processing apparatus 100 determines whether the touch target surface is touched by the recognition target based on the distance between the recognition target and the reference surface. In the present embodiment, a case where the user performs a tap operation or a drag operation using the finger 104 and performs an input operation on the display object will be described. In the present embodiment, the drag operation is a general term for an operation in which the designated position is simply moved and an operation for moving the object displayed at the designated position when the movement is started. Generally, when these are distinguished, an operation in which the designated position is simply moved is expressed as a move operation. In this embodiment, an example in which the projection target is the table 101 and the object 102 will be described, but the projection target may be other than the table and the object placed thereon. For example, it may be used by being projected onto a wall and an object attached thereto. It can also be used when the projection target surface itself has irregularities. In addition to the projection device 105, the information processing apparatus 100 according to the present embodiment includes an infrared light emitting unit 106 and an infrared camera 107. The infrared light emitted from the infrared light emitting unit 106 is reflected by the table 101, the object 102, and the user's finger 104, and is imaged by the infrared camera as infrared reflected light. The information processing apparatus 100 performs various types of image processing on the infrared image to measure the surface shape (unevenness state) of the table upper surface and the object upper surface as the touch target surface and the three-dimensional position of the finger as the recognition target. Touch is determined from. The visible light camera 108 captures a read image obtained by reading a reading target such as an object or paper medium placed on the table.

本実施形態では、赤外光発光部106と赤外カメラ107を利用して、テーブル上面と物体上面からなるタッチ対象面の三次元位置および手指の三次元位置を計測する方法について記載する。しかし、タッチ対象面の三次元位置および手指の三次元位置を計測する方法はこの限りではなく、代わりにステレオカメラや距離画像センサを利用することで、三次元位置を計測する方法を適応することも可能である。   In this embodiment, a method for measuring the three-dimensional position of the touch target surface including the table upper surface and the object upper surface and the three-dimensional position of the finger using the infrared light emitting unit 106 and the infrared camera 107 will be described. However, the method of measuring the three-dimensional position of the touch target surface and the three-dimensional position of the finger is not limited to this. Instead, the method of measuring the three-dimensional position can be applied by using a stereo camera or a distance image sensor. Is also possible.

図1(B)は、本実施形態における情報処理装置100のハードウェア構成図である。同図において、CPU110は、バス113を介して接続する各デバイスを統括的に制御する。CPU110は、読み出し専用メモリ(ROM)112に記憶された処理ステップやプログラムを読み出して実行する。オペレーティングシステム(OS)をはじめ、本実施形態に係る各処理プログラム、デバイスドライバ等はROM112に記憶されており、ランダムアクセスメモリ(RAM)111に一時記憶され、CPU110によって適宜実行される。RAM111は、高速にアクセス可能なCPU110の主メモリ、ワークエリア等の一時記憶領域として用いられる。ここでOSおよび各処理プログラム等は図示されていない外部ストレージに記憶されていてもよく、その場合は電源投入時にRAM111に適宜読み込まれ、CPU110によって起動される。また、ディスプレイI/F114は、情報処理装置100内部で生成される表示オブジェクト(表示画面)を投影装置105が処理可能な信号に変換する。入力I/F115は、赤外カメラ107が生成する赤外画像を入力信号として受信し、情報処理装置100が処理可能な情報に変換する。出力I/F116は、情報処理装置100内部で生成される赤外発光命令を赤外光発光部106が処理可能な信号に変換する。さらに、可視光カメラ108は、本実施形態ではタッチ対象面を上から撮像するように設置され、主に操作エリアに載置されたドキュメントに対する書画カメラの役割を果たす。具体的には、所定の面に載置された紙媒体や物体等、認識対象以外のオブジェクトの、カメラ108に向けられた面を可視光撮影し、その撮像画像を取得する。これを本実施形態では、読み取り対象を「読み取る」という。読み取りによって得られた撮像画像は、読み取り対象物以外の部分を除いた画像や、操作によって指示された部分だけが抽出された部分画像として加工され、読み取り画像として記憶される。本実施形態では、情報処理装置100で投影するデジタルデータは図示されていない外部ストレージに格納されている。さらに、読み取りによって得られた読み取り画像は、外部ストレージに記憶される。外部ストレージとしては、ディスクデバイスやフラッシュメモリ、ネットワークやUSBなどの各種I/Fを介して接続される記憶装置が考えられる。また、赤外カメラ107で生成された赤外画像データはRAM111で一時保存され、CPU110によって適宜処理され、破棄される。ただし、適宜必要なデータは図示されていない外部ストレージに蓄積しても構わない。   FIG. 1B is a hardware configuration diagram of the information processing apparatus 100 according to the present embodiment. In the figure, a CPU 110 comprehensively controls each device connected via a bus 113. The CPU 110 reads and executes processing steps and programs stored in a read-only memory (ROM) 112. In addition to the operating system (OS), each processing program, device driver, and the like according to the present embodiment are stored in the ROM 112, temporarily stored in a random access memory (RAM) 111, and appropriately executed by the CPU 110. The RAM 111 is used as a temporary storage area such as a main memory or work area of the CPU 110 that can be accessed at high speed. Here, the OS, each processing program, and the like may be stored in an external storage (not shown). In this case, the OS is appropriately read into the RAM 111 and activated by the CPU 110 when the power is turned on. The display I / F 114 converts a display object (display screen) generated inside the information processing apparatus 100 into a signal that can be processed by the projection apparatus 105. The input I / F 115 receives an infrared image generated by the infrared camera 107 as an input signal, and converts it into information that can be processed by the information processing apparatus 100. The output I / F 116 converts an infrared emission command generated in the information processing apparatus 100 into a signal that can be processed by the infrared light emission unit 106. Further, in the present embodiment, the visible light camera 108 is installed so as to capture the touch target surface from above, and mainly serves as a document camera for a document placed in the operation area. Specifically, the surface of the object other than the recognition target, such as a paper medium or object placed on a predetermined surface, facing the camera 108 is photographed with visible light, and the captured image is acquired. In the present embodiment, this is referred to as “reading” the reading target. The captured image obtained by reading is processed as an image excluding a portion other than the reading object or a partial image in which only a portion instructed by an operation is extracted, and is stored as a read image. In the present embodiment, digital data to be projected by the information processing apparatus 100 is stored in an external storage (not shown). Furthermore, the read image obtained by reading is stored in an external storage. As the external storage, a storage device connected via various I / Fs such as a disk device, a flash memory, a network, and a USB can be considered. Infrared image data generated by the infrared camera 107 is temporarily stored in the RAM 111, appropriately processed by the CPU 110, and discarded. However, necessary data may be stored in an external storage (not shown).

図2(A)は、本実施形態における情報処理装置100の機能ブロック図である。情報処理装置100は、画像取得部200、面情報取得部201、位置検出部202、設定部203、最大値取得部204、タッチ判定部205、特定部206、表示制御部207、読み取り制御部208から構成される。これらの各機能部は、CPU110が、ROM112に格納されたプログラムをRAM111に展開し、後述する各フローチャートに従った処理を実行することで実現されている。また例えば、CPU110を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。   FIG. 2A is a functional block diagram of the information processing apparatus 100 in the present embodiment. The information processing apparatus 100 includes an image acquisition unit 200, a surface information acquisition unit 201, a position detection unit 202, a setting unit 203, a maximum value acquisition unit 204, a touch determination unit 205, a specification unit 206, a display control unit 207, and a reading control unit 208. Consists of Each of these functional units is realized by the CPU 110 developing a program stored in the ROM 112 in the RAM 111 and executing processing according to each flowchart described later. Further, for example, when hardware is configured as an alternative to software processing using the CPU 110, arithmetic units and circuits corresponding to the processing of each functional unit described here may be configured.

画像取得部200は、赤外カメラ107で撮像されたタッチ対象面の赤外強度画像を、入力画像として取得する。本実施形態では、情報処理装置100は、起動されている(電源がONである)間は、赤外光発光部106から投影装置105の投影方向と同じ方向に赤外光を常時照射する。投影装置105の投影範囲にあるテーブル上に物体が置かれると、赤外光はテーブル101の表面および物体表面からなるタッチ対象面で反射される。またさらに、タッチ対象面と赤外カメラ107の間の空間にユーザの手などの認識対象が挿入された場合には、認識対象の表面によって反射される。赤外カメラ107は、このように反射された赤外光を撮像し、赤外強度画像を得る。以後、この赤外強度画像を入力画像として記載する。   The image acquisition unit 200 acquires an infrared intensity image of the touch target surface captured by the infrared camera 107 as an input image. In the present embodiment, the information processing apparatus 100 always irradiates infrared light from the infrared light emitting unit 106 in the same direction as the projection direction of the projection apparatus 105 while it is activated (power is on). When an object is placed on the table within the projection range of the projection device 105, the infrared light is reflected on the surface of the table 101 and the touch target surface composed of the object surface. Furthermore, when a recognition target such as a user's hand is inserted in the space between the touch target surface and the infrared camera 107, the light is reflected by the surface of the recognition target. The infrared camera 107 captures the reflected infrared light and obtains an infrared intensity image. Hereinafter, this infrared intensity image is described as an input image.

面情報取得部201は、画像取得部200にて取得した入力画像を基に、タッチ対象面で反射された赤外光の強度を解析することによって、タッチ対象面の表面形状を示す情報を取得する。タッチ対象面の表面形状情報とは、タッチ対象面の表面上の各点の三次元座標情報であり、少なくともタッチ対象面上の各点と基準面に交わる方向の高さ情報を含む。赤外カメラ107に撮像される強度画像の各画素は、赤外光の輝度値に相当する。赤外反射強度は、輝度値が大きいほど反射光が強い、すなわち赤外光発光部106に近い位置で反射されたと言え、輝度が小さいほど反射光が弱い、すなわち赤外光発光部106に遠い位置で反射されたと言える。従って本実施形態では、このように赤外光の輝度値を、赤外光発光部106との距離の情報として利用する。つまり、入力画像は距離画像として扱われる。面情報取得部201は、入力画像の画素の位置と輝度値を基に、タッチ対象面の各点の、基準面に平行な二次元面における座標と高さ情報(高さ方向の座標軸における座標)を取得する。   The surface information acquisition unit 201 acquires information indicating the surface shape of the touch target surface by analyzing the intensity of infrared light reflected by the touch target surface based on the input image acquired by the image acquisition unit 200. To do. The surface shape information of the touch target surface is three-dimensional coordinate information of each point on the surface of the touch target surface, and includes at least height information in a direction where each point on the touch target surface intersects the reference surface. Each pixel of the intensity image captured by the infrared camera 107 corresponds to a luminance value of infrared light. As for the infrared reflection intensity, it can be said that the greater the luminance value, the stronger the reflected light, that is, the reflected light is at a position closer to the infrared light emitting unit 106. It can be said that it was reflected at the position. Therefore, in this embodiment, the brightness value of the infrared light is used as information on the distance from the infrared light emitting unit 106 in this way. That is, the input image is treated as a distance image. The surface information acquisition unit 201 uses the coordinates and height information (coordinates on the coordinate axis in the height direction) of each point of the touch target surface on a two-dimensional surface based on the pixel position and the luminance value of the input image. ) To get.

位置検出部202は、認識対象によって指示される指示位置を示す三次元位置情報を検出する。本実施形態では、画像取得部200が取得した入力画像から、背景差分法あるいはフレーム間差分法などにより動体が写る領域を抽出する。本実施形態では、認識対象として人の手指を認識するので、動体領域が、予め記憶された人の手の形状モデルと類似する場合に認識対象として認識し、指先とみなされる位置の座標、指示位置として検出する。タッチ対象面に平行な二次元面における座標は、入力画像の画素の位置から、高さ方向の情報は、指先とみなされる位置周辺で反射された赤外光の輝度値の値から導出される。以下では、指示位置の3次元座標を検出することを、単に「指示位置を検出する」と記載する。なお、動体の検出方法、及び人の手の認識方法、指先の検出方法は、ここで例示したものに限らない。   The position detection unit 202 detects three-dimensional position information indicating the designated position indicated by the recognition target. In the present embodiment, an area in which a moving object is captured is extracted from the input image acquired by the image acquisition unit 200 by a background difference method or an interframe difference method. In this embodiment, since the human finger is recognized as the recognition target, the moving object region is recognized as the recognition target when it is similar to the shape model of the human hand stored in advance, and the coordinates and instructions of the position considered as the fingertip Detect as position. The coordinates on the two-dimensional surface parallel to the touch target surface are derived from the pixel position of the input image, and the height information is derived from the brightness value of the infrared light reflected around the position regarded as the fingertip. . Hereinafter, detecting the three-dimensional coordinates of the designated position is simply referred to as “detecting the designated position”. Note that the moving object detection method, the human hand recognition method, and the fingertip detection method are not limited to those exemplified here.

設定部203は、認識対象によってタッチ対象面がタッチされていると決定する(タッチ状態と非タッチ状態を区別する)ための条件となる、基準面からの高さの閾値を設定する。本実施形態では、閾値は、面情報取得部201で取得したタッチ対象面の表面形状を示す情報と、位置検出部202で検出した指示位置、および、特定部206によって特定される現在継続中の操作種別とに基づいて設定される。本実施形態の設定部203は、タッチ対象面の表面の高さに一定値を加算した高さを、基準の閾値として設定する。さらに、ユーザがドラッグ操作中の場合には、各時点までのドラッグ操作の経路(認識対象が移動してきた経路)上で最大の高さを有する点に設定された基準の閾値を、その後のタッチ判定に用いる閾値として設定する。ドラッグ操作中以外の場合には、基準の閾値を使ってタッチ判定が行われる。そこで本実施形態の設定部203は、最大値取得部204を備える。最大値取得部204は、ユーザがドラッグ操作中の場合に、当該ドラッグ操作のそれまでの経路上で設定された基準閾値のうちの最大値を取得する機能をもつ。   The setting unit 203 sets a threshold value for the height from the reference surface, which is a condition for determining that the touch target surface is touched by the recognition target (distinguishing between a touch state and a non-touch state). In the present embodiment, the threshold value is information indicating the surface shape of the touch target surface acquired by the surface information acquisition unit 201, the indicated position detected by the position detection unit 202, and the current ongoing specified by the specifying unit 206. It is set based on the operation type. The setting unit 203 of this embodiment sets a height obtained by adding a certain value to the height of the surface of the touch target surface as a reference threshold value. Further, when the user is performing a drag operation, the reference threshold set to the point having the maximum height on the route of the drag operation up to each time point (the route along which the recognition target has moved) is touched thereafter. It is set as a threshold used for determination. When a drag operation is not being performed, touch determination is performed using a reference threshold value. Therefore, the setting unit 203 of this embodiment includes a maximum value acquisition unit 204. The maximum value acquisition unit 204 has a function of acquiring the maximum value of the reference threshold values set on the route until the drag operation when the user is performing the drag operation.

タッチ判定部205は、位置検出部202で検出したと、設定部203で設定した基準面からの高さとを利用して、認識対象によってタッチ対象面がタッチされているか否かの判断、すなわちタッチ判定を行う。具体的には、指示位置の高さが、その位置に設定された基準面からの高さの閾値よりも小さい場合には、認識対象はタッチ対象面をタッチしているタッチ状態、閾値よりも大きければタッチしていない非タッチ状態であると判定する。つまり、本実施形態では、認識対象が実際にタッチ対象面に接触しているかに関わらず、認識対象が所定の条件を満たすだけタッチ対象面に近接した状態にあることが認識できたことをもって、認識対象がタッチ対象面にタッチしているとみなす。そして、その状態において行われる操作をタッチ操作と表現する。ただし、実際にはタッチ対象面をタッチせず、近接した状態で行われる操作(ホバー操作と呼ばれる)を認識する場合にも、条件の程度を変化させることで、本発明を適応し、高さが一様ではない面に対する操作の誤認識を低減することができる。本実施形態では、指示位置の高さが、その位置に設定された基準面からの高さの閾値と一致する場合は、タッチ状態であると判定するが、これに限らない。高さの閾値に対して、指示位置の高さが閾値未満の場合にタッチ状態と判定されるか、閾値以下の場合にタッチ状態と判定されるかは適宜選択されればよい。   The touch determination unit 205 uses the height from the reference plane set by the setting unit 203 when detected by the position detection unit 202 to determine whether the touch target surface is touched by the recognition target, that is, touch. Make a decision. Specifically, when the height of the indicated position is smaller than the threshold value of the height from the reference plane set at that position, the recognition target is more than the touch state where the touch target surface is touched and the threshold value. If it is larger, it is determined that the touch is not touched. In other words, in this embodiment, regardless of whether the recognition target is actually in contact with the touch target surface, it can be recognized that the recognition target is close to the touch target surface as long as a predetermined condition is satisfied. It is assumed that the recognition target touches the touch target surface. An operation performed in this state is expressed as a touch operation. However, in the case of recognizing an operation (referred to as a hover operation) performed in a close state without actually touching the touch target surface, the present invention is applied by changing the degree of the condition and the height is changed. It is possible to reduce misrecognition of an operation on a non-uniform surface. In this embodiment, when the height of the designated position matches the height threshold from the reference plane set at the position, the touched state is determined, but the present invention is not limited to this. Whether the touch state is determined when the height of the designated position is less than the threshold or whether the touch state is determined when the height is equal to or less than the threshold may be appropriately selected.

特定部206は、タッチ判定部205で、タッチ状態と判定されている間の指示位置の動き、及びタッチ状態と非タッチ状態とが反転するタイミングに基づいて、ユーザが情報処理装置100に入力するタッチ操作の種別を特定する。本実施形態では、少なくともタップ操作とドラッグ操作とを区別して特定する。そして、特定された種別を示すイベントと、種別を特定する根拠となった指示位置の情報とを、表示制御部207や読み取り制御部208等に通知する。従って例えば、タップ操作が入力された位置に、装置に対して読み取りの実行を指示するコマンドが発生するような操作に関わるUI部品が投影されていれば、当該コマンドが発生され、読み取り制御部208に伝えられる。また、UI部品が移動するドラッグ操作が入力されれば、UI部品を移動して投影させるべき位置が表示制御部207に伝えられる。   The specifying unit 206 is input by the user to the information processing apparatus 100 based on the movement of the designated position while the touch determination unit 205 determines that the touch state is detected and the timing at which the touch state and the non-touch state are reversed. Specify the type of touch operation. In the present embodiment, at least a tap operation and a drag operation are distinguished and specified. Then, the event indicating the specified type and the information on the designated position that is the basis for specifying the type are notified to the display control unit 207, the read control unit 208, and the like. Therefore, for example, if a UI component related to an operation that generates a command that instructs the apparatus to execute reading is projected at a position where the tap operation is input, the command is generated and the reading control unit 208 is operated. To be told. If a drag operation for moving the UI component is input, the display control unit 207 is informed of the position where the UI component should be moved and projected.

表示制御部207は、特定部206が特定したタッチ操作に対する情報処理装置100の応答をユーザに提示するため、投影装置105に投影させる表示画像を生成し、投影装置105に出力する。   The display control unit 207 generates a display image to be projected on the projection device 105 and outputs the display image to the projection device 105 in order to present a response of the information processing device 100 to the touch operation specified by the specification unit 206 to the user.

読み取り制御部208は、ユーザ操作に応じて可視光カメラ108を制御し、読み取りのための撮像を行わせるタイミングや、読み取り対象へのフォーカスやズームレベルを調整する。   The reading control unit 208 controls the visible light camera 108 in accordance with a user operation, and adjusts the timing for performing imaging for reading, the focus on the reading target, and the zoom level.

以下、本実施形態における情報処理装置100が実行する処理の流れを図3、図4のフローチャートを用いて詳細に説明する。図3は、情報処理装置100が実行するタッチ操作の認識処理の一例を示すフローチャートである。本実施形態では、上述したように、情報処理装置100の電源が起動されている状態では、常に入力画像の撮像が行われており、連続して撮像された画像同士の比較からテーブル上に何かしらの変化が生じたことを認識可能な状態にある。本実施形態では、ユーザによってテーブル101上に物体102が置かれたことで初期状態(テーブル上に何も置かれていない状態)に対して変化が生じたことに応じ、図3のフローチャートが開始される。また、別途置かれたものが何かを認識する処理を実行し、認識結果に応じた投影UIを表示させるなどした状態で、フローチャートを開始してもいい。   Hereinafter, the flow of processing executed by the information processing apparatus 100 according to the present embodiment will be described in detail with reference to the flowcharts of FIGS. 3 and 4. FIG. 3 is a flowchart illustrating an example of touch operation recognition processing executed by the information processing apparatus 100. In the present embodiment, as described above, in a state where the power supply of the information processing apparatus 100 is activated, an input image is always captured, and something is displayed on the table based on a comparison between consecutively captured images. It is possible to recognize that a change has occurred. In the present embodiment, the flowchart of FIG. 3 starts in response to a change from the initial state (the state in which nothing is placed on the table) caused by the user placing the object 102 on the table 101. Is done. Alternatively, the flowchart may be started in a state where a process for recognizing what is separately placed is executed and a projection UI corresponding to the recognition result is displayed.

まず、ステップS100において、画像取得部200が、赤外カメラ107によって撮像された入力画像を取得する。なお、ここで取得する入力画像は、赤外光発光部106によって情報処理装置100からテーブル101方向に照射された赤外光が、テーブル101および物体102の表面で反射された赤外反射光を、赤外カメラ107によって撮像した画像である。本実施形態では、情報処理装置100が起動している間は常に入力画像の撮像が行われているため、ステップS100の処理は、撮像されている映像のうち、その時点での最新のフレームに相当する静止画像を取得することを示す。   First, in step S <b> 100, the image acquisition unit 200 acquires an input image captured by the infrared camera 107. The input image acquired here is the infrared reflected light reflected from the surface of the table 101 and the object 102 by the infrared light emitted from the information processing apparatus 100 toward the table 101 by the infrared light emitting unit 106. These are images captured by the infrared camera 107. In the present embodiment, since the input image is always captured while the information processing apparatus 100 is activated, the processing in step S100 is performed on the latest frame at that time in the captured image. It shows that the corresponding still image is acquired.

ステップS101において、面情報取得部201が、ステップS100にて取得したタッチ対象面の赤外強度画像からタッチ対象面の表面形状を示す情報を取得する。表面形状を示す情報には、少なくともタッチ対象面の表面の高さ情報が含まれる。本実施形態では、テーブル上面の一点を基準点(原点)とした場合の、タッチ対象面の各点の三次元座標を、表面形状を示す情報とする。三次元座標情報は、タッチ対象面の全xy座標について、赤外強度画像の対応する画素の輝度から変換式を利用するなどしてz方向の垂直距離を算出することによって取得する。本実施形態では、図1(A)に示されるように三次元の座標軸が設定されているものとする。   In step S101, the surface information acquisition unit 201 acquires information indicating the surface shape of the touch target surface from the infrared intensity image of the touch target surface acquired in step S100. The information indicating the surface shape includes at least the height information of the surface of the touch target surface. In the present embodiment, the three-dimensional coordinates of each point on the touch target surface when one point on the table upper surface is used as a reference point (origin) is information indicating the surface shape. The three-dimensional coordinate information is obtained by calculating the vertical distance in the z direction for all xy coordinates on the touch target surface by using a conversion formula from the luminance of the corresponding pixel of the infrared intensity image. In this embodiment, it is assumed that a three-dimensional coordinate axis is set as shown in FIG.

本実施形態では、以下に示すステップS102からステップS108を繰り返して操作種別の特定を行う。以下、ステップS102からステップS108までの一連の処理を、特定シーケンスとして記載する。   In the present embodiment, the operation type is specified by repeating steps S102 to S108 described below. Hereinafter, a series of processing from step S102 to step S108 will be described as a specific sequence.

まず、ステップS102において、画像取得部200が、入力画像を取得する。ステップS102で入力画像を取得する目的は、認識対象であるユーザの手を検出することである。本実施形態では、ステップ100と同様ステップS102の処理は、赤外カメラ107で常時撮像されている映像のうち、その時点での最新のフレームに相当する静止画像を取得することを示す。   First, in step S102, the image acquisition unit 200 acquires an input image. The purpose of acquiring the input image in step S102 is to detect the user's hand that is the recognition target. In the present embodiment, the processing in step S102 as in step 100 indicates that a still image corresponding to the latest frame at that time is acquired from the images that are always captured by the infrared camera 107.

次に、ステップS103において、位置検出部202が、ステップS102にて取得した入力画像から指示位置を検出する処理を行う。そして、指示位置が検出されたか(検出に成功したか)を判定する。本実施形態では、背景差分法を用い、例えばステップS100で取得した入力画像(ユーザの手が写っていないものとする)と、ステップS102で取得した入力画像の差分となる領域を抽出する。さらに、抽出された領域の形状と人の手のモデルとのマッチングを取る。マッチング処理の結果、抽出された差分領域が、1本だけ指を伸ばした人の手であるとみなされる場合、そのうち延ばされた指先の位置を、指示位置として検出する。なお、例えば抽出された領域のうち、赤外カメラ107の撮影範囲の外郭から最も遠い点を、指示位置として検出するなどの方法を用いても良い。検出処理の結果、指示位置が検出された場合(ステップS103でYES)はステップS104に進む。指示位置が検出された場合(ステップS103でNO)はステップS105に進む。   Next, in step S103, the position detection unit 202 performs processing for detecting the designated position from the input image acquired in step S102. Then, it is determined whether the indicated position has been detected (whether detection has succeeded). In the present embodiment, a background difference method is used to extract, for example, a region that is a difference between the input image acquired in step S100 (not including the user's hand) and the input image acquired in step S102. Further, matching between the shape of the extracted region and the model of the human hand is performed. As a result of the matching process, when the extracted difference area is regarded as the hand of a person who has extended only one finger, the position of the extended fingertip is detected as the designated position. Note that, for example, a method of detecting a point farthest from the outline of the imaging range of the infrared camera 107 among the extracted regions may be used. If the indicated position is detected as a result of the detection process (YES in step S103), the process proceeds to step S104. If the indicated position is detected (NO in step S103), the process proceeds to step S105.

ステップS104において、設定部203が、タッチ判定処理に用いる指示位置の高さの閾値(タッチ判定閾値H)を設定する。本実施形態では、ステップS103にて検出した指示位置のxy座標と、ステップS101にて取得したタッチ対象面の表面形状を示す情報、および、前回までのタッチ操作の認識結果から現在ドラッグ操作中であるか否かを示す情報を利用して閾値を設定する。本実施形態の設定部203はまず、タッチ対象面の各点におけるタッチ判定で使用される高さ閾値は、当該点におけるタッチ対象面の表面の高さに一定値を加算した値を基準の閾値と設定する。さらに、設定部203は、ドラッグ操作中の状態では、ドラッグ操作の経路の各点において設定された基準の閾値のうち、最大の閾値を、実際のタッチ判定で使用する閾値として設定する。タッチ判定の閾値設定処理の詳細は後述する。 In step S <b> 104, the setting unit 203 sets a height threshold value (touch determination threshold value H T ) of the designated position used for the touch determination process. In the present embodiment, the xy coordinate of the designated position detected in step S103, the information indicating the surface shape of the touch target surface acquired in step S101, and the recognition result of the previous touch operation are currently being dragged. A threshold is set using information indicating whether or not there is. First, the setting unit 203 of the present embodiment uses a value obtained by adding a certain value to the height of the surface of the touch target surface at the point as the reference threshold value as the height threshold value used in touch determination at each point of the touch target surface And set. Furthermore, in the state during the drag operation, the setting unit 203 sets the maximum threshold value among the reference threshold values set at each point of the drag operation route as a threshold value used in actual touch determination. Details of the threshold setting process for touch determination will be described later.

ステップS105では、タッチ判定部205が、ステップS103で検出した指示位置と、ステップS104で設定したタッチ判定閾値Hを用いてタッチ判定処理を行う。具体的には、指先が検出されており、かつ指示位置のz座標がH以下であるならば「タッチ状態」と判定し、それ以外であれば「非タッチ状態」と判定する。本実施形態のタッチ判定部205は、タッチ判定を行うたびに、タッチ判定の結果と、判定の根拠となった指示位置の位置情報をRAM111に保持する。そして少なくとも、最新の2回分のタッチ判定の結果と、判定結果の根拠となった指示位置の位置情報を蓄積する。本実施形態では、最新の2回分のタッチ判定結果のうち、最後の判定結果が「タッチ状態」で、その直前の判定結果が「非タッチ状態」であった場合は、その時点でタッチ操作が開始されたとみなす。その場合、RAM111において、最後の判定結果の根拠となった指示位置の情報を「タッチ開始位置」であることを示す情報とともに保持する。タッチ開始位置の位置情報は、最新の2回分のタッチ判定に関する情報とは別に、開始されたタッチ操作が終了されるまで保持され続ける。 In step S105, the touch determining unit 205, performs a touch determination process using the indication position detected in step S103, the touch determination threshold value H T set in step S104. Specifically, if the fingertip is detected and the z-coordinate of the indicated position is H or less, it is determined as “touch state”, otherwise it is determined as “non-touch state”. Whenever touch determination is performed, the touch determination unit 205 of the present embodiment holds the result of touch determination and the position information of the designated position that is the basis for the determination in the RAM 111. At least the latest two touch determination results and the position information of the designated position that is the basis of the determination result are accumulated. In the present embodiment, when the last determination result of the latest two touch determination results is “touch state” and the determination result immediately before is “non-touch state”, the touch operation is performed at that time. Consider it started. In that case, in the RAM 111, the information on the designated position that is the basis for the final determination result is held together with the information indicating the “touch start position”. The position information of the touch start position is held until the started touch operation is finished, separately from the information regarding the latest two touch determinations.

ステップS106では、特定部206が、ドラッグ操作がなされている途中か否かを判定する。具体的には、まず、最後のタッチ判定の結果が「タッチ状態」であり、かつ、xy平面における、タッチ開始位置と最後に検出された指示位置の間の距離が、閾値D以下であれば、その時点は「ドラッグ操作がなされている途中である」と判定する。以下では、ドラッグ操作がなされている途中の状態を「ドラッグ中」、そうではない状態を「非ドラッグ中」と表記する。なお、閾値Dは、ユーザが、タッチ対象面にタッチした状態のまま、操作のために指を平行移動させたか否かを区別するための距離の閾値である。例えば、ユーザは、タッチ対象面上の同じ位置をタッチしている間でも、体が極小さく動いてしまうことがある。また、赤外発光部106と指の位置関係や赤外強度画像の解像度(分解能)によっては、認識対象の位置が固定されていても、検出される指示位置の位置に誤差が生じることがある。従って、そのような小さな体の動きや、検出の誤差による指示位置の変化と、ユーザが意思をもって指を動かしたことによる指示位置の平行移動とを区別するために、閾値Dによる判定を行う。つまり本実施形態では、タッチ対象面上をタッチした指を、タッチ状態のまま閾値D以上の距離平行移動させない限り、ドラッグ操作は認識されない。本実施形態の特定部206は、タッチ判定の結果が「非タッチ状態」から「タッチ状態」に移行してから初めて「ドラッグ操作がなされている途中である」と判定された場合、ドラッグ操作の開始直後であることを示す情報をRAM111に保持する。例えばフラグ等の情報として、前回の判定結果が「非ドラッグ中」であり、かつ今回の判定結果が「ドラッグ中」である場合、例えばドラッグ開始フラグを「1」と設定して保持し、それ以外の場合はフラグを「0」に設定する。なおこの情報は、後述する閾値設定処理において使用される。   In step S106, the specifying unit 206 determines whether or not the drag operation is being performed. Specifically, first, if the result of the last touch determination is “touch state” and the distance between the touch start position and the last detected indication position on the xy plane is equal to or less than the threshold D At that time, it is determined that “the drag operation is being performed”. Hereinafter, a state where the drag operation is being performed is referred to as “dragging”, and a state where the drag operation is not performed is referred to as “non-drag”. The threshold D is a distance threshold for distinguishing whether or not the user has moved his / her finger in parallel for the operation while touching the touch target surface. For example, the user may move the body very slightly even while touching the same position on the touch target surface. Also, depending on the positional relationship between the infrared light emitting unit 106 and the finger and the resolution (resolution) of the infrared intensity image, an error may occur in the position of the indicated position to be detected even if the position of the recognition target is fixed. . Therefore, in order to distinguish such a small body movement or a change in the designated position due to a detection error and a parallel movement of the designated position due to the user's intentional movement of the finger, the determination based on the threshold value D is performed. That is, in this embodiment, the drag operation is not recognized unless the finger touching the touch target surface is moved in the touched state by a distance that is equal to or greater than the threshold value D. The identification unit 206 according to the present embodiment determines that the drag operation is performed when it is determined that “the drag operation is being performed” for the first time after the result of the touch determination is changed from the “non-touch state” to the “touch state”. Information indicating immediately after the start is held in the RAM 111. For example, if the previous determination result is “not dragging” and the current determination result is “dragging” as information such as a flag, for example, the drag start flag is set to “1” and held. Otherwise, the flag is set to “0”. This information is used in a threshold setting process described later.

次に、ステップS107において、特定部206が、ユーザによって入力された操作を特定する。本実施形態では、これまでのステップS105及び、ステップS106の処理においてRAM111に蓄積された情報に基づいて操作種別を判定する。例えば、最新の2回分のタッチ判定の結果が「非タッチ状態」であれば「操作なし」、すなわち情報処理装置100に対してタッチ操作は入力されていないと特定する。また、最後のタッチ判定結果が「非タッチ状態」であって、その直前のタッチ判定結果が「タッチ状態」で「非ドラッグ中」と判定されていた場合、特定部206は、情報処理装置100に対してタップ操作が入力されたと特定する。また例えば、最後のタッチ判定結果が「タッチ状態」で、「ドラッグ中」であると判定されていれば、情報処理装置100には「ドラッグ操作」が入力されていると特定する。最後のタッチ判定結果が「非タッチ状態」で、その直前のタッチ判定結果が「タッチ状態」でかつ「ドラッグ中」であると判定されていれば、情報処理装置100入力された「ドラッグ操作終了」したと特定する。最後のタッチ判定結果が「タッチ状態」であって、その直前のタッチ判定結果が「タッチ状態」で「非ドラッグ中」と判定されていた場合、特定部206は、「タップ操作中」とみなす。ただし、この後で指示位置が平行移動される可能性があるため、「タップ操作中」という状態は、タップあるいはドラッグ操作が開始された直後を示す。従って、特定部206によって「タップ操作中」であると特定された後で、「ドラッグ中」と判定されることがあれば「ドラッグ操作」が、「ドラッグ中」と判定されることなく「非タッチ状態」に移行すれば「タップ操作」が最終的に特定される。本実施形態では、特定部206が、特定した操作種別、および操作状態に応じたイベントと、最後に検出された指示位置の位置情報とを、表示制御部207や読み取り制御部208の、情報処理装置100の出力を制御する機能部に通知する。   Next, in step S107, the specifying unit 206 specifies an operation input by the user. In the present embodiment, the operation type is determined based on the information accumulated in the RAM 111 in the processes in steps S105 and S106 so far. For example, if the latest two touch determination results are “non-touch state”, it is determined that “no operation”, that is, no touch operation is input to the information processing apparatus 100. When the final touch determination result is “non-touch state” and the previous touch determination result is “touch state” and “non-dragging” is determined, the specifying unit 206 determines that the information processing apparatus 100 It is determined that a tap operation has been input. Further, for example, if the final touch determination result is “touch state” and it is determined that “dragging”, it is specified that “drag operation” is input to the information processing apparatus 100. If it is determined that the final touch determination result is “non-touch state” and the previous touch determination result is “touch state” and “dragging”, the “drag operation end” input to the information processing apparatus 100 is determined. " When the final touch determination result is “touch state” and the previous touch determination result is “touch state” and it is determined that “not dragging”, the specifying unit 206 regards it as “tapping operation”. . However, since there is a possibility that the designated position is translated after this, the state of “during tap operation” indicates immediately after the tap or drag operation is started. Accordingly, if it is determined that “dragging” after the specifying unit 206 specifies “during tap operation”, “drag operation” is not determined as “dragging”, and “non-drag” is determined. If the “touch state” is entered, the “tap operation” is finally specified. In the present embodiment, the specifying unit 206 uses the display control unit 207 and the read control unit 208 to process the event according to the specified operation type and operation state, and the position information of the designated position detected last. The function unit that controls the output of the apparatus 100 is notified.

ステップS108では、情報処理装置100の出力を制御する機能部が、入力された操作に対して応答する。例えば、ステップS107において「ドラッグ操作中」と特定された場合、表示制御部207が、ドラッグ操作に応じて表示オブジェクトが移動されるように表示するための表示画像を生成し、プロジェクタ104に出力する。また例えば、「タップ操作」が特定され、その位置が情報処理装置100に読み取りを実行させるコマンドに相当するGUIのUI部品の位置であった場合、読み取り制御部208が、可視光カメラ108を制御して読み取り画像を取得する。   In step S108, the functional unit that controls the output of the information processing apparatus 100 responds to the input operation. For example, if “drag operation in progress” is specified in step S107, the display control unit 207 generates a display image for display so that the display object is moved according to the drag operation, and outputs the display image to the projector 104. . Further, for example, when the “tap operation” is specified and the position is the position of a GUI UI part corresponding to a command for causing the information processing apparatus 100 to perform reading, the reading control unit 208 controls the visible light camera 108. To obtain the scanned image.

ステップS109において、情報処理装置100が、この時点でのタッチ対象面に対するタッチ操作認識処理を継続するか否かを判定する。具体的には、ユーザのタップ操作によって、「操作終了指示」のコマンドが入力されたかを検出する。処理を継続すると判定される場合(ステップS109でNO)はステップS102へ戻る。処理を継続しないと判定された場合と判定される場合(ステップS109でYES)、上記処理を終了する。また例えば、ユーザのタップ操作によって「リセット」のコマンドが入力された場合には、ステップS100に戻って図3のフローチャートを繰り返してもよい。この場合、ユーザがタッチ対象面に変更を加えても(物体を取り除く、あるいは変える等)新たに表面形状の情報を取得して、適切なタッチ判定の閾値を設定することができる。また、電源がOFFされた場合には、タッチ操作認識処理のどの段階にあっても、全ての処理を中断する。   In step S109, the information processing apparatus 100 determines whether or not to continue the touch operation recognition process for the touch target surface at this time. Specifically, it is detected whether a “operation end instruction” command has been input by the user's tap operation. If it is determined to continue the process (NO in step S109), the process returns to step S102. If it is determined that the process is not continued (YES in step S109), the above process is terminated. Further, for example, when a “reset” command is input by the user's tap operation, the process may return to step S100 and the flowchart of FIG. 3 may be repeated. In this case, even if the user changes the touch target surface (such as removing or changing an object), it is possible to newly acquire surface shape information and set an appropriate touch determination threshold value. When the power is turned off, all processes are interrupted at any stage of the touch operation recognition process.

次に、図4のフローチャートを用いて、ステップS104において実行される閾値設定処理を詳細に説明する。   Next, the threshold value setting process executed in step S104 will be described in detail using the flowchart of FIG.

まず、ステップS104のタッチ判定の閾値設定処理が開始されると、ステップS200において、設定部203が、ステップS103において検出された指示位置に相当するタッチ対象面の高さHOFを取得する。具体的には、ステップS101にて取得された、タッチ対象面の表面形状を示す情報から、ステップS103にて検出した指示位置のxy座標対応する座標のz座標の値を取得し、これを指示位置におけるタッチ対象面高さHOFをとする。 First, when the threshold setting process for touch determination in step S104 is started, in step S200, the setting unit 203 acquires the height H OF of the touch target surface corresponding to the designated position detected in step S103. Specifically, from the information indicating the surface shape of the touch target surface acquired in step S101, the value of the z coordinate of the coordinate corresponding to the xy coordinate of the specified position detected in step S103 is acquired, and this is indicated. The touch target surface height H OF at the position is assumed to be.

次に、ステップS201において、設定部203が、ステップS103において検出された指示位置におけるタッチ判定の基準の閾値HTFを取得する。本実施形態では、ステップS200にて取得した指示位置におけるタッチ対象面高さHOFに一定の値を加算することにより、指示位置におけるタッチ判定閾値HTFをする。ただし、HOFを変数とする他の変換式を用いたり、ルックアップテーブルを参照したりすることにより、基準となる閾値を取得してもかまわない。 Next, in step S201, the setting unit 203 acquires a reference threshold value HTF for touch determination at the indicated position detected in step S103. In the present embodiment, by adding a constant value to the touch surface to a height H OF in acquired instruction located at step S200, the touch determination threshold H TF at the indicated position. However, the reference threshold value may be acquired by using another conversion formula using H OF as a variable or referring to a lookup table.

ここで、本実施形態において設定される基準の閾値HTFの例を、図5を用いて説明する。図5の(A)および(B)は、それぞれ、図1(a)に示すテーブル101と物体102の表面をタッチ対象面とする場合に設定される閾値の分布を、z軸、x軸、y軸それぞれの方向から見た様子を示す。 Here, an example of the reference threshold value HTF set in the present embodiment will be described with reference to FIG. (A) and (B) in FIG. 5 show threshold value distributions set when the surfaces of the table 101 and the object 102 shown in FIG. The state seen from the direction of each y-axis is shown.

図5(A)の例では、指示位置におけるタッチ対象面高さHOFに一定値を加算した値を指示位置におけるタッチ判定の基準閾値HTFとしている。つまり、テーブル101上では、テーブル上面から一定の高さ上方を、タッチ判定閾値500a、物体102上では物体上面から一定の高さ上方を、タッチ判定閾値500bと設定する。このように基準となる閾値HTFを設定した場合、物体上でのタップ操作は、テーブル上でのタップ操作よりも物体の高さの分大きな閾値に基づいて判定されるので、物体を置いたことでタップ操作が認識されなくなるといった問題を生じさせない。 In the example of FIG. 5A, a value obtained by adding a certain value to the touch target surface height H OF at the designated position is used as the reference threshold value H TF for touch determination at the designated position. That is, on the table 101, a certain height above the table upper surface is set as the touch determination threshold value 500a, and on the object 102, a certain height above the object upper surface is set as the touch determination threshold value 500b. When the reference threshold value H TF is set in this way, the tap operation on the object is determined based on a threshold value that is larger by the height of the object than the tap operation on the table. This prevents the problem that the tap operation is not recognized.

図5(B)の例では、ステップS103で検出された指示位置の周囲の複数の点について、タッチ対象面の高さHOFを取得し、それらの平均値に一定値を加算することで、基準閾値HTFを設定している。この場合、物体の境界付近においても、閾値HOFの大きさが連続となったタッチ判定閾値510を設定できる。従って物体の境界付近の指示位置が、検出誤差や指の微小な動きなどにより物体の境界をまたぐようにぶれたとしても、安定したタッチ判定の結果を得ることができるという効果がある。 In the example of FIG. 5B, the height H OF of the touch target surface is acquired for a plurality of points around the designated position detected in step S103, and a constant value is added to the average value thereof. A reference threshold HTF is set. In this case, it is possible to set the touch determination threshold value 510 in which the magnitude of the threshold value H OF is continuous even near the boundary of the object. Therefore, there is an effect that a stable touch determination result can be obtained even if the indicated position in the vicinity of the boundary of the object fluctuates across the boundary of the object due to a detection error or a minute movement of the finger.

タッチ判定の基準となる閾値の設定方法として2つの例を示したが、方法はこの限りではなく、タッチ対象面情報から各種変換式等を用いて様々なタッチ判定閾値を導出することができる。   Although two examples have been shown as the threshold value setting method used as a reference for touch determination, the method is not limited to this, and various touch determination threshold values can be derived from touch target surface information using various conversion formulas.

ここまで、指示位置xy座標から一意に導出できる閾値HTFを基準閾値と取得することを説明した。取得した基準閾値を、実際にタッチ判定に用いる閾値として設定することで、高さが一様ではないタッチ対象面に対するタッチを判定することができる。なお、さらにその他の条件に応じで、実際にタッチ判定に用いる閾値を選択的に設定することもできる。本実施形態では、続くステップS202〜ステップS208において、前回の操作特定シーケンスにおけるタッチ判定結果やドラッグ判定結果に応じて、実際にタッチ判定に用いる閾値HTFを切り替える。 So far, it has been described that the threshold value HTF that can be uniquely derived from the designated position xy coordinates is acquired as the reference threshold value. By setting the acquired reference threshold value as a threshold value that is actually used for touch determination, it is possible to determine a touch on a touch target surface whose height is not uniform. Note that a threshold value actually used for touch determination can be selectively set according to other conditions. In the present embodiment, followed by the step S202~ step S208, in response to the touch determination result and drug determination result in the previous operation specific sequence actually switch the threshold H TF used for touch determination.

本実施形態では、前回の操作シーケンスのステップS106において、「非ドラッグ中」と判定された場合には、基準閾値として設定された閾値に基づいてタッチ判定を行う。そして「ドラッグ中」と判定されていた場合には、ドラッグ操作のそれまでの経路において設定されていた基準閾値のうち、最大の値を、実際にタッチ判定に用いる閾値として設定する。つまり、認識対象(ここでは指先)が移動してきた経路上で、タッチ対象面の高さが最大となった位置での基準閾値を、実際にタッチ判定に用いる閾値として設定する。これにより、テーブル上と物体上の両方を経由するドラッグ操作中において、意図に反して指先がタッチ対象面から大きく離れてしまうことで、ドラッグ操作が中断されてしまうという問題を回避できる。   In the present embodiment, when it is determined that “not dragging” in step S106 of the previous operation sequence, the touch determination is performed based on the threshold set as the reference threshold. If it is determined as “dragging”, the maximum value among the reference threshold values set in the route until the drag operation is set as a threshold value actually used for touch determination. That is, the reference threshold value at the position where the height of the touch target surface is maximized on the route along which the recognition target (here, the fingertip) has moved is set as the threshold value actually used for touch determination. Thereby, during the drag operation via both the table and the object, it is possible to avoid the problem that the drag operation is interrupted because the fingertip is largely separated from the touch target surface unintentionally.

本実施形態では、ステップS201において指示位置のタッチ判定の基準となる閾値HTFを取得すると、次にステップS202において、設定部203が、ドラッグ操作中か否かを判定する。すなわち、認識対象がタッチ対象面をタッチしたまま移動しているか否かを判定する。この判定は、前回の操作特定シーケンスのステップS106にて判定したドラッグ判定結果の参照によって行う。ドラッグ判定結果が「ドラッグ中」の場合はステップS203へ進み、「非ドラッグ中」の場合はステップS208へ進む。 In the present embodiment, when the threshold value HTF that is a reference for touch determination of the designated position is acquired in step S201, the setting unit 203 next determines in step S202 whether or not a drag operation is being performed. That is, it is determined whether or not the recognition target is moving while touching the touch target surface. This determination is performed by referring to the drag determination result determined in step S106 of the previous operation specifying sequence. When the drag determination result is “dragging”, the process proceeds to step S203, and when it is “not dragged”, the process proceeds to step S208.

ステップS203では、最大値取得部204が、ドラッグ開始直後か否かの判定を行う。この判定は、前回の特定シーケンスのステップS106にて設定、保持した、ドラッグ開始直後か否かを示すフラグなどの情報の参照によって行う。ドラッグ開始直後であればステップS204へ進み、ドラッグ開始直後でなければステップS205へ進む。   In step S203, the maximum value acquisition unit 204 determines whether or not it is immediately after the start of dragging. This determination is performed by referring to information such as a flag indicating whether or not it is immediately after the start of dragging, which is set and held in step S106 of the previous specific sequence. If it is immediately after the start of the drag, the process proceeds to step S204, and if not immediately after the start of the drag, the process proceeds to step S205.

ステップS204では、最大値取得部204が、RAM111に保持されている最大閾値HTMAXの値を初期化する。ここでは、以降のステップで必ず更新されるよう、例えば0などの値で初期化する。 In step S < b > 204, the maximum value acquisition unit 204 initializes the value of the maximum threshold value H TMAX held in the RAM 111. Here, for example, it is initialized with a value such as 0 so that it is always updated in subsequent steps.

ステップS205では、最大値取得部204が、ステップS202で取得された基準の閾値HTFと、RAM111に保持されている最大閾値HTMAXの大きさを比較し、基準閾値の方が大きいかを判定する。ステップS103で検出された指示位置での基準閾値HTFが最大閾値HTMAXより大きいと判定された場合(ステップS205でYES)はステップS206へ進む。指示位置での基準閾値HTFが最大閾値HTMAXより大きくないと判定された場合(ステップS205でNO)は、ステップS206を省略してステップS207に進む。 In step S205, the maximum value acquisition unit 204 compares the reference threshold value H TF acquired in step S202 with the maximum threshold value H TMAX stored in the RAM 111, and determines whether the reference threshold value is larger. To do. If it is determined that the reference threshold value H TF at the indicated position detected in step S103 is larger than the maximum threshold value H TMAX (YES in step S205), the process proceeds to step S206. If it is determined that the reference threshold value H TF at the indicated position is not larger than the maximum threshold value H TMAX (NO in step S205), the process skips step S206 and proceeds to step S207.

ステップS206では、最大値取得部204が、最大閾値HTMAXの値を指示位置での基準閾値HTFに更新する。 In step S206, the maximum value acquisition unit 204 updates the value of the maximum threshold value H TMAX to the reference threshold value H TF at the indicated position.

ステップS207では、設定部203が、実際にタッチ判定に使用する閾値Hとして、最大閾値HTMAXを設定する。これにより、本実施形態では、ドラッグ操作のそれまでの経路において、タッチ対象面が最大の高さとなる点での基準閾値を、タッチ判定をするための閾値として使用することになる。これにより、例えばユーザの指先が、物体上を経てテーブル上までドラッグ操作を行う際に、物体の境界を越えたことで突然タッチ対象面から指先が離れてしまったとしても、ドラッグ操作の認識が中断されることがない。 In step S207, the setting unit 203, as the threshold value H T to be actually used in the touch determination, it sets the maximum threshold H TMAX. Thus, in the present embodiment, the reference threshold value at the point where the touch target surface has the maximum height in the route until the drag operation is used as the threshold value for touch determination. Thus, for example, when the user's fingertip performs a drag operation over the object and onto the table, even if the fingertip suddenly leaves the touch target surface due to crossing the boundary of the object, the drag operation is recognized. There is no interruption.

一方、ステップS208では、設定部203が、実際にタッチ判定に使用する閾値Hとして、ステップS201で取得した基準の閾値HTFを設定する。 On the other hand, in step S208, the setting unit 203, as the threshold value H T to be actually used in the touch determination, it sets the threshold value H TF standard acquired in step S201.

ステップS207かステップS208のいずれかの閾値設定処理が完了したら、処理は図3のフローチャートにリターンする。   When the threshold setting process in either step S207 or step S208 is completed, the process returns to the flowchart of FIG.

ここで、図6及び図7を参照して、本実施形態のようにドラッグ中か否かに応じて、選択的にタッチ判定の閾値を設定する処理の具体例と効果を詳しく説明する。   Here, with reference to FIGS. 6 and 7, specific examples and effects of processing for selectively setting a threshold for touch determination according to whether or not dragging is performed as in the present embodiment will be described in detail.

図6(A)〜(C)は、テーブル101の上面とテーブル上に置かれた物体102の上面とを含む、一様な平面でないタッチ対象面上でのドラッグ操作の様子を示す図(z軸に垂直な方向からみた断面図)である。ステップS201の処理で取得される基準閾値HTFは、基準面であるテーブル101上では閾値600a、物体102上では閾値600bとなる。なおここでは図5(A)のパターンで取得された基準閾値を例示するが、もちろん図5(B)やその他の方法によって設定された基準閾値であっても構わない。 FIGS. 6A to 6C are diagrams (z) showing the state of the drag operation on the touch target surface that is not a uniform plane, including the upper surface of the table 101 and the upper surface of the object 102 placed on the table. It is sectional drawing seen from the direction perpendicular | vertical to an axis | shaft). The reference threshold value H TF acquired in the process of step S201 is a threshold value 600a on the reference surface table 101 and a threshold value 600b on the object 102. Here, the reference threshold value acquired with the pattern of FIG. 5A is exemplified, but it is needless to say that the reference threshold value set by FIG. 5B or other methods may be used.

図6(A)において、手指601a、601b、601c、601d、601e、601f、601gは、この順に動かされたユーザの手指104の位置を示す。指示位置602a、602b、602c、602d、602e、602f、602gはそれぞれ、手指601a、601b、601c、601d、601e、601f、601gのときに検出される指示位置である。図6(A)の場合、601c〜601eにかけて、テーブル101上から開始されて物体102上を経由するドラッグ操作が入力されている。ここで図7は、ドラッグ操作を行った際に取得できるデータと判定結果の一例を示す表である。図7(A)は図6(A)に示された操作例に対応する。   In FIG. 6A, fingers 601a, 601b, 601c, 601d, 601e, 601f, and 601g indicate the positions of the user's fingers 104 moved in this order. The designated positions 602a, 602b, 602c, 602d, 602e, 602f, and 602g are designated positions detected when the fingers 601a, 601b, 601c, 601d, 601e, 601f, and 601g are used. In the case of FIG. 6A, a drag operation starting from the table 101 and passing through the object 102 is input from 601c to 601e. Here, FIG. 7 is a table showing an example of data and determination results that can be acquired when a drag operation is performed. FIG. 7A corresponds to the operation example shown in FIG.

まず、手指601a及び手指601bの状態では、検出される指示位置602aの高さは閾値600aより大きいため、ステップS105のタッチ判定において「非タッチ状態」と判定される。タッチ判定結果が「非タッチ状態」であるため、ステップS106のドラッグ中か否かの判定において「非ドラッグ中」と判定され、結果としてステップS107の操作判定において「操作なし」と判定される。次に、手指601cの状態では、検出される指示位置602cの高さは閾値600aより小さいため、「タッチ状態」と判定される。また、この時点の指先位置が、タッチ開始位置として保持される。続くステップS106のドラッグ操作中かの判定においては、タッチ開始位置からの移動距離が0であるため「非ドラッグ状態」と判定され、結果としてステップS107の操作判定において「タップ中」と判定される。手指601dの状態でも、タッチ判定の結果は「タッチ状態」と判定される。このとき、タッチ開始位置から平行移動した距離は閾値Dより大きいとする。従って「ドラッグ中」と判定され、結果としてステップS107の操作判定において「ドラッグ中」と判定される。なお、手指601dの状態の直後、つまりドラッグ開始直後の操作特定シーケンスにおいて、最大タッチ判定閾値HTMAXは600aに設定されている。次に、手指601eの状態では、検出される指示位置602eの高さは閾値600bより小さいため、「タッチ状態」と判定される。さらに、ドラッグ操作は継続中であるため、当然、タッチ開始位置から平行移動した距離は閾値Dより大きく、「ドラッグ中」と判定される。さらに、この時点ではドラッグ開始直後ではないため、ステップS204はスキップされる。また、閾値600b>閾値600a=HTMAXであることから、ステップS206において最大タッチ判定閾値HTMAXが600bに更新される。従って、このドラッグ操作の過程において実際にタッチ判定に用いられる閾値は、図6(A)において実線で示される閾値600cとなる。続くステップS207にて、このあとドラッグ操作が継続されている間は、実際にタッチ判定に仕様する閾値Hとして最大タッチ判定閾値HTMAX=600bが設定される。続く手指601fの状態では、指示位置602fが閾値600bより小さいため、タッチ判定結果は「タッチ状態」、さらに「ドラッグ中」と判定される。最後に、手指601gの状態では、指示位置602fが閾値600bより大きいため、「非タッチ状態」と判定される。タッチ判定結果が「非タッチ」であるため、ステップS106のドラッグ判定にて「非ドラッグ中」と判定される。「非タッチ状態」で、前回が「ドラッグ中」であるので、結果としてステップS107の操作判定において「ドラッグ操作終了」と判定される。つまり、手指601fの状態から手指601gの状態の過程のタッチ判定結果が「タッチ状態」から「非タッチ状態」に変化した時点で、ステップS107の操作判定においてドラッグ操作の入力が特定される。従って1回分のドラッグ操作は終了したので、次にドラッグ操作が入力されるときにはHTMAXは初期化される。 First, in the state of the finger 601a and the finger 601b, the height of the indicated position 602a to be detected is larger than the threshold value 600a. Since the touch determination result is “non-touch state”, it is determined as “not dragging” in the determination of whether or not dragging in step S106, and as a result, “no operation” is determined in the operation determination in step S107. Next, in the state of the finger 601c, since the height of the indicated position 602c to be detected is smaller than the threshold 600a, it is determined as the “touch state”. Further, the fingertip position at this time is held as the touch start position. In the subsequent determination of whether or not the drag operation is being performed in step S106, the movement distance from the touch start position is 0, so that it is determined as “non-drag state”. . Even in the state of the finger 601d, the result of the touch determination is determined as the “touch state”. At this time, the distance moved in parallel from the touch start position is assumed to be larger than the threshold value D. Therefore, it is determined as “dragging”, and as a result, it is determined as “dragging” in the operation determination in step S107. In the operation specifying sequence immediately after the state of the finger 601d, that is, immediately after the start of dragging, the maximum touch determination threshold value HTMAX is set to 600a. Next, in the state of the finger 601e, the height of the indicated position 602e to be detected is smaller than the threshold value 600b, so it is determined as the “touch state”. Furthermore, since the drag operation is continuing, naturally, the distance moved in parallel from the touch start position is larger than the threshold value D, and it is determined that “dragging”. Furthermore, since it is not immediately after the start of dragging at this point, step S204 is skipped. Further, since threshold 600b> threshold 600a = H TMAX , maximum touch determination threshold H TMAX is updated to 600b in step S206. Therefore, the threshold value actually used for touch determination in the course of the drag operation is the threshold value 600c indicated by a solid line in FIG. At subsequent step S207, while after this drag operation is continued, the maximum touch determination threshold H TMAX = 600b are actually set as the threshold value H T to specifications touch determination. In the subsequent state of the finger 601f, since the designated position 602f is smaller than the threshold 600b, the touch determination result is determined as “touch state” and further “dragging”. Finally, in the state of the finger 601g, since the designated position 602f is larger than the threshold value 600b, it is determined as the “non-touch state”. Since the touch determination result is “non-touch”, it is determined as “not dragging” in the drag determination in step S106. In the “non-touch state”, the previous time is “dragging”, and as a result, in the operation determination in step S107, it is determined that “drag operation is completed”. That is, when the touch determination result in the process of the state of the finger 601f from the state of the finger 601f changes from the “touch state” to the “non-touch state”, the input of the drag operation is specified in the operation determination in step S107. Accordingly, since one drag operation is completed, the next time the drag operation is input, HTMAX is initialized.

このように、ユーザが物体上を経由したドラッグ操作を行う途中で、物体上からテーブル上にかけ移動した直後は、指先が直下のタッチ対象面から離れてしまう場面が生じ得る。本実施形態では、ドラッグ操作中は、当該ドラッグ操作の経路上でのタッチ対象面の最大の高さに基づき、タッチ判定の閾値を設定することで、このような場合でもドラッグ操作の認識が中断されてしまうことを防止することができる。従って、ユーザはドラッグ操作において、「タッチ対象面に指を沿わせる」ことを意識しなくてよいので、より操作性を向上することができる。   In this way, immediately after the user moves from the object onto the table while performing the drag operation via the object, a scene may occur where the fingertip is separated from the touch target surface directly below. In the present embodiment, during the drag operation, the touch operation threshold is set based on the maximum height of the touch target surface on the drag operation path, and the recognition of the drag operation is interrupted even in such a case. Can be prevented. Therefore, the user does not need to be aware that “the finger is placed on the touch target surface” in the drag operation, so that the operability can be further improved.

次に、図8、図9、図10を参照して、本実施形態を効果的に利用した情報処理装置100の具体的な操作例を説明する。図8、図9、図10は、情報処理装置100に対して行われる一連の操作のうち、特徴的な8つの段階でのテーブル101を、俯瞰して見た状態を示している。   Next, a specific operation example of the information processing apparatus 100 that effectively uses the present embodiment will be described with reference to FIGS. 8, 9, and 10. 8, 9, and 10 illustrate a state in which the table 101 at eight characteristic stages in the series of operations performed on the information processing apparatus 100 is viewed from above.

まず、図8の状態800は、テーブル101の上に物体の一例として読み取り対象(一例として、新聞紙810)が載置された状態を表す。これ以降、この新聞紙810に対して、記事単位の読み取り画像を取得し、当該読み取り画像をA4の原稿にレイアウトしなおしたデータを生成するという機能を例に説明する。この機能により、実際に記事のスクラップをするよりも容易に、自分に必要な情報をみやすくまとめたデータを生成するという作業ができるようになる。ここで、新聞紙810は、ユーザにより、テーブル101上にユーザが読み取りたい記事と日付欄が見えるように配置される。   First, a state 800 in FIG. 8 represents a state in which a reading target (newspaper 810 as an example) is placed on the table 101 as an example of an object. Hereinafter, a function of acquiring a read image in units of articles from the newspaper 810 and generating data in which the read image is laid out again on an A4 document will be described as an example. This feature makes it easier to create data that makes it easier to see the information you need than to actually scrap an article. Here, the newspaper 810 is arranged so that the user can see the article and date column that the user wants to read on the table 101.

状態801は、テーブル101に置かれた物体102が、新聞紙810であることが認識されたのに応じて、テーブル101上で投影UIが構成された様子を示す。認識処理は、可視光カメラ108の撮像画像に基づいて、CPU110が行う。ここでは、読み取りを行う最大範囲を示す認識枠811、タップ操作により指示コマンドを入力するためのボタン812a、812b、812c、読み取りが完了した記事のサムネイル画像が配置されるトレイ813といった表示オブジェクトが投影される。ここで例えば、ボタン812aが、「ブロック分割の上読み取りを実行」コマンドに対応するUI部品であったとする。ボタン812aは、テーブル上に投影されている表示オブジェクトであるため、タッチ対象面は基準面となるテーブル上面になる。従って、図6の基準閾値600aのように、テーブル上面から一定の高さの閾値が設定され(ステップS208)、タッチ判定が行われる(ステップS105)。そして、タッチ状態にある間にユーザの指先がxy平面において閾値D以上の移動がなければ、タップ操作が認識される(ステップS107)。タップされた位置が、ボタン812aの表示範囲であれば、CPU110が可視光カメラ108に撮像された新聞紙810の画像を解析して、記事ごとにブロック化した上で、読み取りを行う。読み取り画像は、ブロック毎にトリミングされた状態で、メモリに保持される。   A state 801 shows a state in which the projection UI is configured on the table 101 in response to the recognition that the object 102 placed on the table 101 is the newspaper 810. The recognition process is performed by the CPU 110 based on the captured image of the visible light camera 108. Here, display objects such as a recognition frame 811 indicating the maximum range to be read, buttons 812a, 812b, and 812c for inputting instruction commands by a tap operation, and a tray 813 on which thumbnail images of articles that have been read are arranged are projected. Is done. Here, for example, it is assumed that the button 812a is a UI component corresponding to the “execute block division upper reading” command. Since the button 812a is a display object projected on the table, the touch target surface is the table upper surface serving as a reference surface. Accordingly, a threshold having a certain height is set from the upper surface of the table (step S208) as in the reference threshold 600a of FIG. 6, and touch determination is performed (step S105). If the user's fingertip does not move beyond the threshold value D on the xy plane while in the touch state, the tap operation is recognized (step S107). If the tapped position is within the display range of the button 812a, the CPU 110 analyzes the image of the newspaper 810 captured by the visible light camera 108, blocks it for each article, and performs reading. The read image is held in a memory in a state where it is trimmed for each block.

状態802は、ブロック化された記事毎の領域を囲むようにブロック枠814が投影表示された様子を示す。この状態において、ユーザにより、読み取りたい記事を囲む領域が、タップ操作されると、タップされたブロックの読み取り画像が、当該新聞紙810の同じブロックに重畳するように投影される。ここで、タップ操作が行われるのは物体102である新聞紙810の上であるので、タッチ判定の閾値は、テーブル上に対するタップ操作の場合とは異なる閾値が設定される。本実施形態の場合は、新聞紙810とテーブルとからなるタッチ対象面の表面形状が取得される(ステップS101)。この情報には、新聞紙810によって生じたタッチ対象面の凹凸を示す高さ情報が含まれる。それに基づき、図6の基準閾値600bのように、テーブル上よりも新聞紙810の厚みの分大きい閾値が設定され(ステップS208)、タッチ判定(ステップS105)とタップ操作の特定(ステップS107)がなされる。   A state 802 shows a state in which a block frame 814 is projected and displayed so as to surround a region for each blocked article. In this state, when the user taps an area surrounding the article to be read, the read image of the tapped block is projected so as to be superimposed on the same block of the newspaper 810. Here, since the tap operation is performed on the newspaper 810 which is the object 102, a threshold value for touch determination is set differently from the case of the tap operation on the table. In the case of the present embodiment, the surface shape of the touch target surface composed of the newspaper 810 and the table is acquired (step S101). This information includes height information indicating the unevenness of the touch target surface generated by the newspaper 810. Based on this, a threshold that is larger by the thickness of the newspaper 810 than on the table is set as in the reference threshold 600b in FIG. 6 (step S208), and touch determination (step S105) and tap operation specification (step S107) are made. The

図9の状態803は、さらにユーザにより、重畳された読み取り画像をトレイ813に向けて移動させるドラッグ操作が入力されている様子を示す。このドラッグ操作は、新聞紙810上から、テーブル上にかけて行われる。本実施形態では、まず新聞紙810上では、記事のブロックを指示したときと同じ基準閾値(例えば閾値600b)に基づいてタッチ判定(ステップS105)が行われる。そして、xy方向に平行移動した距離がDを越えた時点で、ドラッグ操作が開始されたと特定される(ステップS107)。そして、最大閾値HTMAXが、新聞紙810上での閾値に設定されるので、例えユーザの指先が、新聞紙を離れテーブル101の情報に至った時点でも、新聞紙810上と同じ閾値に基づいてタッチ判定が行われる。ここで、読み取り画像815は、表示制御部207によるドラッグ操作に対する応答として、ドラッグ操作によって移動される距離が大きくなるのに従い、そのサイズを縮小させるように表示される。 A state 803 in FIG. 9 illustrates a state where a drag operation for moving the superimposed read image toward the tray 813 is further input by the user. This drag operation is performed from the newspaper 810 to the table. In the present embodiment, first, on the newspaper 810, touch determination (step S105) is performed based on the same reference threshold value (for example, threshold value 600b) as when an article block is instructed. Then, when the distance translated in the xy direction exceeds D, it is specified that the drag operation has started (step S107). Since the maximum threshold value H TMAX is set to the threshold value on the newspaper 810, even when the user's fingertip leaves the newspaper and reaches the information in the table 101, the touch determination is made based on the same threshold as that on the newspaper 810. Is done. Here, the read image 815 is displayed so as to reduce its size as the distance moved by the drag operation increases as a response to the drag operation by the display control unit 207.

状態804は、記事の読み取り画像815が、トレイ813の中までドラッグされた結果として、そのサムネイル画像がトレイ813内に表示された様子を示す。そして状態805は、ユーザは上記のように、記事ブロックへのタップ操作と、読み取り画像のトレイ813へのドラッグ操作を繰り返して、所望の記事を選択し終えた状態に相当する。   A state 804 shows a state in which the thumbnail image is displayed in the tray 813 as a result of the read image 815 of the article being dragged into the tray 813. The state 805 corresponds to a state where the user has finished selecting the desired article by repeating the tap operation on the article block and the drag operation on the tray 813 of the read image as described above.

そして、図10の状態806は、ユーザにより、テーブル101上から新聞紙810が取り除かれた様子を示す。CPU110は、所望とする記事が選択された状態で、読み取り対象が取り除かれたこと認識すると、表示制御部207により、操作コマンドに対応するボタンUIの内容を変更する。ここで新たに投影されるボタン816aは、例えば「トレイにドラッグした記事をA4用紙サイズの原稿にレイアウトさせる指示」のコマンドに対応するものとする。テーブルに対するタップ操作を認識する処理により、ボタン816aに対するタップ操作を特定すると、CPU110は、メモリに保持されている読み取り画像に基づき、その記事の形状や文字の大きさ等に基づき、適切なレイアウトを導出する。   A state 806 in FIG. 10 shows a state in which the newspaper 810 is removed from the table 101 by the user. When the CPU 110 recognizes that the reading target has been removed in a state where a desired article is selected, the display control unit 207 changes the content of the button UI corresponding to the operation command. Here, the newly projected button 816a corresponds to, for example, a command of “instruction to lay out an article dragged to the tray on an A4 paper size document”. When the tap operation for the button 816a is specified by the process of recognizing the tap operation on the table, the CPU 110 performs an appropriate layout based on the shape of the article, the size of the character, etc. based on the read image stored in the memory. To derive.

状態807は、自動レイアウトされたA4の原稿を示す画像817が、テーブル101の中央に投影されていることを示す。ユーザは、ボタン816bやボタン816cをタップすることで、ドキュメントデータとして生成し、記憶することを指示したり、あるいは印刷装置に送って印刷出力させることを指示したりすることができる。   A state 807 indicates that an image 817 indicating an A4 document that has been automatically laid out is projected on the center of the table 101. By tapping the button 816b or the button 816c, the user can instruct to generate and store as document data, or instruct to send to the printing apparatus for printing.

このように、本実施形態によれば、高さが一様ではないタッチ対象面に対しても、タップ操作やドラッグ操作などさまざまなタッチ操作を利用した使い方ができる。   As described above, according to the present embodiment, it is possible to use various touch operations such as a tap operation and a drag operation even on a touch target surface having a non-uniform height.

以上述べたように、本実施形態では、高さが一様ではないタッチ対象面におけるタッチ操作では、検出される指示位置と同じxy座標におけるタッチ対象面の高さを基に、タッチ判定に用いる閾値を設定する。さらに、ドラッグ操作中の場合は、その経路においては、当該ドラッグ操作のそれまで経路におけるタッチ対象面の最大の高さに基づく閾値を用いてタッチ判定を行う。それにより、タッチ対象面の高さが変化する境界付近において、認識対象とタッチ対象面との間が急激に離れたとしても、ドラッグ操作の認識が中断される誤認識を低減することができる。   As described above, in the present embodiment, in the touch operation on the touch target surface whose height is not uniform, the touch determination is used based on the height of the touch target surface at the same xy coordinates as the detected indication position. Set the threshold. Further, when a drag operation is being performed, touch determination is performed for the route using a threshold value based on the maximum height of the touch target surface in the route until the drag operation. Accordingly, even when the recognition target and the touch target surface are suddenly separated in the vicinity of the boundary where the height of the touch target surface changes, it is possible to reduce erroneous recognition in which the recognition of the drag operation is interrupted.

なお、本実施形態では、タッチ対象面の表面形状を三次元座標情報として取得してタッチ判定の基準閾値を導出したが、閾値の導出方法はこれに限るものではない。例えば、可視光カメラ等で取得した画像から取得した物***置の二次元座標情報と、あらかじめ数値で指定するなどして与えた物体の高さhの情報を用いて、タッチ対象面の表面形状を示す情報を取得しても良い。この場合の、物体が存在する領域ではタッチ対象面の高さを所定の値(例えばh)とし、それ以外の領域では0とすればよい。   In the present embodiment, the surface shape of the touch target surface is acquired as three-dimensional coordinate information and the reference threshold value for touch determination is derived. However, the threshold value deriving method is not limited to this. For example, the surface shape of the touch target surface is determined by using the two-dimensional coordinate information of the object position acquired from the image acquired by a visible light camera or the like and the information on the height h of the object given by specifying numerical values in advance. The information shown may be acquired. In this case, the height of the touch target surface may be set to a predetermined value (for example, h) in the region where the object exists, and may be set to 0 in other regions.

また、本実施形態では、赤外光発光部206と赤外カメラ207を利用して、ユーザの手指の三次元位置を取得したが、ステレオカメラや距離画像センサを利用することもできる。認識対象と操作面との近接状態に基づいてタッチ判定を行う方法は、三次元位置に基づく距離の判定に限らず、例えば感熱センサや静電容量センサ等を利用し、操作面に対してユーザの手指がどの程度近接したかを検出した結果に基づく判定に置き換えてもよい。また、本実施形態では、プロジェクタによる投影対象面をタッチ操作の操作面とする例について説明したが、ヘッドマウントディスプレイを利用し、ARやMR空間上の仮想面(仮想的に表示された物体の表面など)を操作面とする場合にも適応可能である。   In the present embodiment, the three-dimensional position of the user's finger is acquired using the infrared light emitting unit 206 and the infrared camera 207, but a stereo camera or a distance image sensor can also be used. The method of performing touch determination based on the proximity state between the recognition target and the operation surface is not limited to the determination of the distance based on the three-dimensional position, and for example, using a thermal sensor, a capacitance sensor, or the like, It may be replaced with determination based on the result of detecting how close the fingers are. In the present embodiment, an example in which the projection target surface by the projector is used as the operation surface of the touch operation has been described. However, a virtual surface in the AR or MR space (a virtually displayed object is displayed) using a head mounted display. It is also applicable to the case where the operation surface is a surface.

また、本実施形態では、常にタッチ対象面の高さに応じたタッチ判定閾値の設定を行った。しかし、タッチ対象面の表面形状を示す情報を取得した時点で、タッチ対象面が一様の高さであるとみなせるほど、物体の高さが小さい場合は、全xy座標において、あらかじめ指定するなどして与えた一定のタッチ判定閾値を用いたタッチ判定を行っても良い。   In this embodiment, the touch determination threshold value is always set according to the height of the touch target surface. However, when the information indicating the surface shape of the touch target surface is acquired, if the height of the object is small enough that the touch target surface can be regarded as having a uniform height, it is specified in advance in all xy coordinates, etc. The touch determination using the given touch determination threshold value may be performed.

さらに、本実施形態では、1つの認識対象(1本の指)によるタッチ操作、特にドラッグ操作におけるタッチ判定閾値の設定方法について記載したが、認識対象の数はこれに限るものではない。本実施形態にて記載した方法は、複数の認識対象(2本以上の指)によって複数の指示位置が指示される場合でもそれぞれの位置において適用できる。例えば、2つの認識対象がそれぞれ、タッチしたまま位置を動かすことによって行う操作の例として、ピンチ操作(複数の指示位置の間隔を拡縮する)、ローテート操作(複数の位置の相対関係を維持したまま回転させる)がある。2つの認識対象のそれぞれについて、本実施形態にて記載した方法(ステップ102からステップS108)を用いて設定したタッチ判定閾値によるタッチ判定を行い、かつ、その結果を用いて、上述したようにドラッグ操作途中かの判定を行う。それぞれの認識対象に対するタッチ判定結果とドラッグ操作中かの判定結果を統合することで、ピンチ操作、ローテート操作などの操作種別を判定することができる。例えば、2つの認識対象のドラッグ判定結果が共に「ドラッグ中」であり、かつ認識対象間の距離が前回の操作判定特定シーケンスにおける認識対象間の距離よりも小さい場合、「ピンチイン操作中」と判定する。このように、本実施形態にて記載した方法を2つの認識対象に適用することで、高さが一様でないタッチ対象面にたいするマルチタッチ操作において、ユーザの意図しない操作の中断を低減することができる。   Furthermore, in this embodiment, although the touch determination threshold value setting method in touch operation by one recognition target (one finger), especially drag operation was described, the number of recognition targets is not restricted to this. The method described in the present embodiment can be applied at each position even when a plurality of designated positions are designated by a plurality of recognition objects (two or more fingers). For example, as an example of operations performed by moving the positions of two recognition objects while touching each other, a pinch operation (expanding or reducing the interval between a plurality of designated positions), a rotate operation (maintaining a relative relationship between a plurality of positions) Rotate). For each of the two recognition targets, a touch determination is performed using the touch determination threshold set using the method described in the present embodiment (step 102 to step S108), and the result is used to drag as described above. Determine if operation is in progress. By integrating the touch determination result for each recognition target and the determination result indicating whether the drag operation is being performed, it is possible to determine an operation type such as a pinch operation or a rotate operation. For example, when both drag recognition results of two recognition targets are “dragging” and the distance between the recognition targets is smaller than the distance between the recognition targets in the previous operation determination specific sequence, it is determined as “pinch-in operation in progress”. To do. As described above, by applying the method described in the present embodiment to two recognition targets, it is possible to reduce interruption of an operation that is not intended by the user in a multi-touch operation on a touch target surface having a non-uniform height. it can.

<第2の実施形態>
第1の実施形態は、高さが一様ではないタッチ対象面上におけるタッチ判定に用いる閾値を設定する際、ドラッグ操作中は、当該ドラッグ操作のそれまでの経路にあたるタッチ対象面の最大の高さに対応する閾値を、当該ドラッグ操作が終了するまで適応した。それに対し、第2の実施形態では、ドラッグ操作の経路において、タッチ対象面の高さが低下してからもドラッグ操作が継続される場合、再度タッチ判定に用いる閾値の大きさを再設定する例を説明する。
<Second Embodiment>
In the first embodiment, when setting a threshold value used for touch determination on a touch target surface whose height is not uniform, during the drag operation, the maximum height of the touch target surface corresponding to the route until the drag operation is reached. The threshold corresponding to the height was applied until the drag operation was completed. On the other hand, in the second embodiment, in the drag operation route, when the drag operation is continued even after the height of the touch target surface is reduced, the threshold value used for touch determination is reset again. Will be explained.

以下、本実施形態について図面を用いて詳細に説明する。他図を用いて説明したものには同一の符号を付し、その説明を省略する。   Hereinafter, the present embodiment will be described in detail with reference to the drawings. Components described with reference to other drawings are denoted by the same reference numerals, and description thereof is omitted.

図2(B)は、本実施形態における情報処理装置100の機能ブロック図である。情報処理装置100は、図2(A)にて説明した各ブロックと、再設定部209から構成される。これら各機能ブロックは、上述した各処理プログラムをCPU110で実行することによって実現できる機能に相当する。再設定部209は、面情報取得部201で取得したタッチ対象面の表面形状を示す情報と、位置検出部202で検出した指示位置とを利用して、それ以降のドラッグ操作の経路において実際にタッチ判定に使用される閾値を、各位置における基準閾値に再設定する。   FIG. 2B is a functional block diagram of the information processing apparatus 100 in the present embodiment. The information processing apparatus 100 includes the blocks described in FIG. 2A and a resetting unit 209. Each of these functional blocks corresponds to a function that can be realized by the CPU 110 executing each processing program described above. The resetting unit 209 uses the information indicating the surface shape of the touch target surface acquired by the surface information acquisition unit 201 and the indicated position detected by the position detection unit 202 to actually perform the subsequent drag operation path. The threshold used for touch determination is reset to the reference threshold at each position.

次に、第2の実施形態に係る情報処理装置100が実行する、閾値設定処理のフローチャートを図11に示す。第1の実施形態の図4のフローチャートと同じ符号を付した処理ステップでは、第1の実施形態と同内容の処理が実行される。図4のフローチャートとの差異は、ステップS300からステップS307である。   Next, FIG. 11 shows a flowchart of threshold setting processing executed by the information processing apparatus 100 according to the second embodiment. In the processing steps denoted by the same reference numerals as those in the flowchart of FIG. 4 of the first embodiment, the same processing as that of the first embodiment is executed. The difference from the flowchart of FIG. 4 is from step S300 to step S307.

ステップS204までの処理は、第1の実施形態と同様であるため、説明を省略する。本実施形態では、ドラッグ開始直後の閾値設定処理において、ステップS300が実行される。ステップS300にて、再設定部209が、タッチ対象面の最大の高さを示す値HOMAXを初期化する。ここでは、以降のステップで必ず更新されるよう、例えば0などの値で初期化する。最大高さHOMAXはタッチ対象面の高さが低下したことを検出するのに使用する。続くステップS205、ステップS206の処理は、第1の実施形態と同様である。ステップS301およびステップS303において、再設定部209が、最後に検出された指示位置におけるタッチ対象面高さHOFと最大高さHOMAXを比較する。指示位置でのタッチ対象面の高さHOFが最大高さHOMAXより大きいと判定される場合(ステップS301でYES)は、ステップS302に進む。指示位置でのタッチ対象面の高さHOFが最大高さHOMAXより小さいと判定される場合(ステップS303でYES)は、ステップS304に進む。それ以外の場合、つまりの指示位置でのタッチ対象面の高さHOFが最大高さHOMAXに等しい場合は、ステップS207に進む。ステップS302では、再設定部209が、最大タッチ対象面高さHOMAXを、最後に検出された指示位置でのタッチ対象面の高さHOFに更新する。これは、タッチ対象面の上昇に応じて、最大高さHOMAXを上昇したタッチ対象面の高さに更新することに相当する。ステップS304からステップS307の処理が、タッチ対象面高さが、低下した場合に実行される理に相当する。まず、ステップS304では、再設定部209が、タッチ対象面の高さが低下した直後かどうかを判定する。この判定は、ステップS301およびステップS302の判定結果を、前回の操作判定特定シーケンスにおける当該判定結果と比較して行う。具体的には、前回の判定結果が「指示位置でのタッチ対象面の高さHOFが最大高さHOMAX以上」であり、かつ今回の判定結果が「高さHOFが最大高さHOMAXより小さい」場合、タッチ対象面高さが低下した直後だと判定する。タッチ対象面の高さが低下した直後であると判定された場合(ステップS304でYES)は、ステップS305に進み、タッチ対象面の高さが低下した直後ではないと判定された場合(ステップS304でNO)は、ステップS306に進む。ステップS305では、再設定部209が、タッチ対象面の高さが低下した時刻を、その時点の時刻で更新する。ステップS306では、再設定部209が、ステップS305にて更新したタッチ対象面の高さが低下した時刻から、その時点までの経過時間を算出し、タッチ対象面の高さが低下してから一定時間が経過したかを判定する。一定時間が経過していると判定された場合(ステップS306でYES)は、ステップS307に進み、一定時間が経過していないと判定された場合(ステップS306でNO)はステップS207に進む。ステップS307では、再設定部209が、実際にタッチ判定に使用する閾値Hを、最後に検出された指示位置での基準閾値HTFに再設定する。以降、ドラッグ操作が継続されている間は、ステップS207においては、タッチ判定には基準閾値が使用される。 Since the processing up to step S204 is the same as that of the first embodiment, the description thereof is omitted. In the present embodiment, step S300 is executed in the threshold setting process immediately after the start of dragging. In step S300, the resetting unit 209 initializes a value H OMAX indicating the maximum height of the touch target surface. Here, for example, it is initialized with a value such as 0 so that it is always updated in subsequent steps. The maximum height H OMAX is used to detect that the height of the touch target surface has decreased. The subsequent steps S205 and S206 are the same as those in the first embodiment. In step S301 and step S303, the resetting unit 209 compares the touch target surface height H OF and the maximum height H OMAX at the last detected indication position. When it is determined that the height H OF of the touch target surface at the indicated position is greater than the maximum height H OMAX (YES in step S301), the process proceeds to step S302. If it is determined that the height H OF of the touch target surface at the indicated position is smaller than the maximum height H OMAX (YES in step S303), the process proceeds to step S304. In other cases, that is, when the height H OF of the touch target surface at the indicated position is equal to the maximum height H OMAX , the process proceeds to step S207. In step S302, the resetting unit 209 updates the maximum touch target surface height H OMAX to the touch target surface height H OF at the last detected instruction position. This corresponds to updating the maximum height H OMAX to the height of the touch target surface that has been increased in accordance with the increase of the touch target surface. The processing from step S304 to step S307 corresponds to the reason executed when the touch target surface height decreases. First, in step S304, the resetting unit 209 determines whether or not the height of the touch target surface has just decreased. This determination is performed by comparing the determination results of step S301 and step S302 with the determination results in the previous operation determination specific sequence. Specifically, the previous determination result is “the height H OF of the touch target surface at the indicated position is greater than or equal to the maximum height H OMAX ”, and the current determination result is “the height H OF is the maximum height H If “smaller than OMAX ”, it is determined that the touch target surface height has just decreased. If it is determined that it is immediately after the height of the touch target surface is decreased (YES in step S304), the process proceeds to step S305, and if it is determined that it is not immediately after the height of the touch target surface is decreased (step S304). NO) proceeds to step S306. In step S <b> 305, the resetting unit 209 updates the time when the height of the touch target surface decreases with the time at that time. In step S306, the resetting unit 209 calculates the elapsed time from the time when the height of the touch target surface updated in step S305 decreases, and is constant after the height of the touch target surface decreases. Determine if time has passed. If it is determined that the predetermined time has elapsed (YES in step S306), the process proceeds to step S307. If it is determined that the predetermined time has not elapsed (NO in step S306), the process proceeds to step S207. In step S307, resetting unit 209 is actually a threshold H T to be used for touch determination, resets the reference threshold H TF at last detected indicated position. Thereafter, while the drag operation is continued, the reference threshold is used for touch determination in step S207.

次に、本実施形態の情報処理装置100における処理の流れを、図6(B)と(C)、および図3、図11のフローチャートを用いて説明する。   Next, the flow of processing in the information processing apparatus 100 of this embodiment will be described with reference to FIGS. 6B and 6C and the flowcharts of FIGS.

図6(B)は、図6(A)と同様に、ユーザが物体上で開始したドラッグ操作をテーブル上まで継続してからリリースする様子を示す図である。手指610a、610b、610c、610d、610eは、この順にドラッグ操作を行う様子を示している。手指610cは、手指がテーブル上に近づいている(の高さが小さくなっている)様子を示している。一般に、ユーザには、空中で手指の高さを一定に保つったまま操作を行うことは難しく、例えば長い距離をドラッグ操作する過程等では、タッチ対象面上に物理的に接触している方が、負担が軽い場合がある。また、表示オブジェクトを移動させる目的でドラッグ操作を行っていた場合などは、ドラッグ操作を終了させるにあたり、表示オブジェクトの最終的な位置をタッチ対象面に触れた状態で調整してから終了させたいという場合もある。移動させていた手指610cは、そのような場合に、ユーザが指先をタッチ対象面に近づけた状態を示している。そして、手指610dは、ユーザがドラッグをリリースするために手指をタッチ対象面から離し始めた状態を示している。指示位置611a、611b、611c、611d、611eはそれぞれ、手指610a、610b、610c、610d、610eの状態で検出される指示位置である。   FIG. 6B is a diagram illustrating a state in which the drag operation started on the object by the user is continued to the table and then released, as in FIG. 6A. Fingers 610a, 610b, 610c, 610d, and 610e show a state where the drag operation is performed in this order. A finger 610c shows a state in which the finger is approaching the table (the height of the finger is small). In general, it is difficult for a user to perform an operation while keeping the height of a finger constant in the air. For example, in the process of dragging a long distance, the person who is physically touching the touch target surface However, the burden may be light. In addition, when a drag operation is performed for the purpose of moving the display object, the final position of the display object should be adjusted after touching the touch target surface before ending the drag operation. In some cases. The finger 610c that has been moved indicates a state in which the user has brought the fingertip closer to the touch target surface in such a case. The finger 610d indicates a state in which the user starts to release the finger from the touch target surface in order to release the drag. The designated positions 611a, 611b, 611c, 611d, and 611e are designated positions detected in the state of the fingers 610a, 610b, 610c, 610d, and 610e, respectively.

ここで物体上を経由した後のドラッグ操作の間、常に物体の最大の高さに基づく閾値600cをタッチ判定に用いるとすると、手指610dの状態において、ユーザはドラッグをリリースしようとしているにも関わらず「タッチ状態」と判定されてしまう。つまり、指示位置611dの高さが、依然としてタッチ判定閾値600cより小さいため、この時点では、ドラッグ操作が終了されたとは認識されない。次に、手指610eは、ユーザがドラッグをリリースするために手指をさらにタッチ対象面から離した状態を示している。この時、指示位置611eの高さが閾値600cより大きくなるので、この時点で、ドラッグ操作の終了が認識される。一方で本実施形態では、ドラッグ操作中にタッチ対象面の高さが低下した後、一定時間経過後にタッチ判定に使用する閾値を基準閾値に再設定するため、ドラッグ操作が終了したことを速やかに認識できるという効果がある。   Here, if the threshold 600c based on the maximum height of the object is always used for touch determination during the drag operation after passing over the object, the user is trying to release the drag in the state of the finger 610d. First, it is determined as “touch state”. That is, since the height of the designated position 611d is still smaller than the touch determination threshold value 600c, it is not recognized that the drag operation is finished at this point. Next, the finger 610e shows a state in which the user further separates the finger from the touch target surface in order to release the drag. At this time, since the height of the designated position 611e becomes larger than the threshold 600c, the end of the drag operation is recognized at this point. On the other hand, in the present embodiment, after the height of the touch target surface is reduced during the drag operation, the threshold used for touch determination is reset to the reference threshold after a certain period of time, so that the drag operation is quickly completed. There is an effect that it can be recognized.

図6(C)は図6(B)と同様、ユーザが物体上で開始したドラッグ操作をテーブル上まで継続してからリリースする様子を示す図である。ここで図7(B)は図6(C)に示された操作例に対応する、ドラッグ操作を行った際に取得できるデータと判定結果の一例を示す。手指610aから610dおよび指示位置611aから611dは、図6(B)と同じものを示す。つまり、手指610aの位置でドラッグを開始する(この時点以降のシーケンスでドラッグ中と判定されるものとする)。そして、手指610bの位置で、指先が物体102上からテーブル101上へと移動することに伴い、タッチ対象面の高さが物体102上からテーブル101上へと低下している。さらに手指610dの位置の直前までドラッグを継続し、手指610dの位置でユーザがドラッグをリリースするために手指をタッチ対象面から離している。図6(C)では、手指610dの直前で、タッチ対象面の高さが低下してから、つまり手指610bの時刻から一定時間が経過するとする。   FIG. 6C is a diagram illustrating a state in which the drag operation started on the object by the user is continued on the table and then released, as in FIG. 6B. Here, FIG. 7B shows an example of data and determination results that can be acquired when a drag operation is performed, corresponding to the operation example shown in FIG. Fingers 610a to 610d and designated positions 611a to 611d are the same as in FIG. That is, dragging is started at the position of the finger 610a (assuming that dragging is being performed in a sequence after this point). As the fingertip moves from the object 102 to the table 101 at the position of the finger 610b, the height of the touch target surface decreases from the object 102 to the table 101. Furthermore, the drag is continued until just before the position of the finger 610d, and the user moves the finger away from the touch target surface in order to release the drag at the position of the finger 610d. In FIG. 6C, it is assumed that a certain time elapses from the time of the finger 610b after the height of the touch target surface is reduced just before the finger 610d.

手指610aの状態では、図6(A)の手指601aから601eにて示したのと同様の処理を経て、タッチ判定結果が「タッチ状態」であり、「ドラッグ中」であり、ドラッグ操作が入力されていると特定される。また、最大閾値HTMAX、タッチ判定に用いる閾値Hはともに600b、タッチ対象面の最大高さHOMAXは物体102の上面の高さとなっている。手指610bの状態では、指示位置611bでのタッチ対象面の高さHOFとしてテーブル上面の高さが、指示位置611bでの基準閾値HTFとして閾値600aが取得される。この時点では、「ドラッグ中」と判断され、かつドラッグ開始直後ではない(ステップS203でNO)。また、指示位置611bでの基準閾値HTF=600aは、最大閾値HTMAXより小さい(ステップS205でNO)。そして、指示位置611bでのタッチ対象面の高さHOFが最大高さHOMAXより小さい(ステップS301でNO、ステップS303でYES)ため、この時点がタッチ対象面の高さが低下した時刻として保持される(ステップS305)。まだタッチ対象面の高さが低下してからの経過時間は一定時間に満たないため、ステップS207以降において、図6(A)における手指601fの状態と同様の処理が行われる。手指610cの状態でも、手指610bの状態と同様のタッチ操作認識処理が行われる。最後に、手指610dの状態では、タッチ対象面の高さが低下してからの経過時間が、一定時間以上となる(ステップS306でYES)。このため、タッチ判定に用いられる閾値Hが、指示位置611dでの基準閾値HTF=600aと再設定される(ステップS307)。その結果、指示位置611dの高さが閾値600aより大きいため「非タッチ状態」(ステップS105)、「非ドラッグ中」(ステップS106)と判定されることでドラッグ操作が終了したことが認識される。 In the state of the finger 610a, the touch determination result is “touch state”, “dragging”, and the drag operation is input through the same processing as shown by the fingers 601a to 601e in FIG. Identified as being. The maximum threshold value H TMAX, the threshold H T together 600b, the maximum height H OMAX touch a surface to use in touch determination has a height of the upper surface of the object 102. In the state of the finger 610b, the height of the upper surface of the table is obtained as the height H OF of the touch target surface at the designated position 611b, and the threshold value 600a is obtained as the reference threshold value H TF at the designated position 611b. At this time, it is determined that “dragging” is in progress and not immediately after the start of dragging (NO in step S203). Further, the reference threshold value H TF = 600a at the designated position 611b is smaller than the maximum threshold value H TMAX (NO in step S205). Since the height H OF of the touch target surface at the designated position 611b is smaller than the maximum height H OMAX (NO in step S301, YES in step S303), this time is the time when the height of the touch target surface has decreased. It is held (step S305). Since the elapsed time after the height of the touch target surface is still lower than the predetermined time, processing similar to the state of the finger 601f in FIG. 6A is performed after step S207. Even in the state of the finger 610c, a touch operation recognition process similar to the state of the finger 610b is performed. Finally, in the state of the finger 610d, the elapsed time after the height of the touch target surface is reduced is equal to or longer than a certain time (YES in step S306). Therefore, the threshold value H T on the touch determination is a reference threshold H TF = 600a at the indicated position 611d reset (step S307). As a result, since the height of the designated position 611d is larger than the threshold value 600a, it is recognized that the drag operation is completed by determining “non-touch state” (step S105) and “not dragging” (step S106). .

以上、本実施形態で述べたように、高さが一様ではないタッチ対象面に対して行われるドラッグ操作において、タッチ対象面の高さが低下してから一定時間後に、タッチ判定閾値をその時点の指示位置に対応するタッチ対象面の高さに基づき再設定する。これによって、ユーザが一定時間ドラッグ操作を継続する間に指先の位置を低下させていた場合でも、ドラッグ操作が終了されたことを速やかに認識でき、操作性を向上することができる。   As described above, in the drag operation performed on the touch target surface whose height is not uniform as described in the present embodiment, the touch determination threshold is set to the touch determination threshold after a certain time after the height of the touch target surface decreases. Reset based on the height of the touch target surface corresponding to the indicated position at the time. As a result, even when the position of the fingertip is lowered while the user continues the drag operation for a certain time, it is possible to quickly recognize that the drag operation has been completed, and to improve the operability.

なお、本実施形態では、タッチ対象面の高さが低下した時刻からの経過時間を条件として、閾値の再設定を行った。これにより認識対象が動かなくなっても、タッチ開始位置から所定の距離以上離れた位置で、タッチ状態が継続されている間は、ドラッグ操作が継続されているとみなすことができる。例えば、表示オブジェクトを移動させるドラッグ操作において、最終的に表示オブジェクトを配置する位置を定めるために認識対象がタッチ状態にまま一時的に停止する場合には、一定時間の経過に応じて閾値が再設定される。なお、ドラッグ操作が継続されるかを判断する条件はこれに限るものではない。例えば、タッチ対象面の高さが低下した位置からのxy平面距離(直線距離)や、ドラッグ操作中の指先の移動距離の累積(ドラッグの軌跡の長さ)などを条件としても良い。さらには、経過時間とこれらの距離を組み合わせたものを条件としても良い。このような距離の要件を用いれば、ユーザが何らかの理由で指先の平行移動を一時的に停止している間に、経過時間が一定値に達し、結果として閾値の再設定が行われるのを防ぐことができる。   In the present embodiment, the threshold value is reset on the condition that the elapsed time from the time when the height of the touch target surface decreases. As a result, even if the recognition target stops moving, it can be considered that the drag operation is continued while the touch state is continued at a position away from the touch start position by a predetermined distance or more. For example, in a drag operation for moving a display object, if the recognition target is temporarily stopped while being touched in order to finally determine the position where the display object is to be placed, the threshold value is reset as the fixed time elapses. Is set. The condition for determining whether the drag operation is continued is not limited to this. For example, the xy plane distance (straight line distance) from the position where the height of the touch target surface is reduced, the cumulative movement distance of the fingertip during the drag operation (the length of the drag trajectory), or the like may be used as conditions. Further, a combination of elapsed time and these distances may be used as a condition. Using such a distance requirement prevents the elapsed time from reaching a certain value while the user temporarily stops the translation of the fingertip for some reason, resulting in resetting the threshold. be able to.

<他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
<Other embodiments>
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.

200 画像取得部
201 面情報取得部
202 位置検出部
203 設定部
205 タッチ判定部
206 特定部
200 Image Acquisition Unit 201 Surface Information Acquisition Unit 202 Position Detection Unit 203 Setting Unit 205 Touch Determination Unit 206 Identification Unit

Claims (14)

認識対象によるタッチ操作を認識する情報処理装置であって、
前記認識対象によって示される指示位置を検出する検出手段と、
基準面の表面と前記基準面に載置された物体の表面とを含む、高さが一様でないタッチ対象面の、当該高さを含む表面形状を示す情報を取得する取得手段と、
前記タッチ対象面における、前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を、前記表面形状を示す情報に基づいて異ならせて設定する設定手段と、
前記検出手段が検出した指示位置前記設定手段が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定手段と、
を備え、
前記判定手段は、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記取得手段が取得した前記タッチ対象面の表面形状を示す情報のうち、前記認識対象が移動してきた経路上で得た高さを示す情報に基づいて、前記判定を行うことを特徴とする情報処理装置。
An information processing apparatus for recognizing a touch operation by a recognition target,
Detecting means for detecting an indicated position indicated by the recognition target;
An acquisition means for acquiring information indicating a surface shape including the height of a touch target surface having a non-uniform height, including a surface of a reference surface and a surface of an object placed on the reference surface ;
A condition for determining whether a position corresponding to the indicated position detected by the detection unit on the touch target surface is touched by the recognition target is set differently based on the information indicating the surface shape. Setting means;
The detection means indication position is detected, when conditions are satisfied where the setting unit has set, a determination unit that is touched the touch object surface by the recognition target,
With
While the recognition target moves while the recognition target touches the touch target surface, the recognition target has moved among the information indicating the surface shape of the touch target surface acquired by the acquisition unit. An information processing apparatus that performs the determination based on information indicating a height obtained on a route.
認識対象によるタッチ操作を認識する情報処理装置であって、
前記認識対象によって示される指示位置を検出する検出手段と、
タッチ対象面の表面形状を示す情報を取得する取得手段と、
前記取得手段が取得した前記タッチ対象面の表面形状を示す情報に基づいて、前記タッチ対象面における、前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を設定する設定手段と、
前記検出手段が検出した指示位置が、前記設定手段が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定手段とを備え、
前記判定手段は、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記認識対象が移動してきた経路上で、前記タッチ対象面の高さが最大であった位置において前記設定手段に設定された条件に基づいて、前記判定を行うことを特徴とする情報処理装置。
An information processing apparatus for recognizing a touch operation by a recognition target,
Detecting means for detecting an indicated position indicated by the recognition target;
Obtaining means for obtaining information indicating the surface shape of the touch target surface;
Based on the information indicating the surface shape of the touch target surface acquired by the acquisition unit, it is determined whether a position corresponding to the indicated position detected by the detection unit on the touch target surface is touched by the recognition target. Setting means for setting conditions for
A determination unit that determines that the touch target surface is touched by the recognition target when the indication position detected by the detection unit satisfies a condition set by the setting unit;
While the recognition target is moving while touching the touch target surface, the determination unit is configured such that the height of the touch target surface is the maximum on the path along which the recognition target has moved. An information processing apparatus that performs the determination based on a condition set in a setting unit.
さらに、前記判定手段による判定結果と、前記検出手段が検出された指示位置の動きに基づいて、前記認識対象によって行われているタッチ操作の種別を特定する特定手段を備え、
前記設定手段は、前記特定手段が特定したタッチ操作の種別が、ドラッグ操作である場合は、前記特定手段が特定したタッチ操作の種別がドラッグ操作ではない場合とは異なる条件を設定することを特徴とする請求項又はに記載の情報処理装置。
And a specifying unit that specifies a type of a touch operation performed by the recognition target based on a determination result by the determining unit and a movement of the designated position detected by the detecting unit.
In the case where the type of the touch operation specified by the specifying unit is a drag operation, the setting unit sets a condition different from that in the case where the type of the touch operation specified by the specifying unit is not a drag operation. The information processing apparatus according to claim 1 or 2 .
前記設定手段は、前記特定手段により、前記認識対象により前記ドラッグ操作が行われていると特定された場合、当該ドラッグ操作のそれまでの経路上の、前記タッチ対象面の表面形状を示す情報に基づいて、当該ドラッグ操作が終了されるまでの間、前記判定手段が、前記タッチ対象面における、前記検出手段が検出した指示位置に対応する位置が前記認識対象によってタッチされているかを判定するための条件を設定することを特徴とする請求項に記載の情報処理装置。 When the specifying unit determines that the drag operation is being performed by the recognition target, the setting unit includes information indicating a surface shape of the touch target surface on the route up to the drag operation. Based on this, until the drag operation is completed, the determination unit determines whether a position corresponding to the indicated position detected by the detection unit on the touch target surface is touched by the recognition target. The information processing apparatus according to claim 3 , wherein the condition is set. 前記設定手段は、前記条件として、前記取得手段が取得した表面形状を示す情報に基づいて、前記タッチ対象面の前記検出手段が検出した指示位置に対応する、基準面と前記認識対象の間の距離の閾値を設定し、
前記判定手段は、前記基準面と前記認識対象の間の距離が、前記設定手段が設定した閾値より小さい場合、前記タッチ対象面の前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされていると判定することを特徴とする請求項3又は4に記載の情報処理装置。
The setting means, as the condition, is based on information indicating the surface shape acquired by the acquisition means, between the reference surface corresponding to the indicated position detected by the detection means of the touch target surface and the recognition target. Set the distance threshold,
When the distance between the reference surface and the recognition target is smaller than the threshold set by the setting unit, the determination unit has a position corresponding to the indicated position detected by the detection unit on the touch target surface. the information processing apparatus according to claim 3 or 4, characterized in that determined to be touched by the subject.
前記設定手段は、前記特定手段により、前記認識対象により前記ドラッグ操作が行われていると特定された場合に、当該ドラッグ操作のそれまでの経路上で、前記設定手段に設定された閾値のうち最大の閾値を取得する最大値取得手段を備え、
当該ドラッグ操作が終了されるまでの間は、前記基準面と前記認識対象の間の距離が、前記最大値取得手段が取得した最大の閾値より小さい場合、前記タッチ対象面の前記検出手段が検出した指示位置に対応する位置が、前記認識対象によってタッチされていると判定することを特徴とする請求項に記載の情報処理装置。
The setting means, when the specifying means specifies that the drag operation is being performed by the recognition target, out of the threshold values set in the setting means on the route until the drag operation It has a maximum value acquisition means for acquiring the maximum threshold,
Until the drag operation is completed, when the distance between the reference surface and the recognition target is smaller than the maximum threshold acquired by the maximum value acquisition unit, the detection unit of the touch target surface detects The information processing apparatus according to claim 5 , wherein a position corresponding to the designated position is determined to be touched by the recognition target.
前記設定手段は、前記特定手段により、前記認識対象により前記ドラッグ操作が行われていると特定された場合、前記タッチ対象面の、前記検出手段が検出する指示位置に対応する位置の高さが低下してから前記認識対象が前記タッチ対象面をタッチした状態が継続されるかに応じて、前記閾値を再設定することを特徴とする請求項に記載の情報処理装置。 When the specifying unit determines that the drag operation is being performed by the recognition target, the setting unit has a height of a position corresponding to the indicated position detected by the detecting unit on the touch target surface. The information processing apparatus according to claim 6 , wherein the threshold value is reset according to whether or not the state where the recognition target touches the touch target surface is continued after the decrease. 前記タッチ対象面の表面形状を示す情報とは、少なくとも前記基準面と交わる方向の座標軸における、前記タッチ対象面の表面の座標情報を含むことを特徴とする請求項乃至のいずれか1項に記載の情報処理装置。 Wherein the information showing the surface shape of the touch object surface, in the direction of the coordinate axes intersecting at least said reference plane, either one of claims 5 to 7, characterized in that it comprises a coordinate information of the surface of the touch object plane The information processing apparatus described in 1. 前記設定手段は、前記タッチ対象面の、前記検出手段が検出した指示位置に対応する位置での前記座標情報に基づいて、前記指示位置における前記閾値を設定することを特徴とする請求項に記載の情報処理装置。 The setting means, said touch object surface, based on the coordinate information at a position corresponding to the indicated position detected by the detection means, to claim 8, characterized in that setting the threshold value at the indicated position The information processing apparatus described. 前記設定手段は、前記タッチ対象面の、前記検出手段が検出した指示位置に対応する位置の周囲の前記座標情報の平均値に基づいて、前記指示位置における前記閾値を設定することを特徴とする請求項に記載の情報処理装置。 The setting means sets the threshold value at the indicated position based on an average value of the coordinate information around the position corresponding to the indicated position detected by the detecting means on the touch target surface. The information processing apparatus according to claim 8 . 認識対象によるタッチ操作を認識する情報処理装置の制御方法であって、
検出手段により、前記認識対象によって示される指示位置を検出する検出工程と、
取得手段により、基準面の表面と前記基準面に載置された物体の表面とを含む、高さが一様でないタッチ対象面の、当該高さを含む表面形状を示す情報を取得する取得工程と、
設定手段により、前記タッチ対象面における、前記検出工程で検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を、前記表面形状を示す情報に基づいて異ならせて設定する設定工程と、
判定手段により、前記検出工程で検出した指示位置前記設定手段が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定工程と、を有し、
前記判定工程では、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記取得手段が取得した前記タッチ対象面の表面形状を示す情報のうち、前記認識対象が移動してきた経路上で得た高さを示す情報に基づいて、前記判定を行うことを特徴とする情報処理装置の制御方法。
A method for controlling an information processing apparatus that recognizes a touch operation by a recognition target,
A detection step of detecting an indication position indicated by the recognition target by a detection means;
An acquisition step of acquiring information indicating a surface shape including the height of a touch target surface having a non-uniform height including the surface of the reference surface and the surface of the object placed on the reference surface by an acquisition unit. When,
A condition for determining whether the position corresponding to the indicated position detected in the detection step on the touch target surface by the setting unit is touched by the recognition target is different based on the information indicating the surface shape. Setting process to set,
The determination means, the detection step detects at the indicated position, when satisfying said setting means has set, the touch object surface anda a determination process being touched by the recognition target,
In the determination step, while the recognition target is moving while touching the touch target surface, the recognition target has moved among the information indicating the surface shape of the touch target surface acquired by the acquisition unit. A control method for an information processing apparatus, characterized in that the determination is performed based on information indicating a height obtained on a route.
認識対象によるタッチ操作を認識する情報処理装置の制御方法であって、A method for controlling an information processing apparatus that recognizes a touch operation by a recognition target,
検出手段により、前記認識対象によって示される指示位置を検出する検出工程と、A detection step of detecting an indication position indicated by the recognition target by a detection means;
取得手段により、タッチ対象面の表面形状を示す情報を取得する取得工程と、An acquisition step of acquiring information indicating the surface shape of the touch target surface by an acquisition unit;
設定手段により、前記取得工程で取得した前記タッチ対象面の表面形状を示す情報に基づいて、前記タッチ対象面における、前記検出工程で検出した指示位置に対応する位置が、前記認識対象によってタッチされているかを判定するための条件を設定する設定工程と、Based on the information indicating the surface shape of the touch target surface acquired in the acquisition step by the setting unit, a position corresponding to the indicated position detected in the detection step on the touch target surface is touched by the recognition target. A setting step for setting conditions for determining whether or not
判定手段により、前記検出工程で検出した指示位置が、前記設定工程が設定した条件を満たす場合に、前記タッチ対象面が前記認識対象によってタッチされていると判定する判定工程とを備え、A determination step of determining that the touch target surface is touched by the recognition target when the indication position detected in the detection step satisfies the condition set by the setting step by the determination unit;
前記判定工程は、前記認識対象が前記タッチ対象面をタッチしたまま移動している間は、前記認識対象が移動してきた経路上で、前記タッチ対象面の高さが最大であった位置において前記設定工程に設定された条件に基づいて、前記判定を行うことを特徴とする情報処理装置の制御方法。In the determination step, while the recognition target moves while touching the touch target surface, the height of the touch target surface is the maximum on the path along which the recognition target has moved. A control method for an information processing apparatus, wherein the determination is performed based on a condition set in a setting step.
コンピュータに読み取らせ実行させることによって、前記コンピュータを請求項1に記載の情報処理装置の各手段として機能させるためのプログラム。   A program for causing a computer to function as each unit of the information processing apparatus according to claim 1 by causing the computer to read and execute the computer. コンピュータに読み取らせ実行させることによって、前記コンピュータを請求項2に記載の情報処理装置の各手段として機能させるためのプログラム。A program for causing a computer to function as each unit of the information processing apparatus according to claim 2 by causing the computer to read and execute the computer.
JP2013222524A 2013-10-25 2013-10-25 Information processing apparatus and control method thereof, computer program, and storage medium Expired - Fee Related JP6245938B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013222524A JP6245938B2 (en) 2013-10-25 2013-10-25 Information processing apparatus and control method thereof, computer program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013222524A JP6245938B2 (en) 2013-10-25 2013-10-25 Information processing apparatus and control method thereof, computer program, and storage medium

Publications (3)

Publication Number Publication Date
JP2015084173A JP2015084173A (en) 2015-04-30
JP2015084173A5 JP2015084173A5 (en) 2016-12-08
JP6245938B2 true JP6245938B2 (en) 2017-12-13

Family

ID=53047743

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013222524A Expired - Fee Related JP6245938B2 (en) 2013-10-25 2013-10-25 Information processing apparatus and control method thereof, computer program, and storage medium

Country Status (1)

Country Link
JP (1) JP6245938B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5850970B2 (en) * 2014-04-09 2016-02-03 株式会社東芝 Information processing apparatus, video projection apparatus, information processing method, and program
JP6540305B2 (en) * 2015-06-18 2019-07-10 カシオ計算機株式会社 Touch input device, projection device, touch input method and program
JP6582954B2 (en) * 2015-12-11 2019-10-02 富士通クライアントコンピューティング株式会社 Document camera device, clipping support method and program
JP6902340B2 (en) * 2016-09-01 2021-07-14 株式会社デンソーテン Input device, program and detection method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5471137B2 (en) * 2009-08-05 2014-04-16 ソニー株式会社 Display device, display method, and program
JP5488306B2 (en) * 2010-07-29 2014-05-14 船井電機株式会社 projector
JP5304848B2 (en) * 2010-10-14 2013-10-02 株式会社ニコン projector
JP2013065066A (en) * 2011-09-15 2013-04-11 Funai Electric Co Ltd Projector

Also Published As

Publication number Publication date
JP2015084173A (en) 2015-04-30

Similar Documents

Publication Publication Date Title
JP6202942B2 (en) Information processing apparatus and control method thereof, computer program, and storage medium
US9529527B2 (en) Information processing apparatus and control method, and recording medium
KR101227610B1 (en) Image recognizing apparatus, operation judging method, and computer-readable recording medium for recording program therefor
JP6393341B2 (en) Projection-type image display device
US20120169671A1 (en) Multi-touch input apparatus and its interface method using data fusion of a single touch sensor pad and an imaging sensor
JP5990011B2 (en) Information processing apparatus and control method thereof
WO2012120958A1 (en) Projection device
US9400562B2 (en) Image projection device, image projection system, and control method
JP6039248B2 (en) Information processing apparatus and control method thereof
US9916043B2 (en) Information processing apparatus for recognizing user operation based on an image
JP6711817B2 (en) Information processing apparatus, control method thereof, program, and storage medium
JP2018517984A (en) Apparatus and method for video zoom by selecting and tracking image regions
JP2012185630A (en) Projection device
JP6245938B2 (en) Information processing apparatus and control method thereof, computer program, and storage medium
JP5817149B2 (en) Projection device
US20190220185A1 (en) Image measurement apparatus and computer readable medium
JP6248462B2 (en) Information processing apparatus and program
JP6255954B2 (en) Motion input device, motion input program, and motion input method
JP2009251702A (en) Information processing unit, information processing method, and information processing program
US20150077331A1 (en) Display control device, display control method, and program
US10379678B2 (en) Information processing device, operation detection method, and storage medium that determine the position of an operation object in a three-dimensional space based on a histogram
JP6000553B2 (en) Information processing apparatus and control method thereof
JP5558899B2 (en) Information processing apparatus, processing method thereof, and program
JP6579866B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP6618301B2 (en) Information processing apparatus, control method therefor, program, and storage medium

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161019

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161019

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170926

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: 20171017

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171114

R151 Written notification of patent or utility model registration

Ref document number: 6245938

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees