JP6100698B2 - 画像処理を行うことにより、現実空間にある対象物の奥行きを定める画像処理装置、立体視装置、集積回路、プログラム - Google Patents

画像処理を行うことにより、現実空間にある対象物の奥行きを定める画像処理装置、立体視装置、集積回路、プログラム Download PDF

Info

Publication number
JP6100698B2
JP6100698B2 JP2013544596A JP2013544596A JP6100698B2 JP 6100698 B2 JP6100698 B2 JP 6100698B2 JP 2013544596 A JP2013544596 A JP 2013544596A JP 2013544596 A JP2013544596 A JP 2013544596A JP 6100698 B2 JP6100698 B2 JP 6100698B2
Authority
JP
Japan
Prior art keywords
histogram
image processing
coordinate
color
coordinates
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
JP2013544596A
Other languages
English (en)
Other versions
JPWO2013140776A1 (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.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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 Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Publication of JPWO2013140776A1 publication Critical patent/JPWO2013140776A1/ja
Application granted granted Critical
Publication of JP6100698B2 publication Critical patent/JP6100698B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Description

座標生成技術の技術分野に属する。
座標生成技術とは、ユーザの身体の一部や操作部材がどのような位置関係にあるかを検知して、この検知結果を基礎にして捕捉対象の座標を生成するという技術である。スマートフォンやタブレット型端末においては、画面上のタッチ位置を検知して、画面上のもっともらしい座標を決める。しかし画面上のタッチ位置検知では、検知できるタッチ位置が画面の表面上に限られるため、操作の自由度が小さい。そこで、撮影画像から捕捉すべき対象物の立体的座標を生成する改良が進められている。現実空間にある対象物の奥行きを定める技術の先行文献には、以下の特許文献、非特許文献がある。
特開2002−140705号公報
G. R. Bradski "Computer Vision Face Tracking for Use in a Perceptual User Interface", Intel Technology Journal, No.Q2, p.15 (1998)
ところで、ネットワークカメラ等でキャプチャされる撮影画像をミクロで見ると、現実空間の対象物は、様々な階調をもつ画素の集りによって表現されることは一般的に知られている。そのように、様々な階調をもつ画素のあつまりをなぞってみたところで、対象物の形状は正しく再現されない。場合によっては、歪な形状をなす画素群により、対象物が表現されることもありえる。
上述したような、対象物の奥行きを定める技術は、撮影画像における対象物の像を奥行き決定の基礎においているので、このような歪な形状の画素群から三次元座標を生成しようとすると、その三次元座標はおかしなものになり、対象物の動きが正しく追跡されない可能性がある。三次元座標生成のアルゴリズムの繰り返し実行で精度を高めることも考えられるが、それでは繰り返しの収束にまで時間を費やし、対象物の動きに追従できなくなる。そうするとレスポンス性がきわめて低下するので、ユーザにストレスをもたらす。
本発明の目的は、撮影画像において対象物が歪な形状の画素群で出現したとしても、もっともらしい対象物の奥行きを決定することである。
上記課題の解決には、現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成し、ヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決めるという画像処理を行えばよい。
上記で生成されるヒストグラムは、画面の基準軸において指定色をもつ画素の連続長を表すから、かかるヒストグラムの生成によりフレーム画像において現実空間中の対象物の像がなす画素群の縦幅、横幅の最大値、最小値の合理的な把握が可能になる。これらの縦幅、横幅の最大値、最小値から生成される奥行きは妥当なものになり、現実空間中の対象物の三次元座標の生成を高い精度で行うことができる。
ヒストグラム生成は、カメラの撮像素子からの画素ラインの転送時において所定の輝度Y,赤色差Cr,青色差Cbの組合せをカウントすることでなされる。アルゴリズムの繰り返し実行を必要としないから、レスポンス性能を低下させることなく、対象物の動きに追従するような三次元座標生成が可能になる。
実施化障壁の克服手段を有した装置がなしえる複数の態様の内部構成を示す。 立体視再生環境を提供する表示装置と、その付属品とを示す。 画像処理装置を組込んだ立体視表示装置の内部構成を示す。 シャッター式眼鏡の着用を通じて視聴することができる立体視動画像及び立体視GUIを示す。 図4において、スタイラス検知のための領域範囲がどこに位置するかを示す。 撮影部12による撮影で得られる複数のフレーム画像と、各フレーム画像に対する画像処理装置による処理の過程とを示す。 指定色画素を抽出するためのルップアップテーブルの内部構成と、そのエントリーのビット構成とを示す。 指定色画素群抽出部22による画素群抽出を示す。 スタイラスが画面に近づいた場合、遠退いた場合、その中間位置に存在する場合という3つのケースにおいて、画素群がどのように変化するかを示す。 画素群と、X軸ヒストグラムである配列変数、Y軸ヒストグラムである配列変数、平滑化のためのインパルス応答を示す。 インパルス応答で平滑化されたヒストグラムの形状を近似した近似曲線と、平滑化前後のヒストグラムとを示す。 スタイラスと、X軸ヒストグラム及びY軸ヒストグラム、画素群との関係を立体的に描いた図である。 第1実施形態に係る画像処理の全体手順を示すフローチャートである。 X軸ヒストグラム生成手順、Y軸ヒストグラム生成手順を示すフローチャートである。 X軸ヒストグラム平滑化手順、Y軸ヒストグラム平滑化手順を示すフローチャートである。 第2実施形態に係る表示装置の内部構成を示す。 第2実施形態に係る全体手順を示すフローチャートである。 ヒストグラム合成手順を示すフローチャートである。 第2実施形態に係るスタイラスと、このスタイラスから抽出される画素群、生成されるX軸ヒストグラム、Y軸ヒストグラムを示す。 指定色maの画素群に対して生成されたX軸ヒストグラム、指定色mbに対して生成されたX軸ヒストグラムを合成する過程を示す。 スタイラスの球体と、類似色の物体とがどのように区別されるかという識別法を示す。 第3実施形態に係る画像処理部15の内部構成を示す。 第3実施形態に係るスタイラスと、このスタイラスから抽出される画素群、生成されるX軸ヒストグラム、Y軸ヒストグラムを示す。 第3実施形態に係る画像処理装置の全体手順を示すフローチャートである。 スタイラスの回転角の算出手順を示すフローチャートである。 第4実施形態に係るスタイラスと、このスタイラスから抽出される画素群、生成されるX軸ヒストグラム、Y軸ヒストグラムとを示す。 スタイラス回転角の算出手順を示すフローチャートである。 カメラ101aと発光素子101bの組みが取り付けられた表示装置101を示す。 スタイラスの様々な態様を示す。 第7実施形態にかかる表示装置を示す。 ユーザが空間中で描いた形状と、このスタイラスの動きから生成される三次元座標とを示す。 捕捉対象の形状に応じた奥行き調整の過程を示す図である。
発明者らは、上記奥行き決定を行う画像処理の実施化にあたって様々な技術的障壁に直面した。以下、その克服までの歩みを述べる。発明者らが研究開発の参考に選らんだのは、上記特許文献1に記載されたシリンダ状のコントローラによるゲーム制御技術である。
特許文献1の段落0059は、シリンダの傾きφの値の導出を開示している。かかる傾きφは、画素群の幅w1、w2の値の比w1:w2を用いることによって求めることができる。シリンダを表す画素群の幅w1、w2の比率w2/w1は、Y-Z平面上のシリンダの傾きφに比例するから、この比率w2/w1を用いて傾きφの値の大きさを求めることができる。通常、より精度の高い値を得るために、画素群の端辺の間で複数の等距離測定が行われ、平均値を用いて比率w2/w1が求められる。
特許文献1の段落0062は、奥行き値zを求める1つの方法を開示している。これは撮影で得られた画素群のうち、オブジェクトに対応する画素の合計数を数えるというものである。シリンダを表す画素群の画素の数は、φ方向の傾きに影響されるから、まず、画素の数Nをφで重み付けすることによって重み付けされた値Nφを求める必要がある。Nφは奥行き値zに比例するため、Nφによって奥行き値zを求めることができる。
この特許文献1のゲーム制御技術における奥行き値算出は、シリンダの形状が画素群によってきれいに再現されるという前提の上で成り立っている。しかし実際には、ゲーム機に搭載されているカメラは安価で解像度が低いことも多いから、かかるカメラによる撮影画像では対象物の形状が撮影画像に鮮明に現れず、対象物は、歪な形状をなす画素群により現れることになる。特許文献1を用いてこのような歪な形状の画素群から三次元座標を生成しようとすると、その三次元座標はおかしなものになり、対象物の動きが正しく追跡されない。
そもそもこの特許文献1に記載された技術は、平面視表示装置の画面でゲームの仮想空間を表示してその中でキャラクタを活動させる場合、ゲームの仮想空間におけるキャラクタの位置を定めるためのものである。そのような位置決めであれば、上記のような特許文献1の手法でも充分であったかもしれないが、立体視表示装置で画面から飛び出す像(以下、立体視オブジェクトという)をタッチするような操作では充分な精度が得られない。しかし高価な測距センサを具備させて立体視オブジェクトの距離を図るというのはコストパフォーマンスの面で現実的ではない。
一方、非特許文献1はContinuously Adaptive Meanシフト(CAMSHIFT) アルゴリズムを開示している。CAMSHIFTは、顔の追跡のため、Hue Saturation Valueカラーシステムを利用して肌色の確率分布を追跡する。
Meanシフトアルゴリズムにおいて肌色の確率分布の発見がどのように算出されるかについて説明する。非特許文献1の3ページ2カラムによると、当該アルゴリズムは、以下の手順1.〜手順5.を繰り返すというものである。
手順1. サーチすべきウィンドゥ サイズを選ぶ。
手順2. サーチすべきウィンドゥに対して初期的なロケーションを選ぶ。
手順3. サーチすべきウィンドゥにおいて中間的位置を計算する。
手順4. サーチすべきウィンドゥを計算された中間ロケーションに配置する。
手順5. ロケーションの移動量がプリセットされた閾値を下回るまで、手順3.、手順4.を繰り返す。
上記ウィンドゥは、人間の顔面において、目鼻口を結ぶ中央十字線(centroid)にて規定される。手順1.を実行するにあたって、ウィンドゥのサイズは、中央十字線(centroid)の横幅w、及び、縦幅lにより規定される。中央十字線(centroid)の横幅w、及び、縦幅lは、6ページ1カラムの数式で表現される。この数式で用いられるパラメータa,bは、非特許文献1の6ページ2カラムのように算出され、0次モーメントM00、1次モーメントM11、2次モーメントM22で導出される。これら0次モーメントM00、1次モーメントM11、2次モーメントM22も座標(x,y)に位置する画素の強度I(x,y)から算出される。
手順2.、手順3.を実行するにあたってサーチすべきウィンドゥのロケーション(Xc,Yc)は、Xc=M10/M00,Yc=M01/M00という計算で算出される。M00は0次モーメント、M10は一次モーメントであり、ウィンドゥ内に位置する画素の強度I(x,y)の総和によって算出される。
目鼻口を結ぶ中央十字線の傾きθは、5ページ2カラムのように、0次モーメントM00、1次モーメントM11、2次モーメントM20,M02で導出される。かかる中央線の傾きθが、顔の傾きである。肌色の確率分布において、顔領域は、カメラからの距離に比例する。よって、上述したような中央十字線(centroid))探索を通じて、肌色の確率分布が定まれば、カメラから顔領域までの距離を算出することができる。このように非特許文献1に記載の先行技術では、繰返しアルゴリズムを採用するから、歪な形状の画素群で対象物が描かれると、アルゴリズムの繰り返し実行の収束にまで時間を費やし、対象物の動きに追従できなくなる。そうするとレスポンス性がきわめて低下するので、ユーザにストレスをもたらす。
加えて、手順.2(サーチすべきウィンドゥに対して初期ロケーションの選定)、手順.3(サーチすべきウィンドゥの中間的位置の計算)にあたって、複数座標における画素の強度計算が必要になり計算量が多い。またこの計算を繰り返す必要があるので、MPUの高速化を抜きにして、追従させるのが難しい。以上が、本発明に想到するにあたって、発明者らが直面した実施化障壁である。
上記実施障壁を克服できる態様には図1に示す内部構成のものがある。図1は、実施化障壁の克服手段を有した画像処理装置がなしえる複数の態様のうち、代表的なものの内部構成を示す。かかる複数の態様には、基本的な態様(以下の1.のもの)、基本的態様の様々な派生(以下の2.、3.、4.・・・・のもの)がある。
<態様1.基本的な態様>
上記実施障壁は、画像処理により、現実空間にある対象物の奥行きを定める画像処理装置であって、現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する生成部と、生成されたヒストグラムの平滑化を行う平滑化部と、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部とを備えるという態様で克服することができる。図1(a)は、かかる基本的態様の内部構成を示す。上記態様ではヒストグラムをとり平滑化を施すので、平滑化がなされたヒストグラムに示されている画素数が、三次元座標生成の基礎となる。画素群における水平画素数、垂直画数バラツキは、整ったものに統一されるから、対象物がなす画素数を基礎にした三次元座標生成は、高精度になされることになる。これによりヒストグラムのピーク値が定まりやすくなり、三次元座標生成を良好に行うことができる。画素群の形状が、撮影画像毎に異なることによる影響を抑制することができるので、追従が容易となる。
ここで平滑化とは、座標毎のヒストグラムの度数を平らに滑らかにするものであり、ある座標の度数を、その周辺の座標の度数と足し合わせて座標数で割り、その結果を新たな度数にすることでなされる。平滑化フィルタの一例としては、移動平均フィルタ(平均化フィルタ)と、ガウシアンフィルタとがある。移動平均フィルタ(別名:平均化フィルタ、単に平滑化フィルタともいう)では、注目座標のその周辺の座標の度数を用いて平均し、平均値をヒストグラムの度数とする手法である。 例えば、注目座標の度数とその周辺の度数とに3×3のレート、5×5のレートを掛け合わせて平均値を求める。レートとは、各座標に割り当てるべき重み係数の集りである。ただし、レートは全てを足し合わせて1になるように調整される。
ガウシアンフィルタとは、注目座標に近いほど、平均値を計算するときの重みを大きくし、遠くなるほど重みを小さくなるようにガウス分布の関数を用いてレートを計算したフィルタである。重み係数の値が小さいほど平滑化の効果は小さくなり、大きいほど効果が大きくなる。これら移動平均フィルタ、ガウシアンフィルタ以外にも、フィルタとしては、低域透過フィルタを使用することができる。低域透過フィルタは、ヒストグラムの度数を滑らかにすることができるからである。後段の第1実施形態では、平滑化にインパルス応答フィルタを用いる例を説明する。ここで現実空間の対象物とは、本発明の画像処理を通じて動きが捕捉される捕捉対象であり、特許文献1に記載されているような操作部材、非特許文献1に記載されているような人体の一部(顔、指など)を包含している。これらの全てについて説明すると説明が煩雑になるので、以降では、スタイラスの一部であって、予め定められた色(指定色)のものを捕捉対象とする。そして「奥行き」は、どのような単位系で表現されてもよいが、説明の一例として、立体視オブジェクトの配置を想定したX-Y-Z座標系における捕捉対象のZ座標を選ぶ。かかるX-Y-Z座標系は、表示装置の画面の位置をX-Y座標系で表し、画面からユーザまでの空間位置をZ軸の座標で表すものである。立体視オブジェクトの立体的位置は、X-Y平面がZ軸の原点に存在するとした空間内で規定される。かかるX-Y-Z座標系のZ座標で奥行きを算出すれば立体視オブジェクトの操作として充分な精度の奥行きが生成されるからである。
<態様2:奥行き決定の基礎となる特定座標の詳細>
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記特定の座標には、平滑化されたヒストグラムにおいて、最大の出現数に対応付けられている基準軸上の座標と、平滑化されたヒストグラムにおいて最大出現数に準ずる次順位以降の出現数に対応付けられている基準軸上の座標とがあるという下位概念化を施したものである。
フレーム画像データに基づき生成されるヒストグラムの最大度数は、カメラに対象物が近づくにつれ大きく、対象物が遠退くにつれ小さくなる。このヒストグラムに対して平滑化が施されているので、かかるヒストグラムに示される度数の和と、対象物の奥行きとに、何等かの相関関係がもたらされる。よってヒストグラムに示される度数の和が取りうる複数の数値範囲を、対象物の奥行きの複数段階のそれぞれに割り当てることで、上記の度数の和から適切な奥行きを導くことができる。
<態様3:ヒストグラム合成のための構成付加>
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記画像処理装置は、ヒストグラム生成の基礎となる2以上の指定色を予め登録している登録テーブルと、登録された2以上の指定色のそれぞれについてヒストグラムが生成された場合、指定色毎のヒストグラムに示される各座標毎の出現数を、同じ座標に位置するもの同士で足し合わせて、その加算結果を各座標に対応する出現数とした合成ヒストグラムを得るヒストグラム合成部とを備え、前記奥行き決定部による奥行き決定の対象となる座標は、合成ヒストグラムにおいて、所定の閾値を上回る出現数を有する座標であるという下位概念化を施したものである。かかる下位概念化を施すと、上記態様の内部構成は図1(b)に示すものとなる。本図において強調線で囲まれている箇所が、この改変が存在する箇所を示す。
指定色として2以上の画素成分の組合せを登録しておき、これらに対してヒストグラム生成を行い、ヒストグラムの合成を行って、結果となるヒストグラムに平滑化を施した上、奥行き決定の基礎とするので、捕捉対象と似たような色の像が背景に写りこんだとしても、かかる似たような像の画素を除外して捕捉対象の奥行きを決定することができる。これによりユーザの衣服や背景に似たような色が存在したとしても、その影響を抑制することができ、奥行き決定の精度を上げることができる。
<態様4:出現数に対する追加的な演算>
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記2つ以上の指定色のうち何れか1つのものは、特定の重み係数が割り当てられた特定色であり、前記ヒストグラム合成部が合成ヒストグラムを生成するにあたって、特定色のヒストグラムの座標毎の出現数については、特定の重み係数を乗じた上、他の指定色のヒストグラムの同じ座標の出現数に足し合わせるという下位概念化を施したものである。
ヒストグラムにおける特定色の度数については重み係数が乗じられるので、スタイラスの先端部がカメラの方向を向いている状態を高く評価してスタイラスの奥行き決定に用いることができる。これにより検出精度を高めることができる。
<態様5:回転角決定のための構成付加>
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記現実空間における対象物は、2以上の指定色をなす操作部材であり、前記画像処理装置は、操作部材の回転角を決定する回転角決定部を備え、生成部によって2以上の指定色について生成されるヒストグラムは、基準軸において互いに異なる座標に位置し、前記回転角決定部は、 各指定色のヒストグラムにおける最大座標及び最小座標が、基準軸においてどれだけ隔てられているかという差分に基づき操作部材の回転角を定めるという下位概念化を施したものである。かかる下位概念化を施すと、上記態様の内部構成は図1(c)に示すものとなる。
ヒストグラム生成、平滑化を2以上の指定色のそれぞれについて繰り返し、ヒストグラム座標の差分に従い演算処理を行えば対象物の回転角を導くことができるから、三次元座標生成を対象物の微妙な回転に追従させることができる。スタイラスがどれだけ回転しているかを算出できるので、スタイラスの微妙な動きや回転に応じた操作を実現することができ、操作性を向上させることができる。
<態様6:指定色の詳細その1>
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記指定色は、画素を構成する輝度成分及び色差成分の組合せによって特定され、画像処理装置は、フレーム画像データを構成する複数画素のうち、輝度成分及び色差成分の組合せに合致するものからなる画素群を、基準軸上の複数の座標と対応付けて抽出する画素群抽出部を備え、生成部によるヒストグラム生成は、抽出された画素の数を、基準軸上の複数の座標に対応付けることでなされるという下位概念化を施したものである。
<態様7:指定色の詳細その2>
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記指定色は、画素を構成する複数の原色成分の輝度の組合せによって特定され、画像処理装置は、フレーム画像データを構成する複数画素のうち、複数の原色成分の輝度の組合せに合致するものからなる画素群を、基準軸上の複数の座標と対応付けて抽出する画素群抽出部を備え、生成部によるヒストグラム生成は、抽出された画素の数を、基準軸上の複数の座標に対応付けることでなされるという下位概念化を施したものである。
態様6、7によればフレーム画像の画素がどのような画素成分のものを指定色画素として抽出するかが、ルップアップテーブル等に示しておくことができるので、フレーム画像において指定色画素が示すビット値と、ルップアップテーブルに示されるビット値との論理演算により、各画素が指定色をもっているかどうかを判定することができる。そして一致したと判定された場合において、カウント値をインクリメントすれば、ヒストグラム生成を行うことができる。またマスクビットの設定も可能になり、フレーム画像における画素成分のバラツキを吸収することができる。
<態様8:決定された奥行きの用途>
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記現実空間の対象物は、立体視装置の立体視効果により画面から飛び出した立体視オブジェクトを操作するための操作部材であり、前記基準軸とは、フレーム画像データにおけるX軸又はY軸であり、前記奥行き決定部により決定される奥行きは、操作部材がなす三次元座標のZ座標になり、当該三次元座標は、立体視装置において立体視オブジェクトの挙動を変化させるイベントの生成に用いられるという下位概念化を施したものである。この態様では、光学式の測距センサを用いずとも画面の前にいるユーザの大体の位置を決めることができるから、表示装置に組込まれた場合、ユーザが画面に近づきすぎているかどうかを検出して近づきすぎている場合に警報を発する等の処理を実現することができる。
<態様9:平滑化の詳細>
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記平滑化は、ヒストグラムに示される座標毎の出現数に対してインパルス応答を畳み込むことでなされるという下位概念化を施したものである。インパルス応答の畳み込みでは、中央の座標で重み係数が最大になり、そこから周辺につれ重み係数が下がってゆくので、ヒストグラムの面積による奥行き決定に適した、理想的な形状にヒストグラムを変形させることができる。
<態様10:平滑化対象のバリエーション>
基本的な態様のバリエーションとして以下のものがある。つまりフレーム画像データを構成する複数画素のうち、特定の指定色をもつものからなる画素群を抽出する画素群抽出部と、抽出された画素群における各画素の画素値に対して平滑化を施す平滑化部と、平滑化された画素群における指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれ対応付けて示すヒストグラムを生成する生成部と、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部という態様を採用することができる。かかる下位概念化を施すと、上記態様の内部構成は図1(d)に示すものとなる。抽出された画素群における画素の変化がなめらかになり、これを対象として生成される度数のばらつきを抑制することができる。また画素群を構成する画素の平滑化には、フィルタを用いることができるから、実装のコスト化が可能になる。
<態様11:他の装置との関連性>
画像処理装置と共に用いられる装置とは以下のものである。つまり立体視装置であって、アプリケーションを実行する実行部と、アプリケーションからの指示に従い、立体視画像の再生を行う再生部と、画像処理装置が発生した奥行き値を示すイベントを、ユーザ操作に応じて生成するイベントマネージャとを備え、前記アプリケーションは、発生したイベントに応じて再生部による立体視映像の再生内容を変化させるものである。立体視表示装置により画面から飛出した立体視オブジェクトを仮想的にタッチするという操作性を実現することができるので、仮想空間にいるかのような仮想現実感をユーザに与えることができる。ユーザは、日常の煩わしい事柄からしばし解放される。こうすることで、明日への活力をえることができる。
<態様12:再生内容の変化>
本態様は、上記立体視装置の基本的な態様に対して以下の改変を加えたものである。つまり前記立体視画像は、多視点ビデオストリームの再生映像、又は、アプリケーションにより描画されるグラフィクスで構成され、前記再生内容の変化は、再生の対象となる多視点ビデオストリームの切り替え、グラフィクスの切り替えがあるという下位概念化を施したものである。かかる態様により、ユーザとの対話性を一層充実させることができる。
<態様13:集積回路化>
集積回路を実施する局面で課題解決を図る場合、当該局面における集積回路は、画像処理により、現実空間にある対象物の奥行きを定める集積回路であって、現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する生成部と、生成されたヒストグラムの平滑化を行う平滑化部と、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部とを具備していれば足りる。かかる集積回路によれば画像処理装置の部品化、モジュール化が可能になり、半導体部品の業界まで、画像処理装置の用途を広げることができる。
<14:プログラム化>
プログラムを実施する局面で課題解決を図る場合、当該局面におけるプログラムは、画像処理により、現実空間にある対象物の奥行きを定める処理をコンピュータに実行させる画像処理プログラムであって、現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムの生成、生成されたヒストグラムの平滑化と、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定とをコンピュータに実行させれば足りる。ネットワークプロバイダサーバや各種記録媒体を通じたプログラムの配布が可能になるから、一般のコンピュータソフトウェアやオンラインサービスの業界まで、画像処理装置の用途を広げることができる。
(第1実施形態)
以下、画像処理装置を応用した応用製品の実施形態について説明する。画像処理装置の応用の形態としては、画像処理装置と、表示装置とを互いに別の装置として製品にする場合と、画像処理装置を表示装置の内部に組込んで製品にする場合とがあり、第1実施形態は、かかる後者の態様になる。表示装置は、立体視表示装置であり、テレビ、タブレット端末、スマートフォンといったデジタル機器として取り引される。
図2(a)は、立体視再生環境を提供する表示装置と、その付属品とからなるシステムを示す。本システムは、一個のフレーム期間において右目画像、左目画像の表示を行う立体視テレビ装置101と、立体視再生時においてユーザにより着用されるシャッター式メガネ102と、立体視再生時において画面から飛び出す立体視オブジェクトに対する操作のためのスタイラス103とから構成される。本図における表示装置101の画面は、右目画像、左目画像が重なり合った内容になっている。ユーザがシャッター式眼鏡102を着用すれば、立体視オブジェクトが画面から飛出してみえることになる。表示装置101の正面において、画面の上側面には、カメラ101aが設けられている。これはテレビ電話を実現するにあたってユーザの撮影に用いられるネットワークカメラであるが、本実施形態ではスタイラスを操作するユーザの像を撮影するとの用途が与えられている。
図2(b)は、スタイラスの構成を示す。本図におけるスタイラス103は、軸の部分102aと、ペン先103bと、柄先に取り付けられた球体103cとから構成される。つまり、かかるスタイラスは、タッチパネルの操作に適合したペン先103bと、捕捉対象の捕捉に適合した球状体103cとを有する2wayタイプのものである。つまり尖った側の先端部はタッチパネルの操作に使用し、球体はカメラによる追跡による操作に使用することができる。
かかるスタイラスにおいて球体は、どのような角度で撮影されたとしてもフレーム画像において円状の画素群として表れるのでカメラの撮影角によって検出されたり検出されなかったりすることはない。球体103cでは、カメラによる検出が安定的になされるから、本実施形態では、この球体を画像処理による捕捉対象にする。図3は、画像処理装置を組込んだ立体視表示装置の内部構成を示す。図2において、表示装置の構成要素に1番から15番までの参照符号を付している。この参照符号が小さい順に、表示装置の構成要素を説明してゆく。図2に示すように、画像処理装置を組込んだ立体視表示装置は、外部インターフェイス部1、ストレージ2、ビデオデコーダ部3、左目用ビデオプレーン4a、右目用ビデオプレーン4b、レンダリング部5、左目用グラフィクスプレーン6a、右目用グラフィクスプレーン6b、合成部7、表示部8、ヒープメモリ9、プラットフォーム部10、イベントマネージャ部11、撮影部12、フレームメモリ13、センサ14、画像処理部15から構成される。理解を深めるため、以降の表示装置の構成要素の説明は、図4〜図6に示すユースケースを交えて行う。このユースケースとは、立体視映像の再生中にユーザが画面の前で捕捉対象であるスタイラスを動かすというものである。
外部インターフェイス部1は、外部入力とのインターフェイスであり、ネットワークインターフェイスや放送チューナ、ローカルドライブの入出力部を含む。
ストレージ2は、インターフェイス1を通じて取得した各種ファイルが格納される。かかるファイルには、アプリケーションを定義するため、オブジェクト指向プログラミング言語で記述されたクラスファイル、多視点ビデオストリームを格納したストリームファイル、イメージデータを格納したイメージデータファイル、立体形状モデルデータのデータを格納した立体形状モデルデータのデータファイルがある。
ビデオデコーダ部3は、多視点ビデオストリームをデコードする。本実施形態において多視点ビデオストリームはフレームシーケンシャルフォーマットであるものとする。フレームシーケンシャルフォーマットは、基準視点映像フレーム及び付加視点映像フレームが交互に再生部に表示することによって、混合映像を構成する映像フォーマットである。以降の説明では、基準視点映像フレームを左目画像とし、付加視点映像フレームを右目画像とする。ビデオデコーダ部3は、かかる多視点ビデオストリームをデコードすることで右目画像、左目画像を得て右目用ビデオプレーン、左目用ビデオプレーンに書き込む。かかるデコードは、アプリケーションからの再生APIのコールに従いなされる。図3中の矢印V0,V1、V2は、ビデオデータについてのデータフローを示す。V0,V1はビデオデコーダ部3へのデータ供給を模式的に示す。V2はデコーダによる非圧縮画素の出力を示す。
左目用ビデオプレーン4a、右目用ビデオプレーン4bは、ビデオストリームのデコードで得られた一画面分の非圧縮の画素群を、左目画像を構成するものと、右目画像を構成するものとに分けて格納する。これらの右目画像の画素群と、左目画像の画素群とを一フレーム期間内に表示すれば、右目画像、左目画像が画面上で重なり合う。そしてこの画面をシャッター式眼鏡102を着用して視聴すれば立体視映像を見ることができる。図4(a)は、かかる着用を通じて視聴することができる立体視動画像である。図4(a)では、多視点ビデオストリームを再生することで立体視オブジェクトが画面から飛出している状況を想定している。図中の熊は、多視点ビデオストリームを再生により表示装置の画面から飛出した立体視オブジェクトである。かかる状況においてスタイラスには、この画面から飛出した熊を仮想的にタッチするとの用途が与えられる。
レンダリング部5は、アプリケーションからの描画指示に従いグラフィクス描画を行う。グラフィクスにはPNG、JPEG、TIFFといった形式の圧縮イメージを展開することで得られるものと、立体形状モデルデータに対して座標変換、照度計算、ビューポート変換といった一連の描画処理を行い、生成されるものがある。照度計算はテクスチャマッピングを含み、かかるテクスチャマッピングにより、立体形状モデルデータの表面に展開されたイメージを貼りつけることもできる。イメージ描画にあたっては、両眼視差にあたる間隔だけ隔てられた2つの描画座標に、同じイメージを描画することで、立体視のための左目用グラフィクス、右目用グラフィクスの組みを得る。立体形状モデルデータのレンダリングにあたっては、仮想空間において、人間の目の間隔だけ隔てて左目視点位置、右目視点位置を定義し、左目視点位置、右目視点位置のそれぞれについて、ビューポート変換を行うことで、立体視のための左目用グラフィクス、右目用グラフィクスの組みを得る。
左目用グラフィクスプレーン6a、右目用グラフィクスプレーン6bは、描画で得られたグラフィクスを構成する非圧縮の画素群を、左目用グラフィクスを構成するものと、右目用グラフィクスを構成するものとに分けて格納する。これらの右目用グラフィクスと、左目用グラフィクスとを一フレーム期間内に表示すれば、右目用グラフィクス、左目用グラフィクスが画面上で重なり合う。そしてこの画面をシャッター式眼鏡102を着用して視聴すればGUIの立体視映像を見ることができる。図4(b)は、かかる着用を通じて視聴することができる立体視GUIを示す。図4(b)では、アプリケーションにより描画されたGUIである立体視オブジェクトが画面から飛出している状況を想定している。図中の前ページ(Prev)、次ページ(Next)の選択を受け付けるGUIを示す。かかる状況においてスタイラスは、この画面から飛出したGUIをタッチするという用途が与えられる。
合成部7は、左目用グラフィクスプレーン、左目用ビデオプレーン、右目用グラフィクスプレーン、右目用ビデオプレーンに格納されたライン画素にスケーリングやフィルタリングを施し、同じ座標に位置するもの重畳することで動画像と、グラフィクスとのレイヤ合成を行う。これにより立体視の動画像と、グラフィクスとが合成された合成立体視画像を得ることができる。
表示部8は、複数の有機EL素子、液晶素子、プラズマ素子といった発光素子をマトリック状に並べた表示パネル、表示パネルの四辺に取り付けられた駆動回路、素子制御回路から構成され、ビデオプレーン4a,b、グラフィクスプレーン6a,bに格納されているフレーム画像データを構成する画素に従い、発光素子の明滅を行う。
ヒープメモリ9は、ローカルのドライブ、又は、ネットワーク上のリモートドライブからロードされたアプリケーションのバイトコードが格納されるスタック領域であり、かかるバイトコードがプラットフォーム部による処理に供される。
プラットフォーム部10は、クラスローダ、バイトコードインタプリタ、アプリケーションマネージャを含み、ローカルのドライブ、又は、ネットワーク上のリモートドライブからクラスファイルをロードして、そのインスタンスであるバイトコードアプリケーションを実行する。バイトコードアプリケーションの処理内容としては、多視点ビデオストリームの再生指示、GUIの描画指示がある。多視点ビデオストリームの再生指示は、再生対象となる多視点ビデオストリームを選んでかかる多視点ビデオストリームのロケータを指示した再生APIコールを行うことでなされる。GUIの描画指示は、描画すべきイメージデータ又は形状モデルデータと、描画座標と引数として定めて描画APIをコールすることでなされる。図3における矢印a0,a1,a2,a3は、アプリケーションに関する制御フロー、データフローを示す。a0はクラスファイルのダウンロード、a1はローカルストレージからヒープメモリへのクラスロードを模式的に示す。a2はアプリケーションの状態遷移のトリガとなるイベント出力を示し、a3はアプリケーションによるGUI描画指示を示す。特色となるのは、このアプリケーションの動作のトリガとなるイベントが、スタイラスの特定の部位を示す三次元座標を含んでいて、この三次元座標に応じた再生対象の変更、描画対象の変更を行う点である。多視点ビデオストリームの再生中にこのようなイベントが発生すれば、対象となる多視点ビデオストリームを別のものに変更した上、ストリーム再生の再指示を行う。ここで再生中の多視点ビデオストリームが、熊の静止態の立体視映像であり、変更後の多視点ビデオストリームがその動作態の立体視映像であれば、スタイラスの動きで立体視映像の熊が動きまわるような画面演出が可能になる。GUI表示による操作待ち状態にこのようなイベントが発生すれば、描画対象となるイメージデータ又は形状モデルデータを別のものに変更した上、グラフィクス描画の再指示を行う。ここで再生中の立体視グラフィクスが、前ページ、次ページの頁操作を受け付けるGUIの立体視グラフィクスであり、変更後のイメージデータ又は形状モデルデータが、前ページ、次ページを描画するものであれば、スタイラスの動きで画面のページ送りを可能とするような画面演出が可能になる。
イベントマネージャ11は、立体視オブジェクトが存在し得る立体視空間において、特定の空間領域を定義している。そして、画像処理装置によって三次元座標が生成されれば、その座標が空間領域内に存在するかどうかを判定して、存在すれば、スタイラスが立体視オブジェクトに接触したことを知らせるタッチイベントを発生する。上記特定の空間領域に属しないと判定した場合、かかるタッチイベントを発生しない。図5は、図4(a)(b)において特定の領域範囲がどこに位置するかを示す。図のグリッドgd1,gd2,gd3,gd4・・・・は熊の静止態の丁度あたまの部分に空間領域を規定するものである。(b)のグリッドgd11,gd12,gd13,gd14・・・・は、GUIの前ページボタン、次ページボタンのうち、次ページボタンが存在する部分に上記空間領域を規定するものである。画像処理装置から通知される三次元座標がかかる領域に入った場合にタッチイベントを発生させることで、スタイラス操作に応じた再生対象の変更、描画内容の変更をアプリケーションに行わせることができる。
撮影部12は、ネットワークカメラであるカメラ101aを制御して、フレーム期間において一枚のフレーム画像をえる。図6の第1段目は、撮影部12による撮影で得られる複数のフレーム画像を示す。第1段目においてフレーム1のフレーム画像は、立体視オブジェクトである熊のあたまをスタイラスの柄先部材で突つこうとするユーザの正面像である。フレーム2以降のフレーム画像は白地になっているが、フレーム画像の中身を省略しているに過ぎず、フレーム1におけるユーザの像の続きが存在するものとする。立体視オブジェクトは仮想的に存在するものなので、このカメラからの撮影画像には現れない。画面手前の何もない空間をスタイラスで突つくようなユーザの姿か撮影されることになる。
フレームメモリ13は、撮影部12の撮像によりフレーム期間毎に得られたフレーム画像を構成する位置画面分の画素を格納する。フレーム画像の解像度には、1920×1080、640×480といったものがあり、かかる解像度の縦画素数、横画素数の画素が格納される。画素は、輝度Yの階調,赤色差Crの階調、青色差Cbの階調と、透明度Tとで表現することができる。また、R画素成分の階調、G画素成分の階調、B画素成分の階調と、透明度Tの組合せで表現することができる。ここで透明度Tとは、合成部7でビデオプレーンの画素をグラフィクスプレーンの画素と重畳するにあたって、グラフィクスプレーンの画素をどれだけ透過させるかを示す。図3において矢印V3は撮影部12により撮影された撮影画像のユーザのフィードバックを示す。このフィードバックは、フレームメモリ13からビデオプレーン4a,bへの画素の書き戻しでなされる。以上の制御フロー、データフローを通じて、アプリケーションが描画したGUIと、ビデオデータとの合成がなされ、合成画像が表示部8に表示されることになる。フレームメモリ13における撮影画像の画素は、ビデオプレーン4a,b以外にも三次元座標生成部15に出力され、三次元座標生成部15による画像処理に供される。
センサ14は、リモコンやパネル操作、画面タッチ等を検知してイベントマネージャに通知する。i1、i2はイベントマネージャへの入力を示す。この入力には、センサ14からのタッチ座標の入力i1と、三次元座標生成部15が生成した三次元座標の入力i2とを含む。
画像処理部15は、撮影部12が取得した複数のフレーム画像に対して画像処理を行い三次元座標を生成することで、捕捉対象の動きを捕捉する。捕捉される捕捉対象の動きとは、表示装置の画面と、ユーザとの間の空間を行き来する捕捉対象の動きである。図3の矢印up0,dw0は、捕捉対象を画面から遠ざける動き、画面に近づける動きを象徴的に示し、矢印cr0は、捕捉対象を画面と水平に走らせる動きを象徴的に示す。表示装置において、画像処理装置の役割を果たす構成要素であり、撮影部12の撮影でフレーム画像が得られる度に、このフレーム画像に対する画像処理を行い、フレーム画像内に現れているスタイラスの奥行きを定めて、当該スタイラスの三次元座標を生成し、イベントマネージャ11に出力する。図6の第2段目は、第1段目のフレーム画像から抽出される画素群である。フレーム画像にはスタイラスを把持したユーザ像が存在するから、このスタイラスの柄先の画素群が各フレーム画像から抽出される。また画素群の画素を規定するXY座標系においてX軸、Y軸にはX軸ヒストグラム及びY軸ヒストグラムが存在する。第3段目は、第2段目のX軸ヒストグラム及びY軸ヒストグラムにより生成された三次元座標((x1,y1,z1)(x2,y2,z2)(x3,y3,z3)・・・・)を示す。これは画像処理装置による画像処理の結果である。これらの三次元座標は、フレーム画像毎に異なる値となる。
第4段目は、任意のi番目のフレームにおける三次元座標(Xi,Yi,Zi)がどのように算出されるかを示す。フレームiのX軸ヒストグラム及びY軸ヒストグラムの最大度数をh(Xm),h(Ym)とすると、(Xi,Yi,Zi)のXi,Yiは、Xm,YMになる。(Xi,Yi,Zi)のZiは、f(h(Xm)+h(Xm-1)+h(Xm+1)+h(Ym)+h(Ym-1)+h(Ym+1))という値に設定される。ここで関数f()は、ヒストグラムの度数からZ座標を導く関数であり、この第4段目では、最大度数h(Xm)と、これに準じる次順位以降の度数h(Xm-1),h(Xm+1),h(Ym-1),h(Ym+1)の和を当該関数の引数に選んでいることがわかる。かかる関数f()の呼び出しでは、ヒストグラム度数の精度によってZ座標の精度が変わるから、ヒストグラムの度数を高精度にしておくことが求められる。
以上が表示装置11の構成要素についての説明である。表示装置11の構成要素の説明が終わったところで、表示装置において、画像処理装置にあたる処理を実現する集積装置(画像処理部15)の構成要素について説明する。図3において画像処理部15の構成要素には、20番台の参照符号を付している。この参照符号が小さい順に、これらの構成要素を説明してゆく。図3に示すように画像処理部15は、指定色ルップアップテーブル21、指定色画素群抽出部22、ストレージ23、ヒストグラム生成部24、ヒストグラム格納部25、ヒストグラム平滑化部26、平滑化ヒストグラム格納部27、三次元座標生成部28から構成される。以下、参照符号に沿って画像処理部15の構成要素について説明してゆく。 図8〜図12は、これら指定色画素群抽出部21〜三次元座標生成部28による三次元座標生成の原理を具体例を交えて示すものである。この具体例とはスタイラスの柄先の球状体で立体視オブジェクトを操作するというものである。
指定色ルップアップテーブル21は、画素群の抽出時に参照すべきルップアップテーブルであり、抽出の対象となる指定色画素が、どのような画素成分をもつかを規定する。指定色として、ルップアップテーブルに登録されるべき色には、スタイラスの材質に依拠した成形色、スタイラスの一部に塗装が施されている場合の塗装色、ラッピングされている場合の包装色等がある。一般に、画素の色は、色相環図において色相と彩度に対応する各動径座標によって定義されるが、本実施形態では、輝度成分Y、赤色差成分Cr、青色差成分Cbの組合せ、赤成分R、緑成分G、青成分Bの組合せで規定する。従って、同じ赤色でも高い輝度の輝度Y,赤色差Cr,青色差Cbの組合せをルップアップテーブルに記載しておくことで、輝度が高い赤色を指定色として指定することができる。図7(a)は、指定色画素の画素成分が輝度Y,赤色差Cr,青色差Cbである場合におけるルップアップテーブルの内部構成を示す。本図のルップアップテーブルは、複数の指定色画素のインデックス(図中のmp,mq,mr)を具備していて、インデックスのそれぞれに、各指定色の輝度Yの階調(0〜255)、赤色差Crの階調(0〜255)、青色差Cbの階調(0〜255)の組合せを対応付けることができる。かかるルップアップテーブルにより輝度Y,赤色差Cr,青色差Cbのそれぞれには、1から255までの範囲で階調を指定することができる。図7(b)は、Y,Cr,Cb形式のルップアップテーブルにおいて、個々の指定色のインデックスに対応付けられたエントリーのビット構成を示す。 本ルップアップテーブルにおいて、1つの画素のビット幅を32ビットとし、輝度Y,赤色差Cr,青色差Cbのそれぞれについて8ビットを割り当てる。これらの8ビットのうちアスタリスクは、下位ビットのマスクを示す。かかるビットマスクを用いることで下位ビットが異なるような数値範囲の階調をもつ指定色を画素群抽出の対象にすることができる。
図7(c)は、指定色画素の画素成分が赤色成分(R)、青色成分(G)、緑色成分(B)である場合におけるルップアップテーブルの内部構成を示す。本図のルップアップテーブルは、複数の指定色画素のインデックス(図中のmp,mq,mr)を具備していて、インデックスのそれぞれに、Rの輝度の階調(0〜255)、Bの階調(0〜255)、Gの階調(0〜255)の組合せを対応付けることができる。かかるルップアップテーブルによりRGBのそれぞれには、0から255までの範囲で階調を指定することができる。図7(d)は、RGB形式のルップアップテーブルにおいて、個々の指定色のインデックスに対応付けられたエントリーのビット構成を示す。 本ルップアップテーブルにおいて、1つの画素のビット幅を32ビットとし、RGBのそれぞれについて8ビットを割り当てる。Y,Cr,Cbによる画素表現と、RGBによる画素表現とのそれぞれについて説明を行うのは煩雑であるから、以降の説明における指定色表現は、輝度Y,赤色差Cr,青色差Cbに統一するものとする。
指定色画素群抽出部22は、フレーム期間においてフレームメモリにフレーム画像がえられた際、フレーム画像を構成する1920×1080、640×480といったオーダの解像度の画素であって、指定色ルップアップテーブル21に規定された指定色画素の画素成分に合致するものを抽出して抽出画像を得る。この抽出画像は、ルップアップテーブルに記載された指定色画素と合致する画素成分の画素を、無地の背景上に配置したものである。かかる指定色が2以上存在する場合、かかる抽出画像は、2以上の指定色のそれぞれについて生成される。図8は、指定色画素群抽出部22による画素群抽出を示す図である。図中の矢印ext1,ext2は、このフレーム画像からの画素群抽出を模式的に示す。これらが抽出されるのは、柄先の球体の色と、ペン先の色とが画像処理装置において指定色として登録されているためである。スタイラスの球状体は、ユーザの目には円に見えるがフレーム画像の画素をミクロで見るとギザギザ線の輪郭を有した歪な図形となる。かかる抽出により、無地の背景にスタイラスのペン先の画素群が配置された抽出画像と、無地の背景にスタイラスの柄先の球体の画素群が配置された抽出画像とが生成されることになる。
図9は、スタイラスが画面に近づいた場合、遠退いた場合、その中間位置に存在する場合という3つのケースにおいて、画素群がどのように変化するかを示す。図9(a)は、スタイラスが画面から距離Zmiddleだけ隔てられた位置に存在するケースを示す。Mmiddleは、かかる距離を空けたスタイラスの撮影画像から抽出される画素群を示す。図9(b)は、スタイラスと画面との距離が遠退いたケース(このときの距離をZfarとする)を示す。Mfarは、かかる距離を空けたスタイラスの撮影画像から抽出される画素群を示す。図9(c)は、スタイラスと画面との距離が近づいたケース(このときの距離をZnearとする)を示す。Mnearは、かかる距離を空けたスタイラスの撮影画像から抽出される画素群を示す。Mmiddleと比較すると、スタイラスが遠退いたケースの画素群Mfarでは、フレーム画像から抽出される画素群の横画素数が少なくなっていることがわかる。Mmiddleと比較すると、スタイラスが近付いたケースの画素群Mnearでは、フレーム画像から抽出される画素群の横画素数が少なくなっていることがわかる。かかる画素群の横画素数変化、縦画素変化が、奥行き決定の手掛かりになる。
ヒストグラム生成部24は、抽出された画素群である抽出画像において、座標毎の指定色画素の出現数を計数して、ヒストグラムを生成する。かかる生成は、X軸上の複数の座標、及び、Y軸上の複数のY座標についてなされる。X軸上の複数の座標のそれぞれに、指定色画素の出現数を対応付けて示すヒストグラムを「X軸ヒストグラム」といい、Y軸上の複数の座標のそれぞれに、指定色画素の出現数を対応付けて示すヒストグラムを「Y軸ヒストグラム」という。
ヒストグラム格納部25は、ヒストグラム生成部により生成されたX軸ヒストグラム及びY軸ヒストグラムを格納する。図10(a)は、画素群を規定するX-Y座標系のX軸、Y軸のそれぞれを描いている。本図の破線は、画素群Mを、X軸上に射影した射影範囲を規定する。X軸のヒストグラム、Y軸のヒストグラムは、この射影範囲の座標を対象にしている。X軸ヒストグラム及びY軸ヒストグラムは、かかる座標を用いて配列要素を特定するような配列変数により構成することができる。図10(b)はX軸ヒストグラムを規定する配列変数を示し、X0、X1、X2、Xnは、図10(b)のX軸ヒストグラムにおいて度数と対応付けられるx座標である。X軸ヒストグラムにおいてこれらの座標が度数に対応付けられるのは、図10(a)の画素群が、X軸においてX0,X1,X2,Xnといった座標をなすからである。
図10(c)は、Y軸ヒストグラムを規定する配列要素を示す。Y0、Y1、Y2、Ynは、図10(c)のヒストグラムにおいて度数と対応付けられるY座標である。Y軸ヒストグラムにおいてこれらの座標が度数に対応付けられるのは、図10(a)の画素群が、Y軸においてY0,Y1,Y2,Ynといった座標をなすからである。オブジェクト指向プログラミング言語を用いてかかる配列変数を定義し、かかる配列変数をX軸ヒストグラム及びY軸ヒストグラムとすれば、任意の座標の出現度数を取り出すことができる。
ヒストグラム平滑化部26は、X軸ヒストグラムに示される度数、Y軸ヒストグラムに示される度数の平均値を算出し、その算出された平均値を度数とする平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムを得る。本実施形態においてヒストグラム平滑化部26は、移動平均フィルタやガウシアンフィルタを発展させたインパルス応答フィルタを平滑化に用いる。このインパルス応答フィルタによる平滑化は、生成されたX軸ヒストグラム及びY軸ヒストグラムに対してインパルス応答の畳込みによる平滑化を施し、平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムを得る。ヒストグラムに示される複数座標の度数に対してインパルス応答I[n]を畳み込む演算は、離散時間フーリエ逆変換でなされる。図10(d)は、入力であるインパルスδ[n]に対するI[n]の畳込みを示す。インパルス応答I[n]は、所望のシステムに与えられた周波数応答H(w)を離散時間フーリエ逆変換することでえられる。数式に表すと図10(e)の数式1のようになる。DTFTは離散時間フーリエを表す。
インパルス応答がX軸において座標0から座標Mまで続くとなると、0からMまでのX座標のうち、n番目のx座標であるx[n]における畳込み出力I[n]・x[n]は、図10(e)における数式2のように算出される。ここでI[n]は、数式3のように規定される。X軸ヒストグラム及びY軸ヒストグラムの度数に対してかかる数式2、3の計算を行うことで平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムを得る。
離散時間フーリエ逆変換で上記インパルス応答が畳み込まれると、ヒストグラムに示される複数座標についての度数は、その中央でピークをとり、周辺に向かうにつれ0に近づくという理想的な形状になる。図11(a)は、インパルス応答で平滑化されたヒストグラムの形状を近似した近似曲線を示すグラフである。本図において中心位置でもっとも高い値になり、周辺になる程、低い値になる。図11(b)は、X軸ヒストグラムの一例であり、図11(c)はY軸ヒストグラムの一例である。ヒストグラム生成の基礎となる画素群は、ギザギザ線の輪郭を有した歪な図形であるから、それかから生成されるX軸ヒストグラム、Y軸ヒストグラムもきれいな正規分布をなしている訳ではない。中央値が最大度数になっている訳ではなく、また同じ度数の座標が2以上存在している。図11(a)のインパルス応答フィルタが施されると、平滑化結果は、図11(d)(e)(f)に示す通りとなる。図11(d)は、画素群を特定するX-Y座標系において、平滑化前後のX軸ヒストグラム及びY軸ヒストグラムを示している。ここで平滑化前後のX軸ヒストグラム及びY軸ヒストグラムを比較すると、図11(b)、(c)では最大の度数を有したX座標、Y座標が2以上存在していてピークが定まりにくい。図11(b)、(c)に示す平滑化前のヒストグラムにおいては、最大値が複数箇所あるのに対して、図11(d)〜(f)に示す平滑処理後のヒストグラムにおいては、最大度数を有したX座標、Y座標は、唯一つ(Xm,Ym)になっている。最大値を1箇所にすることができるため、最大値の検出位置の安定化を図ることができる。
平滑化ヒストグラム格納部27は、ヒストグラム平滑化部26の平滑化で得られた平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムを格納する。
三次元座標生成部28は、奥行き決定部による奥行き決定を三次元座標生成にまで発展させた構成要素であり、上述したような奥行き決定部と対応している。三次元座標生成部28によるZ座標生成は以下の過程でなされる。先ず平滑化X軸ヒストグラムにおいて最大の出現数を有しているX座標(Xmという)、平滑化Y軸ヒストグラムにおいて最大の出現数を有しているY座標(Ymという)を特定する。そして、このXmの度数及びXm近傍の座標の度数、このYmの度数及びYm近傍の座標の度数の総和を計算して、その総和に基づき、スタイラスの奥行きであるZmを算出する。図3の矢印e6,e7は、三次元座標生成部31によるX軸ヒストグラム及びY軸ヒストグラムの参照を示す。上記に示すように、X軸ヒストグラムからは、h(Xm),h(Xm-1),h(Xm+1)という3つの度数が参照される。Y軸ヒストグラムからは、h(Ym),h(Ym-1),h(Ym+1)という3つの度数が参照される。これらの度数の和を「ヒストグラム頂点近傍の度数和」とよぶ。図12は、スタイラスと、X軸ヒストグラム及びY軸ヒストグラム、画素群との関係を立体的に描いた図である。上記ヒストグラム頂点近傍の度数和は、図12における中央十字線の面積に対応する。つまり中央十字線は、線幅を3画素としていて、画素群の中央あたりで直交している。(Xm,Ym)は、かかる中央十字線の交点を表し、中央十字線全体の長さは、ヒストグラムの頂点近傍の度数和から算出される。ヒストグラムの頂点近傍の度数和を算出することで、画面から球状体中央までの奥行きを適切に定めることができる。
一方、立体視映像は、1画素〜255画素という視差を右目画像、左目画像に与えることで255段階の奥行き感を生成している。図12のZ軸には、この奥行き感の基準となる255の数値を示している。ここで、上述した平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムの度数の総和(中央十字線の面積又は全体長)がとりうる値を、255段階の数値範囲に分けて、これらを255段階の立体視の奥行きのそれぞれに割り当てる。図12における矢印ass1,ass2,ass3は、この割り当てを象徴的に示したものである。このような割り当てを経れば、立体視オブジェクトのタッチを判定できるに足りる三次元座標を取得できる。
以上が画像処理部15の構成要素についての説明である。これまでに述べた、画像処理部15の構成要素は、その処理内容をオブジェクト指向プログラミング言語等を用いて記述してプロセッサに実行させることで、ソフトウェア的に再生装置内に実装することができる。以下、画像処理部15の構成要素の実装のための処理手順について説明する。
図13は、第1実施形態に係る画像処理の全体手順を示すフローチャートである。フローチャートは、最上位の処理、つまり、メインルーチンに該当するものである。
本フローチャートは、起動されるとステップS10の判定待ち状態になり、かかるステップS10がYesと判定されれば、ステップS11〜ステップS15を実行する構成になっている。ここでステップS10は、カメラによりフレーム画像が取得されたかどうかの判定である。そしてステップS11〜ステップS15は、取得されたフレーム画像の指定色の画素群を抽出し(ステップS11)、画素群mを構成する画素のX軸ヒストグラム及びY軸ヒストグラムを生成して(ステップS12) 、X軸ヒストグラム及びY軸ヒストグラムを平滑化し(ステップS13)、X軸ヒストグラム及びY軸ヒストグラムの最大度数を検出することで(Xm,Ym)座標を得て(ステップS14)、Xm、Ymのそれぞれの近傍のヒストグラムの和からZm座標を得る(ステップS15)という手順を、ステップS10がYesになる度に繰り返すものである。XmとYmそれぞれの近傍のヒストグラムの和からZm座標を得る手順としては、Zmは、h(Xm-1)+h(Xm)+h(Xm+1)+h(Ym-1)+h(Ym)+h(Ym+1)を基に算出するという手法がある。尚h(n)は位置nにおける度数である。
上記のフローチャートにおけるステップS12の手順は、図14(a)、(b)のサブルーチンの手順に展開することができる。図14(a)は、X軸ヒストグラム生成手順を示すフローチャートである。本フローチャートでは、サブルーチンコール時において、1つ以上の引数を受け付けた上で本フローチャートに示される処理を実行し、当該処理の実行後、戻り値であるX軸ヒストグラムの要素を返す。本フローチャートは、3重のネストをなすループ構造を形成している。このうちステップS23で規定される最内周のループは、ステップS24〜ステップS25の処理を画素群mを構成する画素の全てのY座標について繰り返すものである。図中の「j」は、ステップS23によるループを規定する制御変数である。ステップS22は、この最内周のループを、画素群を構成する画素の全てのX座標について繰り返すものである。図中の「i」は、ステップS22によるループを規定する制御変数である。更にステップS21は、ステップS22により規定される各X座標についてのループを全ての指定色について繰り返すものである。「k」は、このステップS21によるループを規定する制御変数である。ステップS24は、座標(Xi,Yj)にある画素が指定色(k)を有しているかどうかの判定であり、もし有している場合、ステップS25においてX軸ヒストグラムにおけるXiの度数h(Xi)をインクリメントする。有していない場合、次のY座標に処理を移す。
このループが一巡する度に、制御変数jがインクリメントされるので、この制御変数iで指示される座標Yjの画素が、本ループの処理に供されてゆく。本ループの繰り返しにより、X軸ヒストグラムにおける各X座標の度数が設定されることになる。
図14(b)は、Y軸ヒストグラム生成手順を示すフローチャートである。本図のフローチャートは、サブルーチン化されたものであり、サブルーチンを終了する際、コールした側のフローチャートに戻り値であるY軸ヒストグラムを返す。この戻り値は、フローチャートの終端に示されている通りである。本フローチャートは、3重のネストをなすループ構造を形成している。このうちステップS28で規定される最内周のループは、ステップS29〜ステップS30の処理を画素群を構成する画素の全てのX座標について繰り返すものである。ステップS27は、この最内周のループを、画素群を構成する画素の全てのY座標について繰り返すものである。更にステップS26は、ステップS27により規定される各X座標についてのループを全ての指定色について繰り返すものである。i,j,kの意味合いは、図14(a)と同様である。ステップS29は、座標(Xi,Yj)にある画素が指定色(k)を有しているかどどうか判定であり、もし有している場合、ステップS30においてY軸ヒストグラムにおけるYjの度数h(Yj)をインクリメントする。有していない場合、次のX座標に処理を移す。
このループが一巡する度に、制御変数iがインクリメントされるので、この制御変数iで指示される座標Xiの画素が、本ループの処理に供されてゆく。本ループの繰り返しにより、Y軸ヒストグラムにおける各Y座標の度数が設定されることになる。
上記の図13のフローチャートにおけるステップS13の手順は、図15(a)、(b)のサブルーチンの手順に展開することができる。図15(a)は、X軸ヒストグラムの平滑化手順を示すフローチャートである。本フローチャートでは、サブルーチンコール時において、1つ以上の引数を受け付けた上で本フローチャートに示される処理を実行し、当該処理の実行後、戻り値をである平滑化X軸ヒストグラムを返す。本フローにおいて変数mは、X軸の正方向における畳込み範囲を規定する変数である。変数nは、X軸の負方向における畳込み範囲を規定する変数である。
ステップS31では、(画素群の横幅−1)/2の計算により、変数m,nを初期化し、ステップS32により規定されるループに移行する。このループは、ステップS33〜ステップS37の処理を画素群を構成する全ての画素のX座標について繰り返すというものである。ステップS33は、x+mが画面の横画素数を越えたかどうかの判定であり、もし越えたなら、ステップS34において(画面の横画素数-x)を変数mに設定する。越えなかったなら、mを再設定しない。ステップS35は、x−nが0を下回ったかどうかの判定であり、もし下回ったなら、ステップS36において(x-0)を変数nに設定する。越えなかったなら、nを再設定しない。ステップS37は、X座標におけるヒストグラムの度数と、その周辺の座標の度数とを所定の数式に適用して平滑化されたX軸ヒストグラムのx座標における度数を設定するものである。ステップS37に記載された数式について説明する。hsmoothed#x(x)は、平滑化されたX軸ヒストグラムのx座標における度数を示す。
ステップS37における数式ΣI(x+i)・h(x+i)は、インパルス応答の畳み込み演算であり、隣接するm個の画素を対象とした畳み込み演算を実行するものである。iは、X軸において正方向に隣接する複数の画素のうち任意のもの表す。h(x+i)は、X座標からi個先にある画素のヒストグラムの度数を示す。I(x+i)は、x座標からi座標先にに置する画素の度数を算出するにあたってのインパルス応答を示す。Σ記号は、I(x+i)と、h(x+i)との和の算出を意味する。数式ΣI(x-i)・h(x-i)は、インパルス応答の畳み込み演算であり、隣接するm個の画素を対象とした畳み込み演算を実行するものである。iは、X軸において正方向に隣接する複数の画素のうち任意のもの表す。h(x-i)は、X座標からi個手前にある画素のヒストグラムの度数を示す。I(x-i)は、x座標からi個手前に位置する画素の度数を算出するにあたってのインパルス応答を示す。Σ記号は、I(x-i)と、h(x-i)との総和の算出を意味する。かかる総和を(m+n+1)で割った乗算結果が平滑化されたX軸ヒストグラムの度数となる。
図15(b)は、Y軸ヒストグラムの平滑化手順を示すフローチャートである。変数m,nの意味合いは、図15(a)と同じである。ステップS41では、(画素群の横幅−1)/2の計算により、m、nを初期化し(ステップS41)、ステップS42により規定されるループに移行する。このループは、ステップS43〜ステップS47の処理を画素群を構成する全ての画素のY座標について繰り返すというものである。ステップS43は、y+mが画面の縦画素数を越えたかどうかの判定であり、もし越えたなら、ステップS44において(画面の縦画素数-y)を変数mに設定する。越えなかったなら、mを再設定しない。ステップS45は、y−nが0を下回ったかどうかの判定であり、もし下回ったなら、ステップS46において(y-0)を変数nに設定する。越えなかったなら、nを再設定しない。ステップS47は、Y座標におけるヒストグラムの度数と、その周辺の座標の度数とを所定の数式に適用して平滑化されたY軸ヒストグラムのy座標における度数を設定するものである。ステップS47に記載された数式について説明する。hsmoothed#y(y)は、平滑化されたY軸ヒストグラムのy座標における度数を示す。
ステップS47における数式ΣI(y+i)h(y+i)は、Y軸の正方向にあるm個の画素を対象としてインパルス応答を畳み込むものである。iは、Y軸において正方向に隣接する複数の画素のうち任意のもの表す。h(y+i)は、Y座標からi個先にある画素のヒストグラムの度数を示す。I(y+i)は、i座標先に位置する画素の度数を算出するにあたって畳み込むべきインパルス応答を示す。Σ記号は、I(y+i)と、h(y+i)との和の算出を意味する。数式ΣI(y-i)h(y-i)は、Y軸の負方向にあるm個の画素を対象としてインパルス応答を畳み込むものである。h(y-i)は、Y座標からi個手前にある画素のヒストグラムの度数を示す。I(y-i)は、y-i座標に位置する画素の度数を算出するにあたって畳み込むべきインパルス応答を示す。Σ記号は、I(y-i)と、h(y-i)との和の算出を意味する。かかる総和を(m+n+1)で割った乗算結果が平滑化されたY軸ヒストグラムの度数となる。上記ステップS37、ステップS47におけるヒストグラムの平滑化は、あるX座標の画素の度数h(x)をその隣接する画素の度数h(x+i)と足し合わせ、割ることで作成するものである。i=1であれば、I(x-1)h(x-1)+I(x+1)h(x+1)/3となる。
以上のように本実施形態によれば、画面表面をなぞるだけでなく、画面からスタイラスを遠退けたり、近づけたりする動きに、アプリケーションを連動させることができる。立体表示情報が存在する空間領域の三次元座標を予め定めておいてスタイラスの先端の座標がかかる空間領域の内部であれば、アプリケーションは再生対象となる多視点ビデオストリームを変える。この変更後の多視点ビデオストリームが「後ずさりする立体視オブジェクト」の映像であれば、ユーザはスタイラスの操作を通じて立体視オブジェクトと触れ合っているような体験をすることができる。
(第2実施形態)
第2実施形態は、捕捉対象のコントラストを好適に処理する改良に関する。スタイラスを捕捉対象として選ぶ場合、室内の照明や屋外における日光の照射のため、撮影されたフレーム画像におけるスタイラス像では、複数色のコントラストが発生する。この複数色のコントラストは、直接光が当たった部分の色、通常の部分の色、影になっている部分の色を含む。たとえスタイラスの成形色、塗装色が一色であっても、光の照らされ方によって捕捉対象はコントラストをなすから、本実施形態ではかかるコントラストにおける直接光が当たった部分の色、通常の部分の色、影になっている部分の色を複数の指定色として画像処理装置に登録している。そして、かかる指定色に該当する画素群を抽出し、かかる抽出画素群のそれぞれについて、X軸ヒストグラム、Y軸ヒストグラムを生成する。そして、そのように生成された指定色毎のX軸ヒストグラム、Y軸ヒストグラムについてヒストグラム合成を行う。
図16は、第2実施形態に係る画像処理部15の内部構成を示す。本図は、図3の内部構成をベースとして作図されており、このベースとなる内部構成と比較して、構成要素が新規に追加されている点が異なる。つまり図16における画像処理装置の内部構成とは、新規な構成要素が追加され、この追加に伴う改良が既存の構成要素に施されたものである。
追加された構成要素とは、30番台の参照符号を付したものであり、X軸ヒストグラム示される指定色画素の出現度数、Y軸ヒストグラムに示される指定色画素の出現度数を同じ座標毎に合算することで、合成されたX軸ヒストグラム、合成されたY軸ヒストグラムを得るヒストグラム合成部30、ヒストグラム度数の合算にあたって乗じるべき度数を指定色毎に記憶する重み係数格納部31、合成されたX軸ヒストグラム及びY軸ヒストグラムを格納する合成ヒストグラム格納部32である。構成要素追加に伴う既存の構成要素の改良とは、ヒストグラム生成部24が指定色毎にX軸ヒストグラム及びY軸ヒストグラムを生成してヒストグラム格納部25に格納し、ヒストグラム生成部30に引き渡す点(1)、ヒストグラム平滑化部26による平滑化の対象が合成ヒストグラム格納部32に格納された合成X軸ヒストグラム、合成Y軸ヒストグラムになった点(2)、ヒストグラム平滑化部26により平滑化がなされた平滑化合成X軸ヒストグラム、平滑化合成Y軸ヒストグラムが三次元座標生成部28による三次元座標生成の基礎になる点(3)である。かかる構成では、2以上の色を用いることでスタイラスの先端部を捕捉し、先端部の三次元座標を取得し、それを基にアプリケーションを制御する。
図17は、第2実施形態に係る全体手順を示すフローチャートである。本図は、図13のフローチャートをベースとして作図されており、このベースとなるフローチャートで成と比較して、一部のステップが別のものに置き換えられている点が異なる。
その置換えがなされたステップとは図13のステップS10がYesになった際に実行されるものであり、50番代の参照符号が付されたものである。これらの置き換えがなされた一連のステップについて説明する。フレーム画像から色Aの画素群maを抽出し(ステップS51)、画素群maを構成する画素のX軸ヒストグラム及びY軸ヒストグラムを生成して(ステップS52)、画素群maに包含される色Bの画素群mbを抽出し(ステップS53)、画素群mbを構成する画素のX軸ヒストグラム及びY軸ヒストグラムを生成する(ステップS54)。そして画素群mbのX軸ヒストグラム及びY軸ヒストグラムの度数をα倍する(ステップS55)。その後、指定色maを構成するX軸ヒストグラム及びY軸ヒストグラム、指定色mbを構成するX軸ヒストグラム及びY軸ヒストグラムの度数を同じ座標毎に合算して、合算値を各X座標、各Y座標の度数とする合成X軸ヒストグラム、合成Y軸ヒストグラムを得る(ステップS56)。続いて合成X軸ヒストグラム、合成Y軸ヒストグラムを平滑化して、合成X軸ヒストグラム、合成Y軸ヒストグラムの最大度数を検出して(Xm,Ym)を得る(ステップS58)。ステップS50ではXm,Ymにおける最大度数が閾値Thを上回るかどうかを判定して上回らない場合、ステップS10のループに戻る。上回る場合、Xm,Ymのそれぞれの近傍の度数の和から、Z座標を算出する。このループが一巡する度に、フレーム画像が新たに入力されるので、あらたなフレーム画像は、本ループによるヒストグラム生成の対象に供されてゆく。
上記のフローチャートにおけるステップS56の手順は、図18のサブルーチンの手順に展開することができる。図18は、ヒストグラム合成手順を示すフローチャートである。本フローチャートにおいて、kは複数指定色のそれぞれを指示するインデックスであり、α(k)は、指定色(k)についての重み係数である。h#k(xi)は、指定色(k)について生成されたX軸ヒストグラムにおける座標xiについての度数を示す。Hx#sum(xi)は、指定色(k)について生成された合成X軸ヒストグラムにおける座標xiについての度数を示す。本フローチャートでは、サブルーチンコール時において、1つ以上の引数を受け付けた上で本フローチャートに示される処理を実行し、当該処理の実行後、戻り値である合成X軸ヒストグラム、合成Y軸ヒストグラムを返す。
ステップS61は、X軸ヒストグラムの全てのX座標について、ステップS62を実行するループを規定する。ステップS62におけるΣ計算は、指定色(k)について生成されたX軸ヒストグラムにおける座標xiについての度数h#k(xi)に、指定色(k)についての重み係数α(k)を乗じるという乗算を全ての指定色(k=1からnまでのインデックスで指示される指定色)について行い、その乗算結果の総和を、指定色(k)について生成された合成X軸ヒストグラムにおける座標xiについての度数であるHx#sum(xi)にするというものである。このループが一巡する度に、各指定色についてのX軸ヒストグラムの度数は、本ループの処理に供されてゆく。
ステップS63は、Y軸ヒストグラムの全てのX座標について、ステップS64を実行するループを規定する。ステップS64におけるΣ計算は、指定色(k)について生成されたY軸ヒストグラムにおける座標yiについての度数h#k(yi)に、指定色(k)についての重み係数α(k)を乗じるという乗算を全ての指定色(k=1からnまでのインデックスで指示される指定色)について行い、その乗算結果の総和を、指定色(k)について生成された合成Y軸ヒストグラムにおける座標yiについての度数であるHy#sum(yi)にするというものである。このループが一巡する度に、指定色毎のY軸ヒストグラムに示される度数は、本ループによる合算に供されてゆく。ループが一巡する度に、複数のデータ要素のそれぞれを処理に供してゆくのが処理構造である。
本実施形態でヒストグラムに対する処理を導入したことの技術的意義を説明する。画素群を抽出すべき指定色の指定は、指定色を規定する輝度Y,赤色差Cr,青色差Cbの組合せをルップアップテーブルに登録することでなされるが、輝度Y,赤色差Cr,青色差Cbの組合せを一組だけ登録していたのでは、ヒストグラム生成に足りる充分な量の画素を抽出し得ないケースがでてくる。
逆に、ビットマスクを使用して、下位ビットが多少異なるような輝度Y,赤色差Cr,青色差Cbの組合せを画素群抽出の対象にすると、スタイラスではない似たような色の部位の画素を拾ってしまう。スタイラスではない似たような色の部位の画素としては、ユーザの衣服であってスタイラスと似たような部分、ユーザの背景物であってスタイラスと似たような色の部分がある。一方、スタイラスがなすコントラストを構成する各色をヒストグラム生成の対象とし、そうして生成されたヒストグラムを合成し、この合成ヒストグラムの度数を用いれば、フレーム画像に、たまたまスタイラスと似たような色の対象が写りこんでいたとしても、かかる類似色の対象物を奥行き決定の対象から除外することができる。これが、コントラストを用いることの技術的意義である。
第2実施形態におけるコントラスト処理の原理を具体例を交えながら説明する。ここでの具体例とは図19(a)のようなスタイラスを、室内の照明下で使用するというものである。かかるスタイラスは、指定色maに対応する一色で塗られているが、室内の照明が反射することでハイライトが存在する。図19(a)においてスタイラスの終端に取り付けられた球体の球面上の円状領域は、光源の照射によるハイライトが存在する領域であり指定色mbの色をなす。それ以外の領域は、指定色maの色をなす。画像処理部ではかかるハイライト部分の輝度Y,赤色差Cr,青色差Cbの組合せを指定色mbとして登録している。図19(b)は、球体の像から抽出された画素群と、X軸ヒストグラム及びY軸ヒストグラムとを示す。+記号sm1は、指定色maについてのX軸ヒストグラムhg1、指定色mbについてのX軸ヒストグラムhg2が度数合算の対象になり、結果として合成X軸ヒストグラムhg3が得られることを模式的に示す。+記号sm2は、指定色maについてのY軸ヒストグラムhg4、指定色mbについてのY軸ヒストグラムhg5が度数合算の対象になり、結果として合成Y軸ヒストグラムhg6が得られることを模式的に示す。
X軸ヒストグラム合成、Y軸ヒストグラム合成の概要を説明したところで、図20におけるX軸ヒストグラム、Y軸ヒストグラムの合成の過程にスポットライトをあてて更に詳しく説明する。
図20(a)は、指定色maの画素群に対して生成されたX軸ヒストグラムを示し、図20(b)は指定色mbに対して生成されたX軸ヒストグラムを示す。指定色mbについては、重み係数が割り当てられるので、指定色mbについてのX軸ヒストグラムの度数は、α倍される。図20(c)は、(a)の指定色maについてのX軸ヒストグラムと、指定色mbについてのX軸ヒストグラムとを合成した合成X軸ヒストグラムを示す。指定色maのヒストグラムの度数は何れも閾値を下回るものであったが、合成ヒストグラムの度数はこの閾値を上回っている。図20(d)は、合成ヒストグラムに対して平滑化を施すことで得られる平滑化合成X軸ヒストグラムを示す。破線は近似曲線である。かかる平滑化により最大度数を有しているX座標と、その次順位のX座標との組み(Xm,Xm-1,Xm+1)がみつかる。
指定した2つの色それぞれに対して、X軸とY軸に対して前記画素群を構成する画素のヒストグラムを生成し(図20(a)、図20(b))、2つの色それぞれのヒストグラムを合算したヒストグラムを生成し(図20(c))、さらに平滑化処理を施したヒストグラム(図20(d))を奥行き決定の基礎にしているので検出感度が上がり、小さな物体の検出も可能となる。
X軸ヒストグラムの合成過程の詳細を説明したところで、スタイラスの球体と、類似色の物体とがどのように区別されるかという識別法について図21を参照しながら説明する。図21の第1段目は、類似色の物体像から抽出される画素群と、スタイラスの球体から抽出される画素群とを対比して示す図21における類似色の物体は、色mcの部分と、色mdの部分とからなるコントラストを有している。かかるコントラストをなす色mc、mdが指定色として登録されているとすると、第2段目に示すように、mc、mdのそれぞれについて、X軸ヒストグラム、Y軸ヒストグラムが生成される。
第2段目は、類似色画素群の画素群から生成される2つの指定色についてのX軸ヒストグラムと、スタイラス球体の画素群から生成される2つの指定色についてのX軸ヒストグラムとを示す。+記号sm3は、スタイラスの球体については、指定色maに対応するX軸ヒストグラムhg11と、指定色mbに対応するヒストグラムhg12とが合成の対象になっていることを示す。+記号sm4は、類似色物体については、指定色mcに対応するX軸ヒストグラムhg13と、指定色mdに対応するヒストグラムhg14とが合成の対象になっていることを示す。
第3段目は、類似色画素群の画素群から生成される2つのX軸ヒストグラムを合成することで得られた合成X軸ヒストグラムと、スタイラス球体の画素群から生成される2つのX軸ヒストグラムを合成することで得られた合成X軸ヒストグラムとを示す。指定色mbについては、1を上回る係数αが登録されているので、スタイラス球体の画素群から生成される2つのX軸ヒストグラムについての合成X軸ヒストグラムの最大度数は、閾値Thを超える。
一方、類似色画素群には指定色mbの画素が存在しないので類似色画素群の画素群から生成される2つのX軸ヒストグラムについての合成X軸ヒストグラムの最大度数は、閾値Thを超えない。以上のように、指定色mbについての重み係数を設定することにより、スタイラスの球体部分の画素群と、それ以外の画素群とを区別することができる。
X軸ヒストグラム、Y軸ヒストグラムに対して指定した閾値Th未満の度数を0にし、閾値Th以上の度数に対しては閾値を減算することで、背景に含まれるノイズをキャンセルすることができるため物体の誤検出の抑制や三次元座標生成の安定化を図ることができる。また前述のヒストグラムの合算処理を組み合わせることによって、例えば図20(a)のThの位置に閾値があって、1つの色であれば、度数は0になり検出ができない状況においても、合算による感度向上の効果によって、物体の検出が可能となる。
スタイラスが、これら2以上の成形色、塗装色、包装色を有している場合について考える。この場合、光の照射によりこれらの各色がコントラストをなすから、直接光が当たった部分の色、通常の部分の色、影になっている部分の色を複数の指定色として画像処理装置に登録しておく、そしてかかる指定色に該当する画素群を抽出し、かかる抽出画素群のそれぞれについて、X軸ヒストグラム、Y軸ヒストグラムを生成して、そのように生成された指定色毎のX軸ヒストグラム、Y軸ヒストグラムについてヒストグラム合成を行えば、より高精度に奥行き決定を行うことができる。
尚、本実施形態ではスタイラスのハイライトの指定色を登録したが、スタイラスの先端を特定の色の塗料でマーキングしておき、この塗料の輝度Y,赤色差Cr,青色差Cbの組合せを指定色mbとして登録してもよい。
(第3実施形態)
本実施形態は、スタイラスのZ座標だけではなく、スタイラスの回転角を算出する構成要素を追加する。図22は、第3実施形態に係る画像処理部15の内部構成を示す。本図は、図3の内部構成をベースとして作図されており、このベースとなる内部構成と比較して、新規の構成要素が追加されている点が異なる。図21の内部構成における新規な構成要素の追加とは、X軸ヒストグラム及びY軸ヒストグラムからX座標、Y座標を取得してスタイラスの回転角を算出する回転角生成部41が存在することである。かかる回転角生成部41は、上述した回転角決定部に対応する構成要素であり、回転角生成部41で生成される回転角がイベントマネージャによるイベント生成の基礎となる。先の実施形態で説明した合成部と、これに関連する構成要素とは記載を省略している。これらの構成要素を具備するかどうかは任意的であるからである。第3実施形態に係る内部構成を説明したところで、本実施形態特有のスタイラス構成について説明する。
回転角には、スタイラス前後をX軸として回転する場合の角度であるローリング(rolling) 角、スタイラス左右をY軸にして回転する場合の角度であるピッチング (pitching)角 、スタイラス上下をZ軸にして回転する場合の角度であるヨーイング (yawing) 角がある。以降では、説明の対象として、角度角に「ローリング角」を選ぶ。以下、具体例を交えて、本実施形態における回転角決定の原理を説明する。ここで以降の説明では、図23(a)のような構成のスタイラスを題材に選ぶ。
図23(a)は、本実施形態に係るスタイラスの外観図である。図23(a)における球体は、一方の半球部分が指定色maで塗られ、他方の半球部分が指定色mbで塗られている。
図23(b)は、スタイラス終端の球体を画面に向けて移動させている状態である。矢印up1,dw1は、画面の鉛直方向に沿った移動軌跡を示す。矢印ro1は、スタイラスの右回り、左回りの回転を示す。ここでスタイラスが、X軸、Y軸に対してθという回転角をなしている場合、画像上において塗り分けの境界もθをなす。
図24(c)は、塗り分けがなされた球体の撮影画像から生成される指定色毎のX軸ヒストグラム及びY軸ヒストグラムを示す。
指定色[mb]のY軸ヒストグラムにおいて、Y0[mb]は指定色[mb]のY軸ヒストグラムについての最小座標を示す。指定色[ma]のY軸ヒストグラムにおいて、Yn[ma]は指定色[ma]のY軸ヒストグラムについての最大座標を示す。指定色[mb]のX軸ヒストグラムにおいて、X0[mb]は指定色[mb]のX軸ヒストグラムについての最小座標である。指定色[ma]のX軸ヒストグラムにおいて、Xn[ma]は指定色[ma]のX軸ヒストグラムについての最大座標を示す。図23(c)において指定色毎のY軸ヒストグラムが、Y軸上でなす差分Δyは、Yn(ma)-Y0(mb)となる。指定色毎のX軸ヒストグラムが、X軸上でなす差分Δyは、Xn(ma)-X0(mb)となる。
図23(d)は、θと、ヒストグラムの座標との幾何学的関係を示す.本図において、三角形ABCの辺ABは、Xn[ma]-X0[mb]に等しく、辺ACは、Yn[ma]-Y0[mb]に等しい。そして辺ABと、辺ACとはθ/2をなす.Tanθ/2=AB/ACの関係が成立するから、かかる関係によりθを導くことができる.図23(a)に示すように、スタイラスの球体を2色で着色しておけば、図23(b)に示すように各色の位置関係を基に回転角θを得ることができる。
図24は、第3実施形態に係る画像処理装置の全体手順を示すフローチャートである。かかるフローチャートは、図17をベースにして改良を施したものである。本フローチャートの改良とは、ステップS59においてXm、Ymのそれぞれの近傍のヒストグラムの和からZmを取得した後にステップS71を実行するというものである。ステップS71は、X軸ヒストグラム及びY軸ヒストグラムの座標の差分からスタイラスの回転角θを算出する。このステップS71の手順は、図25のサブルーチンの手順に展開することができる。図25は、スタイラスの回転角の算出手順を示すフローチャートである。本フローチャートでは、サブルーチンコール時において、1つ以上の引数を受け付けた上で本フローチャートに示される処理を実行し、当該処理の実行後、戻り値であるスタイラスの回転角を返す。ステップS75では、指定色(ma)のX軸ヒストグラムの最大X座標(Xn(ma))、指定色(ma)のY軸ヒストグラムの最大Y座標(Yn(ma))を取得し、ステップS76では、指定色(mb)のX軸ヒストグラムの最小X座標(X0(mb))、指定色(mb)のY軸ヒストグラムの最大Y座標(Yn(mb))を取得する。最後に、ステップS77ではtan(θ/2)=(Xn(ma)-X0(mb))/(Yn(ma)-Y0(mb))の関係式からθを算出する。
以上のように本実施形態によれば、X軸ヒストグラム及びY軸ヒストグラムから三次元座標を生成するという生成処理に付随して、スタイラスの回転角を算出することができるので、現実空間におけるスタイラスの動きを精密に捕捉することができる。
(第4実施形態)
本実施形態では、回転角決定に適合したスタイラスとしてどのようなものがよいかを示す。回転角決定に適した構成としては、スタイラスの柄先に、球状体を2つ取り付けるというものである。図26は、第2実施形態に係るスタイラスの構成を示す。図26(a)は、スタイラスの柄の先の部分に、指定色maで塗られた球体と、指定色mbで塗られた球体との球体対103eが存在する。図26(b)は、本実施形態で捕捉することができるスタイラスの動きを模式的に示す。本図の矢印up2dw2は、画面の鉛直方向に沿った移動軌跡を示す。矢印ro2は、スタイラスの右回り、左回りの回転を示す。上記球体対を対象にした回転角決定の原理を図26(c)〜(e)を参照しながら説明する。
図26(c)は、球体対103eを撮影したフレーム画像から抽出される画素群を示す。本図のX軸、Y軸には指定色maについて生成されるX軸ヒストグラム及びY軸ヒストグラム、指定色mbについて生成されるX軸ヒストグラム及びY軸ヒストグラムを描いている。図26(c)において指定色毎のY軸ヒストグラムが、Y軸上でなす差分Δyは、Yn(mb)-Y0(ma)となる。指定色毎のX軸ヒストグラムが、X軸上でなす差分Δyは、Xn(ma)-X0(mb)となる。
図26(d)は、スタイラスの回転角において見出される幾何学的関係を示す。スタイラスの回転角θは、XY平面において三角形ABC、CDEをなす。図26(e)は、ABC、CDEを抜き出してその幾何学的関係を示す。球体の直径は同じであり、スタイラスの中心から球体の中心までの距離も同じであるとすると、三角形ABCと、三角形CDEとは合同となる。一方、EのX座標はXn(ma),AのX座標はX0(mb)であるから、辺BC、及び、CDの長さはXn(ma)-X0(mb)の半分、つまりXn(ma)-X0(mb)/2となる。
AのY座標はYn(mb),EのY座標はY0(ma)であるから、AB及びDEの長さはYn(mb)−Y0(ma)の半分、つまりYn(mb)−Y0(ma)/2となる。
以上が本実施形態におけるスタイラスに対する改良である。続いて、本実施形態におけるソフトウェア手順の改良について説明する。本実施形態でのソフトウェア手順上の改良とは、図24のステップS71におけるスタイラス回転角の算出を、図27のフローチャートで実現するというものである。図27は、スタイラス回転角の算出手順を示すフローチャートである。図27のステップS81では、指定色(ma)のX軸ヒストグラムの最大X座標(Xn(ma))、指定色(ma)のY軸ヒストグラムの最小Y座標(Y0(ma))を取得し、ステップS82では、指定色(mb)のX軸ヒストグラムの最小X座標(X0(mb))、指定色(mb)のY軸ヒストグラムの最大Y座標(Yn(mb)を取得する。最後に、ステップS83では、tan(θ/2)=((Yn(mb)-Y0(ma))/2)/((Xn(ma)-X0(mb))/2)の関係式からθを算出する。
以上のように本実施形態によれば、図26(a)のように、スタイラスの柄先に複数個の違う色の球体の組みが取り付けておくことで、図26(b)に示すように各色の位置関係を基に回転角θを得ることができる。球体対を柄先に具備したスタイラスでは、指定色毎のヒストグラム座標の差分が大きく現れるから、スタイラスの微妙な回転を捕捉することが可能になる。
(第5実施形態)
第5実施形態は、立体視表示装置において、カメラと組みにして発光素子101bを取り付ける形態を開示する。図28(a)は斜視図であり、カメラ101aと発光素子101bの組みが取り付けられた表示装置101と、スタイラス103とを描いている。(a)において、スタイラス先端に取り付けられた球体は白色の拡散部材で加工されており、本体のLEDの色を反射する。図28(b)は、表示装置の正面からカメラ101aと発光素子101bとを見た場合の正面図である。図28(c)は、表示装置の透視図であり、表示装置内部において取り付けられたカメラ101aと発光素子101bとの組みが、どのような構成をなすかを示す。(a)の位置にスタイラスが存在する場合、スタイラスの球体はLEDから発せられた光を拡散し、その拡散光がカメラ101aに入射する。画像処理装置には、この照射された球体がなす表面色が指定色として登録されていて、かかる登録がなされた画素群を抽出し、撮影画像を生成する。
カメラと組みになった発光素子がスタイラスを照らし、画像処理部15は照射がなされた状態の画像からヒストグラム生成を行い、結果となるヒストグラムに平滑化を施して最大度数に基づく奥行き決定をするので、スタイラスの指定色と似たような色が背景に存在したとしても、誤検出を避けることができる。
(第6実施形態)
第1実施形態のスタイラスは、タッチパネルの操作に適合したペン先と、捕捉対象の捕捉に適合した球状体とを有する2wayタイプのスタイラスであったが、これでは、ペン先と、球状体とが同時に捕捉されてしまって誤検出が生じやすいという欠点が生じる。そこで本実施形態では、スタイラスの形態自体の改良により、かかる誤検出の解消を図る。
かかる誤検出に適した改良としては、図29(a)〜(e)に示すものがある。図29(a)は、スタイラスを筒状のケース110で覆い、ケースをスライドさせるというものである。第1段目は、筒状ケース110を柄先方向にスライドして、球体を収納している収納形態を示す。第2段目は、球体が収納された状態での断面図である。このように収納状態では、柄先の球体が筒状ケース110に隠れていることがわかる。第3段目は、筒状ケースをペン先方向にスライドさせた場合の断面図である。この状態では柄先の球体が表れ、立体視オブジェクトに対する操作に用いることができる。以上のようにケースを柄先方向にスライドさせれば、ペン先が表れ、ペン先方向にスライドさせればボールが現れる。これによりペン先、柄先の球体の一方を三次元座標の生成の対象として選ぶことができる。この図29(a)の態様では、スタイラスの先端部と後部の球体をスライドしてケースに出し入れできるから、先端部と球体の色が同系色の場合に誤検出を防ぐことができる。
図29(b)は、ジェル状の樹脂をスタイラスに充填した構成である。第1段目は外観図であり、プッシュボタン111が側面に設けられていて、ペン先には貫通孔112が存在する。第2段目は断面図である。第2段目に示すように、スタイラスの内部空洞にはジェル状の樹脂113が充填している。第3段目は、このプッシュボタン111を押下した状態を示す。かかる押下により内部のジェル状の樹脂113が押し出され、ペン先に設けられた貫通孔112を通じてジェルの塊を吹き出させる。かかるジェルの色が指定色として画像処理装置のルップアップテーブルに登録されており、スタイラスのペン先から吹き出た状態でユーザがスタイラスを把持した操作を行えば、このジェルの像を構成する画素群についてヒストグラム生成を行い、結果となるヒストグラムに平滑化を施して最大度数に基づく奥行き決定を行う。図29(b)では、スタイラスのボタン111を押下すると、先端部からゴム状の色がついた物体が出てきて、これをカメラ101aに捕捉させるから、先端部と球体の色が同系色の場合に誤検出を防ぐことができる。
図29(c)は、球体に円錐状の孔を設けておき、ここにスタイラスのペン先をはめ込むことで、球体をスタイラスに取り付けるというものである。図29(c)では、球体を尖った先端部で串刺した形状にすることで、スタイラスの片方だけでタッチパネルの操作とカメラ101aによる追跡による操作ができる。
図29(d)は、ペン先を構成する三角錐を脱着可能とした例であり、図29(e)は球体をスタイラスから脱着可能としたものである。図29(e)では、周辺環境の色合いに合わせて誤検出が少ない色に先端部もしくは後部の球体の色を交換できる。
(第7実施形態)
これまでの実施形態は、立体視オブジェクトに対するスタイラスによるタッチをカメラ101aで捕捉するための三次元座標生成を対象としていたが、本実施形態は、画面をなぞるスタイラスペンの動きを追従する形態である。
図30を参照しながら画面をなぞる動きを捕捉する原理について説明する。
図30(a)は、第7実施形態にかかる表示装置の外観を示す図である。カメラ201は、支持部材を介して表示装置に取り付けられており、画面を斜め下に見下ろす形態になっている。図30(a)では表示装置の画面が右斜め上を向いており、かかる画面の表面をスタイラスの先端が移動している。図中の矢印up3,dw3は、スタイラスの上下移動を示す。図中の十字cr1は、画面上におけるスタイラス先端の軌跡を模式的に示す。このスタイラス先端の軌跡からも明らかなように、本実施形態では画面から空間的に離れた位置でスタイラスを移動させる場合だけではなく、画面表面をなぞる場合でもこのスタイラスの位置を捕捉する。これは画像処理装置が画像から三次元座標を生成するからである。
図30(a)に示すようにカメラ101aは、ディスプレイの上側面に存在するため、カメラ101aにより撮影される映像には、ユーザの正面像のだけではなくスタイラスの先端が写りこむ。図30(b)は、図30(a)のカメラ101aで撮影されるフレーム画像を示す。図30(b)においてフレーム画像の下側にスタイラスのペン先が写りこんでいることがわかる。そこで画素群の抽出時において抽出された画素群に対して写像変換を行い、フレーム画像の下半分にあたる抽出画像を、全画面画像に変換する。(c)は、写像変換前の抽出画像、写像変換後の全画面画像を示す。(c)の左側は、(b)のフレーム画像から表示装置の画面枠を抜き出したものである。カメラの位置は、画面の斜め上であるから、画面枠は、この斜め上から見下ろしたような形状(台形状)になっている。図中の矢印ext3は、フレーム画像からの画面枠の抜き出しを模式的に示す。図中の矢印trf1はこの写像変換を模式的に示す。(c)の右側は、写像変換後の全画面画像となる。かかる写像変換後の画像に対して行えば、平面視画像に対するスタイラス操作であっても、三次元座標生成の対象にすることができる。上記の第7実施形態の構成では、ペン先で画面をなぞる動きも、画像処理部15による画像処理で捕捉できるから、タブレット端末ではタッチセンサを省略することができ、低コスト化が可能になる。
以上のように本実施形態によれば、画面を少し離れてなぞるようなスタイラスの動きを撮影してこの撮影画像に対してヒストグラム生成を行い、結果となるヒストグラムに平滑化を施して最大度数に基づく奥行き決定を行うことで、スタイラスのペン先の奥行きを示す座標を生成することができる。スタイラスの三次元座標や回転角が画面におけるタッチ位置やタブレット端末の傾きと同列に扱われるので、スタイラスの空間的位置に連動した動作をアプリケーションに行わせることができる。アプリケーションがゲームやブラウザである場合、スタイラスの立体的な動きに追従するような動作をアプリケーションに行わせることができる。
(第8実施形態)
本実施形態は、これまでの実施形態で述べた捕捉対象の動きの捕捉を応用して三次元ジェスチャを実現するというものである。表示装置の手前でユーザが渦巻を描いた場合、この動きの軌跡を複数枚のフレーム画像で表してX軸ヒストグラム及びY軸ヒストグラム生成を行い、これを基に三次元情報を生成すればユーザが一筆書きで描いた立体形状を、三次元座標モデルに変換することができる。図31(a)は、ユーザが空間中で描いた渦巻形状と、このスタイラスの動きから生成される三次元座標tr1,tr2,tr3・・・・とを示す。
図31(b)は、ユーザが空間中で描いた渦巻形状と、このスタイラスの動きから生成される三次元座標ur1,ur2,ur3・・・・とを示す。
カメラ101aで得た複数のフレーム画像を対象にしてスタイラスの移動軌跡を示す複数の三次元座標を生成するからこの座標をもとにユーザによるジェスチャを認識して立体物モデルを生成し、コンピュータグラフィクスとして表示させることができる。ジェスチャ認識は、具体的には以下のように行う。画像処理装置においては、ジェスチャ辞書を設けておく。この辞書は、認識すべきジェスチャパターンのそれぞれに、正規化された三次元ベクトル列を対応付けたものである。上記の例では、渦巻の形状、ピラミッドの形状のそれぞれについて、正規化された三次元ベクトル列を対応付けている。一方、画像処理装置が複数のフレーム画像に対してこれまでの実施形態で述べた画像処理を行うことで、各フレーム画像に対する捕捉対象についての三次元座標が生成される。かかる複数の三次元座標を基に、捕捉対象の動きを示す三次元ベクトルを生成し、これを正規化する。そして、正規化された複数の三次元ベクトルを用いて上記ジェスチャ辞書を検索し、最ももっともらしいジェスチャを選ぶ。こうして選ばれたジェスチャに対応する処理をアプリケーションが実行する。この場合、ユーザがスタイラスを使って渦巻を描けば、この渦巻をもとにゲームの中で竜巻を起こしたり、4面体を描けばゲームの中でピラミットを築くという演出が可能になる。
<備考>
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明したが、以下に示す技術的トピックについては、更なる改良や変更実施を加えることができる。各実施形態に示した通り実施するか、これらの改良・変更を施すか否かは、何れも任意的であり、実施する者の主観によることは留意されたい。
(ヒストグラム生成時の調整)
立体視オブジェクトの飛び出し量は、画面サイズによって変わる。よって立体視オブジェクトの飛出し量に応じて、ヒストグラム生成やヒストグラムの度数合算にあたっての重み係数、畳み込むべきインパルス応答を変更してもよい。
(タッチイベントの生成)
三次元座標のうち、特定の空間領域に属するものをタッチイベントの対象としたが、発生したイベントの全てをタッチイベントに変換してアプリケーションに送信してもよい。立体視オブジェクトのどの部分を操作の対象にするかはアプリケーションによって異なるので、こうする方がアプリケーションによる適切な処理が可能になるからである。この場合、イベントマネージャにあたる処理をアプリケーションをロードすればよい。
画像処理装置により生成される三次元座標を含むタッチイベントは、パスワード入力等のユーザ認証やGUI部材を通じた対話処理を実現することにより装置のセットアップ入力やコンフィグレーション入力に利用してもよい。
(立体視シアターシステム化)
第1実施形態に示した表示装置を、記録媒体の再生装置及び表示装置からなる立体視シアターシステムとして構成してもよい。この場合、表示部及び画像処理部のみを表示装置の構成要素とし、プラットフォーム部、ヒープメモリ、ビデオデコーダ、レンダリング部、ビデオプレーン、グラフィクスプレーン、イベントマネージャを再生装置の構成要素とする。この場合、表示装置に具備された画像処理装置は、表示装置とのインターフェイスを介して三次元座標を再生装置に出力する。記録媒体の再生装置は、こうして受け取った三次元座標に従い、イベントを生成してアプリケーションを駆動するのである。
(平滑化のバリエーション)
これまでの実施形態において、移動平均フィルタ、ガウシアンフィルタやインパルス応答フィルタで平滑化を実現したが平滑化は、これに限られるものではなく、複数座標の度数を加算して、座標数で割るとの演算が伴えば足りる。他の一例として以下のものがある。つまり、核関数による平滑化、多項式の局所的当てはめによる平滑化 、散布図平滑化、スプライン関数当てはめによる平滑化、移動直線平滑化、Friedmanのsupersmoother 法 、移動中央値による平滑化 、Tukey の移動中央値平滑化、移動中央値に対する端点平滑化が存在する。
(度数計数の対象となる座標)
ヒストグラムで度数計数の対象となる複数の座標は、X軸又はY軸において連続する複数の座標であってもよいし、ある決まった数の座標を間引いたものでもよい。度数計数の対象となる座標を間引くことで、ヒストグラム標本数の少なくすることができ、ヒストグラム生成の負荷を小さくすることができる。
(奥行き決定の基礎となる度数)
奥行き決定の基礎となる度数を、最大度数の座標であるXmの度数と、一つ手前のXm-1の度数と、1つ後のXm+1の度数とにしたが、これらに代えて、Xmからある決まった数だけ隔てた座標の度数であってもよい。また、Xmの度数を採用せず、一つ手前のXm-1の度数や1つ後のXm+1の度数等、近傍値の度数のみを奥行き決定の基礎にしてもよい。同様に奥行き決定の基礎となる度数を、最大度数の座標であるYmの度数と、一つ手前のYm-1の度数と、1つ後のYm+1の度数とにしたが、これらに代えて、Ymからある決まった数だけ隔てた座標の度数であってもよい。また、Ymの度数を採用せず、一つ手前のYm-1の度数や1つ後のYm+1の度数等、近傍値の度数のみを奥行き決定の基礎にしてもよい。
(多視点ビデオストリームの構成)
多視点ビデオストリームは、フレームシーケンシャルフォーマットであるとしたが、垂直方向ラインインターリーブドフォーマット、水平方向ラインインターリーブドフォーマット、トップダウンフォーマット、サイドバイサイドフォーマット、フィールドシーケンシャルフォーマット、ブロックインターリーブドフォーマットであってもよい。ブロックインターリーブドフォーマットは、例えば、基準視点映像及び付加視点映像がブロック単位で交互に混合映像のブロックに配置されることによって、混合映像を構成する。
(奥行き決定の対象物)
奥行き決定の対象物は、人体の一部であってもよい。この場合、非特許文献1に記載されているようなHue Saturation Valueカラーシステムを指定色のルップアップテーブルとして画像処理装置に登録しておき、画素群の抽出を行えばよい。しかし人体を対象物とする場合、人体の手、腕、顔、首がフレーム画像に写りこむ。この場合、上述したようなルップアップテーブルでは、手、腕、顔、首の画素群が抽出され、適切な奥行きが定まらない恐れがある。そこで、第1実施形態に示した発光素子101bを用いて人体の部位のうち、奥行き決定の対象となるべき部位を照射する。ルップアップテーブルでは、その照射された状態の部位の輝度Y,赤色差Cr,青色差Cbの組合せ、輝度成分、赤色差成分、青色差成分の組合せを登録しておく。こうすることで奥行き決定の対象を人体の指先に絞ることができる。
(指定色登録の対象)
スタイラスの表面がなす模様のコントラストを、複数の指定色として登録しておき、かかる複数の指定色に従いX軸ヒストグラム、Y軸ヒストグラムを生成してヒストグラム合成の対象にしてもよい。模様のコントラストとしては、チェッカーパターンや虹色パターン、格子パターン、バーコード、QRコード(登録商標)がありえる。このように、様々な色の組合せを指定色としてルップアップテーブルに登録しておけば、類似する色の物体と、捕捉対象との区別を適切に行うことができる。
(数式及び算出処理の範囲)
本願の出願明細書や図面に記載した様々な数式は、数学的な概念を意味するのではなく、あくまでも、コンピュータ上で実行される数値演算を意味するものなので、当然のことながら、コンピュータに実現させるための、必要な改変が加えられることはいうまでもない。例えば、数値を、整数型、固定少数点型、浮動小数点型で扱うための飽和演算や正値化演算が施されてよいことはいうまでもない。更に、各実施形態に示した、数式に基づく演算処理や算出処理は、定数ROMを用いたROM乗算器で実現することができる。定数ROMには、被乗数と定数との積の値はあらかじめ計算されて格納されている。例えば、被乗数が16ビット長である場合、この被乗数は、4ビット毎に四つに区切られ、この4ビット部分と定数との積、つまり、定数の0〜15の倍数が上記の定数ROMに格納されている。上記の一区切りの4ビットと定数16ビットとの積は20ビット長であり、上記の四つの定数が同一のアドレスに格納されるので、20×4=80ビット長が一語のビット長となる。以上述べたように、ROM乗算器での実現が可能であるので、本明細書でいうところの"算出処理"や"演算処理"は、純粋な算術演算のみを意味するのではなく、ROM等の記録媒体に格納された演算結果を、被演算子の値に応じて読み出すという、記録媒体の読み出しをも包含する。
(画像処理部15のハードウェア構成)
ヒストグラム生成部24は、以下のようなハードウェア構成を具備したヒストグラム生成回路として実現することができる。具体的にいうとヒストグラム生成部24は、画素を構成する輝度Y,赤色差Cr,青色差Cbの階調ビット値と、指定色のルップアップテーブルに記載された輝度Y,赤色差Cr,青色差Cbの階調ビット値とを比較する比較回路、比較回路で一致が判定された場合、カウント値をインクリメントするカウンタ回路、画素の座標を、そのカウント値と共にメモリに書き込む書込回路とにより実現することができる。
ヒストグラム平滑化部26は、以下のようなハードウェア構成を具備したヒストグラム平滑化回路として実現することができる。具体的にいうと、隣接する座標の度数に、所定の重み係数を掛けて加算する乗加算器、この加算器の加算結果を前記複数画素の画素数で割る除算器で構成すればよい。上記平滑化は加重平均によりなされるから、汎用プロセッサの算術演算回路に以下の積和演算を行わせることでもヒストグラム平滑化部を実現することもできる。当該算術演算回路は、レジスタに格納された度数と、レジスタに格納された係数との乗算を乗算命令に従い行う。それと共に積和結果専用レジスタが保持している積和値を取り出して、乗算結果と取り出された積和値とを加算し、加算後、加算結果を積和結果専用レジスタに保持させる。算術演算回路が上記動作を繰り返すことにより、積和結果専用レジスタにはこれまでの積和値が蓄積される。乗算が所定回数行われると、積和結果専用レジスタの蓄積値を汎用レジスタに転送して、割り算を行い、その結果を平滑化後の度数とする。
三次元座標生成部28は、以下のようなハードウェア構成を具備した三次元座標生成回路として実現することができる。具体的にいうと、座標毎の度数の比較を行う比較回路、比較によって得られた最大の度数と、これに準じる度数とを格納するレジスタ回路、複数の奥行きを保持しているROM回路、度数の和に従い、ROM回路で保持されている複数の奥行き値の中から、適切な奥行き選択的に出力するセレクタ回路から構成すればよい。
(捕捉対象の形状に応じた奥行き補正)
奥行き決定にあたっては、捕捉対象の形状に応じた奥行き補正を行うのが望ましい。図32(a)は、球状体についての奥行き補正を示す。左側の撮影した撮影画像に対して指定色に基づく画素群抽出がなされことで、中央の画素群が得られる。そしてこの抽出画素群からX軸ヒストグラム、Y軸ヒストグラムを生成すればその最大度数から右側に示すような中央十字線の面積を導くことができる。この中央十字線を奥行き基準としたが、かかる球の表面にあたる部分を奥行きの基準にしてもよい。図32(b)はペン先に対する奥行き補正の過程を示す。左側は、スタイラスのペン先を示し、中央はこのペン先を撮影した撮影画像から抽出される抽出画像を示す。左側は、この抽出画素群から生成された平滑化ヒストグラムの最大度数から得られる中央十字線を示す。中央十字線に示すように、ペン先の画素群の形状は、おおよそ逆三角形となり、これを基に生成される中央十字線も、下辺が長いものとなる。この下辺がペン先にあたるから、スタイラスの奥行きであるZmの補正にかかる下辺の長さlen1を使用する。更に、中央十字線の下辺と、右辺または左辺とがなす角度θをもちいることが望ましい。中央十字線の下辺と、右辺または左辺とがなす角度θは、tanθ=len2/len1の関係を満たすから、len2と、len1との比率をθとして使用し、かかるθをペン先の本来の角度と比較すればペン先がX-Y平面からどれだけ傾いているかがわかる。かかるθを奥行き決定に利用することで、ペン先による操作をより直感的にすることができる。
(Continuously Adaptive Meanシフトの適用)
X軸ヒストグラムのXmの度数、Y軸ヒストグラムのYmの度数をContinuously Adaptive Meanシフト(CAMSHIFT)に適用して奥行きを決定してもよい。h(Xm)、h(Ym)により中央十字線の横幅、縦幅が定まるから、かかるh(Xm)、h(Ym)を、中央十字線の横幅、縦幅として上述したようなContinuously Adaptive Meanシフト(CAMSHIFT)の手順1.に採用することで、人体の一分を捕捉できるような高度が奥行き決定の実現が可能になる。
(集積回路としての実施)
画像処理部15は、表示装置に組込むべき半導体集積回路であるから、かかる画像処理部15を高密度基板上にパッケージングすることでシステムLSIを構成してもよい。システムLSIは、複数個のベアチップを高密度基板上に実装し、パッケージングすることにより、あたかも1つのLSIのような外形構造を複数個のベアチップに持たせたものであり、マルチチップモジュールと呼ばれる。集積回路のアーキテクチャは、プリプログラムされたDMAマスタ回路等から構成され、ストリーム処理全般を実行するフロントエンド処理部(1)と、SIMDプロセッサ等から構成され、信号処理全般を実行する信号処理部(2)と、画素処理や画像重畳、リサイズ、画像フォーマット変換AV出力処理全般を行うバックエンド部(3)と、ドライブ、ネットワークとのインターフェイスであるメディアインターフェイス(4)と、メモリアクセスのためのスレーブ回路であり、フロントエンド部、信号処理部、バックエンド部の要求に応じて、パケットやデータの読み書きを実現するメモリコントローラ(5)とから構成される。ここでパッケージの種別に着目するとシステムLSIには、QFP(クッド フラッド アレイ)、PGA(ピン グリッド アレイ)という種別がある。QFPは、パッケージの四側面にピンが取り付けられたシステムLSIである。PGAは、底面全体に、多くのピンが取り付けられたシステムLSIである。
その他、集積回路としての実施にあたっては、内部処理系統の構成要素として、フレーム画像、画素群やヒストグラムを所望の形式に変換する変換回路、データ・ストリームを一時的に格納するキャッシュメモリ、データ転送の速度調整を行うバッファメモリ、電源投入に応じて必要なプログラムをROMからRAMに読み出し、初期化を図る初期化回路、ヒストグラムの状態に応じて電源制御を行う電源制御回路、制御部におけるMPUが、画像処理装置の構成要素にあたる複数のプログラムをタスク・アプリケーションとして管理して、これらのプログラムの優先度に従いスケジューリングを行うプログラム管理部、リセット発生や電源異常等の外部事象に応じた割込信号を生成する割込ハンドラ部を追加することができる。また、ビデオデコーダやレンダリング部、プラットフォーム部と一体化してもよい。
(プログラムとしての実施形態)
各実施形態に示したプログラムは、以下のようにして作ることができる。先ず初めに、ソフトウェア開発者は、プログラミング言語を用いて、各フローチャートや、機能的な構成要素を実現するようなソースプログラムを記述する。この記述にあたって、ソフトウェア開発者は、プログラミング言語の構文に従い、クラス構造体や変数、配列変数、外部関数のコールを用いて、各フローチャートや、機能的な構成要素を具現するソースプログラムを記述する。
記述されたソースプログラムは、ファイルとしてコンパイラに与えられる。コンパイラは、これらのソースプログラムを翻訳してオブジェクトプログラムを生成する。
コンパイラによる翻訳は、構文解析、最適化、資源割付、コード生成といった過程からなる。構文解析では、ソースプログラムの字句解析、構文解析および意味解析を行い、ソースプログラムを中間プログラムに変換する。最適化では、中間プログラムに対して、基本ブロック化、制御フロー解析、データフロー解析という作業を行う。資源割付では、ターゲットとなるプロセッサの命令セットへの適合を図るため、中間プログラム中の変数をターゲットとなるプロセッサのプロセッサが有しているレジスタまたはメモリに割り付ける。コード生成では、中間プログラム内の各中間命令を、プログラムコードに変換し、オブジェクトプログラムを得る。
ここで生成されたオブジェクトプログラムは、各実施形態に示したフローチャートの各ステップや、機能的構成要素の個々の手順を、コンピュータに実行させるような1つ以上のプログラムコードから構成される。ここでプログラムコードは、プロセッサのネィティブコード、JAVA(登録商標)バイトコードというように、様々な種類がある。プログラムコードによる各ステップの実現には、様々な態様がある。外部関数を利用して、各ステップを実現することができる場合、この外部関数をコールするコール文が、プログラムコードになる。また、1つのステップを実現するようなプログラムコードが、別々のオブジェクトプログラムに帰属することもある。命令種が制限されているRISCプロセッサでは、算術演算命令や論理演算命令、分岐命令等を組合せることで、フローチャートの各ステップを実現してもよい。オブジェクトプログラムが生成されるとプログラマはこれらに対してリンカを起動する。リンカはこれらのオブジェクトプログラムや、関連するライブラリプログラムをメモリ空間に割り当て、これらを1つに結合して、ロードモジュールを生成する。こうして生成されるロードモジュールは、コンピュータによる読み取りを前提にしたものであり、各フローチャートに示した処理手順や機能的な構成要素の処理手順を、コンピュータに実行させるものである。かかるコンピュータプログラムを非一時的なコンピュータ読取可能な記録媒体に記録してユーザに提供してよい。
(ネットワークへの応用)
表示装置と、画像処理装置とはネットワークを介して接続されてもよい。この場合、画像処理装置は、ネットワークを介して表示装置のカメラによるフレーム画像を受け取り三次元座標生成を行う。そして生成した三次元座標を表示装置に出力して、表示装置で実行されているアプリケーションに、かかる三次元座標をトリガにした動作を行わせる。また画像処理装置により生成される三次元座標にはタイムコードが付加されてもよい。三次元座標に付加されるタイムコードは三次元座標生成の基礎となったフレーム画像の再生時刻を特定するものである。かかるタイムコードを参照することでアプリケーションは、古いフレーム画像から生成された三次元座標を無視したり、また、短い期間にバースト的に発生した複数の三次元座標の一部を間引いたりすることができる。
本発明にかかる画像処理装置、集積回路、画像処理プログラムにおいては、少ない演算量で映像中から特定の物体の三次元位置情報を抽出することが可能であり、カメラ搭載機器をリモート制御するシステムへの展開が可能である。
12 撮影部
24 ヒストグラム生成部
26 ヒストグラム平滑化部
28 三次元座標生成部

Claims (12)

  1. 画像処理により、現実空間にある対象物の奥行きを定める画像処理装置であって、
    現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する生成部と、
    生成されたヒストグラムの平滑化を行う平滑化部と、
    平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部と
    を備える画像処理装置。
  2. 前記特定の座標には、
    平滑化されたヒストグラムにおいて、最大の出現数に対応付けられている基準軸上の座標と、平滑化されたヒストグラムにおいて最大出現数に準ずる次順位以降の出現数に対応付けられている基準軸上の座標とがある
    ことを特徴とする請求項1記載の画像処理装置。
  3. 前記画像処理装置は、ヒストグラム生成の基礎となる2以上の指定色を予め登録している登録テーブルと、
    登録された2以上の指定色のそれぞれについてヒストグラムが生成された場合、指定色毎のヒストグラムに示される各座標毎の出現数を、同じ座標に位置するもの同士で足し合わせて、その加算結果を各座標に対応する出現数とした合成ヒストグラムを得るヒストグラム合成部とを備え、
    前記奥行き決定部による奥行き決定の対象となる座標は、合成ヒストグラムにおいて、所定の閾値を上回る出現数を有する座標である
    ことを特徴とする請求項1記載の画像処理装置。
  4. 前記2つ以上の指定色のうち何れか1つのものは、特定の重み係数が割り当てられた特定色であり、
    前記ヒストグラム合成部が合成ヒストグラムを生成するにあたって、特定色のヒストグラムの座標毎の出現数については、特定の重み係数を乗じた上、他の指定色のヒストグラムの同じ座標の出現数に足し合わせる
    ことを特徴とする請求項3記載の画像処理装置。
  5. 前記現実空間における対象物は、2以上の指定色をなす操作部材であり、前記画像処理装置は、操作部材の回転角を決定する回転角決定部を備え、
    生成部によって2以上の指定色について生成されるヒストグラムは、基準軸において互いに異なる座標に位置し、
    前記回転角決定部は、 各指定色のヒストグラムにおける最大座標及び最小座標が、基準軸においてどれだけ隔てられているかという差分に基づき操作部材の回転角を定める
    ことを特徴とする請求項1記載の画像処理装置。
  6. 前記指定色は、画素を構成する輝度成分及び色差成分の組合せによって特定され、
    画像処理装置は、
    フレーム画像データを構成する複数画素のうち、輝度成分及び色差成分の組合せに合致するものからなる画素群を、基準軸上の複数の座標と対応付けて抽出する画素群抽出部を備え、
    生成部によるヒストグラム生成は、
    抽出された画素の数を、基準軸上の複数の座標に対応付けることでなされる
    ことを特徴とする請求項1記載の画像処理装置。
  7. 前記指定色は、画素を構成する複数の原色成分の輝度の組合せによって特定され、
    画像処理装置は、
    フレーム画像データを構成する複数画素のうち、複数の原色成分の輝度の組合せに合致するものからなる画素群を、基準軸上の複数の座標と対応付けて抽出する画素群抽出部を備え、
    生成部によるヒストグラム生成は、
    抽出された画素の数を、基準軸上の複数の座標に対応付けることでなされる
    ことを特徴とする請求項1記載の画像処理装置。
  8. 前記現実空間の対象物は、立体視装置の立体視効果により画面から飛び出した立体視オブジェクトを操作するための操作部材であり、
    前記基準軸とは、フレーム画像データにおけるX軸又はY軸であり、
    前記奥行き決定部により決定される奥行きは、操作部材がなす三次元座標のZ座標になり、当該三次元座標は、立体視装置において立体視オブジェクトの挙動を変化させるイベントの生成に用いられる
    ことを特徴とする請求項1記載の画像処理装置。
  9. 前記平滑化は、ヒストグラムに示される座標毎の出現数に対してインパルス応答を畳み込むことでなされる
    ことを特徴とする請求項1記載の画像処理装置。
  10. フレーム画像データを構成する複数画素のうち、特定の指定色をもつものからなる画素群を抽出する画素群抽出部と、
    抽出された画素群における各画素の画素値に対して平滑化を施す平滑化部と、
    平滑化された画素群における指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれ対応付けて示すヒストグラムを生成する生成部と、
    平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部と
    を備える画像処理装置。
  11. 画像処理により、現実空間にある対象物の奥行きを定める集積回路であって、
    現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する生成部と、
    生成されたヒストグラムの平滑化を行う平滑化部と、
    平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部と
    を備える集積回路。
  12. 画像処理により、現実空間にある対象物の奥行きを定める処理をコンピュータに実行させる画像処理プログラムであって、
    現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムの生成と、
    生成されたヒストグラムの平滑化と、
    平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定とを コンピュータに実行させる画像処理プログラム。
JP2013544596A 2012-03-23 2013-03-15 画像処理を行うことにより、現実空間にある対象物の奥行きを定める画像処理装置、立体視装置、集積回路、プログラム Expired - Fee Related JP6100698B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012066612 2012-03-23
JP2012066612 2012-03-23
PCT/JP2013/001802 WO2013140776A1 (ja) 2012-03-23 2013-03-15 画像処理を行うことにより、現実空間にある対象物の奥行きを定める画像処理装置、立体視装置、集積回路、プログラム

Publications (2)

Publication Number Publication Date
JPWO2013140776A1 JPWO2013140776A1 (ja) 2015-08-03
JP6100698B2 true JP6100698B2 (ja) 2017-03-22

Family

ID=49222257

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013544596A Expired - Fee Related JP6100698B2 (ja) 2012-03-23 2013-03-15 画像処理を行うことにより、現実空間にある対象物の奥行きを定める画像処理装置、立体視装置、集積回路、プログラム

Country Status (4)

Country Link
US (1) US9754357B2 (ja)
JP (1) JP6100698B2 (ja)
CN (1) CN103503030B (ja)
WO (1) WO2013140776A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140046327A (ko) * 2012-10-10 2014-04-18 삼성전자주식회사 멀티 디스플레이 장치, 입력 펜, 멀티 디스플레이 장치의 제어 방법 및 멀티 디스플레이 시스템
US10475226B2 (en) 2013-03-15 2019-11-12 Crayola Llc Coloring kit for capturing and animating two-dimensional colored creation
US9946448B2 (en) 2013-03-15 2018-04-17 Crayola Llc Coloring kit for capturing and animating two-dimensional colored creation
US9424811B2 (en) 2013-03-15 2016-08-23 Crayola Llc Digital collage creation kit
JP6510213B2 (ja) * 2014-02-18 2019-05-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 投影システム、半導体集積回路、および画像補正方法
CN105303586B (zh) * 2014-07-16 2018-05-11 深圳Tcl新技术有限公司 获取直方图的方法、亮度动态调整的方法及图像处理装置
EP3189418B1 (en) * 2014-09-02 2022-02-23 AB Initio Technology LLC Visually specifying subsets of components in graph-based programs through user interactions
JP6698656B2 (ja) 2014-09-02 2020-05-27 アビニシオ テクノロジー エルエルシー グラフに基づくプログラムの仕様のコンパイル
US9467279B2 (en) * 2014-09-26 2016-10-11 Intel Corporation Instructions and logic to provide SIMD SM4 cryptographic block cipher functionality
WO2016121329A1 (ja) 2015-01-29 2016-08-04 パナソニックIpマネジメント株式会社 画像処理装置、スタイラス、および画像処理方法
JP6398755B2 (ja) * 2015-01-30 2018-10-03 富士通株式会社 入力装置、入力方法及び入力処理用コンピュータプログラムならびに入力システム
US9805662B2 (en) * 2015-03-23 2017-10-31 Intel Corporation Content adaptive backlight power saving technology
US9430688B1 (en) * 2015-03-25 2016-08-30 The Boeing Company Overlapping multi-signal classification
CN106097309B (zh) * 2016-05-30 2017-12-19 广州巧瞳科技有限公司 一种智能显示视觉图像的位置信息处理方法及系统
US10353946B2 (en) * 2017-01-18 2019-07-16 Fyusion, Inc. Client-server communication for live search using multi-view digital media representations
JP6969149B2 (ja) * 2017-05-10 2021-11-24 富士フイルムビジネスイノベーション株式会社 三次元形状データの編集装置、及び三次元形状データの編集プログラム
WO2019161562A1 (en) * 2018-02-26 2019-08-29 Intel Corporation Object detection with image background subtracted
US10733800B2 (en) 2018-09-17 2020-08-04 Facebook Technologies, Llc Reconstruction of essential visual cues in mixed reality applications
CN109615659B (zh) * 2018-11-05 2023-05-05 成都西纬科技有限公司 一种车载多摄像机环视系统的摄像机参数获得方法及装置
CN109933195B (zh) * 2019-03-06 2022-04-22 广州世峰数字科技有限公司 基于mr混合现实技术的界面立体式展示方法及交互系统
WO2022178455A1 (en) * 2021-02-22 2022-08-25 Northeastern University Method for visual function assessment using multistable rivalry paradigms
CN112907745B (zh) * 2021-03-23 2022-04-01 北京三快在线科技有限公司 一种数字正射影像图生成方法及装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4991092A (en) * 1988-08-12 1991-02-05 The Regents Of The University Of California Image processor for enhancing contrast between subregions of a region of interest
US5521843A (en) * 1992-01-30 1996-05-28 Fujitsu Limited System for and method of recognizing and tracking target mark
JPH06131442A (ja) 1992-10-19 1994-05-13 Mazda Motor Corp 3次元虚像造形装置
US5484966A (en) 1993-12-07 1996-01-16 At&T Corp. Sensing stylus position using single 1-D image sensor
JP2647033B2 (ja) * 1994-11-24 1997-08-27 日本電気株式会社 ルックアップテーブル作成方法及びルックアップテーブル作成装置
US6795068B1 (en) 2000-07-21 2004-09-21 Sony Computer Entertainment Inc. Prop input device and method for mapping an object from a two-dimensional camera image to a three-dimensional space for controlling action in a game program
US20020176001A1 (en) * 2001-05-11 2002-11-28 Miroslav Trajkovic Object tracking based on color distribution
JP2005031045A (ja) * 2003-07-11 2005-02-03 Olympus Corp 情報呈示装置及び情報呈示システム
US20080018668A1 (en) * 2004-07-23 2008-01-24 Masaki Yamauchi Image Processing Device and Image Processing Method
JP4328286B2 (ja) 2004-12-14 2009-09-09 本田技研工業株式会社 顔領域推定装置、顔領域推定方法及び顔領域推定プログラム
JP2006185109A (ja) * 2004-12-27 2006-07-13 Hitachi Ltd 画像計測装置及び画像計測方法
US7683950B2 (en) * 2005-04-26 2010-03-23 Eastman Kodak Company Method and apparatus for correcting a channel dependent color aberration in a digital image
US9891435B2 (en) * 2006-11-02 2018-02-13 Sensics, Inc. Apparatus, systems and methods for providing motion tracking using a personal viewing device
US8103102B2 (en) * 2006-12-13 2012-01-24 Adobe Systems Incorporated Robust feature extraction for color and grayscale images
CN101622869B (zh) * 2007-12-18 2012-03-07 松下电器产业株式会社 图像再现装置、图像再现方法及图像再现程序
US8525900B2 (en) * 2009-04-23 2013-09-03 Csr Technology Inc. Multiple exposure high dynamic range image capture
US8340420B2 (en) * 2009-10-05 2012-12-25 National Taiwan University Method for recognizing objects in images
US8199165B2 (en) * 2009-10-14 2012-06-12 Hewlett-Packard Development Company, L.P. Methods and systems for object segmentation in digital images
US9646453B2 (en) * 2011-12-23 2017-05-09 Bally Gaming, Inc. Integrating three-dimensional and two-dimensional gaming elements

Also Published As

Publication number Publication date
CN103503030A (zh) 2014-01-08
CN103503030B (zh) 2017-02-22
WO2013140776A1 (ja) 2013-09-26
JPWO2013140776A1 (ja) 2015-08-03
US9754357B2 (en) 2017-09-05
US20140071251A1 (en) 2014-03-13

Similar Documents

Publication Publication Date Title
JP6100698B2 (ja) 画像処理を行うことにより、現実空間にある対象物の奥行きを定める画像処理装置、立体視装置、集積回路、プログラム
CN108525298B (zh) 图像处理方法、装置、存储介质及电子设备
CN106355153B (zh) 一种基于增强现实的虚拟对象显示方法、装置以及系统
US8007110B2 (en) Projector system employing depth perception to detect speaker position and gestures
CN107018336B (zh) 图像处理的方法和装置及视频处理的方法和装置
US9619105B1 (en) Systems and methods for gesture based interaction with viewpoint dependent user interfaces
KR101453815B1 (ko) 사용자의 시점을 고려하여 동작인식하는 인터페이스 제공방법 및 제공장치
JP7337104B2 (ja) 拡張現実によるモデル動画多平面インタラクション方法、装置、デバイス及び記憶媒体
US7755608B2 (en) Systems and methods of interfacing with a machine
CN110969685B (zh) 使用渲染图的可定制渲染管线
US6624833B1 (en) Gesture-based input interface system with shadow detection
CN111353930B (zh) 数据处理方法及装置、电子设备及存储介质
CN111275801A (zh) 一种三维画面渲染方法及装置
WO2020069427A1 (en) Panoramic light field capture, processing and display
US12039632B2 (en) Synthesized camera arrays for rendering novel viewpoints
CN116958344A (zh) 虚拟形象的动画生成方法、装置、计算机设备及存储介质
CN108401452B (zh) 使用虚拟现实头戴式显示器系统来执行真实目标检测和控制的装置和方法
US11538228B1 (en) Systems and methods for augmented reality viewing based on directly mapped point cloud overlays
CN110941974B (zh) 虚拟对象的控制方法和装置
CN117453037A (zh) 交互方法、头显设备、电子设备及可读存储介质
CN118799443A (zh) 一种基于多视角的前后景合成方法、系统、设备及介质
Bochem Active tracking with accelerated image processing in hardware
CN115407906A (zh) 用户界面的交互方法、装置、介质及设备
CN118314200A (zh) 位姿获取方法、装置、终端及存储介质
Bochem et al. Acceleration of blob detection in a video stream using hardware

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160920

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161006

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170223

R150 Certificate of patent or registration of utility model

Ref document number: 6100698

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees