(57)【特許請求の範囲】
【請求項１】
ポインティングデバイスとしての所定の装置を所持しないユーザの画像を撮像する撮像手段と、
前記画像からトリガを検出する検出手段と、
前記トリガが検出された場合、前記画像の輝度成分を用いて、水平方向にも垂直方向にも輝度の勾配が大きい点を特徴点として抽出する抽出手段と、
前記抽出手段により抽出された前記特徴点の位置に基づいて、前記特徴点を表す特徴点ポインタと所定のユーザインターフェースを表示させる第１の表示制御手段と、
前記ユーザが掴んだ空間に対応する前記特徴点ポインタの位置を認識する認識手段と、
前記認識手段により認識された前記特徴点ポインタの位置に基づいて、前記特徴点ポインタを更新する第２の表示制御手段と、
前記特徴点ポインタの位置に基づいて、前記特徴点ポインタの位置または動きに対応するコマンドを発行する発行手段と
を備え、
前記発行手段は、前記特徴点ポインタの位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行する
画像処理装置。
【請求項２】
前記認識手段は、前記特徴点に対するオプティカルフローを計算し、そのオプティカルフローに基づいて、前記特徴点の位置を認識する
請求項１に記載の画像処理装置。
【請求項３】
前記抽出手段は、前記画像から複数の前記特徴点を抽出し、
前記発行手段は、前記特徴点ごとに、前記特徴点の位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドをそれぞれ発行する
請求項１に記載の画像処理装置。
【請求項４】
前記表示制御手段は、前記特徴点ごとに、前記特徴点の位置に基づいて、前記特徴点ポインタとともに所定のユーザインターフェースを表示させ、
前記発行手段は、前記特徴点ごとに、前記特徴点の位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行する
請求項３に記載の画像処理装置。
【請求項５】
前記表示制御手段は、前記特徴点ごとに、前記特徴点の位置に基づいて前記特徴点ポインタを表示させるとともに、複数の前記特徴点に共通の所定のユーザインターフェースを表示させ、
前記発行手段は、前記特徴点ごとに、前記特徴点の位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行する
請求項３に記載の画像処理装置。
【請求項６】
画像から特徴点を抽出する画像処理装置の画像処理方法において、
ポインティングデバイスとしての所定の装置を所持しないユーザの画像を撮像し、
その画像からトリガを検出し、
前記トリガが検出された場合、前記画像の輝度成分を用いて、水平方向にも垂直方向にも輝度の勾配が大きい点を前記特徴点として抽出し、
抽出された前記特徴点の位置に基づいて、前記特徴点を表す特徴点ポインタと所定のユーザインターフェースを表示させ、
前記ユーザが掴んだ空間に対応する前記特徴点ポインタの位置を認識し、
認識された前記特徴点ポインタの位置に基づいて、前記特徴点ポインタを更新し、
前記特徴点ポインタの位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行するか、または、前記特徴点ポインタの動きに対応するコマンドを発行する
ステップを含む画像処理方法。
【請求項７】
画像から特徴点を抽出する画像処理を、コンピュータに行わせるプログラムにおいて、
ポインティングデバイスとしての所定の装置を所持しないユーザの画像を撮像し、
その画像からトリガを検出し、
前記トリガが検出された場合、前記画像の輝度成分を用いて、水平方向にも垂直方向にも輝度の勾配が大きい点を前記特徴点として抽出し、
抽出された前記特徴点の位置に基づいて、前記特徴点を表す特徴点ポインタと所定のユーザインターフェースを表示させ、
前記ユーザが掴んだ空間に対応する前記特徴点ポインタの位置を認識し、
認識された前記特徴点ポインタの位置に基づいて、前記特徴点ポインタを更新し、
前記特徴点ポインタの位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行するか、または、前記特徴点ポインタの動きに対応するコマンドを発行する
ステップを含む画像処理をコンピュータに行わせるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法、並びにプログラムに関し、特に、ポインティングデバイスにおいて、少ない処理量で、ロバスト性の高い認識と高精度の位置検出を行うことができるようにした画像処理装置および画像処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、カメラでポインティングデバイスとしての手のジェスチャを認識し、それを機器制御と結びつけたインターフェースが複数提案されている。
【０００３】
例えば、CCD（Charge Coupled Device）カメラから入力された撮像画像から、ユーザの手に相当する部分を抽出し、手の形状や位置に基づいて制御を行うインターフェースがある(例えば、特許文献１参照)。
【０００４】
【特許文献１】特開平８−４４４９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、撮像画像からユーザの手に相当する部分を抽出する場合、例えば撮像画像から全ての輪郭を抽出し、その輪郭の形状から手に相当する部分をマッチングなどによって選択する必要があるため、処理量が多く、処理時間は比較的長くなってしまう。また、手の形状は多様であるため、輪郭の形状から手を認識する場合、手の認識に対するロバスト性が低く、手の位置検出の精度も低い。
【０００６】
本発明は、このような状況に鑑みてなされたものであり、ポインティングデバイスにおいて、少ない処理量で、ロバスト性の高い認識と高精度の位置検出を行うことができるようにするものである。
【課題を解決するための手段】
【０００７】
本発明の一側面の画像処理装置は、ポインティングデバイスとしての所定の装置を所持しないユーザの画像を撮像する撮像手段と、前記画像からトリガを検出する検出手段と、前記トリガが検出された場合、前記画像の輝度成分を用いて、水平方向にも垂直方向にも輝度の勾配が大きい点を特徴点として抽出する抽出手段と、前記抽出手段により抽出された前記特徴点の位置に基づいて、前記特徴点を表す特徴点ポインタと所定のユーザインターフェースを表示させる第１の表示制御手段と、前記ユーザが掴んだ空間に対応する前記特徴点ポインタの位置を認識する認識手段と、前記認識手段により認識された前記特徴点ポインタの位置に基づいて、前記特徴点ポインタを更新する第２の表示制御手段と、前記特徴点ポインタの位置に基づいて、前記特徴点ポインタの位置または動きに対応するコマンドを発行する発行手段とを備え、前記発行手段は、前記特徴点ポインタの位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行する。
【０００８】
本発明の一側面の画像処理装置においては、前記認識手段は、前記特徴点に対するオプティカルフローを計算し、そのオプティカルフローに基づいて、前記特徴点の位置を認識することができる。
【０００９】
本発明の一側面の画像処理装置においては、前記抽出手段は、前記画像から複数の前記特徴点を抽出し、前記発行手段は、前記特徴点ごとに、前記特徴点の位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドをそれぞれ発行することができる。
【００１０】
本発明の一側面の画像処理装置においては、前記表示制御手段は、前記特徴点ごとに、前記特徴点の位置に基づいて、前記特徴点ポインタとともに所定のユーザインターフェースを表示させ、前記発行手段は、前記特徴点ごとに、前記特徴点の位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行することができる。
【００１１】
本発明の一側面の画像処理装置においては、前記表示制御手段は、前記特徴点ごとに、前記特徴点の位置に基づいて前記特徴点ポインタを表示させるとともに、複数の前記特徴点に共通の所定のユーザインターフェースを表示させ、前記発行手段は、前記特徴点ごとに、前記特徴点の位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行することができる。
【００１３】
本発明の一側面の画像処理方法は、画像から特徴点を抽出する画像処理装置の画像処理方法において、ポインティングデバイスとしての所定の装置を所持しないユーザの画像を撮像し、その画像からトリガを検出し、前記トリガが検出された場合、前記画像の輝度成分を用いて、水平方向にも垂直方向にも輝度の勾配が大きい点を前記特徴点として抽出し、抽出された前記特徴点の位置に基づいて、前記特徴点を表す特徴点ポインタと所定のユーザインターフェースを表示させ、前記ユーザが掴んだ空間に対応する前記特徴点ポインタの位置を認識し、認識された前記特徴点ポインタの位置に基づいて、前記特徴点ポインタを更新し、前記特徴点ポインタの位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行するか、または、前記特徴点ポインタの動きに対応するコマンドを発行するステップを含む。
【００１４】
本発明の一側面のプログラムは、画像から特徴点を抽出する画像処理を、コンピュータに行わせるプログラムにおいて、ポインティングデバイスとしての所定の装置を所持しないユーザの画像を撮像し、その画像からトリガを検出し、前記トリガが検出された場合、前記画像の輝度成分を用いて、水平方向にも垂直方向にも輝度の勾配が大きい点を前記特徴点として抽出し、抽出された前記特徴点の位置に基づいて、前記特徴点を表す特徴点ポインタと所定のユーザインターフェースを表示させ、前記ユーザが掴んだ空間に対応する前記特徴点ポインタの位置を認識し、認識された前記特徴点ポインタの位置に基づいて、前記特徴点ポインタを更新し、前記特徴点ポインタの位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドを発行するか、または、前記特徴点ポインタの動きに対応するコマンドを発行するステップを含む画像処理をコンピュータに行わせる。
【００１５】
本発明の一側面においては、ポインティングデバイスとしての所定の装置を所持しないユーザの画像が撮像され、その画像からトリガが検出され、トリガが検出された場合、画像の輝度成分を用いて、水平方向にも垂直方向にも輝度の勾配が大きい点が特徴点として抽出され、特徴点の位置に基づいて、特徴点を表す特徴点ポインタと所定のユーザインターフェースが表示され、ユーザが掴んだ空間に対応する特徴点ポインタの位置が認識され、特徴点ポインタの位置に基づいて、特徴点ポインタが更新され、特徴点ポインタの位置に基づいて、その位置に表示されているユーザインターフェースに対応するコマンドが発行されるか、または、特徴点ポインタの動きに対応するコマンドが発行される。
【発明の効果】
【００１６】
以上のように、本発明の一側面によれば、ポインティングデバイスにおいて、少ない処理量で、ロバスト性の高い認識と高精度の位置検出を行うことができる。
【発明を実施するための最良の形態】
【００１７】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２０】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
【００２１】
図１は、本発明を適用した画像処理装置の第１の実施の形態の概要を示している。
【００２２】
図１の画像処理装置１１に設けられたカメラ１２は、ユーザを撮像する。画像処理装置１１は、その結果得られるユーザの撮像画像を解析し、その解析結果に対応する画像などを、画像処理装置１１に設けられたディスプレイなどの表示部１３に表示させる。
【００２３】
図１の例では、ユーザは、１チャンネル(ch)のテレビジョン番組を視聴している。ここで、ユーザは、視聴対象とするテレビジョン番組のチャンネルを変更する場合、まず最初に、カメラ１２に向かって手を振る。
【００２４】
このとき、画像処理装置１１は、図１に示すように、１チャンネルのテレビジョン番組の画像上に、撮像画像の特徴点を表す特徴点ポインタ１４と、各チャンネルを選択するときに操作されるUI（ユーザインターフェース）１５−１乃至１５−７とを表示部１３に表示させるとともに、左右の画像を反転させる鏡面処理後の撮像画像を半透明で表示部１３に表示させる。なお、UI１５−１乃至１５−７は、最初の特徴点ポインタ１４の位置を囲む所定の円の円周上に並べられ、UI１５−１乃至１５−７には、選択するチャンネルの番号が記載される。
【００２５】
次に、ユーザは、表示部１３に半透明で表示されている撮像画像を見ながら、特徴点ポインタ１４に対応する現実世界の空間を指で左右から包み込み、その空間を手の中に収める動作を行う。以下では、この動作を「掴む」という。ユーザは、特徴点ポインタ１４を掴んだ状態で、特徴点ポインタ１４が、視聴対象としたいテレビジョン番組のチャンネルの番号が記載されたUI１５−１乃至１５−７のいずれかに重なるように移動させる。
【００２６】
このとき、画像処理装置１１は、カメラ１２により撮像された撮像画像から、ユーザにより掴まれた特徴点ポインタ１４が表す特徴点の位置を検出し、その特徴点の位置に配置されているUI１５−１乃至１５−７に対応するコマンドを発行する。
【００２７】
例えば、図１において、ユーザが、表示部１３に表示された、チャンネルの番号として「６」が記載されたUI１５−４に、特徴点ポインタ１４が重なるように、特徴点ポインタ１４を指で掴んだ状態の手を移動させると、６チャンネルのテレビジョン番組の画像を表示させるためのコマンドが発行される。その結果、ユーザは、６チャンネルのテレビジョン番組を視聴することができる。
【００２８】
なお、以下では、UI１５−１乃至１５−７を特に区別する必要がない場合、それらをまとめてUI１５という。
【００２９】
図２は、図１の画像処理装置１１の構成例を示すブロック図である。
【００３０】
図２の画像処理装置１１は、カメラ１２、表示部１３、画像取得部３１、フレームバッファ３２、トリガ検出部３３、特徴点抽出部３４、計算部３５、UI描画部３６、コマンド判定部３７、コマンド発行部３８、および合成部３９により構成される。
【００３１】
カメラ１２は、例えばCCD，CMOS（Coplementary Metal-Oxide Semiconductor）センサなどの光学的な画像を電気信号に変換する光電変換素子を有するビデオカメラなどからなり、ユーザを撮像する。カメラ１２は、その結果得られるフレーム単位の撮像画像を、画像取得部３１に供給する。
【００３２】
画像取得部３１は、カメラ１２から供給される撮像画像を、フレームバッファ３２と合成部３９に供給する。フレームバッファ３２は、画像取得部３１から供給される撮像画像を、所定のフレーム数分だけフレーム単位で蓄積する。
【００３３】
トリガ検出部３３は、フレームバッファ３２から撮像画像を読み出す。トリガ検出部３３は、その撮像画像から、ユーザがカメラ１２に向かって手を振ったことをトリガとして検出する。この検出方法としては、時間方向の周波数を解析する方法やフレーム間差分で動領域の動きを解析する方法などがある。トリガ検出部３３は、撮像画像中のユーザの手振りが検出された領域を表す領域情報を、特徴点抽出部３４に供給する。
【００３４】
特徴点抽出部３４は、フレームバッファ３２から撮像画像を読み出す。特徴点抽出部３４は、その撮像画像の、トリガ検出部３３から供給される領域情報が表す領域における輝度成分を用いて、１つのコーナ点を特徴点として抽出する。なお、コーナ点とは、Ｘ方向（水平方向）にもＹ方向（垂直方向）にも輝度の勾配が大きい点のことである。
【００３５】
コーナ点としては、Harris Corner、スーザンオペレータ（SUSAN Operator）を用いて抽出されるコーナ点などがある。スーザンオペレータ（SUSAN Operator）を用いてコーナ点を抽出する手法については、例えばホームページ(http://www.oita-ri.go.jp/report/2002/2002_12.pdf)に掲載された論文「SUSANオペレータを用いた画像特徴点の抽出」に記載されている。
【００３６】
以上のように、特徴点抽出部３４は、撮像画像の輝度成分を用いて特徴点を抽出するので、特徴点の抽出において照明環境に対するロバスト性が高い。
【００３７】
特徴点抽出部３４は、抽出した特徴点の位置を表す抽出位置情報を計算部３５とUI描画部３６に供給する。
【００３８】
計算部３５は、フレームバッファ３２から、連続する２フレームの撮像画像を読み出す。計算部３５は、読み出した２フレームの撮像画像と、特徴点抽出部３４から供給される抽出位置情報または特徴点の現在の位置を表す特徴点情報とに基づいて、特徴点に対するオプティカルフローを、フレームごとに計算する。
【００３９】
なお、オプティカルフローの計算には、例えば、ブロックマッチングや勾配法などが用いられる。また、上述したように、コーナ点は、Ｘ方向にもＹ方向にも輝度の勾配が大きい点であるので、オプティカルフローの計算精度は高い。
【００４０】
さらに、計算部３５は、オプティカルフローに基づいて、特徴点の現在の位置を認識し、特徴点情報を更新する。計算部３５は、特徴点情報をUI描画部３６とコマンド判定部３７に供給する。
【００４１】
UI描画部３６は、特徴点ポインタとUIの画像を予め記憶している。UI描画部３６は、特徴点抽出部３４から供給される抽出位置情報に基づいて、特徴点の位置の周囲にUIが配置されるように、UIの配置を決定する。UI描画部３６は、そのUIの配置を表すUI情報と、予め記憶しているUIの画像を合成部３９に供給する。また、UI描画部３６は、抽出位置情報または計算部３５から供給される特徴点情報と、予め記憶している特徴点ポインタの画像とを、合成部３９に供給する。さらに、UI描画部３６は、UI情報をコマンド判定部３７に供給する。
【００４２】
コマンド判定部３７は、計算部３５から供給される特徴点情報、および、UI描画部３６から供給されるUI情報に基づいて、特徴点の位置に表示されているUIを検出する。そして、コマンド判定部３７は、そのUIが操作されたというイベントと、そのUIを特定する情報である特定情報をコマンド発行部３８に供給する。
【００４３】
また、コマンド判定部３７は、特徴点の動きとイベントまたはコマンドを対応付けたテーブルを予め記憶している。コマンド判定部３７は、計算部３５から供給される特徴点情報に基づいて特徴点の位置の軌跡を認識し、その軌跡が表す動きに対応するイベントまたはコマンドを、予め記憶しているテーブルから読み出す。コマンド判定部３７は、読み出したイベントまたはコマンドをコマンド発行部３８に供給する。
【００４４】
コマンド発行部３８は、特定情報と、その特定情報により特定されるUIに対応するコマンドを対応付けたテーブルを予め記憶している。コマンド発行部３８は、コマンド判定部３７から供給されるイベントと特定情報に基づいて、その特定情報により特定されるUIに対応するコマンドを、予め記憶しているテーブルから読み出し、発行する。また、コマンド発行部３８は、コマンド判定部３７から供給されるイベントまたはコマンドを、コマンドとして発行する。
【００４５】
合成部３９は、チューナやネットワークを介して接続された装置などの外部の装置(図示せず)から、視聴対象のコンテンツの画像を取得する。そして、合成部３９は、視聴対象の画像を、視聴対象の画像が表示される画面(以下、視聴対象画面という)の画像として、そのまま表示部１３に供給して表示させる。
【００４６】
また、合成部３９は、UI描画部３６から供給されるUI情報およびUIの画像、並びに、抽出位置情報または特徴点情報、および特徴点ポインタの画像に基づいて、視聴対象画面の画像にUIの画像と特徴点ポインタの画像を合成し、その結果得られる合成画像を表示部１３に供給して表示させる。
【００４７】
さらに、合成部３９は、画像取得部３１から供給される撮像画像に対して鏡面処理を行う。合成部３９は、UIの画像と特徴点ポインタが合成された視聴対象画面上に、鏡面処理後の撮像画像が半透明で表示されるように、その合成された視聴対象画面の画像に、鏡面処理後の撮像画像をさらに合成し、その結果得られる合成画像を表示部１３に供給して表示させる。
【００４８】
次に、図３を参照して、特徴点ポインタ１４を掴むという動作について説明する。
【００４９】
図３において、空間５１は、図１の表示部１３に表示されている特徴点ポインタ１４の位置に対応する空間である。図３に示すように、ユーザが、その空間５１を指で左右から包み込み、空間５１を手の中に収めることにより、特徴点ポインタ１４を掴むと、特徴点は、特徴点ポインタ１４を掴んだ手の画像中に存在するようになる。
【００５０】
従って、ユーザが特徴点ポインタ１４を掴んだ状態で手を動かすと、その手の動きを表すオプティカルフローが、特徴点に対するオプティカルフローとして計算される。その結果、ユーザは、特徴点ポインタ１４を掴んだ手をポインティングデバイスとして使用することができる。
【００５１】
以上のように、画像処理装置１１は、ユーザの手を形状などから認識して手の動きを検出するのではなく、ユーザの手により掴まれた特徴点ポインタ１４が表す特徴点であって、ユーザの手と一体化して移動する特徴点を認識して、その特徴点の動きを手の動きとして検出する。従って、ユーザの手を形状などから認識して手の動きを検出する場合に比べて、少ない処理量で、ポインティングデバイスの認識のロバスト性と位置検出の精度を高めることができる。
【００５２】
また、画像処理装置１１では、ユーザが特徴点ポインタ１４を掴むことにより、手の動きを検出することができるので、ユーザが手を動かすだけで手の動きが検出される検出方法を、全自動のハンドジェスチャの検出方法とすると、画像処理装置１１における検出方法は、半自動のハンドジェスチャの検出方法であるといえる。
【００５３】
次に、図４乃至図１１を参照して、画像処理装置１１におけるポインティングデバイスの使用について説明する。
【００５４】
まず最初に、ユーザは、図４に示すように、例えば１チャンネルのテレビジョン番組の視聴中に、カメラ１２に向かって手を振る。これにより、画像処理装置１１では、領域６１において、ユーザによる手振りがトリガとして検出され、領域６１において特徴点が抽出される。
【００５５】
そして、図５に示すように、表示部１３において、鏡面処理後の撮像画像が、１チャンネルのテレビジョン番組の画像が表示された視聴対象画面上に、半透明で表示されるとともに、特徴点に基づいて特徴点ポインタ１４とUI１５が表示される。これにより、ユーザは、視聴対象である１チャンネルのテレビジョン番組の画像、カメラ１２に対峙しているユーザ自身の画像、特徴点ポインタ、およびUI１５を同時に見ることができる。
【００５６】
ここで、ユーザは、図６に示すように、表示部１３に表示されている特徴点ポインタ１４を見ながら、その特徴点ポインタ１４に対応する空間を右手の指で左右から包み込み、図７に示すように、その空間を右手の中に収める。即ち、ユーザは、特徴点ポインタ１４を掴む。
【００５７】
その後、ユーザは、表示部１３に表示されている特徴点ポインタ１４とUI１５を見ながら、例えば図８に示すように、表示部１３の視聴対象画面上で、特徴点ポインタ１４が、UI１５−２に重なるように、特徴点ポインタ１４を掴んだ右手を、カメラ１２に向かって左方向に移動させる。
【００５８】
これにより、UI１５−２に対応するコマンドとして、３チャンネルのテレビジョン番組を視聴対象とするコマンドが発行される。その結果、図８に示すように、表示部１３に表示される視聴対象の画像は、１チャンネルのテレビジョン番組の画像から、３チャンネルのテレビジョン番組の画像に変更される。
【００５９】
次に、図９に示すように、ユーザが、特徴点ポインタ１４を掴んだ右手をカメラ１２に向かって右方向に移動させ、図１０に示すように、特徴点ポインタ１４が、UI１５が並べられた円外に移動するように、特徴点ポインタ１４を掴んだ右手をカメラ１２に向かって下方向に移動させると、インターフェースに関する表示を終了するコマンドが発行される。
【００６０】
その結果、図１１に示すように、表示部１３から、撮像画像、特徴点ポインタ１４、およびUI１５が削除される。即ち、表示部１３の視聴対象画面には、視聴対象である３チャンネルのテレビジョン番組の画像だけが表示される。
【００６１】
なお、ユーザが、インターフェースに関する表示を終了させるのではなく、再度、視聴対象とするテレビジョン番組のチャンネルを変更したい場合、ユーザは、図９に示したように、特徴点ポインタ１４を掴んだ右手をカメラ１２に向かって右方向に移動させて、特徴点ポインタ１４をUI１５が並べられた円内に戻し、その後所望のチャンネルの数字が記載されたUI１５に、特徴点ポインタ１４が重なるように、特徴点ポインタ１４を掴んだ右手を移動させる。その結果、表示部１３には、ユーザの所望のチャンネルのテレビジョン番組の画像が表示され、その画像上には撮像画像、特徴点ポインタ１４、およびUI１５が表示される。
【００６２】
また、図４乃至図１１では、視聴対象がテレビジョン番組であり、視聴対象とするテレビジョン番組のチャンネルを変更するときのポインティングデバイスの使用について説明したが、視聴対象はテレビジョン番組に限定されない。
【００６３】
例えば、図１２乃至図２０に示すように、視聴対象はWebページであってもよい。この場合、まず最初に、ユーザは、図１２に示すように、例えばリンク８２が張られたWebページ（WebPage1）の視聴中に、カメラ１２に向かって手を振る。これにより、画像処理装置１１では、領域８１において、ユーザによる手振りがトリガとして検出され、領域８１において特徴点が抽出される。
【００６４】
そして、図１３に示すように、表示部１３において、鏡面処理後の撮像画像が、リンク８２が張られたWebページ上に半透明で表示されるとともに、特徴点に基づいて特徴点ポインタ８３とUI９１乃至９３が表示される。UI９１は、前のWebページを視聴対象とするときに操作され、UI９２は、次のWebページを視聴対象とするときに操作される。また、UI９３は、インターフェースに関する表示を終了するときに操作される。
【００６５】
ここで、ユーザは、図１４に示すように、表示部１３に表示されている特徴点ポインタ８３を見ながら、その特徴点ポインタ８３に対応する空間を右手の指で左右から包み込み、図１５に示すように、その空間を右手の中に収める。即ち、ユーザは、特徴点ポインタ８３を掴む。
【００６６】
その後、図１６に示すように、ユーザは、特徴点ポインタ８３を掴んだ右手を、カメラ１２に向かって時計回りに２回転させ、その後２秒以上静止する。この動作(以下、２回転静止動作という)は、マウスのクリックに相当する。画像処理装置１１は、２回転静止動作に対応するコマンドとして、特徴点ポインタ８３の色を変更するコマンドを発行する。
【００６７】
そして、ユーザは、表示部１３に表示されているリンク８２、色が変更された特徴点ポインタ８３、およびUI９１乃至９３を見ながら、例えば図１７に示すように、表示部１３の視聴対象画面上で、色が変更された特徴点ポインタ８３が、リンク８２に重なるように、特徴点ポインタ８３を掴んだ右手を、カメラ１２に向かって右方向に移動させ、数秒間静止する。
【００６８】
これにより、画像処理装置１１では、リンク８２上でのマウスのクリックに相当するイベントがコマンドとして発行されるとともに、特徴点ポインタ８３の色を元に戻すコマンドが発行される。その結果、図１８に示すように、表示部１３に表示される視聴対象の画像は、リンク８２が張られたWebページ（WebPage1）から、リンク８２に対応するWebページ（WebPage2）に変更され、特徴点ポインタ８３の色は元に戻る。
【００６９】
次に、図１９に示すように、ユーザが、表示部１３の視聴対象画面上で、特徴点ポインタ８３がUI９３に重なるように、特徴点ポインタ８３を掴んだ右手を、カメラ１２に向かって下方向に移動させると、インターフェースに関する表示を終了するコマンドが発行される。
【００７０】
その結果、図２０に示すように、表示部１３から、撮像画像、特徴点ポインタ８３、およびUI９１乃至９３が削除される。即ち、表示部１３の視聴対象画面には、視聴対象であるWebページ（WebPage2）だけが表示される。
【００７１】
以上のように、画像処理装置１１では、特徴点ポインタ８３を用いてフリーカーソルポインティングと、マウスのクリックに相当するイベントの発行が可能である。従って、画像処理装置１１は、特徴点の位置を、マウスの位置として認識することにより、Webブラウザ用のUI９１乃至９３を表示させずに、既存のブラウザを制御してWebページを表示させることもできる。
【００７２】
次に、図２１を参照して、図２の画像処理装置１１における画像処理について説明する。この画像処理は、例えば、ユーザがリモートコントローラなどの操作部（図示せず）を操作することにより、視聴の開始が指令されたとき、開始される。
【００７３】
ステップＳ１０において、合成部３９は、視聴対象の画像の表示部１３への表示を開始させる。具体的には、合成部３９は、図示せぬ外部の装置からの視聴対象の画像の取得を開始し、その視聴対象の画像の表示部１３への供給を開始する。
【００７４】
ステップＳ１１において、カメラ１２は、フレーム単位の撮像画像の取得を開始する。この撮像画像は、フレームバッファ３２に供給されて記憶される。また、撮像画像は、合成部３９にも供給される。
【００７５】
ステップＳ１２において、トリガ検出部３３は、フレームバッファ３２に記憶されている撮像画像から、ユーザがカメラ１２に向かって手を振ったことをトリガとして検出したかを判定する。ステップＳ１２でトリガを検出したと判定されない場合、処理はステップＳ２２に進む。
【００７６】
一方、ステップＳ１２でトリガを検出したと判定された場合、トリガ検出部３３は、領域情報を特徴点抽出部３４に供給する。そして、ステップＳ１３において、特徴点抽出部３４は、フレームバッファ３２に記憶されている撮像画像の、トリガ検出部３３から供給される領域情報が表す領域における輝度成分を用いて、１つのコーナ点を特徴点として抽出する。
【００７７】
例えば、図４の領域６１の領域情報が、トリガ検出部３３から特徴点抽出部３４に供給された場合、特徴点抽出部３４は、その領域６１における輝度成分を用いて、１つの特徴点を抽出する。特徴点抽出部３４は、抽出した特徴点の位置を表す抽出位置情報を計算部３５とUI描画部３６に供給する。
【００７８】
ステップＳ１４において、UI描画部３６は、特徴点抽出部３４から供給される抽出位置情報に基づいて、特徴点の位置の周囲にUIが配置されるように、UIの配置を決定する。UI描画部３６は、そのUIのUI情報と、予め記憶しているUIの画像を合成部３９に供給する。また、UI描画部３６は、抽出位置情報または計算部３５から供給される特徴点情報と、予め記憶している特徴点ポインタの画像とを、合成部３９に供給する。さらに、UI描画部３６は、UI情報をコマンド判定部３７に供給する。
【００７９】
ステップＳ１５において、合成部３９は、UI描画部３６から供給されるUI情報およびUIの画像、並びに、抽出位置情報または特徴点情報、および特徴点ポインタの画像に基づく、１つの特徴点ポインタとUIの表示を開始させる。
【００８０】
具体的には、合成部３９は、視聴対象の画像の表示部１３への供給を終了する。そして、合成部３９は、UI情報およびUIの画像、並びに、抽出位置情報または特徴点情報、および特徴点ポインタの画像に基づいて、視聴対象画面の画像に１つの特徴点ポインタの画像とUIの画像を合成し、その結果得られる合成画像を表示部１３に供給することを開始する。これにより、例えば、図５の特徴点ポインタ１４とUI１５が、表示部１３の視聴対象画面に表示される。
【００８１】
ステップＳ１６において、合成部３９は、画像取得部３１から供給される撮像画像を用いた半透明の撮像画像の表示を開始させる。
【００８２】
具体的には、合成部３９は、撮像画像に対する鏡面処理を開始し、１つの特徴点ポインタの画像とUIの画像が視聴対象画面の画像に合成された合成画像の表示部１３への供給を終了する。また、合成部３９は、１つの特徴点ポインタの画像とUIの画像が合成された視聴対象画面上に、鏡面処理後の撮像画像が半透明で表示されるように、ステップＳ１５で開始された合成の結果得られる合成画像と、鏡面処理後の撮像画像をさらに合成し、その結果得られる合成画像を表示部１３に供給することを開始する。これにより、例えば、図５に示したように、撮像画像が、左右反転されて半透明で表示部１３の視聴対象画面に表示される。
【００８３】
ステップＳ１７において、計算部３５は、フレームバッファ３２に記憶されている連続する２フレームの撮像画像と、特徴点抽出部３４から供給される抽出位置情報または特徴点情報とに基づいて、１つの特徴点に対するオプティカルフローを計算する。そして、計算部３５は、オプティカルフローに基づいて、特徴点の現在の位置を認識し、特徴点情報を更新する。計算部３５は、特徴点情報をUI描画部３６とコマンド判定部３７に供給する。
【００８４】
ステップＳ１８において、コマンド判定部３７は、計算部３５から供給される特徴点情報、および、UI描画部３６から供給されるUI情報に基づいて、コマンド発行部３８によりコマンドを発行させるかを判定する。
【００８５】
具体的には、例えば、コマンド判定部３７は、特徴点情報とUI情報に基づいて、特徴点の位置に表示されているUIがあるかを判定する。そして、特徴点の位置に表示されているUIがあると判定された場合、コマンド判定部３７は、コマンドを発行させると判定し、UIがあると判定されない場合、コマンドを発行させると判定しない。
【００８６】
また、例えば、コマンド判定部３７は、特徴点情報に基づいて、図１６に示したように、特徴点ポインタ８３を掴んだ右手が、２回転静止動作したかを判定する。そして、２回転静止動作したと判定された場合、コマンド判定部３７は、コマンドを発行させると判定し、２回転静止動作したと判定されない場合、コマンドを発行させると判定しない。
【００８７】
ステップＳ１８でコマンドを発行させると判定された場合、コマンド判定部３７は、発行させるコマンドに対応するイベントと特定情報、もしくは、コマンドとして発行させるイベントまたはコマンドをコマンド発行部３８に供給する。そして、ステップＳ１９において、コマンド発行部３８は、コマンド判定部３７から供給されるイベントと特定情報に基づくコマンド、または、コマンド判定部３７から供給されるイベントまたはコマンドであるコマンドを発行する。
【００８８】
例えば、図８に示したように特徴点ポインタ１４がUI１５を操作したというイベントと、操作されたUI１５−２を特定する特定情報が、コマンド判定部３７から供給される場合、コマンド発行部３８は、そのイベントと特定情報に基づいて、３チャンネルのテレビジョン番組を視聴対象とするコマンドを発行する。
【００８９】
また、図１６に示したように２回転静止動作が行われた後に、図１７に示したようにリンク８２に特徴点ポインタ８３が重ねられ、リンク８２上でのマウスのクリックに相当するイベントと、特徴点ポインタ８３の色を元に戻すコマンドが、コマンド判定部３７に供給される場合、コマンド発行部３８は、そのイベントとコマンドをコマンドとして発行する。ステップＳ１９の処理後、処理はステップＳ２０に進む。
【００９０】
一方、ステップＳ１８でコマンドを発行させると判定されない場合、処理はステップＳ１９をスキップしてステップＳ２０に進む。ステップＳ２０において、合成部３９は、インターフェースに関する画像の表示を終了するかを判定する。具体的には、合成部３９は、コマンド発行部３８から、インターフェースに関する画像の表示を終了するコマンドが供給されたかを判定する。
【００９１】
ステップＳ２０で、インターフェースに関する画像の表示を終了すると判定されない場合、処理はステップＳ１７に戻り、フレームバッファ３２に記憶されている、前回用いた後ろの１フレームの撮像画像、および、それに連続する１フレームの撮像画像と、前回更新された特徴点情報とに基づいて、特徴点に対するオプティカルフローが計算され、以降の処理が行われる。
【００９２】
また、ステップＳ２０で、インターフェースに関する画像の表示を終了すると判定された場合、ステップＳ２１において、合成部３９は、特徴点ポインタ、UI、および撮像画像の表示を終了させる。具体的には、合成部３９は、ステップＳ１６で開始された合成画像の表示部１３への供給を終了し、視聴対象の画像の表示部１３への供給を開始する。その結果、例えば図１１に示したように、視聴対象である３チャンネルのテレビジョン番組の画像のみが表示部１３に表示される。そして、処理はステップＳ２２に進む。
【００９３】
ステップＳ２２において、合成部３９は、ユーザによる図示せぬ操作部の操作に応じて、視聴を終了するかを判定する。ステップＳ２２で視聴を終了すると判定されない場合、処理はステップＳ１２に戻り、視聴を終了すると判定されるまで、ステップＳ１２乃至Ｓ２２の処理を繰り返す。
【００９４】
一方、ステップＳ２２で視聴を終了すると判定された場合、ステップＳ２３において、画像取得部３１は、撮像画像の取得を終了する。ステップＳ２４において、合成部３９は、視聴対象の画像の表示を終了させる。具体的には、合成部３９は、図示せぬ他の装置からの視聴対象の画像の取得を終了する。そして、処理は終了する。
【００９５】
なお、上述した説明では、１人のユーザが、画像処理装置１１に対して操作を行ったが、複数のユーザが操作を行うようにすることもできる。
【００９６】
図２２は、２人のユーザが操作を行う場合の画像処理装置の構成例を示している。
【００９７】
図２２の画像処理装置１１１は、カメラ１２、表示部１３、画像取得部３１、フレームバッファ３２、トリガ検出部１２１、特徴点抽出部１２２、計算部１２３、UI描画部１２４、コマンド判定部１２５、コマンド発行部１２６、および合成部１２７により構成される。なお、図２２において、図２と同一のものには同一のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【００９８】
画像処理装置１１１のトリガ検出部１２１は、図２のトリガ検出部３３と同様に、フレームバッファ３２から撮像画像を読み出す。トリガ検出部１２１は、その撮像画像から、１人のユーザがカメラ１２に向かって手を振ったことを、１人目のトリガとして検出する。そして、トリガ検出部１２１は、１人目のトリガに対応する領域情報を、特徴点抽出部１２２に供給する。
【００９９】
また、トリガ検出部１２１は、１人目のトリガの検出後所定の時間内に、さらに１人のユーザがカメラ１２に向かって手を振ったことを２人目のトリガとして検出する。そして、トリガ検出部１２１は、２人目のトリガに対応する領域情報を、特徴点抽出部１２２に供給する。
【０１００】
特徴点抽出部１２２は、図２の特徴点抽出部３４と同様に、フレームバッファ３２から撮像画像を読み出す。特徴点抽出部１２２は、その撮像画像の、トリガ検出部１２１から供給される１人目のトリガに対応する領域情報が表す領域における輝度成分を用いて、１つのコーナ点を１人目の特徴点として抽出し、その特徴点の抽出位置情報を計算部１２３とUI描画部１２４に供給する。
【０１０１】
また、特徴点抽出部１２２は、１人目の場合と同様に、撮像画像の２人目のトリガに対応する領域情報が表す領域における輝度成分を用いて、２人目の特徴点を抽出し、その特徴点の抽出位置情報を計算部１２３とUI描画部１２４に供給する。
【０１０２】
計算部１２３は、図２の計算部３５と同様に、フレームバッファ３２から、連続する２フレームの撮像画像を読み出す。計算部１２３は、読み出した２フレームの撮像画像と、特徴点抽出部１２２から供給される１人目の特徴点の抽出位置情報または特徴点情報とに基づいて、１人目の特徴点に対するオプティカルフローを、フレームごとに計算する。そして、計算部１２３は、そのオプティカルフローに基づいて、１人目の特徴点の現在の位置を認識し、１人目の特徴点の特徴点情報を更新する。
【０１０３】
また、計算部１２３は、１人目の場合と同様に、２フレームの撮像画像と、２人目の特徴点の抽出位置情報または特徴点情報とに基づいて、オプティカルフローを計算し、２人目の特徴点の特徴点情報を更新する。計算部１２３は、１人目の特徴点と２人目の特徴点の特徴点情報をUI描画部１２４とコマンド判定部１２５に供給する。
【０１０４】
UI描画部１２４は、１人目と２人目の特徴点ポインタとUIの画像を予め記憶している。UI描画部１２４は、特徴点抽出部１２２から供給される１人目の特徴点の抽出位置情報に基づいて、１人目の特徴点の位置の周囲に、1人目のUIが配置されるように、１人目のUI配置を決定する。UI描画部１２４は、その１人目のUIのUI情報と、予め記憶している１人目のUIの画像を、合成部１２７に供給する。
【０１０５】
また、UI描画部１２４は、１人目の特徴点の抽出位置情報または計算部１２３から供給される１人目の特徴点の特徴点情報と、予め記憶している１人目の特徴点の特徴点ポインタの画像とを、合成部１２７に供給する。UI描画部１２４は、１人目のUIのUI情報をコマンド判定部１２５に供給する。
【０１０６】
さらに、UI描画部１２４は、１人目の場合と同様に、２人目のUIのUI情報および画像、並びに、２人目の特徴点の抽出位置情報または特徴点情報、および、特徴点ポインタの画像を、合成部１２７に供給する。また、UI描画部１２４は、１人目の場合と同様に、２人目のUIのUI情報をコマンド判定部１２５に供給する。
【０１０７】
コマンド判定部１２５は、計算部１２３から供給される１人目の特徴点の特徴点情報、および、UI描画部１２４から供給される１人目のUIのUI情報に基づいて、１人目の特徴点の位置に表示されている１人目のUIを検出する。そして、コマンド判定部１２５は、その１人目のUIが操作されたというイベントと、その１人目のUIの特定情報を、コマンド発行部１２６に供給する。
【０１０８】
また、コマンド判定部１２５は、図２のコマンド判定部３７と同様に、特徴点の動きとイベントまたはコマンドを対応付けたテーブルを予め記憶している。コマンド判定部１２５は、計算部１２３から供給される１人目の特徴点情報に基づいて特徴点の位置の軌跡を認識し、その軌跡が表す動きに対応するイベントまたはコマンドを、予め記憶しているテーブルから読み出す。コマンド判定部１２５は、読み出したイベントまたはコマンドを、１人目のイベントまたはコマンドとしてコマンド発行部１２６に供給する。
【０１０９】
さらに、コマンド判定部１２５は、１人目の場合と同様に、２人目のイベントと特定情報、もしくは、２人目のイベントまたはコマンドをコマンド発行部１２６に供給する。
【０１１０】
コマンド発行部１２６は、図２のコマンド発行部３８と同様に、特定情報と、その特定情報により特定されるUIに対応するコマンドを対応付けたテーブルを予め記憶している。コマンド発行部１２６は、コマンド判定部１２５から供給される１人目のイベントと特定情報に基づいて、その特定情報により特定される１人目のUIに対応するコマンドを、１人目のコマンドとして発行する。
【０１１１】
また、コマンド発行部１２６は、コマンド判定部１２５から供給される１人目のイベントまたはコマンドを、１人目のコマンドとして発行する。さらに、コマンド発行部１２６は、１人目の場合と同様に、２人目のコマンドを発行する。
【０１１２】
合成部１２７は、図示せぬ外部の装置から、１人目の視聴対象の画像と２人目の視聴対象の画像を取得する。そして、合成部１２７は、１人目の視聴対象の画像と２人目の視聴対象の画像が、視聴対象画面の半分ずつに表示されるように、1人目の視聴対象の画像と２人目の視聴対象の画像を合成し、その結果得られる合成画像を視聴対象画面の画像とする。
【０１１３】
また、合成部１２７は、視聴対象画面の画像を表示部１３に供給して表示させる。その結果、表示部１３の視聴対象画面の半分に、１人目の視聴対象が表示され、他の半分に、２人目の視聴対象が表示される。
【０１１４】
さらに、合成部１２７は、UI描画部１２４から供給される１人目と２人目のUI情報およびUIの画像、並びに、抽出位置情報または特徴点情報、および特徴点ポインタの画像に基づいて、視聴対象画面の画像に、１人目のUIの画像および特徴点ポインタ、並びに、２人目のUIの画像および特徴点ポインタの画像をさらに合成する。
【０１１５】
また、合成部１２７は、図２の合成部３９と同様に、画像取得部３１から供給される撮像画像に対して鏡面処理を行う。合成部１２７は、１人目と２人目のUIの画像および特徴点ポインタが合成された視聴対象画面上に、鏡面処理後の撮像画像が半透明で表示されるように、その合成された視聴対象画面の画像に、鏡面処理後の撮像画像をさらに合成する。そして、合成部１２７は、合成の結果得られる合成画像を表示部１３に供給して表示させる。
【０１１６】
次に、図２３を参照して、図２２の画像処理装置１１１におけるポインティングデバイスの使用について説明する。
【０１１７】
図２３の例では、１人目のユーザの視聴対象が３チャンネルのテレビジョン番組であり、２人目のユーザの視聴対象が８チャンネルのテレビジョン番組である。従って、図２３では、表示部１３の視聴対象画面の左半分に３チャンネルのテレビジョン番組の画像が表示され、右半分に８チャンネルのテレビジョン番組の画像が表示されている。
【０１１８】
２人のユーザのうちの１人が、カメラ１２に向かって左側で、カメラ１２に向かって手を振り、もう１人が、カメラ１２に向かって右側で、カメラ１２に向かって手を振ると、手振りが検出された各領域において、１人目と２人目の特徴点が抽出される。そして、図２３に示すように、表示部１３の視聴対象画面の左半分に１人目の特徴点の特徴点ポインタ１４１が表示され、視聴対象画面の右半分に２人目の特徴点の特徴点ポインタ１４２が表示される。
【０１１９】
また、図２３に示すように、１人目の特徴点の抽出位置情報に基づいて、表示部１３の視聴対象画面の左半分に１人目のUI１５１が表示されるとともに、２人目の特徴点の抽出位置情報に基づいて、視聴対象画面の右半分に２人目のUI１５２が表示される。さらに、表示部１３には、図２３に示すように、撮像画像が半透明で表示される。なお、図２３の例では、UI１５１とUI１５２は、それぞれ、図１のUI１５−１乃至１５−７と同様により構成され、各チャンネルを選択するときに操作される。
【０１２０】
以上のように、表示部１３には、２人分の特徴点ポインタ１４１および１４２と、２人分のUI１５１および１５２が表示されるので、２人のユーザのうちの１人は、１人目の特徴点ポインタ１４１を掴んで、自分の視聴対象とするテレビジョン番組のチャンネルの選択操作を行い、もう１人は、２人目の特徴点ポインタ１４２を掴んで、自分の視聴対象とするテレビジョン番組のチャンネルの選択操作を行うことができる。
【０１２１】
次に、図２４を参照して、図２２の画像処理装置１１１による画像処理について説明する。この画像処理は、例えば、ユーザがリモートコントローラなどの操作部（図示せず）を操作することにより、視聴の開始が指令されたとき、開始される。
【０１２２】
ステップＳ４０において、合成部１２７は、２人分の視聴対象の画像の表示を開始させる。具体的には、合成部１２７は、図示せぬ外部の装置から、１人目のユーザの視聴対象の画像と２人目のユーザの視聴対象の画像の取得し、それらの画像を合成して視聴対象画面の画像を表示部１３に供給することを開始する。これにより、例えば、図２３に示したように、表示部１３の視聴対象画面の左半分に、１人目の視聴対象の画像が表示され、右半分に、２人目の視聴対象の画像が表示される。
【０１２３】
ステップＳ４１において、カメラ１２は、図２１のステップＳ１１と同様に、フレーム単位の撮像画像の取得を開始する。この撮像画像は、フレームバッファ３２に供給されて記憶される。また、撮像画像は合成部１２７にも供給される。
【０１２４】
ステップＳ４２において、トリガ検出部１２１は、フレームバッファ３２に記憶されている撮像画像から、１人のユーザがカメラ１２に向かって手を振ったことを１人目のトリガとして検出したかを判定する。ステップＳ４２で１人目のトリガを検出したと判定されない場合、処理はステップＳ５３に進む。
【０１２５】
一方、ステップＳ４２で１人目のトリガを検出したと判定された場合、トリガ検出部１２１は、１人目のトリガに対応する領域情報を特徴点抽出部１２２に供給する。そして、ステップＳ４３において、トリガ検出部１２１は、１人目のトリガの検出後所定の時間内に２人目のトリガを検出したかを判定する。ステップＳ４３で２人目のトリガを検出したと判定されない場合、処理はステップＳ５３に進む。
【０１２６】
また、ステップＳ４３で２人目のトリガを検出したと判定された場合、トリガ検出部１２１は、２人目のトリガに対応する領域情報を特徴点抽出部１２２に供給する。
【０１２７】
そして、ステップＳ４４において、特徴点抽出部１２２は、フレームバッファ３２に記憶されている撮像画像の、トリガ検出部１２１から供給される１人目のトリガに対応する領域情報が表す領域における輝度成分と、２人目のトリガに対応する領域情報が表す領域における輝度成分とを用いて、１人目の特徴点と２人目の特徴点の２人分の特徴点を抽出する。特徴点抽出部１２２は、１人目の特徴点と２人目の特徴点の位置を表す抽出位置情報を計算部１２３とUI描画部１２４に供給する。
【０１２８】
ステップＳ４５において、UI描画部１２４は、特徴点抽出部１２２から供給される２人分の抽出位置情報に基づいて、２人分の各特徴点の位置の周囲に、２人分の各UIが配置されるように、２人分のUIの配置を決定する。UI描画部１２４は、その２人分のUIのUI情報と、予め記憶している２人分のUIの画像を合成部１２７に供給する。また、UI描画部１２４は、抽出位置情報または計算部１２３から供給される２人分の特徴点の特徴点情報と、予め記憶している２人分の特徴点ポインタの画像とを、合成部１２７に供給する。さらに、UI描画部１２４は、２人分のUI情報をコマンド判定部１２５に供給する。
【０１２９】
ステップＳ４６において、合成部１２７は、UI描画部１２４から供給される２人分のUI情報およびUIの画像、並びに、抽出位置情報または特徴点情報、および特徴点ポインタの画像に基づく、２人分の特徴点ポインタと２人分のUIの表示を開始させる。
【０１３０】
ステップＳ４７乃至Ｓ５５の処理は、図２１のステップＳ１６乃至Ｓ２４の処理と同様であるので説明は省略する。なお、ステップＳ４８乃至Ｓ５０の処理は、各特徴点に対してそれぞれ行われる。
【０１３１】
なお、上述した説明では、２人のユーザが、それぞれ特徴点ポインタ１４１または１４２を掴んで、表示部１３の視聴対象画面全体のうちの自分用の画面に表示させる視聴対象のチャンネルの選択操作を行ったが、図２５に示すように、２人のユーザが、表示部１３の視聴対象画面全体に表示させる視聴対象のチャンネルの選択操作を行ってもよい。
【０１３２】
図２５の例では、表示部１３の視聴対象画面全体に３チャンネルのテレビジョン番組の画像が、視聴対象の画像として表示されており、ユーザは、特徴点ポインタ１４１および１４２を掴んで操作することにより、表示部１３の視聴対象画面全体に表示させるテレビジョン番組のチャンネルを選択する。
【０１３３】
また、図２６に示すように、UIは、２人のユーザに共通のものであってもよい。図２６の例では、視聴対象の画像である、３つのリンク１６１乃至１６３が張られているWebページ（WebPage3）上に、２つの特徴点ポインタ１７１および１７２、２人のユーザに共通の３つのUI１８１乃至１８３、並びに半透明の撮像画像が表示されている。これにより、ユーザは、特徴点ポインタ１７１と１７２のいずれを用いても、UI１８１乃至１８３を操作することができる。
【０１３４】
さらに、図２２の画像処理装置１１１では、２人のユーザが２つの特徴点ポインタを用いて操作を行ったが、１人のユーザが複数の特徴点ポインタを用いて操作することもできる。
【０１３５】
図２７は、１人のユーザが２つの特徴点ポインタを用いて操作する場合の画像処理装置の構成例を示している。
【０１３６】
図２７の画像処理装置２１１は、カメラ１２、表示部１３、画像取得部３１、フレームバッファ３２、トリガ検出部３３、特徴点抽出部２２１、計算部２２２、コマンド判定部２２３、コマンド発行部２２４、および合成部２２５により構成される。なお、図２７において、図２と同一のものには同一のものには同一の符号が付してあり、説明は繰り返しになるので省略する。
【０１３７】
画像処理装置２１１の特徴点抽出部２２１は、図２の特徴点抽出部３４と同様に、フレームバッファ３２から撮像画像を読み出す。特徴点抽出部２２１は、その撮像画像の、トリガ検出部３３から供給される領域情報が表す領域における輝度成分を用いて、２つのコーナ点を特徴点として抽出し、その２つの特徴点の抽出位置情報を計算部２２２と合成部２２５に供給する。
【０１３８】
計算部２２２は、図２の計算部３５と同様に、フレームバッファ３２から、連続する２フレームの撮像画像を読み出す。計算部２２２は、読み出した２フレームの撮像画像と、特徴点抽出部２２１から供給される２つの特徴点の抽出位置情報または特徴点情報とに基づいて、２つの特徴点に対するオプティカルフローを、フレームごとに計算する。そして、計算部２２２は、その２つのオプティカルフローに基づいて、２つの特徴点の特徴点情報を更新し、その特徴点情報をコマンド判定部２２３と合成部２２５に供給する。
【０１３９】
コマンド判定部２２３は、２つの特徴点の動きとコマンドを対応付けたテーブルを予め記憶している。コマンド判定部２２３は、２つの特徴点の特徴点情報に基づいて、２つの特徴点の位置の軌跡を認識し、その軌跡が表わす動きに対応するコマンドを、予め記憶しているテーブルから読み出す。コマンド判定部２２３は、読み出したコマンドと２つの特徴点の特徴点情報を、コマンド発行部２２４に供給する。
【０１４０】
コマンド発行部２２４は、コマンド判定部２２３から供給されるコマンドに応じて、特徴点情報を用いたコマンドまたは特徴点情報を用いないコマンドを発行する。
【０１４１】
合成部２２５は、図２の合成部３９と同様に、図示せぬ外部の装置から、視聴対象のコンテンツの画像を取得する。そして、合成部２２５は、合成部３９と同様に、視聴対象の画像を含む画像を、視聴対象画面の画像として、そのまま表示部１３に供給して表示させる。
【０１４２】
また、合成部２２５は、特徴点抽出部２２１から供給される抽出位置情報、または、計算部２２２から供給される特徴点情報、および、予め記憶している特徴点ポインタの画像に基づいて、視聴対象画面の画像に特徴点ポインタの画像を合成する。
【０１４３】
さらに、合成部２２５は、図２の合成部３９と同様に、画像取得部３１から供給される撮像画像に対して鏡面処理を行う。合成部２２５は、特徴点ポインタが合成された視聴対象画面に、鏡面処理後の撮像画像が半透明で表示されるように、その合成された視聴対象画面の画像に、鏡面処理後の撮像画像をさらに合成し、その結果得られる合成画像を表示部１３に供給して表示させる。
【０１４４】
次に、図２８乃至図３８を参照して、画像処理装置２１１におけるポインティングデバイスの使用について説明する。
【０１４５】
まず最初に、ユーザは、図２８に示すように、視聴対象の写真２５１の表示中に、カメラ１２に向かって手を振る。これにより、画像処理装置２１１では、領域２５２において、ユーザによる手振りがトリガとして検出され、領域２５２において２つの特徴点が抽出される。
【０１４６】
そして、図２９に示すように、表示部１３において、鏡面処理後の撮像画像が、写真２５１が表示された視聴対象画面上に半透明で表示されるとともに、２つの特徴点に基づいて特徴点ポインタ２６１と２６２が表示される。
【０１４７】
ここで、ユーザは、図３０に示すように、表示部１３に表示されている特徴点ポインタ２６１と２６２を見ながら、その特徴点ポインタ２６１に対応する空間を左手の指で左右から包み込むとともに、特徴点ポインタ２６２に対応する空間を右手の指で左右から包み込む。
【０１４８】
そして、ユーザは、図３１に示すように、特徴点ポインタ２６１に対応する空間を左手の中に収め、特徴点ポインタ２６２に対応する空間を右手の中に収める。即ち、ユーザは、特徴点ポインタ２６１を左手で掴み、特徴点ポインタ２６２を右手で掴む。
【０１４９】
その後、ユーザは、表示部１３に表示されている特徴点ポインタ２６１と２６２が左右方向に並ぶように両手を移動し、例えば図３２に示すように、特徴点ポインタ２６１と２６２を掴んだ両手を、２回転静止動作する。これにより、画像処理装置２１１は、両手の２回転静止動作に対応するコマンドとして、特徴点ポインタ２６１および２６２の色を変更するコマンドと、写真２５１並びに特徴点ポインタ２６１および２６２の位置関係を固定するコマンドを発行する。
【０１５０】
その結果、図３２に示すように、特徴点ポインタ２６１および２６２の色は変更され、まず最初に、例えば赤色になる。そして、図３３に示すように、特徴点ポインタ２６１および２６２が写真２５１をキャプチャした状態になり、特徴点ポインタ２６１および２６２の色は変更され、例えば青色になる。
【０１５１】
次に、ユーザが、図３４に示すように、特徴点ポインタ２６１を掴んだ左手を、カメラ１２に向かって左方向に移動させ、特徴点ポインタ２６２を掴んだ右手を、カメラ１２に向かって右方向に移動させることにより両手を左右方向に遠ざけると、写真２５１並びに特徴点ポインタ２６１および２６２の位置関係が変化しないように、写真２５１を拡大するコマンドが発行される。
【０１５２】
その結果、図３４に示すように、図３３に示した移動前の特徴点ポインタ２６１と２６２の間の距離に対する、図３４に示した移動後の特徴点ポインタ２６１と２６２の間の距離の割合で、写真２５１が左右方向に拡大される。
【０１５３】
一方、図示は省略するが、ユーザは、写真２５１を左右方向に縮小させる場合、特徴点ポインタ２６１を掴んだ左手をカメラ１２に向かって右方向に移動させ、特徴点ポインタ２６２を掴んだ右手をカメラ１２に向かって左方向に移動させることにより、両手を左右方向に近づける。この場合、移動前の特徴点ポインタ２６１と２６２の間の距離に対する、移動後の特徴点ポインタ２６１と２６２の間の距離の割合で、写真２５１が左右方向に縮小される。
【０１５４】
また、図示は省略するが、ユーザは、特徴点ポインタ２６１を掴んだ左手と特徴点ポインタ２６２を掴んだ右手を上下方向に並べて２回転静止動作し、その後両手を上下方向に遠ざけたり、近づけたりすることにより、写真２５１を上下方向に拡大させたり、縮小させたりすることができる。
【０１５５】
次に、ユーザが、図３５に示すように、特徴点ポインタ２６１を掴んだ左手と特徴点ポインタ２６２を掴んだ右手を、時計回りに所定の角度だけ回転させると、写真２５１並びに特徴点ポインタ２６１および２６２の位置関係が変化しないように、写真２５１を回転するコマンドが発行される。
【０１５６】
その結果、図３５に示すように、図３４に示した回転前の特徴点ポインタ２６１と２６２を結ぶ線である特徴線２６３と、図３５に示した回転後の特徴線２６４の角度θで、写真２５１が時計回りに回転される。なお、特徴線２６３と２６４は、表示部１３に表示されてもよいし、表示されなくてもよい。
【０１５７】
次に、ユーザは、図３６に示すように、図３５に示した状態で２秒間静止すると、その動作に対応するコマンドとして、特徴点ポインタ２６１および２６２の色を最初の色に変更するコマンドと、写真２５１並びに特徴点ポインタ２６１および２６２の位置関係の固定を解除するコマンドを発行する。
【０１５８】
その結果、図３６に示すように、特徴点ポインタ２６１および２６２の色は、最初の色に戻る。そして、特徴点ポインタ２６１および２６２が写真２５１をキャプチャした状態が終了する。
【０１５９】
次に、ユーザは、図３７に示すように、特徴点ポインタ２６１および２６２が、表示部１３の視聴対象画面外に移動するように、特徴点ポインタ２６１を掴んだ左手と特徴点ポインタ２６２を掴んだ右手を、カメラ１２に向かって下方向に移動させると、インターフェースに関する表示を終了するコマンドが発行される。
【０１６０】
その結果、図３８に示すように、表示部１３から、撮像画像と特徴点ポインタ２６１および２６２が削除される。即ち、表示部１３の視聴対象画面には、視聴対象である写真２５１だけが表示される。
【０１６１】
なお、図２８乃至図３８では、ユーザが、写真２５１を拡大または縮小もしくは回転させる場合について説明したが、特徴点ポインタ２６１を掴んだ左手と特徴点ポインタ２６２を掴んだ右手の距離を変更せずに、両手を移動させることにより、写真２５１を移動させることもできる。
【０１６２】
また、特徴点ポインタ２６１および２６２が写真２５１をキャプチャした状態にさせるトリガは、両手を２回転静止動作させること以外のものであってもよい。例えば、表示部１３に表示された所定のUIに特徴点ポインタ２６１および２６２の少なくとも１つが重なるように、特徴点ポインタ２６１および２６２の少なくとも１つを掴んだ手を移動させることでもよい。
【０１６３】
次に、図３９を参照して、図２７の画像処理装置２１１における画像処理について説明する。この画像処理は、例えば、ユーザがリモートコントローラなどの操作部（図示せず）を操作することにより、視聴の開始が指令されたとき、開始される。
【０１６４】
ステップＳ６０乃至Ｓ６２の処理は、図２１のステップＳ１０乃至Ｓ１２の処理と同様であるので、説明は省略する。
【０１６５】
ステップＳ６３において、特徴点抽出部２２１は、フレームバッファ３２に記憶されている撮像画像の、トリガ検出部３３から供給される領域情報が表す領域における輝度成分を用いて、２つのコーナ点を特徴点として抽出する。特徴点抽出部２２１は、抽出した特徴点の位置を表す抽出位置情報を計算部２２２と合成部２２５に供給する。
【０１６６】
ステップＳ６４において、合成部２２５は、特徴点抽出部２２１から供給される２つの特徴点の抽出位置情報、または計算部２２２から供給される２つの特徴点の特徴点情報、および特徴点ポインタの画像に基づく、２つの特徴点ポインタの表示を開始させる。その結果、例えば、図２９に示したように、２つの特徴点ポインタ２６１と２６２が、表示部１３の視聴対象画面に表示される。
【０１６７】
ステップＳ６５において、合成部２２５は、図２１のステップＳ１６の処理と同様に、画像取得部３１から供給される撮像画像を用いた半透明の撮像画像の表示を開始させる。その結果、例えば、図２９に示したように、撮像画像が、左右反転されて半透明で表示部１３の視聴対象画面に表示される。
【０１６８】
ステップＳ６６において、計算部２２２は、フレームバッファ３２に記憶されている２フレームの撮像画像と、特徴点抽出部２２１から供給される２つの特徴点の抽出位置情報または特徴点情報とに基づいて、２つの特徴点に対するオプティカルフローを計算する。そして、計算部２２２は、各特徴点に対するオプティカルフローに基づいて、各特長点の特徴点情報を更新する。計算部２２２は、２つの特徴点の特徴点情報をコマンド判定部２２３と合成部２２５に供給する。
【０１６９】
ステップＳ６７において、コマンド判定部２２３は、計算部２２２から供給される２つの特徴点の特徴点情報に基づいて、コマンド発行部２２４によりコマンドを発行させるかを判定する。
【０１７０】
具体的には、コマンド判定部２２３は、２つの特徴点の特徴点情報に基づいて、２つの特徴点の位置の軌跡を認識し、その軌跡が表わす動きに対応するコマンドが、予め記憶されているテーブルに存在するかを判定する。そして、予め記憶されているテーブルに存在すると判定された場合、コマンド判定部２２３は、コマンドを発行させると判定し、テーブルに存在しないと判定された場合、コマンドを発行しないと判定する。
【０１７１】
ステップＳ６７でコマンドを発行させると判定された場合、コマンド判定部２２３は、２つの特徴点の動きに対応するコマンドと特徴点情報をコマンド発行部２２４に供給する。そして、ステップＳ６８において、コマンド発行部２２４は、コマンド判定部２２３から供給されるコマンドに応じて、特徴点情報を用いたコマンドまたは特徴点情報を用いないコマンドを発行する。
【０１７２】
具体的には、例えば、図３２に示したように、ユーザが特徴点ポインタ２６１と２６２を掴んだ両手を２回転静止動作した場合、コマンド発行部２２４は、コマンド判定部２２３から供給される、その特徴点ポインタ２６１と２６２の動きに対応する、特徴点ポインタ２６１および２６２の色を変更するコマンドと、写真２５１並びに特徴点ポインタ２６１および２６２の位置関係を固定するコマンドを、特徴点情報を用いないコマンドとしてそのまま発行する。
【０１７３】
また、例えば、図３４に示したように、ユーザが、特徴点ポインタ２６１を掴んだ左手と特徴点ポインタ２６２を掴んだ右手を左右方向に遠ざけた場合、コマンド発行部２２４は、コマンド判定部２２３から供給される、その特徴点ポインタ２６１と２６２の動きに対応する、写真２５１並びに特徴点ポインタ２６１および２６２の位置関係が変化しないように、写真２５１を拡大するコマンドに応じて、特徴点情報に基づく割合で写真２５１を左右方向に拡大するコマンドを、特徴点情報を用いたコマンドとして発行する。
【０１７４】
一方、ステップＳ６７でコマンドを発行させると判定されない場合、処理はステップＳ６８をスキップしてステップＳ６９に進む。ステップＳ６９において、合成部２２５は、図２１のステップＳ２０の処理と同様に、インターフェースに関する画像の表示を終了するかを判定する。具体的には、合成部２２５は、コマンド発行部２２４から、インターフェースに関する画像の表示を終了するコマンドが供給されたかを判定する。
【０１７５】
ステップＳ６９で、インターフェースに関する画像の表示を終了すると判定されない場合、処理はステップＳ６６に戻り、フレームバッファ３２に記憶されている、前回用いた後ろの１フレームの撮像画像、および、それに連続する１フレームの撮像画像と、前回更新された２つの特徴点の特徴点情報とに基づいて、２つの特徴点に対するオプティカルフローが計算され、以降の処理が行われる。
【０１７６】
また、ステップＳ６９で、インターフェースに関する画像の表示を終了すると判定された場合、ステップＳ７０において、合成部２２５は、特徴点ポインタと撮像画像の表示を終了させる。
【０１７７】
ステップＳ７１乃至Ｓ７３の処理は、図２１のステップＳ２２乃至Ｓ２４の処理と同様であるので説明は省略する。
【０１７８】
なお、上述した説明では、ユーザがカメラ１２に向かって手を振ったことがトリガとして検出されたが、トリガとして検出されるものは、これに限定されない。例えば、画像処理装置１１（１１１，２１１）にリモートコントローラが備えられている場合、そのリモートコントローラの所定のボタンを操作したことが、トリガとして検出されるようにしてもよい。この場合、領域情報として、所定の領域を表す領域情報が出力される。
【０１７９】
また、上述した説明では、コーナ点が特徴点として抽出されたが、輪郭線上の点などが特徴点として抽出されるようにしてもよい。この場合、輪郭線上のどの点が特徴点として抽出されるか決まってないため、コーナ点が特徴点として抽出される場合に比べて、特徴点ポインタの位置は安定しにくい。しかしながら、ユーザの手により特徴点が掴まれた後は、その手の中に特徴点が存在するようになるので、コーナ点が特徴点として抽出される場合と同様に、画像処理装置１１（１１１，２１１）は、少ない処理量で、ロバスト性の高い認識と高精度の位置検出を行うことができる。
【０１８０】
さらに、上述した説明では、特徴点の動きを検出する方法として、特徴点のオプティカルフローを計算する方法が用いられたが、テンプレートマッチングにより特徴点の動きを検出する方法などが用いられるようにしてもよい。
【０１８１】
また、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１８２】
さらに、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０１８３】
【図１】本発明を適用した画像処理装置の第１の実施の形態の概要を示す図である。
【図２】図１の画像処理装置の構成例を示すブロック図である。
【図３】特徴点ポインタを掴むという動作について説明する図である。
【図４】図２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図５】図２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図６】図２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図７】図２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図８】図２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図９】図２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図１０】図２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図１１】図２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図１２】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図１３】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図１４】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図１５】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図１６】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図１７】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図１８】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図１９】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図２０】図２の画像処理装置におけるポインティングデバイスの他の使用について説明する図である。
【図２１】図２の画像処理装置における画像処理について説明するフローチャートである。
【図２２】本発明を適用した画像処理装置の第２の実施の形態の構成例を示すブロック図である。
【図２３】図２２の画像処理装置におけるポインティングデバイスの使用について説明する図である。
【図２４】図２２の画像処理装置による画像処理について説明するフローチャートである。
【図２５】２人のユーザが操作を行う場合の他の操作例について説明する図である。
【図２６】２人のユーザが操作を行う場合のさらに他の操作例について説明する図である。
【図２７】本発明を適用した画像処理装置の第３の実施の形態の構成例を示すブロック図である。
【図２８】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図２９】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３０】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３１】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３２】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３３】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３４】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３５】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３６】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３７】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３８】図２７の画像処理装置２１１におけるポインティングデバイスの使用について説明する図である。
【図３９】図２７の画像処理装置による画像処理について説明するフローチャートである。
【符号の説明】
【０１８４】
１１  画像処理装置，  ３４  特徴点抽出部，  ３５  計算部，  ３８  コマンド発行部，  ３９  合成部，  １１１  画像処理装置，  １２２  特徴点抽出部，  １２３  計算部，  １２６  コマンド発行部，  １２７  合成部，  ２１１  画像処理装置，  ２２１  特徴点抽出部，  ２２２  計算部，  ２２４  コマンド発行部，  ２２５  合成部
【図１】
0004569613.tif 000002
【図２】
0004569613.tif 000003
【図３】
0004569613.tif 000004
【図４】
0004569613.tif 000005
【図５】
0004569613.tif 000006
【図６】
0004569613.tif 000007
【図７】
0004569613.tif 000008
【図８】
0004569613.tif 000009
【図９】
0004569613.tif 000010
【図１０】
0004569613.tif 000011
【図１１】
0004569613.tif 000012
【図１２】
0004569613.tif 000013
【図１３】
0004569613.tif 000014
【図１４】
0004569613.tif 000015
【図１５】
0004569613.tif 000016
【図１６】
0004569613.tif 000017
【図１７】
0004569613.tif 000018
【図１８】
0004569613.tif 000019
【図１９】
0004569613.tif 000020
【図２０】
0004569613.tif 000021
【図２１】
0004569613.tif 000022
【図２２】
0004569613.tif 000023
【図２３】
0004569613.tif 000024
【図２４】
0004569613.tif 000025
【図２５】
0004569613.tif 000026
【図２６】
0004569613.tif 000027
【図２７】
0004569613.tif 000028
【図２８】
0004569613.tif 000029
【図２９】
0004569613.tif 000030
【図３０】
0004569613.tif 000031
【図３１】
0004569613.tif 000032
【図３２】
0004569613.tif 000033
【図３３】
0004569613.tif 000034
【図３４】
0004569613.tif 000035
【図３５】
0004569613.tif 000036
【図３６】
0004569613.tif 000037
【図３７】
0004569613.tif 000038
【図３８】
0004569613.tif 000039
【図３９】
0004569613.tif 000040