(58)【調査した分野】(Int.Cl.,DB名)
前記制御部は、前記複数の被写体のうちで前記撮像装置により近くに位置する被写体を撮像するときの前記撮像装置と前記複数の被写体との間の距離と、前記撮像装置の前記第1位置と前記複数の被写体との間の距離との差をより小さくする、請求項2に記載の無人航空機。
前記制御部は、前記複数の被写体のうちで前記撮像装置に最も近い被写体を撮像するときの前記撮像装置と前記複数の被写体との間の距離を、前記撮像装置の前記第1位置と前記複数の被写体との間の距離に決定する、請求項1から3の何れか1つに記載の無人航空機。
【発明を実施するための形態】
【0020】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施の形態は特許請求の範囲に係る発明を限定するものではない。また、実施の形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。以下の実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0021】
特許請求の範囲、明細書、図面、及び要約書には、著作権による保護の対象となる事項が含まれる。著作権者は、これらの書類の何人による複製に対しても、特許庁のファイルまたはレコードに表示される通りであれば異議を唱えない。ただし、それ以外の場合、一切の著作権を留保する。
【0022】
本発明の様々な実施形態は、フローチャート及びブロック図を参照して記載されてよく、ここにおいてブロックは、(1)操作が実行されるプロセスの段階または(2)操作を実行する役割を持つ装置の「部」を表わしてよい。特定の段階及び「部」が、プログラマブル回路、及び/またはプロセッサによって実装されてよい。専用回路は、デジタル及び/またはアナログハードウェア回路を含んでよい。集積回路(IC)及び/またはディスクリート回路を含んでよい。プログラマブル回路は、再構成可能なハードウェア回路を含んでよい。再構成可能なハードウェア回路は、論理AND、論理OR、論理XOR、論理NAND、論理NOR、及び他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)等のようなメモリ要素等を含んでよい。
【0023】
コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよい。その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(RTM)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0024】
コンピュータ可読命令は、1または複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードの何れかを含んでよい。ソースコードまたはオブジェクトコードは、従来の手続型プログラミング言語を含む。従来の手続型プログラミング言語は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語または同様のプログラミング言語でよい。コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して提供されてよい。プロセッサまたはプログラマブル回路は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0025】
図1は、無人航空機(UAV)10及び遠隔操作装置300の外観の一例を示す。UAV10は、UAV本体20、ジンバル50、複数の撮像装置60、及び撮像装置100を備える。ジンバル50、及び撮像装置100は、撮像システムの一例である。UAV10は、移動体の一例である。移動体とは、空中を移動する飛行体、地上を移動する車両、水上を移動する船舶等を含む概念である。空中を移動する飛行体とは、UAVの他、空中を移動する他の航空機、飛行船、ヘリコプター等を含む概念である。
【0026】
UAV本体20は、複数の回転翼を備える。複数の回転翼は、推進部の一例である。UAV本体20は、複数の回転翼の回転を制御することでUAV10を飛行させる。UAV本体20は、例えば、4つの回転翼を用いてUAV10を飛行させる。回転翼の数は、4つには限定されない。また、UAV10は、回転翼を有さない固定翼機でもよい。
【0027】
撮像装置100は、所望の撮像範囲に含まれるオブジェクトを撮像する撮像用のカメラである。ジンバル50は、撮像装置100を回転可能に支持する。ジンバル50は、支持機構の一例である。例えば、ジンバル50は、撮像装置100を、アクチュエータを用いてピッチ軸で回転可能に支持する。ジンバル50は、撮像装置100を、アクチュエータを用いて更にロール軸及びヨー軸のそれぞれを中心に回転可能に支持する。ジンバル50は、ヨー軸、ピッチ軸、及びロール軸の少なくとも1つを中心に撮像装置100を回転させることで、撮像装置100の姿勢を変更してよい。
【0028】
複数の撮像装置60は、UAV10の飛行を制御するためにUAV10の周囲を撮像するセンシング用のカメラである。2つの撮像装置60が、UAV10の機首である正面に設けられてよい。更に他の2つの撮像装置60が、UAV10の底面に設けられてよい。正面側の2つの撮像装置60はペアとなり、いわゆるステレオカメラとして機能してよい。底面側の2つの撮像装置60もペアとなり、ステレオカメラとして機能してよい。撮像装置60は、撮像装置60の撮像範囲に含まれるオブジェクトの存在、及びオブジェクトまでの距離を計測してよい。撮像装置60は、撮像装置100の撮像方向に存在するオブジェクトを計測する計測装置の一例である。計測装置は、撮像装置100の撮像方向に存在するオブジェクトを計測する赤外線センサ、超音波センサなどの他のセンサでもよい。複数の撮像装置60により撮像された画像に基づいて、UAV10の周囲の3次元空間データが生成されてよい。UAV10が備える撮像装置60の数は4つには限定されない。UAV10は、少なくとも1つの撮像装置60を備えていればよい。UAV10は、UAV10の機首、機尾、側面、底面、及び天井面のそれぞれに少なくとも1つの撮像装置60を備えてもよい。撮像装置60で設定できる画角は、撮像装置100で設定できる画角より広くてよい。撮像装置60は、単焦点レンズまたは魚眼レンズを有してもよい。
【0029】
遠隔操作装置300は、UAV10と通信して、UAV10を遠隔操作する。遠隔操作装置300は、UAV10と無線で通信してよい。遠隔操作装置300は、UAV10に上昇、下降、加速、減速、前進、後進、回転などのUAV10の移動に関する各種命令を示す指示情報を送信する。指示情報は、例えば、UAV10の高度を上昇させる指示情報を含む。指示情報は、UAV10が位置すべき高度を示してよい。UAV10は、遠隔操作装置300から受信した指示情報により示される高度に位置するように移動する。指示情報は、UAV10を上昇させる上昇命令を含んでよい。UAV10は、上昇命令を受け付けている間、上昇する。UAV10は、上昇命令を受け付けても、UAV10の高度が上限高度に達している場合には、上昇を制限してよい。
【0030】
図2は、UAV10の機能ブロックの一例を示す。UAV10は、UAV制御部30、メモリ32、通信インタフェース36、推進部40、GPS受信機41、慣性計測装置42、磁気コンパス43、気圧高度計44、温度センサ45、湿度センサ46、ジンバル50、撮像装置60及び撮像装置100を備える。
【0031】
通信インタフェース36は、遠隔操作装置300などの他の装置と通信する。通信インタフェース36は、遠隔操作装置300からUAV制御部30に対する各種の命令を含む指示情報を受信してよい。メモリ32は、UAV制御部30が、推進部40、GPS受信機41、慣性計測装置(IMU)42、磁気コンパス43、気圧高度計44、温度センサ45、湿度センサ46、ジンバル50、撮像装置60、及び撮像装置100を制御するのに必要なプログラム等を格納する。メモリ32は、コンピュータ読み取り可能な記録媒体でよく、SRAM、DRAM、EPROM、EEPROM、及びUSBメモリ等のフラッシュメモリの少なくとも1つを含んでよい。メモリ32は、UAV本体20の内部に設けられてよい。UAV本体20から取り外し可能に設けられてよい。
【0032】
UAV制御部30は、メモリ32に格納されたプログラムに従ってUAV10の飛行及び撮像を制御する。UAV制御部30は、CPUまたはMPU等のマイクロプロセッサ、MCU等のマイクロコントローラ等により構成されてよい。UAV制御部30は、通信インタフェース36を介して遠隔操作装置300から受信した命令に従って、UAV10の飛行及び撮像を制御する。推進部40は、UAV10を推進させる。推進部40は、複数の回転翼と、複数の回転翼を回転させる複数の駆動モータとを有する。推進部40は、UAV制御部30からの命令に従って複数の駆動モータを介して複数の回転翼を回転させて、UAV10を飛行させる。UAV制御部30は、第3制御部の一例である。
【0033】
GPS受信機41は、複数のGPS衛星から発信された時刻を示す複数の信号を受信する。GPS受信機41は、受信された複数の信号に基づいてGPS受信機41の位置(緯度及び経度)、つまりUAV10の位置(緯度及び経度)を算出する。IMU42は、UAV10の姿勢を検出する。IMU42は、UAV10の姿勢として、UAV10の前後、左右、及び上下の3軸方向の加速度と、ピッチ、ロール、及びヨーの3軸方向の角速度とを検出する。磁気コンパス43は、UAV10の機首の方位を検出する。気圧高度計44は、UAV10が飛行する高度を検出する。気圧高度計44は、UAV10の周囲の気圧を検出し、検出された気圧を高度に換算して、高度を検出する。温度センサ45は、UAV10の周囲の温度を検出する。湿度センサ46は、UAV10の周囲の湿度を検出する。
【0034】
撮像装置100は、撮像部102及びレンズ部200を備える。レンズ部200は、レンズ装置の一例である。撮像部102は、イメージセンサ120、撮像制御部110、及びメモリ130を有する。イメージセンサ120は、CCDまたはCMOSにより構成されてよい。イメージセンサ120は、複数のレンズ210を介して結像された光学像を撮像し、撮像された画像データを撮像制御部110に出力する。撮像制御部110は、CPUまたはMPUなどのマイクロプロセッサ、MCUなどのマイクロコントローラなどにより構成されてよい。撮像制御部110は、UAV制御部30からの撮像装置100の動作命令に応じて、撮像装置100を制御してよい。メモリ130は、コンピュータ可読可能な記録媒体でよく、SRAM、DRAM、EPROM、EEPROM、及びUSBメモリなどのフラッシュメモリの少なくとも1つを含んでよい。メモリ130は、撮像制御部110がイメージセンサ120などを制御するのに必要なプログラム等を格納する。メモリ130は、撮像装置100の筐体の内部に設けられてよい。メモリ130は、撮像装置100の筐体から取り外し可能に設けられてよい。
【0035】
レンズ部200は、複数のレンズ210、複数のレンズ駆動部212、及びレンズ制御部220を有する。複数のレンズ210は、フォーカスレンズとして機能してよい。レンズ部200は、単焦点レンズでよい。複数のレンズ210の少なくとも一部または全部は、光軸に沿って移動可能に配置される。レンズ部200は、撮像部102に対して着脱可能に設けられる交換レンズでよい。レンズ駆動部212は、カム環などの機構部材を介して、複数のレンズ210の少なくとも一部または全部を光軸に沿って移動させる。レンズ駆動部212は、アクチュエータを含んでよい。アクチュエータは、ステッピングモータを含んでよい。レンズ制御部220は、撮像部102からのレンズ制御命令に従って、レンズ駆動部212を駆動して、機構部材を介して1または複数のレンズ210を光軸方向に沿って移動させる。レンズ制御命令は、例えば、フォーカス制御命令である。
【0036】
レンズ部200は、メモリ222、位置センサ214をさらに有する。レンズ制御部220は、撮像部102からのレンズ動作命令に応じてレンズ駆動部212を介して、レンズ210の光軸方向への移動を制御する。レンズ制御部220は、撮像部102からのレンズ動作命令に応じてレンズ駆動部212を介して、レンズ210の光軸方向への移動を制御する。レンズ210の一部または全部は、光軸に沿って移動する。レンズ制御部220は、レンズ210の少なくとも1つを光軸に沿って移動させることで、フォーカス動作を実行する。位置センサ214は、レンズ210の位置を検出する。位置センサ214は、現在のフォーカス位置を検出してよい。
【0037】
レンズ駆動部212は、振れ補正機構を含んでよい。レンズ制御部220は、振れ補正機構を介して、レンズ210を光軸に沿った方向、または光軸に垂直な方向に移動させることで、振れ補正を実行してよい。レンズ駆動部212は、ステッピングモータにより振れ補正機構を駆動して、振れ補正を実行してよい。なお、振れ補正機構は、ステッピングモータにより駆動されて、イメージセンサ120を光軸に方向に沿った方向、または光軸に垂直な方向に移動させることで、振れ補正を実行してよい。
【0038】
メモリ222は、レンズ駆動部212を介して移動する複数のレンズ210の制御値を記憶する。メモリ222は、SRAM、DRAM、EPROM、EEPROM、及びUSBメモリなどのフラッシュメモリの少なくとも1つを含んでよい。
【0039】
上記のようなUAV10に搭載された撮像装置100において、撮像装置100の合焦距離を変化させながら、撮像装置100に複数の画像を撮像させる。ここで、合焦距離は、撮像装置100から合焦状態にある被写体までの距離である。合焦状態は、例えば、撮像装置100により撮像された画像内の注目の被写体を含む領域のコントラストの評価値が予め定められた値以上となる状態である。合焦距離は、フォーカスレンズのレンズ位置を変化させることで変化する。
【0040】
撮像装置100が備えるレンズ系の中には、合焦距離が変化することで撮像面に結像される被写体の倍率が変化するレンズ系がある。このようなレンズ系を備える撮像装置100を利用して合焦距離を変化させながら複数の画像を撮像する場合、複数の画像のそれぞれに含まれる被写体の大きさが変化してしまう。例えば、合焦距離が異なる状態で撮像された複数の画像を合成する場合、画像ごとに被写体の大きさが異なると、適切な合成画像を得られない可能性がある。
【0041】
そこで、本実施形態に係る撮像装置100によれば、合焦距離の変化に伴う倍率の変化を考慮して、UAV10を被写体に対して移動させて被写体と撮像装置100との間の距離を変化させる。これにより、異なる合焦距離で撮像された複数の画像のそれぞれに含まれる被写体の大きさの変化を抑制する。
【0042】
UAV制御部30は、特定部111、取得部112、決定部113、撮像指示部114及び合成部115を備える。なお、UAV制御部30以外の他の装置が、特定部111、取得部112、決定部113、撮像指示部114、及び合成部115の少なくとも1つを備えてよい。例えば、撮像制御部110、または遠隔操作装置300が、特定部111、取得部112、決定部113、撮像指示部114、及び合成部115の少なくとも1つを有してよい。
【0043】
UAV制御部30は、撮像装置100の撮像領域に含まれる複数の被写体のそれぞれに合焦するそれぞれの合焦距離を特定する。撮像指示部114は、合焦距離を特定すべく、撮像装置100を第1位置に維持させた状態で、撮像装置100のフォーカスレンズの位置を異ならせて複数の画像を撮像装置100に撮像させる。
【0044】
UAV制御部30は、UAV10を第1位置でホバリングさせることで、撮像装置100を第1位置に維持させてよい。撮像指示部114は、UAV10がホバリングしている間に、撮像制御部110及びレンズ制御部220を介してフォーカスレンズを無限遠側から至近端側まで移動させる。撮像指示部114は、フォーカスレンズが無限遠側から至近端側まで移動する間に、複数の画像を撮像装置100に撮像させる。
【0045】
特定部111は、フォーカスレンズの位置が異なる状態で撮像された複数の画像に基づいて、複数の被写体に対する複数の合焦距離を特定する。特定部111は、フォーカスレンズが移動している間に撮像された複数の画像のそれぞれのコントラストの評価値を取得する。特定部111は、特定部111は、画像を構成する複数の領域ごとのコントラストの評価値を取得してよい。特定部111は、コントラストの評価値がピークとなるフォーカスレンズのレンズ位置に対応する合焦距離を特定する。特定部111は、画像内の複数の領域のうち、コントラストの評価値がピークとなる領域が存在すれば、その画像が撮像されたときのフォーカスレンズのレンズ位置に対応する合焦距離を特定してよい。
【0046】
特定部111は、例えば、フォーカスレンズのレンズ位置と合焦距離とを対応付けたテーブルを参照することで、合焦距離を特定してよい。特定部111は、撮像制御部110が実行したコントラストオートフォーカス処理の結果を取得してよい。特定部111は、その結果に基づいて、コントラストの評価値がピークとなるフォーカスレンズのレンズ位置に対応する合焦距離を特定してよい。なお、特定部111は、撮像制御部110が有してもよい。
【0047】
取得部112は、撮像装置100の撮像範囲に含まれる複数の被写体のそれぞれに対応する複数の合焦距離を取得する。取得部112は、特定部111により特定されたコントラストの評価値がピークとなるそれぞれのフォーカスレンズのレンズ位置に対応するそれぞれの合焦距離を、複数の被写体のそれぞれに対応する複数の合焦距離として取得してよい。
【0048】
決定部113は、複数の合焦距離に基づいて、撮像装置100が複数の被写体のそれぞれを撮像するときの撮像装置100と複数の被写体との間の距離を決定する。決定部113は、複数の合焦距離で撮像された複数の画像に含まれる被写体の大きさの変化を抑制すべく、撮像装置100と複数の被写体との間の距離を決定してよい。決定部113は、複数の合焦距離で撮像された複数の画像に含まれる同一の被写体の大きさが変化しないように、撮像装置100と複数の被写体との間の距離を決定してよい。
【0049】
撮像装置100が、合焦距離が長いほど倍率が大きいレンズ系を備える場合、決定部113は、複数の被写体のうちで撮像装置100からより遠くに位置する被写体を撮像するときの撮像装置100と複数の被写体との間の距離をより長く決定してよい。撮像装置100が、合焦距離が長いほど倍率が小さいレンズ系を備える場合、決定部113は、複数の被写体のうちで撮像装置からより遠くに位置する被写体を撮像するときの撮像装置100と複数の被写体との間の距離をより短く決定してよい。
【0050】
決定部113は、複数の被写体のうちで撮像装置100により近くに位置する被写体を撮像するときの撮像装置100と複数の被写体との間の距離と、合焦距離を特定したときの位置である撮像装置100の第1位置と複数の被写体との間の距離との差をより小さくしてよい。決定部113は、複数の被写体のうちで撮像装置100に最も近い被写体を撮像するときの撮像装置100と複数の被写体との間の距離を、合焦距離を特定したときの位置である撮像装置100の第1位置と複数の被写体との間の距離に決定してよい。
【0051】
メモリ130またはメモリ32は、撮像装置100が備えるレンズ系の特性に応じた合焦距離と、撮像装置100が撮像するときの被写体までの距離との関係を示すテーブルを格納してよい。決定部113は、テーブルを参照して、撮像装置100が複数の被写体のそれぞれを撮像するときの撮像装置100と複数の被写体との間の距離を決定してよい。テーブルは、例えば、合焦距離ごとに決定部113により決定させるべき距離を含んでよい。メモリ32またはメモリ130は、最近距離の被写体の合焦距離ごとのテーブルを格納してよい。最近距離は、撮像装置100から最も近くの被写体までの距離である。例えば、決定部113は、テーブルを参照して、最近距離の被写体以外の他の被写体の合焦距離に応じた距離をそれぞれ決定してよい。
【0052】
撮像指示部114は、撮像装置100と複数の被写体との間の距離が決定部113が決定した距離にされた状態で、複数の被写体のそれぞれを取得部112が取得した複数の合焦距離のそれぞれで撮像装置100に撮像させてよい。撮像指示部114は、撮像装置100と複数の被写体との間の距離が決定部113が決定した距離にされた状態で、複数の被写体のそれぞれを取得部112が取得した複数の合焦距離のそれぞれで撮像装置100に撮像させてよい。撮像指示部114は、決定部113が決定した距離に応じて、その距離で撮像装置100が撮像する場合の合焦距離を、倍率の変化が許容される範囲で微調整してもよい。撮像指示部114は、第1制御部、及び第2制御部の一例である。合成部115は、それぞれの合焦距離で撮像された複数の画像を合成した合成画像を生成する。
【0053】
例えば、UAV制御部30は、合焦距離を特定したときの撮像装置100に最も近い被写体までの距離と、決定部113により決定された複数の被写体のそれぞれを撮像するときの距離との差分の距離を導出する。撮像装置100が合焦距離が長いほど倍率が大きいレンズ系を備える場合、UAV制御部30は、複数の被写体のそれぞれを撮像するときに差分の距離だけ撮像装置100の撮像方向に沿って複数の被写体から遠ざかるように撮像装置100を移動させるべく、推進部40を駆動させてよい。撮像装置100が合焦距離が長いほど倍率が小さいレンズ系を備える場合、UAV制御部30は、複数の被写体のそれぞれを撮像するときに差分の距離だけ撮像装置100の撮像方向に沿って複数の被写体に近づくように撮像装置100を移動させるべく、推進部40を駆動させてよい。
【0054】
図3は、撮像装置100に撮像される複数の被写体と撮像装置100との位置関係の一例を示す。撮像装置100の撮像範囲500に、撮像装置100からの距離が異なる複数の被写体501、502、及び503が含まれる。被写体501は、撮像装置100に最も近い被写体であり、例えば、花である。被写体503は、撮像装置100から無限遠の位置にある被写体であり、例えば、山である。被写体502は、被写体501と被写体503との間にある被写体であり、例えば、人である。なお、撮像装置100の撮像範囲500には、少なくとも2つの被写体が含まれていればよい。撮像装置100の撮像範囲500には、無限遠の被写体と、無限遠の被写体より撮像装置100に近い少なくとも1つの被写体が含まれていればよい。
【0055】
図4は、撮像装置100により撮像される
図3に示す位置関係にある複数の被写体を含む画像600の一例である。画像600は、合焦距離が導出される領域である左下端の第1領域611、中央の第2領域612、及び右上端の第3領域613にそれぞれ撮像装置100からの距離が異なる被写体501、502、及び503を含む。
【0056】
例えば、撮像装置100が同じ位置で撮像した場合、第1領域611に焦点が合った画像、第2領域612に焦点が合った画像、及び第3領域613に焦点が合った画像のそれぞれの倍率は異なる。撮像装置100が合焦距離が長いほど倍率が大きいレンズ系を備える場合、第1領域611に焦点が合った画像の倍率より、第3領域613に焦点が合った画像の倍率は大きくなる。撮像装置100が合焦距離が長いほど倍率が小さいレンズ系を備える場合、第1領域611に焦点が合った画像の倍率より、第3領域613に焦点が合った画像の倍率は小さくなる。そこで、本実施形態に係るUAV10に搭載された撮像装置100によれば、複数の被写体のそれぞれの合焦距離に応じて、撮像装置100と複数の被写体との間の距離を変化させる。
【0057】
図5は、撮像装置100の合焦距離の時間的な変化と、最近距離の被写体から撮像装置100までの距離の時間的な変化との対応関係の一例を示す。
図5は、撮像装置100が合焦距離が長いほど倍率が大きいレンズ系を備える場合の例を示す。
【0058】
UAV10が第1位置でホバリングしている間に、時間t0から時間t1まで、合焦距離を無限遠側から至近端側まで変化させて、撮像装置100に複数の画像を撮像させる。撮像装置100が複数の画像のそれぞれのコントラストの評価値を導出してよい。
図6は、合焦距離ごとのコントラストの評価値の大きさを示す。
図6に示す例では、合焦距離が、無限遠、1.0m、及び0.5mのときにコントラストの評価値のピークが現れる。すなわち、撮像装置100からの距離が、無限遠、1.0m、及び0.5mの場所に、被写体が存在する。
【0059】
この場合、UAV10は、まず、無限遠の被写体に焦点を合わせて撮像装置100に撮像させるべく、第1位置より被写体から遠ざかる位置に移動する。UAV10は、例えば、時間t1から時間t2までの間に、最近距離の被写体からの距離が0.6mになるように、撮像装置100の撮像方向に沿って移動する。撮像装置100は、時間t1から時間t2までの間に、合焦距離が無限遠になるように、フォーカスレンズのレンズ位置を調整する。
【0060】
次いで、UAV10は、時間t2から時間t3までの間、最近距離の被写体からの距離を0.6mに維持するように、ホバリングする。撮像装置100は、時間t2から時間t3の間、焦点距離を無限遠に維持して複数の画像を撮像する。撮像装置100は、時間t2から時間t3の間、焦点距離を無限遠に維持して動画を撮像してよい。
【0061】
UAV10は、時間t3から時間t4までの間に、最近距離の被写体からの距離が0.55mになるように、撮像装置100の撮像方向に沿って移動する。撮像装置100は、時間t3から時間t4までの間に、合焦距離が1.0mになるように、フォーカスレンズのレンズ位置を調整する。
【0062】
次いで、UAV10は、時間t4から時間t5までの間、最近距離の被写体からの距離を0.55mに維持するように、ホバリングする。撮像装置100は、時間t4から時間t5の間、焦点距離を1.0mに維持して複数の画像を撮像する。撮像装置100は、時間t4から時間t5の間、焦点距離を1.0mに維持して動画を撮像してよい。
【0063】
UAV10は、時間t5から時間t6までの間に、最近距離の被写体からの距離が0.5mに戻るように、撮像装置100の撮像方向に沿って移動する。撮像装置100は、時間t5から時間t6までの間に、合焦距離が0.5mになるように、フォーカスレンズのレンズ位置を調整する。
【0064】
次いで、UAV10は、時間t6から時間t7までの間、最近距離の被写体からの距離を0.5mに維持するように、ホバリングする。撮像装置100は、時間t6から時間t7の間、焦点距離を0.5mに維持して複数の画像を撮像する。撮像装置100は、時間t6から時間t7の間、焦点距離を0.5mに維持して動画を撮像してよい。
【0065】
例えば、
図7に示すように、UAV10を移動させながら、撮像装置100に複数の画像を撮像させる。
図7は、撮像装置100が合焦距離が長いほど倍率が大きいレンズ系を備える場合の例を示す。UAV10が位置803でホバリングしている状態で、撮像装置100がフォーカスレンズの位置を異ならせて複数の画像を撮像する。取得部112は、複数の画像に基づいて、被写体501、被写体502、及び被写体503に対応する合焦距離を取得する。例えば、取得部112は、被写体501、被写体502、及び被写体503に対応する合焦距離として、0.5m、1.0m、及び無限遠を取得する。決定部113は、合焦距離を0.5mにして撮像するときの撮像装置100から被写体501までの距離を0.5mと決定する。決定部113は、合焦距離を1.0mにして撮像するときの撮像装置100から被写体501までの距離を0.55mと決定する。決定部113は、合焦距離を無限遠にして撮像するときの撮像装置100から被写体501までの距離を0.6mと決定する。
【0066】
被写体503が合焦状態となる合焦距離で撮像装置100が撮像する場合、UAV10が位置803から位置801に移動する。UAV10が位置801でホバリングしながら、撮像装置100は合焦距離を無限遠にして、複数の画像を撮像する。例えば、UAV10は、撮像装置100から被写体501までの距離が0.5mから0.6mになるように移動する。撮像装置100から被写体501までの距離が0.6mを維持するように、UAV10が位置801でホバリングする。撮像装置100は合焦距離を無限遠にして複数の画像を撮像する。
【0067】
次いで、UAV10は、撮像方向800に沿って、被写体に近づくように位置801から位置802に移動する。例えば、UAV10は、撮像装置100から被写体501までの距離が0.6mから0.55mになるように移動する。撮像装置100から被写体501までの距離が0.55mを維持するように、UAV10が位置802でホバリングする。撮像装置100は合焦距離を1.0mにして複数の画像を撮像する。
【0068】
さらに、UAV10は、撮像方向800に沿って、被写体に近づくように位置802から位置803に移動する。例えば、UAV10は、撮像装置100から被写体501までの距離が0.55mから0.5mになるように移動する。撮像装置100から被写体501までの距離が0.5mを維持するように、UAV10が位置803でホバリングする。撮像装置100は合焦距離を0.5mにして複数の画像を撮像する。
【0069】
例えば、
図8に示すように、撮像装置100は、撮像装置100からの距離が無限遠である被写体502に焦点を合わせるように複数の画像601を撮像する。撮像装置100は、撮像装置100からの距離が1.0mである被写体502に焦点を合わせるように複数の画像602を撮像する。撮像装置100は、撮像装置100からの距離が0.5mである被写体501に焦点を合わせるように複数の画像603を撮像する。それぞれの画像を撮像するときの被写体までの距離は、焦点距離の変化に伴う倍率の変化を打ち消すように、変化させる。これにより、画像601、画像602、及び画像603に含まれる被写体501、被写体502、及び被写体503の大きさは一致する。
【0070】
合成部115は、複数の画像601の中から被写体503のコントラストの評価値が最も高い1つの画像601を選択する。合成部115は、複数の画像602の中から被写体502のコントラストの評価値が最も高い1つの画像602を選択する。合成部115は、複数の画像603の中から被写体501のコントラストの評価値が最も高い1つの画像603を選択する。合成部115は、選択された画像601、画像602、及び画像603を合成して、合成画像である画像610を生成する。
【0071】
このように生成された合成画像に含まれる複数の被写体のそれぞれのコントラストは高い。すなわち、被写界深度の深い合成画像を得ることができる。しかも、合焦距離によって、画像に含まれるそれぞれの被写体の倍率が変化していない。したがって、合成画像に含まれるそれぞれの被写体の相対的な大きさに違和感が生じない。
【0072】
図9は、UAV10に搭載された撮像装置100の撮像手順の一例を示すフローチャートである。
【0073】
UAV10が飛行を開始する(S100)。撮像装置100により所望の複数の被写体を撮像できる第1位置まで、UAV10が移動する。ユーザが、遠隔操作装置300を介して、撮像装置100の撮影モードを深度合成モードに設定する(S102)。UAV10が、予め定められた第1位置に到達すると、UAV制御部30が自動的に撮像装置100の撮像モードを深度合成モードに変更してもよい。
【0074】
UAV10が、第1位置でホバリングする。撮像指示部114が、フォーカスレンズを無限遠側から至近端側まで移動するように、撮像制御部110に指示する。撮像制御部110は、レンズ制御部220を介してフォーカスレンズを無限遠側から至近端側まで移動させる。撮像制御部110は、フォーカスレンズが移動している間に、複数の画像を撮像装置100に撮像させる。撮像制御部110は、複数の画像のそれぞれのコントラストの評価値を導出する(S104)。
【0075】
特定部111は、撮像制御部110により導出されたコントラストの評価値に基づいて、コントラストの評価値のピークが得られる複数の合焦距離を特定する(S106)。決定部113が、複数の合焦距離のそれぞれで撮像装置100が撮像するときの被写体までの距離を決定する(S108)。
【0076】
UAV制御部30が、撮像装置100から被写体までの距離が、決定された距離になるように、UAV10を移動させる。UAV10が移動している間に、撮像装置100が、それぞれの合焦距離で、撮像する(S110)。撮像装置100により撮像された画像データをメモリ32に保存する(S112)。
【0077】
合成部115は、複数の合焦距離のそれぞれで撮像された複数の画像を合成して、合成画像を生成する(S114)。
【0078】
例えば、遠隔操作装置300などの外部装置が備える表示部に合成画像を表示させてよい。表示部は、合成画像中の合焦距離が特定されたそれぞれの被写体を含む領域を枠で囲んで表示してもよい。合成部115は、合成画像中の合焦距離が特定されたそれぞれの被写体の領域を動画として合成画像を生成してもよい。
【0079】
なお、上記の実施形態では、撮像装置100の合焦距離を、フォーカスレンズのレンズ位置を変化させることで変化させる例について説明した。しかし、例えば、焦点距離の異なる交換レンズを順次切り替えることで、撮像装置100の合焦距離を変化させてもよい。また、UAV10が、焦点距離の異なるレンズ系を備える複数の撮像装置100を搭載して、複数の撮像装置100を順次切り替えることで、撮像装置100の合焦距離を変化させてもよい。
【0080】
図10は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ1200の一例を示す。コンピュータ1200にインストールされたプログラムは、コンピュータ1200に、本発明の実施形態に係る装置に関連付けられるオペレーションまたは当該装置の1または複数の「部」として機能させることができる。または、当該プログラムは、コンピュータ1200に当該オペレーションまたは当該1または複数の「部」を実行させることができる。当該プログラムは、コンピュータ1200に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定のオペレーションを実行させるべく、CPU1212によって実行されてよい。
【0081】
本実施形態によるコンピュータ1200は、CPU1212、及びRAM1214を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、入力/出力ユニットを含み、それらは入力/出力コントローラ1220を介してホストコントローラ1210に接続されている。コンピュータ1200はまた、ROM1230を含む。CPU1212は、ROM1230及びRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。
【0082】
通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブが、コンピュータ1200内のCPU1212によって使用されるプログラム及びデータを格納してよい。ROM1230はその中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、及び/またはコンピュータ1200のハードウェアに依存するプログラムを格納する。プログラムが、CR−ROM、USBメモリまたはICカードのようなコンピュータ可読記録媒体またはネットワークを介して提供される。プログラムは、コンピュータ可読記録媒体の例でもあるRAM1214、またはROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ1200の使用に従い情報のオペレーションまたは処理を実現することによって構成されてよい。
【0083】
例えば、通信がコンピュータ1200及び外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してよい。通信インタフェース1222は、CPU1212の制御の下、RAM1214、またはUSBメモリのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
【0084】
また、CPU1212は、USBメモリ等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックしてよい。
【0085】
様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、第1の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0086】
上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ1200上またはコンピュータ1200近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。
【0087】
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【0088】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。