JP4627052B2 - 画像に連携した音声出力方法および装置 - Google Patents

画像に連携した音声出力方法および装置 Download PDF

Info

Publication number
JP4627052B2
JP4627052B2 JP2006186797A JP2006186797A JP4627052B2 JP 4627052 B2 JP4627052 B2 JP 4627052B2 JP 2006186797 A JP2006186797 A JP 2006186797A JP 2006186797 A JP2006186797 A JP 2006186797A JP 4627052 B2 JP4627052 B2 JP 4627052B2
Authority
JP
Japan
Prior art keywords
image
player
unit
camera
frame
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.)
Active
Application number
JP2006186797A
Other languages
English (en)
Other versions
JP2008012102A5 (ja
JP2008012102A (ja
Inventor
章男 大場
博之 勢川
章 鈴木
勝 斉藤
智一 掛
真一 本多
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment 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 Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP2006186797A priority Critical patent/JP4627052B2/ja
Priority to PCT/JP2007/000441 priority patent/WO2008004331A1/ja
Priority to US12/294,966 priority patent/US8113953B2/en
Priority to EP07737098A priority patent/EP2055361A1/en
Publication of JP2008012102A publication Critical patent/JP2008012102A/ja
Publication of JP2008012102A5 publication Critical patent/JP2008012102A5/ja
Application granted granted Critical
Publication of JP4627052B2 publication Critical patent/JP4627052B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/54Controlling the output signals based on the game progress involving acoustic signals, e.g. for simulating revolutions per minute [RPM] dependent engine sounds in a driving game or reverberation against a virtual wall
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/44Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment involving timing of operations, e.g. performing an action within a time slot
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6063Methods for processing data by generating or executing the game program for sound processing
    • A63F2300/6081Methods for processing data by generating or executing the game program for sound processing generating an output signal, e.g. under timing constraints, for spatialization
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/63Methods for processing data by generating or executing the game program for controlling the execution of the game in time
    • A63F2300/638Methods for processing data by generating or executing the game program for controlling the execution of the game in time according to the timing of operation or a time limit
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6623Methods for processing data by generating or executing the game program for rendering three dimensional images for animating a group of characters

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Description

この発明は、プレイヤーの操作するオブジェクトの動きに合わせて音声を出力する技術に関する。
従来から、プレイヤーの動作をビデオカメラなどの撮像装置を用いて撮影し、プレイヤーの動画像を画面に映し出して、コマンドの入力やゲームのプレイを可能にしたものが知られている(例えば、特許文献1を参照)。このような画像処理装置では、画面上に配置されるメニュー画面やオブジェクトにプレイヤーの動画像が画面内で接触することで、コマンドを入力することができる。つまり、プレイヤーの動画像そのものが入力インタフェースとして機能している。
特開2002−196855号公報
上述のようなプレイヤーの動画像を入力インタフェースとして利用するゲームを初めとしたアプリケーションでは、アプリケーションを操作するプレイヤーの行動を、画面上の演出や音声などによって自然なかたちで導き出すことが重要である。不自然な動きをプレイヤーに要求すると、アプリケーションに対するプレイヤーの興味が失われる恐れがある。
本発明はこうした課題に鑑みてなされたものであり、その目的は、プレイヤーの動作を入力インタフェースとして利用する装置において、プレイヤーにとって使いやすいインタフェースを実現するための技術を提供することにある。
本発明のある態様は、カメラで撮影された画像をもとにプレイヤーの操作するオブジェクトが接触面に到達するまでに要する移動時間を計算し、移動時間を参照して、オブジェクトが接触面に接触するのと実質的に同時にプレイヤーが音声を聴取するように、音声の出力タイミングを調節することを特徴とする画像に連携した音声出力方法である。
この態様によると、オブジェクトが仮想的なまたは実在の接触面に到達する前に、オブジェクトが接触面に到達する時間を算出し、音声の遅延を考慮して音声を先出しする。これによって、アクションが認識されたことを視覚と聴覚の両方を通じてプレイヤーに知らしめることができる。また、視覚を通じたプレイヤーの認識とプレイヤーが音声を聞くタイミングとのずれが少なくなり、プレイヤーに与える違和感を軽減できる。
本発明の別の態様は、画像に連携した音声出力装置である。この装置は、カメラによって撮影されたプレイヤーの動作の画像を使用して、プレイヤーの操作するオブジェクトが接触面に向かう動作の速度ベクトルを計算する速度ベクトル算出部と、速度ベクトルと、オブジェクトと接触面との距離とを用いて、オブジェクトが接触面に到達するまでに要する移動時間を計算する移動時間算出部と、オブジェクトが接触面に接触するとき所定の音声をスピーカから出力させる音声制御部と、スピーカから発せられた音声がプレイヤーに到達するまでの遅延時間を取得する遅延時間取得部と、を備える。音声制御部は、移動時間から遅延時間を減じた時間をもとに、オブジェクトが接触面に接触するのと実質的に同時にプレイヤーに音声を聴取させる。
なお、本発明の構成要素や表現を方法、システム、コンピュータプログラム、コンピュータプログラムを格納した記録媒体などの間で相互に置換したものもまた、本発明の態様として有効である。
本発明によれば、視覚および聴覚の両方を通してアクションが認識されたことをプレイヤーに知らしめることができる。
実施の形態1.
図1は、本発明の一実施形態である三次元位置特定装置10の全体構成を示す。本実施形態の三次元位置特定装置は、プレイヤーの操作するオブジェクトを単一のカメラで撮影し、画像処理によりオブジェクトの三次元位置を特定し、特定された三次元位置に応じた画面をディスプレイに表示する。三次元位置特定装置10を利用するアプリケーションの典型例は、画面に表示されたキャラクタ等をプレイヤーの動作で操作するアクションゲームであるが、他の形態のゲームや、簡単なビジネスアプリケーション、ディジタル写真のアルバム表示、楽曲データ再生のアプリケーションなどにも適用することができる。
三次元位置特定装置10は、ディスプレイ40と、ディスプレイの上側に設置されるカメラ20と、画像処理装置30と、反射体50と、から構成される。
ディスプレイ40は、好ましくはプレイヤー72の前方に配置される。プレイヤー72は、カメラ20により撮影された自分の像を見ながらオブジェクトの操作をするかたちになる。
カメラ20はプレイヤー72により操作されるオブジェクト70を撮影し、所定のフレームレートでフレームを画像処理装置30に出力する。画像検出の応答性を早めるために、フレームレートはなるべく高いことが好ましい。カメラ20は、ディスプレイ40の上側に設置される。カメラ20の撮影範囲26は、少なくともプレイヤー72の操作するオブジェクト70を捉えるように設定される。これによって、プレイヤー72はディスプレイ40側に正面を向けた状態でオブジェクト70を操作することができる。しかし、三次元位置特定装置10により実施されるアプリケーションの特性に応じて、カメラ20をディスプレイ40の下方や側方に設置したり、またはプレイヤー72がディスプレイ40を見る向きとは異なる場所にカメラ20を設置してもよい。
カメラ20から出力されたフレームは、画像処理装置30を経由してディスプレイ40に映し出される。この場合、撮影されたフレームは画像処理装置30によって鏡面処理を施され、ディスプレイ40にはプレイヤー72の鏡面画像が映し出されることが好ましい。鏡面画像を映し出すことで、プレイヤーが例えば手を挙げたときに画面内の像は鏡に映したように同じ側の手を挙げるため、プレイヤーは自らの動作を認識しやすくなる。しかしながら、画像処理装置30によって鏡面処理を施さず、撮影したままの画面をディスプレイ40に映し出してもよい。さらに、三次元位置特定装置10により実施されるアプリケーションの特性に応じて、画像処理装置30によって上下を反転させた画面をディスプレイ40に映し出してもよい。
画像処理装置30は、外部記憶媒体に格納されたアプリケーションソフトウェアをロードして実行する機能を有する。画像処理装置30は、カメラ20から出力されたフレームに対して上述の鏡面処理を施すほか、フレーム内でオブジェクトの像を検出して所定の画像をオブジェクトに重ねて表示したり、プレイヤーのアクションに応じた指示をアプリケーションに与えるなどの処理を行う。画像処理装置30により所定の処理を施された鏡面画像は、ディスプレイ40に出力される。画像処理装置30は、典型的にはゲームコンソールなどの専用機であるが、画像の入出力機能を備えた汎用のパーソナルコンピュータやサーバなどであってもよい。画像処理装置30のさらに詳細な機能および構成については後述する。
ディスプレイ40は、スピーカ42を備えていてもよい。スピーカ42は、ディスプレイ40に表示されるオブジェクトやその他の画像に合わせて画像処理装置30から出力される音声や伴奏などを再生する。スピーカ42は、ディスプレイ40と一体に構成され、ディスプレイ40の近傍に配置されていることが好ましい。しかしながら、スピーカ42とディスプレイ40は一体でなく、互いに離れた位置に配置されてもよい。
反射体50は、プレイヤー72とディスプレイ40およびカメラ20との間に設置され、オブジェクト70の反射像をカメラ20に撮影させる役割を有する。本明細書において「オブジェクト」とは、カメラ20の撮影範囲26内でプレイヤー72により操作されるものの総称であり、プレイヤーの頭、腕、手、足、口などの身体の一部と、プレイヤーの身体の一部(例えば手、足、口)により操作される棒、シート、箱などの物体、およびコントローラなどの装置が含まれる。オブジェクトがプレイヤーの意思により動かされることを、オブジェクトが身体の一部である場合を含め、本明細書では「プレイヤーにより操作されるオブジェクト」のように表現する。図1では、一例として、プレイヤーの指がオブジェクト70のとして示されている。
オブジェクト70は、その直接像がカメラ20により撮影されるのと同時に、反射体50による反射像もカメラ20により撮影される。言い換えると、カメラ20は、ひとつのフレームの中にオブジェクト70の直接像と反射像の両方を含むことになる。このように、直接像と反射像という二つの方向から見た像としてオブジェクト70を捉えることで、後述するように、単一のカメラからの画像のみでオブジェクト70の三次元位置を特定することができる。
なお、説明を簡単にするために、以下の説明ではプレイヤー72により操作されるオブジェクト70はひとつとするが、二つ以上のオブジェクトが存在しても同様の処理ができることはいうまでもない。
反射体50は二つの反射面52、54を備えており、それぞれがオブジェクト70を反射させ、それら反射像がカメラ20によって撮影される。したがって、反射面52、54には、オブジェクト70の反射像がカメラ20のレンズで結ばれるように所定の角度が付けられている。また、反射体50の設置場所は、カメラ20から所定の距離だけ離間した位置に限られる。
図1に示すように、反射面52、54の上方には、それぞれがオブジェクト70の反射像をカメラ20に向けて投影できる領域である進入領域62、64が広がる。進入領域62、64の広がりは、反射面52、54の傾斜の度合いによって決まり、オブジェクト70が進入すると想定される範囲になる。図1の例では、それぞれの進入領域62、64は互いに交差しないように設定されている。したがって、オブジェクト70が進入領域62内に存在するときは、反射面52により反射された反射像がカメラ20により撮影され、オブジェクト70が進入領域64内に存在するときは、反射面54により反射された反射像がカメラ20により撮影される。但し、オブジェクト70が指や棒のように反射体50の奥行方向にある程度の長さを有する場合、オブジェクト70は進入領域62と64の両方に同時に存在する。
一般に、フレーム間の差分に基づいてオブジェクトの動作を検出しようとした場合、カメラの光軸に沿った方向(図1のz方向)に略平行な動作は、フレーム内でのオブジェクトの差分がわずかになるため検出するのは困難である。そこで、本実施形態では、オブジェクトの直接像とは異なる方向からの像を、反射体50による反射を利用することで取得し、この反射像を利用してz方向のオブジェクトの動作を確実に検出できるようにした。以下では、カメラの光軸に沿った方向のことを単に「奥行方向」と呼ぶことにする。
図2は、カメラ20と画像処理装置30のハードウェア構成を簡略化して説明した図である。カメラ20は、撮像素子としての画像センサ22と、画像処理部24を備える。画像センサ22は、一般にCCDセンサやCMOSセンサであり、図示しないレンズにより結ばれた像を受光素子で捉えることで画像を記録する。撮影された画像は、RAM等の図示しないメモリに一時的に記憶される。カメラ20の構成については周知であるため、これ以上詳細な記載は省略する。
画像処理部24はASIC等の回路からなり、画像センサ22から出力された画像データに対して、A/D変換、デモザイク、ホワイトバランス処理、ノイズ除去、コントラスト強調、色差強調、ガンマ処理などのうち、必要なものを実施する。画像処理部24により処理された画像データは、図示しない通信インタフェースを介して画像処理装置30に転送される。以下の説明では、簡単のために、画像処理部24から画像処理装置30に渡される画像データは画像センサ22からの出力信号をそのままディジタル化したRAWデータであるものとするが、画像データは他の形式、例えばJPEGなどの圧縮されたデータであってもよい。後者の場合、画像処理装置30には、処理部32の前段に圧縮データを復号化する画像復号部が配置される。
画像処理装置30は、処理部32と、処理部32から渡された画像データをディスプレイ40に出力する画像出力部34と、処理部32から渡された音声データをスピーカ42に出力する音声出力部36と、を含む。画像処理装置30は、このほかにも、CD−ROM、DVD−ROM、フラッシュメモリを初めとする任意の記録媒体に格納されたアプリケーションソフトウェアを読み出すロード部や、ソフトウェアにしたがって所定のアプリケーションを実行するアプリケーション実行部などを備える。これらの機能は、ゲームコンソールなどの専用機やパーソナルコンピュータなどには当然備えられているものであるから、これ以上詳細な説明は省略する。
図3は、反射体50の構造を示す平面図である。反射体50は、全体として薄板状であり、上述したように奥行方向に離間して配置された第1反射面52と第2反射面54とを有している。反射面52、54は、一例では鏡であり、鏡面加工を施した金属、プラスチック、金属を蒸着させたガラスなどでもよい。第1反射面52と第2反射面54とは平行に配置され、また、その長軸がカメラ20の光軸に対して略垂直となるように配置される。第1反射面52と第2反射面54は、図1に示すように、反射面の上方のオブジェクトを反射して、反射像をカメラ20のレンズに向けて投影する角度に設定される。
反射体50の長軸方向の両端には、反射体50の位置を画像処理装置30に認識させるためのマーカ56がそれぞれ配置される。このマーカ56は、色付けされた部分であってもよいし、チェックなどの所定の模様が施されていてもよく、あるいは二次元コードなどでもよい。両端にLEDなどの光源を埋め込んでおいてもよい。要するに、カメラ20から出力されるフレーム内で、反射体50の位置を特定するために必要な情報を付与できるものであれば、その形態は問わない。
反射体50が奥行方向に所定の幅を有し、また奥行方向に複数の反射面を備えることで、奥行方向に複数の進入領域62、64を設定することができる。各反射面52、54は、オブジェクトが進入すると想定される相異なる進入領域の反射像をカメラ20に向けて投影し、オブジェクトの反射像をカメラ20に撮影させる。こうすることで、後述するように、奥行方向のオブジェクトの移動を検出できる。
図4は、処理部32の詳細な構成を示す図である。これらの構成は、CPU、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックとして描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
画像取得部102は、カメラ20から出力されたフレームを一枚ずつ取得し、画像反転部104および画像連携音声制御部150に送る。
画像反転部104は、画像取得部102から受け取ったフレームに対して鏡面処理(すなわち、画像の左右反転処理)を施し、鏡面画像を生成する。鏡面画像は三次元定位部110およびオンスクリーン表示部144に送られる。
三次元定位部110は、画像反転部104から受け取ったカメラ20により撮影されたフレームを利用して、オブジェクトの三次元位置を特定する。三次元位置は、フレーム内でのオブジェクトの位置すなわち画面内の位置に相当する二次元位置、および図1の奥行方向すなわちz方向の位置のことをいう。本実施形態では、オブジェクトの二次元位置を特定することで画面内のオブジェクトを認識し、オブジェクトの奥行位置を特定することでプレイヤーの特定のアクションを検出する。
三次元定位部110は、反射面領域特定部112、奥行定位部122、フレーム内定位部114、参照画像記憶部120を含む。
反射面領域特定部112は、カメラ20により撮影されたフレームから、反射体50の第1反射面52および第2反射面54に対応する領域である反射面領域を特定する。反射面領域特定部112は、フレーム内から二カ所のマーカ56を検出し、それらの間に挟まれた領域を反射面領域と特定する。
奥行定位部122は、反射面領域特定部112により特定された反射面領域から反射像を検出することで、オブジェクトの奥行方向の位置を特定する。具体的には、奥行定位部122は、複数のフレーム間で反射面領域同士を比較してその差分を検出する。あるフレームで反射面領域に反射像がなく、後続するフレームで反射面領域に反射像が映っていれば、オブジェクトがその反射面に対応する進入領域内に位置していると判定できる。
この判定を確実に実行するためには、第1反射面52および第2反射面54に映ったオブジェクトの反射像とそれ以外の画像とを明確に識別できる必要がある。したがって、一実施例では、三次元位置の特定処理を開始する前に、奥行定位部122が反射面領域のデフォルト画像を取得しておく。このデフォルト画像と任意のフレームの反射面領域との間に差分が検出されたときに、オブジェクトが進入領域内に位置すると判定するようにしてもよい。
奥行定位部122は、第1反射面52、第2反射面54に対応する反射面領域について同様の処理をすることで、第1進入領域62、第2進入領域64のそれぞれにオブジェクトが進入したか否かを判定する。この判定の結果は、入力制御部130に送られる。
フレーム内定位部114は、オブジェクトのフレーム内位置を特定する。フレーム内定位部114は、オブジェクト検出部116を含む。オブジェクト検出部116は、画像反転部104から受け取ったフレームに対して、オブジェクトの参照画像(テンプレート)を用いた周知のパターンマッチングを実行して、オブジェクトのフレーム内位置を特定する。マッチングを実行する対象は、画像反転部104から受け取ったフレームそのものであってもよいし、反射面領域特定部112において特定された反射面領域をフレームから除いたものであってもよい。
参照画像記憶部120は、オブジェクトを特定するための参照画像を格納している。フレーム内位置を特定すべきオブジェクトについて予め準備しておいた参照画像を格納してもよいが、後述するように、特定すべきオブジェクトをカメラ20により撮影し、フレームからオブジェクトが存在するであろう領域を切り出して、それを参照画像として参照画像記憶部120に格納するようにしてもよい。前者の場合、例えばオブジェクトが手だとすると、数十人ないし数千人の手の画像の平均を取って作成された基準画像を格納しておいてもよいし、プレイヤーの年齢、性別、体格などに応じて分類された複数の参照画像を格納しておいてもよい。参照画像を用いたマッチング技術は、任意のものを使用できる。これらは当業者には周知であるからこれ以上詳細な説明を省略する。
フレーム内定位部114で特定されたオブジェクトのフレーム内位置の情報は、入力制御部130に与えられる。
入力制御部130は、ゲームを初めとするアプリケーションを実行する図示しないアプリケーション実行部に対して、カメラ20により撮影されたフレームに対する画像処理によって得られた情報に基づく指示を与える。入力制御部130は、アクション特定部132、表示制御部134、画像記憶部136を含む。
アクション特定部132は、奥行定位部122による奥行位置の判定をもとに、第1進入領域62と第2進入領域64の間の奥行方向へのオブジェクト70の移動を検出して、プレイヤーのアクションを特定する。アクション特定部132は、奥行方向におけるオブジェクト70のカメラ20へ向かう移動と、カメラ20から離れる移動とを異なるプレイヤーのアクションとして特定してもよい。アクション特定部132は、特定したアクションを図示しないアプリケーション実行部と表示制御部134とに与える。アプリケーション実行部は、与えられたアクションを入力として受け取り、所定の機能を付与する。
表示制御部134は、カメラ20により撮影されたオブジェクトの直接像に重ね合わせて、所定の目的を達成するために表示すべき画像をディスプレイに表示させる。表示制御部134は、オブジェクトが第1反射面52に対応する第1進入領域62に位置するときと、第2反射面54に対応する第2進入領域64に位置するときで、異なる表示態様の画像を表示してもよい。表示制御部134は、オブジェクトの位置に応じた画像を画像記憶部136から検索して、オンスクリーン表示部144に出力する。
画像記憶部136は、オブジェクトの直接像に重ねて表示される上述の画像を記憶する。この画像の例には、ゲームに用いるキャラクタ、カーソルなどのポインタ、楽器や武器などの道具、星や太陽などのマーク、手や足などの身体の一部の画像、またはキーボードや電卓などの入力デバイスの画像がある。これらの画像は、ユーザからの入力を受け付けるためにOSが有している入力用画像でもよいし、実行中のアプリケーションソフトウェアから読み出されたアプリケーション画像であってもよい。表示制御部134によってオブジェクトのフレーム内位置に応じた異なる態様の画像を表示させるために、画像記憶部136は、複数の態様の画像を保持していてもよいし、ある画像を変化させるために必要となるデータを保持していてもよい。
オンスクリーン表示部144は、画像反転部104から得た鏡面画像に、表示制御部134から出力された画像をオンスクリーン表示させ、画像出力部34に送る。画像出力部34によって、プレイヤーの鏡面画像に重畳された画面がディスプレイ40に表示される。
画像連携音声制御部150は、三次元定位部110により検出されたオブジェクトの位置や、入力制御部130により検出されたプレイヤーのアクションに連携した音声を出力するように、音声出力部36を制御する。画像連携音声制御部150の具体的な構成は、実施の形態3および4において詳細に説明する。
配置指示部142は、カメラ20により撮影されたプレイヤーの画像とともに、反射体50を設置すべき位置をプレイヤーに指示する表示をディスプレイ40に映し出す。上述したように、反射体50は、オブジェクト70の反射像をカメラ20に撮影させなくてはならないので、反射体50を配置すべき位置はある一定の範囲に制限される。そこで、プレイヤーに反射体50を正しい位置に設置させるために、ディスプレイ40に例えば枠線を表示して、カメラ20により撮影された反射体50が枠線の内側に収まるように、反射体50の位置を調節してもらう。
配置確認部140は、カメラ20により撮影されたフレームを参照して、反射体50が適切な位置に設置されたか否かを確認する。具体的には、反射面領域特定部112により反射体50の両端にあるマーカ56のフレーム内位置が検出され、配置確認部140は、マーカ56の位置が配置指示部142の表示した枠線の内側にあるか否かを判定する。マーカが枠線の内側にあれば、反射体が適切に配置された旨の表示をディスプレイ40に表示させるとともに、配置指示部142に対して枠線の表示をやめるように指示する。マーカが枠線の内側に入らない限り、三次元定位部110による定位処理を開始しないように構成してもよい。
次に、図5ないし図8を参照して、本実施形態による三次元位置特定装置を利用したアプリケーションの一例を説明する。このアプリケーションは電卓であり、画面上に表示された電卓のキーの画像をプレイヤーがプッシュすることで、数字を入力できるものである。
図5(a)は、プレイヤー72の操作するオブジェクト70、すなわちプレイヤーの指が、反射体50の第1反射面52の上方に広がる第1進入領域62よりも手前側に位置する状態を示す。これは、画像処理装置30で実行されるアプリケーションが、プレイヤーの何らかのアクションを待機している状態である。図5(b)は、このときディスプレイ40に表示され、プレイヤーにより認識される画面44を示す。図示するように、プレイヤー72、オブジェクト70および反射体50の直接像が画面44に表示される。反射面領域特定部112は、フレームからマーカ56を検出することで、反射面領域50’を特定しておく。
カメラ20および画像処理装置30がスイッチオンされ待機している状態のとき、反射面領域50’のデフォルト画像を記憶しておいてもよい。待機状態では、第1進入領域62および第2進入領域64の上方には背景以外何も存在しない。そこで、デフォルト画像を記憶しておくと、第1進入領域62および第2進入領域64にオブジェクトが進入したときの差分を容易に取ることができ、したがって反射面領域内でのオブジェクトの反射像の検出処理がロバストになる。
従来のフレーム間の動き差分によるオブジェクトの検出方法では、オブジェクトが画面内で静止してしまうと差分がなくなり、何も認識できなくなってしまう。これに対し、本実施形態のように予めデフォルト画像を記憶しておくようにすると、オブジェクトが進入領域に進入した状態のままで静止した場合であっても、静止中も継続してデフォルト画像との差分を得ることができ、したがってオブジェクトの奥行位置を認識し続けることができる。
図6(a)は、プレイヤー72の操作するオブジェクト70が第1進入領域62に進入した状態を示す。図6(b)は、このときディスプレイ40に表示され、プレイヤーにより認識される画面44を示す。オブジェクト70が第1進入領域62に進入したことにより、画面44の第1反射面52に対応する領域に、オブジェクト70の反射像70aが映し出されている。奥行定位部122は、フレーム間で反射面領域の差分を取ることでこの反射像70aを検出する。
アクション特定部132は、オブジェクト70が進入領域62に進入したことを知ると、表示制御部134に指示して、電卓アプリケーションを実行するためのアプリケーション画像80をディスプレイ40に表示させる。アプリケーション画像80には、数字または記号を入力するための複数のキー領域が含まれる。アプリケーション画像80は、重畳されるプレイヤーの動作の視認が妨げられないように、線画や半透明であることが好ましいが、不透明の画像であってもよい。また、アクション特定部132は、図示しないアプリケーション実行部に対して、電卓アプリケーションを起動するように指示する。この後、フレーム内定位部114は、マッチングによりオブジェクト70のフレーム内位置を特定することで、オブジェクト70をトラッキングし続ける。図6(b)では、オブジェクト70は、アプリケーション画像80のうち「5」に相当するキーの位置にある。
図7(a)は、第1進入領域62内、すなわち奥行方向に垂直な面内で、プレイヤー72がオブジェクト70を移動させた状態を示す。図7(b)は、このときディスプレイ40に表示され、プレイヤーにより認識される画面44を示す。図7(b)に示すように、プレイヤー72はオブジェクト70をアプリケーション画像80の「5」の位置から「1」の位置に移動させている。これに伴い、オブジェクトの反射像70aの反射面領域内での位置も変化している。しかしながら、オブジェクトが第1進入領域62にあることには変わりないので、アクション特定部132による指示は発生せず、したがってアプリケーション画像80の態様も変化しない。フレーム内定位部114は、アプリケーション画像80のいずれのキーにオブジェクト70があるかをトラッキングし続ける。
図8(a)は、プレイヤー72の操作するオブジェクト70が、第1進入領域62を越えて第2進入領域64に進入した状態を示す。図8(b)は、このときディスプレイ40に表示され、プレイヤーにより認識される画面44を示す。図8(b)に示すように、オブジェクト70が第2進入領域64にまで進入したことで、反射面領域内の第1反射面52に相当する部分には、第1反射面52による反射像70bが、第2反射面54に相当する部分には、第2反射面54による反射像70aが、それぞれ表示されている。奥行定位部122は、フレーム間で反射面領域の差分を取ることで、この反射像70a、70bを検出する。
アクション特定部132は、奥行定位部122からの情報に基づいて、オブジェクト70が第1進入領域62を越えて第2進入領域64にまで移動したことを認識し、オブジェクト70が奥行方向のカメラに向かう側に移動するアクションがプレイヤー72により実行されたと判定する。これにしたがい、アクション特定部132は、アプリケーション実行部に対して、現在オブジェクト70の存在するフレーム内位置に対応したアプリケーション画像80のキーが入力、すなわちプッシュされたことを伝える。これとともに、アクション特定部132は、表示制御部134に対して、現在オブジェクト70の存在するフレーム内位置に対応したアプリケーション画像80のキーの表示態様を変化させるように指令する。図8(b)の例では、オブジェクト70のフレーム内位置に対応するキー「1」の色が変化している(図中の80aを参照)。表示態様の変化は、色の変化のほか、キーの点滅や点灯、キーの押し込まれた態様などであってもよい。このようにして、プレイヤーはオブジェクトを操作することで電卓アプリケーションに数字を入力することができる。同様に、アプリケーション画像としてキーボードを表示し、ワードプロセッサの入力デバイスとして使用してもよい。
この後、プレイヤー72がオブジェクト70を第1進入領域62の位置にまで引き戻すと、アクション特定部132はこのアクションを検出し、アプリケーション画像80の「1」に対応するキーの選択を解除したものと判定する。アクション特定部132は、表示制御部134に対して、「1」に対応するキーの表示態様を元の状態に戻すように指令する。
プレイヤー72がオブジェクト70を第1進入領域62よりさらに手前、すなわち図5(a)の状態に戻すと、アクション特定部132はこのアクションを検出し、プレイヤーが電卓アプリケーションの操作を停止したものと判定する。アクション特定部132は、アプリケーション実行部に対して電卓アプリケーションを停止するように伝えるとともに、表示制御部134に対してアプリケーション画像80を非表示にするよう指令する。こうして、再び図5(b)に示すような画面に復帰する。
図9は、本実施形態による三次元位置特定装置10において、図5ないし図8で説明したアプリケーションを実行するフローチャートである。
反射体50を適正な位置に設置したのち、カメラ20によるオブジェクト70と反射体50の撮影がなされ、画像取得部102がオブジェクト70の直接像と反射像とを含むフレームを取得する(S10)。反射面領域特定部112は、画像反転部104から与えられたフレーム内でマーカ56を検出することで、反射面領域を特定する(S12)。奥行定位部122は、反射面領域内でフレーム間の差分を検出することで、オブジェクトの奥行方向の位置を特定する(S14)。アクション特定部132は、奥行定位部122からの情報にしたがって、オブジェクト70が第1進入領域62内に進入したか否かを判定する(S16)。オブジェクト70が第1進入領域62に進入しない限り(S16のN)、アプリケーションは実行されない。
オブジェクト70が第1進入領域62に進入すると(S16のY)、アクション特定部132はアプリケーション実行部に対してアプリケーションを開始するように指示する。また、フレーム内定位部114は、マッチングによりオブジェクトのフレーム内位置を特定し、表示制御部134は、オブジェクトのフレーム内位置に所定のアプリケーション画像を重ね合わせて表示する(S18)。フレーム内定位部114は、オブジェクト70が第1進入領域62の内部にある限り、オブジェクトのトラッキングを続ける(S20)。また、奥行定位部122も、第1反射面52および第2反射面54に対応する反射面領域でのフレーム間の差分を検出し、オブジェクトの奥行方向の位置を特定する(S22)。
アクション特定部132は、奥行定位部122からの情報にしたがって、オブジェクト70が第2進入領域64内に進入したか否かを判定する(S24)。オブジェクト70が第2進入領域64に進入しない限り(S24のN)、S18〜S22の処理が繰り返される。オブジェクト70が第2進入領域64に進入すると(S24のY)、アクション特定部132はアプリケーション画像80のキーがプッシュされたと判断し、その情報をアプリケーション実行部および表示制御部134に伝える。これに応じて、オブジェクト70のフレーム内位置に応じた処理がアプリケーションにより実行され、またアプリケーション画像80の表示態様が変化する(S26)。
以上説明したように、本実施形態では、予め定められた進入領域へのオブジェクトの進入を反射体による反射像を利用して検出することで、プレイヤーによるオブジェクトの押し込みや引き出しといった奥行方向のアクションを検出する。従来のようなフレーム間差分に基づいたオブジェクトの検出では、奥行方向すなわちカメラの光軸方向に沿ったオブジェクトの移動の検出は非常に困難であったが、本実施形態では、カメラの光軸と交わる方向からの反射像を利用するので、奥行方向のオブジェクトの移動を正確に検出することができる。
従来のように、オブジェクトの存在するフレーム内位置にキャラクタ等を表示させたり音声を出力するなどの何らかの機能を付与すると、プレイヤーがオブジェクトを動かしている間は常にキャラクタの表示や音声の出力が継続されてしまう。他の入力デバイスを併用しない限り、プレイヤーの意志にしたがってそれらの表示や音声をオフすることは困難であった。これに対し、本実施形態では、オブジェクト70を第1進入領域62と第2進入領域64との間で移動させることによって、特定のアプリケーションの機能のオン、オフや、画像の表示、非表示などの機能の切替を、オブジェクトの操作だけで容易に実現することができる。
さらに、図5ないし図8を参照して説明したように、本実施形態ではプレイヤーのアクションに複数の意味を持たせることができる。つまり、オブジェクト70が第1進入領域62にある間、プレイヤー72によるオブジェクト70の操作は、アプリケーション画像80における「選択(セレクト)」操作に相当する。したがって、オブジェクトを移動させることで、アプリケーション画像80内でセレクトされるキーが移動する。そして、所望のキーをセレクトした状態で、プレイヤー72がオブジェクト70をさらに押し込む操作をすると、オブジェクト70が第2進入領域64に進入し、これにより「決定」操作を与えることができる。このように、本実施形態では、オブジェクトのストロークを検出できる点に特徴のひとつがある。
このストロークを活用することで、様々なアプリケーションが考えられる。例えば、手をカメラに向けて押し込む動きをキャッチ、手をカメラから引き出す動きをリリースに対応させると、画面上に出現するキャラクタを手でキャッチしたり、リリースしたりするゲームを実現することができる。
また、手をカメラに向けて押し込む動きを特定の機能のオンに、手をカメラから引き出す動きを特定の機能のオフに対応させてもよい。これを利用して、例えばペイントソフトにおいて、手を押し込むと画面上に表示されるカーソルの形状が変わり、その状態で手を動かすと画面上に線を書くことが可能になり、また手を引き出すと、カーソルの形状が元に戻り、手を動かしても画面に線が書けなくなる、といった応用も可能である。従来の同様のアプリケーションでは、一旦オブジェクトが認識されると、手を動かすたびに線が書かれるような事態になってしまう。これに対し、本実施形態によればプレイヤーは簡単なアクションを通して機能のオンオフを容易に使い分けることができる。
実施の形態1では、反射体50が二つの反射面52、54を備えることを述べたが、反射面の数はひとつでも、または三つ以上でもよい。反射面がひとつの場合、プレイヤーによるオブジェクトの押し込みや引き出しなどのアクションは特定できないが、少なくともその反射面に対応する進入領域内にオブジェクトが位置するか否かを特定することができる。反射面が三つ以上の場合でも、それぞれに対応して進入領域が設定され、奥行定位部122によって各進入領域にオブジェクトが進入したか否かを判定する点は上述したのと同様である。反射面の数を多くすることで、より複雑なプレイヤーのアクションを識別することが可能になり、したがってより多様な指示をアプリケーションに与えることが可能になる。
実施の形態2.
実施の形態1では、オブジェクトのフレーム内位置に重ねて電卓のアプリケーション画像を表示することを述べたが、実施の形態2では、プレイヤーにより操作可能なキャラクタを表示する例を説明する。
図10(a)は、実施の形態2における三次元位置特定装置12の全体構成を示す。カメラ20、画像処理装置30、ディスプレイ40および反射体50の配置については、実施の形態1と同様である。図10(a)では、プレイヤーの操作するオブジェクト76はプレイヤーの手全体である。オブジェクト76が第1進入領域62に進入すると、上述の通り各機能ブロックによる処理がなされ、アクション特定部132がプレイヤーのアクションを特定する。
実施の形態2では、オブジェクト検出部116は、オブジェクト76とマッチングする参照画像として、手の平を開いた状態を表す参照画像と、手の平を閉じた状態を表す参照画像の二つを使用し、いずれかの参照画像とのマッチングを実行する。こうすることで、オブジェクト検出部116は、オブジェクトのフレーム内位置のみならず手の開閉を検出することができる。アクション特定部132は、表示制御部134に対して、手の平が開いた状態のときは、口を開いたキャラクタ画像をオブジェクトのフレーム内位置に表示し、手が閉じた状態のときは、口を閉じたキャラクタ画像をオブジェクトのフレーム内位置に表示するように指令する。
図10(b)は、図10(a)に状態に対応したキャラクタ画像82が表示された状態の画面44を示す。図10(a)においてオブジェクト76である手は閉じられているので、図10(b)では口を閉じたキャラクタ画像82がオブジェクト76に重ねて表示される。
図11(a)に示すように、プレイヤー72が第1進入領域62内でオブジェクト76である手を開くと、オブジェクト検出部116により手を開いた状態が検出される。これに応じて、図11(b)に示すように、口を閉じたキャラクタ画像82がオブジェクト76に重ねて表示される。
アクション特定部132は、音声出力部36に対して、キャラクタの口の変化に合わせて音声を出力させてもよい。例えば、口を閉じた状態のときは音声を発せず、口を開いたときに音声を発するようにしてもよい。これによって、プレイヤーが第1進入領域62内で手を開閉させることで、キャラクタをしゃべらせるアプリケーションを実現できる。
オブジェクト検出部116は、手を閉じた状態から手を開くまでの複数段階の参照画像を有しており、それらを用いたマッチングにより手の開き具合を検出するようにしてもよい。この場合、アクション特定部132は、手の開き具合に応じてキャラクタ画像の口の開度を変えるように表示制御部134に指示してもよい。また、アクション特定部132は、キャラクタの口の開度に応じて、音声の大きさ、音の高さ、声色を変えるよう音声出力部36に指示してもよい。この場合、図示しない音声データ格納部に複数の音声データを準備しておき、音声出力部36は、アクション特定部132からの指示に応じて適切な音声データを検索して出力する。
実施の形態2においても、第1進入領域62と第2進入領域64とを特定の機能のオンオフに利用してもよい。一例として、オブジェクト76が第1進入領域62に進入するとキャラクタ画像82の表示が開始され、オブジェクト76が第2進入領域64に位置するときにのみ、手の開閉に合わせて音声が発せられるようにしてもよい。オブジェクト76が第1進入領域62に位置するときにプレイヤー72がオブジェクト76である手を開閉させても、画面内のキャラクタ画像82の口は動作に合わせて開閉されるが音声は発せられない。
キャラクタ画像を重ね合わせるオブジェクトは、プレイヤー72の他の身体の一部、例えば口であってもよい。図12(a)、(b)はその様子を示す。カメラ20により撮影されたフレーム内で、オブジェクト検出部116がプレイヤーの唇78をマッチングにより検出してフレーム内位置を特定する。また、オブジェクト検出部116は、複数の参照画像を用いてマッチングを実行することで、口の開度を検出する。表示制御部134は、プレイヤーの唇に重ね合わせて、上唇および下唇の形状をしたキャラクタ画像84を表示する。表示制御部134は、開度に応じてキャラクタ画像84の上下唇間の間隔を変更する。
アクション特定部132は、口の開閉タイミングに合わせて音声を出すように、音声出力部36に指令する。これを利用して、プレイヤーの声と異なる声、例えば動物の鳴き声、著名な人物の声などを、プレイヤーの口の動きに合わせて出力するようなアプリケーションを実現できる。
プレイヤーの鏡面画像と重ならない位置に別のキャラクタ画像を表示させて、このキャラクタが口を動かす様子をまねしてプレイヤーが口を動かすようなアプリケーションとしてもよい。キャラクタの口の動きに合わせることができると、キャラクタの声が出力されるようにしてもよい。
図12の例では、一旦プレイヤーの口がオブジェクト検出部116により検出されると、それ以降プレイヤーが口を動かすたびに音声が出力されてしまう。そこで、反射体50を用いた奥行定位を利用して、プレイヤーの手や指などのオブジェクトが第1進入領域62または第2進入領域64に存在するときにのみ、音声が出力されるようにしてもよい。あるいは、上述したように、オブジェクトが第1進入領域62に進入するとプレイヤーの口に重ねたキャラクタ画像の表示が開始され、オブジェクトが第2進入領域64に進入すると、プレイヤーの口の動きに合わせた音声の出力が開始されるようにしてもよい。このように、本発明では、奥行位置の特定はマッチングによらず、フレーム間で反射面領域の差分を取ることによって行われるため、奥行定位に用いるオブジェクトと、マッチングによりフレーム内位置を特定するオブジェクトとが別々のものであってもよい。したがって、反射体を用いた奥行定位を、オブジェクトのマッチングを利用した特定の機能をオンオフするためのスイッチとしてのみ使用することができる。
実施の形態3.
実施の形態1および2では、二つの反射面を奥行方向に離間して配置した反射体50を用いてオブジェクトの三次元位置を特定する技術を説明した。実施の形態1および2では、オブジェクトのフレーム内位置を特定するために、参照画像を用いたマッチングを実行する。このため、参照画像記憶部120には、予めオブジェクトの参照画像を記憶させておく必要がある。参照画像を予め記憶させておいてもよいが、プレイヤーの身体の一部をオブジェクトとして用いる場合には、認識精度を高めるために、プレイヤー毎にオブジェクトの参照画像を取得することが望ましい。
そのため、従来技術では、アプリケーションの実行前に所定の画面を表示して、プレイヤーに対しオブジェクトをカメラにより撮影させる操作を促すことで、オブジェクトの参照画像を取得することが行われている。しかしながら、これはプレイヤーに無駄な動作をさせるばかりか、ゲームなどのアプリケーションを速やかに実行できないという問題がある。
そこで、実施の形態3では、事前にオブジェクトの参照画像を保持することなく、オブジェクトの三次元定位と同一の構成を用いてオブジェクトの参照画像を取得する技術について説明する。これによって、プレイヤーはカメラ、ディスプレイ、反射体の設置後に速やかにアプリケーションの実行に移ることができる。
実施の形態1および2で用いた、奥行方向に離間して配置された二枚の反射面を備える反射体の代わりに、実施の形態3では、それぞれの面の法線がオブジェクトの存在する側で交差するように角度を付けられオブジェクトを同時に反射する第1反射面と第2反射面とを備える反射体を用いる点が異なる。
図13は、実施の形態3に係る三次元位置特定装置14を示す。図14は、図13に示す状態で、ディスプレイ40に表示されプレイヤーから認識される画面44を示す。図15は、反射体170の奥行方向すなわちz方向に垂直な平面の断面図である。
図13中、カメラ20、画像処理装置30およびディスプレイ40の基本的な機能および配置については、図1で説明したのと同様である。三次元位置特定装置14では、反射体170の構成が実施の形態1と異なる。反射体170は、第1反射面172と第2反射面174を有する。図15に示すように、第1反射面172と第2反射面174は、それぞれの面の法線172d、174dがオブジェクトの存在する側で交差するように角度を付けられ、オブジェクトの二つの反射像を同時にカメラ20に向けて反射するように配置される。
図14に示すように、第1反射面172と第2反射面174は、奥行方向に並べられた複数の短冊状の反射面178a〜178dで構成される。図14では、ひとつの反射面が4つの短冊状反射面で構成されている。反射体170の長軸方向の両端には、反射体50と同じように識別用のマーカ176も設けられる。
第1反射面172および第2反射面174は、反射体50と同じく鏡や鏡面加工を施した金属、プラスチック、金属を蒸着させたガラスなどで構成されてもよいが、微小なプリズムを平面的に配置してなる平面上のマイクロプリズムミラーで構成されることが好ましい。反射面をマイクロプリズムミラーで構成することで、反射体170の厚みを抑えることができ、設置が容易で省スペースとなる。
なお、図13および図15では、反射の方向を分かりやすくするために第1反射面172、第2反射面174、および短冊状反射面178a〜178dに角度を付けて描いたが、実際にはマイクロプリズムミラーはほぼ平面でもこのような反射角を付けることができる点に注意されたい。
第1反射面172と第2反射面174とを角度を付けて配置させたために、図14に示すように、カメラ20から出力されるフレームには、第1反射面172によるオブジェクトの反射像70cと、第2反射面174によるオブジェクトの反射像70dの二つが現れることになる。つまり、オブジェクト70が複数のカメラによりステレオ撮影されたのと同様の状態になる。したがって、周知のステレオ撮影の技術を用いて、二つの反射像70c、70dからオブジェクト70の三次元位置を特定することが可能である。
図16は、実施の形態2における画像処理装置30の構成を示す。画像取得部102、画像反転部104、配置確認部140、配置指示部142およびオンスクリーン表示部144の機能については、図4と同様であるので説明を省略する。
反射面領域特定部112は、画像反転部104から受け取ったフレーム内で、マーカ176の位置をもとに反射面領域を特定する。
フレーム内定位部114は、オブジェクト検出部116に加えてステレオ画像解析部118を含む。ステレオ画像解析部118は、反射面領域特定部112で特定された反射面領域における二つの反射像70c、70dを用いて、既知の技術にしたがってオブジェクト70のフレーム内位置を特定する。反射像70c、70dが反射された位置と、反射像70c、70dの大きさの違いから、オブジェクト70のフレーム内位置を大まかに決定することができる。
参照画像記憶部120は、ステレオ画像解析部118により特定されたオブジェクト70のフレーム内位置を中心とする所定範囲の画像をフレームから切り出し、参照画像として記憶する。図15に示すように、オブジェクト70は、フレーム内で、オブジェクト70の二つの反射像がある場所から伸ばした第1反射面172および第2反射面174の法線が交わる位置付近にあるはずである。そこで、図15の円180に相当するフレーム内の領域を切り出すことで、オブジェクトの参照画像を取得することができる。
反射像のステレオ画像により決定されるオブジェクトのフレーム内位置の精度はさほど高くないが、検出対象のオブジェクトより広い範囲の画像を切り出すことによって、この精度の低さをカバーすることができる。参照画像を切り出す範囲の大きさは、実験を通じて適正値を定めればよい。ステレオ画像解析部118は、この所定範囲の画像を参照画像として参照画像記憶部120に記憶する。
これら一連の処理が終わると、オブジェクト検出部116は、参照画像記憶部120内の参照画像を使用して、オブジェクト70のフレーム内定位およびトラッキングを実行できるようになる。
奥行定位部122は、複数の短冊状反射面178a〜178dのうち、いずれの反射面にオブジェクト70の反射像70c、70dが反射しているかをフレーム間の差分に基づいて検出することによって、オブジェクト70の奥行方向の位置を特定することができる。
図17は、実施の形態3において、図5ないし図8で示したのと同様の電卓アプリケーションを実行する手順を示すフローチャートである。
反射体170を適正な位置に設置したのち、カメラ20によるオブジェクト70と反射体170の撮影がなされ、画像取得部102がオブジェクト70の直接像と反射像とを含むフレームを取得する(S40)。反射面領域特定部112は、画像反転部104から与えられたフレーム内でマーカ176を検出することで、反射面領域を特定する(S42)。反射面領域特定部112は、オブジェクト70の反射像との差分を取るためのデフォルト画像として、オブジェクト70が進入領域182に進入してくる前に、反射面領域の画像を取得しておいてもよい。奥行定位部122は、反射面領域内でフレーム間の差分を検出することで、進入領域182内にオブジェクトが進入したことを検知する。これに応じて、ステレオ画像解析部118は、反射面領域特定部112で特定された反射面領域に映し出されている二つのオブジェクトの反射像70c、70dに基づいて、オブジェクト70のフレーム内での大まかな位置を特定する(S44)。ステレオ画像解析部118は、特定したフレーム内位置を中心とする所定範囲180内の画像を、マッチングに用いるための参照画像としてフレームから切り出し、参照画像記憶部120に格納する(S46)。これ以降は、図9のS14以降と同様であり、フレーム内定位部114は、参照画像記憶部120に格納された参照画像を使用してオブジェクトのフレーム内位置を特定し、奥行定位部122は、反射面領域内でフレーム間の差分を検出することで、オブジェクトの奥行方向の位置を特定する。
ステレオ画像解析部118によるオブジェクトのフレーム内位置の特定が正確に行えなかった場合、参照画像の切り出しが不適切になり、オブジェクト検出部116のマッチングによるオブジェクトの検出ができないことになる。この場合、プレイヤーに対して再度オブジェクトの切り出しを実行することを通知してもよい。
以上説明したように、実施の形態3によれば、オブジェクトの存在する側でそれぞれの法線が交わるように角度を付けた第1反射面と第2反射面とを備える反射体を用いることで、オブジェクトの反射像のステレオ画像を取得する。反射面領域における背景のデフォルト画像とオブジェクトが進入したときの画像との差分を検出することで、参照画像を切り出すためのオブジェクトのステレオ画像を取得するタイミングを計ることができる。また、デフォルト画像を記憶しておくことで、差分検出のロバスト性も高くなる。ステレオ画像を解析することで、オブジェクトのマッチングを実行しなくてもオブジェクトのフレーム内の大まかの位置を特定できるため、その部分を参照画像として取り出すことができる。
このように、参照画像を切り出す段階で、プレイヤーによる参照画像を記憶させる動作を省略されるので、迅速なアプリケーションの開始に寄与する。言い換えると、プレイヤーに特定の動作を強制することがなく、参照画像を取得する手順をプレイヤーから見えなくしている。参照画像を切り出した後は、マッチングによりオブジェクトのフレーム内位置を高精度に検出する。このように、迅速なアプリケーションの開始と、マッチングによる位置精度の高さとを両立させた点が、実施の形態3の特徴のひとつである。
上述の反射体170を使用すれば、カメラで撮影されたフレーム内にオブジェクトの直接像がなくても反射像のみでオブジェクトの三次元位置を特定することができる。しかしながら、実施の形態3では、フレーム内定位の精度を高めるために、参照画像の切り出しに成功した後は、参照画像を用いたマッチングによりオブジェクトのフレーム内位置を特定している。
反射体170の短冊状反射面の数を増やして、奥行方向のオブジェクト移動の検出精度を高めることで、より複雑なアプリケーションを実現できる。一例として、バーチャル手術が考えられる。液晶立体ディスプレイに手術部位の三次元画像を表示させ、プレイヤーはメスなどの手術用具の代わりに棒状のオブジェクトを手で持って操作する。三次元定位部110によってオブジェクトの三次元位置を特定し、その位置に応じて、液晶立体ディスプレイに表示される手術部位の三次元画像を変化させる。一例として、オブジェクトをある方向に動かしたときに手術部位が切開されるといった画像を表示する。このとき、オブジェクトの複数箇所にLEDを搭載しておき、オブジェクトを移動させたときのLEDの軌跡をフレーム内で検出して、オブジェクトの動きベクトルを求めてもよい。こうすることで、後述する実施の形態4を利用して、オブジェクトの動きと同期させて所定の効果音をスピーカから出力させることも可能である。
反射面としてマイクロプリズムミラーを用いれば、鏡の凹凸面の曲率を制御することで、画角を調節できる。したがって、オブジェクトの進入を判定するための進入領域は、図13で示したような反射面の垂直上方に限られず、扇状に広げることもできるし、逆に狭めることも可能である。進入領域を広げれば、位置精度は低下するものの、オブジェクトの奥行方向の移動を検出可能な範囲を広くすることができる。
実施の形態4.
実施の形態1ないし3において、反射体を用いてプレイヤーにより操作されたオブジェクトの三次元位置を特定し、これによってアクションを特定してアプリケーションの機能を働かせることを述べた。これらは、いずれも画面に表示されたアプリケーション画像の表示態様を変化させることで、アクションが認識され特定の機能が有効または無効になったことをプレイヤーに知らしめることができる。
しかしながら、ディスプレイ内のアプリケーション画像の表示態様の変化を通した視覚的通知のみならず、アクションに応じた音声をスピーカから出力すれば、プレイヤーに対し聴覚的にも知らせることができ有利である。この場合、オブジェクトの画像による認識後に音声を出力すると、視覚を通じたプレイヤーの認識とプレイヤーが音声を聞くタイミングとがずれてしまうことが起こり得、プレイヤーに対して違和感を与えてしまう恐れがある。そこで、実施の形態4では、画像処理によってオブジェクトの速度ベクトルを検出し、オブジェクトが仮想的なまたは現実の接触面に到達するまでの予想移動時間を算出し、オブジェクトが接触面に到達する前に音声の出力を実行する技術について説明する。
図18は、実施の形態4に係る三次元位置特定装置16の構成を示す。図中、カメラ20、画像処理装置30、ディスプレイ40および反射体170は、図13に示したものと同様である。ここでは、図5ないし図8を参照して説明した電卓アプリケーションを考えるものとする。
プレイヤー72がオブジェクト70を操作する。奥行定位部122は、オブジェクト70が短冊状反射面178dに対応する進入領域に進入したことを検出し、アクション特定部132がオブジェクト70のカメラ方向への移動を特定して、アプリケーション実行部および表示制御部134にその旨を伝える。これによって、上述したように、アプリケーション画像のセレクトされた領域の表示態様が変化し、電卓アプリケーションにセレクト領域に対応する数字が入力される。
実施の形態4では、このアプリケーション画像の表示態様の変化とともに、所定の効果音をスピーカ42から出力させる。プレイヤー72は、アプリケーション画像の表示態様の変化とともに音声を聞くことで、オブジェクトを介してアプリケーションを操作している感覚をより強く持つことができる。また、図18に示す、短冊状反射面178dに対応する部分に仮想的な接触面(想定接触面)Wが存在していることを意識させることができる。
図19は、実施の形態4に係る画像処理装置30内の画像連携音声制御部150の構成を示す。これら機能ブロックも、ハードウェア、ソフトウェア、ファームウェアまたはこれらの組合せにより実現できることは明らかである。以下、図18をともに参照して、各機能ブロックについて説明する。
速度ベクトル算出部160は、カメラ20により撮影されたフレームを使用して、プレイヤー72の操作するオブジェクト70が想定接触面Wに向かう動作の速度ベクトルを計算する。具体的には、複数のフレーム間での反射像の差分に基づいてオブジェクトの速度ベクトルを算出する。奥行定位部122により短冊状反射面178aに対応する進入領域にオブジェクト70が進入したと判定されたフレームと、短冊状反射面178bまたは178cに対応する進入領域にオブジェクトが進入したと判定されたフレーム間の時間差tfを、カメラ20のフレームレートを参照して計算する。また、短冊状反射面178aと、短冊状反射面178bまたは178cの間の距離をlsとすると、速度ベクトル算出部160は、オブジェクトの70の奥行方向すなわちz方向の速度vをv=ls/tfにより算出する。
移動時間算出部156は、速度vと、オブジェクトと想定接触面Wの距離liとを用いて、オブジェクト70が想定接触面Wに到達するまでの移動時間tm=li/vを算出する。
遅延時間取得部154は、プレイヤーから離間して配置されたスピーカ42から発せられた音声がプレイヤー72に到達するまでの遅延時間tdを取得する。実際には、スピーカ42からプレイヤー72までの正確な距離Lはプレイヤーによって異なるため不明であるが、反射体170を配置すべき位置は決められているため、実用的には距離Lは定数で問題ない。音速Vsも定数とすれば、遅延時間tdは定数で与えられる。この場合、遅延時間取得部154は、定数であるtdを取ってくればよい。別の実施例では、スピーカ42とプレイヤー72の間の距離Lをプレイヤーにより入力させるようにしてもよい。この場合、遅延時間取得部154は、td=L/Vsにより遅延時間tdを計算する。
音声同期部158は、移動時間tmおよび遅延時間tdを参照してプレイヤーのアクションと同期した音声をスピーカ42から出力させる。具体的には、音声同期部158は、速度vを算出するのに用いたフレームの撮影時刻を起点として、移動時間tmから遅延時間tdを減じた時間の経過後に、所定の音声を出力させる。これにより、オブジェクトが想定接触面Wに到達するのと実質的に同時に、プレイヤーはスピーカ42から発せられた音声を聴取することになる。
上述の例では、ディスプレイに表示されたアプリケーション画像の表示態様の変化に合わせて音声を出力することとしたが、アプリケーション画像を用いず、仮想的な接触面の存在を音声による出力だけでプレイヤーに認識させることもできる。
なお、想定接触面が実在の面である場合、出力される音声は、オブジェクトと面とが接触することで実際に発生する音とは全く異なるタイプの音声であってもよい。
以上説明したように、実施の形態4によれば、オブジェクトが仮想的なまたは実在の接触面に到達する前に、オブジェクトが接触面に到達する時間を算出し、音声の遅延を考慮して音声を先出しする。これによって、アクションが認識されたことを視覚と聴覚の両方を通じてプレイヤーに知らしめることができる。
なお、スピーカとプレイヤーの間の距離における音声の遅延は、実用的には問題にはならないので、特にオブジェクトの移動速度が比較的遅い場合には、音声同期部158は、遅延時間取得部154による遅延時間tdを考慮しなくてもよい。この場合、音声同期部158は、アクション特定部132によりプレイヤーの何らかのアクション、例えば選択のアクションを特定したときに、それに対応するクリック音や効果音をスピーカ42から出力させる。また、ゲーム性を高めるために、音声同期部158は、計測した移動時間よりも早いタイミングで音声を出力してもよい。
このように、プレイヤーアクションの検出にあわせて音声を出力することで、プレイヤーの体感性を高めることができる。つまり、ある進入領域へオブジェクトを出し入れするのに合わせて適当な効果音を出力することで、その進入領域へのオブジェクトの進入が検知され、他の領域とは異なる意味を有していることをプレイヤーに知らしめることができる。また、プレイヤーが自らオブジェクトによるアプリケーションの操作方法を試行錯誤するときに、適切な領域にオブジェクトが存在するときに音声を出力してやることで、自ら操作方法を学習するように導くことが可能である。
図12に示したアプリケーションにおいて、速度ベクトル算出部160が複数フレーム間の口の差分情報を利用して、口の開閉速度を計算してもよい。そして、音声同期部158は、この開閉速度と遅延時間とを利用して、プレイヤーの口の開閉とスピーカから発せられる音声とが同期するように、音声の出力タイミングを調節してもよい。
実施の形態5.
実施の形態4では、反射体の奥行方向の幅を利用してプレイヤーの操作するオブジェクトの奥行方向の速度ベクトルを算出することを述べた。実施の形態5では、反射体を使用せず、カメラにより撮影されたフレームのみからオブジェクトの速度ベクトルを推定する技術について説明する。但し、本実施形態では、オブジェクトの奥行方向の移動成分は検出できず、フレーム内での移動成分のみが対象になる。
図20は、実施の形態5に係る三次元位置特定装置18の構成を示す。カメラ20、画像処理装置30およびディスプレイ40の配置については、上述の実施形態と同様である。実施の形態5では反射体を使用せず、代わりに、LED等の発光素子の付けられたオブジェクト74をプレイヤーが操作する。
図21は、カメラ20により撮影されたひとつのフレームから、オブジェクトの速度ベクトルを算出する方法の原理を説明する図である。CCD、CMOS等の画像センサは、素子に蓄えられた光量にしたがって信号を出力するが、素子の全体を走査するには一定の時間が必要である。より詳細に説明すると、画像センサの各画素は、素子の一番上の列からスタートして一番下の列まで一列ずつ移って採光され、その後蓄積された光量の読み出しが始まる。読み出しも採光と同じように一番上の列からスタートして、同じ速度で一番下の底まで一列ずつ進んで順に読み取られる。したがって、採光を開始する画素列と、読み出しを開始する画素列とで時間差のある情報が、一枚のフレームの中に含まれている。
例えばCMOSセンサでは、各列で採光開始時間の差があるため、対象物の動きが速いと先に読み出した画像上部と最後に読み出した画像下部で像が歪む(動体歪み)。CMOSは1ラインずつ順に読み出していくため、1画面を1/15秒で読めば、読み始めと読み終わりで1/15秒の差が出る。
したがって、オブジェクトとして光を発するものを高速で移動させると、図21に示すように、フレーム内で光の動いた部分が軌跡75となって現れることがある。したがって、画像センサのうち最初の画素と最後の画素を走査するまでに要する時間が分かれば、この軌跡を作り出したオブジェクトの速度を算出することが可能である。
図22は、実施の形態5における画像連携音声制御部150の構成を示す。
採光時間取得部152は、カメラ20に採用されている画像センサ22の採光時間teを取得する。この情報は予め入力しておいてもよいし、カメラ20と通信して取得してもよい。
軌跡測定部164は、画像反転部104から軌跡75の残ったフレームを受け取り、その中に含まれている軌跡の長さpとその方向を測定する。速度ベクトル算出部160は、軌跡の長さpと採光時間teとを用いて、オブジェクトの速度v=p/teを算出する。
移動時間算出部156は、実施の形態4と同様に、算出された速度vと、オブジェクト74と想定接触面Wまでの距離liを用いて、オブジェクト74の想定接触面Wまでの移動時間tmを算出する。図21の例では、想定接触面Wはフレーム内に仮想的に設定されており、オブジェクト74と想定接触面Wまでの距離liは、フレームの解析により算出する。
遅延時間取得部154および音声同期部158については、実施の形態4と同様である。
図23は、実施の形態5において、画像に連携して音声を出力させる処理のフローチャートである。まず、LED等の発光素子を有するオブジェクト74を動作させる様子をカメラ20により撮影する(S60)。撮影されたフレームは、画像取得部102から画像連携音声制御部150内の軌跡測定部164に渡される。軌跡測定部164は、フレーム内でLEDにより生じた軌跡75を検出し、この軌跡の長さと方向を測定し、その結果を速度ベクトル算出部160に渡す(S62)。速度ベクトル算出部160は、軌跡の長さ、方向、および画像センサの採光時間とを使用して、オブジェクトの速度vを計算する(S64)。続いて、移動時間算出部156は、想定接触面Wまでの距離liと速度vとを用いて、オブジェクトの接触面への移動時間tmを算出する(S66)。音声同期部158は、速度ベクトルを算出するのに用いたフレームの撮影時刻を起点として、移動時間tmから遅延時間tdを減じることによって、音声の出力タイミングを算出する(S68)。そして、出力タイミングにしたがって音声出力部36から所定の音声を出力させる(S70)。これにより、オブジェクトが想定接触面Wに到達するのと実質的に同時に、プレイヤー72はスピーカ42から発せられた音声を聴取することになる。
以上説明したように、実施の形態5によれば、オブジェクトに発光体を付けて移動させた状態を撮影し、カメラの画像センサにおける採光時間と、画像センサから出力されたフレーム内での発光体の軌跡の情報を利用して、オブジェクトの速度を算出することができる。実施の形態5は、複数フレーム間の差分によらず単一のフレームにおける軌跡を測定することで、オブジェクトの速度情報を得られるという特徴がある。但し、オブジェクトに付けた発光体を光らせることと、その軌跡がフレームに残ることが前提となる。
以上、実施の形態をもとに本発明を説明した。これらの実施の形態は例示であり、各構成要素またはプロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。また、実施の形態で述べた構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
実施の形態では、プレイヤーおよびオブジェクトの鏡面画像をディスプレイに映し出すアプリケーションを説明したが、カメラにより撮影された動画は、ディスプレイに映し出されなくてもよい。
上述の実施の形態で述べたようなアプリケーションを効果的に実行するために、十分に高いフレームレートで動画撮影のできるカメラ、そのような高フレームレートの処理が可能な計算能力および描画能力を有する画像処理装置、および高フレームレートで画像を表示できるディスプレイを組み合わせて用いることが望ましい。
実施の形態1に係る三次元位置特定装置の全体構成を示す図である。 カメラと画像処理装置のハードウェア構成を簡略化して説明した図である。 反射体の構造を示す平面図である。 処理部の詳細な構成を示す図である。 (a)はオブジェクトと進入領域との位置関係を示す図であり、(b)はディスプレイに表示されプレイヤーにより認識される画面を示す図である。 (a)はオブジェクトと進入領域との位置関係を示す図であり、(b)はディスプレイに表示されプレイヤーにより認識される画面を示す図である。 (a)はオブジェクトと進入領域との位置関係を示す図であり、(b)はディスプレイに表示されプレイヤーにより認識される画面を示す図である。 (a)はオブジェクトと進入領域との位置関係を示す図であり、(b)はディスプレイに表示されプレイヤーにより認識される画面を示す図である。 実施の形態1による三次元位置特定装置において、図5ないし図8で説明したアプリケーションを実行するフローチャートである。 (a)はオブジェクトと進入領域との位置関係を示す図であり、(b)はオブジェクトである手に合わせてキャラクタ画像を表示させる様子を示す図である。 (a)はオブジェクトと進入領域との位置関係を示す図であり、(b)はオブジェクトである手に合わせてキャラクタ画像を表示させる様子を示す図である。 (a)、(b)は、オブジェクトである口に合わせてキャラクタ画像を表示させる応用例を示す図である。 実施の形態3に係る三次元位置特定装置の構成を示す図である。 図13に示す状態で、ディスプレイに表示されプレイヤーから認識される画面を示す図である。 反射体の奥行方向に垂直な平面の断面図である。 実施の形態3に係る画像処理装置の構成を示す図である。 実施の形態3において、図5ないし図8で示したのと同様の電卓アプリケーションを実行する手順を示すフローチャートである。 実施の形態4に係る三次元位置特定装置の構成を示す図である。 実施の形態4に係る画像処理装置内の画像連携音声制御部の構成を示す図である。 実施の形態5に係る三次元位置特定装置の構成を示す図である。 カメラにより撮影されたひとつのフレームから、オブジェクトの速度ベクトルを算出する方法の原理を説明する図である。 実施の形態5における画像連携音声制御部の構成を示す図である。 実施の形態5において、画像に連携して音声を出力させる処理のフローチャートである。
符号の説明
10 三次元位置特定装置、 20 カメラ、 22 画像センサ、 24 画像処理部、 30 画像処理装置、 34 画像出力部、 36 音声出力部、 40 ディスプレイ、 42 スピーカ、 50 反射体、 52 第1反射面、 54 第2反射面、 56 マーカ、 62 第1進入領域、 64 第2進入領域、 70 オブジェクト、 70a 反射像、 70b 反射像、 72 プレイヤー、 74 オブジェクト、 75 軌跡、 76 オブジェクト、 80〜84 アプリケーション画像、 110 三次元定位部、 112 反射面領域特定部、 114 フレーム内定位部、 120 参照画像記憶部、 122 奥行定位部、132 アクション特定部、 134 表示制御部、 150 画像連携音声制御部、 154 遅延時間取得部、 156 移動時間算出部、 158 音声同期部、 160 速度ベクトル算出部、 170 反射体、 172 第1反射面、 174 第2反射面、 176 マーカ、 180 切り出し領域、 182 進入領域。

Claims (7)

  1. プレイヤーの操作するオブジェクトをカメラで撮影し、
    前記カメラから出力されるフレームを受け取る処理装置が、
    前記カメラの撮像素子における開始画素と最終画素とにおける採光に要する時間差と、移動するオブジェクトの少なくとも一部が前記カメラにより撮影された一フレーム内で描く軌跡と、を用いて速度ベクトルを計算し、
    前記速度ベクトルを参照して前記オブジェクトが接触面に到達するまでに要する移動時間を計算し、
    前記移動時間を参照して、前記オブジェクトが前記接触面に接触するのと実質的に同時にプレイヤーが音声を聴取するように、前記プレイヤーから所定の距離だけ離間して配置されたスピーカから発せられる前記音声の出力タイミングを調節することを特徴とする画像に連携した音声出力方法。
  2. 前記処理装置は、前記スピーカと前記プレイヤーとの間の距離の入力を受け付け、前記オブジェクトと前記接触面との接触により発せられるべき音声を前記スピーカから出力したときその音声が前記プレイヤーに到達するまでの遅延時間を前記距離に基づき計算し、該遅延時間に応じて前記音声の出力タイミングを調節することを特徴とする請求項1に記載の音声出力方法。
  3. カメラによって撮影されたプレイヤーの動作の画像を使用して、プレイヤーの操作するオブジェクトが接触面に向かう動作の速度ベクトルを計算する速度ベクトル算出部と、
    前記速度ベクトルと、前記オブジェクトと前記接触面との距離とを用いて、前記オブジェクトが前記接触面に到達するまでに要する移動時間を計算する移動時間算出部と、
    前記オブジェクトが前記接触面に接触するとき所定の音声を前記プレイヤーから所定の距離だけ離間して配置されたスピーカから出力させる音声制御部と、
    前記スピーカと前記プレイヤーとの間の距離の入力を受け付け、前記スピーカから発せられた音声がプレイヤーに到達するまでの遅延時間を前記距離に基づき計算する遅延時間取得部と、を備え、
    前記速度ベクトル算出部は、前記カメラの撮像素子における開始画素と最終画素とにおける採光に要する時間差と、移動するオブジェクトの少なくとも一部が前記カメラにより撮影された一フレーム内で描く軌跡を用いて前記速度ベクトルを計算し、
    前記音声制御部は、前記移動時間から前記遅延時間を減じた時間をもとに、前記オブジェクトが前記接触面に接触するのと実質的に同時にプレイヤーに前記音声を聴取させることを特徴とする画像に連携した音声出力装置。
  4. 前記カメラによって撮影されたプレイヤーの動作の画像をディスプレイに表示させる画像出力部と、
    前記画像からプレイヤーの操作するオブジェクトを検出するオブジェクト検出部と、
    検出されたオブジェクトにキャラクタの口の画像が重なるようにキャラクタの画像を前記ディスプレイに表示し、前記オブジェクトの動きにあわせてキャラクタの口を変化させる表示制御部と、をさらに備え、
    前記音声制御部は、前記キャラクタの口の変化に応じてスピーカから音声を出力させることを特徴とする請求項3に記載の音声出力装置。
  5. 前記オブジェクトはプレイヤーの手であり、
    前記オブジェクト検出部は手の平の開閉を検出し、
    前記音声制御部は手の平の開閉動作に応じた音声を出力することを特徴とする請求項4に記載の音声出力装置。
  6. 前記オブジェクトはプレイヤーの口であり、
    前記オブジェクト検出部はプレイヤーの口の開閉速度を計算し、
    前記音声制御部は口の開閉と前記音声とが同期するように音声の出力タイミングを調節することを特徴とする請求項4に記載の音声出力装置。
  7. 前記音声制御部は、前記口の開閉速度と前記遅延時間とを参照して音声の出力タイミングを調節することを特徴とする請求項6に記載の音声出力装置。
JP2006186797A 2006-07-06 2006-07-06 画像に連携した音声出力方法および装置 Active JP4627052B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006186797A JP4627052B2 (ja) 2006-07-06 2006-07-06 画像に連携した音声出力方法および装置
PCT/JP2007/000441 WO2008004331A1 (fr) 2006-07-06 2007-04-23 Procédé et dispositif d'émission vocale, liés à des images
US12/294,966 US8113953B2 (en) 2006-07-06 2007-04-23 Image-linked sound output method and device
EP07737098A EP2055361A1 (en) 2006-07-06 2007-04-23 Voice outputting method and device linked to images

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006186797A JP4627052B2 (ja) 2006-07-06 2006-07-06 画像に連携した音声出力方法および装置

Publications (3)

Publication Number Publication Date
JP2008012102A JP2008012102A (ja) 2008-01-24
JP2008012102A5 JP2008012102A5 (ja) 2008-06-19
JP4627052B2 true JP4627052B2 (ja) 2011-02-09

Family

ID=38894306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006186797A Active JP4627052B2 (ja) 2006-07-06 2006-07-06 画像に連携した音声出力方法および装置

Country Status (4)

Country Link
US (1) US8113953B2 (ja)
EP (1) EP2055361A1 (ja)
JP (1) JP4627052B2 (ja)
WO (1) WO2008004331A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005089895A1 (ja) * 2004-03-22 2005-09-29 Nintendo Co., Ltd. ゲーム装置、ゲームプログラム、ゲームプログラムを記憶した記憶媒体およびゲーム制御方法
US9652030B2 (en) 2009-01-30 2017-05-16 Microsoft Technology Licensing, Llc Navigation of a virtual plane using a zone of restriction for canceling noise
US9383823B2 (en) * 2009-05-29 2016-07-05 Microsoft Technology Licensing, Llc Combining gestures beyond skeletal
JP2012181704A (ja) * 2011-03-01 2012-09-20 Sony Computer Entertainment Inc 情報処理装置および情報処理方法
CN102684257A (zh) * 2012-05-03 2012-09-19 友达光电股份有限公司 太阳能***、太阳能模块及供电方法
US20140080593A1 (en) * 2012-09-19 2014-03-20 Wms Gaming, Inc. Gaming System and Method With Juxtaposed Mirror and Video Display
JP5664877B2 (ja) * 2012-09-27 2015-02-04 株式会社コナミデジタルエンタテインメント サービス提供装置、それに用いる制御方法及びコンピュータプログラム
JP6102330B2 (ja) 2013-02-22 2017-03-29 船井電機株式会社 プロジェクタ
CN105307737A (zh) 2013-06-14 2016-02-03 洲际大品牌有限责任公司 互动视频游戏
JPWO2020158440A1 (ja) 2019-01-30 2021-12-02 ソニーグループ株式会社 情報処理装置、情報処理方法、及びプログラムを記載した記録媒体
US11341456B2 (en) * 2020-08-25 2022-05-24 Datalogic Usa, Inc. Compact and low-power shelf monitoring system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999060522A1 (en) * 1998-05-19 1999-11-25 Sony Computer Entertainment Inc. Image processing apparatus and method, and providing medium
JP2005031799A (ja) * 2003-07-08 2005-02-03 Sony Computer Entertainment Inc 制御システムおよび制御方法
JP2005051660A (ja) * 2003-07-31 2005-02-24 Onkyo Corp 映像信号および音声信号の再生システム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05232908A (ja) 1992-02-19 1993-09-10 Toshiba Corp 指示入力装置
JP3179660B2 (ja) * 1994-08-11 2001-06-25 シャープ株式会社 音声及び動作の制御装置並びに音声及び画像の出力装置
US6614422B1 (en) 1999-11-04 2003-09-02 Canesta, Inc. Method and apparatus for entering data using a virtual input device
US6522395B1 (en) 1999-04-30 2003-02-18 Canesta, Inc. Noise reduction techniques suitable for three-dimensional information acquirable with CMOS-compatible image sensor ICS
US6710770B2 (en) * 2000-02-11 2004-03-23 Canesta, Inc. Quasi-three-dimensional method and apparatus to detect and localize interaction of user-object and virtual transfer device
JP2003085571A (ja) * 2001-09-07 2003-03-20 Tomy Co Ltd 塗り絵玩具
JP4114720B2 (ja) 2002-10-25 2008-07-09 株式会社ソニー・コンピュータエンタテインメント 画像生成方法および画像生成装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999060522A1 (en) * 1998-05-19 1999-11-25 Sony Computer Entertainment Inc. Image processing apparatus and method, and providing medium
JP2005031799A (ja) * 2003-07-08 2005-02-03 Sony Computer Entertainment Inc 制御システムおよび制御方法
JP2005051660A (ja) * 2003-07-31 2005-02-24 Onkyo Corp 映像信号および音声信号の再生システム

Also Published As

Publication number Publication date
EP2055361A1 (en) 2009-05-06
US20100222144A1 (en) 2010-09-02
US8113953B2 (en) 2012-02-14
WO2008004331A1 (fr) 2008-01-10
JP2008012102A (ja) 2008-01-24

Similar Documents

Publication Publication Date Title
JP4627052B2 (ja) 画像に連携した音声出力方法および装置
US8241122B2 (en) Image processing method and input interface apparatus
JP4409545B2 (ja) 三次元位置特定装置および方法、奥行位置特定装置
TWI343208B (ja)
US6947029B2 (en) Handwritten data input device and method, and authenticating device and method
US8823642B2 (en) Methods and systems for controlling devices using gestures and related 3D sensor
JP5806469B2 (ja) 画像処理プログラム、画像処理装置、画像処理システム、および画像処理方法
JP5256269B2 (ja) データ生成装置、データ生成装置の制御方法、及びプログラム
JP2004312733A (ja) 網膜トラッキングを組み込んだ装置及び方法
JP2002213947A (ja) ターゲット位置を測定するシステム及びその方法
JP6684042B2 (ja) 電子機器
CN106125921A (zh) 3d映射环境中的凝视检测
US9724613B2 (en) Game device, control method of game device, program, and information storage medium
JP6830829B2 (ja) プログラム、表示装置、表示方法、放送システム及び放送方法
JP2007025963A (ja) 視線測定装置および視線測定プログラム、ならびに、視線校正データ生成プログラム
JP2000056916A (ja) ハンドポインティング装置
US20220375362A1 (en) Virtual tutorials for musical instruments with finger tracking in augmented reality
JP4218963B2 (ja) 情報抽出方法、情報抽出装置及び記録媒体
JP6836329B2 (ja) 演奏装置及び演奏支援システム
KR100715321B1 (ko) 이미지 프로세싱을 이용한 동화 스토리 진행 방법
KR102128315B1 (ko) 가상 악기 시각화 기반 미디 음악 편곡 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
US20230079969A1 (en) Information processing apparatus, information processing method, and storage medium
CN211827195U (zh) 一种交互设备
JP2017062347A (ja) データ処理装置及びプログラム
JP2001009159A (ja) スポット光位置検出システム、シミュレータ、情報記憶媒体

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080423

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100928

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101102

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4627052

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20101125

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20110412

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250