JP7030442B2 - 画像処理装置、画像処理方法、及びプログラム - Google Patents

画像処理装置、画像処理方法、及びプログラム Download PDF

Info

Publication number
JP7030442B2
JP7030442B2 JP2017152410A JP2017152410A JP7030442B2 JP 7030442 B2 JP7030442 B2 JP 7030442B2 JP 2017152410 A JP2017152410 A JP 2017152410A JP 2017152410 A JP2017152410 A JP 2017152410A JP 7030442 B2 JP7030442 B2 JP 7030442B2
Authority
JP
Japan
Prior art keywords
image
coefficient
image pickup
images
shooting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017152410A
Other languages
English (en)
Other versions
JP2019033344A5 (ja
JP2019033344A (ja
Inventor
亨 石橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017152410A priority Critical patent/JP7030442B2/ja
Priority to US16/051,154 priority patent/US10469741B2/en
Publication of JP2019033344A publication Critical patent/JP2019033344A/ja
Publication of JP2019033344A5 publication Critical patent/JP2019033344A5/ja
Application granted granted Critical
Publication of JP7030442B2 publication Critical patent/JP7030442B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B37/00Panoramic or wide-screen photography; Photographing extended surfaces, e.g. for surveying; Photographing internal surfaces, e.g. of pipe
    • G03B37/02Panoramic or wide-screen photography; Photographing extended surfaces, e.g. for surveying; Photographing internal surfaces, e.g. of pipe with scanning movement of lens or cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B17/00Details of cameras or camera bodies; Accessories therefor
    • G03B17/02Bodies
    • G03B17/12Bodies with means for supporting objectives, supplementary lenses, filters, masks, or turrets
    • G03B17/14Bodies with means for supporting objectives, supplementary lenses, filters, masks, or turrets interchangeably
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/55Optical parts specially adapted for electronic image sensors; Mounting thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6812Motion detection based on additional sensors, e.g. acceleration sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/73Circuitry for compensating brightness variation in the scene by influencing the exposure time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/81Camera processing pipelines; Components thereof for suppressing or minimising disturbance in the image signal generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/95Computational photography systems, e.g. light-field imaging systems
    • H04N23/951Computational photography systems, e.g. light-field imaging systems by using two or more images to influence resolution, frame rate or aspect ratio

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Studio Devices (AREA)

Description

本発明は、画像を処理する画像処理装置、画像処理方法、及びプログラムに関する。
従来、撮像装置の撮影方向を一定方向(例えば水平方向や垂直方向)に順次変更しながら撮影した複数の画像を繋ぎ合わせることでパノラマ画像を生成する技術が知られている。例えば特許文献1には、撮影方向を順次変更させながら撮像した各画像から、互いに重複領域が生ずるように所定サイズの画像領域を切り出し、それら画像領域の重複領域を重ね合わせつつ順次繋ぎ合わせてパノラマ画像を生成する技術が開示されている。
また、パノラマ撮影を行う場合、ユーザ(撮影者)は、地面に垂直に立って撮像装置を構えた状態で、自身を回転中心として回転するような撮影方法をとることが多いと考えられる。例えば特許文献2には、回転軸を中心として撮像装置の撮影方向を水平方向に移動(回転)させつつ撮影した各画像を、撮影焦点距離を半径とする仮想円筒面上に円筒写像変換してそれらを繋ぎ合わせることでパノラマ画像を生成する技術が開示されている。
その他、パノラマ画像の生成技術とは異なるが、特許文献3には、重力方向に対する撮像装置の保持角度と移動を検出し、撮像装置が移動している場合には、略水平方向に向いて撮影したように歪補正を行って表示する技術が開示されている。具体的には、撮影範囲内で略水平方向に該当する部分(例えば路面と地上の境界)を検出し、その略水平方向に該当する部分の画像の傾き(歪み)を補正することで、略水平方向に向いて撮影したようなライブビュー画像の表示を可能とする技術が開示されている。
特開2005-328497号公報 特開平11-331696号公報 特開2011-188340号公報
ところで、パノラマ撮影において、撮像装置の撮影方向を例えば水平方向に順次変更しながら複数の画像が撮影された際に、撮像装置が傾いた姿勢の状態(例えば光軸が水平方向に対して上又は下向きに傾けられた状態)で各画像が撮影されることがある。ここで、例えば地面の水平方向を基準方向とし、基準方向に対して垂直に建っている長方形の建物等を、基準方向に対して光軸が上又は下向きに傾いた状態の撮像装置で撮像した場合、長方形の建物等が台形に歪んで写った画像が取得されることになる。この場合、パノラマ撮影により取得された各画像から、それぞれ建物等が含まれた画像領域を切り出して繋ぎ合わせると、建物が湾曲したり繋ぎ目がずれたりした低品位のパノラマ画像が生成されてしまうという問題が生ずる。この問題は、特許文献2に記載の技術においても同様に生ずる。
なお、特許文献3に記載の技術によれば、台形状に歪んだ建物の画像を長方形に補正して表示することは可能ではある。ただし、この公報記載の技術は、ユーザが歩行等で移動している進行方向において、撮影範囲内で検出した略水平方向に該当する部分の画像の傾きを補正して、略水平方向に向いて撮影したようなライブビュー画像の表示を行うことを想定している。このため、パノラマ撮影のように、ユーザが回転中心となって回転することで撮像装置の撮影方向を水平方向に変更した各画像を撮影してそれら各画像を合成する場合において、特許文献3に記載の技術を適用しても高品位のパノラマ画像を得ることはできない。
そこで、本発明は、パノラマ撮影の際に撮像装置が傾いた姿勢の状態で撮影が行われた場合でも、高品位のパノラマ画像を生成可能にすることを目的とする。
本発明は、撮影方向を順次変更しながら撮影された複数の画像を取得する取得手段と、前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出手段と、前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出手段と、前記各画像に対する射影変換の係数を算出する係数算出手段と、前記撮像された各画像を仮想円筒上に投影する円筒変換手段と、前記係数を用いて、前記円筒変換手段によって前記仮想円筒上に投影する円筒変換がなされた各画像に対して射影変換を行う変換手段と、前記移動量を基に、前記射影変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ手段と、前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成手段と、を有し、前記係数算出手段は、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像に対する前記係数を算出し、前記変換手段は、前記姿勢の情報を基に算出された前記係数を用いて、前記円筒変換がなされた各画像に生じている台形状の歪みを補正する射影変換を行うことを特徴とする。
本発明によれば、パノラマ撮影の際に撮像装置が傾いた姿勢の状態で撮影が行われた場合でも、高品位のパノラマ画像を生成可能となる。
本実施形態の撮像装置の概略構成を示す図である。 通常の撮影動作の流れを示すフローチャートである。 パノラマ撮影時の光軸と回転軸との関係説明に用いる図である。 パノラマ撮影時に撮影される各画像とパノラマ合成の概念図である。 パノラマ撮影時に光軸が傾いた状態で順に撮影された画像の説明図である。 パノラマ撮影時の処理の流れを示すフローチャートである。 パノラマ撮影時のデータフローダイアグラムである。 光軸が傾いた場合の画像に対する円筒座標変換の説明に用いる図である。 加速度センサの検出軸を説明するための概念図である。
以下、本発明の好適な一実施形態について、図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本実施形態の画像処理装置の一適用例としての撮像装置(例えばデジタルカメラ)の概略構成例を示すブロック図である。
図1において、撮影レンズ101は、フォーカスレンズやズームレンズを有し、被写体等の光学像を撮像センサ112の撮像面上に結像させる。撮影レンズ101は、撮像装置本体に着脱可能な交換レンズであってもよいし、撮像装置に固定されたレンズであってもよい。絞り103は、絞り駆動回路104により駆動され、撮影レンズ101を介した入射光量の調節を行う。絞り駆動回路104は、マイクロコンピュータ123により算出された絞り駆動量を基に、絞り103における光学的な絞り値を変化させる。AF(オートフォーカス)駆動回路102は、例えばDCモータやステッピングモータを有して構成され、マイクロコンピュータ123からのフォーカス制御信号を基に、撮影レンズ101のフォーカスレンズを駆動してピント合わせを行う。
主ミラー105は、撮影レンズ101から入射した光束を、ファインダ部側と撮像センサ112側とに切り替えるためのミラーである。主ミラー105は、常時はファインダ部側へと光束を反射させるように配されているが、撮像が行われる場合やライブビュー表示がなされる場合には、撮影レンズ101からの光束が撮像センサ112へと入射するように、上方に跳ね上げられる。この主ミラー105を跳ね上げる等のミラー駆動は、マイクロコンピュータ123による制御の下、ミラー駆動回路107により行われる。また、主ミラー105は、その中央部が光の一部を透過できるようにハーフミラーとなされている。
ペンタプリズム108はファインダ部の一部を構成しており、撮影レンズ101から入射して主ミラー105により反射した光束を不図示の接眼部に導くためのプリズムである。なお、不図示の接眼部は、それぞれ不図示のピント板、アイピースレンズなどが設けられて構成されている。
サブミラー106は、主ミラー105の中央部に設けられたハーフミラーを透過した光束を反射させて、不図示の焦点検出用のセンサや、露光量算出回路109に併設されている不図示の露光量検出用センサに導くためのミラーである。
露光量検出用のセンサは、主ミラー105の中央部のハーフミラーを透過してサブミラー106で反射されてきた入射光を光電変換して露光量算出回路109に送る。露光量算出回路109は、露光量検出用のセンサの検出出力から露光量を算出し、その算出した露光量の信号をマイクロコンピュータ123に出力する。マイクロコンピュータ123は、露光量の信号を基に、絞り駆動量、シャッタスピードや露光時間等を制御する。
焦点検出用のセンサは、主ミラー105の中央部のハーフミラーを透過してサブミラー106で反射されてきた光束を受光し、そのセンサ出力をマイクロコンピュータ123に送る。マイクロコンピュータ123は、そのセンサ出力からデフォーカス量を算出し、そのデフォーカス量を基にフォーカス演算を行ってフォーカス制御信号を生成し、そのフォーカス制御信号によりAF駆動回路102を制御する。
フォーカルプレーンシャッタ110(以下、シャッタ110とする。)は、マイクロコンピュータ123による制御の下、シャッタ駆動回路111により駆動される。すなわち、シャッタ110の開口時間は、マイクロコンピュータ123により制御される。
撮像センサ112は、マイクロコンピュータ123により駆動制御がなされるCCDやCMOSセンサなどであり、撮影レンズ101によって結像された被写体像を電気信号に変換する。A/D変換器115は、マイクロコンピュータ123による制御の下、撮像センサ112からのアナログ出力信号をデジタル信号に変換する。A/D変換器115から出力されたデジタル信号は、映像信号処理回路116に送られる。
映像信号処理回路116は、デジタル化された画像データに対し、フィルター処理、色変換処理、ガンマ処理などを行うと共に、JPEGなどへの圧縮処理を行い、メモリコントローラ119に出力する。その際、映像信号処理回路116は、処理途中の画像データを、メモリコントローラ119を介してバッファメモリ122に一時的に蓄積させることも可能である。また、映像信号処理回路116は、撮像センサ112により撮像された画像データや、メモリコントローラ119から入力される画像データを、表示駆動回路117を通して表示部118に出力することも可能である。映像信号処理回路116におけるこれらの機能の切り替えはマイクロコンピュータ123の指示により行われる。また、映像信号処理回路116は、必要に応じて、撮像センサ112による撮像がなされた際の露出情報やホワイトバランスなどの情報を、マイクロコンピュータ123に出力することも可能である。それらの情報を基に、マイクロコンピュータ123は、ホワイトバランスやゲイン調整の指示を行う。
また後述するパノラマ撮影などの連続撮影動作が行われた場合、映像信号処理回路116は、メモリコントローラ119を介して、撮影された未処理画像データをバッファメモリ122に一旦格納させた後に読み出して画像処理や圧縮処理を行う。これらバッファメモリ122への格納と画像処理、圧縮処理は、パノラマ撮影などの連続撮影動作が行われている間、続けられる。なお、連像撮影が可能な枚数は、バッファメモリ122の容量や、パノラマ撮影の際に撮像される画像サイズに応じた枚数となる。
映像信号処理回路116は、ゲートアレイなどのロジックデバイスにより実現され、輝度調整回路116a、ガンマ補正回路116b、現像回路116k、圧縮・伸長回路116lなどを有する。また、映像信号処理回路116は、移動量算出回路116c、位置合わせ回路116d、幾何変換回路116e、変倍回路116f、トリミング回路116g、合成回路116jなども有する。現像回路116kは、現像処理を行う。輝度調整回路116aは、デジタルゲインによって明るさを調整する。ガンマ補正回路116bは、ガンマ特性によって輝度を調整する。圧縮・伸長回路116lは、JPEGなどの一般的な画像形式への変換を行う。移動量算出回路116cは、複数枚の画像から移動量を求めてぶれ量を算出する。位置合わせ回路116dは、ぶれ量に応じて位置合わせを行う。幾何変換回路116eは、後述する撮影レンズ101の歪曲収差補正、アフィン変換、射影変換、円筒座標変換や円錐台座標変換などを行う。変倍回路116fは、画像のサイズを変倍する。トリミング回路116gは、画像の一部を切り出す。合成回路116jは、複数の画像を合成する。本実施形態の撮像装置においてパノラマ撮影が行われた際の移動量算出回路116c、位置合わせ回路116d、幾何変換回路116e、変倍回路116f、トリミング回路116g、合成回路116jにおける動作の説明は後述する。
メモリコントローラ119は、メモリ120へのデータの書き込みと読み出し、バッファメモリ122への一時的なデータの蓄積等を制御する。なお、メモリ120は着脱可能なカード型等のメモリであってもよい。メモリコントローラ119は、映像信号処理回路116による処理がなされていない未処理の画像データをバッファメモリ122に格納し、映像信号処理回路116による処理済みのデジタル画像データをメモリ120に格納する。また、メモリコントローラ119は、バッファメモリ122やメモリ120から読み出した画像データを映像信号処理回路116に出力する。また、メモリコントローラ119は、メモリ120に記憶されている画像を、外部インターフェイス121を介してコンピュータ等の外部機器に出力することも可能となされている。
表示部118は、TFTや有機ELなどの表示デバイスである。表示駆動回路117は、VRAMとしても用いられるバッファメモリ122に格納された表示データを、メモリコントローラ119と映像信号処理回路116を介して受け取り、その表示データにより表示部118を駆動して画面上に画像等を表示させる。
操作部124は、各種のボタンやスイッチが接続されており、それらボタンやスイッチの状態を検知し、それら状態検知信号をマイクロコンピュータ123に伝える。マイクロコンピュータ123は、操作部124からの状態検知信号に応じて各部をコントロールする。
操作部124に接続された各種のスイッチのうち、スイッチ125(以後、SW1とする)とスイッチ126(以後、SW2とする)は、レリーズボタンの操作でオンオフするスイッチである。SW1のみがオンとなっている状態は、いわゆるレリーズボタン半押し状態である。このレリーズボタン半押し状態の時、マイクロコンピュータ123は、撮像装置のオートフォーカスの動作を開始させると共に測光動作を開始させる。SW1及びSW2が共にオンとなっている状態は、いわゆるレリーズボタンの全押し状態である。このレリーズボタン全押し状態の時、マイクロコンピュータ123は、撮像装置の画像撮影と記録を行わせる。また、レリーズボタン全押し状態が続いている間、マイクロコンピュータ123は、撮像装置に連続撮影動作を行わせる。
また、操作部124には、不図示のボタンやスイッチとして、例えば、露出補正ボタン、絞りボタン、ISO設定ボタン、メニューボタン、セットボタン、フラッシュ設定ボタン、単写/連写/セルフタイマー切り替えボタンなども接続されている。また操作部124に接続された不図示のボタン等には、例えば、メニューや再生画像移動のための移動+(プラス)ボタンや移動-(マイナス)ボタン、表示画像拡大ボタン、表示画像縮小ボタン、再生スイッチ、消去ボタン、情報表示ボタンなども含まれる。なお、絞りボタンは、予め設定された絞り値にまで絞り103を絞り込ませる際に操作されるボタンである。消去ボタンは、撮影した画像を消去する際に操作されるボタンである。情報表示ボタンは、撮影や再生に関する情報表示を行う際に操作されるボタンである。また、操作部124には、例えば回転ダイアルが接続されていてもよい。例えば移動+(プラス)ボタンや移動-(マイナス)ボタンの各機能は回転ダイアルが備えてもよい。回転ダイアルの回転操作によって、より軽快に数値や機能を選択することが可能となる。
液晶駆動回路127は、外部液晶表示部128やファインダ内液晶表示部129を駆動する。マイクロコンピュータ123は、液晶駆動回路127に対して表示内容を送り、液晶駆動回路127が外部液晶表示部128やファインダ内液晶表示部129を駆動させることで、撮像装置の動作状態やメッセージ等を文字や画像を用いて表示させる。また、ファインダ内液晶表示部129には、不図示のLEDなどのバックライトが配置されており、そのLEDも液晶駆動回路127により駆動される。
マイクロコンピュータ123は、撮影前に設定されているISO感度、画像サイズ、画質に応じた、画像サイズの予測値データを基に、メモリコントローラ119を介してメモリ120の容量を確認した上で撮影可能残数を演算することができる。そして、マイクロコンピュータ123は、その撮影可能残数を表示部118に表示させる。また、マイクロコンピュータ123は、撮影可能残数を、必要に応じて外部液晶表示部128やファインダ内液晶表示部129に表示させることもできる。
不揮発性メモリ130は、EEPROMであり、撮像装置に電源が入れられていない状態でも、記憶内容を保存することができる。マイクロコンピュータ123の動作プログラムは、不揮発性メモリ130に格納されている。なお、後述するパノラマ撮影により取得された画像に対する画像処理がソフトウェア構成により実現される場合、本実施形態に係る画像処理プログラムも不揮発性メモリ130に格納され、マイクロコンピュータ123はその画像処理プログラムを実行する。
ジャイロセンサ133は、例えば2軸若しくは3軸のジャイロセンサであり、撮像装置における回転の角速度を検出し、その検出信号をマイクロコンピュータ123に出力する。
加速度センサ135は、例えば3軸の加速度センサであり、撮像装置の姿勢検出を行い、その姿勢検出信号をマイクロコンピュータ123に出力する。
温度計134は、温度を検出し、その検出信号をマイクロコンピュータ123に出力する。
外部インターフェイス121は、本実施形態の撮像装置と、コンピュータ等の外部機器とを接続する。
電源部131は、例えば着脱可能なバッテリを備えており、本実施形態の撮像装置の各部に必要な電力を供給する。
内部時計132は、時刻情報や撮像装置の動作に必要な時間情報を出力してマイクロコンピュータ123に出力する。マイクロコンピュータ123は、例えば内部時計132からの時刻情報に基づく撮影時刻データを、メモリ120に記録される画像ファイルに付加又は重畳することができる。
以下、図2フローチャートを用いて、本実施形態の撮像装置における通常の撮影動作を説明する。図2のフローチャートに示した撮影動作は、マイクロコンピュータ123が撮像装置の各部を制御することにより行われる。撮影動作が開始される前には、予め露光量算出回路109により露光量が算出され、絞り量、蓄積時間(シャッタスピード)、ISO感度等が決定されているとする。なお、以下の説明では、図2のフローチャートの各処理ステップS401~ステップS407をS401~S407と略記する。
ユーザによりレリーズボタンが全押し状態となされてSW1及びSW2が共にオンの状態になると、S401として、マイクロコンピュータ123は、図2のフローチャートに示した撮影動作の制御を開始する。
撮影動作の制御を開始すると、マイクロコンピュータ123は、S402として、以下の一連の動作を行うように各部を制御する。先ず、マイクロコンピュータ123は、予め決められた絞り量を絞り駆動回路104に通知して、絞り103を目標の絞り量にする。また、マイクロコンピュータ123は、撮像センサ112、A/D変換器115などを動作可能な状態にする撮影準備を行う。そして、マイクロコンピュータ123は、撮影準備が完了すると、ミラー駆動回路107を制御して主ミラー105を上方に跳ね上げさせ、またシャッタ駆動回路111を制御してシャッタ110の不図示の先幕を開けさせる。これにより、撮影レンズ101を介した被写体像が撮像センサ112上に結像されることになる。続いて、マイクロコンピュータ123は、シャッタ駆動回路111を制御して、予め設定された蓄積時間後にシャッタ110の不図示の後幕を閉じる。これにより、撮像センサ112には、蓄積時間の間だけ光が入ることになる。S402では、この一連の動作により、撮像センサ112の露光が行われる。
続いて、S403として、マイクロコンピュータ123は、撮像センサ112から出力されてA/D変換器115で変換された画像データを、映像信号処理回路116を介し、さらにメモリコントローラ119を介してバッファメモリ122に格納させる。さらに、S404として、マイクロコンピュータ123は、メモリコントローラ119を介してバッファメモリ122から読み出した画像データを映像信号処理回路116に送り、現像回路116kによる現像処理を行わせる。またS404において、マイクロコンピュータ123は、映像信号処理回路116を制御し、ホワイトバランス処理や、ガンマ補正回路116bで暗部にゲインをかける処理などの画像処理を行わせてもよい。
次に、S405として、マイクロコンピュータ123による制御の下、映像信号処理回路116は、画像処理が施された画像データを圧縮・伸長回路116lによりJPEGなどの汎用的なデータフォーマットへと変換して、メモリ120に記録させる。その後、マイクロコンピュータ123は、レリーズボタンが全押し状態でなければ、S407として、図2のフローチャートの撮影動作の制御を終了する。
なお、メモリ120に記録される画像データは、映像信号処理回路116での画像処理や現像処理が行われていないRAWデータを、圧縮・伸長回路116lにより可逆圧縮したデータであってもよい。マイクロコンピュータ123は、操作部124を介したユーザからの指示を基に、メモリ120に記録する画像データをJPEG等の画像データか又は可逆圧縮されたRAWデータの何れにするかを決定する。
次に、本実施形態の撮像装置において、撮影したい全景が撮像装置の撮影画角よりも広い場合に行われるパノラマ撮影時の動作、及びパノラマ画像合成時の合成処理について説明する。
パノラマ撮影は、ユーザが撮像装置の撮影モードをパノラマ撮影モードに設定することで実行可能となる。パノラマ撮影では、撮像装置の撮影方向を一定方向(例えば水平方向や垂直方向)に順次変更しながら全景のそれぞれ一部を構成する複数の画像が順次撮像される。また、パノラマ撮影において各画像が撮影される際には、撮影方向が順次変更される一定方向において隣接する画角(隣接した撮影方向)内で互いに同被写体等の一部が重複(共通)するような撮影が行われる。これにより、パノラマ撮影により撮影された各画像は、撮影方向が順次変更された一定方向において隣接する画像間で互いに重複(共通)した画像領域が含まれた画像となる。なお、パノラマ撮影において撮像装置の撮影方向が順次変更される一定方向は、一般的には地面等と平行な水平方向となされるが、重力方向(垂直方向)となされる場合もある。以下の説明では、撮影方向が一般的な水平方向となされた場合のパノラマ撮影モードを例に挙げる。
そして、パノラマ画像の生成処理では、各画像の共通領域から特徴点を抽出し、その特徴点がどのくらい動いたかにより移動ベクトルが検出される。さらに、その移動ベクトルから例えばアフィン変換の係数が算出されてアフィン変換が行われ、共通領域の各特徴点が一致するように2枚の画像を重ね合わせることにより、共通領域以外の画像領域が水平方向に繋がった画像が生成される。このような処理が水平方向で隣り合う各画像について順次繰り返されることにより、パノラマ画像が生成される。
また、パノラマ撮影において撮影方向を水平方向に順次変更する場合、ユーザ200は、例えば図3(a)のように撮像装置201を構えた状態(又は自動雲台等に設置した状態)で、ユーザ自身(又は自動雲台)が回転中心となって回転する動作を行う。以下の説明では、ユーザ自身(又は自動雲台)が回転中心となって回転することで撮像装置の撮影方向を順次変更することを「スイング」と呼ぶことにする。
図4は、パノラマ撮影時の全景700(パノラマ撮影範囲)と撮影された画像701及び画像702と合成された画像703の一例を示している。撮像装置の撮影画角は、全景700より狭いとする。パノラマ撮影では、撮像装置を水平方向にスイングしながら、その水平方向において隣り合う画角内で被写体等が共通した領域が得られるように複数の画像が順に撮像される。図4の例では、撮像装置を水平方向にスイングさせて撮影した1枚目の画像701と2枚目の画像702のみを示している。1枚目の画像701と2枚目の画像702との間には水平方向に共通領域が存在している。そして、パノラマ画像を生成する際には、1枚目の画像701と2枚目の画像702の共通領域(重複した画像領域)を重ね合わせて、それら2枚の画像を繋ぎ合わせるような画像合成が行われる。これにより、図4に合成結果として示す画像703が得られることになる。なお、図4の全景700のパノラマ画像を生成する場合には、前述同様にして全景700をカバーできる各画像が撮影され、それぞれ水平方向で隣接する各画像で互いに共通領域を重ね合わせて繋ぐような合成処理が行われる。
ここで、ユーザが撮像装置を構え、ユーザ自身を回転軸として撮像装置をスイングさせながらパノラマ撮影を行う場合において、ユーザの回転軸と撮像装置の光軸との関係としては、例えば図3(b)~図3(f)のような五つのパターンが考えられる。なお、本実施形態の撮像装置の撮影レンズ101は、いわゆるチルト機能やシフト機能を備えておらず、その光軸が撮像センサ112の撮像面に対して垂直となされ、且つ光軸中心と撮像面中心とが一致しているとする。
図3(b)は、パノラマ撮影時において、光軸211が水平方向と略々平行になるようにユーザ200が撮像装置201を構え、また、その撮像装置201をスイングする際の回転軸210が水平方向に対して略々直交している状態を示している。
一方、図3(c)は、水平方向に対して光軸211を上方向に傾けた状態でユーザ200が撮像装置201を構え、その撮像装置201をスイングする際の回転軸210が水平方向に対して略々直交している状態を示している。例えば地面(水平方向)に垂直に建っている長方形の高い建物等を撮影する場合、ユーザ200は、撮像装置201を上に向けて撮影することが多い。また、このときのユーザ200は地面に垂直に立っているため、ユーザが撮像装置201をスイングする際の回転軸210は水平方向(地面)に対して直交している状態であることが多い。この場合、図3(c)のように撮像装置201の光軸211と回転軸210とは直交していない状態になる。
また、図3(d)は、水平方向に対して光軸211を下方向に傾けた状態でユーザ200が撮像装置201を構え、その撮像装置201をスイングする際の回転軸210が水平方向に対して直交している状態を示している。例えば塔の上や高層ビルの高層階、山頂などから景色をパノラマ撮影するような場合、ユーザ200は、撮像装置201を下に向けて撮影することが多く、またこのときのユーザ200は地面(或いは建物の床)に垂直に立っている。この場合、図3(d)のように撮像装置201の光軸211と回転軸210とは直交していない状態になる。
これに対し、図3(e)は、水平方向に対して光軸211を上方向に傾けた状態でユーザ200が撮像装置201を構えている一方で、撮像装置201をスイングする際の回転軸210が撮像装置201の光軸211に対して略々直交している状態を示している。
また、図3(f)は、水平方向に対して光軸211を下方向に傾けた状態でユーザ200が撮像装置201を構えている一方で、撮像装置201をスイングする際の回転軸210が撮像装置201の光軸211に対して略々直交している状態を示している。
すなわち、図3(b)の状態は、ユーザ200の回転軸210が水平方向に対して略々直交し、且つ、撮像装置201の光軸211とユーザ200の回転軸210とが略々直交した関係を有している。一方、図3(c)と図3(d)の状態の場合、ユーザ200の回転軸210は水平方向に対して略々直交しているが、撮像装置201の光軸211とユーザ200の回転軸210とは直交していない関係を有している。これに対し、図3(e)と図3(f)の状態の場合、ユーザ200の回転軸210は水平方向に対して直交していないが、撮像装置201の光軸211とユーザ200の回転軸210とは略々直交した関係を有している。
ここで、例えば地面の水平方向を基準方向とし、その地面(基準方向)に垂直に建っている長方形の建物等を、基準方向に対して光軸が上又は下方向に傾けられた姿勢状態の撮像装置により撮像した場合について考察する。このように、地面(基準方向)に垂直に建っている長方形の建物等を、基準方向に対して光軸が傾けられた姿勢状態の撮像装置で撮像した場合、長方形の建物等が台形に歪んで写った画像が取得されることになる。すなわち例えば、図3(c)と図3(d)のように水平方向(基準方向)に対して撮像装置201の光軸211が傾けられている場合、地面に垂直に建っている長方形の建物を撮影すると、建物は台形状に歪んで写ることになる。図3(e)と図3(f)の場合も同様に、撮像装置201の光軸211が水平方向(基準方向)に対して傾けられているため、地面に垂直に建っている長方形の建物は台形状に歪んで写ることになる。
このような台形状の歪みは、パノラマ撮影の際に撮像装置201の光軸211が基準方向に対して傾けられた状態になっていた場合にも同様に生ずることになる。そして、これら台形に歪んだ建物等が写った複数の各画像を従来の技術のように単に繋ぎ合わせた場合には、建物が湾曲したり繋ぎ目がずれたりした低品位のパノラマ画像が生成されてしまうことになる。ただし、図3(e)と図3(f)のように、回転軸210が水平方向に対して傾けられた状態でパノラマ撮影が行われた場合に取得される各画像は、図4の全景700のような水平方向の範囲を撮影した各画像ではなく、円弧状の範囲を撮影した各画像となる。このため本実施形態では、図3(e)と図3(f)の例は除外し、図3(c)と図3(d)の例のように、回転軸210が水平方向に対し垂直な状態で、且つ、光軸211が水平方向に対して傾いた状態で行われる水平方向のパノラマ撮影を例に挙げて説明する。
具体的に説明すると、例えば図3(c)のように撮像装置201の光軸211が水平方向に対して上方向に傾いた状態でパノラマ撮影がなされたとする。このため、パノラマ撮影の1枚目の画像には、例えば図5(a)に示すような台形に歪んだ建物300が写っているとする。パノラマ撮影では、図3(c)のようにユーザ200が回転軸210となって撮像装置201をスイングさせながら撮影がなされるため、2枚目に撮影された画像内の建物は、図5(b)に示す建物300のような形状に変化する。また、パノラマ画像の合成処理では、図5(a)の画像と図5(b)の画像の共通領域から特徴点が抽出されて移動ベクトルが検出され、その移動ベクトルからアフィン変換の係数算出がなされてアフィン変換が行われる。ここで例えば建物300の右側の壁に着目してアフィン変換が行われるとスイング時の回転成分が算出されてしまい、各画像が順次繋ぎ合わされていく度に、建物300の画像が右上へと合成されてしまうようになる。また、合成結果を矩形にトリミングしようとすると、有効領域が小さくなってしまうという問題が生ずる。また、回転成分を除去してアフィン変換して合成していく方法も考えられるが、この場合は繋ぎ目がずれたりしてしまうようになる。このように、パノラマ撮影の際に撮像装置201の光軸211が水平方向(基準方向)に対して傾いた状態で撮影された各画像からパノラマ画像を生成しようとすると、建物が湾曲したり繋ぎ目がずれたりした低品位のパノラマ画像が生成されてしまう。
そこで、本実施形態の撮像装置は、後述するように、パノラマ撮影時の撮像装置の姿勢検出を行い、パノラマ撮影で取得した複数の各画像に対し、撮像装置の検出姿勢に応じた射影変換を施すことにより、高品位のパノラマ画像を生成可能にする。本実施形態において、撮像装置の姿勢は、撮像装置201の光軸211が回転軸210と直交していない場合において、撮像装置201の光軸211が基準方向に対して傾いた角度を表す情報として検出される。そして、本実施形態における射影変換は、撮像装置201の光軸211が回転軸210と直交していない場合に、撮像装置201の光軸211が基準方向に対して傾いている角度に基づく処理として行われる。
また、本実施形態では、撮像装置を水平方向にスイングさせてパノラマ撮影を行う例を挙げているため、基準方向を地面の水平方向とし、いわゆる縦台形の歪を補正する例を挙げて説明している。これに対し、例えば重力方向に撮像装置をスイングさせてパノラマ撮影を行う場合には基準方向が重力方向となる。重力方向が基準方向となされた場合、撮像装置の光軸が基準方向(重力方向)に対して右又は左方向に傾けられた場合、四角形の建物等はいわゆる横台形に歪むことになる。本実施形態では重力方向を基準方向とした場合の横台形の歪についても射影変換により補正可能である。
また、本実施形態の撮像装置は、パノラマ撮影で取得された各画像に対し、撮影レンズ101の焦点距離を半径とした仮想円筒上にマッピングする処理(以下、円筒座標変換と呼ぶ)をも行う。この場合、本実施形態の撮像装置は、その円筒座標変換を行った画像に対して前述した射影変換を行うようにする。
そして、本実施形態の撮像装置は、円筒座標変換と射影変換が施された各画像について、前述したように水平方向で隣り合う各画像で互いに共通領域を重ね合わせて繋ぐような合成処理を行うことによりパノラマ画像を生成する。詳細は後述するが、本実施形態の撮像装置は、円筒座標変換と射影変換が施された各画像の共通領域から特徴点を抽出し、その特徴点がどのくらい動いたかにより移動ベクトルを検出する。さらに、本実施形態の撮像装置は、その移動ベクトルから例えばアフィン変換の係数を算出してアフィン変換を行い、共通領域の各特徴点が一致するように2枚の画像を重ね合わせることにより、共通領域以外の画像領域が水平方向に繋がった画像を生成する。本実施形態の撮像装置では、このような処理を水平方向で隣り合う各画像について順次繰り返すことにより、パノラマ画像を生成する。
以下、本実施形態の撮像装置におけるパノラマ撮影時の画像撮像からパノラマ画像の生成及び保存までの動作について説明する。
マイクロコンピュータ123は、ユーザから操作部124を介してパノラマ撮影モードの設定指示が入力されると、撮像装置をパノラマ撮影モードに設定し、撮像センサ112とA/D変換器115に電源が供給されるよう制御すると共に初期設定を行う。また、マイクロコンピュータ123は、ミラー駆動回路107を制御して主ミラー105を上げさせるとともに、シャッタ駆動回路111を制御してシャッタ110を開き、撮影レンズ101による被写体像が撮像センサ112に結像されるようにする。これにより、撮像センサ112から読み出されてA/D変換器115にてデジタル変換された画像信号は映像信号処理回路116に送られる。さらに、マイクロコンピュータ123は、映像信号処理回路116を制御し、現像回路116kによる現像処理、輝度調整回路116a、ガンマ補正回路116bによる画像処理、変倍回路116fによる変倍処理を行わせる。変倍回路116fにより表示に適した画像サイズへと変倍された画像は、表示部118に送られて表示される。撮像装置では、このような撮像センサ112による撮像から表示部118の表示までの処理が、1秒間に24回~60回繰り返して行われることにより、いわゆるライブビューの表示がなされる。
またパノラマ撮影モードの際には、例えば、ユーザに対し、表示部118のライブビュー表示を確認しながら、図4の全景700のような広い範囲の中で所望の被写体に画角を合わせた上で撮像装置のSW1を押下する操作が求められる。そして、ユーザによりSW1が押下されると、マイクロコンピュータ123は、パノラマ撮影の準備のために、撮像装置の各部を制御し、画角内の被写体に対する適切な露光量の算出と、画角内の被写体に対する焦点合わせとを行わせる。例えばライブビュー表示がなされている場合、マイクロコンピュータ123は、映像信号処理回路116に含まれる不図示の露光量算出回路により最適な露光量を算出させて、その露光量の情報を取得する。また例えばライブビューの表示がなされていない場合、マイクロコンピュータ123は、サブミラー106にて反射された光を露光量算出回路109に受光させ、露光量算出回路109が算出した露光量の情報を取得する。そして、マイクロコンピュータ123は、その露光量を基に、絞り駆動回路104を介した絞り103の駆動制御、撮像センサ112の感度制御や蓄積時間の制御を行う。また、マイクロコンピュータ123は、AF駆動回路102を介して撮影レンズ101を駆動させることにより、画角内の被写体に対して焦点を合わせるように制御する。これらパノラマ撮影のための準備が終わると、マイクロコンピュータ123は、不図示のスピーカ等からブザー音を出力させて、パノラマ撮影の準備が完了したことをユーザに知らせる。
以下、図6のフローチャートと図7のデータフローダイアグラムを参照しながら、本実施形態の撮像装置におけるパノラマ撮影時の処理の流れについて説明する。図6のフローチャートに示した動作は、マイクロコンピュータ123が撮像装置の各部を制御することにより行われる。以下の説明では、図6のフローチャートの各処理ステップS501~ステップS518をS501~S518と略記する。なお、このフローチャートの処理は、ハードウェア構成により実行されてもよいし、一部がソフトウェア構成で残りがハードウェア構成により実現されてもよい。ソフトウェア構成により処理が実行される場合、例えば不揮発性メモリ130に記憶されているプログラムをマイクロコンピュータ123が実行することにより実現される。本実施形態に係るプログラムは、不揮発性メモリ130に予め用意されていてもよく、また着脱可能な半導体メモリ等から読み出されたり、不図示のインターネット等のネットワークからダウンロードされたりしてもよい。
パノラマ撮影時に撮り始めたい方向に撮像装置が向けられ、ユーザによりSW2が押下されると、S501において、マイクロコンピュータ123は、撮像装置の各部を制御してパノラマ撮影を開始させる。
パノラマ撮影が開始されると、マイクロコンピュータ123は、先ずS502として、レンズ情報を取得する。レンズ情報には、後述する歪曲収差やレンズ周辺部の光量低下を補正するためのデータ、後述する円筒座標変換に使用する焦点距離、画角のデータなどが含まれる。歪曲収差やレンズ周辺部の光量低下を補正するためのデータは例えば不揮発性メモリ130に予め格納されているとする。また、焦点距離のデータは例えばAF駆動回路102によるフォーカスレンズ駆動量、画角のデータはズームレンズの駆動量等の情報を基に取得されるとする。
次に、S503として、マイクロコンピュータ123は、撮像装置の各部を制御して1枚目の画像の撮影を行わせる。このときの撮像センサ112とA/D変換器115はライブビュー用の駆動に設定されているので、マイクロコンピュータ123は、これらを静止画撮影用の駆動に切り替える。また、マイクロコンピュータ123は、絞り駆動回路104を介して絞り103を先ほど決めた露光量になるように調整し、さらにシャッタ駆動回路111を介してシャッタ110を開閉させて、撮像センサ112に被写体像が結像されるようにする。これにより、撮像センサ112では静止画の撮影が行われ、撮像センサ112から読み出された画像信号はA/D変換器115でデジタル信号に変換される。そして、映像信号処理回路116では、A/D変換器115からのデジタル信号に対し、不図示の回路により撮像センサ112のシェーディングを補正する補正処理のような最小限の画像処理を施す。この映像信号処理回路116による最小限の処理がなされた画像データは、1枚目のRAW画像のデータとして、メモリコントローラ119を介してバッファメモリ122に格納される。
また、S504において、マイクロコンピュータ123は、1枚目の画像の撮影から次の2枚目の画像の撮影が行われるまでに撮像装置がどのくらいスイング(回転)されたのかを検出可能にするために、ジャイロセンサ133を初期化(リセット)する。
S503においてバッファメモリ122に格納された1枚目のRAW画像データは、メモリコントローラ119により読み出されて映像信号処理回路116の現像回路116kに送られる。現像回路116kは、RAW画像に対して現像処理を行って、輝度(Y)と色差(UV)からなる1枚目のYUV画像に変換し、そのYUV画像データを変倍回路116fと幾何変換回路116eに送る。なお、S503で撮影された1枚目のRAW画像が、図7のデータフローダイアグラムのN枚目RAW画像605であるとすると、1枚目のYUV画像は、図7のN枚目RAW画像605を現像回路116kで現像したN枚目現像後画像606である。
映像信号処理回路116の変倍回路116fでは、1枚目のYUV画像に対し表示部118の画素数に応じた縮小処理が行われ、その縮小処理により得られた縮小画像がバッファメモリ122のVRAM領域に格納される。なお、1枚目のYUV画像が図7のN枚目現像後画像606であるとすると、VRAM領域608には、N枚目現像後画像606を変倍回路116fで縮小処理した縮小画像が格納される。そして、VRAM領域から読み出された1枚目のYUV画像は表示駆動回路117を介して表示部118の画面上に表示される。この表示を見ることにより、ユーザはパノラマ撮影において1枚目に撮影された画像を確認できる。
また、映像信号処理回路116の幾何変換回路116eでは、S505の処理として、YUV画像に対して撮影レンズ101の歪曲収差を補正する処理を施す。歪曲収差の補正処理は既存の技術であるためその説明は省略する。なお、1枚目のYUV画像が図7のN枚目現像後画像606であるとすると、図7のN枚目現像後画像606が幾何変換回路116eで歪曲収差補正された後の画像は、N枚目幾何変換後画像607である。このN枚目幾何変換後画像607はバッファメモリ122に格納され、次の画像が撮影されて後述する移動量算出回路116cでの移動量算出の際に、N-1枚目幾何変換後画像603としてバッファメモリ122から読み出されることになる。
次に、S506として、マイクロコンピュータ123は、撮像装置の各部を制御して2枚目の静止画撮影を行わせる。2枚目の画像撮影の場合も1枚目の画像撮影と同様に、マイクロコンピュータ123は、露光量の制御、シャッタ駆動の制御を行う。そして、撮像センサ112から読み出された2枚目の画像信号も1枚目と同様、A/D変換器115でデジタル信号に変換され、映像信号処理回路116で最小限の画像処理が施され、2枚目のRAW画像のデータとしてバッファメモリ122に格納される。なお、2枚目のRAW画像が撮影された場合、この2枚目のRAW画像は、図7のデータフローダイアグラムではN枚目RAW画像605となる。
また、S507において、マイクロコンピュータ123は、ジャイロセンサ133からジャイロ情報(図7のデータフローダイアグラムではジャイロ情報604)を取得する。ここで、ジャイロ情報としては、撮像装置のヨー(Yaw)方向、ピッチ(Pitch)方向の2軸の情報を取得するが、光軸回りの回転であるロール(Roll)方向を加えた3軸の情報を取得することが好ましい。なお、ジャイロセンサ133からの出力そのものは角速度の情報であるが、パノラマ撮影では前回の撮影から今回の撮影までの間にどのくらいスイングされたかの検出が必要である。このため、マイクロコンピュータ123は、前回の撮影から今回の撮影までの間の角速度を積分し、2枚目以降の撮影時においてもそれぞれ前回からの回転角度を計算して不図示の内部メモリ等に記憶しておく。
そして、S508として、マイクロコンピュータ123は、S502で取得した焦点距離や画角と、撮像センサ112の画素数や画素ピッチの情報とを基に、S507で算出した回転角度を画素単位で表される移動量に変換する。このジャイロ情報を基に算出された移動量は、撮影方向を順次変更しながら各画像が撮影なされた際の、隣接した撮影方向(撮影画角)の間の移動量、つまり隣接した撮影方向の間で撮像装置がスイングされた際のスイング量に相当する。
ここで、実効焦点距離をf[mm]、撮像センサ112の有効撮像エリア幅をw[mm]とすると、一般に歪曲収差の無いレンズの画角α[°](若しくは歪曲収差補正後の画角α)は、以下の式(1)により算出できる。
α[°]=2×arctan(w[mm]÷2÷f[mm]) 式(1)
また、撮像センサ112の1画素当たりのサイズをp[μm]、ジャイロ情報に基づく撮像装置のスイング角をβ[°]とすると、スイング量に相当する画像内での移動量d[pix]は、式(2)により算出できる。
d[pix]=tan(β[°]÷2)×f[mm]/p[μm]×1000 式(2)
S506においてバッファメモリ122に格納された2枚目のRAW画像データも1枚目と同様、映像信号処理回路116の現像回路116により現像処理されて2枚目のYUV画像に変換される。なお、S506で撮影された2枚目のRAW画像が、図7のN枚目RAW画像605であるとすると、2枚目のYUV画像は、図7のN枚目RAW画像605を現像回路116kで現像したN枚目現像後画像606となる。そして、2枚目のYUV画像も1枚目と同様、映像信号処理回路116の変倍回路116fにより縮小処理が行われて、VRAM領域に格納された後、表示駆動回路117を介して表示部118の画面上に表示される。この表示を見ることにより、ユーザはパノラマ撮影において2枚目に撮影された画像を確認できる。
また、S509において、映像信号処理回路116の幾何変換回路116eでは、2枚目のYUV画像に対して1枚目と同様に歪曲収差を補正する処理が施される。
続いて、マイクロコンピュータ123は、S510として、映像信号処理回路116の幾何変換回路116eにより円筒座標変換を行わせる。ここで、円筒座標変換の仮想円筒は、撮影レンズ101の焦点距離にすることが好ましい。一般に、撮影画像の歪曲収差補正後の点(x,y)は、円筒座標変換を行うと(x・cosθ,y・cosθ)へと投影される。仮想円筒の半径をr[mm]とすると、θ[rad]は式(3)で表される。
θ[rad]=arctan(x・p[μm]×1000÷r[mm]) 式(3)
本実施形態において、前述した円筒座標変換と歪曲収差補正とは共に幾何変換回路116eで行われる。このため、幾何変換回路116eは、それら円筒座標変換と歪曲収差補正を、前述した通り別に行ってもよいし、同時に行ってもよい。また、パノラマ撮影において各画像を撮影する際の撮影時間間隔が短く、例えば1枚目と2枚目の画像の差分が少ないような場合には円筒変換を省略することも可能である。なお、2枚目のYUV画像が図7のN枚目現像後画像606である場合、図7のN枚目現像後画像606が幾何変換回路116eで円筒座標変換及び歪曲収差補正された後の画像は、N枚目幾何変換後画像607となる。このN枚目幾何変換後画像607はバッファメモリ122に格納され、次の画像(3枚目の画像)が撮影されて移動量算出回路116cで移動量が算出される際に、N-1枚目幾何変換後画像603としてバッファメモリ122から読み出されることになる。
次に、マイクロコンピュータ123は、S511として、映像信号処理回路116の幾何変換回路116eに射影変換を行わせる。ただし、本実施形態の場合、射影変換は、パノラマ撮影において前述の図3(c)や図3(d)のように撮像装置201の光軸211が回転軸210と直交していない状態で撮像装置201がスイングされた場合に実施される。一方、例えば前述の図3(a)、図3(e)や図3(f)のように、撮像装置201の光軸211が回転軸210と直交している状態で撮像装置201がスイングされた場合には射影変換は行われない。撮像装置の光軸が回転軸に直交していない状態の場合に幾何変換回路116eで行われる射影変換の詳細な説明は後述する。
次に、S512として、映像信号処理回路116では、移動量算出回路116cにより、N枚目の幾何変換後画像607とN-1枚目の幾何変換後画像603とを用いて、移動ベクトルに相当する移動量を算出する。この移動量は、例えば画像から検出したエッジや抽出した特徴点を用いた既知の算出手法により求めることができる。本実施形態の移動量算出回路116cは、例えば画像内でエッジを検出し、また特徴点を幾つか抽出して、移動量を算出する。
また、移動量算出回路116cは、抽出された特徴点を標本化することでアフィン変換の係数算出を行う。なお、図7では、N-1枚目幾何変換後画像603とN枚目幾何変換後画像607を用いて、移動量算出回路116によりアフィン変換の係数609が算出される。
続いて、マイクロコンピュータ123は、S513として、映像信号処理回路116を制御し、移動量算出回路116cにて特徴点を用いて算出された移動量を基に、位置合わせ回路116dによりN枚目の画像とN-1枚目の画像の位置合わせを行う。本実施形態の場合、位置合わせ回路116dでは、例えばアフィン変換を用いて位置合わせを行う。なお、図7では、位置合わせ回路116dによる位置合わせ画像611が得られる。
ここでは基準となる特徴点の座標(x,y)が座標(u,v)に移動する場合を例に挙げると、この特徴点座標の移動は、以下の式(4)~式(6)で表される。
Figure 0007030442000001
式(4)の3×3行列若しくは係数a~係数fのことをアフィン係数と呼ぶ。
例えば特徴点1が座標(x1,y1)から座標(u1,v1)に、特徴点2が座標(x2,y2)から(u2,v2)に、特徴点3が座標(x3,y3)から(u3,v3)にずれていたとする。この場合、式(4)から連立方程式を作ると式(5)、式(6)のようになる。この方程式を解くことでa~fのアフィン係数を算出することが可能である。
Figure 0007030442000002
なお、4点以上の特徴点が抽出されている場合には、距離が近い特徴点を除外して最小二乗法を用いて正規化してもよい。また、移動量算出回路116cは、3点の特徴点を抽出できない場合や、抽出した3点の特徴点が直線状に並んでいる場合、3点の特徴点のうち2点が近い場合には、特徴点に基づく移動量の算出が失敗したと判断してもよい。
また、前述のようにして特徴点を用いて算出された移動量(アフィン係数)と、ジャイロ情報を基に算出された移動量とが大きく異なる場合には、画像に例えば繰り返しパターンや移動体が含まれていると考えられる。この場合、別の条件下で再度移動量を算出してもよい。また、このときの撮影画像を失敗画像とし、次の画像撮影の処理に戻してもよく、或いはパノラマ撮影自体が失敗したとして図6のフローチャートの処理を終了してもよい。
次に、S514として、映像信号処理回路116の合成回路116jは、前述したS512で特徴点を用いて算出された移動量(アフィン係数)を基に位置合わせがなされたN枚目の画像とN-1枚目の画像とを合成する。すなわち、映像信号処理回路116においてN枚目(N>2)の画像の処理が行われている場合は、それ以前のN-1枚目までにおいて合成された合成画像610とN枚目における位置合わせ後の画像611との合成が行われる。この合成回路116jによる合成画像612が、前述した共通領域を重ね合わせて繋いだ合成画像に相当する。なお、パノラマ撮影される範囲に例えば水面など全体に亘って動きのある被写体が存在する場合には、合成結果の品位が落ちることがあるため、合成される画像の境界部分の合成比率を変えることで品位向上を図ってもよい。
次に、マイクロコンピュータ123は、S515において、パノラマ撮影によりパノラマ画像の生成に使用する全ての画像の撮影が終了したか否か判定する。例えば、マイクロコンピュータ123は、SW2の押下が続いていたならば、次の画像の撮影が行われると判定して、S506に処理を戻して、次の画像の撮影を行わせる。
一方、マイクロコンピュータ123は、S515においてSW2の押下が解除されて画像撮影が終了したと判定した場合、S516として、合成画像612を圧縮・伸長回路116lでJPEG等の汎用フォーマットへ圧縮する処理を行わせる。そして、マイクロコンピュータ123は、S517において、その圧縮された画像データを、メモリコントローラ119を介してメモリ120に保存させる。なお、圧縮する処理の前に、合成画像612の暗部を見易くするためにガンマ補正回路116bでγ補正を行ってもよく、また、画像全体の色調を統一するための色調補正を行ってもよい。また、合成画像のサイズが大きい場合には、予めユーザにより指定されたサイズになるように、変倍回路116fで変倍が行われてもよい。さらに、手ぶれなどを考慮し、最大内接矩形或いは予め決められた領域で、トリミング回路116gによる切り出しを行ってから保存するようになされてもよい。
以下、図6のS511において幾何変換回路116eが行う射影変換について説明する。本実施形態の場合、パノラマ撮影において、前述の図3(c)や図3(d)のように撮像装置201の光軸211が回転軸210に直交していない状態で撮像装置201がスイングされて撮影された画像に対して幾何変換回路116eの射影変換が行われる。
前述した図3(c)や図3(d)のように、撮像装置201の光軸211と回転軸210とが直交していない状態で撮像装置201をスイングさせて撮影が行われた場合、前述したアフィン変換の係数には回転成分が含まれることになる。このため、本実施形態の幾何変換回路116eでは、画像を回転させずに台形歪を補正するように射影変換を行う。
例えば、撮像装置の光軸が回転軸に対して直交している場合、円筒座標変換の際には、図8(a)に示すように、画像中心が円筒変換しても座標が変わらないように画像中心が円筒の真正面になるような円筒変換を行う。
これに対し、撮像装置201の光軸211と回転軸210とが直交していない場合には、図8(b)のように、撮像装置201の光軸211と基準方向(水平方向)との間の角度に応じて、仮想円筒の投影面を上若しくは下にずらして(シフトさせて)投影する。すなわち、光軸211と基準方向との間の角度をψとした場合、式(7)によりシフト量SV[pix]を求め、そのシフト量SV[pix]分だけ中心座標をずらすようにして(シフトさせるように)投影する。なお、式(7)中のfは撮影レンズ101の焦点距離、pは画素ピッチ(1画素あたりの長さ)である。
SV[pix]=tanψf[mm]×1000/p[μm] 式(7)
そして、パノラマ撮影では、前述したように画像の中心部分を切り出して合成していくため、台形状の補正で近似することが可能である。このような補正は、アフィン変換では実現できないため、本実施形態では、式(8)で表される射影変換により実現している。
Figure 0007030442000003
式(8)で表される射影変換では、元の座標(x,y)が座標(x',y')に幾何変換され、式中の係数a~係数hは射影変換係数である。係数a~係数fは、アフィン変換係数と等価であり、係数gと係数hが、台形状の補正に関する係数である。本実施形態のように、撮像装置201が横方向(水平方向)にスイングされる場合、すなわち台形の上底と下底が平行である台形歪を長方形に変換する場合には特に係数hが関わる。
ここで、係数hは撮影レンズ101の焦点距離と、光軸と回転軸との角度から算出される。また、光軸は加速度センサ135の出力から算出可能である。図9(a)と図9(b)は加速度センサ135のx軸,y軸,z軸を表しており、撮像装置201のZ軸(上下方向)とX軸(光軸方向)の加速度センサ135の値の比は、arctanを求めることで撮像装置のピッチ角(ψ)として求めることができる。
一方で、例えば1枚目撮影時と2枚目撮影時の加速度センサ135やジャイロセンサ133の出力から回転軸の角度を求めることは困難であることが多い。つまり、ユーザが撮像装置をスイングさせる際のスイング速度にもよるが、回転角度は通常0~20°程度であり、また撮影開始時はスイング速度が遅く、センサノイズなどを加味すると、正確に回転軸の角度を求めることは困難である。ただし、ユーザは一般に地面に対して垂直に立って撮影することが多いため、その回転軸を回転中心としたスイング方向は水平方向であると仮定できる。
このため、係数hは、例えば下記の式(9)により算出可能である。なお、式中のψは加速度センサ135から求めたピッチ方向の角度であり、fは撮影レンズ101の実効焦点距離である。
h=tan(ψ)/f 式(9)
本実施形態では、上述のように回転軸を回転中心としたスイング方向が水平方向であると仮定して算出している。なお、パノラマ撮影が終わった後に各画像を合成する場合には、撮影毎に順次合成する場合とは異なり、撮影時に得られている複数のセンサ情報を予め解析しておくことが可能であるため、回転軸と光軸の角度から係数hを求めることも可能となる。
さらに、本実施形態では、加速度センサ135の出力などから係数hを算出しているが、式(8)、式(9)でアフィン係数を算出したのと同様に、少なくとも四つの移動ベクトルが算出できれば、係数g、係数hを求めることが可能となる。
なお、ここでは、図9(a)のように撮像装置201を正位置(横位置)に構えた状態で横方向(水平方向)にスイングする例を示したが、画角を広げる目的で撮像装置を縦位置に構えた状態で横方向(水平方向)にスイングする場合も本実施形態に含まれる。一方、撮像装置を重力方向(縦方向)にスイングする場合は、回転軸と光軸が直交する関係になりやすいため、本実施形態が適用される場合は少ないと考えられる。また、撮像装置を重力方向(縦方向)にスイングする場合、スイングによって重力方向が撮影の度に異なるようになり、回転軸と光軸が直交する状態からどの程度ずれるのかの検出が困難であるため、この場合は、係数g、係数hは画像から求めることとなる。
以上説明したように、本実施形態においては、撮像装置の光軸と撮像装置をスイングする際の回転軸とが直交していない姿勢び状態でパノラマ撮影がなされた場合に、台形歪を補正するように射影変換する。これにより、パノラマ画像合成時のずれ等が低減された高品位のパノラマ画像を生成することが可能となる。
<第2の実施形態>
次に、第2の実施形態について説明する。第1の実施形態では、円筒変換の後に台形補正のための射影変換を行ったが、第2の実施形態では円錐台上へ投影する幾何変換を行う場合について説明する。
パノラマ撮影の際の各画像の撮影間隔が短く、例えばN枚目とN+1枚目とで画像に差が少ない場合には、第1の実施形態のように円筒の側面に投影する円筒変換と射影変換による台形歪み補正で近似が可能である。しかしながら、パノラマ撮影時の撮影間隔が長かったり、ユーザによるスイング速度が遅かったりして、N枚目とN+1枚目の画像の差が大きい場合、円錐台の側面に投影する円錐台変換の幾何変換を行うことが望ましい。
したがって、第2の実施形態の場合、図6のフローチャートのS510とS511で行われる円筒座標変換及び台形状の歪を補正する射影変換を、円錐台の側面への投影する円錐台変換により実現する。ここで、円筒座標変換とは異なり、円錐台上への投影変換の場合は仮想円錐台の高さによってその投影半径が異なる。
第2の実施形態の場合、撮像装置の光軸と基準方向(水平方向)との間の角度をψとし、撮影画像の歪曲収差補正後の点を(x,y)とすると、式(3)のrは、以下の式(10)で求めたr'(仮想円錐台の高さに応じた投影半径)となされる。なお、式(10)のfは撮影レンズ101の実効焦点距離である。
r'=f-y・tanψ 式(10)
以上説明したように、第2の実施形態によれば、円錐台上への投影変換を行うことで、第1の実施形態の円筒変換と台形状の歪み補正での近似よりも高精度に補正が可能となる。
<第3の実施形態>
次に、第3の実施形態について説明する。
前述した第1の実施形態では回転軸と光軸が直交しない場合に射影変換を用いて台形歪を補正して合成時のずれ等を低減させている。しかしながら、例えば、被写体として地面に垂直に建っている建物と、地面や道路のようなに水平方向の被写体とが写っている場合、合成時のずれが目立つ場合がある。これは、建物のように地面に対して垂直な被写体の画像と、地面や道路のように水平方向の被写体の画像とでは、歪み補正の補正量が異なるからである。特に、水平方向の被写体は、基準方向の基準面(例えば地面等の水平面)からの高さによっても、その補正量が異なること、また、垂直なものとはその補正量が異なることから、両方を正確に補正することができないためである。
そこで、第3の実施形態では、撮像装置の光軸と回転軸とが直交していない場合において、撮像装置の光軸が基準方向に対して所定の方向に傾いた状態か、或いは所定の方向とは逆の方向に傾いた状態かによって、補正量を異ならせるようにする。本実施形態において、所定の方向に傾いた状態とは、例えば撮像装置の光軸が基準方向に対して下方向に傾いた状態である。第3の実施形態の場合、撮像装置の光軸が基準方向に対して下方向に傾いている場合には、射影変換の係数(前述の式(9)の係数h)を算出しないか、又は、光軸が基準方向に対して上方向に傾いている場合よりも弱めた射影変換の係数を算出する。具体的には、撮像装置の光軸が基準方向に対して下方向に傾いている場合には、前述の式(9)において係数hに0~0.5倍などの重み付け係数を乗ずる。例えば、係数hに0倍の重み付け係数を乗じた場合には、歪み補正が行われないことになる。また、係数hに例えば0.5倍の重み付けの係数を乗じた場合では、光軸が基準方向に対して上方向(所定の方向に対する逆の方向)に傾いている場合(重み付けが例えば1倍)と比較して、弱い歪み補正が行われることになる。また、光軸が基準方向に対して下方向に傾いている場合において、傾きの角度が小さいときには誤差も少ないことから、下方向の傾きの角度が大きくなるほど、重み付けの係数を小さくするように設定してもよい。
式(9)から判るように、撮影レンズ101の焦点距離(f)が短い方が係数hは大きくなり影響が大きくなる。さらに焦点距離が短いほど画角は広くなり、被写体にもよるが、地面に垂直になっている長方形の建物の被写体と、地面や道路など水平方向の被写体とが混在する可能性が高くなる。したがって、第3の実施形態の場合、焦点距離に応じて係数hに乗ずる重み付けを変えるようにすることが望ましい。すなわち、第3の実施形態では、焦点距離が短くなるほど、係数hに乗ずる重み付けを大きくすることが望ましい。
以下、第3の実施形態では、撮像装置の光軸と回転軸とが直交していない場合において、撮像装置の光軸と基準方向との間の角度に応じて、係数hに乗ずる重み付けを変える例を挙げて説明する。
例えば基準方向の基準面(地面)からの高さが0mの位置に撮像装置の光軸中心が来るようにユーザが撮像装置を配置した場合、画角内に入る地面と空や建物など地上部の割合は式(11)により求められる。なお、式中のψは光軸と基準方向との間の角度、αは式(1)で求めた高さ方向の画角である。ただし、計算結果が負数になった場合は各割合を0、計算結果が1を超えた場合は各割合を1とする。
地面が写る割合 ={tan(α/2)+tan(ψ)}/{2・tan(α/2)}
地上部が写る割合={tan(α/2)-tan(ψ)}/{2・tan(α/2)} 式(11)
また、撮像センサ112の有効撮像エリアのサイズが幅22.32mm、高さ14.88mmのいわゆるAPS-Cサイズで、撮影レンズ101の焦点距離が18mmであった場合、高さ14.88mmを式(1)の「有効撮像エリア幅w」として計算すると、式(1)から画角αは約45°となる。したがって例えば、APS-Cサイズの高さを式(1)でいうwとして計算すれば、光軸と基準方向との間の角度が約22.5°で下方向に傾いていた場合は全てが地面、すなわち基準面のみを写していることになる。逆に、上方向に22.5°(ψ=-22.5°)に傾いていた場合には建物や空などの地上部が略々100%写っていることになる。
このため、式(9)にて求めた係数hに、この地上部が写る割合を補正係数として乗じた値を、実際に射影変換するときに用いる。また、このようにした場合、光軸と基準方向との間の角度が下方向の傾きであった場合には、殆ど台形状の歪補正がかからなくなるため、式(11)で求めた地上部が写る割合に0~0.5程度の数値を足した値を係数hに乗ずることも好ましい。この数値は、設計事項として適宜チューニング可能である。
前述の例では、基準面(地面)からの高さが0mのところに撮像装置(光軸)が配されたと仮定しているが、パノラマ撮影では被写体が遠距離であることが多く、この仮定をもとに計算しても支障はない。また、より正確には垂直に建っているものと、水平のものとの比率を求めることが望ましく、その場合は、不図示の視差情報から距離マップを作成することで実施可能である。例えば、高層ビルから町並みを見下ろすようなシーンでは、小さな家やビルなどは高周波成分が多く、実際には合成時のずれが生じても目立たない場合が多い。逆に、水平線よりも上部に突出するような部分はずれが生じると目立ちやすい。これは水平線よりも上に突出している部分は、背景が空など低周波部分の中に被写体があるため、目立ちやすいからである。そのため、式(11)で求めた地面が写る割合に、画像サイズ(高さ)を乗じて、画像内に含まれる水平線を求め、それよりも上部をブロック状に分割してエッジを抽出し、その積分結果を求めることで、空などの低周波以外の被写体が写っている量を求める。その量に応じて係数hに重み付けを行うことも好ましい様態の一つである。
第3の実施形態では、第1の実施形態で説明した円筒変換後に台形状の歪補正を行う際に、光軸と基準方向との間の傾きが上方向か下方向かで補正量を異ならせる例を示した。第3の実施形態においても、前述の第2の実施形態のように円錐台上に投影する例への適用が可能であり、例えば下方向の傾きの場合にはtanψに0~0.8程度の重み付け係数を乗算することで実施可能となる。この場合も前述同様に、地面が写る割合や、水平線より上部に写る被写体の量に応じて重み付けの係数を乗算することも好ましい。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。本実施形態の画像処理装置は、例えば撮像センサ112や撮影レンズ101などを備えず、メモリカード等の外部メモリから、パノラマ撮影された角画像と撮影時のレンズ情報や姿勢情報を取得して、パノラマ合成を行う装置であってもよい。また、本実施形態の画像処理装置は、これらの処理をコンピュータ上で動作させるためのプログラム、それらが記録された記録媒体も含まれる。
<その他の実施形態>
本実施形態の撮像装置は、デジタルカメラだけでなく、デジタルビデオカメラ、カメラ機能を備えたスマートフォンやタブレット端末等の各種携帯端末にも適用可能であり、さらには工業用カメラ、車載カメラ、医療用カメラ等にも適用可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
101:撮影レンズ、112:撮像センサ、116:映像信号処理回路、116c:移動量算出回路、116d:位置合わせ回路、116e:幾何変換回路、116f:変倍回路、116j:合成回路、123:マイクロコンピュータ、133:ジャイロセンサ、135:加速度センサ、201:撮像装置

Claims (11)

  1. 撮影方向を順次変更しながら撮影された複数の画像を取得する取得手段と、
    前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出手段と、
    前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出手段と、
    前記各画像に対する射影変換の係数を算出する係数算出手段と、
    前記撮像された各画像を仮想円筒上に投影する円筒変換手段と、
    前記係数を用いて、前記円筒変換手段によって仮想円筒上に投影する円筒変換がなされた各画像に対して射影変換を行う変換手段と、
    前記移動量を基に、前記射影変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ手段と、
    前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成手段と、を有し、
    前記係数算出手段は、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像に対する前記係数を算出し、
    前記変換手段は、前記姿勢の情報を基に算出された前記係数を用いて、前記円筒変換がなされた各画像に生じている台形状の歪みを補正する射影変換を行うことを特徴とする画像処理装置。
  2. 撮影方向を順次変更しながら撮影された複数の画像を取得する取得手段と、
    前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出手段と、
    前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出手段と、
    前記各画像を仮想の円錐台に投影する幾何変換の係数を算出する係数算出手段と、
    前記係数を用いて、前記各画像を仮想の円錐台上に投影する幾何変換を行う変換手段と、
    前記移動量を基に、前記幾何変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ手段と、
    前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成手段と、を有し、
    前記係数算出手段は、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像を仮想の円錐台に投影する前記係数を算出することを特徴とする画像処理装置。
  3. 前記姿勢検出手段は、前記撮像装置の姿勢の情報を基に、基準方向に対する撮影レンズの光軸の傾きを算出し、
    前記係数算出手段は、前記傾きの情報を基に前記係数を算出することを特徴とする請求項1または2に記載の画像処理装置。
  4. 前記係数算出手段は、前記光軸が前記基準方向に対して所定の方向の傾きである場合には、前記係数を算出しないか、又は、前記光軸が前記基準方向に対して前記所定の方向とは逆の方向の傾きである場合よりも小さい重み付けがなされた前記係数を算出することを特徴とする請求項に記載の画像処理装置。
  5. 前記係数算出手段は、前記光軸が前記基準方向に対して所定の方向の傾きである場合の傾きの角度に応じて、前記重み付けを変更することを特徴とする請求項に記載の画像処理装置。
  6. 前記姿勢検出手段は、前記各画像を撮像した撮像装置が有する撮影レンズの焦点距離に関する情報と、前記各画像を撮影した前記撮像装置の姿勢の情報とを基に、前記傾きを算出することを特徴とする請求項からの何れか1項に記載の画像処理装置。
  7. 前記基準方向は水平方向であることを特徴とする請求項からの何れか1項に記載の画像処理装置。
  8. 前記変換手段は、回転軸を中心として回転するように前記撮影方向が順次変更される撮影がなされた際の前記回転軸に対して、前記撮像装置の撮影レンズの光軸が直交していない場合に、前記変換を行うことを特徴とする請求項1からの何れか1項に記載の画像処理装置。
  9. 撮影方向を順次変更しながら撮影された複数の画像を取得する取得工程と、
    前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出工程と、
    前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出工程と、
    前記各画像に対する射影変換の係数を算出する係数算出工程と、
    前記撮像された各画像を仮想円筒上に投影する円筒変換工程と、
    前記係数を用いて、前記円筒変換工程によって前記仮想円筒上に投影する円筒変換がなされた各画像に対して射影変換を行う変換工程と、
    前記移動量を基に、前記射影変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ工程と、
    前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成工程と、を有し、
    前記係数算出工程では、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像に対する前記係数を算出し、
    前記変換工程では、前記姿勢の情報を基に算出された前記係数を用いて、前記円筒変換がなされた各画像に生じている台形状の歪みを補正する射影変換を行うことを特徴とする画像処理装置の画像処理方法。
  10. 撮影方向を順次変更しながら撮影された複数の画像を取得する取得工程と、
    前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出工程と、
    前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出工程と、
    前記各画像を仮想の円錐台に投影する幾何変換の係数を算出する係数算出工程と、
    前記係数を用いて、前記各画像を仮想の円錐台上に投影する幾何変換を行う変換工程と、
    前記移動量を基に、前記幾何変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ工程と、
    前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成工程と、を有し、
    前記係数算出工程では、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像を仮想の円錐台に投影する前記係数を算出することを特徴とする画像処理装置の画像処理方法。
  11. コンピュータを、請求項1からの何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
JP2017152410A 2017-08-07 2017-08-07 画像処理装置、画像処理方法、及びプログラム Active JP7030442B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017152410A JP7030442B2 (ja) 2017-08-07 2017-08-07 画像処理装置、画像処理方法、及びプログラム
US16/051,154 US10469741B2 (en) 2017-08-07 2018-07-31 Image processing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017152410A JP7030442B2 (ja) 2017-08-07 2017-08-07 画像処理装置、画像処理方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2019033344A JP2019033344A (ja) 2019-02-28
JP2019033344A5 JP2019033344A5 (ja) 2020-07-27
JP7030442B2 true JP7030442B2 (ja) 2022-03-07

Family

ID=65231903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017152410A Active JP7030442B2 (ja) 2017-08-07 2017-08-07 画像処理装置、画像処理方法、及びプログラム

Country Status (2)

Country Link
US (1) US10469741B2 (ja)
JP (1) JP7030442B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11720330B2 (en) 2016-10-17 2023-08-08 Engineer.ai Corp. Application development involving instant protoyping
JP7093015B2 (ja) * 2019-04-24 2022-06-29 日本電信電話株式会社 パノラマ映像合成装置、パノラマ映像合成方法、及びパノラマ映像合成プログラム
DE102019205962A1 (de) * 2019-04-25 2020-10-29 Robert Bosch Gmbh Verfahren zur Generierung von digitalen Bildpaaren als Trainingsdaten für Neuronale Netze
KR102666060B1 (ko) * 2019-05-17 2024-05-16 삼성디스플레이 주식회사 수평 크로스토크를 보상하는 표시 장치
KR102146773B1 (ko) * 2019-09-17 2020-08-21 주식회사 영국전자 고정형 ptz카메라의 영상에서의 기울기 보정방법
US12106074B2 (en) 2020-06-16 2024-10-01 Engineer.ai Corp Systems and methods for creating software
KR20220159829A (ko) * 2021-05-26 2022-12-05 삼성전자주식회사 넓은 색역의 영상을 제공하는 영상 획득 장치 및 이를 포함하는 전자 장치
CN116612067B (zh) * 2023-04-06 2024-02-23 北京四维远见信息技术有限公司 航飞质量检查方法、装置、设备和计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001512252A (ja) 1997-08-01 2001-08-21 サーノフ コーポレイション モザイク画像を構成するためのローカル/グローバルマルチフレームアライメントを実行する方法および装置
JP2007043545A (ja) 2005-08-04 2007-02-15 Casio Comput Co Ltd 撮像装置、画像補正方法及びプログラム
JP2012222669A (ja) 2011-04-11 2012-11-12 Canon Inc 画像処理装置およびその方法
JP2016126595A (ja) 2015-01-06 2016-07-11 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
WO2017056942A1 (ja) 2015-09-30 2017-04-06 富士フイルム株式会社 画像処理装置及び撮像装置及び画像処理方法及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4174122B2 (ja) 1998-03-10 2008-10-29 キヤノン株式会社 画像処理方法、装置および記録媒体
JP4356621B2 (ja) 2004-04-16 2009-11-04 ソニー株式会社 撮像装置及び撮像方法
JP5472994B2 (ja) 2010-03-10 2014-04-16 Necカシオモバイルコミュニケーションズ株式会社 撮像装置及びプログラム
JP2015036841A (ja) * 2013-08-12 2015-02-23 キヤノン株式会社 画像処理装置、距離計測装置、撮像装置、画像処理方法
US9240077B1 (en) * 2014-03-19 2016-01-19 A9.Com, Inc. Real-time visual effects for a live camera view
US9569874B2 (en) * 2015-06-05 2017-02-14 International Business Machines Corporation System and method for perspective preserving stitching and summarizing views
JP6702323B2 (ja) * 2015-07-22 2020-06-03 ソニー株式会社 カメラモジュール、固体撮像素子、電子機器、および撮像方法
US9912868B2 (en) * 2015-09-15 2018-03-06 Canon Kabushiki Kaisha Image-blur correction apparatus, tilt correction apparatus, method of controlling image-blur correction apparatus, and method of controlling tilt correction apparatus
EP3404648A4 (en) * 2016-01-13 2019-01-23 Ricoh Company, Ltd. PROJECTION SYSTEM, IMAGE PROCESSING DEVICE, PROJECTION METHOD AND PROGRAM
JP6564136B2 (ja) * 2016-05-31 2019-08-21 株式会社Pfu 画像処理装置、画像処理方法、および、プログラム
JP6906947B2 (ja) * 2016-12-22 2021-07-21 キヤノン株式会社 画像処理装置、撮像装置、画像処理方法およびコンピュータのプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001512252A (ja) 1997-08-01 2001-08-21 サーノフ コーポレイション モザイク画像を構成するためのローカル/グローバルマルチフレームアライメントを実行する方法および装置
JP2007043545A (ja) 2005-08-04 2007-02-15 Casio Comput Co Ltd 撮像装置、画像補正方法及びプログラム
JP2012222669A (ja) 2011-04-11 2012-11-12 Canon Inc 画像処理装置およびその方法
JP2016126595A (ja) 2015-01-06 2016-07-11 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
WO2017056942A1 (ja) 2015-09-30 2017-04-06 富士フイルム株式会社 画像処理装置及び撮像装置及び画像処理方法及びプログラム

Also Published As

Publication number Publication date
US10469741B2 (en) 2019-11-05
JP2019033344A (ja) 2019-02-28
US20190045114A1 (en) 2019-02-07

Similar Documents

Publication Publication Date Title
JP7030442B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6468307B2 (ja) 撮像装置、画像処理装置および方法
JP6659130B2 (ja) 画像処理装置、撮像装置、画像処理方法およびプログラム
JP4957759B2 (ja) 撮像装置及び撮像方法
JP4356621B2 (ja) 撮像装置及び撮像方法
JP7174120B2 (ja) 撮像装置、プログラム、記録媒体、及び制御方法
JP6518409B2 (ja) 撮影装置及び撮影方法
JP6833801B2 (ja) 撮像装置、撮像方法、プログラムおよび記録媒体
JP2016005160A (ja) 撮像装置およびその制御方法
JP5248951B2 (ja) カメラ装置、画像撮影支援装置、画像撮影支援方法、及び画像撮影支援プログラム
JP5495598B2 (ja) 撮像装置及びその制御方法
JP5693664B2 (ja) 撮像装置、撮像装置の制御方法及びプログラム
CN110891140B (zh) 摄像装置、图像处理装置及其控制方法和存储介质
JP7102301B2 (ja) 撮像装置及びその制御方法、並びにプログラム
JP7051586B2 (ja) 撮像装置、撮像方法およびプログラム
JP7106399B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP4471364B2 (ja) 画像処理装置及び画像処理方法
JP7100535B2 (ja) 撮像装置及び画像処理装置、それらの制御方法、プログラム、記憶媒体
JP2019009574A (ja) 画像処理装置
JP2009141703A (ja) 撮像装置及びその制御方法及びプログラム
JPH11133292A (ja) 撮像システムおよびその制御方法およびその処理を実行させるプログラムを記憶した記憶媒体
JP2017073698A (ja) 撮像装置及びその制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200615

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210713

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210824

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220222

R151 Written notification of patent or utility model registration

Ref document number: 7030442

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151