JP3521187B2 - 固体撮像装置 - Google Patents

固体撮像装置

Info

Publication number
JP3521187B2
JP3521187B2 JP2000005740A JP2000005740A JP3521187B2 JP 3521187 B2 JP3521187 B2 JP 3521187B2 JP 2000005740 A JP2000005740 A JP 2000005740A JP 2000005740 A JP2000005740 A JP 2000005740A JP 3521187 B2 JP3521187 B2 JP 3521187B2
Authority
JP
Japan
Prior art keywords
image
light
reflected light
finger
light receiving
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
JP2000005740A
Other languages
English (en)
Other versions
JP2000222097A (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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000005740A priority Critical patent/JP3521187B2/ja
Publication of JP2000222097A publication Critical patent/JP2000222097A/ja
Application granted granted Critical
Publication of JP3521187B2 publication Critical patent/JP3521187B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Image Input (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)
  • User Interface Of Digital Computer (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、物体による反射光
を獲得し入力情報を抽出する固体撮像装置に関する。
【0002】
【従来の技術】コンピュータへの入力デバイスとして、
マウスが圧倒的に使われている。しかし、マウスで操作
できることは、カーソルの移動と、メニューの選択など
であり、あくまでも2次元のポインティングデバイスと
しての役目に過ぎない。マウスで扱えるのは、2次元の
情報であり、3次元空間のなかの物体など奥行きがある
ものを選択することは難しい。
【0003】また、アニメーションを作成する場合、キ
ャラクタの動きをつけるのに、マウスのような入力デバ
イスでは、自然な動きをつけることが難しかった。
【0004】最近、3次元空間でのポインティングの難
点を補うために、3次元ポインティングデバイスが開発
されている。例えば、図80のような3次元ポインティ
ングデバイスは、中央の丸い部分の前方を押す、中央を
押す、後方を押す、丸い部分の全体を持ち上げる、全体
を右に回す、左に回すというように、6通りの操作が可
能であり、6自由度ある。この6自由度を割り振ること
で、3次元空間内のカーソルの位置(x,y,z)と向
き(x軸,y軸,z軸)制御したり、あるいは、3次元
空間に対する視点位置(x,y,z)と向き(x軸,y
軸,z軸)を制御できる。
【0005】しかし、実際に操作すると、思うようにカ
ーソルや視点の制御ができないという問題がある。例え
ば、左右に回そうとすると、前方あるいは後方を押して
しまい、思わぬ方向にカーソルが動いたり、視点が動い
たりしてしまう。
【0006】このような3次元ポインティングデバイス
に対して、手振りや身ぶりを使って入力するデバイスも
開発されている。データグローブやデータスーツ、サイ
バーグローブと呼ばれるものである。これらは、例え
ば、データグローブは手袋状のデバイスで、表面に光フ
ァイバが走っている。光ファイバは、指の関節まで通っ
ており、指を曲げることにより、光の導通が変わる。こ
の光の導通を計測することで、各指の関節がどの程度曲
がっているかがわかる。手自体の3次元空間内の位置
は、手の甲についている磁気センサによって計測するよ
うになっている。人差し指をたてれば、前進するという
ように、身ぶりとそれに対応する指示を決めておけば、
データグローブを使って、3次元空間内を種々に視点を
変えて、ちょうど、歩き回るようにする(ウオークスル
ーという)ことができる。
【0007】しかし、このような3次元ポインティング
デバイスにも問題点がいくつかある。まず、価格が高価
であり、家庭用などに使用することは難しい。指の関節
の角度を計測しているので、例えば、人差し指だけのば
し、他の指は、曲げた状態を前進指示と定義したとす
る。実際に指を伸ばすといっても、人差し指の第2関節
の角度が180度に完全になっていることは少ないの
で、遊びの部分を作らないと、指をのばしきったとき以
外は、のばしていると認識することができない。
【0008】また、データーグローブを装着するので、
自然な操作が阻害され、装着するたびに、手の開いた状
態と閉じた状態において、光の導通状態を校正せねばな
らないので、手軽に使用することができない。また、光
ファイバを使っているため、継続的に使っていると、フ
ァイバが断絶するなど消耗品に近いという問題がある。
【0009】また、このように、高価で、手間がかかる
デバイスである割には、手袋の大きさが、ぴったり合っ
ていないと、使っているうちにずれたりして校正した値
からずれるために、細かな手振りを認識することは難し
い。
【0010】このように、いろいろな問題があるため
に、データグローブは、VR(バーチャルリアリティ、
仮想現実感)技術のトリガーとなったデバイスであった
にもかかわらず、当初の期待ほど、普及しておらず、ま
た、低価格化もなされておらず、使い勝手の点で問題が
多い。
【0011】これに対し、データグローブのような特殊
な装置を装着することなく、手振りや身ぶりを入力しよ
うとする試みが、いくつかなされている。例えば、ビデ
オ映像などの動画像を解析して、手の形を認識するよう
な研究がなされている。
【0012】しかし、これらでは、背景画像から目的と
する画像、手振りの認識の場合には、手のみを切り出す
ことが難しいという問題がある。例えば、色を使って切
り出す場合を考えてみる。手の色は肌色であるので、肌
色の部分のみを切り出すような方式が考えられるが、背
景にベージュ色の洋服や、壁があったりすると、肌色を
識別することができない。
【0013】また、調整を行って、ベージュと肌色を区
別できるようにしても、照明が変われば、色調が変化し
てしまうために、定常的に切り出すことは困難である。
【0014】このような問題から逃れるために、背景に
ブルーマットをおくというように、背景画像に制限を置
き、切り出しを容易にする方策も採られている。あるい
は、指先に背景からの切り出しが容易になるような色を
つける、あるいは色のついた指輪をはめるというような
方策も採られている。
【0015】しかし、このような制限は現実的でなく、
実験的には使われているが、実用化されるにいたってい
ない。
【0016】また、以上のような切り出しなどのビデオ
の画像認識処理は、非常に演算量が多い。このため、現
状のパーソナルコンピュータでは、秒30枚発生する画
像を処理しきれないのが実状である。従って、ビデオ映
像の処理によるモーションキャプチャなどをやるのは、
リアルタイムでは無理である。
【0017】レンジファインダと呼ばれる、距離画像を
入力する装置がある。その代表的な原理として、スポッ
ト光あるいはスリット光を対象物体に照射し、その反射
光の受光位置から三角測量の原理で求めるものである。
2次元的な距離情報を求めるために、スポット光あるい
はスリット光を機械的に走査している。この装置は非常
に高精度な距離画像を生成することができるが、その反
面、装置の構成が大掛かりになり、高コストになる。ま
た入力に時間がかかり、実時間で処理を行わせるのは困
難である。
【0018】また、手や身体の一部に色マーカーや発光
部を取り付け、画像によりそれらを検出し、手・身体の
形、動きなどを捉える装置もあり、一部実用化されてい
る。しかし使用者の利便性を考えると、操作の度に装置
を装着しなくてはならないというのは大きなデメリット
であり、応用範囲を非常に制約する。また、データグロ
ーブの例に見られるように、装置を手などの可動部に装
着して使用する装置は耐久性が問題になりやすい。
【0019】次に、以上のような入力デバイスとは別
に、カメラ技術の従来技術についての問題点を述べる。
従来のカメラ技術では、背景に対して、キャラクタの合
成(クロマキー)を行うには、あらかじめ、ブルーバッ
クでキャラクタを撮影して、キャラクタの切り出しを容
易にする必要があった。このため、ブルーバックで撮影
ができるスタジオなど、撮影場所に制限があった。ある
いは、ブルーバックでない状態で撮影した映像から、キ
ャラクタを切り出すには、コマごとに、キャラクタの切
り出し範囲を人手で編集せねばならないので、非常な手
間がかかっていた。
【0020】同様に、キャラクタを3次元空間の中に生
成するには、あらかじめ3次元のモデルをつくってお
き、そこにキャラクタの写真を貼り付ける(テクスチャ
マッピング)をおこなうような方式をとっている。
【0021】しかし、3次元モデルの生成、および、テ
クスチャマッピングには手間がかかり、映画制作など経
費がかかってもよい用途以外では、ほとんど使えなかっ
た。
【0022】
【発明が解決しようとする課題】このように従来では、
容易に特定のキャラクタだけを切り出すことができなか
った。
【0023】
【0024】
【0025】
【課題を解決するための手段】上記課題を解決するため
に、基板上に、受光手段と、この受光手段で検出された
信号を増幅する増幅手段と、セルを選択する選択手段
と、前記受光手段をリセットするリセット手段とを有す
る単位セルを行列2次元状に配列してなる固体撮像装置
において、前記単位セルは前記受光手段で受けた光量に
応じた信号を保存する記憶手段を少なくとも2つ以上有
し、前記基板は前記少なくとも2つの記憶手段に記憶さ
せた信号の差を検出する差分検出手段を有することを特
徴とする。
【0026】また、前記受光手段はフォトダイオードで
構成され、前記増幅手段は増幅トランジスタで構成さ
れ、前記リセット手段はリセットトランジスタで構成さ
れ、前記少なくとも2つの記憶手段はコンデンサで構成
されるもので、前記フォトダイオードは前記増幅トラン
ジスタのゲートで接続され、前記少なくとも2つのコン
デンサはそれぞれの一方の電極が前記増幅トランジスタ
に接続され、他方の電極が接地されることを特徴とす
る。
【0027】
【発明の実施の形態】(実施例1)<実施例1の概略説
明>図1は、本発明の第1の実施例の構成例である。本
実施例はまた、本発明によって実現される種々の具体的
実施例の代表的な上位概念も表している。
【0028】本構成は、発光手段101、反射光抽出手
段102、特徴情報生成手段103、タイミング信号生
成手段104とから成る。発光手段101はタイミング
信号生成手段104によって生成されるタイミング信号
に従って時間的に強度変動する光を発光する。この光は
発光手段前方にある対称物体に照射される。反射光抽出
手段102は、この発光手段101が発した光の対象物
体による反射光を抽出する。これはさらに好適には、反
射光の空間的な強度分布を抽出する。この反射光の空間
的な強度分布は画像として捉えることが出来るので、以
下では反射光画像と呼ぶ。
【0029】反射光抽出手段102は、光の量を検出す
る受光部を持つが、受光部は一般的に、発光手段の光の
対象物体による反射光だけでなく、照明光や太陽光など
の外光も同時に受光する。そこで反射光抽出手段102
は、発光手段が発光しているときに受光した光の量と、
発光手段が発光していないときに受光した光の量の差を
とることによって、発光手段からの光の対象物体による
反射光の成分だけを取り出す。つまり、発光手段101
を制御する信号を生成するタイミング信号生成手段10
4によって、反射光抽出手段102もまた制御されるこ
とを表す。
【0030】特徴情報生成手段103は、反射光画像よ
りさまざまな特徴情報を抽出する。この特徴情報あるい
は特徴情報の抽出方法は様々考えられる。例えば、手の
反射光画像の特徴情報から、ジェスチャーやポインティ
ングなどの情報を得て、これによりコンピュータなどの
操作を行うことができる。また対象物体の立体情報を抽
出し、利用することもできる。図1に描かれている特徴
情報生成手段は、必ずしも必要ではなく、例えば反射光
抽出手段で得られた反射光画像そのものを入力したり利
用したりすることもできる。
【0031】<実施例1の詳細な説明>次に、実施例1
のより具体的な構成について詳しく述べる。図2は、実
施例1のより具体的な構成例である。発光手段105よ
り発光された光は、対象物体106に反射して、レンズ
等の受光光学系107により、反射光抽出手段108の
受光面上に結像する。
【0032】反射光抽出手段108は、この反射光の強
度分布、すなわち反射光画像を検出する。反射光抽出手
段108は、第1の受光手段109、第2の受光手段1
10および差分演算部111から成る。第1の受光手段
109と第2の受光手段110は、異なるタイミングで
受光を行う。そして第1の受光手段が受光しているとき
に発光手段が発光し、第2の受光手段が受光していると
きには発光手段は発光しないように、タイミング制御手
段112がこれらの動作タイミングを制御する。これに
より第1の受光手段は発光手段からの光の物体による反
射光とそれ以外の太陽光、照明光などの外光を受光す
る。一方、第2の受光手段は外光のみを受光する。両者
が受光するタイミングは異なっているが近いので、この
間における外光の変動は無視できる。
【0033】従って、第1の受光手段で受光した像と第
2の受光手段で受光した像の差分をとれば、これは発光
手段の光の物体による反射光の成分だけが抽出される。
差分演算部111が第1の受光手段109と第2の受光
手段110で受光した像の差を計算して出力する。反射
光抽出手段108については、さらに詳細な構成につい
て後述する。
【0034】反射光抽出手段108は反射光画像の各画
素の反射光量をシーケンシャルに出力する。反射光抽出
手段108からの出力はアンプ113によって増幅さ
れ、A/D変換器114によってデジタルデータに変換
された後、メモリ115に蓄えられる。しかるべきタイ
ミングでこのメモリ115より蓄積されたデータが読み
出され、特徴情報生成手段116において処理される。
これら全体の制御をタイミング制御手段112が行う。
【0035】発光手段105は人間の目に見えない、近
赤外光を発光する。光が見えないため、眩しさを感じず
に済む。また、受光光学系には図示しないが、近赤外光
通過フィルタが設けてある。このフィルタは、発光波長
である近赤外光を通過し、可視光、遠赤外光を遮断す
る。従って、外光の多くをカットしている。
【0036】物体からの反射光は、物体の距離が大きく
なるにつれ大幅に減少する。物体の表面が一様に光を散
乱する場合、反射光画像1画素あたりの受光量は物体ま
での距離の2乗に反比例して小さくなる。従って、本入
力装置の前に物体を置いたとき、背景からの反射光はほ
ぼ無視できるくらいに小さくなり、物体のみからの反射
光画像を得ることが出来る。
【0037】例えば、入力装置の前に手を持ってきた場
合、その手からの反射光画像が得られる。この時、反射
光画像の各画素値は、その画素に対応する単位受光部で
受光した反射光の量を表す。反射光量は、物体の性質
(光を鏡面反射する、散乱する、吸収する、など)、物
体面の向き、物体の距離、などに影響されるが、物体全
体が一様に光を散乱する物体である場合、その反射光量
は物体までの距離と密接な関係を持つ。手などはこのよ
うな性質を持つため、手を差し出した場合の反射光画像
は、手の距離、手の傾き(部分的に距離が異なる)、な
どを反映する。従ってこれらの特徴情報を抽出すること
によって、様々な情報の入力・生成が可能になる。
【0038】立体形状を抽出したい場合には、距離情報
を高い分解能で求められることが望ましい。このような
場合、アンプとして対数アンプを用いると望ましい。受
光部の受光量は物体までの距離の2乗に反比例するが、
対数アンプを用いると、その出力は、距離に反比例する
ようになる。このようにすることで、ダイナミックレン
ジを有効に使うことができる。
【0039】<反射光抽出手段の詳細な説明>図3は、
反射光抽出手段の構成の一例をさらに詳細にあらわした
ものである。反射光抽出手段は反射光の強度分布を捉え
るために複数の単位受光部から成っており、ひとつの単
位受光部と反射光画像の一画素が対応している。この図
では簡単のため2×2画素の構成で示す。点線で囲まれ
た部分117が一画素分であり、一画素分の概略構成を
図4に示す。先の例との対応を取ると、第1の受光手段
の一画素分と第2の受光手段の一画素分で、1つの単位
受光部を構成している。
【0040】1つの単位受光部は1つの光電変換部11
8と、2つの電荷蓄積部119、120を持っている。
光電変換部118と電荷蓄積部119、120の間には
いくつかのゲートがあり、このゲートの制御によって光
電変換部で発生した電荷を、いずれの電荷蓄積部に導く
かを選択できるようになっている。このゲートの制御信
号と発光部の発光制御信号を同期させる。
【0041】ここで、受光手段と、この受光手段で検出
された信号を増幅する増幅手段125と、セルを選択す
る選択手段1255と、前記受光手段をリセットするリ
セット手段124とを有する単位セルを行列2次元状に
配列し、受光手段はフォトダイオードで構成され、増幅
手段125は増幅トランジスタで構成され、リセット手
段はリセットトランジスタで構成され、少なくとも2つ
の記憶手段である電荷蓄積部はコンデンサで構成され、
フォトダイオードは増幅トランジスタのゲートで接続さ
れ、前記少なくとも2つのコンデンサはそれぞれの一方
の電極が増幅トランジスタに接続され、他方の電極が接
地される。
【0042】受光部におけるゲートなどの制御信号と発
光制御信号、および光の強さの時間的変化を図5に示
す。発光制御パルス128は発光手段を制御する信号で
ある。ここではパルス発光を行う。発光制御パルスのレ
ベルがHIGHのとき発光手段が発光し、LOWのとき
は発光しない。この発光制御信号に対し、実際の光は発
光素子の時間応答によってなまり、129のように変化
する。受光部には、SAMPLE1(131)、SAM
PLE2(132)、TRANSFER、RESET
(130)の制御信号が与えられる。TRANSFER
は、光電変換部で発生した電荷を次段に転送するための
ゲートを制御する信号であり、この信号がHIGHのと
き、光電変換部に蓄積された電荷が転送される。電荷蓄
積後、出力部へ電荷転送するときは、このゲートが閉
じ、光電変換部で発生した電荷が出力ゲートへ流れない
ようにする。
【0043】RESET130はリセット制御信号であ
る。TRANSFERがHIGHの時、RESETがH
IGHになると、リセットゲート124が開き、光電変
換部にたまっていた電荷は、トランスファー・ゲート1
21、リセット・ゲート124を経て、排出される。S
AMPLE1、SAMPLE2の2つの制御信号は、2
つの電荷蓄積部119、120に、光電変換部118か
らの電荷を導くためのゲート122、123を制御する
信号である。これらの制御信号の変化と、単位受光部の
動作を次に説明する。
【0044】電荷蓄積期間においては、トランスファー
・ゲート121は開き続けている。まず、リセット・ゲ
ート124を開くことにより、光電変換部118とサン
プル・ゲート122、123の間にたまった不要電荷を
排出する。リセット・ゲート124を閉じることで、光
電変換部とサンプル・ゲートの間に、光電変換されてで
きた電荷が蓄積されはじめる。一定時間の後、第1のサ
ンプル・ゲート122が開くと、蓄積されていた電荷
が、第1の電荷蓄積部119に転送される。
【0045】従って、RESET130がLOWになっ
てから、SAMPLE1(131)がLOWになるまで
の蓄積期間1に光電変換された電荷が、第1の電荷蓄積
部119に蓄積される。第1のサンプル・ゲート122
が閉じた後、再びリセット・ゲート124を開いて不要
電荷を排出した後、リセット・ゲートを閉じ、一定時間
の後に今度は第2のサンプル・ゲート123を開き、第
2の電荷蓄積部120に、光電変換で生成された電荷を
転送する。この時も同様に、RESETがLOWになっ
てからSAMPLE2がLOWになるまでの蓄積期間2
に光電変換された電荷が第2の電荷蓄積部に蓄積され
る。このとき蓄積期間1と蓄積期間2は同じ長さの時間
である。
【0046】ここで、電荷蓄積期間1においては、発光
手段105が発光しており、電荷蓄積期間2において
は、発光手段は発光しない。このことにより、第1の電
荷蓄積部119には、発光手段からの光が物体に反射し
た光と、照明光、太陽光などの外光の両方によって生成
された電荷が蓄積され、一方、第2の電荷蓄積部120
には外光のみによって生成された電荷が蓄積される。電
荷蓄積期間1と電荷蓄積期間2は時間的に近いので、こ
の間での外光の大きさの変動は十分に小さいと考えてよ
い。
【0047】従って、第1の電荷蓄積部と第2の電荷蓄
積部の、電荷量の差が、発光手段からの光が物体に反射
した光で発生した電荷量であるとみなしてよい。
【0048】上記、SAMPLE1、SAMPLE2、
RESET、TRANSFERは、すべての単位受光部
に同じ信号が与えられるため、すべての単位受光部にお
いて、同期的に電荷の蓄積が行われる。このことは、1
フレーム分の反射光画像を得るために1度の発光だけで
済むことを示している。従って、発光のための電力を小
さくすることができる。また、発光手段として用いるこ
とのできるLEDは、発光パルスのDUTY比が小さい
ほど(1つのパルス幅に比べて、パルスとパルスの間隔
が長いほど)、瞬間的には強く発光できる性質を持つた
め、発光電力を効率的に利用することができる。
【0049】電荷蓄積後、電荷の取り出しを行う。まず
V系選択回路135で1行を選択する。各行の単位受光
部から、第1の電荷蓄積部と第2の電荷蓄積部に蓄積さ
れた電荷が順に取り出され、差分回路133の中でその
差分が取り出される。H系シフトレジスタで列を選択す
ることで、取り出す。
【0050】<実施例1の変形例1>本実施例において
は、電荷の取り出し時には、シフトレジスタで取り出し
セルのアドレスを指定するため、出力の順番が決まって
いる(シーケンシャルな出力)が、任意のアドレスを生
成できるようにすればランダムアクセスが可能になる。
このようにすると、受光部全体のうち、一部分だけを取
り出すことができ、センサの動作周波数を低下させる、
あるいは、反射光画像のフレームレートを上げることが
できるなどの効果がある。例えば画像の一部しか占めな
いような小さな物体を検出して、その動きを追跡させる
ような場合は、あるフレームでの位置の周辺だけで探索
すればよいため、画像の一部だけを取り出すだけで良
い。
【0051】<実施例1の変形例2>また、発光源とし
て、近赤外光を用いたが、必ずしもこれに限定しない。
人の目に眩しくない条件でなら(例えば、発光量がそれ
ほど大きくない、人の目に直接入らない向きを向いてい
る、など)、可視光であっても良い。あるいは、光に限
らず、電磁波、超音波などを用いることも可能である。
【0052】近赤外光通過フィルタも、外光の影響を考
えなくてよいなどの条件下であれば省くこともできる。
【0053】ところで、通常の撮像用のCCDイメージ
センサを用いても、これに類することを実現することも
できるが、その性能、あるいはコストパフォーマンスに
おいて本構成の方が優れている。
【0054】例えば、CCDイメージセンサと光源を用
いることもできる。しかし、CCDは1/60秒毎に1
回の撮像しかできない(フィールド単位)。従って、は
じめの1/60秒で、発光部を発光させ、次の1/60
秒で発光部を消灯させ、その差分をとっても、1/60
秒の時間差があると、外光の大きさが変動してしまい、
差分=反射光量とならなくなってしまう。蛍光灯などは
1/100秒の周期でその強さが変動しているので、こ
のようなことが起こってしまう。CCDイメージセンサ
を使った通常の撮像においても、撮像周期と、外光の変
動周期のずれに起因して、画面の明るさがちらつく現象
がおきることがあり、これはフリッカと呼ばれている。
【0055】本構成においては、発光時間と消灯時間の
差が1/10000秒程度、あるいはそれ以下まで小さ
くすることができるので、外光の変動の影響を受けなく
て済む。CCDイメージセンサによる撮像の場合、フリ
ッカを防ぐために、電荷蓄積時間を1/100秒と蛍光
灯の周期と一致させる方法が取られることがあるが、発
光部と同期させる場合においても、電荷蓄積時間を1/
100秒にする、あるいはCCDの駆動信号を変えてし
まい、1フィールドを1/100秒にしてしまう、とい
うような方法により、外光の影響を抑えることもでき
る。この場合は別の問題が発生する。対象物体である手
が動いている場合、発光時の撮像と消灯時の撮像におい
て手の位置が微妙にずれてしまう。この状態で差分を取
ってしまうと、特に物体(手)のエッジ部分において、
反射光画像が大きく乱れてしまう。
【0056】また、構成のコンパクトさでも大きく異な
る。CCDを用いる場合、少なくとも、A/D変換器
と、1フレーム分のデータを蓄えるメモリ、差分画像を
求める演算回路が必要である。またCCDを用いる場合
には、ドライバーICを別に用意する必要がある。一
方、本構成では、CMOSセンサベースに作られるの
で、ドライバーを同一チップ内に収めてしまうことがで
きる。
【0057】また、センサ内で発光時、非発光時の差を
とれるので、差分演算回路は不要である。また、A/D
変換部やメモリ、制御部まで1チップ内に収めてしまう
こともできるので、非常に低コスト化できる。
【0058】ここまでの説明では、物体の反射光画像を
入力するところまでの構成を述べた。ここまでの構成で
も十分新規性があり、製品として構成できる。しかし、
実際の利用形態としては、入力された反射光画像に何ら
かの加工を施して、使用者の目的に合った使い方をする
ことが多い。例えば、手の反射光画像を入力することに
より、ポインティングやジェスチャー入力を行うことが
出来る。
【0059】このために反射光画像から有用な情報を抽
出するのが、特徴情報生成手段である。ここで、さまざ
まな特徴量を抽出したり、加工したり、そこから別の情
報を生成したりしている。
【0060】反射光画像の加工の仕方の代表例は、距離
情報の抽出と、領域抽出である。先にも述べたように、
物体が一様で均質な散乱面を持つ物体であれば、反射光
画像は距離画像と見なすことができる。従って、物体の
立体形状を抽出することができる。物体が手であれば、
手のひらの傾きなどが検出できる。手のひらの傾きは部
分的な距離の違いとして現れる。また、手を移動させた
ときに画素値が変われば、距離が移動したと見ることが
できる。また、背景のように遠い物体からの反射光はほ
とんどないため、反射光画像からあるしきい値以上の領
域を切り出すという処理で、物体の形状を簡単に切り出
すことができる。例えば、物体が手であれば、そのシル
エット像を切り出すのは極めて容易である。距離情報を
用いる場合でも、一度しきい値によって領域抽出をして
おいてから、その領域内の距離情報を用いる、という場
合が多い。
【0061】<実施例1の効果>第1の実施例によれ
ば、手などの反射画像を容易にかつ実時間で獲得でき
る。これは、従来の画像処理で最も難しく、画像処理の
応用の障壁になっていた対象物の画像の切り出しの処理
を不要とするものである。従って、本実施例により、従
来実用化が困難であった種々の画像処理を容易でかつ安
定、かつ安価なコストでの提供を可能とするものであ
り、産業/家庭/娯楽など広範囲の市場に大きな変革を
もたらすものである。
【0062】(実施例2)以下では、特徴情報生成手段
に特徴を持ついくつかの実施例について説明する。対象
物体として手を用いた場合、非接触で手の位置・形の情
報を捉えることができるので、人から機械への入力手段
として用いることができる。従来、マウスやトラックボ
ールなどのポインティングデバイスと呼ばれる装置を用
いて行っていたポインティング操作(位置を入力する操
作)を、手の動きだけで非接触で行うことができる。第
2の実施例として、非接触ポインティングを実現するた
めの装置について説明する。
【0063】まず非接触なポインティングに用いる例を
説明する。手の形状が容易に検出できるため、非接触の
ポインティングデバイスとして利用することができる。
携帯情報機器などに好適なポインティング手段を提供す
る。ユーザは指を伸ばした状態で入力装置の前に手を差
し出して動かす。これは非常に自然な動作である。この
とき反射光画像は図6左のようになる。この反射光画像
から画像処理によって指先位置を検出し、ポインティン
グに利用する。
【0064】伸ばした指部分は上向きの棒状物体となっ
ているから、この先端の座標を画像処理で求めることは
それほど難しくない。しかし、単純に棒状先端の座標を
求めるだけでは、反射光画像の解像度の精度でしか指先
位置を求めることは出来ない。
【0065】一般に反射光抽出手段は、必要とされる画
素数が少ないほど低コストで作ることができる。粗い反
射光画像から高精度に指先位置が求められれば、低コス
トに非接触ポインティング装置を作ることができる。指
先端の座標ではなくて、図7の×印208の位置を画素
以上の分解像で求め、これを特徴点としてポインティン
グに用いる。これは指先の一部分の(像の)重心であ
る。この重心を粗い反射受光画像からどのように抽出す
るかを説明する。
【0066】この反射光画像の画素値に注目してみる。
先に、画素値は距離情報に換算できると述べた。しか
し、反射光画像の解像度が粗い場合、手の周辺部におい
てはこの考えは必ずしも当てはまらない。いま、反射光
画像の画素と、対象空間の関係が図8のようになってい
ると考える。ここで、図8の1マスからの反射光が反射
光画像のひとつの画素の画素値に対応する。この図か
ら、マス211からの反射光に比べてマス212からの
反射光は半分程度であることが分かる。同じ距離に対象
が存在していても、そのマスを対象が占める割合によっ
て、反射光量が変わる。
【0067】つまり、ここでは、反射光量の減りかた
が、手のエッジの位置を反映する。ここで、指の位置が
わずかに移動したと考えてみる。すると、マスに占める
指の割合が変化するので、画素値がわずかに変化する。
反射光画像が粗くても、画素値がある程度の精度で求め
られ、これを用いることにより、画像以上の解像度でポ
インティング位置を求めることが出来る。伸ばした指の
幅が2〜3画素分程度あればかなり良好にポインティン
グ精度が出せることが実験的に分かっている。粗い画像
から高い精度の指先位置を求める方法について以下で詳
しく説明する。
【0068】第2の実施例を実現するための特徴情報生
成手段の構成例を図9に示す。特徴情報生成手段は、棒
状物体検出部213、棒状物体先端切り出し部214お
よび重心検出部215から構成される。
【0069】棒状物体検出部213では、縦方向に伸び
た棒状の物体、すなわち操作者の手の中で上方に伸びた
指(例えば人差し指)を検出する。
【0070】次に、棒状物体先端切り出し部214で
は、縦方向に伸びた棒状の物体(人差し指)の上部先端
を切り出し、後の重心検出部215でその切り出した部
分の重心を求める。この時、画素単位で切り出してしま
うと、画素が粗いため切り出し部分の画素値合計が大き
く変動してしまい、検出された重心の精度が悪くなる
(これについては後述する)。従って、棒状物体先端切
り出し部213では、切り出し部分の画素値合計がある
条件を満足するように一部画素値を修正しながら切り出
す。
【0071】重心検出部215は上記棒状物体先端切り
出し部214で切り出された先端部分の重心を計算す
る。この計算された重心を、指先位置とする。
【0072】さらに各部について詳しく説明する。ま
ず、棒状物体検出部213について述べる。ここでは、
使用者が操作をするために指を出したとき、指示する指
(通常は人差し指)が、反射受光画像の上方向に伸びて
いる、と仮定している。従って、この仮定に合わない形
状で手を出すと(例えば、グーで差すなど)正常に検出
できない恐れはある。
【0073】まず、反射受光画像201を、上方から水
平方向にスキャンしていく。指先が、反射受光画像の上
端になければ、通常は上の方は、1ライン全ての画素が
ほぼ0に近い画素値を持つ(202〜203)。水平方
向の1ラインの中で、部分的に画素値が大きくなるとこ
ろがあった場合(204)、その位置とラインを覚えて
おく。これを数ライン繰り返し(205〜207)、部
分的に画素値が大きくなるところが数ラインの中で一致
すれば、そこに縦方向に伸びた棒状の物体(例えば、人
差し指)があると判定できる。そして、伸ばした指があ
りそうな所を、大きめに囲う。この部分画像について、
さらに以下の処理を行う。
【0074】ここからは、棒状物体先端切り出し部21
4での処理である。図10の216がもともとの反射受
光画像であり、217は棒状物体検出部213で、この
中に指先があると判定された部分画像である。
【0075】一番左上の画素値をP(1,1)とし右上
をP(n,1)、左下をP(1,n)、右下をP(n,
n)とする。ここで、あるしきい値THを設定してお
き、
【数1】 となるような、k、aを求める。次にaを用いて、P
(1,k)〜P(n,k)の画素値を修正する。すなわ
ち、古い画素値をP’(1,k)〜P’(n,k)とし
たとき、
【数2】 とする。この修正されたP(1,k)〜P(n,k)を
含む、P(1,1)〜P(n,k)が切り出された部分
218となる。218の上部3行は217の上部3行と
同じであり、218の最下行(太い枠で囲まれたとこ
ろ)は217の4行目のそれぞれの画素値にaを乗じて
修正されているので、色が薄くなっている。
【0076】次に重心検出部215において、切り出さ
れたP(1,1)〜P(n,k)を使って、重心(x
x,yy)は次の式を満たすように決定される。
【数3】
【数4】 ここで求められた(xx,yy)は、図8の伸ばした指
のうち上方からある長さだけ切り取ったもの(切り取る
長さがしきい値THと関連する)の像の重心とほぼ一致
する。ここでは通常のTV画像に比べて画素が粗いた
め、切り取る長さを一定に保つのと同じ効果を出すため
に、上記のような修正を行っている。ここでは、各画素
の値P(x,y)が精度良く求まるほど、(xx,y
y)の値も精度良く求められる。
【0077】ここで、P(1,k)〜P(n,k)の値
を上のように修正した理由を述べる。もし、P(1,
k)〜P(n,k)の値を修正しないで、(xx,y
y)を計算した場合を図11を用いて考察する。ここ
で、仮に水平ラインで一部だけ大きい画素値が現れると
ころから、3画素分下がったところまで(斜線部分)を
用いた重心計算で指位置を決定すると、指が図11
(a)から図11(b)のように移動したとき、指の位
置変化に比べて、(xx,yy)の位置の変化が大きく
なってしまう。
【0078】逆に図11(c)から図11(d)のよう
に変化すると、指の位置変化に比べて(xx,yy)の
位置の変化が小さくなってしまう。つまり、実際の指の
位置と計算された(xx,yy)の値に、線形性がなく
なってしまう。
【0079】上述のように、まず重心を計算するときの
全画素の画素値の合計が一定になるように補正をしてか
ら重心の計算をすれば、指の動きと重心の動きは滑らか
に連動する。伸ばした指の幅が2〜3画素分程度あれば
十分なポインティング精度が出せると前述したが、逆に
指の幅が一画素に満たない場合は、十分な精度が出な
い。これは図12の場合であるが、指先がわずかに動い
ても重心のx座標が変化しないことがある。つまり、実
際の指の位置と(xx,yy)の値に線形性がなくなっ
てしまう。
【0080】次に、デジタル信号処理部における処理の
流れを図13〜図15に示したフローチャートを用いて
説明する。ここでは、上で述べたよりもやや細かい工夫
が施されているところもあるが、それらも含めて以下で
説明する。このフローチャートをそのままプログラムに
すれば、デジタル信号処理部をソフトウエアで実現する
ことができる。もちろん、ハードウエアで構成すること
も可能であるし、ソフトウエア、ハードウエア両方で構
成されることもあり得る。
【0081】また、この場合ソフトウエアはFD等の記
録媒体に記録されてなり、配布できるような状態になっ
ていることもある。
【0082】図13は棒状物体検出部の処理を表してい
る。ここでは既に述べたように、反射受光画像を水平方
向にスキャンしながら、部分的に画素値が大きくなると
ころを見つけ、これが複数ラインで、近い位置に現れる
と、棒状物体があると判断する。この部分的に画素値が
大きくなるところ(以下で部分画素列と呼ぶ)、および
部分画素列の複数の集まりで、まだ棒状物体とは判断さ
れてはいないが棒状物体になる可能性のあるものを棒状
物体候補と呼ぶ。水平方向にスキャンしていくと、棒状
物体候補が見つかり、スキャンが進むにつれその中から
棒状物体が検出される。
【0083】具体的には、まずこの棒状物体候補の情報
を格納しておく構造体を複数用意する(220)。ここ
では構造体名はinfoStick[n]とする
([n]がついているのは複数あるから)。複数用意す
るのは、棒状物体候補は必ずしも1つではなく複数現れ
る可能性もあるからである。この構造体は5つのメンバ
ーを持ち、そのうち2つは配列である。図15の235
にも示すように、メンバーは、 ystart:棒状物体が始まったラインのy座標、 xstart[i]:棒状物体候補の上からiライン目
(最上段は0ライン)の部分画素列の始まりのx座標、 xend[i]:棒状物体候補の上からiライン目(最
上段は0ライン)の部分画素列の終わりのx座標、 length:棒状物体候補の縦方向の長さ(部分画素
列の数)、 status:現在の状態(STICK、NOSTIC
K、EXTENDEDの3つの値を取る。詳細は後
述。)、 をそれぞれ表す。始まりのx座標、終わりのx座標は、
複数のラインにそれぞれあるので、これらは配列となっ
ている。
【0084】以下で処理を説明していくが、わかりやす
いように図15を併用しながら述べる。234は反射受
光画像を表しており、各画素の色の濃さは画素値の大き
さを表している。また上部と左部の数字はそれぞれx座
標、y座標を示している。235には前述の構造体の概
要を表す。右側の236〜238は処理の途中での構造
体の内容である。
【0085】水平ラインをスキャンしていき、条件を満
たす(ここでは、画素値がs以上の画素が、c個以上連
続しない)部分画素列が見つかると(221)、これま
での棒状物体候補に統合するか(226)、新規に棒状
物体候補にする(225)。1番始めに見つかった部分
画素列は必ず新規棒状物体候補になる。例えば、図15
では、y=3のラインをスキャンしているときに、始め
て部分画素列が見つかり、これを新規棒状物体候補とし
て登録する(236)。このラインのy座標、すなわち
3をinfoStick[0].ystartに入れ
る。部分画素列の長さは1なので、infoStick
[0].xstart[0]、infoStick
[0].xend[0]ともに6を代入する。新規なの
で、infoStick[0].lengthは1と
し、infoStick[0].statusにはEX
TENDEDを格納する(新規登録でもEXTENDE
Dを使う。理由は後述する)。
【0086】y=4のラインのスキャンで見つかった部
分画素列は今度は、既にある棒状物体候補とつながる。
つながるかどうかの判断は、棒状物体候補の最後のライ
ンの部分画素列と新たな部分画素列のx方向の位置関係
で決める。この場合は infoStick[0].xstart[0]=6 infoStick[0].xend[0]=6 であり、新たな部分画素列のx座標は5〜7なので、こ
れらはつながっていると判断する。すると、新たな部分
画素列につながっていると判断された棒状物体候補の情
報を更新する(237)。
【0087】新たな部分画素列の(x方向の)位置を下
式で代入し、 infoStick[0].xstart[1]=5 infoStick[0].xend[1]=7 棒状物体候補の長さを1増やす。 infoStick[0].length=2 さらに、y=5のラインで見つかった部分画素列を先の
棒状物体候補にさらにつなげると、238のようにな
る。ここでdを3とすると、227の条件式が成り立
ち、棒状物体が決定され、次の処理へ移る(228)。
この条件が満たされるまで繰り返され、条件が満たされ
る前に1画面分のスキャンが終了してしまったら、棒状
物体は検出できなかったことになる。
【0088】上の説明では、infoStick
[n].statusの使い方の説明が不十分なので、
次にこれについて説明する。これは、STICK、NO
STICK、EXTENDEDの3つの値を取りうる。
NOSTICKは、その構造体が棒状物体候補でないこ
とを表す(つまり、一番はじめは全ての構造体のsta
tusメンバーはNOSTICKになっている)。
【0089】STICKはその構造体が棒状物体候補で
あることを表す。EXTENDEDの場合も棒状物体候
補であるがこの値の用い方は少し異なる。新たな水平ラ
インのスキャンを始めるとき、全ての棒状物体候補はS
TICKを持つ。1ラインのスキャンの中で新たに見つ
けられた部分画素列とつながった棒状物体候補はEXT
ENDEDに変わる。1ラインのスキャンが終了したと
き、まだSTICKになったままの棒状物体候補は、そ
のライン上のどの部分画素列ともつながっていないこと
になり、棒状物体候補でなくなったと考える。
【0090】従って、1ラインのスキャンが終わると、
STICKになったままの棒状物体候補はNOSTIC
Kに変え、EXTENDEDを持つ棒状物体候補だけに
再びSTICKを与える。この処理により図16の23
9のように、浮いた部分画素列(ノイズである場合も考
えられる)は、いったんは棒状物体候補としてinfo
Stick[0]に登録されるが(34)、画素列がと
ぎれた時点で棒状物体候補から外される(35、実際に
は222の処理で削除される)。本来の指先部分はin
foStick[1]で登録されている。棒状物体候補
から外すためにstatusをNOSTICKに変えて
いるだけである。
【0091】これで次のスキャン時の224での判断時
には、STICKを持つ構造体だけを見るので、NOS
TICKになった構造体は無視される。またこのように
一度使われた構造体も、NOSTICKになれば、再び
新規棒状物体の登録に用いることができメモリを節約で
きる。このような処理を行うことでノイズから受ける影
響を少なくすることができる。
【0092】224においては、STICKを持つ構造
体に対してだけ、つながるかどうかの判断を行う。ま
た、新規棒状物体候補を登録するときにはNOSTIC
Kを持つ構造体を探し、そこに新しい情報を格納する。
【0093】図14は棒状物体先端切り出し部、および
重心検出部の処理を表す。図13の227での条件が満
たされると、図14の229に処理が移る。230で
は、棒状物体の先端を切り出すためのパラメータTHを
求めている。このしきい値は固定でも良いが、230の
ように棒状物体の先端部の大きさや画素値によって決め
ても良い。ここで挙げた式を用いると、指の太さが違っ
たり、距離が違ったりして、画素値が変動しても、切り
出した先端部の縦横方向の長さの差がそれ程大きくなら
ない。棒の太さ(1ラインの画素値合計。0ライン目は
先端なので太さを表さないことが多いので計算から除
く)と一画素の最大値との比を求めて、TH(切り出し
部分の全画素値合計)と最大画素値の比がこれの2乗に
なるようにしている。これ以外の計算方法でTHを求め
ることも可能である。
【0094】231では、230で求められたTHを用
いて、[数1]で述べたa、kを求める。[数1]では
矩形領域で計算しているが、ここでは、各ラインの部分
画素列だけを用いて計算している。これにより、矩形内
の棒状物体と関係のないところにノイズがあるような場
合の影響を小さくできる(例えば図17のように指が斜
め方向を向いているとき、244のようなノイズの影響
を受けない)。231で求めたaをkライン目の各画素
値に乗ずる。230から232までの処理が棒状物体先
端切り出し部である。a、kと修正された画素値を用い
て、233において重心を計算する。
【0095】基本的には、kライン目までの部分画素列
の中の、各画素値とx座標の積を全て足してTH(これ
は各画素値の合計に等しい)で割ったものが重心のx座
標であり、各画素値とy座標の積を全て足してTH(こ
れは各画素値の合計に等しい)で割ったものが重心のy
座標である。ここでは、xsum[i]が分かっている
ので、これにy座標(infoStick[n].ys
tart+i)を掛けたものの積をTHで割って重心の
y座標を求めている(もちろん、xsum[k]は修正
された画素値で再計算される)。xpsum[i]はi
ライン目の部分画素列の各画素値とそのx座標の積を全
て足したものであり、233に示した式で重心のx座標
が求められる。
【0096】これまでは、指先をセンサ受光系の光軸に
垂直な方向に伸ばしたときの画像と、その処理方法につ
いて述べた。実際の使用においては指をセンサの光軸方
向に向けることも少なくない。次に、センサに向かって
のされた指先の位置を求める方法について述べる。
【0097】光軸方向に(センサに向かって)指を伸ば
した場合の反射光画像は図18のようになる。指先に相
当する部分の画素値が急激に大きくなっている。この図
でも、色が黒いほど画素値が大きいとする。ここで、画
素値の極大点だけを見つけて、これをポインティング位
置としてもよい。このための演算処理は非常に簡単であ
る。しかし、この方法だと、画像の解像度以上の精度で
指先位置を求めることはできない。先の上方へ(光軸方
向に垂直な方向へ)指を伸ばした場合と同様に、画像の
解像度以上で指先位置を求める方法について述べる。
【0098】まず、画素値が最も大きい点を見つける。
これは画素値の比較だけなので簡単にできる。そして、
この画素の近傍小領域をΓとしたとき、指先位置の座標
を次式で決定する。
【数5】 これは、小領域における画素の重心と考えてよい。近傍
小領域Γとしては、3×3とか5×5とかの矩形領域に
設定するのが一般的であるが、これに限らない。もちろ
ん矩形でなくてもよい。このような式を用いることによ
って、画素の最大点だけでなくその周辺の画素を考慮す
ることになる。指先位置が微妙に変化した状態を考えて
みる(図19(a)→図19(b))。太線で囲まれた
部分が小領域Γである。変化が微少であるので、最大点
246の座標は変わらない。
【0099】しかし、その周辺画素の画素値が、例えば
一方の側が周辺画素の値が少し大きくなり(247)、
もう一方が少し小さくなる(248)、というように変
化する。この変化は上式を用いることによって反映さ
れ、×印で示した重心位置がわずかに変化しているよう
に、反射光画像の解像度以上の指先位置検出が可能とな
る。
【0100】この位置を計算する式は、上に示したもの
に限らない。例えば次式のようなものも使える。
【数6】 ここで、Pminは小領域Γにおける、最小画素値であ
る。これによる効果は次のようなものである。
【0101】指先が動いて反射光画像の一部分が図20
(a)〜(c)のように変化したとする。太線で囲まれ
た領域が小領域Γである。小領域の中の×印は[数5]
によって計算された重心位置である。
【0102】図20(a)から図20(b)の変化にお
いては、指先が少し向かって右の方へ動いている。これ
にしたがって画素249の値が少し小さくなり、画素2
50の値が少し大きくなった。重心位置(×印)は、や
や右方向に移動した。この場合には指の移動に従って重
心位置も変化している。
【0103】図20(b)から図20(c)の変化にお
いては、最大画素の座標が変わるので、小領域Γの位置
が変わっている。いま最大画素位置が変わる直前直後の
状態を考えてみる。この時、図20(b)における、画
素249と画素250はその値はほとんど同じである。
【0104】それにもかかわらず[数5]を用いた場合
は、その周りの画素の重みで、重心位置は画素249と
250の中点よりも、中心側(左側)にずれる。
【0105】一方、最大画素位置が変わった直後も、画
素249と250の値はほとんど同じであるが、やはり
周りの画素の重みで、重心位置は中心側(右側)にずれ
る。このことは、最大画素位置が変わる前後において、
重心位置が滑らかに移動しないことを表す。
【0106】別の言い方をすると、画素249と250
のちょうど中点のあたりをポイントすることが難しいと
いうことになる。[数6]を用いた場合は、小領域内の
全画素からその小領域内の最小画素値を引いているた
め、周辺画素による影響が少なく、最大画素位置が変化
する直前直後においては、重心位置は、この2つの点の
中点付近に存在するようになる。
【0107】ポインティング位置計算においてどちらの
式を用いるかは、一画素の占める領域の大きさと指の大
きさの関係、求められるポインティング位置の精度、な
どによって決定される。一画素の占める領域が小さい場
合(反射光画像の解像度が比較的高いとき)、あるいは
要求精度が低い場合は、重心計算はそれほど重要ではな
い。
【0108】また、ポインティング位置にヒステリシス
特性を持たせることによって、より良好にポインティン
グが行えるようにすることも出来る。例えば、小数点以
下第2位を四捨五入して0.1画素単位で(この画素は
反射光画像の画素)ポインティング位置を求める場合、
10.05近くの座標値が得られる場合、四捨五入によ
って10.0と10.1の値が不安定に交互に現れてし
まう。
【0109】カーソルを表示したときはそのカーソルが
ばたついてしまう。計算された座標値の変化が小さい場
合は、大きくなるときは少数点以下第2位が0.07を
越えたとき、0.1増加させ、小さくなっているときは
少数点以下第2位が0.03を割ったとき、0.1減少
させる、といったヒステリシス特性を持たせることによ
って、不安定にポインティング座標が求められてしまう
のを防ぐことが出来る。
【0110】小領域内の画素値の最大値が、指先の距離
を反映しているので、これを用いて3次元ポインティン
グを行うことが可能である。また先の例のように、指で
押すという動作を奥行き方向の動きとして捕らえれば、
クリックを実現することが出来る。
【0111】以上で、指が上方(受光系の光軸と垂直な
方向)に伸びているときと手前(受光系の方)に伸びて
いるときの2つの場合について、指先位置を反射光画像
の解像度より高い精度で検出する方法について説明し
た。実際の使用においては、指の伸びる方向はどちらか
に決められないことが多い。使う人によって指を伸ばす
向きが異なるし、また同じ人が使っていても場合によっ
て向きが変わってしまうことはよくある。
【0112】従って、いま指がどちらに向かって伸びて
いるのかを判断して、それに応じた検出方法を用いるこ
とによって、どちらの方向を指が向いていても指先位置
を安定して求められるようになる。
【0113】以上で求められた指先位置を使って、画面
のカーソルを制御する。指先位置と画面内のカーソル位
置を対応づけておけば、指を差し出したときその場所に
対応した場所にカーソルが表示される。また指を動かせ
ばカーソルも動く。指を引っ込めれば、カーソルは消え
る。ただこれだけでは、マウスのボタンに対応するもの
がない。
【0114】マウスのボタンを押す(クリックする)代
わりにここでは、カーソルを静止させる。図21の構成
でこれらを実現することができる。指先位置検出手段2
51はこれまでに説明してきたように、反射光画像の解
像度より高い精度で指先の位置を求める。カーソル位置
決定手段252は、この指位置をもとにカーソルを表示
する位置を決定する。一番単純な方法は、指先位置とカ
ーソル位置を1対1に対応させるものである。
【0115】しかし、求められた指先位置には、ノイズ
が含まれていたり、人の手の微少な振動が含まれるの
で、単純に指先位置からカーソル位置を一意に決めてし
まうと、カーソルが微少に振動してしまう。微少振動し
ない程度に量子化してしまうこともできるが、その場合
精度が落ちてしまう。過去数フレームにおける指先位置
を用いて、ローパスフィルタをかけると、微少な振動が
抑えられる。
【0116】例えば、最新の指先位置を(x0,y0)
として、nフレーム前の指先位置を(xn,yn)とす
ると、
【数7】 によって、カーソル位置(x,y)を決定する。ここで
kは何フレーム前までの指先位置を考慮に入れるかを表
し、これが大きすぎると、指の動きに対してカーソルの
動きが遅れて反応するようになる。またaiは過去の各
位置に対する重みづけである。
【0117】また、ある時点でカーソル位置を決定した
後、新しい位置が元の位置からある決められた距離以上
離れるまでは、元の位置を静止させたままにしておく、
という処理も考えられる。これによって、微少な変動が
あってもカーソル位置は全く変化せず、指を大きく動か
したときだけカーソルが動く。
【0118】また、微少に変動するときは動く方向が定
まらないことを利用して、同一方向にある回数以上動く
まではカーソルを静止させておき、それ以上同じ方向に
変化したら、カーソル位置を更新する、という方法もあ
る。
【0119】カーソル表示部253は、カーソル位置決
定手段252によって決められたカーソル位置に従っ
て、画面上にカーソルを表示する。カーソル静止状態検
出手段は、カーソル位置の時間的な変化を監視してお
り、決められた時間以上静止状態にある(あるいは動き
が少ない)ことを検出したら、クリック信号255を発
生させる。この構成により、指先でカーソルを動かし、
静止させることによってクリック動作をさせることがで
きる。
【0120】マウスなどを用いる場合は、クリック動作
はボタンを押すなどして操作者が明示的に行う。しか
し、カーソルを静止させることによりクリック信号が発
生するようにすると、操作者が気付かない間にクリック
していることもある。このことが不都合を生じる場合も
ある。カーソル表示部がクリック信号の発生を監視して
いて、クリック信号があったときカーソルの形状を変化
させるようにすると、操作者にクリックが起こったこと
をフィードバックすることができる。
【0121】プルダウンメニューの中から1つを選択す
る作業を考えてみる。まず指を差し出すことでカーソル
が現れるので、まず操作者は指を動かして、カーソルを
メニューの項目の所へ動かす。カーソルをメニュー項目
の上に移動させて一定時間静止させると、プルダウンメ
ニューが現れる。ここでさらに指を下方に動かすと、メ
ニューを反転させながらカーソルが動く。希望のメニュ
ーの所でまたカーソルを静止させると、そのメニューコ
マンドが起動される。マウスなどを用いるときはマウス
を操作していないときは常にカーソルは静止しているた
め、この方法では誤操作が多いように一見思えるかもし
れない。
【0122】しかし、本実施例においては、指を差し出
してないときはカーソルは現れていないし、指を出すと
きは「あのメニューを選択しよう」等目的を持っている
ため、目標の場所にカーソルが到達する前にカーソルが
静止することはあまりない。従って、本実施例において
は、カーソルを静止させることでクリック動作を代用す
ることは自然である。
【0123】上の例では指先の画像から、その先端部分
を切り出し、その重心を求めただけであった。これによ
り2次元的なポインティング、例えば、コンピュータ画
面上のポインティングが実現できた。ここでは、さらに
奥行き方向の動き(受光系に近づく/遠ざかる)を反映
した特徴量を捕らえ、2次元情報+αあるいは3次元情
報を入力することができる。
【0124】例えば、奥行き方向の動きを監視してお
き、ボタンを押すように、「少し近づいて少し戻る」と
いう動きを検出した場合に、マウスのクリックに対応す
る信号を発生させることができる。これにより、指でカ
ーソルを動かし、「押す」動作をすることで、メニュー
を選択をさせたりすることができる。また、厳密に指ま
での距離を入力することはできないが、相対的に「近づ
いた」「遠ざかった」という検出はできるので、表示で
のフィードバックと組み合わせれば3次元位置情報を入
力することができる。
【0125】指が上方に伸びている場合、指が奥行き方
向に動くと、指からの反射光を受光している受光素子の
受光量が増減する。また1つの受光素子の出力だけでな
く、指の占める画素の数も増える。近づいてくると、伸
ばした指の幅が、例えば1.5画素分→2画素分というよ
うに大きくなる。先の実施例で、棒状物体検出をする際
に、水平ラインを走査し、同じ位置に部分画素があるラ
インが続いたとき、棒状物体があると判定した。ここで
1ラインでの部分画素の画素値合計が距離に対応する量
として利用できる。
【0126】指が手前に伸びている場合は、前述の小領
域Γの中の画素値合計が、距離に対応する量として用い
ることができる。
【0127】また、距離情報を抽出するだけでなく、適
切な小領域の大きさを決定するための情報として利用す
ることができる。例えば、小領域Γに対して、指先が大
きすぎる場合、小領域Γの中のすべての画素が同じ程度
に高い値を持つ。このような場合、最大点の候補がたく
さんあり、最大点位置が安定的に求まらないため、小領
域を大きくする。
【0128】また、このような場合、最大点を単純に小
領域Γの中心にするのではなく、ある値以上の画素の固
まりの中心をΓの中心と一致させ、ある値よりも小さい
画素が周辺に入る程度にΓのサイズを大きくする。
【0129】「押す」だけでなく、様々な指先のジェス
チャーをコマンドとして利用することも効果的である。
図22の構成により、操作者の指の動きを認識して入力
情報として利用することができる。例えばあるアイコン
の上にカーソルを移動させて、チェックマークの形
「〓」に指を動かすと、そのアイコンに関連づけられた
コマンドが起動する、円を描くとその中のオブジェクト
が選択される等、といった具合に利用することができ
る。カーソルまたは指先位置動き検出手段256が、指
先あるいはカーソルの動きを監視しており、あらかじめ
登録された動きが合った場合にそれに対応するコマンド
やクリック信号257を出力する。
【0130】カーソル位置とボタンの状態とを関連づけ
て、入力情報とする実施例について説明する。例えば、
指を動かしてカーソルをあるメニューの上に動かしたと
ころで、ボタンを押すとメニューが選択される、また
は、あるアイコンの上でボタンを押したまま、さらに指
を動かすとアイコンを移動できるなど、マウスのボタン
の同じように用いてクリックやドラッグなどの操作がで
きるようになる。ボタンは操作者の画面を差している手
と反対の手で押しやすい所に配置されているのが望まし
い。
【0131】これにより、指を静止させたり、「押す」
動作をさせるよりは、高速にクリック操作などをするこ
とができる。また、操作したという確実な実感を操作者
に与えることもできる。これは、両手が自由に使えるよ
うな場合に有効である。逆に腕時計型の超小型携帯情報
機器を左腕に装着して右手でカーソル操作したり、小型
の携帯端末を左手に持って右手でカーソル操作するよう
な場合は、片手でクリック操作ができる方が望ましい。 (実施例2の効果)第2の実施例によれば、装着物なし
にポインティングが行えるので、ユーザへの負担を大き
く軽減できる。
【0132】(実施例3)第3の実施例は手振りなどを
簡易に認識するジェスチャカメラとそれを3次元空間で
のポインティングデバイスとして応用した場合の実施例
である。以下、図面に沿って本実施例の動作について説
明する。
【0133】図23は図1の特徴情報生成手段の第3の
実施例における概略構成を示したものである。反射光抽
出手段が抽出した距離情報を、例えば、図24のよう
に、N×Nの行列の形式で記憶する距離画像記憶手段3
31と、形状記憶手段332に記憶された形状解釈規則
をもとに、距離画像記憶手段331に記憶された距離行
列の形状を解釈する形状解釈手段332とから構成され
ている。
【0134】図25は、図23の構成での、特徴情報生
成手段における形状認識処理の流れを示す。
【0135】まず、反射光抽出手段102で、抽出され
た距離画像は、例えば、256階調で距離画像記憶手段
331に書き込まれる(ステップ401)。
【0136】書き込まれた距離画像は、例えば、図24
のようなN×N(Nは例えば、16)の行列として、形
状解釈手段333に読み込まれる(ステップ402)。
【0137】形状解釈手段333では、あらかじめ設定
されている閾値を元に、読みとった閾値に達しているセ
ルのみを距離行列より、抽出する処理を行う(ステップ
403)。さらに、ステップ404でのマッチングに必
要な処理もここで行う。マッチングの手法にはいろいろ
ある。例えば、画像からベクトルを抽出するベクトル化
とか形状モデルに基づいた形状の変形状態の抽出とか、
走査線上の距離値に基づいたスペクトル解析などであ
る。
【0138】ここでは、説明を容易にするために、形状
を矩形に分割し、その矩形をもとに、マッチングを行う
方法で、動作を説明する。
【0139】例えば、図24(a),図24(b),図
24(c)はそれぞれ、人差し指を上向きに、右向き
に、斜め上向きに向けた時の距離画像である。この距離
画像に対し、最も強度の強いセル(図中では、色が濃い
ほど強度が強い)の中点を結んで、矩形を作る。その結
果は、図24(a),図24(b),図24(c)に対
して、それぞれ図24(d),図24(e),図24
(f)のようになる。
【0140】その結果、作成された正規化された距離行
列をもとに、ここでは例えば、図24(d),図24
(e),図24(f)のように、矩形に切り出され、ス
テップ404にて、形状記憶手段332に記憶されてい
る形状とのマッチングを行う。
【0141】図26は形状記憶手段332に記憶されて
いる形状解釈規則の一例である。例えば、図24
(a)、図24(b),図24(c)では、矩形は一つ
であるので、最初の規則1にマッチする。規則1のマッ
チング結果は、ポインティングであるので、次にポイン
ティング規則に対して、マッチングを行う。ポインティ
ング規則では、まず縦横チェックを行う。
【0142】図24(a)では、縦/横が1より大きい
という規則にマッチする。その結果、傾きチェック2に
行く。傾きチェック2では、傾きがほぼ0であり、距離
の近い部分(色の濃い部分)が上方にある、つまり、重
心が上にあるので、最初の規則にマッチし、その結果、
上方に旋回という指示という結果になる。適合した形状
があれば、その形状に対応した指示を出力する(ステッ
プ405)。
【0143】もし、適合する形状がなければ、閾値を変
更して(ステップ406)、再度、マッチング処理をや
り直す。
【0144】3次元空間でのポインティングデバイスと
して用いる場合には、奥行き座標が必要である。図27
は、3次元ポインティングデバイスとして、指を用いる
ときの距離行列を示している。図27(a)は、人差し
指がのび、他の指は曲がっている状態図27(a)と図
27(b)は手振りとしては、同一であるが、最も近傍
の部分の距離が図27(a)より図27(b)の方が近
づいている。図26の形状解釈規則から、図27
(a),図27(b)ともに、規則1にマッチし、さら
に、縦横チェックで、縦/横はほとんど1であるので、
最初の規則にマッチする。ここで、オブジェクト選定/
前進となっている。
【0145】2次元空間では、画面に向かって、さらに
前進することはできないので、オブジェクト選定が指示
となる。オブジェクト選定は、例えば、図27(a)か
ら図27(b)への遷移時間が一定以上であれば、カー
ソルがあるオブジェクトが選定されたと解釈する。
【0146】3次元空間の場合は、奥行き方向への前進
が可能であるので、オブジェクト選定あるいは、前進が
指示となる。オブジェクト選定の場合は、2次元の場合
と同様に、図27(a)から図27(b)への遷移時間
で判定する。
【0147】一方、前進の場合には、図27(a)から
図27(b)で、距離が近づいているので、前進速度を
速くするなどの調整を行うことがきでる。あるいは、図
27(a)の状態では、実際の前進は行わず、次の手振
りが図27(b)であったときに、その近づいた距離分
だけ前進するようにする。そのようにすれば、実際に視
点が指先にあるように、視点を制御できるので、自然な
操作を行える。
【0148】(実施例3の効果)従来は、データグロー
ブなど特殊な装置を装着しないと実現できなかった手振
りの認識を容易に実現できる。また、従来の画像処理で
は、手の画像の切り出しが難しく認識が難しかったが、
本装置によれば、切り出しが不要であるので、手振りの
認識精度が上がるだけでなく、処理速度も大幅にアップ
する。処理は秒30回以上の処理が可能であることが、
実験的に確認されている。これは、応答速度が理想とさ
れるヒューマンインタフェースの条件である0.1秒を
切っている。したがって、真に自然な操作を容易に行う
ことができるので、その効果は、絶大である。
【0149】(実施例3の変形例1)図26の形状解釈
規則は、あくまでも一例にすぎず、種々の変形が可能で
ある。また、マッチングも簡単のために、矩形に分割す
る方法を示しているが、これも一例にすぎない。マッチ
ング方法にあわせて、形状解釈規則も変わる。また、形
状解釈の結果も対象となるアプリケーションにあわせて
変わる。
【0150】また、実施例中で説明のために用いている
距離行列は16×16であるが、これも、この配列に限
定されるものではない。稠密に受光素子を配置できれ
ば、例えば、64×64,あるいは256×256とい
うような配列も可能である。行列の精度が高くなること
に従い、マッチング方法も、形状解釈規則も変化するこ
とはいうまでもない。
【0151】(実施例3の変形例2)また、実施例で
は、手振り認識を3次元空間での指示など計算機への入
力手段として、紹介しているが、必ずしも、これに限定
されるものではない。例えば、テレビや照明器具などの
電源入/切の指示手段として利用することも可能であ
る。そのような場合、本来指示でないものまで、誤って
認識する恐れがある。誤って指示されることを防ぐため
に、複数の形状の組み合わせにより、指示入力とする。
例えば、手を開いた状態と閉じた状態を交互に行うなど
である。
【0152】例えば、図28(a),図28(b),図
28(c)は、二本指、握り拳、五本指での手振りの時
の距離画像の例である。この図28(a),図28
(b),図28(c)をこの順でやると、例えば、電源
がはいり、逆に図28(c),図28(b),図28
(a)とやると電源が切れるというようにしておく。こ
のようにしておけば、本装置の前で、手や人間が動いた
りしても、誤って認識して、電源が切れたりすることを
防ぐことができる。
【0153】この様に複数のジェスチャの組み合わせで
指示を与える場合の形状解釈手段3の形状解釈規則は例
えば、図29のようになる。ここでは、簡単のために電
源の入/切の場合に特化した解釈を想定している。矩形
の数だけでは、1本指なのか、握り拳なのかの判断は付
かない。ここでは、面積が閾値αを大幅に越えたときに
握り拳であると判定している。
【0154】このように複数のジェスチャを組み合わせ
ることにより、特別な道具を必要とせず、かつ誤動作な
く、照明器具の電源のオン/オフなどの操作を容易にか
つ自然に実現することができる。また、照明器具やTV
などの家電機器のスイッチのオン/オフ以外にも、銀行
のキャッシュディスペンサ(ATM)や、駅の自動券売
機などの入力デバイスとしての応用も可能である。
【0155】(実施例3の変形例3)実施例3では、手
の形状を解釈する場合を説明しているが、必ずしも、こ
れに限定されるものではない。例えば、顔の向きを認識
して、視点情報を制御することも可能である。
【0156】図30は、画面に対して、顔の向き(つま
り視点の向き)が変化する場合の概略を示すため、画面
と画面に対している人間と、画面の中にある3次元物体
(円柱、四角錐、球)を真上から見た図である。視点
1、2、3は画面に対して、人の顔が向いている向きを
示している。
【0157】視点1は画面に対して、正面に向いてい
る。視点2は画面に対して、右向き(左頬が画面に近く
なるような向き)になっている。視点3は画面に対し
て、左向き(右頬が画面に近くなるような向き)になっ
ている。実際に、これらの視点から見える3次元物体
は、図31のようになる。つまり、視点1では、3つの
物体がすべて見えているが、視点2では、左端にある円
柱がかけている。これに対し、視点3では、右端にある
球が全く見えない状態である。
【0158】このような視点の変更を行うのに、指を使
ってやる方法もある。たとえば、指を画面に対して、垂
直に向けた状態(図27(a))を、視点1の指示とす
る、指を画面に対して、右に向けた状態(図24
(b))を、視点2の指示とする、というようにであ
る。このような手により視点を制御するときの問題は、
現実世界の視点の制御と大きく操作性が異なるという点
である。
【0159】現実世界では、右を向けば、右の方にある
物体を見、左に向けば左の方の物体を見ることができる
というように、顔の向きで視点を制御している(誰も制
御するなどと大袈裟なことをしているとは、認識してい
ないが)。指は見えている物体のなかの特定のものを指
示するときに使用するのであって、視点を変えたりする
のに使っていない。この点、従来のVR技術で用いる、
データグローブやスペースマウスなどは自然な操作感を
実現できないという問題があった。
【0160】この実施例3の変形例3は、その自然な操
作感を実現するものである。図32は顔の向きを本画像
入力生成装置によって取得したときの距離画像の例であ
る。図32(a)は視点1の顔が正面を向いている状
態、図32(b)は視点2の顔が右を向いている状態、
図32(c)が顔が左を向いている状態である。図32
(d),図32(e),図32(f)はそれぞれから矩
形を切り出した図である。
【0161】ここでは、顔全体にあたる矩形と、鼻にあ
たる矩形を切り出すために、最も遠いセル(濃度の薄い
セル、顔全体にあたる)と、最も近いセル(濃度の濃い
セル、鼻にあたる)、およびその上方に一手段だけある
距離の遠いセル(濃度の薄いセル、目にあたる)を用い
て、3つの矩形を作りだしている。
【0162】図33は、動体視差のための形状解釈規則
の一例である。ここでは、簡単のために、顔の向きの認
識だけに特化した解釈規則の一例を示している。規則1
は、顔と鼻にあたる2つの矩形が切り出されているかを
チェックしている。ない場合は、規則2で、ここでは特
に何の処理も行わない(NULL)。
【0163】2つの矩形があった場合には、顔チェック
の規則で、大きい矩形が遠くにあり、小さい矩形が近く
にあるという関係になっているかをチェックする。なっ
ていなければ、顔以外のものが写っていると解釈して、
ここでは特に何の処理も行わない(NULL)。2つの
矩形が正しい関係にあったとき、初めて、視点方向の算
出を行う。算出式は以下のようである。
【数8】 Lが0の場合は、左向き90度で鼻が一番左端にきてい
るという解釈なので、ここでは、−90度となる。正面
を向いているときは、LとRは等しいので、分子は0に
なり、視点方向は0度になる。LがRより大きければ、
それだけ右向きになっていく。R=0で90度となり。
鼻が一番右にきている状態であり、顔が完全に右向きに
なっている。
【0164】この変形例では、左右の視点移動について
述べたが、同様にして、上からのぞき込んだような視点
や下から見上げるような視点制御も可能である。この場
合は、顔に対する鼻の上下の位置をとればよい。
【0165】以上のような解釈により、顔の向きに応じ
た視点変更が可能になり、自然な操作が実現できる。本
画像入力生成装置が小型になれば、携帯情報機器の入力
デバイスととして用いることができる。この様な場合に
は、顔に対して、携帯情報端末の位置を変更することが
できる(図34)。
【0166】顔を動かす代わりに端末の方を手で動かし
ても、視点1、2、3の顔の向きは図32のようになる
ので、図31にあるような、視点制御を行うことができ
る。上下方向に関しても同様である。このようにすれ
ば、真の動体視差が実現できる。つまり、ユーザはあた
かも大きな3次元空間を携帯情報端末の画面というウイ
ンドウを通してみるという、真に直接的な操作感を実現
できる。
【0167】(実施例4)第3の実施例は、形状を認識
することで、計算機に対する指示に変換するものであ
る。電源をいれたり、切ったりなどの操作をするには便
利である。しかし、アニメーションでキャラクタに動き
をつけたり、動く速さを変えたりするような操作をする
には残念ながら不向きである。形状の認識だけでやろう
とすると、例えば、速さを調整するスライダーなどを操
作する形式になり、直接に動きを制御することができな
い。
【0168】この実施例4はこの問題を解決するため
に、動き(モーション)の入力ができるようにしたもの
である。以下、図面に沿って本発明の動作について説明
する。図35は第4の実施例における特徴情報生成手段
の概略構成図である。図23の形状解釈手段333の代
わりに、画像変化抽出手段343が、形状記憶手段33
2の代わりに比較位置記憶手段342がある形になって
いる。
【0169】比較位置手段342には、動きベクトルを
算出するために、比較したい現在より以前の位置、例え
ば、Mフレーム前の重心点、あるいは最近点など画像変
化抽出手段343により算出された位置を格納してい
る。
【0170】画像変化抽出手段343は、距離行列を解
析して、例えば、重心点、最近点などの変化などによ
り、動きベクトルを抽出するものである。重心点や最近
点などの算出に関しては、手振りの微動による誤差をM
フレーム分の平均をとることで相殺する。つまり、第i
番目のフレームにおける重心点(Xn,Yn)は、
【数9】 その処理の流れは、図36のようになっている。まず、
処理に先立って、ステップ901で、比較位置記憶手段
342の内容を初期化して、空にする。次に、距離画像
を記憶に格納する(ステップ902)。この距離行列を
読み出し(ステップ903)、例えば、重心点を算出す
る(ステップ904)。重心点の算出は例えば以下のよ
うにする。
【0171】第1回目は、重心点(Xn−1,Yn−
1)が比較位置記憶手段342に記憶されていないので
(ステップ905)、まず、比較位置記憶手段342に
格納する(ステップ907)。
【0172】次に重心点(Xn,Yn)を算出したとき
には、比較位置記憶手段342には、Mフレーム前の
(Xn−1,Yn−1)が記憶されている。(Xn−
1,Yn−1)から(Xn,Yn)までに変化するのに
要した時間はM・1/30=M/30秒である。従っ
て、変化分((Xn,Yn)−(Xn−1,Yn−
1))をこの時間で割ったものが動きベクトルなる。そ
の結果は、以下のようである。
【数10】 抽出された動きベクトルを使って、アニメーションに動
きをつける例を説明する。図37の左側の人形のキャラ
クタの例えば、両手の位置を動かすと右側のようにな
る。動きベクトルvの値が大きければ、動きが速くなる
ので、人形の手の動きが大きくなり、激しい動きとな
る。逆に値が小さければ、動きは遅くなり、ゆるやかな
動きになる。
【0173】上の例では、画像変化抽出手段343が動
きベクトルを算出する例を述べたが、必ずしもこれに限
定される訳ではない。これ以外に、動きベクトルから、
振れ幅のみ、あるいは速度のみ、さらには角度を算出す
ることも可能である。この場合は、たとえば、図36の
処理の流れのステップ906をステップ908、あるい
はステップ909、910でおきかえればよい。
【0174】たとえば、X方向の変化量を振れ幅として
抽出し、Y方向の動きを速度として、図38にあるよう
に、振れ幅で人形の位置を制御し、速度で人形の動く速
さを制御するということも可能である。あるいは、指の
振り角により、人形の首振りの角度を制御することも可
能である。この場合には、単に重心を取るだけでは、正
確に重心がとれない。
【0175】つまり、図39(a)にあるように、t時
のときの指と、そこから振った(t+1)時の時の指で
は、指の支点がずれるので、角度は実際の角度のより大
きくなってしまう。多少、実際の指のふれよりも大袈裟
な動作になってもよい場合には、この振り角をそのまま
使うのでも問題ない。が、細かい動きなどをつけたいと
きには、不便である。
【0176】これを防ぐためには、図39(b)にある
ようにt時の指と(t+1)時の指の支点を一致させ、
その上で、重心を算出せねばならない。具体的には、t
時の指の支点を(Xst,Yst)、重心を(Xbt,
Ybt)とし、(t+1)時の指の支点(Xst+1,
Yst+1)、重心(Xbt+1,Ybt+1)とす
る。t時の指の支点で、(t+1)時の指の支点と重心
を補正したものをそれぞれ(X’st+1,Y’st+
1),(X’bt+1,Y’bt+1)とすると、次の
ようになる。
【数11】 これらを使って振り角を求めると、次のようになる。
【数12】 このようにして求めた振り角を使えば、例えば図40の
ように、腕の肘から下の部分と脚の膝から下の部分を、
この振り角で振り、歩くモーションを任意につけること
が可能となる。あるいは図41のへびのキャラクタの口
をこの振り角で動かすと、口がぱくぱく動かすことが可
能である。指の振り方を変化させれば、せりふにあわせ
て口をぱくぱくさせ、しゃべっている感じを容易に出せ
る。
【0177】また、直接ユーザが自分の口をぱくぱく動
作させてヘビのキャラクタの口を動かすことも可能であ
る。例えば、図42(a),図42(b),図42
(c)は画像生成装置に向かって口を動かしたところで
ある。図42(a)と図42(c)は、口を開けたとこ
ろ、図42(b)は閉じたところである。口の開いた長
さmは図42(a)、図42(b)、図42(c)から
求める。口の長さは平均的な値(例えばβとする)を用
いて、振り角を以下のように求める。
【数13】 これを使ってヘビの口を動かす。あるいは、口を開いた
長さmをそのままヘビの口の開閉に用いる方法も可能で
ある。
【0178】(実施例4の効果)従来の操作では、動き
をコントロールするスライダを操作するというように間
接的な操作であったので、経験の少ないユーザにとって
は自分の思いとおりの動きをつけることがはなはだ困難
であった。これに対し、本実施例によれば、ユーザはア
ニメーションのキャラクタをみながら身ぶりをすると、
その身ぶりにそってキャラクタが動くという、完全に直
接的な操作を行うことができるので、その効果は絶大で
ある。
【0179】(実施例4の変形例1)図30では重心点
の抽出を例に処理の流れを説明しているが、これに必ず
しも縛られるものではない。最近点や、距離画像中であ
る距離以下で、X方向で最も上位にある点、あるいはY
方向で、最も右にある点などの、種々の点をとることが
可能である。
【0180】さらに画像変化抽出手段は実施例2に示し
たように1種類だけの変化を抽出するだけでなく、複数
の種類の変化を抽出することが可能である。例えば、重
心点と面積を抽出したとする。面積は距離行列から、あ
る閾値以上のセルの個数を数え上げることが得られる。
その際、誤差を小さくするために、Mフレーム分の平均
を取るようにする。重心点により、両手の変位を与え、
面積により、キャラクタ全体の大きさを指示するように
しておく。すると、手を開いたり結んだりしながら位置
を変化させると、キャラクタの大きさが変化しつつ両手
を動かすと言うアニメーションが実現できる。
【0181】このように、本装置によれば、距離情報の
他の情報(例えば、面積など)を使って、認識の精度を
上げ、低価格、高速で、かつ自然な操作性を実現するこ
とが可能である。また、これにより、キャラクタに対す
る複数の指示をなんら難しい操作を覚えることなく、実
現できる。
【0182】実施例3あるいは実施例4において、指や
手、あるいは顔を使った操作について紹介しているが、
これらの操作に限定されるものではない。例えば、両手
を使って、左手の動きはキャラクタの左手、あるいは左
足の部分、キャラクタの動きは人形の右手、右足の部分
に割り付け、ちょうど、人形の振り付け師が人形に動作
を振り付けるように操ることも可能である。あるいは影
絵で犬の形をつくって動かす身ぶりにより、キャラクタ
に動きをつけることも可能である。
【0183】また、実施例4では、2次元のアニメーシ
ョンのキャラクタに対する操作を例に説明しているが、
必ずしもこれに限定されるものではない。例えば、重心
点で奥行き座標までとれば、3次元のアニメーションの
キャラクタに対し、操作することも可能である。あるい
は、幼児のリズム感の教育などに用いる場合には、X方
向のみの変異分をとり、それよりキャラクタの頭を動か
すようにすれば、幼児は容易に自らのリズムを目でみて
確認できる。また、実施例3のように、幼児の手の動き
にあわせて、キャラクタに動きをつけて目に見える形式
にする以外に、音を発生させるなど、CG以外の他のメ
ディアへのパラメータとして用いることも可能である。
【0184】さらに実施例4では、身ぶりだけでモーシ
ョンをつける実現例であるが、他の入力デバイスとの併
用も可能である。例えば、右手の動きにあわせて対象の
物体を回転させているときに、現在位置で一時対象物体
の動きをホールドして、右手の動きをもう一度もとに戻
して、さらにホールドさせた位置から回転させたいとい
うような場合がある。このような時にホールドを指示し
たり、解除したりするのに、ホールド指示のメニューボ
タンを左手で押すことにより実現できる。あるいは、あ
るモーションをつけたときにその一連のモーションを保
存したいときに記憶を指示するメニューボタンを押すと
いう操作で実現できる。
【0185】このように、本装置によれば、簡単なメニ
ューボタンでは容易に実現できないようなモーション付
けなどの操作と、単純にメニューボタンを押せばよい操
作とを、ユーザに違和感なく並行して行うことができ、
その効果は大きい。
【0186】(実施例4の変形例2)図43は実施例4
の別の変形例の概略構成図である。図35の構成では、
動きベクトルなど画像の変化分のみを抽出して、アニメ
ーションのキャラクタに動きをつけるのに用いていた。
一方、図23の構成では、距離画像を静止画として認識
して、身ぶりの解釈を行って、その結果を指示として用
いていた。
【0187】これに対し、図43は、多くのパラメータ
を距離画像から抽出して、複雑なキャラクタの動きを制
御するパラメータに割り当てられるようにするものであ
る。そのために、画像変化抽出手段343と、形状解釈
手段333の双方が組み込まれた構成になっている。も
ちろん、画像変化抽出手段343のみで、複数のパラメ
ータ抽出できるので、形状解釈手段333が必ずしも含
まれる必要はない。同様に形状解釈手段3においても、
身ぶりの認識結果以外にも、面積や重心の値を抽出でき
るので、これだけでも複数のパラメータを抽出できるの
で、必ずしも、画像変化抽出手段343が含まれる必要
もない。
【0188】パラメータマッチング手段344は、形状
解釈手段333や画像変化抽出手段343により抽出さ
れた複数のパラメータを、キャラクタの動きの制御のど
の部分に適用するかを決定するものである。一方、キャ
ラクタ制御手段345はパラメータマッチング手段34
4により割り付けられたパラメータに従って、実際に、
キャラクタの動きの計算を行う部分である。その結果を
描画するのが、描画手段346である。
【0189】パラメータマッチング手段344では、ユ
ーザの学習を容易にするため、ニューラルネットワーク
やGA(Genetic Algorithm )などの種々の最適化手法
を用いて、パラメータの割り付けを制御することが可能
である。あるいは、パラメータごとにどの部分に適用す
るのか、あらかじめパラメータマッチング手段344が
決めておく方法も可能である。例えば、図41のヘビの
キャラクタを例に取れば、面積はヘビの大きさ、速度は
ヘビの尻尾をふる速さ、指の位置はヘビの位置というよ
うにである。
【0190】さらに、パラメータの変化の大きさに応じ
て、どの部分に適用するか決めておくことも可能であ
る。まず、最初に手を動かしてみて、最も変化の激しい
パラメータをヘビの尻尾の速さ、変化の少ないパラメー
タをヘビの大きさというように決める。次に手を動かす
ときには、最初のキャリブレーションにより決定された
パラメータに従う。
【0191】この変形例2によれば、ユーザは実際に指
や手を動かし、それに応じてキャラクタが変化するのを
見ながら、キャラクタへの動作付けを簡単に習得できる
だけでなく、複雑な動きをつけることが可能となる。ま
た、ここでは、アニメーションのキャラクタのモーショ
ン付けへの適用を中心の述べているが、必ずしも、これ
に限定されるものではない。アニメーション以外には、
音楽の演奏や、画像への特殊効果づけなどに適用するこ
とも可能である。例えば、手の左右の振りでリズム、手
のジェスチャにより奏でる音程を制御して、音楽を演奏
することもできる。
【0192】あるいは、手の左右の振りで、画像のワイ
プの速さ、手の回転にあわせて文字を回転させるなど
の、プレゼンテーションにおける特殊表示効果を制御す
ることも可能である。このような種々のアプリケーショ
ンへの適用が可能であり、ここに記述した実施例に限定
されるものではない。また、図44は、図43の構成に
おけるGUI(グラフィカル・ユーザ・インタフェー
ス)の画面の一例を示したものである。このGUIで
は、ジェスチャを限定したいときに、画面の下に並んで
いるアイコンから、限定したいジェスチャを選択するよ
うになっている。
【0193】例えば、最も左にあるアイコンは、指先を
動かすことでX軸方向の動きをつけられることを示して
いる。同様にその右にあるアイコンは、指先を動かすこ
とで、Y軸方向の動きをつけられる。その右のアイコン
は、Z軸方向の動きをつけられる。これに対し、右から
2番目のアイコンは、「グー」「チョキ」「パー」の3
つの形状が重なっている。
【0194】これは、このアイコンを選択するとこの3
つのジェスチャを認識できるように形状規則手段332
に格納されている規則が切り替わり、それに応じた解釈
を形状解釈手段333がおこなえることを示している。
同様に最も右側のアイコンは「グー」「パー」の2つの
形状が重なっており、この2つの形状に特化して認識す
るようになる。
【0195】図44では、重なった状態でのアイコンが
表示されているが、これらのアイコンは必ずしも静止し
ている状態である必要はない、例えば、「グー」「チョ
キ」「パー」の3つの形状が次々に表示され、アニメー
ション的に表示し、この3つの形状を認識できることを
示したり、あるいは指が左右に動いて、X軸方向の動き
をとれることを示したりすることも可能である。
【0196】また、これらのアイコンを複数選択するこ
とで、限定の幅を広げることも可能である。このとき、
組み合わせた認識ができない場合には、例えば、あるア
イコンを選んだときに選択できないアイコンは、フェー
ドアウトし、選択しようとしても、選択できなくなる。
図45では、右から2番目の「グー」「チョキ」「パ
ー」のアイコンを選択すると、それに組み合わせて、一
番右の「グー」「パー」のアイコンが選択できないの
で、このアイコンがフェードアウトして表示されてい
る。
【0197】また、図43のようなGUIの構成になっ
ていると、ユーザがあらたな身ぶりを登録した場合も、
その新しい身ぶりはアイコンとなって、表示することが
できる。そのときにアイコンに表示されるのは、距離画
像を簡略化したものである。従って、別のユーザでも、
そのアイコン表示をみて、新たなアイコンの身ぶりをま
ねして、新たなアイコンを使ってみることが容易に行え
る。つまり、図43のようなGUIにより、ユーザ間で
容易にモーションをつけるための知識を容易に共有し、
容易に学習できるので、その効果は絶大である。
【0198】(実施例5)動画像圧縮技術は急速に進展
しているが、まだまだ携帯型の端末装置で、良好に動画
像を表示することは難しい。有用な情報だけ伝送して、
表示できるようにすれば、通信コストを下げ、かつ携帯
端末の低消費電力化、低価格化が可能となる。
【0199】このためには、例えば、TV電話において
は、双方の顔だけ切り出して送るようにしたい。また、
電子会議の議事録などにおいて、クローズアップされた
発言者の顔だけ注目して、検索を行いたいということが
生じる。実施例5は、このような画像から、特定の対象
のみを切り出すためのクロマキーカメラの実現例につい
て説明するものである。図46は、実施例5の概略構成
図である。
【0200】実施例3,4と同じく、反射画像を記憶す
る距離画像記憶手段331がある(ここでは、距離は必
ずしも記憶する必要がなく、各セルごとに受光すれば
「1」、受光しなければ「0」を設定することで作成さ
れる反射行列でも十分である)。これと並列に、ビデオ
など、CCDカメラとして使われている可視光の受光素
子アレイ351と、それを記憶する画像記憶手段352
がある。画像記憶手段352に記憶されている画像情報
と、距離画像記憶手段331に記憶されている距離画像
を比較し、特定の画像のみを切り出す切り出し手段35
3と、切り出された画像を記憶する切り出し画像記憶手
段354とから構成されている。
【0201】図46では、可視光の受光手段351が反
射光抽出手段2とは並列であるが、実装上は、必ずしも
これに限定されるものではない。例えば、図47のよう
に、同一の受光素子アレイのなかに、あるものは近赤外
の受光素子であり、あるものは可視光の受光素子である
というように配置して、受光レンズを共有し、小型化、
軽量化を図ることも十分可能である。図48は、切り出
し手段353にて行われる切り出し処理の概要を示した
ものである。図48で、原画像というのが、可視受光ア
レイ351で受光した画像である。画像記憶手段352
には、これが記憶される。
【0202】一方のマスクが反射光抽出手段2により受
光された反射画像である。これが反射行列として、距離
画像記憶手段331に記憶されている。切り出し手段3
53は、原画像とマスクを重ね合わせ、重ねあった部分
だけを残すことで、図48の最下段にあるような切り出
し画像を得ることができる。この切り出し画像は切り出
し画像記憶手段354に記憶される。
【0203】反射光抽出手段2および可視光受光アレイ
351での受光を完全に並行して行うと、毎秒30回の
受光をおこなう(通常のビデオのフレームレートが30
枚/秒)。切り出し手段353での切り出し速度が十分
早ければ、毎秒30回の更新が可能である。その場合
は、受光した度に、つまり毎秒30回、画像記憶手段3
52と距離画像記憶手段331に記憶された画像も更新
するようにすればよいので、画像記憶手段352と距離
画像記憶手段331記憶容量は小さくてよい。
【0204】一方、切り出し速度が十分早くなければ、
画像記憶手段352と、距離画像記憶手段331には、
直前のフレーム分の画像、あるいは距離画像を記憶する
ためのバッファが必要となるが、このバッファに記憶さ
れた前のフレーム分と現在のフレーム分とを加算平均し
たものを対象に切り出し処理を行うことで、単に速度を
補うだけでなく、S/N比の向上もはかれる。
【0205】次に切り出された画像の利用方法について
のべる。例えば、電子会議などの会議録システムでは、
現状は図46の画像記憶手段352に記憶された動画像
をビデオテープなどに録画するか、あるいは、MPEG
2などで圧縮して記録する方法がとられている。しか
し、これらの方法では、発言者以外の画像など、議事録
としてさほど重要でない動画情報までも記録することに
なり、無駄に記録することになるだけでなく、発言内容
を重視して再生するなどの効率のよい再生ができない。
【0206】これに対し、本実施例によれば、発言者な
どの特定部分だけを切り出すことができる(図48の切
り出し画像が、発言者に相当する)。その切り出し画像
を記録することにより、記録容量を大幅に(数分の1か
ら数十分の1)削減できるだけでなく、無駄のない再生
を行うことができる。その場合の概略構成は、例えば、
図49のようになる。切り出し画像(圧縮)記録手段3
55は、切り出し画像をそのままビデオ信号として記録
するか、あるいはMPEG2エンコーダなどにより、圧
縮して記録する。
【0207】あるいは、切り出し画像を記憶するかわり
に転送することもできる。この場合も、従来余分に送っ
ていた背景画像を省略できるので、伝送量を大幅に削減
できる。この場合の概略構成は、例えば、図50のよう
になる。(圧縮)送信手段356は、切り出し画像をそ
のままビデオ信号として送信するか、あるいはMPEG
2エンコーダなどにより、圧縮して送信する。切り出さ
れた画像をもちいれば、例えば、図51のように別の背
景と重ねあわせるなどのクロマキーを非常に簡単に行う
ことができる。その場合の構成は例えば、図52のよう
になる。
【0208】画像合成手段357は、背景画像記憶手段
358などの蓄えられた、例えば、図51の左上の地図
のような背景画像に対し、別途入力された位置に切り出
し画像を図51の下にあるように合成して、出力する。
背景画像が圧縮されて記憶されている場合には、画像合
成手段21で、復号(デコード)を行った上で合成す
る。もちろん、あらかじめ記録されている切り出し画像
を用いた合成も可能である。また、複数の切り出し画像
を用いた合成も可能である。
【0209】(実施例5の効果)従来は動画像から特定
の部分だけを切り取るには、人手で切り出す部分を特定
するなどの作業を行わねばならず、大変な労力をかけて
いたが、本実施例によれば、キャラクタ部分などのマス
クを反射行列により、容易に作り出すことができるの
で、従来の労力を大幅に削減することができるので、そ
の効果は絶大である。
【0210】また、電子会議などにおいて、発言者の顔
などをインデックスとして利用するような会議録システ
ムへの応用などにより、検索に必要な情報の入力作業も
大幅に軽減することができる。
【0211】(実施例5の変形例)本実施例では、反射
光抽出手段2と可視光の受光アレイ351とが同時に受
光するようになっているが、必ずしも、これに限定され
るものではない。例えば、図53のように、切り替え手
段359により、切り替えて受光することも可能であ
る。切り替え周期が60Hzであれば、可視光と近赤外で
それぞれ30Hzで受光できる。
【0212】また、図47では、可視光の受光アレイ3
51の中に、近赤外の受光アレイ1が並ぶ配置になって
いるが、これに、必ずしも、限定されるものではない。
例えば、将来の技術革新により、加電圧を変化させるこ
とで、可視光を受光するか、近赤外を受光するかを制御
できる素子が開発されることもある。このような素子を
使うことにより、図53の切り替え手段359で、加電
圧を切り替えることにより、実現することも可能であ
る。
【0213】さらに、図53のような構成で切り出した
画像を合成するときに、図51に示したように、合成す
るキャラクタは一つに限定されるものではない。例え
ば、別に切り出しておいた複数の切り出し画像を背景画
像に重ね合わせることも可能である。このとき、複数の
切り出し画像に異なる奥行き座標(Z値)を与えて合成
することも可能である。このようにすると、簡単に奥行
きのある映像を作り出すことが可能となる。このとき、
与えられた奥行き座標にあわせて、透視変換(無限遠に
消失点がある)である(X/Z,Y/Z,1/Z)を施
す。これにより、奥になるほど小さい画像になるので、
さらに奥行き感のある映像とすることが非常に簡単にで
きる。
【0214】(実施例6)キャラクタを3次元のモデル
として作成するには、いくつかの方法がある。一つは、
粘土などでキャラクタのモデルを作り、それを3次元デ
ィジタイザと呼ばれる3次元座標値を入力するデバイス
で、表面の主要ポイントをなぞっていく方法である。こ
の方法は、精緻なモデルができるので、映画やCMな
ど、非リアルタイムの高画質の映像を用いる分野でよく
用いられている。3次元モデルにする対象が大型の場合
には、3次元ディジタイザで、表面のポイントを一つ一
つ入力していくのは、大変なので、レンジファインダと
いうレーザ光をあて、その反射から距離を計測するデバ
イスを用いることもある。
【0215】また、別の方法では、3次元CADなどを
使い、モデルを作り込んでいく。この方法は、比較的曲
面の少ない機械機構や建築物などを作るのに適してい
る。どちらの方法にしても、現実感(本物らしさ)を出
すために、作成した3次元のモデルに、キャラクタの材
質感などだすための、写真を貼り付ける(テクスチャマ
ッピング)という作業をおこなう。テクスチャマッピン
グは正方形の模様(テクスチャ)を貼りつける3次元物
体の(曲)面に合わせる2次元的な座標変換である。よ
く使われるモデリングソフトウェアでは、貼りつける面
とそこに貼りつけるテクスチャを指定する必要がある。
【0216】このような手間は、臨場感をだすために欠
かせないが、煩雑であるのも事実である。特に、子ども
などが家庭でアニメーションを作って楽しむといった用
途には、負荷が大きすぎて向いていない。3次元モデル
を作り、さらにテクスチャをはるという作業をより簡単
にできるようにするものが、この実施例6である。
【0217】図54は、第6の実施例の概略構成図であ
る。図46の構成とほとんど同じであるが、切り出し画
像記憶手段354の代わりに、切り出した画像とZ値を
対応させて記憶するZ値画像記憶手段361と、Z値を
比較して描画のための処理を行う描画手段362とが付
加された構成になっている。図55は、Z値を比較し
て、描画を行うときの原理を説明するものである。図5
5(a)と図55(b)の図は、Z値画像記憶手段36
1に記憶されているZ値画像の一例である。第5の実施
例中の図46の構成図の切り出し画像記憶手段354に
記憶されている図48のような切り出し画像と、第3の
実施例の図23の構成図中の距離画像記憶手段331に
記憶されている図24(a)のような距離画像とを重ね
合わせた画像になっている。つまり、一つの画素に対し
て、RGBの色の情報と、奥行き情報であるZ値とをも
っている。
【0218】図55のZ値画像は、説明のため、モノク
ロ画像にしてある。また、説明を容易にするため、図5
5(a)のZ値は1、図55(b)のZ値は2とする
(その値がそれぞれの画素に書き込まれているが、ここ
では、簡単のため、すべて同一であるとして、値を一つ
だけ記してある)。図55(a)の図と図55(b)の
図を合成するときを説明する。色の濃い方が、距離が近
い、つまり、Z値が小さいことになる。
【0219】まず、合成に際しては図55(a)図をそ
のまま書き込む。次に図55(b)図を書きこんでい
く。(6,6),(6,7),(6,8),(7,
6),(7,7)には、図55(a)図のみしかないの
で、そのまま残る。(7,8)には、図55(b)図も
画像があるが、すでに書き込まれているZ値は図55
(a)の1に対して、図55(b)のZ値は2であり、
図55(b)の方が、遠くにあることがわかるので書き
込みを行わない。以下同様にして、Z値を比較して、Z
値が小さい方(つまり、距離が小さい方)だけ残すこと
で、陰面処理を行うことができる。同様の処理で、例え
ば、図56のように、切り出した画像をZ値をもとに合
成することで、奥行きのある画像を簡単に作り出すこと
ができる。
【0220】(実施例6の効果)本実施例によれば、従
来のように3次元モデルを入力して、さらにテクスチャ
をはる面を指定するなどの手間がいらずに、写真をとる
感覚で、簡単に、テクスチャマッピングを行った3次元
モデルを作成することができる。従って、従来の方式で
は、プロあるいはかなり技術のあるユーザでないと、ア
ニメーションを作成したりできなかったが、本実施例に
よれば、容易にだれもが、3次元モデルによるアニメー
ションを気軽に楽しめるようになる。
【0221】(実施例6の変形例1)実施例6では、Z
値を使って、そのまま画像を書き込むことで奥行きのあ
る映像を作っていたが、必ずしもこれに限定されるもの
ではない。例えば、(x,y,z)の座標値を頂点座標
とするポリゴン(多角形)を生成し、3次元モデルを作
り、そこに切り出した画像をマッピングすることも可能
である。
【0222】(実施例6の変形例2)実施例6では、複
数の映像を切り出すことが難しい。これを解決するの
が、この変形例2である。その構成は図57のようにな
る。図57では、切り出すときのZ値の範囲を切り出し
範囲決定手段363により、制御することにより、複数
の対象を切り出すことができる。
【0223】例えば、図58(a)のように、複数の対
象が重なった形で距離画像が得られたとする。切り出し
範囲決定手段363は、まず切り出しの中心Z値を複数
決定する。切り出し範囲決定手段363は、図58
(a)の距離のヒストグラムをとる。その結果、図58
(b)のようなヒストグラム(頻度分布)が得られる。
ヒストグラムの分布(山がどこにあるか)をもとに、切
り出しの中心Z値を決定する。ここでは、ヒストグラム
の山が2つあるので、そこから、2つの中心Z値Zc
1,Zc2が決まる。切り出しは、この中心Z値に対
し、ある程度の幅(例えば、γ)を持たせて、Zc1±
γ,Zc2±γで切り出しを行う。
【0224】その結果が、図58(c),図58(d)
になる。この切り出された、距離画像に対応する部分の
切り出し画像を切り出す。図58(c)では、切り出さ
れた領域が2つに分かれているので、これを図58
(c)に描いてあるようにつなげて、閉曲線になるよう
につなげて、一つの対象としてまとめる。しかし、つな
がった部分(前に別の対象があいとぎれた部分)の切り
出し画像は、隠れているので、切り出せない。このた
め、すでに切り出した画像を元に補間した画像を生成
し、これを切り出しが像として補間して用いる。
【0225】切り出し後のZ値画像に対しては、それぞ
れのZ値をもとに、実施例4と同様に描画を行うこと
で、隠面処理を行い、奥行きのある合成ができる。以上
のように、第2の変形例によれば、複数の対象も切り分
けて抽出し、簡単に奥行きのある映像を生成できるの
で、家庭で子どもなどが楽しみながら、新しい映像(ア
ート)の生成ができるので、その効果は大きい。
【0226】<補正手段の必要性>反射光画像の各画素
は反射光の強さを表しているが、反射光の強さは物体ま
での距離の2乗に反比例する。したがって、非線型な変
換手段を用いることによって、反射光画像から距離画像
を生成することができる。ただし、ここで言う距離画像
にはある程度の誤差が含まれる。これは、実際には、同
じ距離にある物体でもその表面の向きやその反射特性が
影響し、必ずしも同じ反射光が戻ってこないからであ
る。しかし大まかな距離画像は得られる。ここでは物体
による距離画像の誤差は無視する。
【0227】理想的な反射光画像が得られていれば、非
線型な変換手段によって良好な距離画像を得ることがで
きる。しかし、実際にはさまざまな要因により理想的な
反射光画像が得られない。そのため、反射光画像を正し
く補正するための手段が必要となる。あるいは、非線型
変換と補正をあわせて行なう手段(これも以降では広い
意味で補正手段と呼ぶ)が必要となる。以降でこれらの
補正手段について詳しく述べる。
【0228】<撮像レンズの影響>まず、反射光画像が
歪む原因について述べる。まず撮像レンズの影響があ
る。撮像レンズは物体からの反射光をセンサ面上に結像
させるためのものであるが、一般的に、その明るさが光
の入射方向によって変わるという特性を持っている。一
般に、光軸方向は明るく、周辺に向かうほど暗くなる。
つまり同じ方向から同じだけの反射光が返ってきても、
画像の中心部の方が周辺部に比べて明るくなる。
【0229】<発光むら>また、発光手段による発光む
らも距離画像の誤差となる。照明は一般的には完全に均
一とはならず照射された面上での照度にはむらがある。
このことは平らな拡散面に当てた光の反射光画像を取得
しても平面にならないことを表す。
【0230】<センサの感度むら>また、反射光画像を
撮像するためのイメージセンサによる撮像むらがある。
イメージセンサは一般的に光を電荷に変える手段、それ
を蓄積する手段、転送のための手段、必要に応じて増幅
手段などを備えたセルが2次元的に配列されている。セ
ルの特性は必ずしも一致しておらず、個々にばらつきが
ある。これらによっても距離画像の誤差が生ずる。以上
述べたようなさまざまな要因により、取得した反射光画
像に歪みが生じ、それより再構成した距離画像にも誤差
が生ずる。そのために画像の補正が必要となる。
【0231】<反射光から距離値への変換>図59は非
線型変換手段722を用いて反射光画像を距離画像に変
換するための構成例である。反射光画像生成手段は、タ
イミング制御手段720から出力される制御信号にした
がって動作し、反射光画像を表す信号を出力する。これ
は発光手段も含める。これはアナログ信号である。非線
型変換手段は、入力電圧によって増幅率が異なる非線型
アンプである。理想的には入力電圧Viと出力電圧Vo
の関係が、
【数14】 (kは定数)であるものが望ましい。実際にはこのよう
な特性を持つ非線型アンプを作るのは難しいので、これ
を近似した特性を持つ非線型アンプや対数アンプなどを
用いても良い。非線型変換手段から出力される信号をA
/D変換することによって、デジタル化された距離画像
が得られる。非線型変換手段は、必ずしもアナログ変換
でなくても良い。A/D変換した後に、デジタル信号で
非線型変換を行なっても良い。図60はこの構成を表し
ている。反射光画像生成手段721から出力される信号
はA/D変換器724でデジタルデータに変換され、デ
ジタル化された反射光画像になってから、補正手段72
5で距離画像に変換する。
【0232】補正手段では画像の座標よって異なる補正
パラメータを使うため、座標の情報をタイミング信号7
23から得る。この場合、ROMのアドレス信号に入力
を与え、出力を変換後の値として取り出すようにすれ
ば、任意の特性を与えられるため、[数14]の特性を
満足させられる。しかし[数14]の変換は、入力信号
が大きいとき変換精度が悪くなるため、最終的な出力よ
り多いビット数でA/D変換するのが望ましい。デジタ
ル化してから非線型変換する場合は、後述するように、
反射光画像の補正手段と組み合わせてしまうことができ
る。また図示しないが、A/D変換した画像データを一
旦メモリに格納してから、補正手段がメモリにアクセス
して補正作業を行なうという形もありうる。
【0233】<2段階の変換>図61は2段階の変換手
段を用いて、反射光画像の歪みを補正しつつ距離画像に
変換するための構成例である。まず反射光画像生成手段
721の出力を非線型変換手段726により距離の情報
に変換する。これをA/D変換した後、補正手段727
により正確な距離画像に変換する。反射光画像の歪みの
補正は、2次元画像として補正する必要があるため、デ
ジタル画像に変換してから行った方が良い。
【0234】このように2段階の変換手段を用いると以
下のようなメリットがある。図60のように反射光から
距離値への変換を、デジタル化した後に行うと、A/D
変換器のビット数が多く必要になってしまう。反射光か
ら距離値へ変換する非線型変換手段の理想的な特性は図
62のような曲線である。これをデジタル化したあとの
画像で行うと、入力信号が大きいときの変換精度が悪く
なることが分かる。これを防ぐためには最終的に必要な
ビット数より多いビット数でA/D変換する必要があ
る。A/D変換する前にこの非線型変換手段を使い、距
離値に変換しておくことでA/D変換器のビット数は少
なくて済む。またA/D変換前での非線型変換手段は、
その特性は大まかで良い。
【0235】つまり[数14]のような特性を完全に満
たす必要が無い。それは、変換後に反射光画像の歪みを
補正するときに、非線型変換手段で変換しきれなかった
誤差を吸収するように補正してしまえば良いからであ
る。歪みの補正をするときに、非線型変換手段の誤差の
補正を同時に行うことによる難しさやコストアップは無
い。逆に、アナログ信号レベルでの非線型変換手段に高
い精度が要求されないことで、コストダウンを図ること
ができる。またこれは、反射光画像生成手段が、反射光
の強さに対して、非線型な出力信号を出すように構成し
ても良い。この場合も本特許の権利範囲に含まれる。
【0236】<補正の構成詳細−フルテーブル>次に、
補正手段の詳細について述べる。図63、図65は、補
正手段をより具体的にした構成を表す。図63は、入力
と出力を1対1対応させた補正テーブル728を持つ場
合である。画素数が64×64=4096画素だとする
と、この座標は12bitで表現できる。出力データを
8bitとすると、20bitのアドレス入力を持つメ
モリを使うことにより、任意の画素の、任意の値に対し
て出力値を決めることができる。出力値を8bitとす
れば、これは高々1MByteのメモリを使って実現で
きる。図64は、テーブルデータの例である。列に12
bitで表される座標を割り当て、行に8bitで表さ
れる入力値を割り当てる。マトリクスの交点が出力値を
表す。
【0237】<補正の構成詳細−線形補間>図65は、
いくつかのポイントのみをテーブルとする例の構成図で
ある。図66には、この構成図で使用するテーブルデー
タの例を示す。256階調の入力値を8階調ごとに区切
り出力値をテーブル化している。テーブルに無い値が入
力されたときには、近傍両側の2つのテーブル値から線
形補間によって出力値を計算する。例えば、テーブルは
以下のように定義されている。
【数15】 テーブルに無い入力値は以下の式で表せる。
【数16】 この時の出力値は以下の式で算出される。
【数17】 この方法を取ると、図63の場合の構成に比べ、補正テ
ーブルを格納するメモリ容量は、8分の1で済む。
【0238】<空間的に離散>画像上で近い点は補正デ
ータも似ている。したがって、全ての座標についての補
正データを持たず、間引いた座標点についてのみ補正デ
ータを持たせ、その間の点の補正データは、近傍の点か
ら計算で求める、という方法を取っても良い。こうする
ことによって、さらに補正データを格納するメモリ容量
を減らすことができる。
【0239】<HWかSWか>補正手段をソフトウエア
で実行した場合は、若干構成が異なることがある。図6
4はその一例である。画像データ蓄積手段731は、図
示しないA/D変換器で変換された反射光画像を補正せ
ずにいったん蓄積する。画像データ転送手段732は、
画像データ蓄積手段が蓄積した画像データを、補正がそ
の上で実行されるコンピュータなどへ転送される。これ
は具体的には、反射光画像生成手段721が含まれるハ
ードウエア上にあるインタフェース回路であり、またコ
ンピュータ上でデータを受け取る働きをする、デバイス
ドライバである。
【0240】補正演算部729はコンピュータ上でソフ
トウエアで実行される。補正データもコンピュータ上の
補正テーブル730に格納されている。この場合は、補
正演算部は、画像データを受け取るわけであるが、この
画像データは座標情報も含んでいるので、論理的には図
65のように出力データを座標情報とともに受け取って
いるのと等価である。
【0241】<補正データの作成方法>次に、補正デー
タを作成する方法について述べる。図68は、補正デー
タを自動的に作る装置の構成を示したものである。反射
画像生成手段721は既に述べたものと同じである。制
御手段735は既に述べたタイミング制御手段の働きの
ほかに、参照物体可動手段733を制御する。参照物体
可動手段はこの物体位置制御信号にしたがって、参照物
体734を動かす。参照物体は平板で撮像レンズの光軸
と垂直になるような形で、撮像部との距離が変わるよう
に動かされる。手の形を捉えるための補正データを作成
するためには、手の表面となるべく同等の反射特性を持
つ参照物体を用いるのが望ましい。
【0242】また、タイミング制御手段は、補正データ
算出部737に現在の参照物体の距離の情報を、補正デ
ータ蓄積部736に座標信号を与える。補正データ算出
部は、反射光画像と、現在の参照物体の距離の情報か
ら、補正データを生成する。算出された補正データは、
補正データ蓄積部に蓄えられるが、このときタイミング
制御手段から与えられる座標情報とともに格納される。
あるいは、座標情報はタイミング制御手段から補正デー
タ算出部へ送られ、補正データ算出部が補正データを座
標情報とともに格納しても良い。
【0243】更に詳細な処理の手順を説明する。まず入
力すべき距離の範囲を256に等分し、参照物体と反射
光画像生成手段の間の距離を、この256段階に移動さ
せる。各段階で、数枚の反射光画像をキャプチャし、平
均化して1枚の反射光画像を作る。これを各距離で繰り
返し、全部で256枚の反射光画像を作る。これで各画
素について256点の出力と距離の関係が得られた。こ
れをもとにして、補正データを作成する。全ての出力値
(補正手段の入力)に対し、補正値をすべてテーブルと
して持つ場合は、これらのデータからテーブルを作成す
る。離散的に補正値を持たせる場合は、選られた出力と
距離の関係を区切りごとに線分近似し、その交点を補正
データとして格納する。
【0244】例えば、図69下に示す曲線は、参照物体
を移動させながら得た、出力と距離の関係、図69上の
折れ線は近似された線分、その折れ点が補正データであ
る。離散的に補正データを持つ場合は、均等な間隔で補
正データを持っても良いし、近似しやすいように補正デ
ータ間の間隔を不揃いにしても良い。例えば、カーブの
きついところは補正データを持つ点の間隔を狭くし、直
線に近いところは間隔を広くする。このグラフで、出力
値が頭打ちになっているのは、出力を8bit(0〜2
55)と仮定しているため、それ以上遠い距離が表せな
いからである。
【0245】<補正データをユーザに作成させる方法>
上記述べたような補正のためのデータは、あらかじめ作
っておいて、製品に含まれる形で提供されるのが望まし
いが、ユーザが購入後にも再び補正データを作成する必
要が出てくる場合もある。例えば、使用する環境の変動
によって補正データが十分に合わなくなってくる可能性
もある。またLEDの故障や、LED,センサの特性の
経年変化などもその要因となる。あるいははじめから、
ユーザに補正データを作らせるようにしておくこともで
きる。
【0246】このような場合、補正データをユーザの操
作によって作れるような仕組みを作っておく必要があ
る。これを可能にするような装置の構成例を図70に示
す。ユーザへの指示手段738以外の構成要素は図68
のそれとほぼ同じである。ユーザへの指示手段は、決め
られた距離に参照用の物体を置くように指示する。ユー
ザはその指示に従って作業するだけで、補正用のデータ
が作られる。補正用のデータの作成方法は上述とほぼ同
じである。ただし、人手で作業させるためあまり細かい
間隔で多くの回数繰り返えす操作は適さない。また、置
かれる参照物体の位置や向きは必ずしも精度良く置かれ
ていないので、適当な誤差を見込んで計算することが重
要である。図71はユーザへの指示手段が、画面上に出
すダイアログボックスの例である。
【0247】<レンズの光軸ずれを補正するツールをつ
けて、ユーザに行わせる>ユーザに補正データを作成さ
せた場合、その補正データの信頼性はやや劣る。という
のも、ユーザは指定された位置に参照板を置くわけであ
るが、この位置や向きが必ずしも正確ではないからであ
る。このような場合、補正するものをモデル化しやすい
要因のみに絞り、不正確さを吸収するという手段もあ
る。反射光画像から再構成した距離画像を歪ませる大き
な原因の一つが、撮像レンズの周辺光量低下である。こ
れは光軸から離れるほど明るさが暗くなることである。
つまり平面を置いても周辺からの反射光が中心に比べて
小さくなるということである。実際にはこれに、周辺の
方が距離が大きくなることによる更なる低下が加わる。
【0248】センサの感度むらなどや発光むらが許容範
囲以下であれば、上述のレンズの光量低下(距離の違い
による低下も含む)のみを補正すれば良い。レンズのス
ペックは既に分かっているわけであるから、どのくらい
周辺光量が低下するかという特性は既に分かっている。
光軸がイメージセンサの中心を通るという仮定のもとで
は、この特性を逆計算すれば補正データが容易に得られ
る。
【0249】しかし、光軸が必ずしもイメージセンサの
中心を通っているとは限らない。これは主に、センサチ
ップをセンサパッケージにマウントする際の取り付け位
置の誤差による。しかし、光軸がイメージセンサの中心
を通る仮定での補正データを、位置ずれの分だけシフト
すれば、正しい補正ができる。図72は、この考え方を
表している。棒グラフは補正する前の生のデータであ
る。下の方にある曲線グラフは補正データを表す。ここ
では生のデータに乗ずる値とした。マーカー付きの線グ
ラフは、補正された後のデータを表す。画像データは2
次元であるが、この図では、簡単のため1方向(x方
向、あるいはy方向)のみで表している。
【0250】上図は、レンズの光軸がセンサの中心を通
っている場合に、平面からの反射光を画像化したもので
ある。中心をピークに周辺の方がなだらかにパワーが減
少している。この状態において、図のような補正データ
を乗ずると、マーカー付き線グラフのように、データ値
が等しくなり、平面を表現できるようになる。中図は、
レンズの光軸がセンサの中心からずれている場合に、上
図と同じ補正データを乗じた場合である。補正された後
のデータが平らになっていないことが分かる。下図は、
補正後のデータが平らになるように、この補正データを
左右にずらした場合である。
【0251】このように、レンズの周辺光量の落ち込み
が支配的な場合は、レンズ光軸とセンサ中心の位置が合
っている場合の補正モデルを用意しておき、それをずら
しながら、一番平らになる場所を見つければ良い。この
補正データを作る時の動作をフローチャートで図73に
示す。このフローチャートでは、補正データを作った
後、ユーザに参照版を平行に動かすように指示してい
る。動かすことで、多くの距離で取った参照物体の反射
光画像が得られ、それらに対し補正を行なった画像を作
ることにより、補正データが適切かどうか判断すること
ができる。
【0252】補正データが適切であるかどうかは自動的
に判断させても構わないが、補正後の距離画像をユーザ
に見せることによって、正しく補正されているかどうか
ユーザに判断させても良い。なお、ここではユーザに補
正データを作らせる場合で述べたが、参照物体移動手段
を用いて自動的に補正データを生成させる場合でも、こ
の補正モデルを使う手法は有効である。
【0253】(実施例7)ここでは、これまでに説明し
てきた情報入力装置を備えたシステムとしての実施例を
説明する。図74は、本発明による情報入力装置を備え
たコンピュータである。これは一般にノートパソコンと
呼ばれる、本体、キーボード、ディスプレイが一体とな
った、持ち運びか可能なコンピュータである。
【0254】操作者から見てキーボードの向こう側に本
入力装置の発光部701とセンサ部702を配し、手前
ななめ上方に受光光学系の光軸が向くようにする(図に
おいて操作者の手全体が照らされている、点線で囲まれ
た円が照らされる範囲)。これにより、キーボードを操
作している手の人差し指を、少し上に持ち上げ、動かす
ことでポインティングやジェスチャ入力を行うことが出
来る。キーボード入力とポインティングやジェスチャ入
力をほとんど手の位置の動き無しで行えるため、使い勝
手が著しく向上する。ボタンを用意しておいてこれとポ
インティングやジェスチャ入力を併用してもよい。画面
上のアイコンを選択したり動かしたりするためのクリッ
クやドラッグという操作をこのボタンで行うことができ
る。
【0255】また、ジェスチャ入力においてタイミング
トリガを入力したい場合にボタンを使うことも便利であ
る。ボタンを押したときにだけこの情報入力装置が動作
するようにすることもできる。すなわち、ポインティン
グやジェスチャ入力したいときはボタンを押しながら手
を動かして入力する。こうすることにより、ポインティ
ングやジェスチャ入力を行う意思がないのに操作領域に
指が入ってしまい誤動作するのを防ぐことができる。
【0256】これは、ポインティングの場合に特に有効
で、キーボードを使用しているときに誤ってポインティ
ングしてしまう恐れが無いので、操作領域をキーボード
のホームポジションのごく近いところに設定し、最小限
の手の動きで(例えば、右手の人差し指だけを少し上に
向けるだけで)ポインティングできるようにすることも
できる。またボタンが押されたときだけ、発光部が発光
するので、消費電力を節約することもできる。
【0257】ノートパソコンのような場合、このボタン
をキーボードのキーで代用することもできる。例えば、
スペースバーを使った場合、通常はスペースの入力とし
て働くようにしておき、指を差してカーソル表示させて
いるときにスペースキーが押された場合は、クリック、
ドラッグとして働くようにする。キーボードと併用する
場合、キーボードと本情報入力装置との位置関係が重要
である場合がある。図75は、本情報入力装置を備えた
キーボードである。やはり先のノートパソコンの例と同
様に、発光部703と受光部704とを備え、手をホー
ムポジションから上方に持ち上げると、光が手にあたる
ような位置関係になっている。ここでも点線で囲まれた
範囲が照らされる。
【0258】必ずしも全てに必要ではないが、この図で
は、ポインティングやジェスチャ入力のときに併用でき
るキー705が付いている。キーボードをこれと交換す
れば、快適な環境で、キーボード入力とポインティング
やジェスチャ入力を併用することができる。左利きの人
でも使いやすいように、併用できるキーを左右に配して
もよい。また、図76は本情報入力装置を備えたディス
プレイである。操作する手と画面の位置関係が重要であ
るときにはこのデバイスが便利である。ディスプレイの
上方に発光部706と受光部707が付いている。光と
受光系の向きはやや下向きで、点線の円で表された範囲
に照らされる。
【0259】これは操作者がだいたい画面と同じかやや
低い位置に手を持ってくるのが操作しやすいからであ
る。この図では上部に入力装置が付いていたが、ディス
プレイ下部や側部にあってもよい。また左右両方に1つ
ずつついていれば、両手で同時に入力できる環境を作る
こともできる。図77は壁に埋め込まれたディスプレイ
とともに本入力装置を構成したものである。本情報入力
装置708は埋め込み型のディスプレイ709に取り付
けて、あるいはディスプレイの近くに設置して利用す
る。または、埋め込み型ディスプレイと一体化してい
る。ディスプレイの上にある箱状のきょう体の中に、少
なくとも、発光部と受光部が入っている。特徴情報生成
手段はこの箱の中に入っている場合もあり、ディスプレ
イ本体の中に入っている場合もあるし、別の形で置かれ
る場合もある。この発光部、受光部の入ったきょう体
は、その向きが調整できるようになっているとさらに好
ましい。
【0260】ここでは点線の円の範囲に発光され、この
中で操作者が手710を動かすことでディスプレイに表
示されているオブジェクト711を操作している。この
ような実施形態は、博物館や駅などの公共の場での、情
報提示、入力端末などに適している。また、ホームオー
トメーションなどにおける操作部として、壁に埋め込ま
れた小型のディスプレイと本情報入力装置で好適な環境
を提供することができる。この入力装置を備えた他の携
帯情報機器のイメージを載せる。図78は片手で持てる
小型携帯情報機器である。本入力装置は外側には発光、
受光できるだけの窓があればよいので、スペースを有効
に使える。ここでは、712が発光部、受光部の窓であ
る。窓の前で指713を動かせば、画面内のカーソル7
14の位置を制御できる。窓がこれだけ小さいので、残
りのスペースを大きな表示部715として使える。
【0261】図79は、本入力装置が付いた腕時計型の
超小型携帯情報機器である。やはり指716の動きでカ
ーソル717を制御することができる。718、719
が発光部、受光部の窓である。これだけ本体が小さいと
もはやペンを格納するスペースさえなく、本入力装置に
よる入力の好適さは言うまでもないことである。また、
目と表示装置の間からずらしたところに操作空間を配置
すれば、指によって表示が見にくくなるということもな
い。携帯機器などに搭載することを考えた場合、機器の
省電力化を図る必要がある。このシステムはかなり光を
発光しているため、発光電流を抑えることが省電力化に
つながる。このために、発光タイミング、発光量を制御
して省電力化を図ることができる。
【0262】例えば、装置の前に物体が無いことは、反
射光画像の画素値が全て0に近くなることで検出でき
る。物体が無いことが検出されたとき、あるいは物体が
無いことが検出されてから定められた時間が経過したと
き、発光の間隔を長くする。例えば1/30秒に1回発
光していたものを1/10秒に1回にする。このことで
発光電力を1/3に落とすことが出来る。
【0263】再び物体が前に現れたときには、反射光画
像に現れる変化で検出できるので、再び1/30秒に1
回の発光に戻す。実際にカーソルを移動させているとき
は、秒30回検出する場合と、秒10回検出する場合と
では、カーソルの動きの滑らかさから明らかに違いが分
かる。しかし、手を出してからカーソルが現れるまでの
時間は、多少の遅れがあっても気にならない。
【0264】発光のタイミングではなく、発光量を制御
することで省電力化することも出来る。指先の位置を高
い精度で検出するために必要な発光量に比べて、前に物
体があるか否かを判断するだけに必要な発光量ははるか
に小さい。従って、前に物体がないことが検出されたと
きに、発光量が小さくなるよう制御し、物体が再び現れ
るかをチェックする。物体が再び現れたことが検出され
たら、発光量をもとに戻す。発光タイミングと発光量の
制御を同時に行ってもよい。この場合にはさらに大きな
省電力効果が期待できる。またこの省電力効果について
もポインティングを行うときのみに限らず、いかに示す
種々の形態についても適用でき、その効果を発揮するこ
とが出来る。
【0265】
【発明の効果】本発明により、従来困難であった切り出
し処理を容易に提供することができる。
【図面の簡単な説明】
【図1】本願発明の一実施例である実施例1の構成図で
ある。
【図2】本願発明の一実施例である実施例1のより具体
的な構成図である。
【図3】本願発明の一実施例である反射光抽出手段の詳
細な構成図である。
【図4】本願発明の一実施例である単位受光部の構成図
である。
【図5】本願発明の一実施例である反射光抽出手段を制
御する信号を示す図である。
【図6】本願発明の一実施例である反射光画像と棒状物
体検出の様子を表す図である。
【図7】本願発明の一実施例である指先における反射光
画像を示す図である。
【図8】本願発明の一実施例である反射光画像の画素値
について説明する図である。
【図9】本願発明の一実施例である指先位置を求める特
徴情報生成手段の構成図である。
【図10】本願発明の一実施例である棒状物体先端切り
出し部の処理を説明する図である。
【図11】本願発明の一実施例である画素値の修正を行
う理由を説明する図である。
【図12】本願発明の一実施例である適切な画素の大き
さを説明する図である。
【図13】本願発明の一実施例である棒状物体検出のア
ルゴリズムを示す図である。
【図14】本願発明の一実施例である棒状物体先端切り
出しと重心検出のアルゴリズムを示す図である。
【図15】本願発明の一実施例である棒状物体検出で用
いる構造体の説明をするための図である。
【図16】本願発明の一実施例である棒状物体検出にお
ける耐ノイズ性を説明する図である。
【図17】本願発明の一実施例である指に近い位置での
ノイズの影響を抑える処理を説明する図である。
【図18】本願発明の一実施例である手前に指を伸ばし
たときの反射光画像を示す図である。
【図19】本願発明の一実施例である指先の微少な動き
を検出できることを説明する図である。
【図20】本願発明の一実施例である周辺画素が指先位
置に与える影響を説明する図である。
【図21】本願発明の一実施例であるカーソルを静止さ
せることによってクリック信号を生成させるための構成
図である。
【図22】本願発明の一実施例である指先の動きでクリ
ック信号やコマンドを発生できるようにするための構成
図である。
【図23】本願発明の一実施例である実施例3の概略構
成図である。
【図24】本願発明の一実施例である実施例3中の距離
画像の一例を示す図である。
【図25】本願発明の一実施例である図23の実施例の
形状解釈手段の処理の流れの一例を示す図である。
【図26】本願発明の一実施例である図23の実施例の
形状解釈規則の一例を示す図である。
【図27】本願発明の一実施例である実施例3中の距離
画像の一例を示す図である。
【図28】本願発明の一実施例である実施例3の変形例
1の距離画像の一例を示す図である。
【図29】本願発明の一実施例である実施例3の変形例
1の形状解釈規則の一例を示す図である。
【図30】本願発明の一実施例である実施例3の変形例
2の視点制御の概略図である。
【図31】本願発明の一実施例である実施例3の変形例
2の画面表示の一例を示す図である。
【図32】本願発明の一実施例である実施例3の変形例
2の距離画像の一例を示す図である。
【図33】本願発明の一実施例である実施例3の変形例
2の形状解釈記憶の一例を示す図である。
【図34】本願発明の一実施例である実施例3の変形例
2の別の視点制御の概略図である。
【図35】本願発明の一実施例である実施例4の概略構
成図である。
【図36】本願発明の一実施例である図35の実施例の
画像変化抽出手段の処理の流れの一例を示す図である。
【図37】本願発明の一実施例である実施例4のキャラ
クタのモーションコントロールの一例を示す図である。
【図38】本願発明の一実施例である実施例4のキャラ
クタのモーションコントロールの別の一例を示す図であ
る。
【図39】本願発明の一実施例である実施例4の指の動
きの概略図である。
【図40】本願発明の一実施例である図39の指の動き
に対応するキャラクタのモーションコントロールの一例
を示す図である。
【図41】本願発明の一実施例である図39の指の動き
に対応するキャラクタのモーションコントロールの別の
一例を示す図である。
【図42】本願発明の一実施例である実施例4の口の動
きをとらえた距離画像の一例を示す図である。
【図43】本願発明の一実施例である実施例4の変形例
の概略構成図である。
【図44】本願発明の一実施例である実施例4のGUI
の一例を示す図である。
【図45】本願発明の一実施例である実施例4のGUI
の別の一例を示す図である。
【図46】本願発明の一実施例である実施例5の概略構
成図である。
【図47】本願発明の一実施例である図46中の近赤外
受光手段と可視光受光手段の概略構成図である。
【図48】本願発明の一実施例である実施例5の処理の
概略図である。
【図49】本願発明の一実施例である実施例5の別の概
略構成図である。
【図50】本願発明の一実施例である実施例5の別の概
略構成図である。
【図51】本願発明の一実施例である図50中の画像合
成手段の処理の概略図である。
【図52】本願発明の一実施例である実施例5の別の概
略構成図である。
【図53】本願発明の一実施例である実施例5の変形例
の概略構成図である。
【図54】本願発明の一実施例である実施例6の概略構
成図である。
【図55】本願発明の一実施例である実施例6のZ値に
よる隠面処理の説明のための図である。
【図56】本願発明の一実施例である実施例6の隠面処
理の例を示す図である。
【図57】本願発明の一実施例である実施例6の変形例
の概略構成図である。
【図58】本願発明の一実施例である実施例6の変形例
中の距離画像と処理過程の一例を示す図である。
【図59】本願発明の一実施例である反射光の強さを距
離値に変換するための構成例を示す図である。
【図60】本願発明の一実施例であるA/D変換後に距
離値に変換する構成例を示す図である。
【図61】本願発明の一実施例であるA/D前に非線型
変換を行ない、A/D後に反射光の歪みを補正する構成
例を示す図である。
【図62】本願発明の一実施例である非線型変換の理想
的な特性例を示す図である。
【図63】本願発明の一実施例である補正テーブルを使
って、距離値に変換する例を示す図である。
【図64】本願発明の一実施例である補正テーブルの例
を示す図である。
【図65】本願発明の一実施例である間引いた補正テー
ブルを使って、距離値に変換する例を示す図である。
【図66】本願発明の一実施例である間引いた補正テー
ブルの例を示す図である。
【図67】本願発明の一実施例であるソフトウエアで補
正処理を行う例を示す図である。
【図68】本願発明の一実施例である自動的に補正デー
タを生成するための構成例を示す図である。
【図69】本願発明の一実施例である間引いた補正テー
ブルによる補正を表す図である。
【図70】本願発明の一実施例であるユーザに補正デー
タを作成させるための構成例を示す図である。
【図71】本願発明の一実施例であるユーザへの指示画
面の例を示す図である。
【図72】本願発明の一実施例である補正モデルを使っ
た場合の補正方法を説明する図である。
【図73】本願発明の一実施例であるユーザに補正デー
タを作成させるときのフローチャートを示す図である。
【図74】本願発明の一実施例である情報入力装置を備
えたコンピュータを示す図である。
【図75】本願発明の一実施例である情報入力装置を備
えたキーボードを示す図である。
【図76】本願発明の一実施例である情報入力装置を備
えたディスプレイを示す図である。
【図77】本願発明の一実施例である情報入力装置と埋
め込み型ディスプレイで構成した入力環境を示す図であ
る。
【図78】本願発明の一実施例である情報入力装置を備
えた小型の携帯情報機器を示す図である。
【図79】本願発明の一実施例である情報入力装置を備
えた腕時計型の超小型携帯情報機器を示す図である。
【図80】従来の3次元ポインティングデバイスの例を
示す図である。
【符号の説明】
101…発光手段 102…反射光抽出手段 103…特徴情報生成手段 104…タイミング信号生成手段 107…受光光学系 109…第1の受光手段 110…第2の受光手段 111…差分演算部 133…差分回路 135…V系選択回路 136…H系シフトレジスタ 118…光電変換部 119…第1の電荷蓄積部 120…第2の電荷蓄積部 121…トランスファー・ゲート 122…第1のサンプル・ゲート 123…第2のサンプル・ゲート 124…リセット・ゲート 125…出力ゲート 128…発光制御パルス 130…リセット信号 131…第1のサンプル・ゲートの制御信号 132…第2のサンプル・ゲートの制御信号 201…反射光画像 211…指が占めている画素 212…指が半分程度占めている画素 213…棒状物体検出部 214…棒状物体先端切り出し部 215…重心検出部 218…切り出された棒状物体先端部 251…指先位置検出手段 252…カーソル位置決定手段 254…カーソル静止状態検出手段 256…カーソルまたは指先位置動き検出手段 331…距離画像記憶手段 332…形状記憶手段 343…画像変化抽出手段 342…比較位置記憶手段 344…パラメータマッピング制御手段 345…キャラクタ制御手段 346…描画手段 351…可視光受光手段 352…画像記憶手段 353…切り出し手段 354…切り出し画像記憶手段 355…切り出し画像(圧縮)記録手段 356…(圧縮)送信手段 357…画像合成手段 358…背景画像記憶手段 359…切り替え手段 361…Z値画像記憶手段 362…描画手段 363…切り出し範囲決定手段 701…発光部 702…センサ部 703…発光部 704…受光部 705…キー 706…発光部 707…受光部 708…入力装置 709…ディスプレイ 710…手 711…オブジェクト 712…発光部の窓 713…指 714…カーソル 715…表示部 716…指 717…カーソル 718…発光部の窓 719…受光部の窓 720…タイミング制御手段 721…反射光画像生成手段 722…非線型変換手段 725…補正手段 728…補正テーブル 729…補正演算部 733…参照物体可動手段 734…参照物体 735…制御手段 736…補正データ蓄積部 737…補正データ演算部 738…ユーザへの指示手段
───────────────────────────────────────────────────── フロントページの続き (72)発明者 梅木 直子 神奈川県川崎市幸区小向東芝町1番地 株式会社東芝 研究開発センター内 (72)発明者 三浦 浩樹 神奈川県川崎市幸区小向東芝町1番地 株式会社東芝 研究開発センター内 (56)参考文献 特開 平6−205299(JP,A) 特開 平5−227487(JP,A) 特開 昭63−233312(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04N 5/30 - 5/335 G06F 3/00 680 G06F 3/03 330 G06T 1/00 400 G01B 11/00

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 基板上に、受光手段と、この受光手段で
    検出された信号を増幅する増幅手段と、セルを選択する
    選択手段と、前記受光手段をリセットするリセット手段
    、タイミング制御手段とを有する単位セルを行列2次
    元状に配列してなる固体撮像装置において、 前記単位セルは、前記タイミング制御手段の制御信号に
    より発光手段の発光時に前記受光手段で受けた光量に応
    じた信号を保存する第1の記憶手段と、前記タイミング
    制御手段の制御信号により発光手段の非発光時に前記受
    光手段で受けた光量に応じた信号を保存する第2の記憶
    手段と有し、前記基板は前記2つの記憶手段に記憶させ
    た信号の差を検出する差分検出手段を有することを特徴
    とする固体撮像装置。
  2. 【請求項2】 前記受光手段はフォトダイオードで構成
    され、前記増幅手段は増幅トランジスタで構成され、前
    記リセット手段はリセットトランジスタで構成され、前
    記2つの記憶手段はコンデンサで構成されるもので、前
    記フォトダイオードは前記増幅トランジスタのゲートで
    接続され、前記2つのコンデンサはそれぞれの一方の電
    極が前記増幅トランジスタに接続され、他方の電極が接
    地されることを特徴とする請求項1記載の固体撮像装
    置。
JP2000005740A 1996-10-18 2000-01-06 固体撮像装置 Expired - Fee Related JP3521187B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000005740A JP3521187B2 (ja) 1996-10-18 2000-01-06 固体撮像装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP27594996 1996-10-18
JP8-275949 1996-10-18
JP2000005740A JP3521187B2 (ja) 1996-10-18 2000-01-06 固体撮像装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP29964897A Division JP3321053B2 (ja) 1996-10-18 1997-10-17 情報入力装置及び情報入力方法及び補正データ生成装置

Publications (2)

Publication Number Publication Date
JP2000222097A JP2000222097A (ja) 2000-08-11
JP3521187B2 true JP3521187B2 (ja) 2004-04-19

Family

ID=32396156

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000005740A Expired - Fee Related JP3521187B2 (ja) 1996-10-18 2000-01-06 固体撮像装置

Country Status (1)

Country Link
JP (1) JP3521187B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011040092A1 (ja) 2009-09-30 2011-04-07 シャープ株式会社 表示装置
WO2011040093A1 (ja) 2009-09-30 2011-04-07 シャープ株式会社 表示装置
WO2011040091A1 (ja) 2009-09-30 2011-04-07 シャープ株式会社 表示装置
WO2011145676A1 (ja) 2010-05-20 2011-11-24 シャープ株式会社 タッチセンサ付き表示装置
US8373825B2 (en) 2009-11-30 2013-02-12 Sharp Kabushiki Kaisha Display device
US8816285B2 (en) 2010-07-26 2014-08-26 Sharp Kabushiki Kaisha Display device
US9069412B2 (en) 2010-05-20 2015-06-30 Sharp Kabushiki Kaisha Touch-sensor-equipped display device comrpising photodetecting elements

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002357478A (ja) * 2001-05-31 2002-12-13 Honda Motor Co Ltd 光センサ回路
JP2003018466A (ja) * 2001-07-03 2003-01-17 Honda Motor Co Ltd 光センサ
JP4914548B2 (ja) * 2001-09-26 2012-04-11 本田技研工業株式会社 光電変換セル、撮像装置、撮像方法及び撮像装置の駆動方法
US7519223B2 (en) * 2004-06-28 2009-04-14 Microsoft Corporation Recognizing gestures and using gestures for interacting with software applications
JP4487952B2 (ja) 2006-02-27 2010-06-23 ソニー株式会社 カメラ装置及び監視システム
JP4992462B2 (ja) * 2006-02-27 2012-08-08 セイコーエプソン株式会社 撮像素子、撮像装置、撮像システム、撮像方法、モーションデータ生成システム、モーションデータ生成プログラム及びモーションデータ生成方法
EP2153377A4 (en) * 2007-05-04 2017-05-31 Qualcomm Incorporated Camera-based user input for compact devices
WO2009119417A1 (ja) 2008-03-24 2009-10-01 ソニー株式会社 撮像装置、表示撮像装置、電子機器および物体の検出方法
JP4605243B2 (ja) * 2008-04-18 2011-01-05 ソニー株式会社 画像表示装置および画像表示装置の駆動方法
JP2009277194A (ja) * 2008-04-18 2009-11-26 Panasonic Electric Works Co Ltd 表示操作システム
JP5184384B2 (ja) * 2009-01-05 2013-04-17 株式会社ソニー・コンピュータエンタテインメント 制御システムおよび制御方法
JP2010210490A (ja) * 2009-03-11 2010-09-24 Ricoh Co Ltd 移動計測装置及び方法、並びにプログラム
JP5401645B2 (ja) * 2009-07-07 2014-01-29 学校法人立命館 ヒューマンインターフェイス装置
US8600166B2 (en) * 2009-11-06 2013-12-03 Sony Corporation Real time hand tracking, pose classification and interface control
JP5343055B2 (ja) * 2010-09-13 2013-11-13 本田技研工業株式会社 撮像装置および撮像方法
JP5720231B2 (ja) * 2010-12-17 2015-05-20 オムロン株式会社 画像処理装置および方法、並びにプログラム
US9778747B2 (en) 2011-01-19 2017-10-03 Hewlett-Packard Development Company, L.P. Method and system for multimodal and gestural control
JP5839220B2 (ja) 2011-07-28 2016-01-06 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
JP2013255210A (ja) * 2012-01-19 2013-12-19 Nippon Telegr & Teleph Corp <Ntt> 映像表示方法、映像表示装置および映像表示プログラム
JP5733296B2 (ja) * 2012-12-14 2015-06-10 株式会社日立製作所 血管画像撮影装置および個人認証装置
JP6236847B2 (ja) * 2013-04-18 2017-11-29 オムロン株式会社 移動検出装置およびプログラム
JP6524589B2 (ja) * 2013-08-30 2019-06-05 国立大学法人山梨大学 クリック動作検出装置,方法およびプログラム
JP6282072B2 (ja) * 2013-09-24 2018-02-21 株式会社三菱東京Ufj銀行 情報処理装置およびプログラム
JP6710285B2 (ja) * 2016-10-28 2020-06-17 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、制御方法、プログラム、及び記憶媒体
CN108234892A (zh) * 2016-12-15 2018-06-29 松下知识产权经营株式会社 摄像装置及摄像方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011040092A1 (ja) 2009-09-30 2011-04-07 シャープ株式会社 表示装置
WO2011040093A1 (ja) 2009-09-30 2011-04-07 シャープ株式会社 表示装置
WO2011040091A1 (ja) 2009-09-30 2011-04-07 シャープ株式会社 表示装置
US8525953B2 (en) 2009-09-30 2013-09-03 Sharp Kabushiki Kaisha Display device
US9335854B2 (en) 2009-09-30 2016-05-10 Sharp Kabushiki Kaisha Display device
US8373825B2 (en) 2009-11-30 2013-02-12 Sharp Kabushiki Kaisha Display device
WO2011145676A1 (ja) 2010-05-20 2011-11-24 シャープ株式会社 タッチセンサ付き表示装置
US9064460B2 (en) 2010-05-20 2015-06-23 Sharp Kabushiki Kaisha Display device with touch sensor including photosensor
US9069412B2 (en) 2010-05-20 2015-06-30 Sharp Kabushiki Kaisha Touch-sensor-equipped display device comrpising photodetecting elements
US8816285B2 (en) 2010-07-26 2014-08-26 Sharp Kabushiki Kaisha Display device

Also Published As

Publication number Publication date
JP2000222097A (ja) 2000-08-11

Similar Documents

Publication Publication Date Title
JP3521187B2 (ja) 固体撮像装置
JP3321053B2 (ja) 情報入力装置及び情報入力方法及び補正データ生成装置
KR100298240B1 (ko) 정보입력장치,정보입력방법및고체촬상장치
US11269481B2 (en) Dynamic user interactions for display control and measuring degree of completeness of user gestures
US10831278B2 (en) Display with built in 3D sensing capability and gesture control of tv
US9536163B2 (en) Object position and orientation detection system
US9600078B2 (en) Method and system enabling natural user interface gestures with an electronic system
US5900863A (en) Method and apparatus for controlling computer without touching input device
Starner et al. The perceptive workbench: Computer-vision-based gesture tracking, object tracking, and 3D reconstruction for augmented desks
US8818027B2 (en) Computing device interface
JP3410919B2 (ja) 画像抽出装置
Leibe et al. Toward spontaneous interaction with the perceptive workbench
JP2009505305A (ja) 自由空間のポインティング及び手書き手段
CN107291221B (zh) 基于自然手势的跨屏幕自适应精度调整方法及装置
JPH10222646A (ja) 画像入力装置および画像入力方法
JP3785148B2 (ja) 画像抽出装置
JP2006127539A (ja) 画像抽出装置
Leibe et al. Integration of wireless gesture tracking, object tracking, and 3D reconstruction in the perceptive workbench
Kerr Visual Based Finger Interactions for Mobile Phones
Singletary et al. Toward Spontaneous Interaction with the Perceptive Workbench

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040202

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

Free format text: PAYMENT UNTIL: 20080213

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090213

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100213

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100213

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110213

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees