(57)【要約】  映像を用いた位置推定の精度を向上させるための技術を提供する。位置推定装置１０は、撮像部１００により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく撮像部１００の位置推定を含む映像処理を実行する映像処理部１１０と、前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける撮像部１００の露光条件を決定する撮像制御部１２０とを含む。
2019021412.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行する映像処理手段と、
前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定する撮像制御手段と
を備える位置推定装置。
【請求項２】
前記撮像制御手段は、前記第１のフレームと前記第２のフレームとから同一の特徴点が複数抽出されるように前記露光条件を決定する
請求項１に記載の位置推定装置。
【請求項３】
前記映像処理手段は、前記複数の特徴点の位置及び特徴量を示す第１の情報と、当該複数の特徴点の明るさを示す第２の情報とを含むマップ情報に基づいて前記位置推定を実行し、
前記撮像制御手段は、前記映像関連情報と、前記第２の情報とに基づいて、前記第２のフレームにおける前記露光条件を決定する
請求項１又は請求項２に記載の位置推定装置。
【請求項４】
前記撮像制御手段は、前記第２の情報により示される前記複数の特徴点のうちの少なくともいずれかの特徴点の明るさと、当該特徴点の撮像時の明るさとに基づいて、前記第２のフレームにおける前記露光条件を決定する
請求項３に記載の位置推定装置。
【請求項５】
前記映像処理手段は、前記映像におけるオプティカルフローに基づいて撮像範囲の移動方向を推定し、
前記撮像制御手段は、前記映像関連情報と、前記推定された移動方向にある画素の明るさとに基づいて、前記第２のフレームにおける前記露光条件を決定する
請求項１から請求項４までのいずれか１項に記載の位置推定装置。
【請求項６】
前記映像処理手段は、前記位置推定により推定された前記撮像手段の位置を、前記第１のグループに属するフレームにおいて推定された位置と前記第２のグループに属するフレームにおいて推定された位置とを用いて補正する
請求項１から請求項５までのいずれか１項に記載の位置推定装置。
【請求項７】
前記映像処理手段は、
前記第１のグループに属するフレームにおいて推定された位置と前記第２のグループに属するフレームにおいて推定された位置との信頼性に基づく重み付けに従って、前記撮像手段の位置を補正する
請求項６に記載の位置推定装置。
【請求項８】
前記映像におけるシーンの変化を示す履歴情報を記憶する記憶手段を備え、
前記撮像制御手段は、所定の条件を満たした場合に、前記第２のフレームにおける前記露光条件をリセットする
請求項１から請求項７までのいずれか１項に記載の位置推定装置。
【請求項９】
撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行し、
前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定する
位置推定方法。
【請求項１０】
前記露光条件を、前記第１のフレームと前記第２のフレームとから同一の特徴点が複数抽出されるように決定する
請求項９に記載の位置推定方法。
【請求項１１】
コンピュータに、
撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行するステップと、
前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定するステップと
を実行させるためのプログラムを記録したコンピュータ読み取り可能なプログラム記録媒体。
【請求項１２】
前記決定するステップは、前記第１のフレームと前記第２のフレームとから同一の特徴点が複数抽出されるように前記露光条件を決定する
請求項１１に記載のプログラム記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、映像を用いた位置推定に関する。
【背景技術】
【０００２】
ＵＡＶ（Unmanned aerial vehicle）、自動運転車、ロボットなどの移動に際しては、いわゆる自己位置、すなわち移動する物体の位置の推定が必要な場合がある。自己位置を推定する技術としては、例えば、ＳＬＡＭ（Simultaneous Localization and Mapping）技術が知られている（例えば、特許文献１参照）。ＳＬＡＭのうち、特に映像に基づくものを、Ｖｉｓｕａｌ  ＳＬＡＭともいう。ただし、以下においては、Ｖｉｓｕａｌ  ＳＬＡＭのことも単にＳＬＡＭという場合がある。【０００３】
また、静止画においては、ダイナミックレンジが広い画像表現を目的とした合成、すなわちＨＤＲ合成（High Dynamic Range Imaging）が知られている（例えば、特許文献２参照）。ＨＤＲ合成は、同一のシーンの画像を、露光量を変えながら複数回撮像し、複数枚の画像を合成することでダイナミックレンジが幅広い画像を得る技法である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２３７８４５号公報
【特許文献２】特開２０１５−１４４４７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＳＬＡＭによる位置推定においても、ダイナミックレンジの不足に起因する白飛びや黒潰れが推定の精度を低下させる場合がある。例えば、映像に白飛びや黒潰れが多く発生すると、十分な数の特徴点が抽出できないゆえに位置推定に失敗する可能性が高まる。また、移動する物体の自己位置を推定する場合には、物体自体の位置が時々刻々と変化し得るため、同一のシーンを複数回撮像することが困難である。ゆえに、移動する物体の自己位置を推定する場合には、上述のような静止画におけるＨＤＲ合成を適用することが困難である、という技術的な課題が存在する。【０００６】
本開示の例示的な目的は、上述の課題に鑑み、映像を用いた位置推定の精度を向上させるための技術を提供することにある。
【課題を解決するための手段】
【０００７】
一の態様において、撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行する映像処理手段と、前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定する撮像制御手段とを含む位置推定装置が提供される。【０００８】
別の態様において、撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行し、前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定する位置推定方法が提供される。【０００９】
さらに別の態様において、コンピュータに、撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行するステップと、前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定するステップとを実行させるためのプログラムを記録したコンピュータ読み取り可能なプログラム記録媒体が提供される。
【発明の効果】
【００１０】
本開示によれば、映像を用いた位置推定の精度が向上する。
【図面の簡単な説明】
【００１１】
【図１】図１は、位置推定装置の構成の一例を示すブロック図である。
【図２】図２は、映像におけるＢＦ（Bright Frame）及びＤＦ（Dark Frame）の一例を示す図である。
【図３】図３は、ある被写体を撮像した画像から抽出され得る特徴点の絶対輝度値に対する分布を示すヒストグラムの一例を示す模式図である。
【図４】図４は、位置推定装置の動作の一例を示すフローチャートである。
【図５】図５は、自律移動システムの構成の一例を示すブロック図である。
【図６】図６は、ＳＬＡＭ部の動作の一例を示すフローチャートである。
【図７】図７は、位置推定処理の一例を示すフローチャートである。
【図８】図８は、マッピング処理の一例を示すフローチャートである。
【図９】図９は、撮像制御部の動作の一例を示すフローチャートである。
【図１０】図１０は、自律移動システムの構成の別の例を示すブロック図である。
【図１１Ａ】図１１Ａは、露光条件のリセットの第１の例を示す図である（第１のシーン）。
【図１１Ｂ】図１１Ｂは、露光条件のリセットの第１の例を示す図である（第２のシーン）。
【図１１Ｃ】図１１Ｃは、露光条件のリセットの第１の例を示す図である（第３のシーン）。
【図１１Ｄ】図１１Ｄは、露光条件のリセットの第１の例を示す図である（第４のシーン）。
【図１２Ａ】図１２Ａは、露光条件のリセットの第２の例を示す図である（リセット前）。
【図１２Ｂ】図１２Ｂは、露光条件のリセットの第２の例を示す図である（リセット後）。
【図１３】図１３は、ＳＬＡＭ処理が失敗した場合の露光量の設定手順の一例を示す図である。
【図１４】図１４は、露光量に起因する自己位置の誤差の一例を示す図である。
【図１５】図１５は、コンピュータ装置のハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
［第１実施形態］
図１は、一実施形態に係る位置推定装置１０の構成を示すブロック図である。位置推定装置１０は、映像処理部１１０と、撮像制御部１２０とを少なくとも含む。映像処理部１１０及び撮像制御部１２０は、例えば、１以上のプロセッサと１以上のメモリとを用いて実現される。位置推定装置１０は、撮像部１００をさらに含んでもよい。ただし、撮像部１００は、位置推定装置１０と異なる装置に含まれてもよい。撮像部１００は、映像処理部１１０及び撮像制御部１２０と有線又は無線で接続される。
【００１３】
位置推定装置１０は、３次元の実空間における撮像部１００の位置（以下「撮像位置」ともいう。）を推定するための情報処理装置である。位置推定装置１０が撮像部１００を含む場合、ここでいう撮像位置は、自己位置と言い換えることができる。すなわち、この場合の自己位置は、位置推定装置１０がある位置のことである。
【００１４】
撮像部１００は、撮像された映像を示す映像データを生成する。撮像部１００は、ＣＭＯＳ（Complementary Metal-Oxide-Semiconductor）センサ等の撮像素子を含んで構成される。撮像部１００は、典型的には、いわゆるビデオカメラである。本実施形態において、撮像部１００は、自動車、ＵＡＶ（Unmanned Aerial Vehicle）等の移動する物体に搭載される。したがって、撮像部１００の撮像範囲、すなわち撮像部１００により撮像されるシーンは、時々刻々と変化し得る。ただし、映像処理部１１０及び撮像制御部１２０は、この移動する物体に搭載される必要はなく、例えば当該物体と無線通信する構成であってもよい。
【００１５】
本実施形態における映像は、複数のフレームにより構成される。すなわち、映像は、所定の時間間隔で撮像された複数の画像（静止画）を含む。映像のフレームレートは、例えば３０ｆｐｓ（frames per second）以上であるが、必ずしもこれに限定されない。また、本実施形態におけるフレームレートは、ＣＦＲ（Constant Frame Rate）とＶＦＲ（Variable Frame Rate）のいずれであってもよい。また、本実施形態における映像は、モノクロであるかカラーであるかを問わず、その解像度（すなわち１画面当たりの画素数）も限定されない。ただし、以下においては、説明の便宜上、映像はモノクロであるとする。
【００１６】
撮像部１００は、所定のフレームレートで映像データを生成することができる。すなわち、映像データは、撮像タイミングが異なる複数の画像を含む。撮像部１００は、このような映像データを映像処理部１１０に供給する。また、撮像部１００は、撮像制御部１２０により決定された露光条件で撮像を実行する（詳細は後述）。
【００１７】
映像処理部１１０は、撮像部１００により生成された映像データに映像処理を実行する。本実施形態において、映像処理部１１０により実行される映像処理は、撮像部１００により撮像された映像に基づいて撮像位置を推定する処理を少なくとも含む。以下においては、この処理のことを「位置推定（localization）」ともいう。また、映像処理部１１０は、撮像部１００により撮像された映像に基づいて、後述されるマッピング（マップ情報の生成）を実行してもよい。
【００１８】
いくつかの場合において、映像処理部１１０は、位置推定とマッピングとをＳＬＡＭを用いて実行する。この場合、映像処理部１１０は、映像から抽出される特徴点に基づいて、位置推定とマッピングとを実行する。この場合、マッピングにより生成されるマップ情報は、複数の特徴点の位置関係を示す。マップ情報は、具体的には、特徴点の３次元座標とその特徴量とを特徴点毎に表す情報である。換言すれば、マップ情報は、どのような特徴点が実空間のどの位置にあるかを示す情報である。また、映像処理部１１０は、撮像部１００が移動しながら撮像を実行することで、マップ情報を更新することができる。ここでいう更新とは、マップ情報に新たな情報を追加することをいう。
【００１９】
特徴点は、画像を特徴付ける点である。特徴点は、例えば、画像において特徴的な輝度変化を示す部分であり、典型的には輝度変化が急峻な部分である。特徴点の一例としては、いわゆるエッジやコーナーを挙げることができる。本実施形態における特徴点としては、ＳＩＦＴ（Scale-Invariant Feature Transform）、ＳＵＲＦ（Speeded Up Robust Features）、ＨＯＧ（Histograms of Oriented Gradients）など、周知の特徴量のいずれかに基づいて抽出される特徴点が利用可能である。本実施形態における特徴点は、典型的には、輝度や照明の変化に対して頑強（ロバスト）な特徴点である。また、本実施形態における映像は、位置推定等に必要な十分な数の特徴点が抽出できるものであるとする。
【００２０】
撮像制御部１２０は、撮像部１００による撮像を制御する。撮像制御部１２０は、例えば、撮像部１００による撮像時の露光条件を決定する。ここでいう露光条件は、露光量、露光時間、シャッター速度、絞り、ゲインなどを含み得る。撮像制御部１２０は、一般的な自動露出機能に加え、映像処理部１１０から得られる情報（以下「映像関連情報」ともいう。）に基づいて露光条件を決定することができる。映像関連情報は、例えば、撮像部１００により撮像された映像を用いて特定される、当該映像の輝度に関する情報（以下「輝度情報」ともいう。）である。
【００２１】
より詳細には、撮像制御部１２０は、映像処理部１１０によって第１のグループに属するフレームに対して実行される映像処理において得られる映像関連情報に基づいて、当該第１のグループと異なる第２のグループに属するフレームにおける露光条件を決定する。また、撮像制御部１２０は、第２のグループに属するフレームに対する映像処理において得られる映像関連情報に基づいて、第１のグループに属するフレームにおける露光条件を決定してもよい。
【００２２】
本実施形態において、映像データに含まれるフレームは、「ＢＦ（bright frame）」と「ＤＦ（dark frame）」のいずれかに分類される。ＢＦ及びＤＦは、上述の第１のグループ及び第２のグループの一例に相当する。第１のグループは、ＢＦ及びＤＦのいずれか一方に相当し、第２のグループは、ＢＦ及びＤＦの他方に相当する。
【００２３】
ＢＦは、ＤＦよりも明るく撮像されるフレームである。例えば、ＢＦは、ＤＦに比べ、各画素の露光量が多い。換言すれば、ＢＦは、いわゆる「白飛び（撮像素子に対する光量が過多で階調が著しく失われた状態）」がＤＦよりも生じやすい露光条件で撮像されているともいえる。また、ＤＦは、いわゆる「黒潰れ（撮像素子に対する光量が過少で階調が著しく失われた状態）」がＢＦよりも生じやすい露光条件で撮像されているといえる。ただし、ここでいうＢＦ（又はＤＦ）は、他方に比べて相対的に明るい（又は暗い）だけであって、その絶対的な明るさが特定の範囲に限定されるものではない。
【００２４】
図２は、映像におけるＢＦ及びＤＦの一例を示す図である。いくつかの場合において、ＢＦとＤＦは、映像に交互に含まれる。例えば、図２に例示された映像は、第１、第３、第５、…、第ｎフレームがＢＦであり、第２、第４、第６、…、第（ｎ＋１）フレームがＤＦである。ここにおいて、ｎは、１以上の整数（奇数）である。
【００２５】
図２の場合、映像は、ＢＦの次にＤＦ、そのＤＦの次に別のＢＦ、というようにＢＦとＤＦが繰り返される。ただし、ＢＦとＤＦは、必ずしも映像に交互に含まれなくてもよい。例えば、映像は、ＢＦが数フレーム連続した後にＤＦが数フレーム連続してもよい。また、ＢＦとＤＦは、映像に等しい比率で含まれていなくてもよい。
【００２６】
撮像制御部１２０は、第１のグループに属するフレームに関する輝度情報に基づいて、第２のグループに属するフレームの撮像時の露光条件を決定することができる。すなわち、撮像制御部１２０は、あるフレームの露光条件を、当該フレームと異なるグループに属し、かつ当該フレームより前に撮像されたフレームに関する輝度情報に基づいて決定することができる。
【００２７】
例えば、図２の場合において、撮像制御部１２０は、第ｎフレームに関する輝度情報に基づいて第（ｎ＋１）フレームの撮像時の露光条件を決定してもよい。あるいは、撮像制御部１２０は、第ｎフレームに関する輝度情報に基づいて第（ｎ＋３）フレームの撮像時の露光条件を決定してもよい。撮像制御部１２０によって露光条件が決定されるフレームと、露光条件を決定するための輝度情報を得るフレームは、グループが異なっていれば、必ずしも連続していなくてよい。以下においては、露光条件を決定するための輝度情報を得るフレームを「第１のフレーム」、撮像制御部１２０によって露光条件が決定されるフレームを「第２のフレーム」ともいう。
【００２８】
撮像制御部１２０は、露光条件を決定するための輝度情報を映像処理部１１０から取得する。本実施形態において、輝度情報は、画像に含まれる１又は複数の画素の輝度に関連する情報である。いくつかの場合において、輝度情報は、１又は複数の画素の輝度値を示す。例えば、輝度情報は、画像中の特徴点の輝度値であってもよく、特徴点の輝度値に基づいて得られる情報（複数の特徴点の輝度値のヒストグラム）であってもよい。なお、ここでいう「輝度」は、後述される絶対輝度と相対輝度の双方を含む。
【００２９】
いくつかの場合において、撮像制御部１２０は、第１のフレームと第２のフレームとから同一の特徴点が複数抽出されるように第２のフレームの露光条件を決定する。この場合において、第１のフレームと第２のフレームとは、その撮像範囲に同一の特徴点（すなわち、実空間における同一の位置）が含まれる（映っている）ものとする。
【００３０】
図３は、ある被写体を撮像した画像から抽出され得る特徴点の絶対輝度値に対する分布を示すヒストグラムの一例を示す模式図である。このヒストグラムは、横軸が特徴点の相対輝度値に基づいて算出される絶対輝度値を示し、縦軸が特徴点の頻度、すなわち画素数を示す。ここにおいて、絶対輝度とは、撮像される物体表面の明るさをいう。絶対輝度値は、この絶対輝度を所定の基準に従って数値化した値である。絶対輝度は、便宜的には照度に相当すると考えてもよい。よって、絶対輝度値は、便宜的にルクス、すなわちルーメン毎平方メートルで表してもよい。なお、絶対輝度値は、ここでは大きいほど明るいことを示す。
【００３１】
撮像部１００は、このようなヒストグラムで表される被写体を一定のダイナミックレンジで撮像する。ただし、撮像部１００のダイナミックレンジは、有限の範囲であるため、被写体から抽出され得る特徴点の全てを記録することはできない。撮像部１００により撮像された各画素の輝度値のことを、以下においては「相対輝度値」という。また、相対輝度値によって表される各画素の相対的な明るさのことを、以下においては「相対輝度」という。
【００３２】
相対輝度値は、ある物体が特定の露光条件で撮像された場合における各画素の輝度値である点において、撮像される物体そのものの明るさを示す絶対輝度値と異なる。すなわち、ここでいう相対輝度値は、物体そのものの明るさと、撮像時の露光条件とに依存する。相対輝度値は、撮像部１００の画像出力が８ビットである場合には、０〜２５５（すなわち２５６階調）の無次元量によって表される。相対輝度値は、絶対輝度値と同様に、ここでは大きいほど明るいことを示す。
【００３３】
絶対輝度値は、ある露光条件で撮像された画像の相対輝度値と、当該画像の撮像時の露光条件とに基づいて算出することができる。絶対輝度値は、相対輝度値及び露光量を変数とする所定の関数に基づいて算出されてもよい。絶対輝度値は、例えば、以下のように算出することもできる。
【００３４】
ここで、ＤＦにおける絶対輝度値をＬD、ＤＦにおける相対輝度値をＩDとすると、ＬD及びＩDは、以下の式（１）を満たす。ここにおいて、γは、所定の定数である。γは、例えば「１／２．４（≒０．４２）」であるが、これに限定されない。また、ＩDは、ここでは０（最小値）〜１（最大値）に正規化された数値とする。ＩDは、撮像部１００の画像出力が８ビットである場合には、出力値を「２５５」で除することによって算出される。
2019021412.tif 000003
【００３５】
また、ＢＦにおける絶対輝度値をＬB、ＢＦにおける相対輝度値をＩBとすると、ＬB及びＩBは、以下の式（２）を満たす。ここにおいて、γは、式（１）と同様の定数である。また、ＩBは、ＩDと同様に、０〜１に正規化された数値とする。
2019021412.tif 000004
【００３６】
なお、同一のシーンを異なる露光量で撮影した場合、絶対輝度値と露光量は、次の式（３）を満たす。ここにおいて、ＫDは、ＤＦにおける露光量を表す。また、ＫBは、ＢＦにおける露光量を表す。そうすると、式（１）は、式（２）及び式（３）を用いて式（４）のように変形することが可能である。
2019021412.tif 000005
【００３７】
2019021412.tif 000006
【００３８】
あるいは、ＩD及びＩBは、次の式（５）のように近似的に表すことも可能である。ここにおいて、ａ及びｂは、撮像部１００の特性等によって定まる係数である。
2019021412.tif 000007
【００３９】
図３において、撮像部１００が第１の露光条件で撮像した場合の輝度レンジをＲ１、第２の露光条件で撮像した場合の輝度レンジをＲ２とする。例えば、第１の露光条件で撮像された場合、被写体のうちの絶対輝度値が輝度レンジＲ１の上限値を上回る部分は、相対輝度値が一様に最大値を示す画像となる。すなわち、この部分では、画像に白飛びが発生する。一方、第２の露光条件で撮像された場合、被写体のうちの絶対輝度値が輝度レンジＲ２の下限値を下回る部分は、相対輝度値が一様に最小値を示す画像となる。すなわち、この部分では、画像に黒潰れが発生する。特徴点は、白飛びや黒潰れが発生した領域、すなわち階調に有意な変化が生じない領域からは、抽出することが困難である。
【００４０】
画像のうちの相対輝度値が輝度レンジＲ１、Ｒ２の範囲内にある領域は、相対輝度値に差はあるものの、撮像されたそれぞれの画像において階調が再現されている。したがって、輝度レンジＲ１及びＲ２が重なる範囲、すなわち絶対輝度値が図中のＲ３に含まれる範囲の画素は、第１の露光条件と第２の露光条件のいずれで撮像された場合においても、白飛び又は黒潰れのいずれも発生することなく撮像される。そのため、範囲Ｒ３に含まれる画素に基づいて抽出される特徴点は、第１の露光条件で撮像された画像と第２の露光条件で撮像された画像の双方から抽出可能である。
【００４１】
また、異なる露光条件で撮像された２つの画像には、他方の画像では階調が再現されていない部分が含まれ得る。例えば、第１の露光条件で撮像された画像には、第２の露光条件で撮像された画像では黒潰れしている部分の階調が記録されている。一方、第２の露光条件で撮像された画像には、第１の露光条件で撮像された画像では白飛びしている部分の階調が記録されている。
【００４２】
以上より、図３の例において第１の露光条件で撮像された画像（以下「ＤＦ画像」ともいう。）と第２の露光条件で撮像された画像（以下「ＢＦ画像」ともいう。）とには、次の２点の特徴がある。第一に、ＢＦ画像及びＤＦ画像は、互いに共通の特徴点、すなわち双方から抽出可能な特徴点（絶対輝度値が範囲Ｒ３の特徴点）を含んでいる。第二に、ＢＦ画像及びＤＦ画像は、互いに共通でない特徴点、すなわち一方の画像からは抽出されるが、他方の画像からは抽出されない特徴点（絶対輝度値が輝度レンジＲ１の下限値以上かつ範囲Ｒ３の下限値以下、又は範囲Ｒ３の上限値以上輝度レンジＲ２の上限値以下の特徴点）を含んでいる。
【００４３】
これらの特徴は、映像処理部１１０による位置推定を輝度変化に対して頑強にすることを可能にする。例えば、映像処理部１１０は、複数の露光条件を切り替えながら撮像が実行されることにより、白飛びや黒潰れに起因して十分な数の特徴点が抽出できなくなって位置推定に失敗する可能性を減らすことが可能である。また、映像処理部１１０は、複数の露光条件を切り替えながら撮像が実行されることにより、このような切り替えが行われない場合よりも多くの特徴点を抽出することが可能である。なぜならば、露光条件が切り替わることによって、切り替え前に白飛び又は黒潰れによって特徴点が抽出できなかった領域からも特徴点が抽出できるようになるからである。
【００４４】
このような位置推定を可能にするために、撮像制御部１２０は、第１のフレームの輝度レンジと第２のフレームの輝度レンジとが部分的に重なり、双方のフレームから共通の特徴点が一定数以上抽出できるように第２のフレームの露光条件を決定する。換言すれば、撮像制御部１２０は、第１のフレームと第２のフレームのいずれにおいても黒潰れ及び白飛びを生じることなく撮像される領域（図２におけるＲ３）が発生するように第２のフレームにおける露光条件を決定する。撮像制御部１２０は、ＤＦの露光条件を決定する際にはＢＦから特定される輝度情報を参照し、ＢＦの露光条件を決定する際にはＤＦから特定される輝度情報を参照する。換言すれば、第１のフレームがＤＦである場合には第２のフレームがＢＦであり、第１のフレームがＢＦである場合には第２のフレームがＤＦである。
【００４５】
位置推定装置１０の構成は、以上のとおりである。この構成のもと、位置推定装置１０は、撮像部１００から供給される映像データに基づいて、撮像位置を推定するとともに、撮像部１００による撮像を制御する。また、位置推定装置１０は、位置推定とマッピングとを同時に、すなわち並行して実行してもよい。
【００４６】
図４は、位置推定装置１０の動作（特に、露光条件の制御に係る動作）を示すフローチャートである。位置推定装置１０は、撮像部１００による映像データの生成に際して、ステップＳ１１、Ｓ１２を繰り返し実行する。
【００４７】
ステップＳ１１において、映像処理部１１０は、所定の映像処理を実行する。このとき、映像処理部１１０は、撮像部１００により撮像された映像に基づく位置推定を少なくとも実行する。映像処理部１１０は、撮像部１００により撮像された映像から抽出される特徴点に基づいて撮像位置を推定する。ステップＳ１１における位置推定は、例えば、周知のＳＬＡＭ技術を用いて実行される。
【００４８】
ステップＳ１２において、撮像制御部１２０は、撮像部１００に適用される露光条件を決定する。より詳細には、撮像制御部１２０は、第２のフレームにおける撮像部１００の露光条件を、第１のフレームに対する映像処理において得られる映像関連情報（輝度情報等）に基づいて決定する。撮像部１００は、ステップＳ１２において決定された露光条件に従って第２のフレームの撮像を実行する。
【００４９】
映像処理部１１０は、このステップＳ１２において決定された露光条件に従って撮像された映像に基づいて撮像位置を推定することにより、ステップＳ１１を実行する。映像処理部１１０及び撮像制御部１２０は、このように互いの処理結果を反映させながら、ステップＳ１１、Ｓ１２を繰り返し実行する。その結果、露光条件は、ＢＦの露光条件とＤＦの露光条件とが切り替わる場合にも、双方のフレームから共通の特徴点が抽出されるように決定される。
【００５０】
以上のとおり、本実施形態の位置推定装置１０は、映像に含まれるフレームが露光条件に基づいて第１のグループと第２のグループとに区別される場合において、一方のグループに属する第１のフレームに対する映像処理において得られる映像関連情報に基づいて、他方のグループに属する第２のフレームを撮像する際の露光条件を決定する構成を有する。この構成は、第１のグループに属するフレームの画像と第２のグループに属するフレームの画像とから共通の特徴点を抽出することを可能にする。
【００５１】
ＳＬＡＭ等の映像ベースの位置推定において、画像から十分な数の特徴点が抽出できない場合、生成済みのマップ情報のような既知の特徴点との比較が困難になる。そのため、例えば、時間的又は空間的な明暗差が顕著なシーンのような、白飛びや黒潰れが多く発生し得るシーンを用いた位置推定は、そうでないシーンでの位置推定に比べ、推定の精度が低下したり、推定自体が失敗したりする可能性が高まる。これに対し、本実施形態の位置推定装置１０は、白飛びや黒潰れが多く発生し得るシーンにおいて、上述のように露光条件を切り替えることにより、十分な数の特徴点を抽出することが可能である。したがって、本実施形態の位置推定装置１０によれば、同様の構成を有しない場合に比べ、映像を用いた位置推定の精度を向上させることが可能である。
【００５２】
［第２実施形態］
図５は、別の実施形態に係る自律移動システム２０の構成を示すブロック図である。自律移動システム２０は、ＵＡＶ、自律走行車、自律移動ロボット等の移動体に搭載されるシステムである。自律移動システム２０は、撮像部２００と、ＳＬＡＭ部２１０と、撮像制御部２２０と、移動制御部２３０とを含む。このうち、撮像部２００、ＳＬＡＭ部２１０及び撮像制御部２２０は、第１実施形態の位置推定装置１０の一例に相当する。
【００５３】
以下においては、自律移動システム２０は、ＵＡＶに搭載されるものとする。すなわち、ここでいう「移動」は、空中の飛行を含む。ただし、自律移動システム２０は、ＵＡＶに限らず、他の移動体に適用されることも可能である。撮像部２００、ＳＬＡＭ部２１０及び撮像制御部２２０の動作は、移動体が異なっても、基本的には変わらない。
【００５４】
なお、以降の実施形態において、ブロック図に示される矢印は、ブロック間のデータの流れの一例を示し、データの流れが図示された矢印の方向のみに限定されることを意図しない。また、以降の実施形態及び変形例において使用される用語のうち、第１実施形態においても使用された用語は、特に断りがある場合を除き、第１実施形態において使用された用語と同様の意味で用いられる。また、本実施形態においては、ＢＦとＤＦが交互に（すなわち１フレーム毎に）切り替わるものとする。
【００５５】
撮像部２００は、映像データを生成する。撮像部２００は、ＣＭＯＳセンサ等の撮像素子と、レンズ、絞り等の光学系部材とを少なくとも含む。この撮像素子は、ＵＡＶの特定の位置に固定的に設けられる。撮像部２００は、所定のフレームレートで撮像された映像データをＳＬＡＭ部２１０に供給する。
【００５６】
ＳＬＡＭ部２１０は、位置推定及びマッピングを実行する。ＳＬＡＭ部２１０は、ＳＬＡＭ技術を用いて、ＵＡＶの位置（以下「自己位置」ともいう。）を推定するとともにマップ情報を生成する。ＳＬＡＭ部２１０は、より詳細には、特徴点抽出部２１１と、位置推定部２１２と、地図生成部２１３とを含む。ＳＬＡＭ部２１０は、第１実施形態における映像処理部１１０の一例に相当する。
【００５７】
特徴点抽出部２１１は、映像から特徴点を抽出する。特徴点抽出部２１１は、撮像部２００により生成された映像データに含まれる各フレームから特徴点を抽出する。なお、特徴点抽出部２１１による特徴点の抽出アルゴリズムは、特定のアルゴリズムに限定されない。特徴点抽出部２１１は、例えば、上述した特徴量（ＳＩＦＴ、ＳＵＲＦ、ＨＯＧなど）に基づいて特徴点を抽出する。
【００５８】
位置推定部２１２は、自己位置を推定する。位置推定部２１２は、特徴点抽出部２１１により抽出された特徴点と、地図生成部２１３により生成されたマップ情報とに基づいて、マップ情報により定義される空間におけるＵＡＶの位置、すなわち自己位置を推定する。
【００５９】
位置推定部２１２による位置推定は、周知のＳＬＡＭ技術を用いて実行される。例えば、位置推定には、ＰＴＡＭ（Parallel Tracking and Mapping for Small AR Workspaces）が利用可能である。なお、本実施形態において、自己位置は、撮像位置と実質的に同じである。また、ここでいう自己位置の推定は、座標の推定のみならず、姿勢（すなわち３次元的な傾き）の推定を含み得る。
【００６０】
位置推定部２１２は、位置推定の基準となるフレーム（以下「キーフレーム」ともいう。）における位置の推定結果を示すキーフレーム情報を地図生成部２１３に供給する。キーフレーム情報は、特定のフレームにおける自己位置を示す位置情報と、特徴点抽出部２１１により抽出された当該フレームにおける特徴点の位置を示す特徴点情報とを含む。なお、キーフレームは、映像データから以下のように決定される。
【００６１】
例えば、キーフレームは、撮像部２００の変位に基づいて決められる。ここでいう変位は、並進運動による変位と回転運動による変位の双方を含み得る。具体的には、映像データを構成するフレームのうちのあるキーフレームとその次のキーフレームは、それぞれの撮像範囲に同一の領域（すなわち実空間における同じ位置）を含むように決定される。ただし、ここでいう領域は、1又は複数の特徴点が抽出可能な領域であるとする。より詳細には、映像データを構成するフレームのうちのあるフレームがキーフレームである場合、次のキーフレームは、当該あるフレームが撮像された時点からの撮像部２００の移動量が所定の閾値以下である時点において撮像されたフレームである。すなわち、この場合、ある期間の映像データに占めるキーフレームの割合は、当該期間における撮像部２００の移動量（すなわち自己位置の変化）が多いほど高く、少ないほど低い。あるいは、キーフレームは、映像データに対して数フレームおきに（すなわち周期的に）設定されてもよい。
【００６２】
位置情報は、自己位置を所定の座標系によって表すデータである。例えば、位置情報は、３次元直交座標系のｘ、ｙ、ｚ座標の３成分と、各座標方向の傾き（回転）を表す３成分とを用いて記述することができる。また、特徴点情報は、特徴点抽出部２１１により抽出された特徴点のそれぞれの位置を、例えば所定の位置を原点とする３次元直交座標系を用いて示すデータである。特徴点情報において、各特徴点は、その特徴点の特徴量と座標の組み合わせによって一意的に特定することができる。
【００６３】
地図生成部２１３は、マップ情報を生成する。具体的には、地図生成部２１３は、位置推定部２１２から供給されたキーフレーム情報に基づいて、既存のマップ情報を更新する。より詳細には、地図生成部２１３は、マップ情報に記録されている既存の特徴点の情報（例えば、以前のキーフレーム情報から特定される特徴点）と、最新のキーフレーム情報から特定される特徴点とを比較し、新たに特定された特徴点をマップ情報に追加する。
【００６４】
このとき、地図生成部２１３は、自己位置の変化（すなわち変位）に応じた座標変換を実行することにより、異なる位置から撮像された特徴点同士を対応付けることができる。具体的には、地図生成部２１３は、異なる位置から撮像された特徴点を共通の座標系の座標に変換することが可能である。この座標変換は、同次変換等の周知技術に基づいて実現可能であるため、その詳細はここでは省略する。
【００６５】
撮像制御部２２０は、撮像部２００による撮像を制御する。撮像制御部２２０は、少なくとも撮像部２００による撮像時の露光条件を決定する。本実施形態において、撮像制御部２２０は、ＳＬＡＭ部２１０から供給される輝度情報を用いて露光条件を決定することができる。
【００６６】
例えば、撮像制御部２２０は、特徴点抽出部２１１により抽出された特徴点の相対輝度値を輝度情報として用いて露光条件を決定する。より詳細には、撮像制御部２２０は、ＤＦにおける露光条件を、ＢＦにおいて抽出された特徴点の相対輝度値に基づいて決定する。また、撮像制御部２２０は、ＢＦにおける露光条件を、ＤＦにおいて抽出された特徴点の相対輝度値に基づいて決定する。具体的には以下のとおりである。
【００６７】
撮像制御部２２０は、ＢＦの輝度レンジとＤＦの輝度レンジとが重複するように、換言すればＢＦとＤＦとにおいて同一の特徴点が抽出されるように、各フレームにおける露光条件を決定する。例えば、撮像制御部２２０は、ＢＦにおける露光量をＤＦにおける露光量に基づいて決定する。具体的には、撮像制御部２２０は、ＢＦ及びＤＦに関し、各特徴点の絶対輝度値を当該特徴点の相対輝度値に基づいて算出し、それぞれのフレームの特徴点の絶対輝度値を比較することにより露光条件を決定することができる。なお、特徴点の絶対輝度値は、その特徴点の相対輝度値を用いた所定の演算により算出可能である。
【００６８】
移動制御部２３０は、ＵＡＶの移動を制御する。移動制御部２３０は、ＳＬＡＭ部２１０により推定された自己位置と、ＳＬＡＭ部２１０により生成されたマップ情報とに基づいて、ＵＡＶの飛行を制御する。例えば、移動制御部２３０は、マップ情報により示される障害物に衝突しないようにこれを避けたり、撮像対象である物体を撮像範囲から外れないように撮像し続けたり、といった飛行制御を実行する。
【００６９】
図６は、ＳＬＡＭ部２１０の動作を示すフローチャートである。以下においては、図６に示される一連の処理のことを「ＳＬＡＭ処理」ともいう。なお、ＳＬＡＭ処理は、ＢＦ及びＤＦのいずれにおいても同様に実行される。ＳＬＡＭ部２１０は、撮像部２００により撮像が実行されている間、図６の処理を繰り返し実行する。
【００７０】
ステップＳ２１１において、特徴点抽出部２１１は、処理対象のフレームから特徴点を抽出する。なお、特徴点抽出部２１１は、特徴点の抽出を毎フレーム実行する。ステップＳ２１２において、位置推定部２１２は、ステップＳ２１１において抽出された特徴点とマップ情報とに基づいて自己位置を推定する。ステップＳ２１３において、地図生成部２１３は、ステップＳ２１１において抽出された特徴点と、ステップＳ２１２において推定された自己位置とに基づいて、マップ情報を生成（更新）する。
【００７１】
図７は、ステップＳ２１２の処理（以下「位置推定処理」ともいう。）の詳細を示すフローチャートである。位置推定部２１２は、この位置推定処理を毎フレーム実行する。なお、映像データにおける最初のキーフレームは、ここでは、撮像を開始した最初のフレームであるとする。
【００７２】
ステップＳ２１２１において、位置推定部２１２は、ステップＳ２１１において抽出された特徴点とマップ情報とに基づいて自己位置を推定する。ステップＳ２１２１の自己位置の推定は、ＳＬＡＭの要素技術の一つである。具体的には、位置推定部２１２は、ステップＳ２１１において抽出された特徴点とマップ情報に記録されている特徴点とを比較することにより、自己位置がマップ中のどこであるかを推定する。
【００７３】
ステップＳ２１２２において、位置推定部２１２は、キーフレームを更新するかを判断する。具体的には、位置推定部２１２は、カレントフレームにおける自己位置と直前のキーフレームにおける自己位置とを比較し、自己位置の変位が所定の閾値以上であるかを判断する。
【００７４】
自己位置の変位が所定の閾値以上である場合（Ｓ２１２２：ＹＥＳ）、位置推定部２１２は、ステップＳ２１２３を実行する。一方、自己位置の変位が所定の閾値未満である場合（Ｓ２１２２：ＮＯ）、位置推定部２１２は、ステップＳ２１２３をスキップ（省略）する。ステップＳ２１２３において、位置推定部２１２は、キーフレームを更新する。具体的には、位置推定部２１２は、カレントフレームを新たなキーフレームとする。
【００７５】
ステップＳ２１２４において、位置推定部２１２は、カレントフレームがキーフレームであるかを判断する。例えば、ステップＳ２１２３においてキーフレームが更新された場合、位置推定部２１２は、カレントフレームをキーフレームであると判断する。あるいは、位置推定部２１２は、撮像を開始した最初のフレームをキーフレームであると判断する。一方、カレントフレームが最初のフレームでもなく、ステップＳ２１２３において更新されてもいない場合、位置推定部２１２は、カレントフレームをキーフレームでないと判断する。
【００７６】
カレントフレームがキーフレームである場合（Ｓ２１２４：ＹＥＳ）、位置推定部２１２は、ステップＳ２１２５を実行する。一方、カレントフレームがキーフレームでない場合（Ｓ２１２４：ＮＯ）、位置推定部２１２は、ステップＳ２１２５をスキップする。ステップＳ２１２５において、位置推定部２１２は、カレントフレームにおいて推定された自己位置を示す位置情報とカレントフレームにおいて抽出された特徴点の位置を示す特徴点情報とをキーフレーム情報として出力する。すなわち、キーフレーム情報は、フレーム毎にではなく、キーフレーム毎に出力される。
【００７７】
図８は、ステップＳ２１３の処理（以下「マッピング処理」ともいう。）の詳細を示すフローチャートである。本実施形態において、マッピング処理は、キーフレーム情報に基づいて実行される処理である。そのため、マッピング処理は、フレーム毎にではなく、キーフレーム毎に実行される。マッピング処理がキーフレーム毎に実行されることで、マップ情報のデータ量及びマップ情報の記録に要する処理量が必要以上に増加することを抑えることが可能である。なお、マッピング処理は、ＳＬＡＭの要素技術の一つである。
【００７８】
ステップＳ２１３１において、地図生成部２１３は、位置推定部２１２により出力されたキーフレーム情報を取得する。ステップＳ２１３２において、地図生成部２１３は、ステップＳ２１３１において取得されたキーフレーム情報に含まれる特徴点情報と、既存のマップ情報とを比較する。特徴点情報には、マップ情報に含まれる特徴点と、マップ情報に含まれない特徴点とが混在している場合がある。
【００７９】
ステップＳ２１３３において、地図生成部２１３は、特徴点情報により示される特徴点の中にマップ情報に含まれない特徴点があるか判断する。マップ情報に含まれない特徴点がある場合（Ｓ２１３３：ＹＥＳ）、地図生成部２１３は、ステップＳ２１３４を実行する。一方、マップ情報に含まれない特徴点がない場合（Ｓ２１３３：ＮＯ）、地図生成部２１３は、ステップＳ２１３４をスキップする。
【００８０】
ステップＳ２１３４において、地図生成部２１３は、キーフレーム情報に含まれる特徴点情報が表す特徴点のうち、マップ情報に含まれない特徴点をマップ情報に追加する。また、地図生成部２１３は、このとき、自己位置の履歴（すなわちＵＡＶの経路）をあわせてマップ情報に記録してもよい。
【００８１】
なお、位置推定部２１２及び地図生成部２１３は、並列に動作しながら位置推定処理及びマッピング処理を実行してもよい。すなわち、位置推定部２１２は、地図生成部２１３により逐次更新されるマップ情報に基づいて自己位置を推定することができる。また、地図生成部２１３は、位置推定部２１２により逐次供給されるキーフレーム情報に基づいてマップ情報を更新することができる。
【００８２】
図９は、撮像制御部２２０の動作を示すフローチャートである。撮像制御部２２０は、ＳＬＡＭ部２１０がＳＬＡＭ処理を実行しているときに、図９の処理を実行する。すなわち、ＳＬＡＭ部２１０及び撮像制御部２２０は、並列に動作しながら図６、図９の処理をそれぞれ実行する。撮像制御部２２０は、撮像部２００により撮像が実行されている間、図９の処理を繰り返し実行する。
【００８３】
ステップＳ２２１において、撮像制御部２２０は、露光量の初期値を設定する。この初期値は、ＢＦ又はＤＦのいずれかに対応する所定の数値である。説明の便宜上、露光量の初期値は、ここではＢＦに対応する数値であるとする。
【００８４】
ステップＳ２２２において、撮像制御部２２０は、ステップＳ２２１、Ｓ２２７又はＳ２２８において設定された露光量で撮像部２００に撮像を実行させる。すなわち、撮像制御部２２０は、ステップＳ２２１、Ｓ２２７又はＳ２２８において設定された露光量で撮像が行われるように撮像部２００を制御する。例えば、ステップＳ２２２がステップＳ２２１に次いで実行される場合、撮像部２００は、ＢＦに相当する露光量で撮像を実行する。
【００８５】
ステップＳ２２３において、撮像制御部２２０は、ステップＳ２２２に従って撮像されたフレームから抽出された特徴点の相対輝度値を特定する。より詳細には、撮像制御部２２０は、ＳＬＡＭ処理のステップＳ２１１において抽出された特徴点の相対輝度値を特定する。ここにおいて、相対輝度値は、処理対象のフレーム、すなわちカレントフレームに含まれる特徴点の輝度値そのものである。
【００８６】
ステップＳ２２４において、撮像制御部２２０は、ステップＳ２２２に従って撮像されたフレームから抽出された特徴点の絶対輝度値を算出する。撮像制御部２２０は、ある特徴点の相対輝度値と、カレントフレームの撮像時に設定された露光量とを用いた所定の演算により、当該特徴点の絶対輝度値を算出する。
【００８７】
ステップＳ２２５において、撮像制御部２２０は、ステップＳ２２４において算出された絶対輝度値を用いて特徴点ヒストグラムを算出する。ここでいう特徴点ヒストグラムは、第１実施形態における図３のヒストグラムのように、カレントフレームから抽出される特徴点の絶対輝度値の分布を示す。撮像制御部２２０は、算出された特徴点ヒストグラムを所定の記憶領域に一時的に記憶する。撮像制御部２２０は、ＢＦの特徴点ヒストグラムとＤＦの特徴点ヒストグラムとをそれぞれ記憶する。本実施形態の特徴点ヒストグラムは、第１実施形態における映像関連情報の一例に相当する。
【００８８】
なお、絶対輝度値が撮像制御部２２０の輝度レンジを外れる画素は、白飛び又は黒潰れとして記録される。すなわち、このような画素の相対輝度値は、最小値（８ビット出力の場合、０）又は最大値（８ビット出力の場合、２５５）となる。よって、撮像制御部２２０は、ステップＳ２２５において、最大値又は最小値を示す相対輝度値を除外してから特徴点ヒストグラムを算出してもよい。このようにすれば、特徴点ヒストグラムから白飛び又は黒潰れの影響を取り除くことが可能である。
【００８９】
ステップＳ２２６において、撮像制御部２２０は、カレントフレームがＢＦとＤＦのいずれかを判断する。撮像制御部２２０は、カレントフレームがＢＦであれば（Ｓ２２６：ＹＥＳ）、ステップＳ２２７を実行する。また、撮像制御部２２０は、カレントフレームがＤＦであれば（Ｓ２２６：ＮＯ）、ステップＳ２２８を実行する。ステップＳ２２７及びＳ２２８は、いずれも、カレントフレームの次のフレームにおける露光量を設定する処理である。
【００９０】
ステップＳ２２７において、撮像制御部２２０は、ＤＦ用の露光量を設定する。撮像制御部２２０は、ＢＦの特徴点ヒストグラムに基づいて、ＤＦ用の露光量を設定する。具体的には、撮像制御部２２０は、カレントフレーム（この場合ＢＦ）と次のフレーム（この場合ＤＦ）とで輝度レンジが重複し、かつ両フレームにおいて共通の特徴点が所定の数以上抽出できるように、ＤＦ用の露光量を設定する。
【００９１】
なお、露光量と当該露光量で撮像可能な絶対輝度値の範囲との関係は、ここでは既知であるとする。すなわち、撮像部２００における露光量が定まれば、そのとき撮像される画像の輝度レンジも一意的に定まる。したがって、露光量を設定することは、ここでは輝度レンジの上限及び下限を設定することと実質的に同意であるといえる。ただし、輝度レンジの幅自体は、一定であるとする。
【００９２】
ステップＳ２２８において、撮像制御部２２０は、ＢＦ用の露光量を設定する。撮像制御部２２０は、ＤＦの特徴点ヒストグラムに基づいて、ＢＦ用の露光量を設定する。具体的には、撮像制御部２２０は、カレントフレーム（この場合ＤＦ）と次のフレーム（この場合ＢＦ）とで輝度レンジが重複し、かつ両フレームにおいて共通の特徴点が所定の数以上抽出できるように、ＢＦ用の露光量を設定する。
【００９３】
ステップＳ２２７又はＳ２２８の後、撮像制御部２２０は、ステップＳ２２２を実行する。撮像部２００は、次のフレームに対し、ステップＳ２２７又はＳ２２８において設定された露光量を適用する。ここでいう次のフレームは、ステップＳ２２７の後においてはＤＦであり、ステップＳ２２８の後においてはＢＦである。
【００９４】
撮像制御部２２０は、撮像部２００による撮像が終了するまで、このような処理を繰り返す。これにより、映像データは、ＢＦとＤＦが交互に繰り返される。換言すれば、映像データの各フレームは、明るめの露光条件で撮像された後は暗めの露光条件で撮像され、暗めの露光条件で撮像された後は明るめの露光条件で撮像される。
【００９５】
以上のとおり、本実施形態の自律移動システム２０は、ＢＦの露光条件をＤＦに対する映像処理において得られる輝度情報に基づいて決定する構成を有する。また、自律移動システム２０は、ＤＦの露光条件をＢＦに対する映像処理において得られる輝度情報に基づいて決定する構成を有する。また、ＢＦとＤＦは、本実施形態においては交互に繰り返される。このような構成は、ＢＦからＤＦ、あるいはＤＦからＢＦの切り替えに際し、前後のフレームで同じ特徴点を抽出することを可能にする。したがって、自律移動システム２０は、第１実施形態の位置推定装置１０と同様の作用効果を奏することができる。
【００９６】
また、本実施形態の自律移動システム２０は、特徴点ヒストグラムに基づいて露光量を決定することができる。ＵＡＶは、移動しながら撮影を行うため、撮像するシーンが時々刻々と変化し得る。したがって、撮像範囲内の絶対輝度値の分布も、時々刻々と変化し得る。しかし、絶対輝度値の分布は、シーンが徐々に明るくなったり暗くなったりといったように、撮像中に変化することがある。自律移動システム２０は、特徴点ヒストグラムを算出し、算出された特徴点ヒストグラムに基づいて露光量を決定することにより、フレーム内の特徴点の絶対輝度値の分布に応じて露光量を変化させることができる。したがって、自律移動システム２０によれば、露光量をシーンの変化に追従させることができる。これにより、自律移動システム２０は、輝度変化が激しいシーンであってもＳＬＡＭ処理が失敗するおそれを低減させることが可能である。
【００９７】
また、本実施形態の自律移動システム２０によれば、ＢＦとＤＦとが交互に、すなわち１フレーム単位で繰り返される。これにより、ＢＦとＤＦとが交互に繰り返されない場合に比べ、ＢＦとＤＦの間におけるＵＡＶの変位が少なくなるため、特徴点がより多く抽出される可能性が高まる。なぜならば、ＵＡＶは移動しながら撮影を行うため、ＢＦとＤＦの時間差が大きくなると、両フレームで同じ特徴点を抽出できなくなる可能性が高まるためである。一方、フレームレートがＵＡＶの移動速度に比して十分に高ければ、連続する２つのフレーム間におけるＵＡＶの自己位置の差は、無視できる程度に少ない。したがって、自律移動システム２０によれば、SLAM処理の精度、すなわち位置推定の精度及びマップ情報の精度を向上させることが可能である。
【００９８】
［第３実施形態］
図１０は、さらに別の実施形態に係る自律移動システム３０の構成を示すブロック図である。自律移動システム３０は、撮像部３００と、ＳＬＡＭ部３１０と、撮像制御部３２０と、移動制御部３３０とを含む。ＳＬＡＭ部３１０は、より詳細には、特徴点抽出部３１１と、位置推定部３１２と、地図生成部３１３とを含む。
【００９９】
自律移動システム３０は、いくつかの点を除き、第２実施形態の自律移動システム２０と同様の構成を有する。具体的には、自律移動システム３０は、撮像制御に履歴情報を用いる点において自律移動システム２０と相違する。より詳細には、自律移動システム３０は、以下の構成が自律移動システム２０と異なる。
【０１００】
撮像制御部３２０は、履歴情報を記憶する記憶部３２１を含む。履歴情報は、映像データの各フレームにおける絶対輝度値の履歴を示す。履歴情報は、撮像部３００による撮像中にシーンがどのように変化したかを示しているともいえる。撮像制御部３２０は、撮像部３００が撮像を開始してからの全フレームの絶対輝度値を記憶部３２１に記憶するように構成されてもよいが、直近の一定期間のフレームの絶対輝度値のみを記憶部３２１に記憶し、古い情報を破棄するように構成されてもよい。
【０１０１】
履歴情報は、絶対輝度値とその座標を関連付けたデータであってもよいが、絶対輝度値のヒストグラムであってもよい。換言すれば、履歴情報は、各フレームの輝度の傾向、すなわち、各フレームが全体としてどのような明るさのシーンであるかを特定できれば足りる。
【０１０２】
以下においては、記憶部３２１には、各フレームの絶対輝度値のヒストグラムが履歴情報として記憶されているとする。絶対輝度値のヒストグラムを算出する機能は、ＳＬＡＭ部３１０と撮像制御部３２０のいずれが有していてもよい。
【０１０３】
例えば、ＳＬＡＭ部３１０が絶対輝度値のヒストグラムを算出する場合、特徴点抽出部３１１は、まず、画像を構成する各画素の相対輝度値に基づいて、各画素の絶対輝度値を算出する。次いで、特徴点抽出部３１１は、各画素の絶対輝度値を用いてヒストグラムを算出し、算出されたヒストグラムをフレーム毎に撮像制御部３２０に供給する。撮像制御部３２０は、特徴点抽出部３１１から供給されたヒストグラムを記憶部３２１に記録する。
【０１０４】
一方、撮像制御部３２０が絶対輝度値のヒストグラムを算出する場合、特徴点抽出部３１１は、画像を構成する各画素の相対輝度値を撮像制御部３２０に供給する。撮像制御部３２０は、特徴点抽出部３１１から供給された各画素の相対輝度値に基づいて、絶対輝度値のヒストグラムを算出する。
【０１０５】
撮像制御部３２０は、履歴情報を参照することにより、絶対輝度値の時間変化を特定することができる。換言すれば、撮像制御部３２０は、履歴情報を参照することにより、映像においてシーンがどのように変化したかを特定することができる。例えば、撮像制御部３２０は、シーンが全体として明るくなったり、あるいは暗くなったりしていることを、履歴情報に基づいて特定することができる。
【０１０６】
また、撮像制御部３２０は、このような履歴情報を用いて露光条件をリセットすることができる。ここでいうリセットは、例えば、ＢＦ用及びＤＦ用の露光量のそれぞれを所定の値（例えば、初期値）に変更することである。例えば、撮像制御部３２０は、特徴点抽出部３１１により抽出される特徴点の数（又はその変化）が所定の条件を満たした場合に、露光条件をリセットする。あるいは、撮像制御部３２０は、絶対輝度値が所定の分布を示す場合（換言すれば、絶対輝度値のヒストグラムが所定の形状の曲線となる場合）に、露光条件をリセットしてもよい。
【０１０７】
一例として、撮像制御部３２０は、特徴点抽出部３１１により抽出される特徴点の数が時間とともに減少した場合（例えば、所定の期間に所定の割合以上減少した場合）や、特徴点抽出部３１１により抽出される特徴点の数が所定の閾値以下になった場合に、露光条件をリセットする。換言すれば、撮像制御部３２０は、特徴点抽出部３１１により抽出される特徴点の数が減少し、位置推定が失敗する可能性が高まった場合に、露光条件をリセットする。
【０１０８】
図１１Ａ〜図１１Ｄは、本実施形態における撮像制御、すなわち露光条件のリセットの一例を示す図である。図１１Ａ〜図１１Ｄに示すヒストグラムは、それぞれ、シーン全体の絶対輝度値を仮想的に示す。これらのヒストグラムは、シーン全体の絶対輝度値の時系列的な変化を示している。すなわち、ヒストグラムＨｂは、ヒストグラムＨａよりも後のシーンのヒストグラムである。また、ヒストグラムＨｃは、ヒストグラムＨｂよりも後のシーンのヒストグラムである。また、ヒストグラムＨｄは、ヒストグラムＨｃよりも後のシーンのヒストグラムである。また、図中のＢＦ、ＤＦは、それぞれ、各シーンにおけるＢＦ又はＤＦの輝度レンジ（すなわち撮像可能な絶対輝度値の範囲）を示している。なお、履歴情報として記録される絶対輝度値は、図示されたヒストグラム全体ではなく、図中のＢＦ又はＤＦの範囲に含まれる絶対輝度値のみである。
【０１０９】
図１１Ａ〜図１１Ｄを用いて例示されたシーンは、絶対輝度値のピークを２つ有し、かつ、明るい側のピークに相当する領域が撮像範囲から徐々に外れるようなシーンである。本実施形態において、このようなシーンが撮像された場合、ＢＦ及びＤＦの輝度レンジは、最初は徐々に明るい側にシフトする（図１１A、図１１Ｂ参照）。
【０１１０】
しかし、撮像部３００の輝度レンジは有限であるため、ＢＦの輝度レンジは、一定の値より明るくはならない。一方、シーンは徐々に変化し、明るい側のピークに相当する領域は、撮像範囲から外れていく（図１１Ｂ、図１１Ｃ参照）。そうすると、ＢＦ及びＤＦの輝度レンジのオーバーラップが増えたとしても、双方のフレームから抽出される特徴点はさほど増加しない。また、シーンの変化に追従し続けるだけでは、十分な数の特徴点がＢＦ及びＤＦの双方から抽出できなくなる可能性も生じる。
【０１１１】
そこで、撮像制御部３２０は、撮像されたシーンにこのような変化がある場合に、露光条件をリセットする。具体的には、撮像制御部３２０は、ＢＦ及びＤＦのうち、特徴点抽出部３１１により抽出される特徴点の数がより多いフレームの絶対輝度値に基づいて露光条件をリセットする。図１１Ｃの例の場合、撮像制御部３２０は、相対輝度値が小さくなる（すなわち、露光量が少なくなる）方向に露光条件を変更する。
【０１１２】
そうすると、ＢＦ及びＤＦの輝度レンジは、シーンの変化に追従したそれまでの変化（図１１Ａ〜図１１Ｃ参照）とは異なり、初期値に応じた一定の範囲に変化する（図１１Ｄ参照）。このようにすることで、ＢＦ及びＤＦの輝度レンジがシーンの変化に再び追従するように変化することが可能になる。したがって、撮像制御部３２０は、位置推定をシーンの変化に対して頑強にすることが可能である。
【０１１３】
図１２Ａ及び図１２Ｂは、本実施形態における撮像制御の別の例を示す図である。図１２Ａ及び図１２Ｂに示すヒストグラムは、図１１Ａ〜図１１Ｄに示すヒストグラムと同様に、シーン全体の絶対輝度値をそれぞれ示す。また、図中のＢＦ、ＤＦは、それぞれ、各シーンにおけるＢＦ又はＤＦの輝度レンジ（すなわち撮像可能な絶対輝度値の範囲）を示している。
【０１１４】
図１２Ａの例において、撮像制御部３２０は、特徴点抽出部３１１により抽出される特徴点の数が少なく、所定の閾値以下であったとする。このように、絶対輝度値のヒストグラムに偏りがある場合において、第２実施形態の撮像制御（図９参照）を実行すると、ＢＦ及びＤＦの輝度レンジは、徐々にヒストグラムのピーク位置にシフトする。しかし、ＢＦ及びＤＦの輝度レンジがピーク位置にシフトし、双方のフレームにおいて十分な数の特徴点が抽出できるようになるまでに時間を要する。
【０１１５】
このような場合において、撮像制御部３２０は、履歴情報に基づいて露光条件をリセットする。具体的には、撮像制御部３２０は、特徴点抽出部３１１により抽出される特徴点の数が所定の閾値以下である場合に、ＢＦ及びＤＦの絶対輝度値に基づいて、特徴点がより多く抽出される方向（この例の場合、露光量が少なくなる方向）に露光条件を変更する。
【０１１６】
そうすると、ＢＦ及びＤＦの輝度レンジは、図１２Ｂに示すようにシフトする。これにより、特徴点抽出部３１１は、十分な数の特徴点を、第２実施形態の撮像制御が実行された場合よりも少ない所要時間で抽出できるようになる。したがって、撮像制御部３２０は、位置推定をシーンの変化に対して頑強にすることが可能である。
【０１１７】
［変形例］
上述した第１〜第３実施形態は、例えば、以下のような変形を適用することができる。これらの変形例は、必要に応じて適宜組み合わせることも可能である。また、特定の実施形態を用いて記載された変形例は、矛盾を生じない範囲において、他の実施形態にも適用され得る。
【０１１８】
（１）映像処理部１１０は、映像に基づいてオプティカルフローを算出してもよい。オプティカルフローは、映像に含まれる物体の動きを表す。映像処理部１１０は、オプティカルフローに基づいて、撮像範囲の移動方向（換言すれば、撮像部１００の移動方向）を推定することができる。なお、オプティカルフローの算出方法は、周知のいずれの方法であってもよく、特に限定されない。
【０１１９】
撮像制御部１２０は、映像関連情報と、映像処理部１１０により推定された撮像範囲の移動方向にある画素の明るさとに基づいて露光条件を決定してもよい。例えば、撮像制御部１２０は、ステップＳ１２において決定された露光条件を、映像処理部１１０により推定された撮像範囲の移動方向にある画素の明るさに基づいて補正する。
【０１２０】
一例として、撮像範囲に占める明るい領域の割合が徐々に多くなるような場合、撮像部１００は、撮像されるシーンに明るい物体が徐々に増えているか、あるいは暗い場所から明るい場所に向かっている、といえる。例えば、撮像部１００を搭載した物体がトンネル内から出口に移動するような場合の映像は、時間とともに明るくなる。このような場合、撮像制御部１２０は、明るくなった画像からでも特徴点が抽出できるように、露光量を低下させる。
【０１２１】
なお、映像から算出されるオプティカルフローには、撮像範囲の移動方向と異なるものが含まれ得る。例えば、映像に自動車や人間などの物体が映り込んだ場合、この物体に対応するオプティカルフローは、シーン全体としてのオプティカルフローと異なる動きを示す。映像処理部１１０は、このようなオプティカルフローを無視することにより、シーン中の移動する物体が移動方向の推定に与える影響を低減させてもよい。
【０１２２】
（２）マップ情報は、ＳＬＡＭ処理によって生成されてもよいが、あらかじめ生成及び記録されていてもよい。マップ情報があらかじめ記録される場合、ＳＬＡＭ部２１０は、マッピング処理を実行する必要がない。すなわち、ＳＬＡＭ部２１０は、所定の記憶領域にあらかじめ記録されたマップ情報に基づいて位置推定処理を実行する。なお、このようなマップ情報は、自律移動システム２０とは別の撮像システムを用いて生成されてもよい。
【０１２３】
（３）マップ情報は、複数の特徴点の位置及び特徴量を示す情報（以下「第１の情報」ともいう。）に加え、当該複数の特徴点の明るさを示す情報（以下「第２の情報」ともいう。）を含んでもよい。第２の情報は、例えば、特徴点の絶対輝度値を示す情報である。第２の情報は、特徴点の絶対輝度値をヒストグラムで表す情報であってもよい。
【０１２４】
第２の情報は、マップ情報と同様にあらかじめ記録されていてもよいが、位置推定部２１２により生成され、キーフレーム情報の一部として地図生成部２１３に供給されてもよい。あらかじめ記録されたマップ情報に第２の情報が含まれる場合には、特徴点の抽出に必要なおおよその露光条件が予測可能である。
【０１２５】
マップ情報が第２の情報を含む場合、撮像制御部２２０は、ＢＦ及びＤＦの特徴点ヒストグラム（すなわち、映像関連情報）と、第２の情報とに基づいて露光条件を決定することができる。例えば、撮像制御部２２０は、第２の情報により示される特徴点の絶対輝度値に基づいて、ＢＦ及びＤＦの双方で抽出可能な特徴点が一定数を超えるように露光量を決定してもよい。このようにすれば、撮像制御部２２０は、実空間上の特徴点が既知の位置の近傍においては、第２の情報に基づいて露光条件を決定することができる。したがって、撮像制御部２２０は、位置推定が失敗する可能性を低減させることが可能である。
【０１２６】
さらに、撮像制御部２２０は、あらかじめ記録された第２の情報と位置推定部２１２により生成された第２の情報とがある場合には、これらの比較結果に基づく撮像制御を実行してもよい。あらかじめ記録された第２の情報は、あらかじめ記録されたマップ情報が生成された時点での特徴点の明るさを示す。これに対し、位置推定部２１２により生成された第２の情報は、撮像部２００により撮像された時点での特徴点の明るさ、すなわち、すなわち撮像時の明るさを示す。したがって、マップ情報により表される実空間が屋外のように照明条件が一定でない空間である場合には、これらの第２の情報が表す特徴点は、実際には同じ特徴点であっても絶対輝度値が異なる可能性がある。そうすると、撮像制御部２２０は、第２の情報に基づいて露光条件を決定する場合に適切な露光条件とすることができずに、十分な数の特徴点が抽出できない映像が撮像される可能性が生じる。
【０１２７】
そこで、撮像制御部２２０は、あらかじめ記録された第２の情報と位置推定部２１２により生成された第２の情報とがある場合には、同一（又は実質的に同一）の位置にある特徴点の明るさを比較し、その差に応じた露光条件を決定してもよい。例えば、撮像制御部２２０は、あらかじめ記録された第２の情報により示されるある特徴点の絶対輝度値（以下「第１の絶対輝度値」ともいう。）と、位置推定部２１２から供給された当該特徴点の絶対輝度値（以下「第２の絶対輝度値」ともいう。）との差分が所定の閾値以上である場合には、あらかじめ記録された第２の情報に基づいて決定された露光量を補正する。より具体的には、撮像制御部２２０は、第１の絶対輝度値が第２の絶対輝度値よりも明るい場合には、あらかじめ記録された第２の情報に基づいて決定された露光量を低下させる方向（すなわち明るさを抑える方向）に補正する。このようにすれば、撮像制御部２２０は、撮像時の照明条件に応じた露光条件で撮像部２００に撮像させることが可能である。したがって、撮像制御部２２０は、位置推定が失敗する可能性を低減させることが可能である。
【０１２８】
（５）撮像部２００による撮像処理と、ＳＬＡＭ処理とは、それぞれ独立に実行されてもよい。あるいは、これらの処理は、同期的に実行されてもよい。ここでいう同期的とは、一方の処理の実行タイミングが他方の処理の実行タイミングに依存することをいう。
【０１２９】
（６）ＳＬＡＭ部２１０は、ＵＡＶの位置又は姿勢が大きく変化した場合などに、ＳＬＡＭ処理を失敗する可能性がある。撮像制御部２２０は、例えば、あるフレームに対応するＳＬＡＭ処理が失敗し、ＳＬＡＭ部２１０から特徴点の相対輝度値が得られなかった場合、図９の処理によっては、当該フレームの次のフレームの露光量を決定できない。
【０１３０】
このような場合に対処するため、撮像制御部２２０は、ＢＦ用及びＤＦ用の露光量の最新の値を記憶してもよい。そして、撮像制御部２２０は、ＳＬＡＭ処理が失敗した場合には、ＢＦ用又はＤＦ用の露光量の最新の値を用いて露光量を設定する。
【０１３１】
図１３は、ＳＬＡＭ処理が失敗した場合の露光量の設定手順を示す。ここにおいて、Ｆ１〜Ｆ５は、フレーム番号を意味する。また、Ｅ１〜Ｅ５は、フレームＦ１〜Ｆ５における露光量を意味する。なお、フレームＦ１、Ｆ３、Ｆ５は、ここではＢＦであるとする。また、フレームＦ２、Ｆ４は、ここではＤＦであるとする。
【０１３２】
フレームＦ１は、露光量の初期値を用いて撮像される（図９のステップＳ２２１参照）。すなわち、露光量Ｅ１は、この初期値に相当する。フレームＦ２の露光量Ｅ２は、フレームＦ１から抽出された特徴点の相対輝度値に基づいて決定される。このとき、撮像制御部２２０は、ＢＦ用の露光量の最新の値としてＥ１、ＤＦ用の露光量の最新の値としてＥ２をそれぞれ記憶している。
【０１３３】
同様に、フレームＦ３の露光量Ｅ３は、フレームＦ２から抽出された特徴点の相対輝度値に基づいて決定され、フレームＦ４の露光量Ｅ４は、フレームＦ３から抽出された特徴点の相対輝度値に基づいて決定される。撮像制御部２２０は、露光量が決定される毎に、ＢＦ用又はＤＦ用の露光量の最新の値を更新する。例えば、露光量Ｅ４を決定した時点では、撮像制御部２２０は、ＢＦ用の露光量の最新の値としてＥ３、ＤＦ用の露光量の最新の値としてＥ４をそれぞれ記憶している。
【０１３４】
ここで、フレームＦ４に対応するＳＬＡＭ処理が失敗し、特徴点の相対輝度値を得ることができなかったと仮定する。このような場合、撮像制御部２２０は、ＢＦ用の露光量の最新の値、すなわちＥ３をフレームＦ５の露光量Ｅ５として用いる。このようにすれば、撮像制御部２２０は、ＳＬＡＭ処理が一時的に失敗したとしても、露光制御を中断することなく継続させることが可能である。
【０１３５】
（７）ＳＬＡＭ処理によって推定された自己位置は、露光量に起因した誤差を含む場合がある。例えば、第２実施形態のようにＢＦ用の露光量とＤＦ用の露光量とで交互に撮像を実行すると、ＢＦにおいて推定された自己位置とＤＦにおいて推定された自己位置との間に系統的な誤差が生じる可能性がある。
【０１３６】
図１４は、露光量に起因する自己位置の誤差の一例を示す。ここにおいて、Ｆ１〜Ｆ５は、フレーム番号を意味する。また、Ｐ１〜Ｐ５は、フレームＦ１〜Ｆ５において推定された自己位置を意味する。なお、フレームＦ１、Ｆ３、Ｆ５は、ここではＢＦであるとする。また、フレームＦ２、Ｆ４は、ここではＤＦであるとする。
【０１３７】
ＵＡＶは、実際には、図中の矢印に沿った軌跡で移動しているものとする。すなわち、この例では、自己位置Ｐ１〜Ｐ５に誤差が生じている。これらの誤差は、ＢＦとＤＦとで異なる傾向を示している。なお、このような誤差の生じやすさは、特徴点の抽出アルゴリズムや撮像対象によって異なり得る。
【０１３８】
このような誤差が生じる場合、ＳＬＡＭ部２１０（地図生成部２１３）は、撮像部２００の位置を、２以上のフレームにおいて推定された自己位置に基づいて合成してもよい。より詳細には、ＳＬＡＭ部２１０は、ＢＦから推定された自己位置とＤＦから推定された自己位置とを別のマップ情報として記録し、これらを合成することにより自己位置を補正する。ここでいう合成は、例えば、時間的に近接する２以上の自己位置の座標の平均値を算出し、この平均値を補正後の座標とみなす処理である。
【０１３９】
ここにおいて、ＳＬＡＭ部２１０は、自己位置の信頼性に応じた重み付けに従った補正を実行してもよい。例えば、ＳＬＡＭ部２１０は、自己位置の信頼性に応じた重み付き平均を用いて補正後の座標を算出してもよい。ここでいう信頼性は、例えば、各々のフレームから抽出された特徴点の数に基づいて定められる。具体的には、自己位置の座標は、抽出可能な特徴点の数が多いフレームに基づいて推定されたものほど、信頼性が高い（すなわち誤差が少ない）。
【０１４０】
（８）撮像部１００は、単一の物体に搭載された複数の撮像素子によって構成されてもよい。例えば、撮像部１００は、ＢＦ用の撮像素子とＤＦ用の撮像素子とを含んで構成されてもよい。あるいは、撮像部１００は、単一の撮像素子にＢＦ用の撮像領域（１又は複数のセル）とＤＦ用の撮像領域とを含んで構成されてもよい。
【０１４１】
（９）本開示に係る装置（位置推定装置１０、自律移動システム２０、及び自律移動システム３０）の具体的なハードウェア構成は、さまざまなバリエーションが含まれ、特定の構成に限定されない。例えば、本開示に係る装置は、ソフトウェアを用いて実現されてもよく、複数のハードウェアを用いて各種処理を分担するように構成されてもよい。
【０１４２】
図１５は、本開示に係る装置を実現するコンピュータ装置４００のハードウェア構成の一例を示すブロック図である。コンピュータ装置４００は、ＣＰＵ（Central Processing Unit）４０１と、ＲＯＭ（Read Only Memory）４０２と、ＲＡＭ（Random Access Memory）４０３と、記憶装置４０４と、ドライブ装置４０５と、通信インタフェース４０６と、入出力インタフェース４０７とを含んで構成される。
【０１４３】
ＣＰＵ４０１は、ＲＡＭ４０３を用いてプログラム４０８を実行する。通信インタフェース４０６は、ネットワーク４１０を介して外部装置とデータをやり取りする。入出力インタフェース４０７は、周辺機器（撮像装置など）とデータをやり取りする。通信インタフェース４０６及び入出力インタフェース４０７は、データを取得又は出力するための構成要素として機能することができる。
【０１４４】
なお、プログラム４０８は、ＲＯＭ４０２に記憶されていてもよい。また、プログラム４０８は、メモリカード等の記録媒体４０９に記録され、ドライブ装置４０５によって読み出されてもよいし、外部装置からネットワーク４１０を介して送信されてもよい。
【０１４５】
本開示に係る装置は、図１５に示す構成（又はその一部）によって実現され得る。例えば、位置推定装置１０の場合、映像処理部１１０及び撮像制御部１２０は、ＣＰＵ４０１、ＲＯＭ４０２及びＲＡＭ４０３に対応する。
【０１４６】
なお、本開示に係る装置の構成要素は、単一の回路（プロセッサ等）によって構成されてもよいし、複数の回路の組み合わせによって構成されてもよい。ここでいう回路（circuitry）は、専用又は汎用のいずれであってもよい。例えば、本開示に係る装置は、一部が専用のプロセッサによって実現され、他の部分が汎用のプロセッサによって実現されてもよい。例えば、映像処理部１１０と撮像制御部１２０は、別異のプロセッサによって構成されてもよい。
【０１４７】
［付記］
本開示の一部又は全部は、以下の付記のようにも記載され得る。ただし、本発明は、必ずしもこの付記の態様に限定されない。
（付記１）
撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行する映像処理手段と、
前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定する撮像制御手段と
を備える位置推定装置。
（付記２）
前記撮像制御手段は、前記第１のフレームと前記第２のフレームとから同一の特徴点が複数抽出されるように前記露光条件を決定する
付記１に記載の位置推定装置。
（付記３）
前記映像処理手段は、前記複数の特徴点の位置及び特徴量を示す第１の情報と、当該複数の特徴点の明るさを示す第２の情報とを含むマップ情報に基づいて前記位置推定を実行し、
前記撮像制御手段は、前記映像関連情報と、前記第２の情報とに基づいて、前記第２のフレームにおける前記露光条件を決定する
付記１又は付記２に記載の位置推定装置。
（付記４）
前記撮像制御手段は、前記第２の情報により示される前記複数の特徴点のうちの少なくともいずれかの特徴点の明るさと、当該特徴点の撮像時の明るさとに基づいて、前記第２のフレームにおける前記露光条件を決定する
付記３に記載の位置推定装置。
（付記５）
前記映像処理手段は、前記映像におけるオプティカルフローに基づいて撮像範囲の移動方向を推定し、
前記撮像制御手段は、前記映像関連情報と、前記推定された移動方向にある画素の明るさとに基づいて、前記第２のフレームにおける前記露光条件を決定する
付記１から付記４までのいずれかに記載の位置推定装置。
（付記６）
前記映像処理手段は、前記位置推定により推定された前記撮像手段の位置を、前記第１のグループに属するフレームにおいて推定された位置と前記第２のグループに属するフレームにおいて推定された位置とを用いて補正する
付記１から付記５までのいずれかに記載の位置推定装置。
（付記７）
前記映像処理手段は、
前記第１のグループに属するフレームにおいて推定された位置と前記第２のグループに属するフレームにおいて推定された位置との信頼性に基づく重み付けに従って、前記撮像手段の位置を補正する
付記６に記載の位置推定装置。
（付記８）
前記映像におけるシーンの変化を示す履歴情報を記憶する記憶手段を備え、
前記撮像制御手段は、所定の条件を満たした場合に、前記第２のフレームにおける前記露光条件をリセットする
付記１から付記７までのいずれかに記載の位置推定装置。
（付記９）
撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行し、
前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定する
位置推定方法。
（付記１０）
前記露光条件を、前記第１のフレームと前記第２のフレームとから同一の特徴点が複数抽出されるように決定する
付記９に記載の位置推定方法。
（付記１１）
コンピュータに、
撮像手段により撮像され、複数のフレームにより構成される映像から抽出される複数の特徴点に基づく当該撮像手段の位置推定を含む映像処理を実行する第１のステップと、
前記複数のフレームのうちの第１のグループに属する第１のフレームに対する前記映像処理において得られる映像関連情報に基づいて、前記複数のフレームのうちの前記第１のグループと異なる第２のグループに属する第２のフレームにおける前記撮像手段の露光条件を決定する第２のステップと
を実行させるためのプログラムを記録したコンピュータ読み取り可能なプログラム記録媒体。
（付記１２）
前記決定するステップは、前記第１のフレームと前記第２のフレームとから同一の特徴点が複数抽出されるように前記露光条件を決定する
付記１１に記載のプログラム記録媒体。
【０１４８】
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【符号の説明】
【０１４９】
１０    位置推定装置
１００    撮像部
１１０    映像処理部
１２０    撮像制御部
２０、３０    自律移動システム
２００、３００    撮像部
２１０、３１０    ＳＬＡＭ部
２１１、３１１    特徴点抽出部
２１２、３１２    位置推定部
２１３、３１３    地図生成部
２２０、３２０    撮像制御部
３２１    記憶部
２３０、３３０    移動制御部
４００    コンピュータ装置
【図１】
2019021412.tif 000008
【図２】
2019021412.tif 000009
【図３】
2019021412.tif 000010
【図４】
2019021412.tif 000011
【図５】
2019021412.tif 000012
【図６】
2019021412.tif 000013
【図７】
2019021412.tif 000014
【図８】
2019021412.tif 000015
【図９】
2019021412.tif 000016
【図１０】
2019021412.tif 000017
【図１１Ａ】
2019021412.tif 000018
【図１１Ｂ】
2019021412.tif 000019
【図１１Ｃ】
2019021412.tif 000020
【図１１Ｄ】
2019021412.tif 000021
【図１２Ａ】
2019021412.tif 000022
【図１２Ｂ】
2019021412.tif 000023
【図１３】
2019021412.tif 000024
【図１４】
2019021412.tif 000025
【図１５】
2019021412.tif 000026
【国際調査報告】
2019021412.tif 000027
2019021412.tif 000028
2019021412.tif 000029