(57)【特許請求の範囲】
【請求項１】
移動体に搭載されたカメラから、画像を取得する画像取得部と、
前記移動体に搭載された、前記画像を構成する各画素の奥行き情報を検出する奥行き情報検出部から、前記奥行き情報を取得する奥行き情報取得部と、
パーティクルフィルタを用いて推定される前記カメラの位置姿勢を取得する取得部と、
閲覧を禁止する必要のある閲覧禁止多面体の２次元面内位置情報と高さ情報とを含む地図情報を管理する地図情報管理部と、
前記パーティクルフィルタの各サンプルの位置姿勢において、前記地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、前記閲覧禁止多面体が投影された画素における奥行き値を前記地図情報に基づいて算出し、各サンプルの位置姿勢において算出された各画素における奥行き値の最小値を、各画素の閲覧禁止奥行き判定値とする閲覧禁止奥行き判定値算出部と、
前記各サンプルの位置姿勢において、前記地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、当該投影したときのサンプルの尤度に基づく値を、前記閲覧禁止多面体が投影された画素に対して累積して、その累積値を各画素のマスク判定値とするマスク判定値算出部と、
前記画像取得部が取得した前記画像のうち、前記閲覧禁止奥行き判定値が前記奥行き情報よりも小さい画素で、かつ前記マスク判定値が所定の閾値よりも大きい画素の閲覧を禁止した閲覧画像を生成する閲覧画像生成部と、
備える画像処理装置。
【請求項２】
前記閲覧画像生成部により生成された閲覧画像を、情報処理装置に送信する送信部を更に備える請求項１に記載の画像処理装置。
【請求項３】
前記移動体に搭載された前記カメラは、ステレオカメラであり、
前記移動体に搭載された前記奥行き情報検出部は、前記ステレオカメラにより撮影された２つの異なる画像から、当該画像を構成する各画素の奥行き情報を検出することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記取得部が、前記カメラの位置姿勢を取得できなかった場合には、
前記閲覧画像生成部は、全ての画素の閲覧を禁止した画像を生成することを特徴とする請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
コンピュータを、
移動体に搭載されたカメラから、画像を取得する画像取得部、
前記移動体に搭載された、前記画像を構成する各画素の奥行き情報を検出する奥行き情報検出部から、前記奥行き情報を取得する奥行き情報取得部、
パーティクルフィルタを用いて推定される前記カメラの位置姿勢を取得する取得部、
前記パーティクルフィルタの各サンプルの位置姿勢において、閲覧を禁止する必要のある閲覧禁止多面体の２次元面内位置情報と高さ情報とを含む地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、前記閲覧禁止多面体が投影された画素における奥行き値を前記地図情報に基づいて算出し、各サンプルの位置姿勢において算出された各画素における奥行き値の最小値を、各画素の閲覧禁止奥行き判定値とする閲覧禁止奥行き判定値算出部、
前記各サンプルの位置姿勢において、前記地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、当該投影したときのサンプルの尤度に基づく値を、前記閲覧禁止多面体が投影された画素に対して累積して、その累積値を各画素のマスク判定値とするマスク判定値算出部、
前記画像取得部が取得した前記画像のうち、前記閲覧禁止奥行き判定値が前記奥行き情報よりも小さい画素で、かつ前記マスク判定値が所定の閾値よりも大きい画素の閲覧を禁止した閲覧画像を生成する閲覧画像生成部、
として機能させることを特徴とする画像処理プログラム。
【請求項６】
コンピュータが、
移動体に搭載されたカメラから、画像を取得する画像取得工程と、
前記移動体に搭載された、前記画像を構成する各画素の奥行き情報を検出する奥行き情報検出部から、前記奥行き情報を取得する奥行き情報取得工程と、
パーティクルフィルタを用いて推定される前記カメラの位置姿勢を取得する取得工程と、
前記パーティクルフィルタの各サンプルの位置姿勢において、閲覧を禁止する必要のある閲覧禁止多面体の２次元面内位置情報と高さ情報とを含む地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、前記閲覧禁止多面体が投影された画素における奥行き値を前記地図情報に基づいて算出し、各サンプルの位置姿勢において算出された各画素における奥行き値の最小値を、各画素の閲覧禁止奥行き判定値とする閲覧禁止奥行き判定値算出工程と、
前記各サンプルの位置姿勢において、前記地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、当該投影したときのサンプルの尤度に基づく値を、前記閲覧禁止多面体が投影された画素に対して累積して、その累積値を各画素のマスク判定値とするマスク判定値算出工程と、
前記画像取得工程で取得された前記画像のうち、前記閲覧禁止奥行き判定値が前記奥行き情報よりも小さい画素で、かつ前記マスク判定値が所定の閾値よりも大きい画素の閲覧を禁止した閲覧画像を生成する閲覧画像生成工程と、
を実行する画像処理方法。
【請求項７】
画像を撮影するカメラと、
前記画像を構成する各画素の奥行き情報を検出する奥行き情報検出部と、
請求項１〜４のいずれか一項に記載の画像処理装置と、を備える移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、画像処理装置、画像処理プログラム及び画像処理方法、並びに移動体に関する。
【背景技術】
【０００２】
近年、自律的に移動し、様々なサービスを提供するロボットの実用化が進められている。ロボットが提供するサービスには、ロボットが撮影したロボット周辺の画像を遠隔地に配信するというサービスがある。最近では、通信のインフラ整備に伴って、カメラで撮影した動画を無線で配信することも可能となってきている。これにより、今後は、ロボットが街中を移動して撮影した画像（静止画及び動画）を、インターネットを介して世界中からリアルタイムで確認することができるサービスなども提供できる可能性がある。
【０００３】
一方、プライバシー保護に関する社会的な要求は非常に高い。したがって、上記のようなサービスを普及させるためには、撮影した画像の中で閲覧できる部分を制限することが必要である。例えば、ロボットが街中を移動して撮影する場合には、撮影された画像に写っている個人の家を閲覧不可能にする等の制限が必要となる。
【０００４】
これに対し、カメラで撮影した画像の閲覧を制限する技術には、特許文献１、２のような技術がある。特許文献１の技術は、監視カメラ等の配置位置が固定されたパンチルトカメラで撮影した画像に対し、プライバシー部分として閲覧を制限したい部分をパン・チルトのエンコーダ情報を用いてマスキング設定するというものである。また、特許文献２の技術は、移動するカメラに関する技術として、基地局データを用いてカメラを内蔵する携帯電話の存在する位置を特定し、携帯電話がある空間に存在している場合に、カメラによる撮影を禁止するというものである。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−６９４９４号公報
【特許文献２】特開２００６−５０２８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１では、カメラの位置が固定されていることを前提とし、パン・チルトのエンコーダ情報のみを用いて画像の閲覧の制限を実現している。すなわち、本技術は、移動するロボットにおいて撮影された画像の閲覧を制限することには、適用することができない。
【０００７】
また、上記特許文献２では、カメラによる撮影の許可又は禁止の設定しかできず、画面に映っている一部の領域のみを閲覧禁止にすることはできない。
【０００８】
なお、閲覧を制限する技術においては、上述したように個人の家などは閲覧禁止にする一方で、その家の手前に存在している閲覧を制限する必要のない物体（車など）については、閲覧できるようにすることが望ましい。また、ロボットに搭載されたカメラの位置姿勢は、パーティクルフィルタを用いて推定されることが多いが、当該推定において、尤度の高いサンプル（仮説）が複数存在するような場合にも、高精度に閲覧の制限を行う必要がある。
【０００９】
そこで本件は上記の課題に鑑みてなされたものであり、撮影した画像の閲覧制限を高精度に行うことが可能な画像処理装置、画像処理プログラム及び画像処理方法、並びに移動体を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本明細書に記載の画像処理装置は、移動体に搭載されたカメラから、画像を取得する画像取得部と、前記移動体に搭載された、前記画像を構成するの奥行き情報を検出する奥行き情報検出部から、前記奥行き情報を取得する奥行き情報取得部と、パーティクルフィルタを用いて推定される前記カメラの位置姿勢を取得する取得部と、閲覧を禁止する必要のある閲覧禁止多面体の２次元面内位置情報と高さ情報とを含む地図情報を管理する地図情報管理部と、前記パーティクルフィルタの各サンプルの位置姿勢において、前記地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、前記閲覧禁止多面体が投影された画素における奥行き値を前記地図情報に基づいて算出し、各サンプルの位置姿勢において算出された各画素における奥行き値の最小値を、各画素の閲覧禁止奥行き判定値とする閲覧禁止奥行き判定値算出部と、前記各サンプルの位置姿勢において、前記地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、当該投影したときのサンプルの尤度に基づく値を、前記閲覧禁止多面体が投影された画素に対して累積して、その累積値を各画素のマスク判定値とするマスク判定値算出部と、前記画像取得部が取得した前記画像のうち、前記閲覧禁止奥行き判定値が前記奥行き情報よりも小さい画素で、かつ前記マスク判定値が所定の閾値よりも大きい画素の閲覧を禁止した閲覧画像を生成する閲覧画像生成部と、備える画像処理装置である。
【００１１】
本明細書に記載の画像処理プログラムは、コンピュータを、移動体に搭載されたカメラから、画像を取得する画像取得部、前記移動体に搭載された、前記画像を構成するの奥行き情報を検出する奥行き情報検出部から、前記奥行き情報を取得する奥行き情報取得部、パーティクルフィルタを用いて推定される前記カメラの位置姿勢を取得する取得部と、前記パーティクルフィルタの各サンプルの位置姿勢において、閲覧を禁止する必要のある閲覧禁止多面体の２次元面内位置情報と高さ情報とを含む地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、前記閲覧禁止多面体が投影された画素における奥行き値を前記地図情報に基づいて算出し、各サンプルの位置姿勢において算出された各画素における奥行き値の最小値を、各画素の閲覧禁止奥行き判定値とする閲覧禁止奥行き判定値算出部、前記各サンプルの位置姿勢において、前記地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、当該投影したときのサンプルの尤度に基づく値を、前記閲覧禁止多面体が投影された画素に対して累積して、その累積値を各画素のマスク判定値とするマスク判定値算出部、前記画像取得部が取得した前記画像のうち、前記閲覧禁止奥行き判定値が前記奥行き情報よりも小さい画素で、かつ前記マスク判定値が所定の閾値よりも大きい画素の閲覧を禁止した閲覧画像を生成する閲覧画像生成部、として機能させる画像処理プログラムである。
【００１２】
本明細書に記載の画像処理方法は、コンピュータが、移動体に搭載されたカメラから、画像を取得する画像取得工程と、前記移動体に搭載された、前記画像を構成するの奥行き情報を検出する奥行き情報検出部から、前記奥行き情報を取得する奥行き情報取得工程と、パーティクルフィルタを用いて推定される前記カメラの位置姿勢を取得する取得工程、前記パーティクルフィルタの各サンプルの位置姿勢において、閲覧を禁止する必要のある閲覧禁止多面体の２次元面内位置情報と高さ情報とを含む地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、前記閲覧禁止多面体が投影された画素における奥行き値を前記地図情報に基づいて算出し、各サンプルの位置姿勢において算出された各画素における奥行き値の最小値を、各画素の閲覧禁止奥行き判定値とする閲覧禁止奥行き判定値算出工程と、前記各サンプルの位置姿勢において、前記地図情報に基づいて前記閲覧禁止多面体を前記画像に投影するとともに、当該投影したときのサンプルの尤度に基づく値を、前記閲覧禁止多面体が投影された画素に対して累積して、その累積値を各画素のマスク判定値とするマスク判定値算出工程と、前記画像取得工程で取得された前記画像のうち、前記閲覧禁止奥行き判定値が前記奥行き情報よりも小さい画素で、かつ前記マスク判定値が所定の閾値よりも大きい画素の閲覧を禁止した閲覧画像を生成する閲覧画像生成工程と、を実行する画像処理方法である。
【００１３】
本明細書に記載の移動体は、画像を撮影するカメラと、前記画像を構成するの奥行き情報を検出する奥行き情報検出部と、本明細書に記載の画像処理装置と、を備える移動体である。
【発明の効果】
【００１４】
本明細書に記載の画像処理装置、画像処理プログラム及び画像処理方法、並びに移動体は、撮影した画像の閲覧制限を高精度に行うことができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】一実施形態に係る画像閲覧システムの概略構成図である。
【図２】移動ロボットの機能ブロック図である。
【図３】図３（ａ）は、２次元レイアウト地図の一例を示す図であり、図３（ｂ）は、閲覧禁止多面体のデータ構造を示す図である。
【図４】画像処理装置のハードウェア構成を示す図である。
【図５】移動ロボット（画像処理装置）の処理を示すフローチャートである。
【図６】パーティクルフィルタを用いたカメラ位置姿勢推定について説明するための図である。
【図７】パーティクルフィルタを用いたカメラ位置姿勢推定における尤度計算工程を説明するための図である。
【図８】図５のステップＳ３０の具体的処理を示す図である。
【図９】図８のステップＳ７０の具体的処理を示す図である。
【図１０】図１０（ａ）〜図１０（ｇ）は、図９の処理の概要を模式的に示す図である。
【図１１】図８のステップＳ８０の具体的処理を示す図である。
【図１２】図５のステップＳ４０の処理を説明するための図（その１）である。
【図１３】図５のステップＳ４０の処理を説明するための図（その２）である。
【図１４】パーティクルフィルタを用いたカメラ位置姿勢推定を行った場合の不確かさについて説明するための図である。
【発明を実施するための形態】
【００１６】
以下、画像処理装置、画像処理プログラム及び画像処理方法、並びに移動体の一実施形態について、図１〜図１４に基づいて詳細に説明する。
【００１７】
図１には、画像閲覧システム１００の概略構成が示されている。この図１に示すように、画像閲覧システム１００は、移動体としての移動ロボット１０と、情報処理装置としての１つ以上のＰＣ７０とを備えている。移動ロボット１０とＰＣ７０とはインターネットなどの通信回線（以下、「インターネット」と総称する）を介して接続されている。
【００１８】
図２は、移動ロボット１０の機能ブロック図である。移動ロボット１０は、図２に示すように、ステレオカメラ１２、駆動部１４、エンコーダ１６、及び画像処理装置１８を備える。ステレオカメラ１２は、２台のカメラを有し、当該２台のカメラで同時に異なる視点から２つの画像を撮影する。また、ステレオカメラ１２は、２つのカメラで撮影された画像における対象物の位置の対応付けを行うことで、各画素の奥行き情報を検出する、奥行き情報検出部としても機能する。ステレオカメラ１２において撮影された画像及び検出された奥行き情報は、画像処理装置１８に向けて出力される。駆動部１４は、車輪及び当該車輪を駆動するモータ、及びモータを駆動制御する駆動制御部等を含んでいる。エンコーダ１６は、車輪の回転量を検出するロータリエンコーダ等であり、検出した車輪の回転量を画像処理装置１８に対して出力する。
【００１９】
画像処理装置１８は、画像取得部２０と、奥行き情報取得部２２と、取得部としてのカメラ位置姿勢推定部２４と、地図情報管理部２６と、判定値算出部２８と、閲覧画像生成部３０と、送信部３２と、を有する。
【００２０】
画像取得部２０は、ステレオカメラ１２が有する一方のカメラにおいて撮影された画像を取得する。奥行き情報取得部２２は、ステレオカメラ１２において検出された各画素の奥行き情報を取得する。なお、奥行き情報取得部２２は、ステレオカメラ１２において撮影される２つの画像を取得し、当該画像から各画素の奥行き情報を自ら算出して、取得することとしてもよい。この場合、奥行き情報取得部２２は、奥行き情報検出部としての機能も有することになる。
【００２１】
カメラ位置姿勢推定部２４は、奥行き情報取得部２２による奥行き情報の取得結果、エンコーダ１６による検出結果、及び地図情報管理部２６が管理する地図情報に基づいて、ステレオカメラ１２の位置姿勢の推定を行う。なお、ステレオカメラ１２の位置姿勢の推定には、パーティクルフィルタを用いるが、この方法の詳細については後述する。
【００２２】
地図情報管理部２６は、移動ロボット１０が移動可能な範囲の地図情報を管理する。地図情報は、２次元レイアウト地図と、閲覧を禁止する必要のある物体（例えば、民家など、プライバシーを保護する必要のある建物など）を包含する閲覧禁止多面体の２次元面内位置情報と高さ情報とを含んでいる。具体的には、図３（ａ）に示すように、２次元レイアウト地図は、ロボット走行領域（道路）や壁、閲覧禁止多面体の２次元配置のデータを含んでいる。また、閲覧禁止多面体については、図３（ｂ）に示すようなデータ構造にて、地図情報管理部２６に管理されている。図３（ｂ）のデータには、閲覧禁止多面体の頂点の数、各頂点のレイアウト地図上におけるＸ、Ｙ座標、及び閲覧禁止多面体の高さ下限値、上限値が含まれている。なお、このようなデータ構造を採用する利点は、カメラ位置推定に用いる２次元レイアウト地図上に多角形を入力し、その多角形に高さ情報の属性を付けるのみでよいため、閲覧禁止多面体の設定が容易である点にある。
【００２３】
図２に戻り、判定値算出部２８は、奥行き情報取得部２２で取得された各画素の奥行き情報と、カメラ位置姿勢推定部２４で取得されたパーティクルフィルタのサンプルの位置姿勢と、を用いて、２つの判定値を算出する。２つの判定値は、閲覧禁止奥行き判定値とマスク判定値である。すなわち、判定値算出部２８は、閲覧禁止奥行き判定値算出部及びマスク判定値算出部として機能する。なお、これらの判定値の詳細については、後述する。
【００２４】
閲覧画像生成部３０は、画像取得部２０で取得された画像と、判定値算出部２８で算出された２つの判定値とを用いて閲覧画像を生成する。具体的には、閲覧画像生成部３０は、各画素に関して２つの判定値に基づいて、閲覧禁止にするか否かを定める閲覧禁止マスク値を生成し、当該閲覧禁止マスク値を用いて、画像の一部を閲覧禁止にした画像（閲覧画像）を生成する。送信部３２は、閲覧画像生成部３０により生成された閲覧画像を、インターネットを介してＰＣ７０に送信する。
【００２５】
なお、画像処理装置１８は、図４に示すようなハードウェア構成により実現されている。すなわち、画像処理装置１８は、ＣＰＵ９０、ＲＯＭ９２、ＲＡＭ９４、記憶部（ここではＨＤＤ（Hard Disk Drive））９６、入出力部９７等を備えており、画像処理装置１８の構成各部は、バス９８に接続されている。画像処理装置１８は、ＲＯＭ９２あるいはＨＤＤ９６に格納されているプログラム（画像処理プログラム）をＣＰＵ９０が実行することにより、図２の各部の機能を実現する。また、入出力部９７には、図２のステレオカメラ１２やエンコーダ１６等が接続されている。
【００２６】
次に、本実施形態における移動ロボット１０の動作・処理について、図５〜図１２に基づいて、詳細に説明する。図５は、移動ロボット１０（画像処理装置１８）の処理を示すフローチャートである。この図５に示すように、まず、ステップＳ１０では、画像取得部２０が、ステレオカメラ１２から画像（各画素の輝度値Ｉ（ｈ，ｖ））を取得する。また、奥行き情報取得部２２が、ステレオカメラ１２から取得した画像から各画素の奥行き情報Ｚ（ｈ，ｖ）を取得する。なお、座標（ｈ，ｖ）は、各画素の画像面内（画像内）水平方向及び垂直方向に関する座標値である。なお、ステレオカメラ１２の２つのカメラ間の対応付けができず、奥行き情報が得られない画素については、奥行き情報Ｚ（ｈ，ｖ）は＋∞となる。
【００２７】
次いで、ステップＳ２０では、カメラ位置姿勢推定部２４が、各画素の奥行き情報Ｚ（ｈ，ｖ）と２次元レイアウト地図を用いてカメラ位置姿勢を推定する。具体的には、カメラ位置姿勢推定部２４は、図６のような処理を行う。ここで、カメラ位置姿勢推定部２４は、カメラ位置姿勢の推定に時系列フィルタであるパーティクルフィルタを用いることとしている。この方法は、推定対象（カメラ）の状態を統計的に推定する方法であり、システムモデルと観測モデルに対する制約が少なくロバストに状態を推定することができるという利点がある。
【００２８】
パーティクルフィルタでは、図６に示すように、まず推定したい状態をある確率分布に従って離散化し、一定数のサンプルを生成する（初期化工程）。次に、状態遷移モデル（エンコーダ１６の検出結果）に基づき、各サンプルの状態を遷移させる（遷移工程）。ここでは、ノイズをｗ、システムモデルをｆとすると、サンプル状態パラメータｓは、次式（１）から算出することができる。
【００２９】
【数１】
0005471919.tif 000002
【００３０】
次に、奥行き情報取得部２２で取得された各画素の奥行き情報を用いて観測を行う（観測工程）。ここで、時刻ｔにおける観測量をｙtとする。次いで、観測量ｙtを用いて各サンプルの尤度Ｌを次式（２）を用いて評価する（尤度計算工程）。
【００３１】
【数２】
0005471919.tif 000003
【００３２】
そして、各サンプルの尤度から重みを計算し、各サンプルの状態の重み付き平均をとって対象（カメラ）の状態の推定を行う（推定工程）。具体的には、次式（３）に基づいて重みπを計算し、次式（４）に基づいて、推定量εを算出する。
【００３３】
【数３】
0005471919.tif 000004
【００３４】
【数４】
0005471919.tif 000005
【００３５】
その後、尤度の高い順にサンプルを生成してリサンプリングを行う（リサンプリング工程）。このような処理を各時刻で繰り返し行うことで対象の状態推定を行うことができる。
【００３６】
なお、本実施形態では、カメラの位置姿勢推定において、奥行き情報取得部２２で取得された各画素の奥行き情報Ｚ（ｈ，ｖ）を床面に投影した計測地図（図７参照）と、２次元レイアウト地図との照合を行う。そして、両地図の一致度を尤度として用いてパーティクルフィルタによりカメラの位置と姿勢の推定を行う。なお、計測地図と２次元レイアウト地図の照合が一致せずにすべてのサンプルの尤度が所定の閾値よりも低くなる場合には、位置を見失った状態（ロスト状態）として取り扱われる。
【００３７】
図５に戻り、次のステップＳ３０では、各画素の閲覧禁止マスク値Ｍ（ｈ，ｖ）を生成するサブルーチンを実行する。ステップＳ３０では、具体的には、図８の処理を実行する。
【００３８】
図８の処理では、まず、ステップＳ６０において、判定値算出部２８が、位置をロストしたか否かを判断する。ここでの判断が否定された場合には、ステップＳ７０に移行し、判定値算出部２８が、閲覧禁止奥行き判定値Ｚ_Ｉｎｈ（ｈ，ｖ）とマスク判定値Ｅ（ｈ，ｖ）を決定するサブルーチン（図９）を実行する。なお、閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）は、画像面上（画像上）の座標（ｈ，ｖ）の画素に投影される閲覧禁止多面体の奥行きを示す値である。また、マスク判定値は、その画素で閲覧禁止多面体が投影される尤もらしさを示す判定値である。
【００３９】
図９の処理では、まず、ステップＳ７０２において、判定値算出部２８が、マスク判定値Ｅ（ｈ，ｖ）及び閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）を初期化する。ここでは、判定値算出部２８は、マスク判定値Ｅ（ｈ，ｖ）を０に設定することで初期化し、閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）を＋∞に設定することで初期化する。
【００４０】
次いで、ステップＳ７０４では、判定値算出部２８が、未選択のパーティクルフィルタのサンプルＳを選択する。
【００４１】
次いで、ステップＳ７０６では、判定値算出部２８が、サンプルＳの尤度Ｌ（Ｓ）（上式（２）参照）が所定の閾値Ｌｔｈよりも大きいか否かを判断する。ここでの判断が否定された場合には、ステップＳ７２４に移行する。なお、ここでの判断が否定される場合とは、尤度が小さすぎるため、閲覧禁止にするか否かの判断において考慮する必要がないサンプルであることを意味する。
【００４２】
一方、ステップＳ７０６の判断が肯定されると、ステップＳ７０８に移行する。ステップＳ７０８では、判定値算出部２８が、未選択の閲覧禁止多面体Ｈを選択する。この場合、判定値算出部２８は、画像取得部２０において取得された画像内に含まれる閲覧禁止多面体のうちのいずれかを、地図情報管理部２６にて管理されている地図情報から抽出して選択する。
【００４３】
次いで、ステップＳ７１０では、判定値算出部２８が、ステップＳ７０８において選択した閲覧禁止多面体Ｈの未選択の面Ｐを選択する。
【００４４】
次いで、ステップＳ７１２では、判定値算出部２８が、ステップＳ７１０において選択された面Ｐが投影される画像の画素のうち、未選択の画素を選択する。
【００４５】
次いで、ステップＳ７１４では、判定値算出部２８が、選択した画素の奥行き値Ｚｐ（ｈ，ｖ）を計算する。すなわち、閲覧禁止多面体Ｈの面Ｐが投影される画素のうちの選択した画素の奥行きを、面Ｐのデータ（図３（ｂ）参照）に基づいて計算する。
【００４６】
次いで、ステップＳ７１６では、判定値算出部２８が、マスク判定値Ｅ（ｈ，ｖ）、閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）を更新する。具体的には、次式（５）に基づいてマスク判定値Ｅ（ｈ，ｖ）を更新し、次式（６）に基づいて閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）を更新する。
E(h,v)＝E(h,v)＋L(S)              …（５）
Z_Inh(h,v)＝min(Zp(h,v)，Z_Inh(h,v))      …（６）
【００４７】
上式（５）では、直前までのマスク判定値Ｅ（ｈ，ｖ）（ここでは、初期値０）に尤度Ｌ(S)を加算することで、マスク判定値Ｅ（ｈ，ｖ）を更新する。また、上式（６）では、直前までの閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）（ここでは初期値＋∞）と、ステップＳ７１４で計算された奥行き値Ｚｐ（ｈ，ｖ）を比べる。そして、各値のうちのいずれか小さい方の値で、閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）を更新する。
【００４８】
次いで、ステップＳ７１８では、判定値算出部２８が、面Ｐが投影される画像の全画素を選択したか否かを判断する。ここでの判断が否定された場合には、ステップＳ７１２に戻り、次の画素に対する処理を上記と同様に行う。一方、ここでの判断が肯定された場合には、ステップＳ７２０に移行する。
【００４９】
ステップＳ７２０に移行した場合、判定値算出部２８が、閲覧禁止多面体Ｈの全面を選択したか否かを判断する。ここでの判断が否定された場合には、ステップＳ７１０に戻り、次の面に対する処理を上記と同様に行う。一方、ここでの判断が肯定された場合には、ステップＳ７２２に移行する。
【００５０】
ステップＳ７２２に移行した場合、判定値算出部２８が、全ての閲覧禁止多面体Ｈを選択したか否かを判断する。ここでの判断が否定された場合には、ステップＳ７０８に戻り、次の閲覧禁止多面体に対する処理を上記と同様に行う。一方、ここでの判断が肯定された場合には、ステップＳ７２４に移行する。
【００５１】
ステップＳ７２４に移行した場合（ステップＳ７２２の判断が肯定された場合、又はステップＳ７０６の判断が否定された場合）、判定値算出部２８が、全てのサンプルＳを選択したか否かを判断する。ここでの判断が否定された場合には、ステップＳ７０４に戻り、未だ選択がされていないサンプルＳを用いた処理を上記と同様にして行う。一方、ここでの判断が肯定された場合には、図９の全処理（ステップＳ７０のサブルーチン）を終了する。以上のようにして、ステップＳ７０の処理が完了すると、図８のステップＳ８０に移行する。
【００５２】
ここで、図９の処理について、具体的な例を用いて説明する。図１０（ａ）〜図１０（ｇ）には、図９の処理の概要が模式的に示されている。図１０（ａ）に示すように、パーティクルフィルタを用いたカメラ位置姿勢推定を行った結果、サンプルＳ１、Ｓ２が尤度が高いサンプルとして取得されたとする。この場合に、まず、サンプルＳ１にて、閲覧禁止多面体の面Ｐ１を評価する。図１０（ｂ）には、面Ｐ１を画像面に投影した状態（画像に投影した状態）が示されている。ここで、面Ｐ１の奥行き値Ｚｐ（ｈ，ｖ）が２であり、サンプルＳ１の尤度Ｌ(S1)が０．２であったとする。このような状況下では、マスク判定値Ｅ（ｈ，ｖ）は、図１０（ｃ）に示すように、図１０（ｂ）の黒画素部分が０．２に更新され、その他の画素は０のまま維持される。
【００５３】
一方、閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）は、図１０（ｄ）に示すように、図１０（ｂ）の黒画素部分が２に更新され、その他の画素は＋∞のまま維持される。
【００５４】
次に、サンプルＳ２にて、閲覧禁止多面体の面Ｐ１を評価する。図１０（ｅ）には、面Ｐ１を画像面に投影した状態（画像に投影した状態）が示されている。ここで、面Ｐ１の奥行き値Ｚｐ（ｈ，ｖ）が１であり、サンプルＳ２の尤度Ｌ(S2)が０．３であったとする。このような状況下では、マスク判定値Ｅ（ｈ，ｖ）は、図１０（ｆ）に示すように、図１０（ｅ）の黒画素部分に０．３が加算されて更新され、その他の画素は０のまま維持される。すなわち、図１０（ｅ）に示す黒画素のうち、図１０（ｂ）に示す黒画素以外の画素のマスク判定値Ｅ（ｈ，ｖ）が０．３となり、図１０（ｂ）に示す黒画素のマスク判定値Ｅ（ｈ，ｖ）が０．５となる。
【００５５】
一方、閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）は、図１０（ｇ）に示すように、図１０（ｅ）の黒画素のすべてが１に更新され、その他の画素は＋∞のまま維持される。
【００５６】
本実施形態の図９の処理では、上記のような処理が、面Ｐ２に対しても行われるようになっている。
【００５７】
図９の処理が終了すると、図８のステップＳ８０に移行する。ステップＳ８０では、判定値算出部２８が、閲覧禁止マスク値Ｍ（ｈ，ｖ）を決定するサブルーチン（図１１）を実行する。
【００５８】
図１１の処理では、まず、ステップＳ８０２において、判定値算出部２８が、未選択の画素を選択する。次いで、ステップＳ８０４では、判定値算出部２８が、マスク判定値Ｅ（ｈ，ｖ）が閾値Ｅｔｈよりも大きいか否かを判断する。ここでの判断が肯定された場合には、ステップＳ８０６に移行する。なお、ここでの判断が肯定される場合とは、ステップＳ８０２で選択された画素が、尤度の高い１以上のサンプルにおいて閲覧禁止多面体の同一の面が投影された画素であることを意味する。一方、ここでの判断が否定される場合とは、ステップＳ８０２で選択された画素が、尤度の高い１以上のサンプルにおいて閲覧禁止多面体の同一の面が投影されていない画素であることを意味する。
【００５９】
ステップＳ８０６では、判定値算出部２８が、Ｚ＿Ｉｎｈ（ｈ，ｖ）がＺ（ｈ，ｖ）よりも小さいか否かを判断する。ここでの判断が肯定された場合には、ステップＳ８０８に移行する。なお、ここでの判断が肯定される場合とは、ステップＳ８０２で選択された画素に、閲覧禁止多面体の面が撮像されていることを意味する。一方、ここでの判断が否定される場合とは、ステップＳ８０２で選択された画素に、閲覧禁止多面体の面よりも前側（カメラ側）に存在する別の物体が撮像されていることを意味する。
【００６０】
ステップＳ８０８に移行すると、判定値算出部２８は、閲覧禁止マスク値Ｍ（ｈ，ｖ）を１に設定する。
【００６１】
一方、ステップＳ８０４、およびステップＳ８０６の判断が否定された場合にはステップＳ８１２に移行する。ステップＳ８１２では、判定値算出部２８が、閲覧禁止マスク値Ｍ（ｈ，ｖ）を０に設定する。
【００６２】
その後、ステップＳ８０８又はステップＳ８１２の処理を経て、ステップＳ８１０に移行すると、判定値算出部２８は、全ての画素が選択されたか否かを判断する。ここでの判断が否定されると、ステップＳ８０２に戻り、上記と同様の処理を、残りの画素についても実行する。そして、ステップＳ８１０の判断が肯定された段階で、図１１の全処理及び図８の全処理を終了して、図５のステップＳ４０に移行する。
【００６３】
上記のようにして図１１の処理を行うことにより、閲覧禁止多面体の面に対応する画素の閲覧禁止マスク値Ｍ（ｈ，ｖ）が１に設定され、それ以外の画素の閲覧禁止マスク値Ｍ（ｈ，ｖ）が０に設定される。すなわち、例えば、閲覧禁止多面体の前に別の物体が存在している場合には、当該別の物体に対応する画素の閲覧禁止マスク値Ｍ（ｈ，ｖ）は０に設定されることになる。
【００６４】
なお、図８のステップＳ６０の判断が肯定された場合、すなわち、位置をロストした場合には、ステップＳ９０に移行する。そして、ステップＳ９０では、判定値算出部２８が、全画素の閲覧禁止マスク値Ｍ（ｈ，ｖ）を１に設定し、図５のステップＳ４０に移行する。
【００６５】
図５に戻り、ステップＳ４０では、閲覧画像生成部３０が、画像（各画素の輝度値）Ｉ（ｈ，ｖ）と閲覧禁止マスク値Ｍ（ｈ，ｖ）を用いて、閲覧禁止部分を除去した画像Ｉｍ（ｈ，ｖ）を生成する。具体的には、図１２に示すように、閲覧画像生成部３０は、撮影禁止マスクの画像として、閲覧禁止マスク値Ｍ（ｈ，ｖ）が１の画素を黒画素とした画像（閲覧禁止マスク画像）を生成する。そして、閲覧画像生成部３０は、当該閲覧禁止マスク画像と画像Ｉ（ｈ、ｖ）とを合成して、閲覧禁止部分を閲覧不可能にした画像Ｉｍ（ｈ，ｖ）を生成する。すなわち、ここでは、閲覧画像生成部３０は、Ｍ（ｈ、ｖ）＝０の場合に、Ｉｍ（ｈ，ｖ）＝Ｉ（ｈ，ｖ）とし、Ｍ（ｈ、ｖ）＝１の場合に、Ｉｍ（ｈ，ｖ）＝０とする。
【００６６】
ここで、例えば、図１３に示すように、閲覧禁止多面体の前に物体（図１３では人物）が存在していた場合には、当該人物に対応する画素の閲覧禁止マスク値Ｍ（ｈ，ｖ）は０に設定される。したがって、本実施形態では、閲覧画像Ｉｍ（ｈ，ｖ）において、閲覧禁止多面体の前に位置する人物を閲覧することが可能となる。
【００６７】
図５に戻り、次のステップＳ５０では、送信部３２が、ステップＳ４０で生成された画像Ｉｍ（ｈ，ｖ）を、インターネットを介して、ＰＣ７０に配信する。ＰＣ７０では、配信された画像（動画を含む）をほぼリアルタイムにて閲覧することが可能である。
【００６８】
以上、詳細に説明したように、本実施形態によると、画像取得部２０が、移動ロボット１０に搭載されたステレオカメラ１２から、画像Ｉ（ｈ、ｖ）を取得し、奥行き情報取得部２２が、ステレオカメラ１２にて得られた画像を構成するの奥行き情報Ｚ（ｈ，ｖ）を取得し、カメラ位置姿勢推定部２４が、パーティクルフィルタを用いて推定される前記カメラの位置姿勢を取得する。そして、判定値算出部２８は、パーティクルフィルタの各サンプルＳの位置姿勢において、地図情報管理部２６が管理する地図情報に基づいて閲覧禁止多面体を画像に投影するとともに、閲覧禁止多面体が投影された画素における奥行き値Ｚｐ（ｈ，ｖ）を地図情報に基づいて算出し、各サンプルの位置姿勢において算出された各画素における奥行き値Ｚｐ（ｈ，ｖ）の最小値を、各画素の閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）とする。また、判定値算出部２８は、各サンプルの位置姿勢において、閲覧禁止多面体を画像に投影したときのサンプルの尤度に基づく値（本実施形態では尤度Ｌ(S)そのものの値）を、閲覧禁止多面体が投影された画素に対して累積して、その累積値を各画素のマスク判定値Ｅ（ｈ，ｖ）とする。そして、閲覧画像生成部３０は、画像Ｉ（ｈ，ｖ）のうち、閲覧禁止奥行き判定値Ｚ＿Ｉｎｈ（ｈ，ｖ）が奥行き情報Ｚ（ｈ，ｖ）よりも小さい画素で、かつマスク判定値Ｅ（ｈ，ｖ）が所定の閾値Ｅｔｈよりも大きい画素の閲覧を禁止した閲覧画像Ｉｍ（ｈ，ｖ）を生成する。これにより、本実施形態では、サンプルの尤度を考慮して算出されるマスク判定値Ｅ（ｈ，ｖ）が比較的大きい画素のうちで、閲覧禁止多面体を撮像している可能性の高い画素（奥行き情報が、閲覧禁止奥行き判定値以上である画素）を閲覧禁止とすることができる。これにより、プライバシー等が保護された閲覧画像を生成することが可能である。
【００６９】
この場合、図１４に示すように、カメラの位置姿勢の尤もらしいサンプル（仮説）が複数あり、重み付き平均をとると、カメラの推定位置が２つのサンプルの中間位置になってしまい、不確かさが発生することがある。このような場合でも、マスク判定値Ｅ（ｈ，ｖ）を用いることで、それらの複数の尤もらしい位置姿勢のどの位置から撮影したとしても閲覧禁止としたい物体を確実に閲覧できないようにすることが可能である。また、本実施形態では、奥行き情報が閲覧禁止奥行き判定値以上である画素を閲覧禁止とし、奥行き情報が閲覧禁止奥行き判定値よりも小さい画素を閲覧可能とする。これにより、閲覧禁止としたい物体（多面体）を閲覧できなくする一方で、閲覧禁止としたい物体（多面体）の手前にある、閲覧を制限する必要のない物体を閲覧できるようにすることが可能となる（図１３参照）。
【００７０】
また、本実施形態では、画像処理装置１８は、閲覧画像生成部３０により生成された閲覧画像Ｉｍ（ｈ，ｖ）を、ＰＣ７０に送信する送信部３２を備えている。これにより、閲覧制限をする必要のある部分（例えば、プライバシーを保護する必要のある部分）を閲覧禁止にした画像を、ＰＣ７０にて閲覧できるようにすることができる。
【００７１】
また、本実施形態では、ステレオカメラに１２より撮影された２つの異なる画像から、画像を構成するの奥行き情報を取得する。これにより、画像取得部２０が取得する画像、及び各画素の奥行き情報を取得するための画像として、共通の画像を用いることができる。したがって、簡易な構成で、高精度な各画素の奥行き情報を取得することができる。
【００７２】
また、本実施形態では、カメラ位置姿勢推定部２４が、カメラの位置姿勢を推定できなかった場合（ロスト状態となった場合）に、閲覧画像生成部３０は、全ての画素の閲覧を禁止した画像を生成する。これにより、カメラの位置姿勢がわからなくなっても、画像のうちの少なくとも閲覧制限をする必要のある部分（例えば、プライバシー保護部分）の閲覧を不可能にすることができる。
【００７３】
なお、上記実施形態では、カメラとしてステレオカメラ１２を用い、ステレオカメラ１２において撮影された画像から、画像Ｉ（ｈ，ｖ）と、各画素の奥行き情報Ｚ（ｈ，ｖ）を取得する場合について説明した。しかしながら、これに限られるものではなく、例えば、１つの画像を撮影可能なカメラを用いるとともに、各画素の奥行き情報Ｚ（ｈ，ｖ）を検出することが可能な奥行き情報検出部（Depth Imagerなど）を併せて用いることとしてもよい。
【００７４】
なお、上記実施形態では、マスク判定値Ｅ（ｈ，ｖ）を更新する際に、上式（５）のように、尤度Ｌ(S)そのものを累積する場合について説明したが、これに限られるものではない。例えば、次式（７）に示すように、Ｌ(S)の２乗を累積することとしてもよい。
E(h,v)=E(h,v)+L(S)2      …（７）
【００７５】
あるいは、次式（８）のように、Ｌ(S)を変数とする関数ｆ(Ｌ(S))を累積することとしてもよい。
E(h,v)=E(h,v)+f(L(S))          …（８）
【００７６】
なお、上記実施形態では、閲覧禁止マスク値Ｍ(ｈ，ｖ)が１のときにＩｍ（ｈ，ｖ）を０にする場合について説明したが、これに限られるものではない。例えば、閲覧禁止マスク値Ｍ(ｈ，ｖ)が１の画素に対し、モザイクやぼかし等の処理を行うこととしてもよい。
【００７７】
なお、上記実施形態では、カメラ位置姿勢推定部２４が、画像処理装置１８内に設けられている場合について説明したが、これに限られるものではない。例えば、カメラ位置姿勢推定部を画像処理装置１８外に設けることとし、画像処理装置１８内には、カメラ位置姿勢推定部において推定されたステレオカメラの位置姿勢を取得する機能（取得部としての機能）のみを設けることとしても良い。このようにしても、上記実施形態と同様の効果を得ることができる。
【００７８】
なお、上記実施形態では、移動ロボット１０にカメラを搭載する場合について説明したが、これに限られるものではない。カメラは、例えば、自動車などの移動体に搭載することとしてもよい。
【００７９】
なお、上記実施形態では、閲覧禁止多面体が、民家などのプライバシーを保護する必要のある建物である場合について説明した。しかしながら、これに限らず、プライバシー以外の何らかの理由（防衛上、機密上、法律上、教育上あるいは倫理上の理由など）で閲覧可能にすべきでない物体を、閲覧禁止多面体に設定することとしてもよい。
【００８０】
なお、上記実施形態では、移動ロボット１０に、画像処理装置１８が搭載された場合について説明したが、これに限られるものではない。例えば、画像処理装置１８は、移動ロボット１０と通信可能とし、移動ロボット１０に搭載しないようにしてもよい。この場合、画像処理装置１８は、図１のインターネットに接続されてもよい。また、画像処理装置１８が、インターネットに接続されている少なくとも１台のＰＣ７０に組み込まれてもよい。すなわち、インターネット等の通信網に接続されたサーバコンピュータを本件の画像処理装置とし、これに接続されたパーソナルコンピュータ等の情報処理装置に、画像表示を行うサービスをサーバコンピュータから提供するようにしても良い（ＡＳＰ(Application Service Provider)）。
【００８１】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。
【００８２】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ（Digital Versatile Disc）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【００８３】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【００８４】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【符号の説明】
【００８５】
１０  移動ロボット（移動体）
１２  ステレオカメラ（カメラ、奥行き情報検出部）
１８  画像処理装置
２０  画像取得部
２２  奥行き情報取得部
２４  カメラ位置姿勢推定部（取得部）
２６  地図情報管理部
２８  判定値算出部（閲覧禁止奥行き判定値算出部、マスク判定値算出部）
３０  閲覧画像生成部
３２  送信部
７０  ＰＣ（情報処理装置）
【図１】
0005471919.tif 000006
【図２】
0005471919.tif 000007
【図３】
0005471919.tif 000008
【図４】
0005471919.tif 000009
【図５】
0005471919.tif 000010
【図６】
0005471919.tif 000011
【図７】
0005471919.tif 000012
【図８】
0005471919.tif 000013
【図９】
0005471919.tif 000014
【図１０】
0005471919.tif 000015
【図１１】
0005471919.tif 000016
【図１２】
0005471919.tif 000017
【図１３】
0005471919.tif 000018
【図１４】
0005471919.tif 000019