(57)【要約】  ヒストグラム生成部２４は、現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する。ヒストグラム平滑化部２６は、生成されたヒストグラムの平滑化を行う。三次元座標生成部２８は、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める。
2013140776.tif 000002
【特許請求の範囲】
【請求項１】
画像処理により、現実空間にある対象物の奥行きを定める画像処理装置であって、
現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する生成部と、
生成されたヒストグラムの平滑化を行う平滑化部と、
平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部と
を備える画像処理装置。
【請求項２】
前記特定の座標には、
平滑化されたヒストグラムにおいて、最大の出現数に対応付けられている基準軸上の座標と、平滑化されたヒストグラムにおいて最大出現数に準ずる次順位以降の出現数に対応付けられている基準軸上の座標とがある
ことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記画像処理装置は、ヒストグラム生成の基礎となる2以上の指定色を予め登録している登録テーブルと、
登録された2以上の指定色のそれぞれについてヒストグラムが生成された場合、指定色毎のヒストグラムに示される各座標毎の出現数を、同じ座標に位置するもの同士で足し合わせて、その加算結果を各座標に対応する出現数とした合成ヒストグラムを得るヒストグラム合成部とを備え、
前記奥行き決定部による奥行き決定の対象となる座標は、合成ヒストグラムにおいて、所定の閾値を上回る出現数を有する座標である
ことを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記2つ以上の指定色のうち何れか1つのものは、特定の重み係数が割り当てられた特定色であり、
前記ヒストグラム合成部が合成ヒストグラムを生成するにあたって、特定色のヒストグラムの座標毎の出現数については、特定の重み係数を乗じた上、他の指定色のヒストグラムの同じ座標の出現数に足し合わせる
ことを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記現実空間における対象物は、2以上の指定色をなす操作部材であり、前記画像処理装置は、操作部材の回転角を決定する回転角決定部を備え、
生成部によって2以上の指定色について生成されるヒストグラムは、基準軸において互いに異なる座標に位置し、
前記回転角決定部は、 各指定色のヒストグラムにおける最大座標及び最小座標が、基準軸においてどれだけ隔てられているかという差分に基づき操作部材の回転角を定める
ことを特徴とする請求項１記載の画像処理装置。
【請求項６】
前記指定色は、画素を構成する輝度成分及び色差成分の組合せによって特定され、
画像処理装置は、
フレーム画像データを構成する複数画素のうち、輝度成分及び色差成分の組合せに合致するものからなる画素群を、基準軸上の複数の座標と対応付けて抽出する画素群抽出部を備え、
生成部によるヒストグラム生成は、
抽出された画素の数を、基準軸上の複数の座標に対応付けることでなされる
ことを特徴とする請求項１記載の画像処理装置。
【請求項７】
前記指定色は、画素を構成する複数の原色成分の輝度の組合せによって特定され、
画像処理装置は、
フレーム画像データを構成する複数画素のうち、複数の原色成分の輝度の組合せに合致するものからなる画素群を、基準軸上の複数の座標と対応付けて抽出する画素群抽出部を備え、
生成部によるヒストグラム生成は、
抽出された画素の数を、基準軸上の複数の座標に対応付けることでなされる
ことを特徴とする請求項１記載の画像処理装置。
【請求項８】
前記現実空間の対象物は、立体視装置の立体視効果により画面から飛び出した立体視オブジェクトを操作するための操作部材であり、
前記基準軸とは、フレーム画像データにおけるX軸又はY軸であり、
前記奥行き決定部により決定される奥行きは、操作部材がなす三次元座標のZ座標になり、当該三次元座標は、立体視装置において立体視オブジェクトの挙動を変化させるイベントの生成に用いられる
ことを特徴とする請求項１記載の画像処理装置。
【請求項９】
前記平滑化は、ヒストグラムに示される座標毎の出現数に対してインパルス応答を畳み込むことでなされる
ことを特徴とする請求項１記載の画像処理装置。
【請求項１０】
フレーム画像データを構成する複数画素のうち、特定の指定色をもつものからなる画素群を抽出する画素群抽出部と、
抽出された画素群における各画素の画素値に対して平滑化を施す平滑化部と、
平滑化された画素群における指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれ対応付けて示すヒストグラムを生成する生成部と、
平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部と
を備える画像処理装置。
【請求項１１】
画像処理装置と共に用いられる立体視装置であって、
アプリケーションを実行する実行部と、
アプリケーションからの指示に従い、立体視画像の再生を行う再生部と、  
画像処理装置が発生した奥行き値を示すイベントを、ユーザ操作に応じて生成するイベントマネージャとを備え、
前記アプリケーションは、発生したイベントに応じて再生部による立体視映像の再生内容を変化させる
ことを特徴とする立体視装置。
【請求項１２】
立体視画像は、多視点ビデオストリームの再生映像、又は、アプリケーションにより描画されるグラフィクスで構成され、
前記再生内容の変化は、再生の対象となる多視点ビデオストリームの切り替え、グラフィクスの切り替えがある
ことを特徴とする請求項１１記載の立体視装置。
【請求項１３】
画像処理により、現実空間にある対象物の奥行きを定める集積回路であって、
現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する生成部と、
生成されたヒストグラムの平滑化を行う平滑化部と、
平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部と
を備える集積回路。
【請求項１４】
画像処理により、現実空間にある対象物の奥行きを定める処理をコンピュータに実行させる画像処理プログラムであって、
現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムの生成、
生成されたヒストグラムの平滑化と、
平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定とを  コンピュータに実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
座標生成技術の技術分野に属する。
【背景技術】
【０００２】
座標生成技術とは、ユーザの身体の一部や操作部材がどのような位置関係にあるかを検知して、この検知結果を基礎にして捕捉対象の座標を生成するという技術である。スマートフォンやタブレット型端末においては、画面上のタッチ位置を検知して、画面上のもっともらしい座標を決める。しかし画面上のタッチ位置検知では、検知できるタッチ位置が画面の表面上に限られるため、操作の自由度が小さい。そこで、撮影画像から捕捉すべき対象物の立体的座標を生成する改良が進められている。現実空間にある対象物の奥行きを定める技術の先行文献には、以下の特許文献、非特許文献がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１４０７０５号公報
【非特許文献】
【０００４】
【非特許文献１】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を示す。
【図５】図４において、スタイラス検知のための領域範囲がどこに位置するかを示す。
【図６】撮影部１２による撮影で得られる複数のフレーム画像と、各フレーム画像に対する画像処理装置による処理の過程とを示す。
【図７】指定色画素を抽出するためのルップアップテーブルの内部構成と、そのエントリーのビット構成とを示す。
【図８】指定色画素群抽出部２２による画素群抽出を示す。
【図９】スタイラスが画面に近づいた場合、遠退いた場合、その中間位置に存在する場合という3つのケースにおいて、画素群がどのように変化するかを示す。
【図１０】画素群と、X軸ヒストグラムである配列変数、Y軸ヒストグラムである配列変数、平滑化のためのインパルス応答を示す。
【図１１】インパルス応答で平滑化されたヒストグラムの形状を近似した近似曲線と、平滑化前後のヒストグラムとを示す。
【図１２】スタイラスと、X軸ヒストグラム及びY軸ヒストグラム、画素群との関係を立体的に描いた図である。
【図１３】第１実施形態に係る画像処理の全体手順を示すフローチャートである。
【図１４】X軸ヒストグラム生成手順、Y軸ヒストグラム生成手順を示すフローチャートである。
【図１５】X軸ヒストグラム平滑化手順、Y軸ヒストグラム平滑化手順を示すフローチャートである。
【図１６】第２実施形態に係る表示装置の内部構成を示す。
【図１７】第２実施形態に係る全体手順を示すフローチャートである。
【図１８】ヒストグラム合成手順を示すフローチャートである。
【図１９】第２実施形態に係るスタイラスと、このスタイラスから抽出される画素群、生成されるX軸ヒストグラム、Y軸ヒストグラムを示す。
【図２０】指定色maの画素群に対して生成されたX軸ヒストグラム、指定色mbに対して生成されたX軸ヒストグラムを合成する過程を示す。
【図２１】スタイラスの球体と、類似色の物体とがどのように区別されるかという識別法を示す。
【図２２】第３実施形態に係る画像処理部１５の内部構成を示す。
【図２３】第３実施形態に係るスタイラスと、このスタイラスから抽出される画素群、生成されるX軸ヒストグラム、Y軸ヒストグラムを示す。
【図２４】第３実施形態に係る画像処理装置の全体手順を示すフローチャートである。
【図２５】スタイラスの回転角の算出手順を示すフローチャートである。
【図２６】第４実施形態に係るスタイラスと、このスタイラスから抽出される画素群、生成されるX軸ヒストグラム、Y軸ヒストグラムとを示す。
【図２７】スタイラス回転角の算出手順を示すフローチャートである。
【図２８】カメラ１０１aと発光素子１０１bの組みが取り付けられた表示装置１０１を示す。
【図２９】スタイラスの様々な態様を示す。
【図３０】第７実施形態にかかる表示装置を示す。
【図３１】ユーザが空間中で描いた形状と、このスタイラスの動きから生成される三次元座標とを示す。
【図３２】捕捉対象の形状に応じた奥行き調整の過程を示す図である。
【発明を実施するための形態】
【００１２】
発明者らは、上記奥行き決定を行う画像処理の実施化にあたって様々な技術的障壁に直面した。以下、その克服までの歩みを述べる。発明者らが研究開発の参考に選らんだのは、上記特許文献１に記載されたシリンダ状のコントローラによるゲーム制御技術である。
【００１３】
特許文献１の段落００５９は、シリンダの傾きφの値の導出を開示している。かかる傾きφは、画素群の幅w1、w2の値の比w1：w2を用いることによって求めることができる。シリンダを表す画素群の幅w1、w2の比率w2/w1は、Y-Z平面上のシリンダの傾きφに比例するから、この比率w2/w1を用いて傾きφの値の大きさを求めることができる。通常、より精度の高い値を得るために、画素群の端辺の間で複数の等距離測定が行われ、平均値を用いて比率w2/w1が求められる。
【００１４】
特許文献１の段落００６２は、奥行き値zを求める1つの方法を開示している。これは撮影で得られた画素群のうち、オブジェクトに対応する画素の合計数を数えるというものである。シリンダを表す画素群の画素の数は、φ方向の傾きに影響されるから、まず、画素の数Nをφで重み付けすることによって重み付けされた値Nφを求める必要がある。Nφは奥行き値zに比例するため、Nφによって奥行き値zを求めることができる。
【００１５】
この特許文献１のゲーム制御技術における奥行き値算出は、シリンダの形状が画素群によってきれいに再現されるという前提の上で成り立っている。しかし実際には、ゲーム機に搭載されているカメラは安価で解像度が低いことも多いから、かかるカメラによる撮影画像では対象物の形状が撮影画像に鮮明に現れず、対象物は、歪な形状をなす画素群により現れることになる。特許文献１を用いてこのような歪な形状の画素群から三次元座標を生成しようとすると、その三次元座標はおかしなものになり、対象物の動きが正しく追跡されない。
【００１６】
そもそもこの特許文献１に記載された技術は、平面視表示装置の画面でゲームの仮想空間を表示してその中でキャラクタを活動させる場合、ゲームの仮想空間におけるキャラクタの位置を定めるためのものである。そのような位置決めであれば、上記のような特許文献１の手法でも充分であったかもしれないが、立体視表示装置で画面から飛び出す像（以下、立体視オブジェクトという）をタッチするような操作では充分な精度が得られない。しかし高価な測距センサを具備させて立体視オブジェクトの距離を図るというのはコストパフォーマンスの面で現実的ではない。
【００１７】
一方、非特許文献１はContinuously Adaptive Meanシフト(CAMSHIFT) アルゴリズムを開示している。CAMSHIFTは、顔の追跡のため、Hue Saturation Valueカラーシステムを利用して肌色の確率分布を追跡する。
【００１８】
Meanシフトアルゴリズムにおいて肌色の確率分布の発見がどのように算出されるかについて説明する。非特許文献１の３ページ２カラムによると、当該アルゴリズムは、以下の手順１．〜手順５．を繰り返すというものである。
【００１９】
手順１. サーチすべきウィンドゥ サイズを選ぶ。
【００２０】
手順２. サーチすべきウィンドゥに対して初期的なロケーションを選ぶ。
【００２１】
手順３. サーチすべきウィンドゥにおいて中間的位置を計算する。
【００２２】
手順４. サーチすべきウィンドゥを計算された中間ロケーションに配置する。
【００２３】
手順５. ロケーションの移動量がプリセットされた閾値を下回るまで、手順３．、手順４．を繰り返す。
【００２４】
上記ウィンドゥは、人間の顔面において、目鼻口を結ぶ中央十字線(centroid)にて規定される。手順１．を実行するにあたって、ウィンドゥのサイズは、中央十字線(centroid)の横幅w、及び、縦幅lにより規定される。中央十字線(centroid)の横幅w、及び、縦幅lは、6ページ１カラムの数式で表現される。この数式で用いられるパラメータa,bは、非特許文献１の6ページ2カラムのように算出され、０次モーメントM00、１次モーメントM11、２次モーメントＭ22で導出される。これら０次モーメントM00、１次モーメントM11、２次モーメントＭ22も座標(x,y)に位置する画素の強度I(x,y)から算出される。  
【００２５】
手順２．、手順３．を実行するにあたってサーチすべきウィンドゥのロケーション(Xc,Yc)は、Xc=M10/M00,Yc=M01/M00という計算で算出される。M00は０次モーメント、M10は一次モーメントであり、ウィンドゥ内に位置する画素の強度I(x,y)の総和によって算出される。
【００２６】
目鼻口を結ぶ中央十字線の傾きθは、５ページ２カラムのように、０次モーメントM00、１次モーメントM11、２次モーメントＭ20,M02で導出される。かかる中央線の傾きθが、顔の傾きである。肌色の確率分布において、顔領域は、カメラからの距離に比例する。よって、上述したような中央十字線(centroid))探索を通じて、肌色の確率分布が定まれば、カメラから顔領域までの距離を算出することができる。このように非特許文献１に記載の先行技術では、繰返しアルゴリズムを採用するから、歪な形状の画素群で対象物が描かれると、アルゴリズムの繰り返し実行の収束にまで時間を費やし、対象物の動きに追従できなくなる。そうするとレスポンス性がきわめて低下するので、ユーザにストレスをもたらす。
【００２７】
加えて、手順．２(サーチすべきウィンドゥに対して初期ロケーションの選定)、手順．３（サーチすべきウィンドゥの中間的位置の計算)にあたって、複数座標における画素の強度計算が必要になり計算量が多い。またこの計算を繰り返す必要があるので、MPUの高速化を抜きにして、追従させるのが難しい。以上が、本発明に想到するにあたって、発明者らが直面した実施化障壁である。
【００２８】
上記実施障壁を克服できる態様には図１に示す内部構成のものがある。図１は、実施化障壁の克服手段を有した画像処理装置がなしえる複数の態様のうち、代表的なものの内部構成を示す。かかる複数の態様には、基本的な態様(以下の１.のもの)、基本的態様の様々な派生（以下の２.、３.、４.・・・・のもの）がある。
【００２９】
＜態様１.基本的な態様＞
上記実施障壁は、画像処理により、現実空間にある対象物の奥行きを定める画像処理装置であって、現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する生成部と、生成されたヒストグラムの平滑化を行う平滑化部と、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部とを備えるという態様で克服することができる。図１（ａ）は、かかる基本的態様の内部構成を示す。上記態様ではヒストグラムをとり平滑化を施すので、平滑化がなされたヒストグラムに示されている画素数が、三次元座標生成の基礎となる。画素群における水平画素数、垂直画数バラツキは、整ったものに統一されるから、対象物がなす画素数を基礎にした三次元座標生成は、高精度になされることになる。これによりヒストグラムのピーク値が定まりやすくなり、三次元座標生成を良好に行うことができる。画素群の形状が、撮影画像毎に異なることによる影響を抑制することができるので、追従が容易となる。
【００３０】
ここで平滑化とは、座標毎のヒストグラムの度数を平らに滑らかにするものであり、ある座標の度数を、その周辺の座標の度数と足し合わせて座標数で割り、その結果を新たな度数にすることでなされる。平滑化フィルタの一例としては、移動平均フィルタ（平均化フィルタ）と、ガウシアンフィルタとがある。移動平均フィルタ（別名：平均化フィルタ、単に平滑化フィルタともいう）では、注目座標のその周辺の座標の度数を用いて平均し、平均値をヒストグラムの度数とする手法である。 例えば、注目座標の度数とその周辺の度数とに３×３のレート、５×５のレートを掛け合わせて平均値を求める。レートとは、各座標に割り当てるべき重み係数の集りである。ただし、レートは全てを足し合わせて１になるように調整される。
【００３１】
ガウシアンフィルタとは、注目座標に近いほど、平均値を計算するときの重みを大きくし、遠くなるほど重みを小さくなるようにガウス分布の関数を用いてレートを計算したフィルタである。重み係数の値が小さいほど平滑化の効果は小さくなり、大きいほど効果が大きくなる。これら移動平均フィルタ、ガウシアンフィルタ以外にも、フィルタとしては、低域透過フィルタを使用することができる。低域透過フィルタは、ヒストグラムの度数を滑らかにすることができるからである。後段の第１実施形態では、平滑化にインパルス応答フィルタを用いる例を説明する。ここで現実空間の対象物とは、本発明の画像処理を通じて動きが捕捉される捕捉対象であり、特許文献1に記載されているような操作部材、非特許文献１に記載されているような人体の一部(顔、指など)を包含している。これらの全てについて説明すると説明が煩雑になるので、以降では、スタイラスの一部であって、予め定められた色(指定色)のものを捕捉対象とする。そして「奥行き」は、どのような単位系で表現されてもよいが、説明の一例として、立体視オブジェクトの配置を想定したX-Y-Z座標系における捕捉対象のZ座標を選ぶ。かかるX-Y-Z座標系は、表示装置の画面の位置をX-Y座標系で表し、画面からユーザまでの空間位置をZ軸の座標で表すものである。立体視オブジェクトの立体的位置は、X-Y平面がZ軸の原点に存在するとした空間内で規定される。かかるX-Y-Z座標系のZ座標で奥行きを算出すれば立体視オブジェクトの操作として充分な精度の奥行きが生成されるからである。
【００３２】
＜態様２：奥行き決定の基礎となる特定座標の詳細＞
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記特定の座標には、平滑化されたヒストグラムにおいて、最大の出現数に対応付けられている基準軸上の座標と、平滑化されたヒストグラムにおいて最大出現数に準ずる次順位以降の出現数に対応付けられている基準軸上の座標とがあるという下位概念化を施したものである。
【００３３】
フレーム画像データに基づき生成されるヒストグラムの最大度数は、カメラに対象物が近づくにつれ大きく、対象物が遠退くにつれ小さくなる。このヒストグラムに対して平滑化が施されているので、かかるヒストグラムに示される度数の和と、対象物の奥行きとに、何等かの相関関係がもたらされる。よってヒストグラムに示される度数の和が取りうる複数の数値範囲を、対象物の奥行きの複数段階のそれぞれに割り当てることで、上記の度数の和から適切な奥行きを導くことができる。
【００３４】
＜態様３：ヒストグラム合成のための構成付加＞
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記画像処理装置は、ヒストグラム生成の基礎となる2以上の指定色を予め登録している登録テーブルと、登録された2以上の指定色のそれぞれについてヒストグラムが生成された場合、指定色毎のヒストグラムに示される各座標毎の出現数を、同じ座標に位置するもの同士で足し合わせて、その加算結果を各座標に対応する出現数とした合成ヒストグラムを得るヒストグラム合成部とを備え、前記奥行き決定部による奥行き決定の対象となる座標は、合成ヒストグラムにおいて、所定の閾値を上回る出現数を有する座標であるという下位概念化を施したものである。かかる下位概念化を施すと、上記態様の内部構成は図１（ｂ）に示すものとなる。本図において強調線で囲まれている箇所が、この改変が存在する箇所を示す。
【００３５】
指定色として2以上の画素成分の組合せを登録しておき、これらに対してヒストグラム生成を行い、ヒストグラムの合成を行って、結果となるヒストグラムに平滑化を施した上、奥行き決定の基礎とするので、捕捉対象と似たような色の像が背景に写りこんだとしても、かかる似たような像の画素を除外して捕捉対象の奥行きを決定することができる。これによりユーザの衣服や背景に似たような色が存在したとしても、その影響を抑制することができ、奥行き決定の精度を上げることができる。
【００３６】
＜態様４：出現数に対する追加的な演算＞
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記2つ以上の指定色のうち何れか1つのものは、特定の重み係数が割り当てられた特定色であり、前記ヒストグラム合成部が合成ヒストグラムを生成するにあたって、特定色のヒストグラムの座標毎の出現数については、特定の重み係数を乗じた上、他の指定色のヒストグラムの同じ座標の出現数に足し合わせるという下位概念化を施したものである。
【００３７】
ヒストグラムにおける特定色の度数については重み係数が乗じられるので、スタイラスの先端部がカメラの方向を向いている状態を高く評価してスタイラスの奥行き決定に用いることができる。これにより検出精度を高めることができる。
【００３８】
＜態様５：回転角決定のための構成付加＞
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記現実空間における対象物は、2以上の指定色をなす操作部材であり、前記画像処理装置は、操作部材の回転角を決定する回転角決定部を備え、生成部によって2以上の指定色について生成されるヒストグラムは、基準軸において互いに異なる座標に位置し、前記回転角決定部は、 各指定色のヒストグラムにおける最大座標及び最小座標が、基準軸においてどれだけ隔てられているかという差分に基づき操作部材の回転角を定めるという下位概念化を施したものである。かかる下位概念化を施すと、上記態様の内部構成は図１（ｃ）に示すものとなる。
【００３９】
ヒストグラム生成、平滑化を2以上の指定色のそれぞれについて繰り返し、ヒストグラム座標の差分に従い演算処理を行えば対象物の回転角を導くことができるから、三次元座標生成を対象物の微妙な回転に追従させることができる。スタイラスがどれだけ回転しているかを算出できるので、スタイラスの微妙な動きや回転に応じた操作を実現することができ、操作性を向上させることができる。
【００４０】
＜態様６：指定色の詳細その１＞
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記指定色は、画素を構成する輝度成分及び色差成分の組合せによって特定され、画像処理装置は、フレーム画像データを構成する複数画素のうち、輝度成分及び色差成分の組合せに合致するものからなる画素群を、基準軸上の複数の座標と対応付けて抽出する画素群抽出部を備え、生成部によるヒストグラム生成は、抽出された画素の数を、基準軸上の複数の座標に対応付けることでなされるという下位概念化を施したものである。
【００４１】
＜態様７：指定色の詳細その２＞
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記指定色は、画素を構成する複数の原色成分の輝度の組合せによって特定され、画像処理装置は、フレーム画像データを構成する複数画素のうち、複数の原色成分の輝度の組合せに合致するものからなる画素群を、基準軸上の複数の座標と対応付けて抽出する画素群抽出部を備え、生成部によるヒストグラム生成は、抽出された画素の数を、基準軸上の複数の座標に対応付けることでなされるという下位概念化を施したものである。
【００４２】
態様６、７によればフレーム画像の画素がどのような画素成分のものを指定色画素として抽出するかが、ルップアップテーブル等に示しておくことができるので、フレーム画像において指定色画素が示すビット値と、ルップアップテーブルに示されるビット値との論理演算により、各画素が指定色をもっているかどうかを判定することができる。そして一致したと判定された場合において、カウント値をインクリメントすれば、ヒストグラム生成を行うことができる。またマスクビットの設定も可能になり、フレーム画像における画素成分のバラツキを吸収することができる。
【００４３】
＜態様８：決定された奥行きの用途＞
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記現実空間の対象物は、立体視装置の立体視効果により画面から飛び出した立体視オブジェクトを操作するための操作部材であり、前記基準軸とは、フレーム画像データにおけるX軸又はY軸であり、前記奥行き決定部により決定される奥行きは、操作部材がなす三次元座標のZ座標になり、当該三次元座標は、立体視装置において立体視オブジェクトの挙動を変化させるイベントの生成に用いられるという下位概念化を施したものである。この態様では、光学式の測距センサを用いずとも画面の前にいるユーザの大体の位置を決めることができるから、表示装置に組込まれた場合、ユーザが画面に近づきすぎているかどうかを検出して近づきすぎている場合に警報を発する等の処理を実現することができる。
【００４４】
＜態様９：平滑化の詳細＞
本態様は、基本的な態様に対して以下の改変を加えたものである。つまり前記平滑化は、ヒストグラムに示される座標毎の出現数に対してインパルス応答を畳み込むことでなされるという下位概念化を施したものである。インパルス応答の畳み込みでは、中央の座標で重み係数が最大になり、そこから周辺につれ重み係数が下がってゆくので、ヒストグラムの面積による奥行き決定に適した、理想的な形状にヒストグラムを変形させることができる。
【００４５】
＜態様１０：平滑化対象のバリエーション＞
基本的な態様のバリエーションとして以下のものがある。つまりフレーム画像データを構成する複数画素のうち、特定の指定色をもつものからなる画素群を抽出する画素群抽出部と、抽出された画素群における各画素の画素値に対して平滑化を施す平滑化部と、平滑化された画素群における指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれ対応付けて示すヒストグラムを生成する生成部と、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部という態様を採用することができる。かかる下位概念化を施すと、上記態様の内部構成は図１（ｄ）に示すものとなる。抽出された画素群における画素の変化がなめらかになり、これを対象として生成される度数のばらつきを抑制することができる。また画素群を構成する画素の平滑化には、フィルタを用いることができるから、実装のコスト化が可能になる。
【００４６】
＜態様１１：他の装置との関連性＞
画像処理装置と共に用いられる装置とは以下のものである。つまり立体視装置であって、アプリケーションを実行する実行部と、アプリケーションからの指示に従い、立体視画像の再生を行う再生部と、画像処理装置が発生した奥行き値を示すイベントを、ユーザ操作に応じて生成するイベントマネージャとを備え、前記アプリケーションは、発生したイベントに応じて再生部による立体視映像の再生内容を変化させるものである。立体視表示装置により画面から飛出した立体視オブジェクトを仮想的にタッチするという操作性を実現することができるので、仮想空間にいるかのような仮想現実感をユーザに与えることができる。ユーザは、日常の煩わしい事柄からしばし解放される。こうすることで、明日への活力をえることができる。
【００４７】
＜態様１２：再生内容の変化＞
本態様は、上記立体視装置の基本的な態様に対して以下の改変を加えたものである。つまり前記立体視画像は、多視点ビデオストリームの再生映像、又は、アプリケーションにより描画されるグラフィクスで構成され、前記再生内容の変化は、再生の対象となる多視点ビデオストリームの切り替え、グラフィクスの切り替えがあるという下位概念化を施したものである。かかる態様により、ユーザとの対話性を一層充実させることができる。
【００４８】
＜態様１３：集積回路化＞
集積回路を実施する局面で課題解決を図る場合、当該局面における集積回路は、画像処理により、現実空間にある対象物の奥行きを定める集積回路であって、現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムを生成する生成部と、生成されたヒストグラムの平滑化を行う平滑化部と、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定部とを具備していれば足りる。かかる集積回路によれば画像処理装置の部品化、モジュール化が可能になり、半導体部品の業界まで、画像処理装置の用途を広げることができる。
【００４９】
＜１４：プログラム化＞
プログラムを実施する局面で課題解決を図る場合、当該局面におけるプログラムは、画像処理により、現実空間にある対象物の奥行きを定める処理をコンピュータに実行させる画像処理プログラムであって、現実空間を撮影することで得られたフレーム画像データにおける指定色の画素の出現数を、画面の基準軸の複数座標のそれぞれに対応付けて示すヒストグラムの生成、生成されたヒストグラムの平滑化と、平滑化されたヒストグラムに示される複数の出現数の中から、特定の座標に対応付けられているものを選んで、選ばれた出現数を用いて対象物の奥行きを決める奥行き決定とをコンピュータに実行させれば足りる。ネットワークプロバイダサーバや各種記録媒体を通じたプログラムの配布が可能になるから、一般のコンピュータソフトウェアやオンラインサービスの業界まで、画像処理装置の用途を広げることができる。
【００５０】
（第１実施形態）
以下、画像処理装置を応用した応用製品の実施形態について説明する。画像処理装置の応用の形態としては、画像処理装置と、表示装置とを互いに別の装置として製品にする場合と、画像処理装置を表示装置の内部に組込んで製品にする場合とがあり、第１実施形態は、かかる後者の態様になる。表示装置は、立体視表示装置であり、テレビ、タブレット端末、スマートフォンといったデジタル機器として取り引される。
【００５１】
図２（ａ）は、立体視再生環境を提供する表示装置と、その付属品とからなるシステムを示す。本システムは、一個のフレーム期間において右目画像、左目画像の表示を行う立体視テレビ装置１０１と、立体視再生時においてユーザにより着用されるシャッター式メガネ１０２と、立体視再生時において画面から飛び出す立体視オブジェクトに対する操作のためのスタイラス１０３とから構成される。本図における表示装置１０１の画面は、右目画像、左目画像が重なり合った内容になっている。ユーザがシャッター式眼鏡１０２を着用すれば、立体視オブジェクトが画面から飛出してみえることになる。表示装置１０１の正面において、画面の上側面には、カメラ１０１aが設けられている。これはテレビ電話を実現するにあたってユーザの撮影に用いられるネットワークカメラであるが、本実施形態ではスタイラスを操作するユーザの像を撮影するとの用途が与えられている。
【００５２】
図２（ｂ）は、スタイラスの構成を示す。本図におけるスタイラス１０３は、軸の部分１０２aと、ペン先１０３bと、柄先に取り付けられた球体１０３cとから構成される。つまり、かかるスタイラスは、タッチパネルの操作に適合したペン先１０３bと、捕捉対象の捕捉に適合した球状体１０３cとを有する2wayタイプのものである。つまり尖った側の先端部はタッチパネルの操作に使用し、球体はカメラによる追跡による操作に使用することができる。
【００５３】
かかるスタイラスにおいて球体は、どのような角度で撮影されたとしてもフレーム画像において円状の画素群として表れるのでカメラの撮影角によって検出されたり検出されなかったりすることはない。球体１０３cでは、カメラによる検出が安定的になされるから、本実施形態では、この球体を画像処理による捕捉対象にする。図３は、画像処理装置を組込んだ立体視表示装置の内部構成を示す。図２において、表示装置の構成要素に１番から１５番までの参照符号を付している。この参照符号が小さい順に、表示装置の構成要素を説明してゆく。図２に示すように、画像処理装置を組込んだ立体視表示装置は、外部インターフェイス部１、ストレージ２、ビデオデコーダ部３、左目用ビデオプレーン４a、右目用ビデオプレーン４b、レンダリング部５、左目用グラフィクスプレーン６a、右目用グラフィクスプレーン６b、合成部７、表示部８、ヒープメモリ９、プラットフォーム部１０、イベントマネージャ部１１、撮影部１２、フレームメモリ１３、センサ１４、画像処理部１５から構成される。理解を深めるため、以降の表示装置の構成要素の説明は、図４〜図６に示すユースケースを交えて行う。このユースケースとは、立体視映像の再生中にユーザが画面の前で捕捉対象であるスタイラスを動かすというものである。
【００５４】
外部インターフェイス部１は、外部入力とのインターフェイスであり、ネットワークインターフェイスや放送チューナ、ローカルドライブの入出力部を含む。
【００５５】
ストレージ２は、インターフェイス１を通じて取得した各種ファイルが格納される。かかるファイルには、アプリケーションを定義するため、オブジェクト指向プログラミング言語で記述されたクラスファイル、多視点ビデオストリームを格納したストリームファイル、イメージデータを格納したイメージデータファイル、立体形状モデルデータのデータを格納した立体形状モデルデータのデータファイルがある。
【００５６】
ビデオデコーダ部３は、多視点ビデオストリームをデコードする。本実施形態において多視点ビデオストリームはフレームシーケンシャルフォーマットであるものとする。フレームシーケンシャルフォーマットは、基準視点映像フレーム及び付加視点映像フレームが交互に再生部に表示することによって、混合映像を構成する映像フォーマットである。以降の説明では、基準視点映像フレームを左目画像とし、付加視点映像フレームを右目画像とする。ビデオデコーダ部３は、かかる多視点ビデオストリームをデコードすることで右目画像、左目画像を得て右目用ビデオプレーン、左目用ビデオプレーンに書き込む。かかるデコードは、アプリケーションからの再生APIのコールに従いなされる。図３中の矢印V0,V1、V2は、ビデオデータについてのデータフローを示す。V0,V1はビデオデコーダ部３へのデータ供給を模式的に示す。V2はデコーダによる非圧縮画素の出力を示す。
【００５７】
左目用ビデオプレーン４a、右目用ビデオプレーン４bは、ビデオストリームのデコードで得られた一画面分の非圧縮の画素群を、左目画像を構成するものと、右目画像を構成するものとに分けて格納する。これらの右目画像の画素群と、左目画像の画素群とを一フレーム期間内に表示すれば、右目画像、左目画像が画面上で重なり合う。そしてこの画面をシャッター式眼鏡１０２を着用して視聴すれば立体視映像を見ることができる。図４（ａ）は、かかる着用を通じて視聴することができる立体視動画像である。図４（ａ）では、多視点ビデオストリームを再生することで立体視オブジェクトが画面から飛出している状況を想定している。図中の熊は、多視点ビデオストリームを再生により表示装置の画面から飛出した立体視オブジェクトである。かかる状況においてスタイラスには、この画面から飛出した熊を仮想的にタッチするとの用途が与えられる。
【００５８】
レンダリング部５は、アプリケーションからの描画指示に従いグラフィクス描画を行う。グラフィクスにはPNG、JPEG、TIFFといった形式の圧縮イメージを展開することで得られるものと、立体形状モデルデータに対して座標変換、照度計算、ビューポート変換といった一連の描画処理を行い、生成されるものがある。照度計算はテクスチャマッピングを含み、かかるテクスチャマッピングにより、立体形状モデルデータの表面に展開されたイメージを貼りつけることもできる。イメージ描画にあたっては、両眼視差にあたる間隔だけ隔てられた2つの描画座標に、同じイメージを描画することで、立体視のための左目用グラフィクス、右目用グラフィクスの組みを得る。立体形状モデルデータのレンダリングにあたっては、仮想空間において、人間の目の間隔だけ隔てて左目視点位置、右目視点位置を定義し、左目視点位置、右目視点位置のそれぞれについて、ビューポート変換を行うことで、立体視のための左目用グラフィクス、右目用グラフィクスの組みを得る。
【００５９】
左目用グラフィクスプレーン６a、右目用グラフィクスプレーン６bは、描画で得られたグラフィクスを構成する非圧縮の画素群を、左目用グラフィクスを構成するものと、右目用グラフィクスを構成するものとに分けて格納する。これらの右目用グラフィクスと、左目用グラフィクスとを一フレーム期間内に表示すれば、右目用グラフィクス、左目用グラフィクスが画面上で重なり合う。そしてこの画面をシャッター式眼鏡１０２を着用して視聴すればGUIの立体視映像を見ることができる。図４（ｂ）は、かかる着用を通じて視聴することができる立体視GUIを示す。図４（ｂ）では、アプリケーションにより描画されたGUIである立体視オブジェクトが画面から飛出している状況を想定している。図中の前ページ(Prev)、次ページ(Next)の選択を受け付けるGUIを示す。かかる状況においてスタイラスは、この画面から飛出したGUIをタッチするという用途が与えられる。
【００６０】
合成部７は、左目用グラフィクスプレーン、左目用ビデオプレーン、右目用グラフィクスプレーン、右目用ビデオプレーンに格納されたライン画素にスケーリングやフィルタリングを施し、同じ座標に位置するもの重畳することで動画像と、グラフィクスとのレイヤ合成を行う。これにより立体視の動画像と、グラフィクスとが合成された合成立体視画像を得ることができる。
【００６１】
表示部８は、複数の有機EL素子、液晶素子、プラズマ素子といった発光素子をマトリック状に並べた表示パネル、表示パネルの四辺に取り付けられた駆動回路、素子制御回路から構成され、ビデオプレーン４a,b、グラフィクスプレーン６a,bに格納されているフレーム画像データを構成する画素に従い、発光素子の明滅を行う。
【００６２】
ヒープメモリ９は、ローカルのドライブ、又は、ネットワーク上のリモートドライブからロードされたアプリケーションのバイトコードが格納されるスタック領域であり、かかるバイトコードがプラットフォーム部による処理に供される。
【００６３】
プラットフォーム部１０は、クラスローダ、バイトコードインタプリタ、アプリケーションマネージャを含み、ローカルのドライブ、又は、ネットワーク上のリモートドライブからクラスファイルをロードして、そのインスタンスであるバイトコードアプリケーションを実行する。バイトコードアプリケーションの処理内容としては、多視点ビデオストリームの再生指示、GUIの描画指示がある。多視点ビデオストリームの再生指示は、再生対象となる多視点ビデオストリームを選んでかかる多視点ビデオストリームのロケータを指示した再生APIコールを行うことでなされる。GUIの描画指示は、描画すべきイメージデータ又は形状モデルデータと、描画座標と引数として定めて描画APIをコールすることでなされる。図３における矢印a0,a1,a2,a3は、アプリケーションに関する制御フロー、データフローを示す。a0はクラスファイルのダウンロード、a1はローカルストレージからヒープメモリへのクラスロードを模式的に示す。a2はアプリケーションの状態遷移のトリガとなるイベント出力を示し、a3はアプリケーションによるGUI描画指示を示す。特色となるのは、このアプリケーションの動作のトリガとなるイベントが、スタイラスの特定の部位を示す三次元座標を含んでいて、この三次元座標に応じた再生対象の変更、描画対象の変更を行う点である。多視点ビデオストリームの再生中にこのようなイベントが発生すれば、対象となる多視点ビデオストリームを別のものに変更した上、ストリーム再生の再指示を行う。ここで再生中の多視点ビデオストリームが、熊の静止態の立体視映像であり、変更後の多視点ビデオストリームがその動作態の立体視映像であれば、スタイラスの動きで立体視映像の熊が動きまわるような画面演出が可能になる。GUI表示による操作待ち状態にこのようなイベントが発生すれば、描画対象となるイメージデータ又は形状モデルデータを別のものに変更した上、グラフィクス描画の再指示を行う。ここで再生中の立体視グラフィクスが、前ページ、次ページの頁操作を受け付けるGUIの立体視グラフィクスであり、変更後のイメージデータ又は形状モデルデータが、前ページ、次ページを描画するものであれば、スタイラスの動きで画面のページ送りを可能とするような画面演出が可能になる。
【００６４】
イベントマネージャ１１は、立体視オブジェクトが存在し得る立体視空間において、特定の空間領域を定義している。そして、画像処理装置によって三次元座標が生成されれば、その座標が空間領域内に存在するかどうかを判定して、存在すれば、スタイラスが立体視オブジェクトに接触したことを知らせるタッチイベントを発生する。上記特定の空間領域に属しないと判定した場合、かかるタッチイベントを発生しない。図５は、図４（ａ）（ｂ）において特定の領域範囲がどこに位置するかを示す。図のグリッドgd1,gd2,gd3,gd4・・・・は熊の静止態の丁度あたまの部分に空間領域を規定するものである。（ｂ）のグリッドgd11,gd12,gd13,gd14・・・・は、GUIの前ページボタン、次ページボタンのうち、次ページボタンが存在する部分に上記空間領域を規定するものである。画像処理装置から通知される三次元座標がかかる領域に入った場合にタッチイベントを発生させることで、スタイラス操作に応じた再生対象の変更、描画内容の変更をアプリケーションに行わせることができる。
【００６５】
撮影部１２は、ネットワークカメラであるカメラ１０１aを制御して、フレーム期間において一枚のフレーム画像をえる。図６の第１段目は、撮影部１２による撮影で得られる複数のフレーム画像を示す。第１段目においてフレーム１のフレーム画像は、立体視オブジェクトである熊のあたまをスタイラスの柄先部材で突つこうとするユーザの正面像である。フレーム２以降のフレーム画像は白地になっているが、フレーム画像の中身を省略しているに過ぎず、フレーム１におけるユーザの像の続きが存在するものとする。立体視オブジェクトは仮想的に存在するものなので、このカメラからの撮影画像には現れない。画面手前の何もない空間をスタイラスで突つくようなユーザの姿か撮影されることになる。
【００６６】
フレームメモリ１３は、撮影部１２の撮像によりフレーム期間毎に得られたフレーム画像を構成する位置画面分の画素を格納する。フレーム画像の解像度には、1920×1080、640×480といったものがあり、かかる解像度の縦画素数、横画素数の画素が格納される。画素は、輝度Yの階調,赤色差Crの階調、青色差Cbの階調と、透明度Tとで表現することができる。また、R画素成分の階調、G画素成分の階調、B画素成分の階調と、透明度Tの組合せで表現することができる。ここで透明度Tとは、合成部７でビデオプレーンの画素をグラフィクスプレーンの画素と重畳するにあたって、グラフィクスプレーンの画素をどれだけ透過させるかを示す。図３において矢印V3は撮影部１２により撮影された撮影画像のユーザのフィードバックを示す。このフィードバックは、フレームメモリ１３からビデオプレーン４a,bへの画素の書き戻しでなされる。以上の制御フロー、データフローを通じて、アプリケーションが描画したGUIと、ビデオデータとの合成がなされ、合成画像が表示部８に表示されることになる。フレームメモリ１３における撮影画像の画素は、ビデオプレーン４a,b以外にも三次元座標生成部１５に出力され、三次元座標生成部１５による画像処理に供される。
【００６７】
センサ１４は、リモコンやパネル操作、画面タッチ等を検知してイベントマネージャに通知する。i1、i2はイベントマネージャへの入力を示す。この入力には、センサ１４からのタッチ座標の入力i1と、三次元座標生成部１５が生成した三次元座標の入力i2とを含む。
【００６８】
画像処理部１５は、撮影部１２が取得した複数のフレーム画像に対して画像処理を行い三次元座標を生成することで、捕捉対象の動きを捕捉する。捕捉される捕捉対象の動きとは、表示装置の画面と、ユーザとの間の空間を行き来する捕捉対象の動きである。図３の矢印up0,dw0は、捕捉対象を画面から遠ざける動き、画面に近づける動きを象徴的に示し、矢印cr0は、捕捉対象を画面と水平に走らせる動きを象徴的に示す。表示装置において、画像処理装置の役割を果たす構成要素であり、撮影部１２の撮影でフレーム画像が得られる度に、このフレーム画像に対する画像処理を行い、フレーム画像内に現れているスタイラスの奥行きを定めて、当該スタイラスの三次元座標を生成し、イベントマネージャ１１に出力する。図６の第２段目は、第１段目のフレーム画像から抽出される画素群である。フレーム画像にはスタイラスを把持したユーザ像が存在するから、このスタイラスの柄先の画素群が各フレーム画像から抽出される。また画素群の画素を規定するXY座標系においてX軸、Y軸にはX軸ヒストグラム及びY軸ヒストグラムが存在する。第３段目は、第２段目のX軸ヒストグラム及びY軸ヒストグラムにより生成された三次元座標((x1,y1,z1)(x2,y2,z2)(x3,y3,z3)・・・・)を示す。これは画像処理装置による画像処理の結果である。これらの三次元座標は、フレーム画像毎に異なる値となる。
【００６９】
第４段目は、任意の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座標を導く関数であり、この第４段目では、最大度数h(Xm)と、これに準じる次順位以降の度数h(Xm-1),h(Xm+1),h(Ym-1),h(Ym+1)の和を当該関数の引数に選んでいることがわかる。かかる関数f()の呼び出しでは、ヒストグラム度数の精度によってZ座標の精度が変わるから、ヒストグラムの度数を高精度にしておくことが求められる。
【００７０】
以上が表示装置１１の構成要素についての説明である。表示装置１１の構成要素の説明が終わったところで、表示装置において、画像処理装置にあたる処理を実現する集積装置(画像処理部１５)の構成要素について説明する。図３において画像処理部１５の構成要素には、２０番台の参照符号を付している。この参照符号が小さい順に、これらの構成要素を説明してゆく。図３に示すように画像処理部１５は、指定色ルップアップテーブル２１、指定色画素群抽出部２２、ストレージ２３、ヒストグラム生成部２４、ヒストグラム格納部２５、ヒストグラム平滑化部２６、平滑化ヒストグラム格納部２７、三次元座標生成部２８から構成される。以下、参照符号に沿って画像処理部１５の構成要素について説明してゆく。 図８〜図１２は、これら指定色画素群抽出部２１〜三次元座標生成部２８による三次元座標生成の原理を具体例を交えて示すものである。この具体例とはスタイラスの柄先の球状体で立体視オブジェクトを操作するというものである。
【００７１】
指定色ルップアップテーブル２１は、画素群の抽出時に参照すべきルップアップテーブルであり、抽出の対象となる指定色画素が、どのような画素成分をもつかを規定する。指定色として、ルップアップテーブルに登録されるべき色には、スタイラスの材質に依拠した成形色、スタイラスの一部に塗装が施されている場合の塗装色、ラッピングされている場合の包装色等がある。一般に、画素の色は、色相環図において色相と彩度に対応する各動径座標によって定義されるが、本実施形態では、輝度成分Y、赤色差成分Cr、青色差成分Cbの組合せ、赤成分R、緑成分G、青成分Bの組合せで規定する。従って、同じ赤色でも高い輝度の輝度Y,赤色差Cr,青色差Cbの組合せをルップアップテーブルに記載しておくことで、輝度が高い赤色を指定色として指定することができる。図７（ａ）は、指定色画素の画素成分が輝度Y,赤色差Cr,青色差Cbである場合におけるルップアップテーブルの内部構成を示す。本図のルップアップテーブルは、複数の指定色画素のインデックス(図中のmp,mq,mr)を具備していて、インデックスのそれぞれに、各指定色の輝度Yの階調(0〜255)、赤色差Crの階調(0〜255)、青色差Cbの階調(0〜255)の組合せを対応付けることができる。かかるルップアップテーブルにより輝度Y,赤色差Cr,青色差Cbのそれぞれには、1から255までの範囲で階調を指定することができる。図７（ｂ）は、Y,Cr,Cb形式のルップアップテーブルにおいて、個々の指定色のインデックスに対応付けられたエントリーのビット構成を示す。 本ルップアップテーブルにおいて、1つの画素のビット幅を32ビットとし、輝度Y,赤色差Cr,青色差Cbのそれぞれについて8ビットを割り当てる。これらの8ビットのうちアスタリスクは、下位ビットのマスクを示す。かかるビットマスクを用いることで下位ビットが異なるような数値範囲の階調をもつ指定色を画素群抽出の対象にすることができる。
【００７２】
図７（ｃ）は、指定色画素の画素成分が赤色成分(R)、青色成分(G)、緑色成分(B)である場合におけるルップアップテーブルの内部構成を示す。本図のルップアップテーブルは、複数の指定色画素のインデックス(図中のmp,mq,mr)を具備していて、インデックスのそれぞれに、Rの輝度の階調(0〜255)、Bの階調(0〜255)、Gの階調(0〜255)の組合せを対応付けることができる。かかるルップアップテーブルによりRGBのそれぞれには、0から255までの範囲で階調を指定することができる。図７（ｄ）は、RGB形式のルップアップテーブルにおいて、個々の指定色のインデックスに対応付けられたエントリーのビット構成を示す。 本ルップアップテーブルにおいて、1つの画素のビット幅を32ビットとし、RGBのそれぞれについて8ビットを割り当てる。Y,Cr,Cbによる画素表現と、RGBによる画素表現とのそれぞれについて説明を行うのは煩雑であるから、以降の説明における指定色表現は、輝度Y,赤色差Cr,青色差Cbに統一するものとする。
【００７３】
指定色画素群抽出部２２は、フレーム期間においてフレームメモリにフレーム画像がえられた際、フレーム画像を構成する1920×1080、640×480といったオーダの解像度の画素であって、指定色ルップアップテーブル２１に規定された指定色画素の画素成分に合致するものを抽出して抽出画像を得る。この抽出画像は、ルップアップテーブルに記載された指定色画素と合致する画素成分の画素を、無地の背景上に配置したものである。かかる指定色が2以上存在する場合、かかる抽出画像は、2以上の指定色のそれぞれについて生成される。図８は、指定色画素群抽出部２２による画素群抽出を示す図である。図中の矢印ext1,ext2は、このフレーム画像からの画素群抽出を模式的に示す。これらが抽出されるのは、柄先の球体の色と、ペン先の色とが画像処理装置において指定色として登録されているためである。スタイラスの球状体は、ユーザの目には円に見えるがフレーム画像の画素をミクロで見るとギザギザ線の輪郭を有した歪な図形となる。かかる抽出により、無地の背景にスタイラスのペン先の画素群が配置された抽出画像と、無地の背景にスタイラスの柄先の球体の画素群が配置された抽出画像とが生成されることになる。
【００７４】
図９は、スタイラスが画面に近づいた場合、遠退いた場合、その中間位置に存在する場合という3つのケースにおいて、画素群がどのように変化するかを示す。図９（ａ）は、スタイラスが画面から距離Ｚmiddleだけ隔てられた位置に存在するケースを示す。Ｍmiddleは、かかる距離を空けたスタイラスの撮影画像から抽出される画素群を示す。図９（ｂ）は、スタイラスと画面との距離が遠退いたケース（このときの距離をＺfarとする）を示す。Ｍfarは、かかる距離を空けたスタイラスの撮影画像から抽出される画素群を示す。図９（ｃ）は、スタイラスと画面との距離が近づいたケース（このときの距離をＺnearとする）を示す。Ｍnearは、かかる距離を空けたスタイラスの撮影画像から抽出される画素群を示す。Ｍmiddleと比較すると、スタイラスが遠退いたケースの画素群Mfarでは、フレーム画像から抽出される画素群の横画素数が少なくなっていることがわかる。Ｍmiddleと比較すると、スタイラスが近付いたケースの画素群Mnearでは、フレーム画像から抽出される画素群の横画素数が少なくなっていることがわかる。かかる画素群の横画素数変化、縦画素変化が、奥行き決定の手掛かりになる。
【００７５】
ヒストグラム生成部２４は、抽出された画素群である抽出画像において、座標毎の指定色画素の出現数を計数して、ヒストグラムを生成する。かかる生成は、X軸上の複数の座標、及び、Y軸上の複数のY座標についてなされる。X軸上の複数の座標のそれぞれに、指定色画素の出現数を対応付けて示すヒストグラムを「X軸ヒストグラム」といい、Y軸上の複数の座標のそれぞれに、指定色画素の出現数を対応付けて示すヒストグラムを「Y軸ヒストグラム」という。
【００７６】
ヒストグラム格納部２５は、ヒストグラム生成部により生成されたX軸ヒストグラム及びY軸ヒストグラムを格納する。図１０（ａ）は、画素群を規定するX-Y座標系のX軸、Y軸のそれぞれを描いている。本図の破線は、画素群Ｍを、X軸上に射影した射影範囲を規定する。X軸のヒストグラム、Y軸のヒストグラムは、この射影範囲の座標を対象にしている。X軸ヒストグラム及びY軸ヒストグラムは、かかる座標を用いて配列要素を特定するような配列変数により構成することができる。図１０（ｂ）はX軸ヒストグラムを規定する配列変数を示し、X0、X1、X2、Xnは、図１０（ｂ）のX軸ヒストグラムにおいて度数と対応付けられるx座標である。X軸ヒストグラムにおいてこれらの座標が度数に対応付けられるのは、図１０（ａ）の画素群が、X軸においてX0,X1,X2,Xnといった座標をなすからである。
【００７７】
図１０（ｃ）は、Y軸ヒストグラムを規定する配列要素を示す。Y0、Y1、Y2、Ynは、図１０（ｃ）のヒストグラムにおいて度数と対応付けられるY座標である。Y軸ヒストグラムにおいてこれらの座標が度数に対応付けられるのは、図１０（ａ）の画素群が、Y軸においてY0,Y1,Y2,Ynといった座標をなすからである。オブジェクト指向プログラミング言語を用いてかかる配列変数を定義し、かかる配列変数をX軸ヒストグラム及びY軸ヒストグラムとすれば、任意の座標の出現度数を取り出すことができる。
【００７８】
ヒストグラム平滑化部２６は、X軸ヒストグラムに示される度数、Y軸ヒストグラムに示される度数の平均値を算出し、その算出された平均値を度数とする平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムを得る。本実施形態においてヒストグラム平滑化部２６は、移動平均フィルタやガウシアンフィルタを発展させたインパルス応答フィルタを平滑化に用いる。このインパルス応答フィルタによる平滑化は、生成されたX軸ヒストグラム及びY軸ヒストグラムに対してインパルス応答の畳込みによる平滑化を施し、平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムを得る。ヒストグラムに示される複数座標の度数に対してインパルス応答I[n]を畳み込む演算は、離散時間フーリエ逆変換でなされる。図１０（ｄ）は、入力であるインパルスδ[n]に対するI[n]の畳込みを示す。インパルス応答I[n]は、所望のシステムに与えられた周波数応答H(w)を離散時間フーリエ逆変換することでえられる。数式に表すと図１０（ｅ）の数式１のようになる。DTFTは離散時間フーリエを表す。
【００７９】
インパルス応答がX軸において座標0から座標Mまで続くとなると、0からMまでのX座標のうち、n番目のx座標であるx[n]における畳込み出力I[n]・x[n]は、図１０（ｅ）における数式２のように算出される。ここでI[n]は、数式３のように規定される。X軸ヒストグラム及びY軸ヒストグラムの度数に対してかかる数式２、３の計算を行うことで平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムを得る。
【００８０】
離散時間フーリエ逆変換で上記インパルス応答が畳み込まれると、ヒストグラムに示される複数座標についての度数は、その中央でピークをとり、周辺に向かうにつれ0に近づくという理想的な形状になる。図１１（ａ）は、インパルス応答で平滑化されたヒストグラムの形状を近似した近似曲線を示すグラフである。本図において中心位置でもっとも高い値になり、周辺になる程、低い値になる。図１１（ｂ）は、X軸ヒストグラムの一例であり、図１１（ｃ）はY軸ヒストグラムの一例である。ヒストグラム生成の基礎となる画素群は、ギザギザ線の輪郭を有した歪な図形であるから、それかから生成されるX軸ヒストグラム、Y軸ヒストグラムもきれいな正規分布をなしている訳ではない。中央値が最大度数になっている訳ではなく、また同じ度数の座標が2以上存在している。図１１（ａ）のインパルス応答フィルタが施されると、平滑化結果は、図１１（ｄ）（ｅ）（ｆ）に示す通りとなる。図１１（ｄ）は、画素群を特定するX-Y座標系において、平滑化前後のX軸ヒストグラム及びY軸ヒストグラムを示している。ここで平滑化前後のX軸ヒストグラム及びY軸ヒストグラムを比較すると、図１１（ｂ）、（ｃ）では最大の度数を有したX座標、Y座標が2以上存在していてピークが定まりにくい。図１１（ｂ）、（ｃ）に示す平滑化前のヒストグラムにおいては、最大値が複数箇所あるのに対して、図１１（ｄ）〜（ｆ）に示す平滑処理後のヒストグラムにおいては、最大度数を有したX座標、Y座標は、唯一つ(Xm,Ym)になっている。最大値を１箇所にすることができるため、最大値の検出位置の安定化を図ることができる。
【００８１】
平滑化ヒストグラム格納部２７は、ヒストグラム平滑化部２６の平滑化で得られた平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムを格納する。
【００８２】
三次元座標生成部２８は、奥行き決定部による奥行き決定を三次元座標生成にまで発展させた構成要素であり、上述したような奥行き決定部と対応している。三次元座標生成部２８によるZ座標生成は以下の過程でなされる。先ず平滑化X軸ヒストグラムにおいて最大の出現数を有しているX座標(Xmという)、平滑化Y軸ヒストグラムにおいて最大の出現数を有しているY座標(Ymという)を特定する。そして、このXmの度数及びXm近傍の座標の度数、このYmの度数及びYm近傍の座標の度数の総和を計算して、その総和に基づき、スタイラスの奥行きであるZmを算出する。図３の矢印e6,e7は、三次元座標生成部３１によるX軸ヒストグラム及びY軸ヒストグラムの参照を示す。上記に示すように、X軸ヒストグラムからは、h(Xm),h(Xm-1),h(Xm+1)という3つの度数が参照される。Y軸ヒストグラムからは、h(Ym),h(Ym-1),h(Ym+1)という3つの度数が参照される。これらの度数の和を「ヒストグラム頂点近傍の度数和」とよぶ。図１２は、スタイラスと、X軸ヒストグラム及びY軸ヒストグラム、画素群との関係を立体的に描いた図である。上記ヒストグラム頂点近傍の度数和は、図１２における中央十字線の面積に対応する。つまり中央十字線は、線幅を3画素としていて、画素群の中央あたりで直交している。(Xm,Ym)は、かかる中央十字線の交点を表し、中央十字線全体の長さは、ヒストグラムの頂点近傍の度数和から算出される。ヒストグラムの頂点近傍の度数和を算出することで、画面から球状体中央までの奥行きを適切に定めることができる。
【００８３】
一方、立体視映像は、１画素〜２５５画素という視差を右目画像、左目画像に与えることで255段階の奥行き感を生成している。図１２のZ軸には、この奥行き感の基準となる255の数値を示している。ここで、上述した平滑化X軸ヒストグラム、平滑化Y軸ヒストグラムの度数の総和(中央十字線の面積又は全体長)がとりうる値を、255段階の数値範囲に分けて、これらを255段階の立体視の奥行きのそれぞれに割り当てる。図１２における矢印ass1,ass2,ass3は、この割り当てを象徴的に示したものである。このような割り当てを経れば、立体視オブジェクトのタッチを判定できるに足りる三次元座標を取得できる。
【００８４】
以上が画像処理部１５の構成要素についての説明である。これまでに述べた、画像処理部１５の構成要素は、その処理内容をオブジェクト指向プログラミング言語等を用いて記述してプロセッサに実行させることで、ソフトウェア的に再生装置内に実装することができる。以下、画像処理部１５の構成要素の実装のための処理手順について説明する。
【００８５】
図１３は、第１実施形態に係る画像処理の全体手順を示すフローチャートである。フローチャートは、最上位の処理、つまり、メインルーチンに該当するものである。
【００８６】
本フローチャートは、起動されるとステップＳ１０の判定待ち状態になり、かかるステップＳ１０がYesと判定されれば、ステップＳ１１〜ステップＳ１５を実行する構成になっている。ここでステップＳ１０は、カメラによりフレーム画像が取得されたかどうかの判定である。そしてステップＳ１１〜ステップＳ１５は、取得されたフレーム画像の指定色の画素群を抽出し(ステップＳ１１)、画素群mを構成する画素のX軸ヒストグラム及びY軸ヒストグラムを生成して(ステップＳ１２) 、X軸ヒストグラム及びY軸ヒストグラムを平滑化し(ステップＳ１３)、X軸ヒストグラム及びY軸ヒストグラムの最大度数を検出することで(Xm,Ym)座標を得て(ステップＳ１４)、Xm、Ymのそれぞれの近傍のヒストグラムの和からZm座標を得る(ステップＳ１５)という手順を、ステップＳ１０がYesになる度に繰り返すものである。XmとYmそれぞれの近傍のヒストグラムの和からZm座標を得る手順としては、Zmは、h（Xm-１）+h（Xm）+h（Xm+１）+h（Ym-１）+h（Ym）+h（Ym+１）を基に算出するという手法がある。尚h（n）は位置nにおける度数である。
【００８７】
上記のフローチャートにおけるステップＳ１２の手順は、図１４（ａ）、（ｂ）のサブルーチンの手順に展開することができる。図１４（ａ）は、X軸ヒストグラム生成手順を示すフローチャートである。本フローチャートでは、サブルーチンコール時において、1つ以上の引数を受け付けた上で本フローチャートに示される処理を実行し、当該処理の実行後、戻り値であるX軸ヒストグラムの要素を返す。本フローチャートは、３重のネストをなすループ構造を形成している。このうちステップＳ２３で規定される最内周のループは、ステップＳ２４〜ステップＳ２５の処理を画素群mを構成する画素の全てのY座標について繰り返すものである。図中の「j」は、ステップＳ２３によるループを規定する制御変数である。ステップＳ２２は、この最内周のループを、画素群を構成する画素の全てのX座標について繰り返すものである。図中の「i」は、ステップＳ２２によるループを規定する制御変数である。更にステップＳ２１は、ステップＳ２２により規定される各X座標についてのループを全ての指定色について繰り返すものである。「k」は、このステップＳ２１によるループを規定する制御変数である。ステップＳ２４は、座標(Xi,Yj)にある画素が指定色(k)を有しているかどうかの判定であり、もし有している場合、ステップＳ２５においてX軸ヒストグラムにおけるXiの度数h(Xi)をインクリメントする。有していない場合、次のY座標に処理を移す。
【００８８】
このループが一巡する度に、制御変数jがインクリメントされるので、この制御変数iで指示される座標Yjの画素が、本ループの処理に供されてゆく。本ループの繰り返しにより、X軸ヒストグラムにおける各X座標の度数が設定されることになる。
【００８９】
図１４（ｂ）は、Y軸ヒストグラム生成手順を示すフローチャートである。本図のフローチャートは、サブルーチン化されたものであり、サブルーチンを終了する際、コールした側のフローチャートに戻り値であるY軸ヒストグラムを返す。この戻り値は、フローチャートの終端に示されている通りである。本フローチャートは、３重のネストをなすループ構造を形成している。このうちステップＳ２８で規定される最内周のループは、ステップＳ２９〜ステップＳ３０の処理を画素群を構成する画素の全てのX座標について繰り返すものである。ステップＳ２７は、この最内周のループを、画素群を構成する画素の全てのY座標について繰り返すものである。更にステップＳ２６は、ステップＳ２７により規定される各X座標についてのループを全ての指定色について繰り返すものである。i,j,kの意味合いは、図１４（ａ）と同様である。ステップＳ２９は、座標(Xi,Yj)にある画素が指定色(k)を有しているかどどうか判定であり、もし有している場合、ステップＳ３０においてY軸ヒストグラムにおけるYjの度数h(Yj)をインクリメントする。有していない場合、次のX座標に処理を移す。
【００９０】
このループが一巡する度に、制御変数iがインクリメントされるので、この制御変数iで指示される座標Xiの画素が、本ループの処理に供されてゆく。本ループの繰り返しにより、Y軸ヒストグラムにおける各Y座標の度数が設定されることになる。
【００９１】
上記の図１３のフローチャートにおけるステップＳ１３の手順は、図１５（ａ）、（ｂ）のサブルーチンの手順に展開することができる。図１５（ａ）は、X軸ヒストグラムの平滑化手順を示すフローチャートである。本フローチャートでは、サブルーチンコール時において、1つ以上の引数を受け付けた上で本フローチャートに示される処理を実行し、当該処理の実行後、戻り値をである平滑化X軸ヒストグラムを返す。本フローにおいて変数mは、X軸の正方向における畳込み範囲を規定する変数である。変数nは、X軸の負方向における畳込み範囲を規定する変数である。
【００９２】
ステップＳ３１では、（画素群の横幅−１）／２の計算により、変数m,nを初期化し、ステップＳ３２により規定されるループに移行する。このループは、ステップＳ３３〜ステップＳ３７の処理を画素群を構成する全ての画素のX座標について繰り返すというものである。ステップＳ３３は、x+mが画面の横画素数を越えたかどうかの判定であり、もし越えたなら、ステップＳ３４において（画面の横画素数-x）を変数mに設定する。越えなかったなら、mを再設定しない。ステップＳ３５は、x−nが0を下回ったかどうかの判定であり、もし下回ったなら、ステップＳ３６において（x-0）を変数nに設定する。越えなかったなら、nを再設定しない。ステップＳ３７は、X座標におけるヒストグラムの度数と、その周辺の座標の度数とを所定の数式に適用して平滑化されたX軸ヒストグラムのx座標における度数を設定するものである。ステップＳ３７に記載された数式について説明する。ｈsmoothed#x(x)は、平滑化されたX軸ヒストグラムのx座標における度数を示す。
【００９３】
ステップＳ３７における数式Σ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軸ヒストグラムの度数となる。
【００９４】
図１５（ｂ）は、Y軸ヒストグラムの平滑化手順を示すフローチャートである。変数m,nの意味合いは、図１５（ａ）と同じである。ステップＳ４１では、（画素群の横幅−１）／２の計算により、ｍ、ｎを初期化し(ステップＳ４１)、ステップＳ４２により規定されるループに移行する。このループは、ステップＳ４３〜ステップＳ４７の処理を画素群を構成する全ての画素のY座標について繰り返すというものである。ステップＳ４３は、y+mが画面の縦画素数を越えたかどうかの判定であり、もし越えたなら、ステップＳ４４において（画面の縦画素数-y）を変数mに設定する。越えなかったなら、mを再設定しない。ステップＳ４５は、y−nが0を下回ったかどうかの判定であり、もし下回ったなら、ステップＳ４６において（y-0）を変数nに設定する。越えなかったなら、nを再設定しない。ステップＳ４７は、Y座標におけるヒストグラムの度数と、その周辺の座標の度数とを所定の数式に適用して平滑化されたY軸ヒストグラムのy座標における度数を設定するものである。ステップＳ４７に記載された数式について説明する。ｈsmoothed#y(y)は、平滑化されたY軸ヒストグラムのy座標における度数を示す。
【００９５】
ステップＳ４７における数式Σ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軸ヒストグラムの度数となる。上記ステップＳ３７、ステップＳ４７におけるヒストグラムの平滑化は、あるX座標の画素の度数h(x)をその隣接する画素の度数h(x+i)と足し合わせ、割ることで作成するものである。i=1であれば、I(x-1)h(x-1)+I(x+1)h(x+1)／３となる。
【００９６】
以上のように本実施形態によれば、画面表面をなぞるだけでなく、画面からスタイラスを遠退けたり、近づけたりする動きに、アプリケーションを連動させることができる。立体表示情報が存在する空間領域の三次元座標を予め定めておいてスタイラスの先端の座標がかかる空間領域の内部であれば、アプリケーションは再生対象となる多視点ビデオストリームを変える。この変更後の多視点ビデオストリームが「後ずさりする立体視オブジェクト」の映像であれば、ユーザはスタイラスの操作を通じて立体視オブジェクトと触れ合っているような体験をすることができる。
【００９７】
（第２実施形態）
第２実施形態は、捕捉対象のコントラストを好適に処理する改良に関する。スタイラスを捕捉対象として選ぶ場合、室内の照明や屋外における日光の照射のため、撮影されたフレーム画像におけるスタイラス像では、複数色のコントラストが発生する。この複数色のコントラストは、直接光が当たった部分の色、通常の部分の色、影になっている部分の色を含む。たとえスタイラスの成形色、塗装色が一色であっても、光の照らされ方によって捕捉対象はコントラストをなすから、本実施形態ではかかるコントラストにおける直接光が当たった部分の色、通常の部分の色、影になっている部分の色を複数の指定色として画像処理装置に登録している。そして、かかる指定色に該当する画素群を抽出し、かかる抽出画素群のそれぞれについて、X軸ヒストグラム、Y軸ヒストグラムを生成する。そして、そのように生成された指定色毎のX軸ヒストグラム、Y軸ヒストグラムについてヒストグラム合成を行う。
【００９８】
図１６は、第２実施形態に係る画像処理部１５の内部構成を示す。本図は、図３の内部構成をベースとして作図されており、このベースとなる内部構成と比較して、構成要素が新規に追加されている点が異なる。つまり図１６における画像処理装置の内部構成とは、新規な構成要素が追加され、この追加に伴う改良が既存の構成要素に施されたものである。
【００９９】
追加された構成要素とは、３０番台の参照符号を付したものであり、X軸ヒストグラム示される指定色画素の出現度数、Y軸ヒストグラムに示される指定色画素の出現度数を同じ座標毎に合算することで、合成されたX軸ヒストグラム、合成されたY軸ヒストグラムを得るヒストグラム合成部３０、ヒストグラム度数の合算にあたって乗じるべき度数を指定色毎に記憶する重み係数格納部３１、合成されたX軸ヒストグラム及びY軸ヒストグラムを格納する合成ヒストグラム格納部３２である。構成要素追加に伴う既存の構成要素の改良とは、ヒストグラム生成部２４が指定色毎にX軸ヒストグラム及びY軸ヒストグラムを生成してヒストグラム格納部２５に格納し、ヒストグラム生成部３０に引き渡す点(1)、ヒストグラム平滑化部２６による平滑化の対象が合成ヒストグラム格納部３２に格納された合成X軸ヒストグラム、合成Y軸ヒストグラムになった点(2)、ヒストグラム平滑化部２６により平滑化がなされた平滑化合成X軸ヒストグラム、平滑化合成Y軸ヒストグラムが三次元座標生成部２８による三次元座標生成の基礎になる点(3)である。かかる構成では、2以上の色を用いることでスタイラスの先端部を捕捉し、先端部の三次元座標を取得し、それを基にアプリケーションを制御する。
【０１００】
図１７は、第２実施形態に係る全体手順を示すフローチャートである。本図は、図１３のフローチャートをベースとして作図されており、このベースとなるフローチャートで成と比較して、一部のステップが別のものに置き換えられている点が異なる。
【０１０１】
その置換えがなされたステップとは図１３のステップＳ１０がYesになった際に実行されるものであり、５０番代の参照符号が付されたものである。これらの置き換えがなされた一連のステップについて説明する。フレーム画像から色Aの画素群maを抽出し(ステップＳ５１)、画素群maを構成する画素のX軸ヒストグラム及びY軸ヒストグラムを生成して(ステップＳ５２)、画素群maに包含される色Bの画素群mbを抽出し(ステップＳ５３)、画素群mbを構成する画素のX軸ヒストグラム及びY軸ヒストグラムを生成する(ステップＳ５４)。そして画素群mbのX軸ヒストグラム及びY軸ヒストグラムの度数をα倍する(ステップＳ５５)。その後、指定色maを構成するX軸ヒストグラム及びY軸ヒストグラム、指定色mbを構成するX軸ヒストグラム及びY軸ヒストグラムの度数を同じ座標毎に合算して、合算値を各X座標、各Y座標の度数とする合成X軸ヒストグラム、合成Y軸ヒストグラムを得る(ステップＳ５６)。続いて合成X軸ヒストグラム、合成Y軸ヒストグラムを平滑化して、合成X軸ヒストグラム、合成Y軸ヒストグラムの最大度数を検出して(Xm,Ym)を得る(ステップＳ５８)。ステップＳ５０ではXm,Ymにおける最大度数が閾値Thを上回るかどうかを判定して上回らない場合、ステップＳ１０のループに戻る。上回る場合、Xm,Ymのそれぞれの近傍の度数の和から、Z座標を算出する。このループが一巡する度に、フレーム画像が新たに入力されるので、あらたなフレーム画像は、本ループによるヒストグラム生成の対象に供されてゆく。
【０１０２】
上記のフローチャートにおけるステップＳ５６の手順は、図１８のサブルーチンの手順に展開することができる。図１８は、ヒストグラム合成手順を示すフローチャートである。本フローチャートにおいて、kは複数指定色のそれぞれを指示するインデックスであり、α(k)は、指定色(k)についての重み係数である。h#k(xi)は、指定色(k)について生成されたX軸ヒストグラムにおける座標xiについての度数を示す。Hx#sum(xi)は、指定色(k)について生成された合成X軸ヒストグラムにおける座標xiについての度数を示す。本フローチャートでは、サブルーチンコール時において、1つ以上の引数を受け付けた上で本フローチャートに示される処理を実行し、当該処理の実行後、戻り値である合成X軸ヒストグラム、合成Y軸ヒストグラムを返す。
【０１０３】
ステップＳ６１は、X軸ヒストグラムの全てのX座標について、ステップＳ６２を実行するループを規定する。ステップＳ６２におけるΣ計算は、指定色(k)について生成されたX軸ヒストグラムにおける座標xiについての度数h#k(xi)に、指定色(k)についての重み係数α(k)を乗じるという乗算を全ての指定色(k=1からnまでのインデックスで指示される指定色)について行い、その乗算結果の総和を、指定色(k)について生成された合成X軸ヒストグラムにおける座標xiについての度数であるHx#sum(xi)にするというものである。このループが一巡する度に、各指定色についてのX軸ヒストグラムの度数は、本ループの処理に供されてゆく。
【０１０４】
ステップＳ６３は、Y軸ヒストグラムの全てのX座標について、ステップＳ６４を実行するループを規定する。ステップＳ６４におけるΣ計算は、指定色(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の組合せを画素群抽出の対象にすると、スタイラスではない似たような色の部位の画素を拾ってしまう。スタイラスではない似たような色の部位の画素としては、ユーザの衣服であってスタイラスと似たような部分、ユーザの背景物であってスタイラスと似たような色の部分がある。一方、スタイラスがなすコントラストを構成する各色をヒストグラム生成の対象とし、そうして生成されたヒストグラムを合成し、この合成ヒストグラムの度数を用いれば、フレーム画像に、たまたまスタイラスと似たような色の対象が写りこんでいたとしても、かかる類似色の対象物を奥行き決定の対象から除外することができる。これが、コントラストを用いることの技術的意義である。
【０１０７】
第２実施形態におけるコントラスト処理の原理を具体例を交えながら説明する。ここでの具体例とは図１９（ａ）のようなスタイラスを、室内の照明下で使用するというものである。かかるスタイラスは、指定色maに対応する一色で塗られているが、室内の照明が反射することでハイライトが存在する。図１９（ａ）においてスタイラスの終端に取り付けられた球体の球面上の円状領域は、光源の照射によるハイライトが存在する領域であり指定色mbの色をなす。それ以外の領域は、指定色maの色をなす。画像処理部ではかかるハイライト部分の輝度Y,赤色差Cr,青色差Cbの組合せを指定色mbとして登録している。図１９（ｂ）は、球体の像から抽出された画素群と、X軸ヒストグラム及びY軸ヒストグラムとを示す。＋記号sm1は、指定色maについてのX軸ヒストグラムhg1、指定色mbについてのX軸ヒストグラムhg2が度数合算の対象になり、結果として合成X軸ヒストグラムhg3が得られることを模式的に示す。＋記号sm2は、指定色maについてのY軸ヒストグラムhg4、指定色mbについてのY軸ヒストグラムhg5が度数合算の対象になり、結果として合成Y軸ヒストグラムhg6が得られることを模式的に示す。
【０１０８】
X軸ヒストグラム合成、Y軸ヒストグラム合成の概要を説明したところで、図２０におけるX軸ヒストグラム、Y軸ヒストグラムの合成の過程にスポットライトをあてて更に詳しく説明する。
【０１０９】
図２０（ａ）は、指定色maの画素群に対して生成されたX軸ヒストグラムを示し、図２０（ｂ）は指定色mbに対して生成されたX軸ヒストグラムを示す。指定色mbについては、重み係数が割り当てられるので、指定色mbについてのX軸ヒストグラムの度数は、α倍される。図２０（ｃ）は、（ａ）の指定色maについてのX軸ヒストグラムと、指定色mbについてのX軸ヒストグラムとを合成した合成X軸ヒストグラムを示す。指定色maのヒストグラムの度数は何れも閾値を下回るものであったが、合成ヒストグラムの度数はこの閾値を上回っている。図２０（ｄ）は、合成ヒストグラムに対して平滑化を施すことで得られる平滑化合成X軸ヒストグラムを示す。破線は近似曲線である。かかる平滑化により最大度数を有しているX座標と、その次順位のX座標との組み(Xm,Xm-1,Xm+1)がみつかる。
【０１１０】
指定した２つの色それぞれに対して、X軸とY軸に対して前記画素群を構成する画素のヒストグラムを生成し（図２０(a)、図２０（b））、２つの色それぞれのヒストグラムを合算したヒストグラムを生成し（図２０（c））、さらに平滑化処理を施したヒストグラム(図２０（ｄ）)を奥行き決定の基礎にしているので検出感度が上がり、小さな物体の検出も可能となる。
【０１１１】
X軸ヒストグラムの合成過程の詳細を説明したところで、スタイラスの球体と、類似色の物体とがどのように区別されるかという識別法について図２１を参照しながら説明する。図２１の第１段目は、類似色の物体像から抽出される画素群と、スタイラスの球体から抽出される画素群とを対比して示す図２１における類似色の物体は、色mcの部分と、色mdの部分とからなるコントラストを有している。かかるコントラストをなす色mc、mdが指定色として登録されているとすると、第２段目に示すように、mc、mdのそれぞれについて、X軸ヒストグラム、Y軸ヒストグラムが生成される。
【０１１２】
第２段目は、類似色画素群の画素群から生成される2つの指定色についてのX軸ヒストグラムと、スタイラス球体の画素群から生成される2つの指定色についてのX軸ヒストグラムとを示す。＋記号sm3は、スタイラスの球体については、指定色maに対応するX軸ヒストグラムhg11と、指定色mbに対応するヒストグラムhg12とが合成の対象になっていることを示す。＋記号sm4は、類似色物体については、指定色mcに対応するX軸ヒストグラムhg13と、指定色mdに対応するヒストグラムhg14とが合成の対象になっていることを示す。
【０１１３】
第３段目は、類似色画素群の画素群から生成される2つのX軸ヒストグラムを合成することで得られた合成X軸ヒストグラムと、スタイラス球体の画素群から生成される2つのX軸ヒストグラムを合成することで得られた合成X軸ヒストグラムとを示す。指定色mbについては、１を上回る係数αが登録されているので、スタイラス球体の画素群から生成される2つのX軸ヒストグラムについての合成X軸ヒストグラムの最大度数は、閾値Thを超える。
【０１１４】
一方、類似色画素群には指定色mbの画素が存在しないので類似色画素群の画素群から生成される2つのX軸ヒストグラムについての合成X軸ヒストグラムの最大度数は、閾値Thを超えない。以上のように、指定色mbについての重み係数を設定することにより、スタイラスの球体部分の画素群と、それ以外の画素群とを区別することができる。
【０１１５】
X軸ヒストグラム、Y軸ヒストグラムに対して指定した閾値Th未満の度数を０にし、閾値Th以上の度数に対しては閾値を減算することで、背景に含まれるノイズをキャンセルすることができるため物体の誤検出の抑制や三次元座標生成の安定化を図ることができる。また前述のヒストグラムの合算処理を組み合わせることによって、例えば図２０（a）のThの位置に閾値があって、１つの色であれば、度数は０になり検出ができない状況においても、合算による感度向上の効果によって、物体の検出が可能となる。
【０１１６】
スタイラスが、これら2以上の成形色、塗装色、包装色を有している場合について考える。この場合、光の照射によりこれらの各色がコントラストをなすから、直接光が当たった部分の色、通常の部分の色、影になっている部分の色を複数の指定色として画像処理装置に登録しておく、そしてかかる指定色に該当する画素群を抽出し、かかる抽出画素群のそれぞれについて、X軸ヒストグラム、Y軸ヒストグラムを生成して、そのように生成された指定色毎のX軸ヒストグラム、Y軸ヒストグラムについてヒストグラム合成を行えば、より高精度に奥行き決定を行うことができる。
【０１１７】
尚、本実施形態ではスタイラスのハイライトの指定色を登録したが、スタイラスの先端を特定の色の塗料でマーキングしておき、この塗料の輝度Y,赤色差Cr,青色差Cbの組合せを指定色mbとして登録してもよい。
【０１１８】
（第３実施形態）
本実施形態は、スタイラスのZ座標だけではなく、スタイラスの回転角を算出する構成要素を追加する。図２２は、第３実施形態に係る画像処理部１５の内部構成を示す。本図は、図３の内部構成をベースとして作図されており、このベースとなる内部構成と比較して、新規の構成要素が追加されている点が異なる。図２１の内部構成における新規な構成要素の追加とは、X軸ヒストグラム及びY軸ヒストグラムからX座標、Y座標を取得してスタイラスの回転角を算出する回転角生成部４１が存在することである。かかる回転角生成部４１は、上述した回転角決定部に対応する構成要素であり、回転角生成部４１で生成される回転角がイベントマネージャによるイベント生成の基礎となる。先の実施形態で説明した合成部と、これに関連する構成要素とは記載を省略している。これらの構成要素を具備するかどうかは任意的であるからである。第３実施形態に係る内部構成を説明したところで、本実施形態特有のスタイラス構成について説明する。
【０１１９】
回転角には、スタイラス前後をX軸として回転する場合の角度であるローリング(rolling) 角、スタイラス左右をY軸にして回転する場合の角度であるピッチング (pitching)角 、スタイラス上下をZ軸にして回転する場合の角度であるヨーイング (yawing) 角がある。以降では、説明の対象として、角度角に「ローリング角」を選ぶ。以下、具体例を交えて、本実施形態における回転角決定の原理を説明する。ここで以降の説明では、図２３（ａ）のような構成のスタイラスを題材に選ぶ。
【０１２０】
図２３（ａ）は、本実施形態に係るスタイラスの外観図である。図２３（ａ）における球体は、一方の半球部分が指定色maで塗られ、他方の半球部分が指定色mbで塗られている。
【０１２１】
図２３（ｂ）は、スタイラス終端の球体を画面に向けて移動させている状態である。矢印up1,dw1は、画面の鉛直方向に沿った移動軌跡を示す。矢印ro1は、スタイラスの右回り、左回りの回転を示す。ここでスタイラスが、X軸、Y軸に対してθという回転角をなしている場合、画像上において塗り分けの境界もθをなす。
図２４（ｃ）は、塗り分けがなされた球体の撮影画像から生成される指定色毎の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軸ヒストグラムについての最大座標を示す。図２３（ｃ）において指定色毎のY軸ヒストグラムが、Y軸上でなす差分Δyは、Yn(ma)-Y0(mb)となる。指定色毎のX軸ヒストグラムが、X軸上でなす差分Δyは、Xn(ma)-X0(mb)となる。
【０１２３】
図２３（ｄ）は、θと、ヒストグラムの座標との幾何学的関係を示す．本図において、三角形ABCの辺ABは、Xn[ma]-X0[mb]に等しく、辺ACは、Yn[ma]-Y0[mb]に等しい。そして辺ABと、辺ACとはθ／２をなす．Tanθ／２＝AB／ACの関係が成立するから、かかる関係によりθを導くことができる．図２３（a）に示すように、スタイラスの球体を２色で着色しておけば、図２３（b）に示すように各色の位置関係を基に回転角θを得ることができる。
【０１２４】
図２４は、第３実施形態に係る画像処理装置の全体手順を示すフローチャートである。かかるフローチャートは、図１７をベースにして改良を施したものである。本フローチャートの改良とは、ステップＳ５９においてXm、Ymのそれぞれの近傍のヒストグラムの和からZmを取得した後にステップＳ７１を実行するというものである。ステップＳ７１は、X軸ヒストグラム及びY軸ヒストグラムの座標の差分からスタイラスの回転角θを算出する。このステップＳ７１の手順は、図２５のサブルーチンの手順に展開することができる。図２５は、スタイラスの回転角の算出手順を示すフローチャートである。本フローチャートでは、サブルーチンコール時において、1つ以上の引数を受け付けた上で本フローチャートに示される処理を実行し、当該処理の実行後、戻り値であるスタイラスの回転角を返す。ステップＳ７５では、指定色(ma)のX軸ヒストグラムの最大X座標(Xn(ma))、指定色(ma)のY軸ヒストグラムの最大Y座標(Yn(ma))を取得し、ステップＳ７６では、指定色(mb)のX軸ヒストグラムの最小X座標(X0(mb))、指定色(mb)のY軸ヒストグラムの最大Y座標(Yn(mb))を取得する。最後に、ステップＳ７７ではtan(θ/2)＝(Xn(ma)-X0(mb))／(Yn(ma)-Y0(mb))の関係式からθを算出する。
【０１２５】
以上のように本実施形態によれば、X軸ヒストグラム及びY軸ヒストグラムから三次元座標を生成するという生成処理に付随して、スタイラスの回転角を算出することができるので、現実空間におけるスタイラスの動きを精密に捕捉することができる。
【０１２６】
（第４実施形態）
本実施形態では、回転角決定に適合したスタイラスとしてどのようなものがよいかを示す。回転角決定に適した構成としては、スタイラスの柄先に、球状体を2つ取り付けるというものである。図２６は、第２実施形態に係るスタイラスの構成を示す。図２６（ａ）は、スタイラスの柄の先の部分に、指定色maで塗られた球体と、指定色mbで塗られた球体との球体対１０３eが存在する。図２６（ｂ）は、本実施形態で捕捉することができるスタイラスの動きを模式的に示す。本図の矢印up2dw2は、画面の鉛直方向に沿った移動軌跡を示す。矢印ro2は、スタイラスの右回り、左回りの回転を示す。上記球体対を対象にした回転角決定の原理を図２６（ｃ）〜（ｅ）を参照しながら説明する。
【０１２７】
図２６（ｃ）は、球体対１０３eを撮影したフレーム画像から抽出される画素群を示す。本図のX軸、Y軸には指定色maについて生成されるX軸ヒストグラム及びY軸ヒストグラム、指定色mbについて生成されるX軸ヒストグラム及びY軸ヒストグラムを描いている。図２６（ｃ）において指定色毎のY軸ヒストグラムが、Y軸上でなす差分Δyは、Yn(mb)-Y0(ma)となる。指定色毎のX軸ヒストグラムが、X軸上でなす差分Δyは、Xn(ma)-X0(mb)となる。      
【０１２８】
図２６（ｄ）は、スタイラスの回転角において見出される幾何学的関係を示す。スタイラスの回転角θは、XY平面において三角形ABC、CDEをなす。図２６（ｅ）は、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となる。
【０１３０】
以上が本実施形態におけるスタイラスに対する改良である。続いて、本実施形態におけるソフトウェア手順の改良について説明する。本実施形態でのソフトウェア手順上の改良とは、図２４のステップＳ７１におけるスタイラス回転角の算出を、図２７のフローチャートで実現するというものである。図２７は、スタイラス回転角の算出手順を示すフローチャートである。図２７のステップＳ８１では、指定色(ma)のX軸ヒストグラムの最大X座標(Xn(ma))、指定色(ma)のY軸ヒストグラムの最小Y座標(Y0(ma))を取得し、ステップＳ８２では、指定色(mb)のX軸ヒストグラムの最小X座標(X0(mb))、指定色(mb)のY軸ヒストグラムの最大Y座標(Yn(mb)を取得する。最後に、ステップＳ８３では、tan(θ/2)＝((Yn(mb)-Y0(ma))／2)／((Xn(ma)-X0(mb))／2)の関係式からθを算出する。
【０１３１】
以上のように本実施形態によれば、図２６（a）のように、スタイラスの柄先に複数個の違う色の球体の組みが取り付けておくことで、図２６（b）に示すように各色の位置関係を基に回転角θを得ることができる。球体対を柄先に具備したスタイラスでは、指定色毎のヒストグラム座標の差分が大きく現れるから、スタイラスの微妙な回転を捕捉することが可能になる。
【０１３２】
(第５実施形態)
第５実施形態は、立体視表示装置において、カメラと組みにして発光素子１０１bを取り付ける形態を開示する。図２８（ａ）は斜視図であり、カメラ１０１aと発光素子１０１bの組みが取り付けられた表示装置１０１と、スタイラス１０３とを描いている。（ａ）において、スタイラス先端に取り付けられた球体は白色の拡散部材で加工されており、本体のLEDの色を反射する。図２８（ｂ）は、表示装置の正面からカメラ１０１aと発光素子１０１bとを見た場合の正面図である。図２８（ｃ）は、表示装置の透視図であり、表示装置内部において取り付けられたカメラ１０１aと発光素子１０１bとの組みが、どのような構成をなすかを示す。（ａ）の位置にスタイラスが存在する場合、スタイラスの球体はLEDから発せられた光を拡散し、その拡散光がカメラ１０１aに入射する。画像処理装置には、この照射された球体がなす表面色が指定色として登録されていて、かかる登録がなされた画素群を抽出し、撮影画像を生成する。
【０１３３】
カメラと組みになった発光素子がスタイラスを照らし、画像処理部１５は照射がなされた状態の画像からヒストグラム生成を行い、結果となるヒストグラムに平滑化を施して最大度数に基づく奥行き決定をするので、スタイラスの指定色と似たような色が背景に存在したとしても、誤検出を避けることができる。
【０１３４】
(第６実施形態)
第１実施形態のスタイラスは、タッチパネルの操作に適合したペン先と、捕捉対象の捕捉に適合した球状体とを有する2wayタイプのスタイラスであったが、これでは、ペン先と、球状体とが同時に捕捉されてしまって誤検出が生じやすいという欠点が生じる。そこで本実施形態では、スタイラスの形態自体の改良により、かかる誤検出の解消を図る。
【０１３５】
かかる誤検出に適した改良としては、図２９（ａ）〜（ｅ）に示すものがある。図２９（ａ）は、スタイラスを筒状のケース１１０で覆い、ケースをスライドさせるというものである。第１段目は、筒状ケース１１０を柄先方向にスライドして、球体を収納している収納形態を示す。第２段目は、球体が収納された状態での断面図である。このように収納状態では、柄先の球体が筒状ケース１１０に隠れていることがわかる。第３段目は、筒状ケースをペン先方向にスライドさせた場合の断面図である。この状態では柄先の球体が表れ、立体視オブジェクトに対する操作に用いることができる。以上のようにケースを柄先方向にスライドさせれば、ペン先が表れ、ペン先方向にスライドさせればボールが現れる。これによりペン先、柄先の球体の一方を三次元座標の生成の対象として選ぶことができる。この図２９（ａ）の態様では、スタイラスの先端部と後部の球体をスライドしてケースに出し入れできるから、先端部と球体の色が同系色の場合に誤検出を防ぐことができる。
【０１３６】
図２９（ｂ）は、ジェル状の樹脂をスタイラスに充填した構成である。第１段目は外観図であり、プッシュボタン１１１が側面に設けられていて、ペン先には貫通孔１１２が存在する。第２段目は断面図である。第２段目に示すように、スタイラスの内部空洞にはジェル状の樹脂１１３が充填している。第３段目は、このプッシュボタン１１１を押下した状態を示す。かかる押下により内部のジェル状の樹脂１１３が押し出され、ペン先に設けられた貫通孔１１２を通じてジェルの塊を吹き出させる。かかるジェルの色が指定色として画像処理装置のルップアップテーブルに登録されており、スタイラスのペン先から吹き出た状態でユーザがスタイラスを把持した操作を行えば、このジェルの像を構成する画素群についてヒストグラム生成を行い、結果となるヒストグラムに平滑化を施して最大度数に基づく奥行き決定を行う。図２９（ｂ）では、スタイラスのボタン１１１を押下すると、先端部からゴム状の色がついた物体が出てきて、これをカメラ１０１aに捕捉させるから、先端部と球体の色が同系色の場合に誤検出を防ぐことができる。
【０１３７】
図２９（ｃ）は、球体に円錐状の孔を設けておき、ここにスタイラスのペン先をはめ込むことで、球体をスタイラスに取り付けるというものである。図２９（ｃ）では、球体を尖った先端部で串刺した形状にすることで、スタイラスの片方だけでタッチパネルの操作とカメラ１０１aによる追跡による操作ができる。
【０１３８】
図２９（ｄ）は、ペン先を構成する三角錐を脱着可能とした例であり、図２９（ｅ）は球体をスタイラスから脱着可能としたものである。図２９（ｅ）では、周辺環境の色合いに合わせて誤検出が少ない色に先端部もしくは後部の球体の色を交換できる。
【０１３９】
（第７実施形態）
これまでの実施形態は、立体視オブジェクトに対するスタイラスによるタッチをカメラ１０１aで捕捉するための三次元座標生成を対象としていたが、本実施形態は、画面をなぞるスタイラスペンの動きを追従する形態である。
【０１４０】
図３０を参照しながら画面をなぞる動きを捕捉する原理について説明する。
【０１４１】
図３０（ａ）は、第７実施形態にかかる表示装置の外観を示す図である。カメラ２０１は、支持部材を介して表示装置に取り付けられており、画面を斜め下に見下ろす形態になっている。図３０（ａ）では表示装置の画面が右斜め上を向いており、かかる画面の表面をスタイラスの先端が移動している。図中の矢印up3,dw3は、スタイラスの上下移動を示す。図中の十字cr1は、画面上におけるスタイラス先端の軌跡を模式的に示す。このスタイラス先端の軌跡からも明らかなように、本実施形態では画面から空間的に離れた位置でスタイラスを移動させる場合だけではなく、画面表面をなぞる場合でもこのスタイラスの位置を捕捉する。これは画像処理装置が画像から三次元座標を生成するからである。
【０１４２】
図３０（ａ）に示すようにカメラ１０１aは、ディスプレイの上側面に存在するため、カメラ１０１aにより撮影される映像には、ユーザの正面像のだけではなくスタイラスの先端が写りこむ。図３０（ｂ）は、図３０（ａ）のカメラ１０１aで撮影されるフレーム画像を示す。図３０（ｂ）においてフレーム画像の下側にスタイラスのペン先が写りこんでいることがわかる。そこで画素群の抽出時において抽出された画素群に対して写像変換を行い、フレーム画像の下半分にあたる抽出画像を、全画面画像に変換する。（ｃ）は、写像変換前の抽出画像、写像変換後の全画面画像を示す。（ｃ）の左側は、（ｂ）のフレーム画像から表示装置の画面枠を抜き出したものである。カメラの位置は、画面の斜め上であるから、画面枠は、この斜め上から見下ろしたような形状(台形状)になっている。図中の矢印ext3は、フレーム画像からの画面枠の抜き出しを模式的に示す。図中の矢印trf1はこの写像変換を模式的に示す。（ｃ）の右側は、写像変換後の全画面画像となる。かかる写像変換後の画像に対して行えば、平面視画像に対するスタイラス操作であっても、三次元座標生成の対象にすることができる。上記の第７実施形態の構成では、ペン先で画面をなぞる動きも、画像処理部１５による画像処理で捕捉できるから、タブレット端末ではタッチセンサを省略することができ、低コスト化が可能になる。
【０１４３】
以上のように本実施形態によれば、画面を少し離れてなぞるようなスタイラスの動きを撮影してこの撮影画像に対してヒストグラム生成を行い、結果となるヒストグラムに平滑化を施して最大度数に基づく奥行き決定を行うことで、スタイラスのペン先の奥行きを示す座標を生成することができる。スタイラスの三次元座標や回転角が画面におけるタッチ位置やタブレット端末の傾きと同列に扱われるので、スタイラスの空間的位置に連動した動作をアプリケーションに行わせることができる。アプリケーションがゲームやブラウザである場合、スタイラスの立体的な動きに追従するような動作をアプリケーションに行わせることができる。
【０１４４】
（第８実施形態）
本実施形態は、これまでの実施形態で述べた捕捉対象の動きの捕捉を応用して三次元ジェスチャを実現するというものである。表示装置の手前でユーザが渦巻を描いた場合、この動きの軌跡を複数枚のフレーム画像で表してX軸ヒストグラム及びY軸ヒストグラム生成を行い、これを基に三次元情報を生成すればユーザが一筆書きで描いた立体形状を、三次元座標モデルに変換することができる。図３１（ａ）は、ユーザが空間中で描いた渦巻形状と、このスタイラスの動きから生成される三次元座標tr1,tr2,tr3・・・・とを示す。
【０１４５】
図３１（ｂ）は、ユーザが空間中で描いた渦巻形状と、このスタイラスの動きから生成される三次元座標ur1,ur2,ur3・・・・とを示す。
【０１４６】
カメラ１０１aで得た複数のフレーム画像を対象にしてスタイラスの移動軌跡を示す複数の三次元座標を生成するからこの座標をもとにユーザによるジェスチャを認識して立体物モデルを生成し、コンピュータグラフィクスとして表示させることができる。ジェスチャ認識は、具体的には以下のように行う。画像処理装置においては、ジェスチャ辞書を設けておく。この辞書は、認識すべきジェスチャパターンのそれぞれに、正規化された三次元ベクトル列を対応付けたものである。上記の例では、渦巻の形状、ピラミッドの形状のそれぞれについて、正規化された三次元ベクトル列を対応付けている。一方、画像処理装置が複数のフレーム画像に対してこれまでの実施形態で述べた画像処理を行うことで、各フレーム画像に対する捕捉対象についての三次元座標が生成される。かかる複数の三次元座標を基に、捕捉対象の動きを示す三次元ベクトルを生成し、これを正規化する。そして、正規化された複数の三次元ベクトルを用いて上記ジェスチャ辞書を検索し、最ももっともらしいジェスチャを選ぶ。こうして選ばれたジェスチャに対応する処理をアプリケーションが実行する。この場合、ユーザがスタイラスを使って渦巻を描けば、この渦巻をもとにゲームの中で竜巻を起こしたり、４面体を描けばゲームの中でピラミットを築くという演出が可能になる。
【０１４７】
＜備考＞
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明したが、以下に示す技術的トピックについては、更なる改良や変更実施を加えることができる。各実施形態に示した通り実施するか、これらの改良・変更を施すか否かは、何れも任意的であり、実施する者の主観によることは留意されたい。
【０１４８】
（ヒストグラム生成時の調整）
立体視オブジェクトの飛び出し量は、画面サイズによって変わる。よって立体視オブジェクトの飛出し量に応じて、ヒストグラム生成やヒストグラムの度数合算にあたっての重み係数、畳み込むべきインパルス応答を変更してもよい。
【０１４９】
（タッチイベントの生成）
三次元座標のうち、特定の空間領域に属するものをタッチイベントの対象としたが、発生したイベントの全てをタッチイベントに変換してアプリケーションに送信してもよい。立体視オブジェクトのどの部分を操作の対象にするかはアプリケーションによって異なるので、こうする方がアプリケーションによる適切な処理が可能になるからである。この場合、イベントマネージャにあたる処理をアプリケーションをロードすればよい。
【０１５０】
画像処理装置により生成される三次元座標を含むタッチイベントは、パスワード入力等のユーザ認証やGUI部材を通じた対話処理を実現することにより装置のセットアップ入力やコンフィグレーション入力に利用してもよい。
【０１５１】
（立体視シアターシステム化）
第１実施形態に示した表示装置を、記録媒体の再生装置及び表示装置からなる立体視シアターシステムとして構成してもよい。この場合、表示部及び画像処理部のみを表示装置の構成要素とし、プラットフォーム部、ヒープメモリ、ビデオデコーダ、レンダリング部、ビデオプレーン、グラフィクスプレーン、イベントマネージャを再生装置の構成要素とする。この場合、表示装置に具備された画像処理装置は、表示装置とのインターフェイスを介して三次元座標を再生装置に出力する。記録媒体の再生装置は、こうして受け取った三次元座標に従い、イベントを生成してアプリケーションを駆動するのである。
【０１５２】
(平滑化のバリエーション)
これまでの実施形態において、移動平均フィルタ、ガウシアンフィルタやインパルス応答フィルタで平滑化を実現したが平滑化は、これに限られるものではなく、複数座標の度数を加算して、座標数で割るとの演算が伴えば足りる。他の一例として以下のものがある。つまり、核関数による平滑化、多項式の局所的当てはめによる平滑化 、散布図平滑化、スプライン関数当てはめによる平滑化、移動直線平滑化、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の度数等、近傍値の度数のみを奥行き決定の基礎にしてもよい。
【０１５５】
（多視点ビデオストリームの構成）
多視点ビデオストリームは、フレームシーケンシャルフォーマットであるとしたが、垂直方向ラインインターリーブドフォーマット、水平方向ラインインターリーブドフォーマット、トップダウンフォーマット、サイドバイサイドフォーマット、フィールドシーケンシャルフォーマット、ブロックインターリーブドフォーマットであってもよい。ブロックインターリーブドフォーマットは、例えば、基準視点映像及び付加視点映像がブロック単位で交互に混合映像のブロックに配置されることによって、混合映像を構成する。
【０１５６】
(奥行き決定の対象物)
奥行き決定の対象物は、人体の一部であってもよい。この場合、非特許文献１に記載されているようなHue Saturation Valueカラーシステムを指定色のルップアップテーブルとして画像処理装置に登録しておき、画素群の抽出を行えばよい。しかし人体を対象物とする場合、人体の手、腕、顔、首がフレーム画像に写りこむ。この場合、上述したようなルップアップテーブルでは、手、腕、顔、首の画素群が抽出され、適切な奥行きが定まらない恐れがある。そこで、第１実施形態に示した発光素子１０１bを用いて人体の部位のうち、奥行き決定の対象となるべき部位を照射する。ルップアップテーブルでは、その照射された状態の部位の輝度Y,赤色差Cr,青色差Cbの組合せ、輝度成分、赤色差成分、青色差成分の組合せを登録しておく。こうすることで奥行き決定の対象を人体の指先に絞ることができる。
【０１５７】
(指定色登録の対象)
スタイラスの表面がなす模様のコントラストを、複数の指定色として登録しておき、かかる複数の指定色に従いX軸ヒストグラム、Y軸ヒストグラムを生成してヒストグラム合成の対象にしてもよい。模様のコントラストとしては、チェッカーパターンや虹色パターン、格子パターン、バーコード、QRコード(登録商標)がありえる。このように、様々な色の組合せを指定色としてルップアップテーブルに登録しておけば、類似する色の物体と、捕捉対象との区別を適切に行うことができる。
【０１５８】
（数式及び算出処理の範囲）
本願の出願明細書や図面に記載した様々な数式は、数学的な概念を意味するのではなく、あくまでも、コンピュータ上で実行される数値演算を意味するものなので、当然のことながら、コンピュータに実現させるための、必要な改変が加えられることはいうまでもない。例えば、数値を、整数型、固定少数点型、浮動小数点型で扱うための飽和演算や正値化演算が施されてよいことはいうまでもない。更に、各実施形態に示した、数式に基づく演算処理や算出処理は、定数ROMを用いたROM乗算器で実現することができる。定数ROMには、被乗数と定数との積の値はあらかじめ計算されて格納されている。例えば、被乗数が16ビット長である場合、この被乗数は、4ビット毎に四つに区切られ、この4ビット部分と定数との積、つまり、定数の0〜15の倍数が上記の定数ROMに格納されている。上記の一区切りの4ビットと定数16ビットとの積は20ビット長であり、上記の四つの定数が同一のアドレスに格納されるので、20×4＝80ビット長が一語のビット長となる。以上述べたように、ROM乗算器での実現が可能であるので、本明細書でいうところの"算出処理"や"演算処理"は、純粋な算術演算のみを意味するのではなく、ROM等の記録媒体に格納された演算結果を、被演算子の値に応じて読み出すという、記録媒体の読み出しをも包含する。
【０１５９】
(画像処理部１５のハードウェア構成)
ヒストグラム生成部２４は、以下のようなハードウェア構成を具備したヒストグラム生成回路として実現することができる。具体的にいうとヒストグラム生成部２４は、画素を構成する輝度Y,赤色差Cr,青色差Cbの階調ビット値と、指定色のルップアップテーブルに記載された輝度Y,赤色差Cr,青色差Cbの階調ビット値とを比較する比較回路、比較回路で一致が判定された場合、カウント値をインクリメントするカウンタ回路、画素の座標を、そのカウント値と共にメモリに書き込む書込回路とにより実現することができる。
【０１６０】
ヒストグラム平滑化部２６は、以下のようなハードウェア構成を具備したヒストグラム平滑化回路として実現することができる。具体的にいうと、隣接する座標の度数に、所定の重み係数を掛けて加算する乗加算器、この加算器の加算結果を前記複数画素の画素数で割る除算器で構成すればよい。上記平滑化は加重平均によりなされるから、汎用プロセッサの算術演算回路に以下の積和演算を行わせることでもヒストグラム平滑化部を実現することもできる。当該算術演算回路は、レジスタに格納された度数と、レジスタに格納された係数との乗算を乗算命令に従い行う。それと共に積和結果専用レジスタが保持している積和値を取り出して、乗算結果と取り出された積和値とを加算し、加算後、加算結果を積和結果専用レジスタに保持させる。算術演算回路が上記動作を繰り返すことにより、積和結果専用レジスタにはこれまでの積和値が蓄積される。乗算が所定回数行われると、積和結果専用レジスタの蓄積値を汎用レジスタに転送して、割り算を行い、その結果を平滑化後の度数とする。
【０１６１】
三次元座標生成部２８は、以下のようなハードウェア構成を具備した三次元座標生成回路として実現することができる。具体的にいうと、座標毎の度数の比較を行う比較回路、比較によって得られた最大の度数と、これに準じる度数とを格納するレジスタ回路、複数の奥行きを保持しているROM回路、度数の和に従い、ROM回路で保持されている複数の奥行き値の中から、適切な奥行き選択的に出力するセレクタ回路から構成すればよい。
【０１６２】
（捕捉対象の形状に応じた奥行き補正）
奥行き決定にあたっては、捕捉対象の形状に応じた奥行き補正を行うのが望ましい。図３２（ａ）は、球状体についての奥行き補正を示す。左側の撮影した撮影画像に対して指定色に基づく画素群抽出がなされことで、中央の画素群が得られる。そしてこの抽出画素群からX軸ヒストグラム、Y軸ヒストグラムを生成すればその最大度数から右側に示すような中央十字線の面積を導くことができる。この中央十字線を奥行き基準としたが、かかる球の表面にあたる部分を奥行きの基準にしてもよい。図３２（ｂ）はペン先に対する奥行き補正の過程を示す。左側は、スタイラスのペン先を示し、中央はこのペン先を撮影した撮影画像から抽出される抽出画像を示す。左側は、この抽出画素群から生成された平滑化ヒストグラムの最大度数から得られる中央十字線を示す。中央十字線に示すように、ペン先の画素群の形状は、おおよそ逆三角形となり、これを基に生成される中央十字線も、下辺が長いものとなる。この下辺がペン先にあたるから、スタイラスの奥行きであるZmの補正にかかる下辺の長さlen1を使用する。更に、中央十字線の下辺と、右辺または左辺とがなす角度θをもちいることが望ましい。中央十字線の下辺と、右辺または左辺とがなす角度θは、tanθ＝len２／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)の手順１.に採用することで、人体の一分を捕捉できるような高度が奥行き決定の実現が可能になる。
【０１６４】
（集積回路としての実施）
画像処理部１５は、表示装置に組込むべき半導体集積回路であるから、かかる画像処理部１５を高密度基板上にパッケージングすることでシステム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プロセッサでは、算術演算命令や論理演算命令、分岐命令等を組合せることで、フローチャートの各ステップを実現してもよい。オブジェクトプログラムが生成されるとプログラマはこれらに対してリンカを起動する。リンカはこれらのオブジェクトプログラムや、関連するライブラリプログラムをメモリ空間に割り当て、これらを１つに結合して、ロードモジュールを生成する。こうして生成されるロードモジュールは、コンピュータによる読み取りを前提にしたものであり、各フローチャートに示した処理手順や機能的な構成要素の処理手順を、コンピュータに実行させるものである。かかるコンピュータプログラムを非一時的なコンピュータ読取可能な記録媒体に記録してユーザに提供してよい。
【０１７０】
(ネットワークへの応用)
表示装置と、画像処理装置とはネットワークを介して接続されてもよい。この場合、画像処理装置は、ネットワークを介して表示装置のカメラによるフレーム画像を受け取り三次元座標生成を行う。そして生成した三次元座標を表示装置に出力して、表示装置で実行されているアプリケーションに、かかる三次元座標をトリガにした動作を行わせる。また画像処理装置により生成される三次元座標にはタイムコードが付加されてもよい。三次元座標に付加されるタイムコードは三次元座標生成の基礎となったフレーム画像の再生時刻を特定するものである。かかるタイムコードを参照することでアプリケーションは、古いフレーム画像から生成された三次元座標を無視したり、また、短い期間にバースト的に発生した複数の三次元座標の一部を間引いたりすることができる。
【産業上の利用可能性】
【０１７１】
本発明にかかる画像処理装置、集積回路、画像処理プログラムにおいては、少ない演算量で映像中から特定の物体の三次元位置情報を抽出することが可能であり、カメラ搭載機器をリモート制御するシステムへの展開が可能である。
【符号の説明】
【０１７２】
１２  撮影部
２４  ヒストグラム生成部
２６  ヒストグラム平滑化部
２８  三次元座標生成部
【図１】
2013140776.tif 000003
【図２】
2013140776.tif 000004
【図３】
2013140776.tif 000005
【図４】
2013140776.tif 000006
【図５】
2013140776.tif 000007
【図６】
2013140776.tif 000008
【図７】
2013140776.tif 000009
【図８】
2013140776.tif 000010
【図９】
2013140776.tif 000011
【図１０】
2013140776.tif 000012
【図１１】
2013140776.tif 000013
【図１２】
2013140776.tif 000014
【図１３】
2013140776.tif 000015
【図１４】
2013140776.tif 000016
【図１５】
2013140776.tif 000017
【図１６】
2013140776.tif 000018
【図１７】
2013140776.tif 000019
【図１８】
2013140776.tif 000020
【図１９】
2013140776.tif 000021
【図２０】
2013140776.tif 000022
【図２１】
2013140776.tif 000023
【図２２】
2013140776.tif 000024
【図２３】
2013140776.tif 000025
【図２４】
2013140776.tif 000026
【図２５】
2013140776.tif 000027
【図２６】
2013140776.tif 000028
【図２７】
2013140776.tif 000029
【図２８】
2013140776.tif 000030
【図２９】
2013140776.tif 000031
【図３０】
2013140776.tif 000032
【図３１】
2013140776.tif 000033
【図３２】
2013140776.tif 000034
【国際調査報告】
2013140776.tif 000035
2013140776.tif 000036
2013140776.tif 000037
2013140776.tif 000038