(57)【特許請求の範囲】
【請求項１】
カメラ、
前記カメラに対向して設置されるミラー、
前記カメラによって撮像されたカメラ画像のうち、前記ミラーに相当する第１部分画像と、前記第１部分画像に隣接し、前記ミラーに相当しない第２部分画像とに基づいて、当該カメラの周囲に存在する物体の位置を検出する第１検出手段、および
前記ミラー側を設置面に設置させるとき、前記第１部分画像における前記物体についての第１物体画像と、当該第１部分画像と前記第２部分画像の境界とが接触するかどうかで、前記物体が当該設置面と接触するかどうかを判定する接触判定手段を備え、
前記ミラー側を前記設置面に設置させるとき、当該設置面に平行な方向に当該設置面に沿って進行する光が当該ミラーの少なくとも一部で反射されるように、前記カメラと前記ミラーとの位置関係および当該ミラーの形状が決定される、情報処理システム。
【請求項２】
前記第１検出手段は、前記第１部分画像における前記物体についての第１物体画像の第１位置と、前記第２部分画像における前記物体についての第２物体画像の第２位置に基づいて、前記物体の位置を検出する、請求項１記載の情報処理システム。
【請求項３】
少なくとも、前記第１部分画像と前記第２部分画像の境界と、当該第１部分画像における前記物体についての第１物体画像の第１位置関係を検出する第２検出手段をさらに備え、
前記第１検出手段は、前記第２検出手段によって検出された前記第１位置関係に応じて、前記物体の位置を検出する、請求項１記載の情報処理システム。
【請求項４】
前記第２検出手段は、前記第１部分画像の基準位置と前記第２部分画像における前記物体についての第２物体画像の第２位置関係をさらに検出し、
前記第１検出手段は、前記第２検出手段によって検出された第１位置関係と第２位置関係に基づいて、前記物体の位置を検出する、請求項３記載の情報処理システム。
【請求項５】
前記第１検出手段は、前記第１位置関係が前記境界に前記第１物体画像が接触していることを示すかどうかと、前記第２位置関係に基づいて、前記物体の位置を検出する、請求項４記載の情報処理システム。
【請求項６】
前記カメラ画像のうち、前記第１部分画像の基準位置を通る直線上における、当該第１部分画像における前記物体についての第１物体画像の第１位置および前記第２部分画像における前記物体についての第２物体画像の第２位置を検出する第３検出手段をさらに備え、
前記第１検出手段は、前記第３検出手段によって検出された前記第１位置と前記第２位置に基づいて、前記物体の位置を検出する、請求項１記載の情報処理システム。
【請求項７】
前記カメラの画角は１８０度である、請求項１ないし６のいずれかに記載の情報処理システム。
【請求項８】
前記カメラは周囲の３６０度を撮影可能である、請求項１ないし７のいずれかに記載の情報処理システム。
【請求項９】
前記第１部分画像および前記第２部分画像の両方に前記カメラの周囲に存在する物体の画像が含まれるように、当該カメラと前記ミラーの相対的な位置関係および当該ミラーの形状が決定される、請求項１ないし８のいずれかに記載の情報処理システム。
【請求項１０】
前記ミラーは曲面を有する、請求項１ないし９のいずれかに記載の情報処理システム。
【請求項１１】
前記曲面は前記カメラ側に突出する双曲面、円錐面、楕円面またはこれらのいずれか２つの複合面である、請求項１０記載の情報処理システム。
【請求項１２】
前記カメラと前記ミラーを含む撮像装置は携帯型である、請求項１ないし１１のいずれかに記載の情報処理システム。
【請求項１３】
前記カメラと前記ミラーを含む撮像装置は円筒形状に形成される、請求項１ないし１２のいずれかに記載の情報処理システム。
【請求項１４】
前記ミラーは曲面ミラーであり、
前記第１検出手段は、前記第１部分画像を所定のアルゴリズムで補正した画像と、前記第２部分画像とに基づいて、前記物体の位置を検出する、請求項１ないし１３のいずれかに記載の情報処理システム。
【請求項１５】
カメラ、および前記カメラに対向して設置されるミラーを備える情報処理システムのコンピュータで実行される情報処理プログラムであって、
前記情報処理システムの前記ミラー側を設置面に設置させるとき、当該設置面に平行な方向に当該設置面に沿って進行する光が当該ミラーの少なくとも一部で反射されるように、前記カメラと前記ミラーとの位置関係および当該ミラーの形状が決定され、
前記コンピュータを、前記カメラによって撮像されたカメラ画像のうち、前記ミラーに相当する第１部分画像と、前記第１部分画像に隣接し、前記ミラーに相当しない第２部分画像とに基づいて、当該カメラの周囲に存在する物体の位置を検出する検出手段、および
前記情報処理システムの前記ミラー側を設置面に設置させるとき、前記第１部分画像における前記物体についての第１物体画像と、当該第１部分画像と前記第２部分画像の境界とが接触するかどうかで、前記物体が当該設置面と接触するかどうかを判定する接触判定手段として機能させる、情報処理プログラム。
【請求項１６】
カメラ、および前記カメラに対向して設置されるミラーを備える情報処理システムの情報処理方法であって、
前記情報処理システムの前記ミラー側を設置面に設置させるとき、当該設置面に平行な方向に当該設置面に沿って進行する光が当該ミラーの少なくとも一部で反射されるように、前記カメラと前記ミラーとの位置関係および当該ミラーの形状が決定され、
（ａ）前記カメラによって撮像されたカメラ画像のうち、前記ミラーに相当する第１部分画像と、前記第１部分画像に隣接し、前記ミラーに相当しない第２部分画像とに基づいて、当該カメラの周囲に存在する物体の位置を検出するステップと、
（ｂ）前記情報処理システムの前記ミラー側を前記設置面に設置させるとき、前記第１部分画像における前記物体についての第１物体画像と、当該第１部分画像と前記第２部分画像の境界とが接触するかどうかで、前記物体が当該設置面と接触するかどうかを判定するステップを含む、情報処理方法。
【請求項１７】
カメラ、
前記カメラに対向して設置されるミラー、および
前記カメラによって撮影されたカメラ画像に基づいて、当該カメラの周囲に存在する物体が所定の面に接触しているかどうかを判定する接触判定手段を備え、
前記カメラによって撮像されたカメラ画像が、前記ミラーに相当する第１部分画像と、前記第１部分画像に隣接し、前記ミラーに相当しない第２部分画像を含むように、前記カメラと前記ミラーとを配置し、
前記ミラー側を前記所定の面に設置させるとき、当該所定の面に平行な方向に当該所定の面に沿って進行する光が当該ミラーの少なくとも一部で反射されるように、前記カメラと前記ミラーとの位置関係および当該ミラーの形状が決定され、
前記接触判定手段は、前記ミラー側を前記所定の面に設置させるとき、前記第１部分画像における前記物体についての第１物体画像と、当該第１部分画像と前記第２部分画像の境界とが接触するかどうかで、前記物体が当該所定の面と接触するかどうかを判定する、情報処理システム。
【請求項１８】
周囲の３６０度を撮影可能な広角カメラ、
前記広角カメラに対向して配置され、所定の面に平行であり、当該所定の面に沿って進行する光線方向となる形状に形成されたミラー、および
前記広角カメラによって撮影されたカメラ画像に基づいて、当該広角カメラの周囲に存在する物体が所定の面に接触しているかどうかを判定する接触判定手段を備え、
前記広角カメラによって前記ミラーに相当する第１部分画像と、当該第１部分画像に隣接し、前記ミラーに相当しない第２部分画像を含むカメラ画像を撮影可能に、前記広角カメラと前記ミラーを配置し、
前記接触判定手段は、前記ミラー側を前記所定の面に設置させるとき、前記第１部分画像における前記物体についての第１物体画像と、当該第１部分画像と前記第２部分画像の境界とが接触するかどうかで、前記物体が当該所定の面と接触するかどうかを判定する、撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は情報処理システム、情報処理プログラム、情報処理方法および撮像装置に関し、特にたとえば、カメラおよび当該カメラに対向する位置にミラーを備える、情報処理システム、情報処理プログラム、情報処理方法および撮像装置に関する。
【背景技術】
【０００２】
背景技術の一例が特許文献１に開示される。この特許文献１に開示される全方位３次元空間認識入力装置では、ミラー部とカメラ部で構成される光学系により全方位画像を撮像する撮像手段が設けられ、全方位のステレオ画像と、被写体の形状および構造を表す３次元座標値が抽出される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２５６２９６号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、この背景技術では、全方位のステレオ画像と、被写体の形状および構造を表す３次元座標値が抽出されるに留まっている。
【０００５】
この発明の主たる目的は、新規な、情報処理システム、情報処理プログラム、情報処理方法および撮像装置を提供することである。
【０００６】
また、この発明の他の目的は、カメラ画像のうち、曲面ミラーに相当する部分画像と、曲面ミラーに相当しない部分画像を用いることにより新規な情報処理を実行可能な、情報処理システム、情報処理プログラム、情報処理方法および撮像装置を提供することである。
【課題を解決するための手段】
【０００７】
第１の発明の情報処理システムは、カメラ、ミラー、第１検出手段、および接触判定手段を備える。ミラーは、カメラに対向して設置される。第１検出手段は、カメラによって撮像されたカメラ画像のうち、ミラーに相当する第１部分画像と、第１部分画像に隣接し、ミラーに相当しない第２部分画像とに基づいて、当該カメラの周囲に存在する物体の位置を検出する。接触判定手段は、ミラー側を設置面に設置させるとき、第１部分画像における物体についての第１物体画像と、当該第１部分画像と第２部分画像の境界とが接触するかどうかで、物体が当該設置面と接触するかどうかを判定する。ミラー側を設置面に設置させるとき、当該設置面に平行な方向に当該設置面に沿って進行する光が当該ミラーの少なくとも一部で反射されるように、カメラとミラーとの位置関係および当該ミラーの形状が決定される。
【０００８】
第１の発明によれば、カメラ画像のうち、ミラーに相当する第１部分画像とミラーに相当しない第２部分画像の境界がカメラを設置した設置面に相当するので、第２部分画像におけるオブジェクトが当該境界に接触しているかどうかに応じて、オブジェクトが設置面に接触しているかどうかを判定することができる。
【０００９】
第２の発明は、第１の発明に従属し、第１検出手段は、第１部分画像における物体についての第１物体画像の第１位置と、第２部分画像における物体についての第２物体画像の第２位置に基づいて、物体の位置を検出する。
【００１０】
第２の発明によれば、第１部分画像および第２部分画像に基づいて物体の位置を算出することができる。
【００１１】
第３の発明は、第１の発明に従属し、第２検出手段をさらに備える。第２検出手段は、少なくとも、第１部分画像と第２部分画像の境界線と、当該第１部分画像における物体についての第１物体画像の第１位置関係を検出する。第１物体画像が境界線に接触している場合には、境界線に相当するカメラが設けられた面に物体が接触していることが分かる。第１検出手段は、第２検出手段によって検出された第１位置関係に応じて、物体の位置を検出する。つまり、物体がカメラの設けられた面に接触している場合には、高さを０として、第２部分画像の第２位置に基づいてカメラの設けられた面における２次元座標が算出される。また、物体がカメラの設けられた面に接触していない場合には、第１部分画像および第２部分画像に基づいて物体の３次元位置が算出される。
【００１２】
第３の発明によれば、物体がカメラの設けられた面に接触しているかどうかに応じて、適切な方法で物体の位置を算出することができる。
【００１３】
第４の発明は、第３の発明に従属し、第２検出手段は、第１部分画像の基準位置と第２部分画像における物体についての第２物体画像の第２位置関係をさらに検出する。また、第１検出手段は、第２検出手段によって検出された第１位置関係と第２位置関係に基づいて、物体の位置を検出する。
【００１４】
第４の発明によれば、第２位置関係をさらに検出するので、適切な方法で物体の位置を算出することができる。
【００１５】
第５の発明は、第４の発明に従属し、第１検出手段は、第１位置関係が境界線に第１物体画像が接触していることを示すかどうかと、第２位置関係に基づいて、物体の位置を検出する。
【００１６】
第５の発明によれば、物体が境界線に相当するカメラが設置された面に接触しているかどうかに応じて、適切な方法で物体の位置を算出することができる。
【００１７】
第６の発明は、第１の発明に従属し、第３検出手段をさらに備える。第３検出手段は、カメラ画像のうち、第１部分画像の基準位置を通る直線上における、当該第１部分画像における物体についての第１物体画像の第１位置および第２部分画像における物体についての第２物体画像の第２位置を検出する。第１検出手段は、第３検出手段によって検出された第１位置と第２位置に基づいて、物体の位置を検出する。
【００１８】
第６の発明によれば、第１部分画像と第２部分画像とに基づいて、物体の位置を算出することができる。
【００２５】
第７の発明は、第１ないし第６の発明のいずれかに従属し、カメラの画角は１８０度である。
【００２６】
第７の発明によれば、カメラの光軸に対して垂直な方向を撮影することができる。
【００２７】
第８の発明は、第１ないし第７の発明のいずれかに従属し、カメラは周囲の３６０度を撮影可能である。
【００２８】
第８の発明によれば、カメラの周囲に存在する物体を撮影可能である。
【００２９】
第９の発明は、第１ないし第８の発明のいずれかに従属し、第１部分画像および第２部分画像の両方にカメラの周囲に存在する物体の画像が含まれるように、当該カメラとミラーの相対的な位置関係および当該ミラーの形状が決定される。
【００３０】
第９の発明によれば、第１部分画像および第２部分画像に基づいて、物体の位置を検出することができる。
【００３１】
第１０の発明は、第１ないし第９の発明のいずれかに従属し、ミラーは曲面を有する。
【００３２】
第１０の発明によれば、第１部分画像にもカメラの周囲の画像を含めることができる。
【００３３】
第１１の発明は、第１０の発明に従属し、曲面はカメラ側に突出する双曲面、円錐面、楕円面またはこれらのいずれか２つの複合面である。
【００３４】
第１１の発明によれば、用途に応じた曲面のミラーを用いることができる。
【００３５】
第１２の発明は、第１ないし第１１の発明のいずれかに従属し、カメラとミラーを含む撮像装置は携帯型である。
【００３６】
第１２の発明によれば、撮像装置を任意の設置面に設置して物体の位置を検出することができる。
【００３７】
第１３の発明は、第１ないし第１２の発明のいずれかに従属し、カメラとミラーを含む撮像装置は円筒形状に形成される。
【００３８】
第１３の発明によれば、撮像装置自体の形状に起因して画像を補正する処理が不要である。
【００３９】
第１４の発明は、第１ないし第１３の発明のいずれかに従属し、ミラーは曲面ミラーであり、第１検出手段は、第１部分画像を所定のアルゴリズムで補正した画像と、第２部分画像とに基づいて、物体の位置を検出する。
【００４０】
第１４の発明によれば、曲面ミラーによる画像の歪みを補正するので、歪みによる誤差を低減または無くして物体の位置を検出することができる。
【００４１】
第１５の発明は、カメラ、およびカメラに対向して設置されるミラーを備える情報処理システムのコンピュータで実行される情報処理プログラムであって、情報処理システムのミラー側を設置面に設置させるとき、当該設置面に平行な方向に当該設置面に沿って進行する光が当該ミラーの少なくとも一部で反射されるように、カメラとミラーとの位置関係および当該ミラーの形状が決定され、コンピュータを、カメラによって撮像されたカメラ画像のうち、ミラーに相当する第１部分画像と、第１部分画像に隣接し、ミラーに相当しない第２部分画像とに基づいて、当該カメラの周囲に存在する物体の位置を検出する検出手段、および情報処理システムのミラー側を設置面に設置させるとき、第１部分画像における物体についての第１物体画像と、当該第１部分画像と第２部分画像の境界とが接触するかどうかで、物体が当該設置面と接触するかどうかを判定する接触判定手段として機能させる、情報処理プログラムである。
【００４２】
第１５の発明においても、第１の発明と同様に、第２部分画像におけるオブジェクトが当該境界に接触しているかどうかに応じて、オブジェクトが設置面に接触しているかどうかを判定することができる。
【００４３】
第１６の発明は、カメラ、およびカメラに対向して設置されるミラーを備える情報処理システムの情報処理方法であって、情報処理システムのミラー側を設置面に設置させるとき、当該設置面に平行な方向に当該設置面に沿って進行する光が当該ミラーの少なくとも一部で反射されるように、カメラとミラーとの位置関係および当該ミラーの形状が決定され、（ａ）カメラによって撮像されたカメラ画像のうち、ミラーに相当する第１部分画像と、第１部分画像に隣接し、ミラーに相当しない第２部分画像とに基づいて、当該カメラの周囲に存在する物体の位置を検出するステップと、（ｂ）情報処理システムのミラー側を設置面に設置させるとき、第１部分画像における物体についての第１物体画像と、当該第１部分画像と第２部分画像の境界とが接触するかどうかで、物体が当該設置面と接触するかどうかを判定するステップを含む、情報処理方法である。
【００４４】
第１６の発明においても、第１の発明と同様に、第２部分画像におけるオブジェクトが当該境界に接触しているかどうかに応じて、オブジェクトが設置面に接触しているかどうかを判定することができる。
【００４５】
第１７の発明は、カメラ、カメラに対向して設置されるミラー、およびカメラによって撮影されたカメラ画像に基づいて、当該カメラの周囲に存在する物体が所定の面に接触しているかどうかを判定する接触判定手段を備え、カメラによって撮像されたカメラ画像が、ミラーに相当する第１部分画像と、第１部分画像に隣接し、ミラーに相当しない第２部分画像を含むように、カメラとミラーとを配置し、ミラー側を所定の面に設置させるとき、当該所定の面に平行な方向に当該所定の面に沿って進行する光が当該ミラーの少なくとも一部で反射されるように、カメラとミラーとの位置関係および当該ミラーの形状が決定され、接触判定手段は、ミラー側を所定の面に設置させるとき、第１部分画像における物体についての第１物体画像と、当該第１部分画像と第２部分画像の境界とが接触するかどうかで、物体が当該所定の面と接触するかどうかを判定する、情報処理システムである。
【００４６】
第１７の発明によれば、物体が所定の面に接触したかどうかを容易に判定することができる。
【００５１】
第１８の発明は、周囲の３６０度を撮影可能な広角カメラ、広角カメラに対向して配置され、所定の面に平行であり、当該所定の面に沿って進行する光線方向となる形状に形成されたミラー、および広角カメラによって撮影されたカメラ画像に基づいて、当該広角カメラの周囲に存在する物体が所定の面に接触しているかどうかを判定する接触判定手段を備え、広角カメラによってミラーに相当する第１部分画像と、当該第１部分画像に隣接し、ミラーに相当しない第２部分画像を含むカメラ画像を撮影可能に、広角カメラとミラーを配置し、接触判定手段は、ミラー側を所定の面に設置させるとき、第１部分画像における物体についての第１物体画像と、当該第１部分画像と第２部分画像の境界とが接触するかどうかで、物体が当該所定の面と接触するかどうかを判定する、撮像装置である。
【００５２】
第１８の発明によれば、物体が所定の面に接触したかどうかを簡単に判定できるカメラ画像を撮影することができる。
【発明の効果】
【００５９】
この発明によれば、カメラ画像のうち、ミラーに相当する第１部分画像とミラーに相当しない第２部分画像の境界がカメラを設置した設置面に相当するので、第２部分画像におけるオブジェクトが当該境界に接触しているかどうかに応じて、オブジェクトが設置面に接触しているかどうかを判定することができる。
【００６０】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施形態の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００６１】
【図１】図１はこの発明の一実施例である情報処理システムを示す図解図である。
【図２】図２は図１に示す撮像装置の外観構成の一例を示す図解図である。
【図３】図３は図１に示す撮像装置に含まれるカメラユニットの電気的な構成を示すブロック図である。
【図４】図４（Ａ）は撮像装置の撮影範囲を説明するための図解図であり、図４（Ｂ）は撮像装置の撮影画像の一例を示す図解図である。
【図５】図５（Ａ）は撮像装置を設置した設置面を指でタッチしている場合の撮影画像の一例を示す図解図であり、図５（Ｂ）は撮像装置を設置した設置面を指でタッチしていない場合の撮影画像の一例を示す図解図である。
【図６】図６（Ａ）は撮像装置の撮影画像の他の例であり、図６（Ｂ）はタッチしている場合の指の位置を算出する方法を説明するための説明図である。
【図７】図７（Ａ）は撮像装置の撮影画像の他の例であり、図７（Ｂ）はタッチしていない場合の指の位置を算出する方法を説明するための説明図である。
【図８】図８は図１に示すコンピュータに内蔵されるＲＡＭのメモリマップの一例を示す図解図である。
【図９】図９は図１に示すコンピュータに内蔵されるＣＰＵの位置検出処理の一部を示すフロー図である。
【図１０】図１０は図１に示すコンピュータに内蔵されるＣＰＵの位置検出処理の他の一部であって、図９に後続するフロー図である。
【図１１】図１１は実施例の情報処理システムを用いた他のオブジェクトの位置検出の例を示す図解図である。
【図１２】図１２は実施例の情報処理システムを用いたユーザインターフェイスの一例を示す図解図である。
【図１３】図１３は実施例の撮像装置上に専用のディスプレイを設けた例を示す図解図である。
【図１４】図１４は実施例の撮像装置上に着脱可能にディスプレイを設けた例をＣ示す図解図である。
【図１５】図１５（Ａ）は情報処理システムおよび樹脂性の操作部を用いてコントローラを構成する例を示す図解図であり、図１５（Ｂ）は操作部に設けられる表示窓の表示例を示す図解図である。
【図１６】図１６（Ａ）は実施例の場合と上下逆向きに撮像装置を設置面に設置した状態を示す図解図であり、図１６（Ｂ）は図１６（Ａ）に示した状態で撮影された撮影画像の一例を示す図解図である。
【図１７】図１７（Ａ）は楕円面の曲面ミラーを示す図解図であり、図１７（Ｂ）は円錐面の曲面ミラーを示す図解図であり、図１７（Ｃ）は複合面の曲面ミラーの一例を示す図解図であり、そして図１７（Ｄ）は複合面の曲面ミラーの他の例を示す図解図である。
【図１８】図１８（Ａ）は情報処理システムの他の例の概略構成図を示す図解図であり、図１８（Ｂ）は図１８（Ａ）に示すカメラの撮影画像の一例を示す図解図である。
【図１９】図１９（Ａ）は情報処理システムのその他の例の概略構成図を示す図解図であり、図１９（Ｂ）は図１９（Ａ）に示すカメラの撮影画像の一例を示す図解図である。
【図２０】図２０（Ａ）はプロジェクタ装置の外観構成の一例を示す図解図であり、図２０（Ｂ）は撮像装置およびプロジェクタ装置を一体的に構成した電子機器の外観構成の一例を示す図解図である。
【発明を実施するための形態】
【００６２】
図１を参照して、この発明の一実施例である情報処理システム１０は、撮像装置１２およびコンピュータ１４を含み、撮像装置１２およびコンピュータ１４は無線通信可能に接続される。ただし、撮像装置１２とコンピュータ１４は、有線により通信可能に接続されてもよい。
【００６３】
図２からも分かるように、撮像装置１２は、カメラユニット１２ａ、ミラー部１２ｂおよびこれらを固定する固定部材１２ｃによって構成され、カメラユニット１２ａおよびミラー部１２ｂによって両端部が閉じられた円筒形状に形成される。
【００６４】
カメラユニット１２ａは、上面視で円形に形成され、ＣＣＤやＣＭＯＳのような撮像素子を用いたカメラ２０を含む。カメラ２０は、後述するように、撮像処理および通信処理を行う電子部品と電気的に接続され、このような電子部品などがカメラユニット１２ａの筐体内に収納される。ミラー部１２ｂは、上面視で円形に形成され、曲面ミラー３０および当該曲面ミラー３０を固定する固定部材３２を含む。曲面ミラー３０は、上面視で円形に形成され、カメラ２０に対向して設けられる。また、曲面ミラー３０は、カメラ２０側に突出する凸面（この実施例では、双曲面）を有している。固定部材１２ｃは、円筒形状であり、透明の樹脂またはガラスで形成される。固定部材１２ｃの高さ（長さ）は、所定の長さに決定される。後述するように、撮像装置１２を所定の面上に置いた場合に、当該所定の面に平行な光線方向で当該所定の面に沿って進む光が曲面ミラー３０の端部で反射されるように、カメラ２０と曲面ミラー３０との位置関係および曲面ミラー３０の形状（面の形状）が決定される。したがって、このような位置関係となるように、固定部材１２ｃの高さが決定される。ただし、曲面ミラー３０で反射された光は、カメラ２０の広角レンズ２２を介して撮像素子に入射される。
【００６５】
図３は、カメラユニット１２ａの電気的な構成を示すブロック図である。カメラユニット１２ａは、ＣＰＵ１００を含み、ＣＰＵ１００は、内部バス１０２を介して、上述したカメラ２０に接続されるとともに、ＲＯＭ１０４、ＲＡＭ１０６および通信モジュール１０８に接続される。
【００６６】
ＣＰＵ１００は、カメラユニット１２ａの全体的な制御を司る。ＲＯＭ１０４には、カメラユニット１２ａの制御プログラムが記憶される。ＲＡＭ１０６は、ＣＰＵ１００のワーク領域およびバッファ領域として使用される。通信モジュール１０８は、たとえば、無線ＬＡＮに接続する機能を有する。したがって、撮像装置１２は、外部のコンピュータ（この実施例では、コンピュータ１４）と直接またはネットワークを介して通信することができる。
【００６７】
図１に戻って、コンピュータ１４は、汎用のパーソナルコンピュータやサーバ等であり、この実施例では、撮像装置１２のホストコンピュータとして機能する。詳細な説明は省略するが、コンピュータ１４は、ＣＰＵ１４ａおよびＲＡＭ１４ｂとともに、通信モジュールやＨＤＤなどのコンポーネントを備えている。
【００６８】
たとえば、撮像装置１２は、机上や壁面（白板などを含む）のような所定の面上に載置ないし設置され、コンピュータ１４は、撮像装置１２の周囲に存在する物体（オブジェクト）の位置を算出（検出）する。この実施例では、ユーザの指が所定の面に接触（タッチ）しているかどうかを判定し、当該指の位置（現実空間における３次元位置）を算出するようにしてある。
【００６９】
なお、この実施例では、撮像装置１２の周囲に存在するオブジェクトの位置を算出するようにしてあるが、単に、撮像装置１２の周囲に存在するオブジェクトが所定の面に接触しているかどうか、撮像装置１２の周囲にオブジェクトが存在するかどうかを判断することもできる。
【００７０】
図４（Ａ）は撮像装置１２が或る設置面に設置された場合にカメラ２０の広角レンズ２２に入射される光（光線）の光路の一部を示す。この実施例では、カメラ２０の画角は１８０度に設定される。したがって、光路Ｌ１で示すように、カメラ２０の光軸に対して垂直な光も広角レンズ２２を介して撮像素子に入射される。また、曲面ミラー３０で反射された光も広角レンズ２２を介して撮像素子に入射される。この実施例では、曲面ミラー３０は、上述したように、カメラ２０側に突出した双曲面を有し、設置面に平行であり、この設置面に沿って進む光も広角レンズ２２を介して撮像素子に入射可能な形状にされる。ただし、光路Ｌ２で示すように、設置面に平行であり、この設置面に沿って進む光は、曲面ミラー３０の端部（最外周）で反射される。
【００７１】
したがって、カメラ２０で撮影される撮影画像のうち、曲面ミラー３０に相当する部分の部分画像Ｃ１（図４（Ｂ）参照）には、その中央にカメラ２０自体が写り、中央から曲面ミラー３０の端部まで、撮像装置１２の周囲の環境が写る。撮像装置１２の周囲とは、円筒の側面方向についての全方位（３６０度の方位）を意味する。以下、同様である。また、曲面ミラー３０以外の部分に相当する部分画像Ｃ２（図４（Ｂ）参照）には、曲面ミラー３０の固定部材３２と、撮像装置１２の周囲（円筒の側面方向）の環境が写る。
【００７２】
カメラ２０は、広角レンズ２２を有し、この広角レンズ２２によって撮像素子（イメージセンサ）に被写体像を結像させる。撮像素子は、結像された被写体像に対応する光学像を電気信号に変換し、これによって、撮像画像信号が得られる。撮像画像信号に対してＡ／Ｄ変換、ＹＵＶ変換、ガンマ補正、色補正などの所定の画像処理が施され、これによって撮影画像に対応する撮影画像データが生成される。この撮影画像データがカメラ２０からＣＰＵ１００に与えられ、ＣＰＵ１００は撮影画像データをＲＡＭ１０６に一時記憶した後、通信モジュール１０８を用いてコンピュータ１４に送信する。
【００７３】
図４（Ｂ）は、図４（Ａ）に示す撮像装置１２に設けられるカメラ２０の撮影画像（カメラ画像）の一例を示す。撮影画像は、二重の円で示される円形の画像を含む。撮影画像のうち、円形の部分画像Ｃ１は曲面ミラー３０の部分についての画像（ミラー画像）であり、部分画像Ｃ１に隣接し、この部分画像Ｃ１を囲む、ドーナツ状の部分画像Ｃ２は曲面ミラー３０以外の部分についての画像である。つまり、部分画像Ｃ２は、曲面ミラー３０で反射された被写体像ではなく、カメラ２０で直接的に撮影された被写体像についての画像である。
【００７４】
このように、この実施例の撮像装置１２は、部分画像Ｃ１および部分画像Ｃ２の両方に、撮像装置１２の周囲に存在するオブジェクトの画像が含まれるように（図２、図５（Ａ）、（Ｂ）参照）、カメラ２０と曲面ミラー３０の位置関係および曲面ミラー３０の形状が決定される。
【００７５】
なお、図４（Ｂ）では、簡単のため、部分画像Ｃ１および部分画像Ｃ２の具体的な内容については省略してある。実際には、撮像装置１２が配置される部屋に存在する物（たとえば、机、壁、扉）および人間などが撮影され、その撮影された画像が表示される。これらのことは、後述する他の撮影画像についても同様である。
【００７６】
また、撮影画像において、部分画像Ｃ２よりも大きい四角枠は、カメラ２０の撮像素子の撮像面の全範囲に相当する。また、撮影画像の全範囲のうち、この実施例の撮像装置１２に設けられるカメラ２０で撮影されない範囲（画角を超える範囲）については黒色となるが、図面では斜線を付して示してある。他の図面においては、撮影画像のうち、黒色となる範囲については省略することにする。
【００７７】
この実施例では、部分画像Ｃ１および部分画像Ｃ２を用いることにより、撮像装置１２の周囲に存在するオブジェクト（たとえば、ユーザの指）が、この撮像装置１２を設置している設置面に接触（タッチ）しているかどうかを判定するとともに、オブジェクトの位置（現実空間における３次元位置）を算出することができる。ただし、オブジェクトの位置は、撮像装置１２が設置されている設置面上の所定の位置を基準にして算出されたローカル座標系の３次元位置である（図６（Ａ）、図７（Ａ）参照）。たとえば、基準となる所定の位置は、カメラ２０の光軸と設置面の交点に設定されるが、これに限定される必要はない。ただし、カメラ２０の光軸と設置面の交点を基準にすると、オブジェクトの３次元位置の算出が比較的簡単である。また、ローカル座標系のＸ軸およびＹ軸の向きは、カメラ２０の撮影面（撮像素子）のＸ軸（横）およびＹ軸（縦）の向きとそれぞれ一致される。
【００７８】
図５（Ａ）は、ユーザが指で、撮像装置１２を設置した面をタッチした場合（タッチ時）の撮影画像の一例であり、図５（Ｂ）は、ユーザが指で、撮像装置１２を設置した面をタッチしていない場合（非タッチ時）の撮影画像の一例である。ただし、図５（Ａ）および図５（Ｂ）においては、部分画像Ｃ１内の指の画像は一部のみを示してある。
【００７９】
図５（Ａ）に示すように、タッチ時では、部分画像Ｃ１に表示される指の画像が曲面ミラー３０の画像の端部に触れている。また、図５（Ｂ）に示すように、非タッチ時では、部分画像Ｃ１に表示される指の画像が曲面ミラー３０の画像の端部から離れている。これは、上述したように、設置面と平行であり、この設置面に沿って進行する光が曲面ミラー３０の端部で反射され、広角レンズ２２を介して撮像素子に入射されるからである。
【００８０】
次に、タッチ時および非タッチ時のそれぞれについて、ローカル座標系の３次元位置を算出方法について説明する。たとえば、ローカル座標系のＸＹ平面は、撮像装置１２を設置した設置面に設定され、その中心は撮影画像の中心すなわちカメラ２０の光軸と設置面との交点に設定される。また、撮影画像の横方向がＸ軸に設定され、撮影画像の縦方向がＹ軸に設定される。そして、ＸＹ平面に対して垂直な方向にＺ軸が設定される。
【００８１】
図６（Ａ）および図６（Ｂ）は、撮像装置１２の設置面をタッチしている場合（タッチ時）の部分画像Ｃ１および部分画像Ｃ２に設定されたローカル座標系および部分画像Ｃ１内のオブジェクトの画像（オブジェクト画像）の位置Ｕおよび部分画像Ｃ２内のオブジェクト画像の位置Ｔを示す。ただし、オブジェクト画像の位置は、撮像装置１２の設置面に、接触している位置または最も接近している位置であり、具体的には、指先に相当する位置である。
【００８２】
ここでは、簡単のため、オブジェクト画像の位置Ｕおよび位置ＴがＸ軸上である場合について説明する。ただし、位置Ｕおよび位置ＴがＸ軸上に無い場合には、設置面（ＸＹ平面）上の２次元座標については、Ｘ軸を基準として、Ｘ軸と位置Ｕおよび位置Ｔを通る直線とがなす角度（局座標の回転角）θを用いて表される。後述する図７（Ａ）、（Ｂ）についても同様である。
【００８３】
また、ここでは、カメラ２０の広角レンズ２２に歪みが無いと仮定し、双曲面の曲面ミラー３０に代えて円錐面の曲面ミラー３０が設けられているものと仮定する。また、撮像装置１２の設置面と、曲面ミラー３０の端（最外周）の高さが同じであると仮定する。後述する図７（Ａ）、（Ｂ）についても同様である。なお、実際には、広角レンズ２２や曲面ミラー３０の歪みによって、撮影画像にも歪みが発生しているため、この歪みが補正された後に、３次元位置が算出される。ただし、３次元位置の算出を行うときに、歪み補正も行うようにしてもよい。したがって、歪みによる誤差を低減または無くして、オブジェクトの３次元位置を検出することができる。
【００８４】
図６（Ａ）に示すように、部分画像Ｃ１内のオブジェクト画像（位置Ｕ）が部分画像Ｃ１の端部に接触している場合には、上述したように、ユーザが指で設置面をタッチしていることが判定される。したがって、この場合には、オブジェクトのローカル座標系における高さ（Ｚ座標）は０（ｚ＝０）である。
【００８５】
この場合、ローカル座標系における３次元座標は、数１に従って算出される。ただし、上述したように、設置面をユーザが指でタッチしているため、Ｚ座標は算出する必要はない。また、図６（Ａ）に示すように、ローカル座標系の原点（中心）から部分画像Ｃ２におけるオブジェクト画像の位置Ｔまでの長さをｒ（ピクセル）とし、中心から部分画像Ｃ２の外周までの長さをＲ（ピクセル）とする。また、図６（Ｂ）に示すように、カメラ２０の画角をαとし、画角αの基点である点Ｍから設置面までの距離（固定の長さ（高さ））ｈ（ｍｍ）としてある。実際のオブジェクトの位置Ｔまでの距離ｐ（ｍｍ）が算出され、これを用いてオブジェクトの３次元位置が算出される。
【００８６】
【数１】
0006393114.tif 000002
【００８７】
ただし、上述したように、この実施例のカメラ２０の画角αは１８０度であるが、これをそのまま使用すると、数１においては、距離ｐ（ｍｍ）が無限大になってしまうため、たとえば、αは１７９度またはこの近傍の値（１８０度未満の値）に設定される。ただし、撮像装置１２が設置された設置面の範囲内だけでオブジェクトの位置を算出する場合には、この設置面の大きさ（たとえば、机の広さ)に応じてαの値を適宜設定してもよい。したがって、画角αは１８０度に限定される必要はない。
【００８８】
図７（Ａ）に示すように、部分画像Ｃ１内のオブジェクト画像（位置Ｕ）が部分画像Ｃ１の端部に接触していない場合には、上述したように、ユーザが指で設置面をタッチしていないことが判定される。この場合には、図７（Ａ）および図７（Ｂ）に示すように、実際の（現実空間における）オブジェクトの位置Ｔよりも中心から離れているように写る。かかる場合には、数２に従ってオブジェクトの３次元位置が算出される。ただし、部分画像Ｃ１の半径（中心からミラー画像の端部までの距離）をｂ（ピクセル）とし、部分画像Ｃ１におけるオブジェクト画像の位置Ｕと部分画像Ｃ１の端部の距離をａ（ピクセル）とする。また、曲面ミラー３０の高さをｄ（ｍｍ）とし、部分画像Ｃ１における中心から部分画像Ｃ２における見かけのオブジェクト画像の位置Ｔ´までの距離をｒ´（ピクセル）とし、そして、部分画像Ｃ１における中心から部分画像Ｃ２における見かけのオブジェクト画像の位置Ｔ´までの距離をｐ´（ｍｍ）としてある。
【００８９】
【数２】
0006393114.tif 000003
【００９０】
このように、オブジェクトが撮像装置１２の設置面に接触している場合と接触していない場合とで、当該オブジェクトのローカル座標系における３次元位置の算出方法が異なる。この実施例では、このような算出処理は、撮像装置１２からの撮影画像データを受信したコンピュータ１４で実行される。
【００９１】
なお、撮影命令は、コンピュータ１４から撮像装置１２に与えられ、これに応じて、撮像装置１２は撮影処理を実行し、撮影画像に対応する撮影画像データをコンピュータ１４に送信する。また、コンピュータ１４からの撮影命令によらず、撮像装置１２において所定時間毎に撮影処理を実行し、撮影画像に対応する撮影画像データをコンピュータ１４に送信してもよい。
【００９２】
また、この実施例では、部分画像Ｃ１（撮影画像）の中心を基準位置として、ローカル座標系におけるオブジェクトの３次元座標を算出するようにしてあるが、基準位置は部分画像Ｃの外周上の点、すなわち部分画像Ｃ１と部分画像Ｃ２の境界上の点であってもよい。このとき、部分画像Ｃ１の外周上の点のうち、オブジェクト画像の位置Ｕと最短距離となる点の位置が基準位置となる。また、同様に、部分画像Ｃ１に含まれるカメラ２０自体の画像の外周上の点の位置が基準位置に設定されてもよい。
【００９３】
図８は図１に示したコンピュータ１４に内蔵されるＲＡＭ１４ｂのメモリマップ３００の一例を示す。図８に示すように、ＲＡＭ１４ｂは、プログラム記憶領域３０２およびデータ記憶領域３０４を含む。
【００９４】
プログラム記憶領域３０２には、情報処理プログラムが記憶され、情報処理プログラムは、通信プログラム３０２ａ、画像取得プログラム３０２ｂ、歪み補正プログラム３０２ｃ、接触判定プログラム３０２ｄおよび位置検出プログラム３０２ｅなどを含む。
【００９５】
通信プログラム３０２ａは、撮像装置１２や他のコンピュータと通信するためのプログラムである。画像取得プログラム３０２ｂは、撮像装置１２から送信される撮影画像データを受信して、データ記憶領域３０４に記憶するためのプログラムである。
【００９６】
歪み補正プログラム３０２ｃは、撮影画像の歪みを補正するためのプログラムである。広角レンズ２２による歪みや曲面ミラー３０による歪みを補正する処理であり、画素の位置が補正される。補正するための係数は、画素単位で、使用する広角レンズ２２および曲面ミラー３０に応じて予め試験等により経験的に得られている。
【００９７】
接触判定プログラム３０２ｄは、オブジェクトが撮像装置１２の設置面に接触しているかどうかを判定するためのプログラムである。なお、詳細な説明は省略するが、たとえば、撮像装置１２が設置面に設置されたときに、オブジェクトが写り込まない状態で撮影画像（ここでは、「基準画像」という）を取得しておき、オブジェクトが撮像装置１２の周囲に存在するかどうか（オブジェクトの有無）は、予め取得しておいた基準画像と、その後に撮影される撮影画像との差分により、検出することができる。ただし、この実施例では、ユーザの指の位置を算出するので、肌色検出により、オブジェクト（指）の有無を検出するようにしてもよい。
【００９８】
位置検出プログラム３０２ｅは、撮像装置１２の周囲に存在するオブジェクトの現実空間における３次元位置を算出するプログラムである。上述したように、位置検出プログラム３０２ｅは、接触判定プログラム３０２ｄの判定結果に応じて、ローカル座標系の３次元位置を算出する。
【００９９】
図示は省略するが、プログラム記憶領域３０２には、コンピュータ１４で実行される各種のアプリケーションについてのプログラムが記憶される。
【０１００】
データ記憶領域３０４には、撮影画像データ３０４ａ、位置データ３０４ｂおよび基準画像データ３０４ｃが記憶される。
【０１０１】
撮影画像データ３０４ａは、撮像装置１２から受信した撮影画像データまたは受信した撮影画像データを歪み補正した撮影画像データである。位置データ３０４ｂは、撮影画像データに基づいて算出した撮像装置１２の周囲に存在するオブジェクトの３次元位置についての位置（座標）データである。したがって、複数のオブジェクトが撮像装置１２の周囲に存在する場合には、各オブジェクトについて３次元位置が算出され、オブジェクト毎の位置データが記憶される。基準画像データ３０４ｃは、上述した基準画像に対応する画像データである。
【０１０２】
なお、図示は省略するが、データ記憶領域３０４には、情報処理プログラム等のプログラムを実行するために必要な、他のデータが記憶されたり、フラグやタイマ（カウンタ）が設けられたりする。
【０１０３】
図９および図１０は、図１に示したコンピュータ１４に内蔵されるＣＰＵ１４ａの位置算出処理の一例を示すフロー図である。図９に示すように、ＣＰＵ１４ａは、位置算出処理を開始すると、ステップＳ１で、撮影画像を取得する。つまり、ＣＰＵ１４ａは、撮像装置１２から送信された撮影画像データを受信して、データ記憶領域３０４に記憶する。
【０１０４】
次のステップＳ３では、撮影画像の歪みを補正する。したがって、データ記憶領域３０４に記憶された撮影画像データは、歪みを補正されて、更新される。次のステップＳ５では、オブジェクトを検出する。ここでは、基準画像と撮影画像との差分からオブジェクトが検出される。ただし、複数（Ｎ個）のオブジェクトが検出された場合には、これ以降の処理において、各オブジェクトは識別可能に管理される。たとえば、各オブジェクトに、識別情報として、シリアルの番号（１、２、…、Ｎ）が付される。
【０１０５】
なお、基準画像に対応する基準画像データ３０４ｃは、予め取得され、データ記憶領域３０４に記憶されている。
【０１０６】
続くステップＳ７では、オブジェクトが有るかどうかを判断する。ステップＳ７で“ＮＯ”であれば、つまりオブジェクトが無ければ、そのまま位置算出処理を終了する。一方、ステップＳ７で“ＹＥＳ”であれば、つまりオブジェクトが有れば、ステップＳ９で、変数ｉを初期化する（ｉ＝１）。
【０１０７】
続いて、図１０に示すステップＳ１１では、ミラー画像（部分画像Ｃ１）に基づいて、オブジェクトｉが設置面に接触しているかどうかを判定する。つまり、ＣＰＵ１４ａは、着目しているオブジェクトｉのオブジェクト画像が部分画像Ｃ１の端部（外周）に接しているかどうかを判断する。
【０１０８】
次のステップＳ１３では、判定結果が接触であるかどうかを判断する。ステップＳ１３で“ＹＥＳ”であれば、つまりオブジェクトｉが設置面に接触している場合には、ステップＳ１５で、ミラー画像外の画像（部分画像Ｃ２）に基づいて、オブジェクトｉの３次元位置を算出する。ここでは、ＣＰＵ１４ａは、数１に従って、オブジェクトｉの３次元位置を算出する。ただし、オブジェクトｉは設置面に接触しているため、Ｚ座標（高さ）は０である。このとき、算出された３次元位置の位置データは、当該オブジェクトｉの識別情報に関連付けて、データ記憶領域３０４に記憶される。後述するステップＳ１７においても同じである。
【０１０９】
一方、ステップＳ１３で“ＮＯ”であれば、つまりオブジェクトｉが設置面に接触していない場合には、ステップＳ１７で、ミラー画像（部分画像Ｃ１）とミラー画像外の画像（部分画像Ｃ２）に基づいて、オブジェクトｉの３次元位置を算出する。ここでは、ＣＰＵ１４ａは、数２に従って、オブジェクトｉの３次元位置を算出する。
【０１１０】
そして、ステップＳ１９で、変数ｉがＮ以上である（ｉ≧Ｎ）かどうかを判断する。つまり、ＣＰＵ１４ａは、すべてのオブジェクトｉについて、接触判定を行うとともに、３次元位置を算出したかどうかを判断する。
【０１１１】
ステップＳ１９で“ＮＯ”であれば、つまり変数ｉがＮ未満であれば、ステップＳ２１で、変数ｉを１加算して（ｉ＝ｉ＋１）、次のオブジェクトｉについてステップＳ１１−Ｓ１７の処理を実行する。一方、ステップＳ１９で“ＹＥＳ”であれば、つまり変数ｉがＮ以上であれば、位置算出処理を終了する。
【０１１２】
なお、図９および図１０に示した位置算出処理は、アプリケーションからの要求に応じて実行されたり、所定の時間間隔で実行されたりする。また、コンピュータ１４（ＣＰＵ１４ａ）は、位置算出処理の実行に先立って、撮像装置１２に撮影命令を送信することがある。
【０１１３】
この実施例によれば、広角レンズを備えるカメラに対向して曲面ミラーを配置し、カメラの撮影画像に含まれるミラー部の画像とそれに隣接するミラー部外の画像の境界が撮像装置を設置した設置面に相当するので、ミラー部の画像におけるオブジェクトが当該画像の端部（外周）すなわち境界に接触しているかどうかに応じて、適切な算出方法でオブジェクトの３次元位置を算出することができる。
【０１１４】
また、この実施例によれば、オブジェクトが撮像装置の設置面に接触しているかどうかを判定するので、ユーザの指で設置面をタッチしているかどうかを判定することができる。かかる場合には、撮像装置およびコンピュータを含む情報処理システムをポインティングデバイスとして使用することができる。
【０１１５】
なお、この実施例では、撮像装置から撮影画像データを外部のコンピュータに送信し、当該コンピュータで接触の判定および位置の算出を行うようにしたが、これに限定される必要はない。ＣＰＵ１００の処理能力およびＲＡＭ１０６の容量が十分であれば、接触の判定および位置の算出を撮像装置１２（カメラユニット１２ａ）で行うようにしてもよい。かかる場合には、単体の撮像装置１２（カメラユニット１２ａ）が情報処理装置として機能する。また、かかる場合には、上述したような情報処理プログラムやデータ等はＲＡＭ１０６に記憶され、図９および図１０に示した位置算出処理がＣＰＵ１００によって実行される。
【０１１６】
また、この実施例では、撮像装置とコンピュータが無線または有線で通信可能に接続される旨を説明したが、これらはインターネットのようなネットワークを介して接続されてもよい。かかる場合には、コンピュータは、複数の撮像装置から撮影画像データを取得して、各撮像装置について、接触の判定および位置の算出を行うようにしてもよい。
【０１１７】
さらに、この実施例では、撮像装置が配置される環境が照明されていることを前提としたが、暗所においてもオブジェクトおよびオブジェクトの位置を検出できるように、ミラー部１２ｂおよび撮像装置１２の設置面に白色光を照明する照明装置を撮像装置に設けるようにしてもよい。
【０１１８】
さらにまた、この実施例では、ＣＣＤやＣＭＯＳのような撮像素子を用いたカメラを用いる場合について説明したが、これに限定される必要はない。たとえば、ＩＲカメラを用いることもできる。ＩＲカメラを用いる場合には、撮像装置の周囲に存在するオブジェクトおよびオブジェクトの位置を検出する場合に、撮像装置が設置される場所の明るさによる影響を低減することができる。また、ＩＲカメラがミラー部１２ｂおよび撮像装置１２の設置面に赤外線を放射するＩＲ−ＬＥＤを備えるようにすれば、暗所においても撮像装置の周囲に存在するオブジェクトおよびオブジェクトの位置を検出することができる。
【０１１９】
また、この実施例では、撮像装置の設置面と、曲面ミラーの端（最外周）の高さが同じであると仮定して説明したが、これに限定される必要はない。撮像装置の設置面と曲面ミラーの端の高さが異なる場合には、指の画像が曲面ミラーの画像（部分画像Ｃ１）において予め設定している基準線（部分画像Ｃ１と部分画像Ｃ２の境界とは異なる）に触れているか否かで、ユーザの指が設置面に接触（タッチ）しているかどうかを判定するようにしてもよい。
【０１２０】
さらに、この実施例では、撮像装置１２を机上のような水平の設置面上に置くようにしたが、これに限定される必要はない。撮像装置１２は、壁面やホワイトボードのような垂直の面に引っ付けてもよい。たとえば、壁面やホワイトボードには、両面テープやマグネットを用いて貼り付ければ（設置すれば）よい。たとえば、マグネットを用いる場合には、固定部材３２をマグネットで構成すればよい。このようにすれば、壁面やホワイトボードのような垂直な面に対するオブジェクトの接触の有無や当該面をＸＹ平面とした場合のオブジェクトの３次元位置を算出（検出）することができる。
【０１２１】
さらにまた、この実施例では、撮像装置を曲面ミラー側が設置面に設置されるように配置する場合に、全周に亘って設置面に平行な光を反射するようにしたが、これに限定される必要はない。曲面ミラーの一部（たとえば、１／４周、半周など）で設置面に平行な光を反射するように、カメラと曲面ミラーとの位置関係および曲面ミラーの形状が決定されてもよい。たとえば、設置面に平行な光を反射する部分が曲面ミラーの１／４周である場合には、その部分以外の部分をホワイトボードのいずれか１つの角部に合わせるように撮像装置を設置すれば、撮影画像に基づいて、ホワイトボード上のオブジェクトの有無やオブジェクトの位置を検出することができる。また、設置面に平行な光を反射する部分が曲面ミラーの半周である場合には、その部分以外の部分をホワイトボードのいずれかの辺の外側に向けるように撮像装置を当該辺上または当該辺の近傍に設置すれば、撮影画像に基づいて、ホワイトボード上のオブジェクトの有無やオブジェクトの位置を検出することができる。
【０１２２】
また、この実施例では、オブジェクトとしてユーザの指を検出するようにしたが、これに限定される必要はない。たとえば、図１１に示すように、フィギュアのような他のオブジェクトを検出するようにしてもよい。ただし、図１１では、一例として、２つのフィギュア２００、２０２が撮像装置１２の周囲に配置されている。撮影画像を用いて、オブジェクトの有無を判断する方法、オブジェクトが設置面に接触しているかどうかを判定する方法およびオブジェクトの位置を算出する方法は、上記の実施例と同様である。ただし、オブジェクトの有無を判断する場合には、撮影画像において、フィギュア（２００、２０２）の色または模様の有無を検出するようにすればよい。ただし、色または模様に代えて、または、これらとともに、フィギュア（２００、２０２）に付された特定の文字や図形を撮影画像から認識して、フィギュア（２００、２０２）の有無を検出するようにしてもよい。また、特定の色、模様、文字または図形或いはこれらのいずれか２つ以上の組み合わせを認識することにより、フィギュア（２００、２０２）の種類を特定することもできる。
【０１２３】
さらに、図１２に示すような用紙２１０を用いることにより、情報処理システム１０をユーザインターフェイス（ＵＩ)として使用することができる。たとえば、用紙２１０には、操作ボタンに相当するボタン図柄が描画されている。また、撮像装置１２および用紙２１０の向きおよび位置は、予め決定された相対的な向きおよび位置に設定される。上述の実施例で示したように、コンピュータ１４は、ユーザの指が撮像装置１２の設置面に接触したかどうかを判定する。コンピュータ１４は、接触したことを判定すると、接触している指の位置を算出して、用紙２１０上のタッチされたボタン図柄を判定する。そして、コンピュータ１４は、ユーザの指が接触していることが判断されたボタン図柄（操作ボタン）に設定されたコマンドをアプリケーションに出力する。
【０１２４】
また、用紙２１０に描画する内容を変えることにより、他のＵＩとして使用することもできる。たとえば、仮想のゲーム空間で実行されるロールプレイングゲームのマップと同様のマップを用紙２１０に描画し、用紙２１０上に図１１に示したようなフィギュア（２００、２０２）を配置したり、用紙２１０上でフィギュア（２００、２０２）を移動させたりする。コンピュータ１４は、用紙２１０上におけるフィギュア（２００、２０２）の位置を算出して、算出した位置を仮想のゲーム空間におけるプレイヤキャラクタなどのキャラクタの位置に反映する。
【０１２５】
また、図１３に示すように、専用のディスプレイ２２０を設けて、当該ディスプレイ２２０を用いてタッチ操作を実行することもできる。ただし、図１３では、異なる２人のユーザの手を図示してある。たとえば、ディスプレイ２２０は、コンピュータ１４に接続され、ＣＰＵ１４ａの指示の下、コンピュータ１４に内蔵される表示コントローラによって表示を制御される。図１３に示す例のディスプレイ２２０は、円筒形状に形成され、撮像装置１２上に設置される。たとえば、ディスプレイ２２０の表示領域を分割せずに、１人のユーザまたは複数のユーザで使用することができる。また、ユーザの数に応じてディスプレイ２２０の表示領域を分割して個別に使用することもできる。
【０１２６】
また、図１４に示すように、撮像装置１２に、ディスプレイ（２３０ａ、２３２ａ）を着脱可能に設けるようにしてもよい。ただし、図１４では、異なる２人のユーザの手を図示してある。たとえば、図１４に示す例では、スマートフォンやタブレットＰＣのような、ディスプレイ（２３０ａ、２３２ａ）が一体型の電子機器（以下、「携帯端末」という）（２３０、２３２）が撮像装置１２上に設置される。携帯端末（２３０、２３２）は、コンピュータ１４と通信可能であり、コンピュータ１４から送信される操作データに従ってアプリケーションの処理を実行し、実行結果をディスプレイ（２３０ａ、２３２ａ）に表示する。つまり、この場合には、撮像装置１２およびコンピュータ１４で構成される情報処理システム１０が共通のポインティングデバイスとして使用され、コンピュータ１４はユーザ毎のタッチ操作を検出して、検出したタッチ操作に応じた操作データを対応する携帯端末に送信（入力）するのである。つまり、かかる場合には、情報処理システム１０を携帯端末（２３０、２３２）の入力装置として用いることができ、携帯端末（２３０、２３２）の画面の全体を見ながら入力することができる。
【０１２７】
ただし、複数のユーザで情報処理システム１０（撮像装置１２）を共通に使用するため、使用に先立って、ユーザと携帯端末（２３０、２３２）とを対応付ける処理が必要である。
【０１２８】
さらに、図１５（Ａ）に示すように、電気的な構成を有していない樹脂性の操作部２４０を用いることにより、情報処理システム１０をコントローラとして使用することもできる。たとえば、操作部２４０には、ハンドル２４０ａおよびレバー２４０ｂが設けられ、図１５（Ａ）に示す操作部２４０の背面側には、図１５（Ｂ）に示すような表示窓２４０ｃが設けられる。図１５（Ｂ）に示すように、ハンドル２４０ａの操作に連動して左右に移動するマーカ２４２が操作部２４０の筐体内であって、表示窓２４０ｃが設けられる位置に配置される。具体的には、ユーザがハンドル２４０ａを右に切ると、図１５（Ｂ）において、マーカ２４２が右に移動される。したがって、表示窓２４０ｃを通して見えるマーカ２４２の長さが短くなる。一方、ユーザがハンドル２４０ａを左に切ると、図１５（Ｂ）において、マーカ２４２が左に移動される。したがって、表示窓２４０ｃを通して見えるマーカ２４２の長さが長くなる。コンピュータ１４は、撮像装置１２で撮影される撮影画像のうち、表示窓２４０の縦方向の長さに対する、表示窓２４０ｃを通して見えるマーカ２４２の縦方向の長さに応じて、ハンドル２４０ａが左右のどちらにどの程度切られているか（回転角度）を知ることができる。
【０１２９】
図示は省略するが、レバー２４０ｂについても同様に、その傾きに連動して上下に移動するマーカ（マーカ２４２とは異なる）が操作部２４０の内部に設けられる。このマーカも表示窓（表示部２４０ｃとは異なる）を通して見える。したがって、レバー２４０ｂの傾き方向および傾き量についても撮影画像から知ることができる。
【０１３０】
したがって、コンピュータ１４は、撮影画像から、ハンドル２４０ａを切っている方向および切っている量を検出するとともに、レバー２４０ｂの傾き方向および傾き量を検出して、検出した情報をカーレースゲームのようなアプリケーションに与える。たとえば、操作部２４０を用いると、情報処理システム１０によって、タッチ操作以外の操作を行うことができる。また、操作部２４０に電気的な構成を設ける必要がないため、電池（一次電池または二次電池）を内蔵するなどの電力供給が不要である。
【０１３１】
また、図１６（Ａ）に示す例では、撮像装置１２が上述の実施例で示した場合と上下逆向きに設置面に設置される。このようにしても、１８０度の画角を有するカメラ２０を備えるので、撮影画像に基づいて、ユーザが設置面をタッチしているかどうかを判定することができる。これは、カメラ２０の画角が１８０度であり、水平な設置面に撮像装置１２を置いた場合に、当該設置面に平行な方向の光を撮影（取得）することができるからである。
【０１３２】
たとえば、図１６（Ａ）に示すように、ユーザが設置面をタッチすると、図１６（Ｂ）に示すような撮影画像が得られる。この場合には、ユーザが設置面をタッチしたかどうかは、部分画像Ｃ２において、ユーザの指の画像が部分画像Ｃ２の端部（外周）に接しているかどうかで判断される。
【０１３３】
図１６（Ｂ）は、ユーザが撮像装置１２の設置面をタッチしている場合の撮影画像の位置を示す。部分画像Ｃ２には、ユーザの指先に相当する部分の画像は撮影されない。これは、図１６（Ａ）に示すように、カメラユニット１２ａの厚みの分だけ、カメラ２０の撮影範囲が設置面の上方に平行移動されるからである。
【０１３４】
したがって、厳密に言うと、ユーザの指が設置面にタッチしたかどうかを判定することはできない。このため、図１６（Ａ）に示した状態で撮像装置１２を使用する場合には、コンピュータ１４は、部分画像Ｃ２の端部に指の画像が接したことによって、ユーザが設置面にタッチしたと判定するようにしてある。このように、上述の実施例とは逆向きに撮像装置１２を設置した場合であっても、タッチの有無を判定することができる。
【０１３５】
また、図１６（Ａ）に示すように、撮像装置１２を設置した場合においても、曲面ミラー３０の端部には設置面に平行な光線が入射されるため、部分画像Ｃ１と部分画像Ｃ２の境界（部分画像Ｃ１の端部）に接触するオブジェクト画像が存在する場合には、設置面に平行な面に接触するオブジェクトが存在することを検出することができる。したがって、たとえば、図１１に示したようなフィギュア（２００、２０２）が置かれていることは、部分画像Ｃ１に基づいて判断することもできる。
【０１３６】
また、上述の実施例では、双曲面の曲面ミラー３０を用いるようにしたが、これに限定される必要はない。たとえば、図１７（Ａ）−（Ｄ）に示すように、楕円面、円錐面または複合面の曲面ミラー（３０ａ、３０ｂ、３０ｃ）を用いることもできる。
【０１３７】
上述の実施例で示した双曲面の曲面ミラー３０は、その端で撮像装置１２の設置面と平行な光線になるように設計し、当該設置面よりも上空のものが曲面ミラー３０に映り込むことになる。したがって、双曲面の曲面ミラー３０は、図１１で示したようなフィギュア（２００、２０２）など、設置面上に配置された立体物を認識したい場合に有効である。
【０１３８】
図１７（Ａ）に示す楕円面の曲面ミラー３０ａは、双曲面の曲面ミラー３０の場合と同様に、曲面ミラー３０ａの端で設置面と平行な光線になるように設計すると、設置面を俯瞰するように曲面ミラー３０ａに像が映り込むことになる。そのため、設置面上の平らなオブジェクト（たとえば、カードや図１２に示した用紙２１０）を読み取る際には有効である。
【０１３９】
また、図１７（Ｂ）に示す円錐面の曲面ミラー３０ｂは、平坦な斜面を有するため、高さ方向に歪みが発生しない。このため、上述の実施例でも説明したように、曲面ミラー３０ｂの反射像から測定点(たとえば、指先)の高さを算出するのが簡単である。ただし、円錐面の曲面ミラー３０ｂについても、その端で撮像装置１２の設置面と平行な光線になるように設計される。
【０１４０】
このように、想定される使用状況に応じて、双曲面、楕円面または円錐面のいずれかを選択して撮像装置１２を構成することになるが、図１７（Ｃ）および図１７（Ｄ）に示すように、曲面を合成（複合）することも可能である。
【０１４１】
図１７（Ｃ）に示す複合面の曲面ミラー３０ｃでは、設置面（固定部材３２）付近では双曲面であり、カメラ２０の方向に突出する（上方に向かう）に従って楕円面となるように、曲面が合成される。このようにすれば、双曲面の場合の利点と楕円面の場合の利点を有する曲面ミラー３０ｃが形成される。ただし、これは一例であり、同じ複合面の曲面ミラー３０ｃであっても、図１７（Ｄ）に示すように、設置面付近と上方で、異なる角度で傾斜する円錐面を合成してもよい。
【０１４２】
また、上述の実施例では、全方位を撮影可能なカメラ２０を設けるようにしたが、一方向を撮影するカメラであっても、同様に、タッチの有無を検出することができる。図１８（Ａ）は、携帯電話機のようなカメラ付きの携帯端末２５０を充電台２６０に置いた状態を示す。ただし、図１８（Ａ）では、携帯端末２５０の筐体の一部および筐体内に設けられるカメラ２５２のみを示し、充電台２６０についても筐体の一部および筐体内に設けられるミラー２６２ａおよびミラー２６２ｂのみを示してある。
【０１４３】
図１８（Ａ）に示すように、携帯端末２５０は充電台２６０に横にして載置される。このとき、カメラ２５２は、たとえば、携帯端末２５０の底面から水平方向を撮影する。また、充電台２６０の筐体の一部には、この充電台２６０を設置した設置面に平行な光をカメラ２５２で撮影するための開口２６０ａが形成され、開口２６０ａの近傍には、上記の平行な光をカメラ２５２の画角内に導くためのミラー２６２ａおよびミラー２６２ｂが配置される。また、充電台２６０の筐体の他の一部には、この充電台２６０に装着（載置）した携帯端末２５０のカメラ２５２の撮影方向と対向する位置に開口２６０ｂが形成される。
【０１４４】
たとえば、開口２６０ａは、図１８（Ａ）に示す状態において、ミラー２６２ａの下端部からミラー２６２ｂの下端部までの縦幅を有し、横幅はカメラ２５２の水平方向の画角によって決定される。また、開口２６０ｂは、ミラー２６２ｂで反射された光をカメラ２５２に導く大きさに決定される。さらに、図１８（Ａ）からも分かるように、ミラー２６２ａおよびミラー２６２ｂは、いずれも平面のミラーであり、反射面が互いに対向するように配置される。
【０１４５】
図１８（Ａ）に示すような構成では、カメラ２５２の画角の略下半分において、ミラー２６２ａおよびミラー２６２ｂで反射された光が入射される。また、カメラ２５２の画角略上半分においては、充電台２６０の筐体で撮影方向が遮蔽されていないため、直接光が入射される。したがって、カメラ２５０では、図１８（Ｂ）に示すように、ミラー２６２ｂに相当する部分の部分画像Ｃ１およびミラー２６２ｂに相当しない部分の部分画像Ｃ２を含む撮影画像が撮影される。ただし、図１８（Ｂ）では、指の画像以外の画像については省略してある。また、図１８（Ｂ）では、簡単のため、部分画像Ｃ２を斜線で示してあるが、図１８（Ａ）に示すような状況においては、たとえば、部分画像Ｃ２には、指の第２関節から指の付け根についての画像が含まれる。
【０１４６】
図１８（Ｂ）に示すように、撮影画像のうち、部分画像Ｃ１（撮影画像）の下端部が充電台２６０を設置している設置面に相当し、部分画像Ｃ１の下端部に指の画像が接触している場合に、設置面にタッチしていることが判定される。また、部分画像Ｃ１の下端部に指の画像が接触していない場合には、設置面にタッチしていないことが判定される。
【０１４７】
この場合、携帯端末２５０および充電台２６０が、上述の実施例で示した撮像装置１２として機能する。
【０１４８】
なお、たとえば、所定の位置をタッチしている場合に、カメラ２５２で撮影された撮影画像において、部分画像Ｃ１の指の画像の大きさ（指の太さ）や部分画像Ｃ２の指の画像の大きさ（指の太さ）を予め検出しておく。そして、今回の撮影画像から上記の所定の位置を基準としてカメラ２５２側から見た場合の指の左右の位置を検出し、また、今回の撮影画像における指の画像の大きさと比較することによって、上記の所定の位置を基準としてカメラ２５２側から見た場合の指の奥行き方向の位置を検出することができる。
【０１４９】
また、図１９（Ａ）に示すように、携帯電話機のような携帯端末２７０を縦置きで充電台２８０に挿し込んでいる場合にも、図１８（Ａ）および図１８（Ｂ）に示した場合と同様に、タッチの有無を検出することができる。ただし、図１９（Ａ）では、携帯端末２７０の概略を示し、充電台２８０については筐体の一部および筐体内に設けられる曲面ミラー２８２および広角レンズ２８４のみを示してある。
【０１５０】
図１９（Ａ）に示すように、携帯端末２７０は充電台２８０に縦（少し斜め向き）にして挿し込まれる。このとき、カメラ２７２（図１９（Ａ）ではレンズのみを示す）は、たとえば、携帯端末２７０の底面から下向きに撮影する。また、充電台２８０の筐体の一部には、この充電台２８０を設置した設置面に平行な光をカメラ２７２で撮影するための開口２７０ａが形成される。また、筐体の内部には、上記の平行な光をカメラ２７２に導くための曲面ミラー２８２が設けられる。また、筐体の内部には、携帯端末２７０を充電台２８０に挿し込んだ場合に、カメラ２７２の画角を拡大するための広角レンズ２８４が設けられる。
【０１５１】
たとえば、開口２８０ａは、図１９（Ａ）に示す状態において、充電台２８０の筐体内部の底面から天井面までの縦幅を有し、充電台２８０の横幅（図１９（Ａ）では、紙面に対して垂直な方向の幅）と略同じ幅の横幅を有している。
【０１５２】
図１９（Ａ）に示すような構成では、図１９（Ｂ）に示すように、曲面ミラー２８２の部分の部分画像Ｃ１と曲面ミラー２８２以外の部分の部分画像Ｃ２とを含む撮影画像がカメラ２７２で撮影される。図１９（Ｂ）に示すように、部分画像Ｃ１と部分画像Ｃ２の境界が充電台２７０を設置した設置面に相当する。ただし、図１９（Ｂ）では、指の画像以外の画像については省略してある。
【０１５３】
したがって、部分画像Ｃ１において、部分画像Ｃ２との境界（部分画像Ｃ１の下端部）に指の画像が接触している場合に、ユーザの指が設置面にタッチしていることが判定される。また、部分画像Ｃ１の下端部に指の画像が接触していない場合には、ユーザの指が設置面にタッチしていないことが判定される。
【０１５４】
また、図１９（Ｂ）に示す撮影画像において、部分画像Ｃ２の指の画像の先端と部分画像Ｃ１との境界までの距離が、図１９（Ａ）における指先と曲面ミラー２８２の下端までの距離に相当する。
【０１５５】
したがって、上述の実施例で示した場合と同様に、部分画像Ｃ１および部分画像Ｃ２を用いて、タッチしているか否かを判定し、判定結果に応じて指の位置を算出することができる。
【０１５６】
この場合、携帯端末２７０および充電台２８０が、上述の実施例で示した撮像装置１２として機能する。
【０１５７】
なお、図１９（Ａ）および図１９（Ｂ）に示す例では、曲面ミラー２８２を用いるようにしたが、平面ミラーを用いるようにしてもよい。
【０１５８】
また、上述の実施例では、曲面ミラー３０を用いて全方位を撮影可能な撮像装置１２を構成した場合について説明したが、他の実施例として、プロジェクタ装置１６を構成することも可能である。
【０１５９】
図２０（Ａ）に示すように、プロジェクタ装置１６は、プロジェクタユニット１６ａ、ミラー部１６ｂおよびこれらを固定する固定部材１６ｃによって構成され、プロジェクタユニット１６ａおよびミラー部１６ｂによって両端部が閉じられた円筒形状に形成される。
【０１６０】
プロジェクタユニット１２ａは、上面視で円形に形成され、ＲＧＢの三原色をそれぞれ発光する光源および当該光源を駆動する駆動装置を備え、これらを含む電子部品が筐体内に収納される。プロジェクタユニット１６ａのブロック図は省略するが、図３に示したカメラユニット１２ａのブロック図において、カメラ２０を駆動装置に置き換えて、駆動装置に光源を接続すればよい。
【０１６１】
曲面ミラー５０は、プロジェクタユニット１６ａ側に突出し、楕円面を有している。固定部材１６ｃは、円筒形状であり、透明の樹脂またはガラスで形成される。固定部材１６ｃの高さ（長さ）は、所定の長さに決定される。たとえば、プロジェクタ装置１６を所定の面上に置いた場合に、当該所定の面に所望の画像を投影するように、プロジェクタユニット１６ａ（光源）と曲面ミラー５０との位置関係および曲面ミラー５０の形状（面の形状）が決定される。したがって、このような位置関係となるように、固定部材１６ｃの高さが決定される。
【０１６２】
ただし、図２０（Ａ）に示す例では、プロジェクタユニット１６ａには、広角レンズ４０が設けられるため、プロジェクタ装置１６の周囲（円筒の側面方向）にも画像を投影することができる。つまり、プロジェクタ装置１６は、自身が設置された設置面と、この設置面と交差する面に、画像を投影することができる。
【０１６３】
たとえば、ホストコンピュータであるコンピュータ１４から投影するための画像データ（以下、「投影画像データ」という）を送信することにより、プロジェクタ装置１６がこれを受信して、投影画像データに対応する画像を投影することができる。ただし、プロジェクタ装置１６内のＲＯＭ（フラッシュメモリなどでもよい）に予め投影画像データを記憶しておくことにより、この予め記憶しておいた投影画像データに対応する画像を投影することもできる。したがって、プロジェクタ装置１６およびコンピュータ１４を備える情報処理システムが構成されたり、プロジェクタ装置１６が情報処理システムとして機能したりする。
【０１６４】
また、図２０（Ｂ）に示すように、上述の実施例で示した撮像装置１２と、図２０（Ａ）に示したプロジェクタ装置１６とを含む電子機器６０を構成することも可能である。図２０（Ｂ）に示す例では、撮像装置１２上にプロジェクタ装置１６が設置される。たとえば、撮像装置１２のカメラ２０の光軸とプロジェクタユニット１６ａの光源の光軸とは一致される。また、撮像装置１２およびプロジェクタ装置１６は、それぞれ、コンピュータ１４と通信可能に接続される。つまり、コンピュータ１４と電子機器６０を備える情報処理システムが構成される。
【０１６５】
このような情報処理システムでは、たとえば、図１２に示したような用紙２１０に代えて、ボタンの図柄をプロジェクタ装置１６によって電気機器６０の設置面に投影することができる。そして、コンピュータ１４は、撮像装置１２の撮影画像を取得し、この撮影画像に基づいて、ユーザがタッチした位置を検出し、タッチしたボタン図柄を決定して、決定したボタン図柄（操作ボタン）に設定されたコマンドをアプリケーションに出力する。したがって、電子機器６０およびコンピュータ１４によってコントローラが実現される。
【０１６６】
また、ボタンの図柄に代えて、ゲームマップをプロジェクタ装置１６によって設置面に投影し、設置面上で図１１に示したようなフィギュア（２００、２０２）を移動させるようにしてもよい。かかる場合には、撮像装置１２の撮影画像からゲームマップ上のフィギュア（２００、２０２）の位置を算出して、アプリケーション（ゲーム）の処理に反映することもできる。
【符号の説明】
【０１６７】
１０  …情報処理システム
１２  …撮像装置
１４  …コンピュータ
１６  …プロジェクタ装置
２０  …カメラ
２２,４０  …広角レンズ
３０,５０  …曲面ミラー
【図１】
0006393114.tif 000004
【図２】
0006393114.tif 000005
【図３】
0006393114.tif 000006
【図４】
0006393114.tif 000007
【図５】
0006393114.tif 000008
【図６】
0006393114.tif 000009
【図７】
0006393114.tif 000010
【図８】
0006393114.tif 000011
【図９】
0006393114.tif 000012
【図１０】
0006393114.tif 000013
【図１１】
0006393114.tif 000014
【図１２】
0006393114.tif 000015
【図１３】
0006393114.tif 000016
【図１４】
0006393114.tif 000017
【図１５】
0006393114.tif 000018
【図１６】
0006393114.tif 000019
【図１７】
0006393114.tif 000020
【図１８】
0006393114.tif 000021
【図１９】
0006393114.tif 000022
【図２０】
0006393114.tif 000023