(57)【要約】【課題】  画像に対して良好にゆらぎ補正する。【解決手段】  動画を構成する複数のフレームに対して、大気の影響に起因するゆらぎを補正する画像処理装置であって、先に撮影された第１の動画に含まれる複数のフレームが移動物体を含まないと判定された場合に、前記第１の動画を構成する少なくとも２つのフレーム間で算出された動きベクトルを複数の領域毎の基準ゆらぎ量として設定する設定手段と、前記基準ゆらぎ量に基づいて、前記第１の動画の後に撮影された第２の動画に含まれる複数のフレームを用いて、基準画像を生成する生成手段と、前記第２の動画を構成する処理対象のフレームと前記基準画像とに基づいて、前記制約範囲の大きさである動きベクトルを算出する算出手段と、前記動きベクトルに基づいて、前記処理対象のフレームのゆらぎを補正する補正手段と、を有することを特徴とする。【選択図】  図４
2019047218.tif 000002
【特許請求の範囲】
【請求項１】
動画を構成する複数のフレームに対して、大気の影響に起因するゆらぎを補正する画像処理装置であって、
先に撮影された第１の動画に含まれる複数のフレームそれぞれにおいて、移動物体を含むか否かを判定する判定手段と、
前記判定手段により移動物体を含まないと判定された場合に、前記第１の動画を構成する少なくとも２つのフレーム間で算出された動きベクトルを複数の領域ごとの基準ゆらぎ量として設定する設定手段と、
前記基準ゆらぎ量に基づいて動きベクトルの大きさの上限と下限とからなる制約範囲を決定する決定手段と、
前記第１の動画の後に撮影された第２の動画に含まれる複数のフレームを用いて、基準画像を生成する生成手段と、
前記第２の動画を構成する処理対象のフレームと前記基準画像と前記制約範囲に基づいて、ゆらぎの動きベクトルを算出する算出手段と、
前記ゆらぎの動きベクトルに基づいて、前記処理対象のフレームのゆらぎを補正する補正手段と、を有することを特徴とする画像処理装置。
【請求項２】
前記設定手段は、前記第１の動画に対応するシーンにおける被写体までの距離を示す深度情報を取得し、前記深度情報に基づいて前記基準ゆらぎ量を設定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記第１の動画に含まれる１フレームにおける画素ごとの動きベクトルの大きさに基づいて、前記制約範囲を決定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記算出手段は、前記前記第２の動画を構成する処理対象のフレームと前記基準画像との間で算出される動きベクトルのうち、前記制約範囲内の大きさの動きベクトルを前記ゆらぎの動きベクトルとして算出することを特徴とする請求項１乃至３の何れか一項に記載の画像処理装置。
【請求項５】
コンピュータを請求項１乃至４のいずれか一項に記載の画像処理装置の各手段として機能させるプログラム。
【請求項６】
動画を構成する複数のフレームに対して、大気の影響に起因するゆらぎを補正する画像処理方法であって、
先に撮影された第１の動画に含まれる複数のフレームそれぞれにおいて、移動物体を含むか否かを判定し、
移動物体を含まないと判定された場合に、前記第１の動画を構成する少なくとも２つのフレーム間で算出された動きベクトルを複数の領域ごとの基準ゆらぎ量として設定し、
前記基準ゆらぎ量に基づいて動きベクトルの大きさの上限と下限とからなる制約範囲を決定し、
前記第１の動画の後に撮影された第２の動画に含まれる複数のフレームを用いて、基準画像を生成し、
前記第２の動画を構成する処理対象のフレームと前記基準画像と前記制約範囲に基づいて、ゆらぎの動きベクトルを算出し、
前記ゆらぎの動きベクトルに基づいて、前記処理対象のフレームのゆらぎを補正することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像における大気ゆらぎの影響を除去する画像処理方法に関する。
【背景技術】
【０００２】
監視カメラシステムなどにおいて大気ゆらぎに起因する画像の劣化を補正する技術（以降ではゆらぎ補正と呼ぶ）が用いられている。ここで大気ゆらぎとは、大気の乱流や温度差により光の屈折率が空間的および時間的に変化する自然現象を指す。また、大気ゆらぎは陽炎とも呼ばれる。大気ゆらぎは光の屈折の時間的変動を引き起こし、その結果として特に望遠レンズで遠方を撮影した場合に、被写体が時間的に変化する歪み（以降ではゆらぎと呼ぶ）を有するようになる。
【０００３】
そこで特許文献１では、陽炎などの自然界の大気要因によって生じる事象による画像画質の劣化を改善する方法を開示している。特許文献１に開示された方法によれば、時間領域での指数移動平均によって得られた参照画像とボケを与えられた入力画像とから局所的なゆらぎを計算して陽炎による動きベクトルを検出し、検出した動きベクトルを用いてゆらぎを除去している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１０４０１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載された方法では、推定した参照画像と入力画像とから動きベクトルを算出する。そのため、例えば入力画像にノイズが多く含まれる場合など、動きベクトルからゆらぎ以外の要因（ノイズ、移動物体）を排除することが難しく、良好にゆらぎ補正をすることができない場合がある。
【０００６】
そこで本発明は、画像に対して良好にゆらぎ補正することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため本発明は、動画を構成する複数のフレームに対して、大気の影響に起因するゆらぎを補正する画像処理装置であって、先に撮影された第１の動画に含まれる複数のフレームそれぞれにおいて、移動物体を含むか否かを判定する判定手段と、前記判定手段により移動物体を含まないと判定された場合に、前記第１の動画を構成する少なくとも２つのフレーム間で算出された動きベクトルを複数の領域ごとの基準ゆらぎ量として設定する設定手段と、前記基準ゆらぎ量に基づいて動きベクトルの大きさの上限と下限とからなる制約範囲を決定する決定手段と、前記第１の動画の後に撮影された第２の動画に含まれる複数のフレームを用いて、基準画像を生成する生成手段と、前記第２の動画を構成する処理対象のフレームと前記基準画像と前記制約範囲に基づいて、ゆらぎの動きベクトルを算出する算出手段と、前記ゆらぎの動きベクトルに基づいて、前記処理対象のフレームのゆらぎを補正する補正手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、画像に対して良好にゆらぎ補正することができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理装置の構成を示す概略図。
【図２】画像処理装置の構成を示すブロック図。
【図３】基準ゆらぎ量取得部の構成を示すブロック図。
【図４】画像処理装置における処理の流れを示すフローチャート。
【図５】基準ゆらぎ量取得部の処理の流れを示すフローチャート。
【図６】画像処理装置の構成を示すブロック図。
【図７】情報画像処理装置における処理の流れを示すフローチャート。
【図８】画像処理装置の構成を示すブロック図。
【図９】画像処理装置における処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１０】
以下、添付の図面を参照して、本発明を好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例にすぎず、本発明は図示された構成に必ずしも限定されるものではない。
【００１１】
＜第１実施形態＞
第１実施形態では、事前に撮影された動画を用いて基準ゆらぎ量を生成しておき、動画における各フレームのゆらぎ補正をする方法について説明する。図１は、第１実施形態に適用可能な画像処理装置のハード構成を示す図である。画像処理装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、二次記憶装置１０４、入力インターフェース１０５、出力インターフェース１０６を含む。画像処理装置１００の各構成要素は、システムバス１０７によって相互に接続されている。また、画像処理装置１００は、入力インターフェース１０５を介して外部記憶装置１０８および操作部１１０に接続されている。また、画像処理装置１００は、出力インターフェース１０６を介して外部記憶装置１０８および表示装置１０９に接続されている。
【００１２】
ＣＰＵ１０１は、ＲＡＭ１０２をワークメモリとして、ＲＯＭ１０３に格納されたプログラムを実行し、システムバス１０７を介して画像処理装置１００の各構成要素を統括的に制御する。これにより、後述する様々な処理が実行される。二次記憶装置１０４は、処理装置１００で取り扱われる種々のデータを記憶する記憶装置であり、本実施形態ではＨＤＤが用いられる。ＣＰＵ１０１は、システムバス１０７を介して二次記憶装置１０４へのデータの書き込みおよび二次記憶装置１０４に記憶されたデータの読出しを行う。なお、二次記憶装置１０４にはＨＤＤの他に、光ディスクドライブやフラッシュメモリなど、様々な記憶デバイスを用いることが可能である。
【００１３】
入力インターフェース１０５は、例えばＵＳＢやＩＥＥＥ１３９４等のシリアルバスインターフェースである。画像処理装置１００は、入力インターフェース１０５を介して、外部装置からデータや命令等を入力する。本実施形態では、画像処理装置１００は、入力インターフェース１０５を介して、外部記憶装置１０８（例えば、ハードディスク、メモリカード、ＣＦカード、ＳＤカード、ＵＳＢメモリなどの記憶媒体）からデータを取得する。また本実施形態では、画像処理装置１００は、操作部１１０に入力されたユーザの指示を、入力インターフェース１０５を介して取得する。操作部１１０は、マウスやキーボードなどの入力装置であり、ユーザの指示を入力する。
【００１４】
出力インターフェース１０６は、入力インターフェース１０５と同様にＵＳＢやＩＥＥＥ１３９４等のシリアルバスインターフェースである。なお、出力インターフェース１０６は、例えばＤＶＩやＨＤＭＩ（登録商標）等の映像出力端子であってもよい。画像処理装置１００は、出力インターフェース１０６を介して、外部装置にデータ等を出力する。本実施形態では、画像処理装置１００は、出力インターフェース１０６を介して表示装置１０９（液晶ディスプレイなどの各種画像表示デバイス）に、ＣＰＵ１０１によって処理されたデータ（例えば、画像データ）を出力する。
【００１５】
図２は、画像処理装置の機能ブロック図である。画像処理装置１００は、図２に示すように、基準ゆらぎ量取得部２０１、範囲決定部２０２、データ取得部２０３、基準画像生成部２０４、ゆらぎ算出部２０５、ゆらぎ補正部２０６としての機能を有する。また図３は、基準ゆらぎ量取得部２０１の詳細な機能ブロック図である。本実施形態における画像処理装置１００は、ある固定カメラから撮影した動画に対してゆらぎ補正を実行する。まず基準ゆらぎ量取得部２０１は、事前に撮影した動画から、基準ゆらぎ量を取得する。
【００１６】
範囲決定部２０２は、処理対象フレームを複数の領域に分割した領域ごとに、ゆらぎがとり得る動きベクトルの大きさを制約範囲として設定する。データ取得部２０３は、ゆらぎ補正をする画像データを取得する。本実施形態では画像データは動画とする。従って、連続的に撮影された複数フレームが画像データとして取得されることになる。なおデータ取得部２０３は、基準ゆらぎ量取得部２０１が取得する基準ゆらぎを算出した動画と同じ条件で撮影された動画を取得する。基準画像生成部２０４は、処理対象の動画を用いて、背景画像である基準画像を生成する。ゆらぎ算出部２０５は、処理対象動画において、発生しているゆらぎを算出する。この時、大気のゆらぎ以外の要因による動きベクトルを除くため、設定された制約範囲内の動きベクトルを検出する。ゆらぎ補正部２０６は、算出したゆらぎの動きベクトルに基づいて、処理対象の動画のうちフレームごとにワーピング処理を実行する。
【００１７】
基準ゆらぎ量取得部２０１は、図３に示すように、データ取得部３０１、基準画像生成部３０２、ゆらぎ算出部３０３、移動物体判定部３０４、基準ゆらぎ量生成部３０５としての機能を有する。基準ゆらぎ量取得部２０１は、ゆらぎ補正をする動画像の撮影前に、事前に撮影した動画を用いてゆらぎとして想定される動きの大きさを特定しておく。上記各部の機能は、ＣＰＵ１０１がＲＯＭ１０３内に格納された制御プログラムを読み込み実行することで実現される。なお、各部に相当する専用の処理回路を備えるように画像処理装置１００を構成するようにしてもよい。
【００１８】
以下、画像処理装置１００が実行するゆらぎ補正について説明する。図４は、画像処理装置が実行する処理の流れを示すフローチャートである。以降、フローチャートにおける各ステップを「Ｓ」を用いて表すこととする。
【００１９】
Ｓ４０１において基準ゆらぎ量取得部２０１は、処理対象画像の各領域における基準ゆらぎ量を取得する。領域とは、想定されるゆらぎの大きさに応じて画像を分割して得られる部分領域である。処理対象フレームにおいて、全ての画素がいずれかの領域に含まれている必要がある。また、領域の大きさは１画素でもよく、その場合には各画素で独立に異なる基準ゆらぎ量が設定される。基準ゆらぎ量とは、各領域において想定されるゆらぎの大きさである。基準ゆらぎ量の取得の詳細については、後述する。
【００２０】
Ｓ４０２において制約範囲決定部２０２は、基準ゆらぎ量に基づいて処理対象画像におけるゆらぎ算出に用いる動きベクトルの制約範囲を決定する。この制約範囲は、基準ゆらぎ量と同様に処理対象画像の各領域に対して与えられる。この詳細は、Ｓ４０５において説明する。
【００２１】
Ｓ４０３においてデータ取得部２０３は、入力インターフェース１０５を介して外部装置から、または二次記憶装置１０４から、処理対象画像の画像データを取得する。ここで入力される画像データは、動画ではなく、時間間隔をおいて撮影された同一シーンの複数の画像であってもよい。この動画は、固定されたカメラによって撮影されている。そして、データ取得部２０３は、取得した画像データを基準画像生成部２０４に出力する。
【００２２】
Ｓ４０４において基準画像生成部２０４は、処理対象の画像データに基づいて基準画像を生成する。基準画像とは、処理対象のフレームのゆらぎを算出するために用いる、ゆらぎが除去された画像である。ここでは基準画像生成部２０４は、複数フレームにおける対応する画素の画素値を平均することにより基準画像を生成する。なお基準画像生成部２０４は、動画に移動物体が含まれていることを想定して、背景差分法により移動物体を除く背景を抽出した上で、複数フレームにおける同じ画素位置の画素値を平均する。しかし、基準画像の生成方法はこれらに限られることはない。また、任意の１フレームをそのまま基準画像としてもよい。
【００２３】
Ｓ４０５においてゆらぎ算出部２０５は、基準画像を用いて動画のうち処理対象とするフレームの各画素におけるゆらぎを算出する。処理対象とするフレームと次のフレームそれぞれにおいて、被写体上の同一の点がどの位置に写っているかの相対位置を表すベクトルを、動きベクトルと呼ぶ。動きベクトルを算出する方法としては、公知のオプティカルフローを生成するための公知の算出手法を用いることができる。この動きベクトルには、移動物体である被写体自身の動きによる成分と、被写体自身の動きによらず大気の影響を受けたことによる成分とがある。なお本実施形態では、固定されたカメラによって撮影した動画を処理対象としているため、カメラ自体の動きによるものは考えない。本実施形態では、算出した動きベクトルに対して、基準ゆらぎ量に応じた制約範囲を設定することで、大気ゆらぎを特定する。制約範囲とは、各画素においてゆらぎの動きベクトルの取りうる大きさの上限と下限である。ゆらぎ算出部２０５は、このように想定されるゆらぎの大きさを用いて制約範囲を設定し、算出された動きベクトルのうち制約範囲内の大きさの動きベクトルのみをゆらぎの動きベクトルとする。これにより大気ゆらぎ以外の要因の動きベクトルを除く。また、上限を設けずに動きベクトルを算出し、閾値を超えた画素が一定以上の隣接したかたまりを形成する場合には、その領域を移動物体として識別する。移動物体を識別する方法はこれに限られることはなく、動きベクトルに基づき移動物体を識別する公知の方法を用いることができる。
【００２４】
Ｓ４０６においてゆらぎ補正部２０６は、算出したゆらぎの動きベクトルに基づいて、処理対象のフレームに対してワーピング処理をすることで処理対象のフレームのゆらぎを補正する。ワーピング処理は、処理対象フレームにおける各画素を動きベクトルに従い移動し、等間隔の画素の格子点上の値を補間により算出する。Ｓ４０５において移動物体と識別された領域は、ゆらぎ補正を行わない、または他の領域と異なる方法の補正を行うといった処理の切り替えを行う。異なる方法の補正として、例えば特許文献２に示されているように、移動物体全体の動きベクトルを算出し、動き補償を行った画像を用いて時間平均化処理を行う方法が挙げられる。
【００２５】
次に、基準ゆらぎ量を取得する処理について説明する。図５は、基準ゆらぎ量取得部２０１が実行する処理の流れを示すフローチャートである。Ｓ５０１においてデータ取得部３０１は、ゆらぎ補正をする動画の撮影よりも前に撮影された動画の画像データを取得する。また、この動画は移動物体を含まないフレームを有することが必要である。Ｓ５０２において基準画像生成部３０２は、データ取得部３０１が取得した画像データ（複数フレーム）に対して背景差分法により移動物体を除く背景を抽出した上で、各フレームの同じ画素位置の画素値を平均することで基準画像を生成する。
【００２６】
Ｓ５０３においてゆらぎ算出部３０３は、基準画像を用いて、画像データ（複数フレーム）から選択されたフレームの各画素における動きベクトルを算出する。動きベクトルの算出には、ブロックマッチング法や勾配法が一般的に用いられる。ブロックマッチング法は、選択したフレームの注目画素を含むブロックと類似したブロックを基準画像において探索し、基準画像において、選択したフレームの注目画素に対応する画素を特定する。この対応する画素間の移動量を動きベクトルとして算出する。一方勾配法は、フレーム内の隣接画素間輝度勾配とフレーム間の同一画素の輝度差と動きベクトルとが満たすべき関係式を、近傍複数画素に対する連立方程式として立てて解くことで、動きベクトルを算出する。
【００２７】
Ｓ５０４において移動物体判定部３０４は、動きベクトルに基づいて選択したフレームにおける移動物体を検出する。ここでは、動きベクトルの大きさが既定の閾値を超える画素が一定数以上あれば、そのフレームは移動物体を含むと判定する。閾値としては、基準ゆらぎ量以上の値を設定することが望ましく、静止物体と同様のゆらぎ補正がされるべきではない物体の移動速度の最小値である。動きベクトルの大きさが閾値を超える画素は、ゆらぎの有無によらず移動している物体上の一点であるとみなすことができる。
【００２８】
Ｓ５０５において、選択したフレームに対しＳ５０４において移動物体がないと判定された場合に、基準ゆらぎ量生成部３０５は各動きベクトルの大きさを基準ゆらぎ量としてＲＡＭ１０２または二次記憶装置１０４に保存する。選択したフレームに対しＳ５０４において移動物体があると判定された場合には、Ｓ５０１に戻り別の画像データを取得してＳ５０４までの処理を行うことを、移動物体がないと判定されるまで繰り返す。こうして生成された基準ゆらぎ量は、大気ゆらぎだけに起因する各フレームの画素ごとの変形量を表す。また、ステップＳ５０３において複数のフレームが選択された場合には、その中から移動物体がないと判定されたフレームの各々に対し基準ゆらぎ量のマップを生成し、これらを合成した上で保存する。合成の方法としては、画素ごとに平均値、中央値、最大値などの統計値を返す方法が挙げられる。また、基準ゆらぎ量の代わりにステップＳ４０２で決定される制約範囲を保存してもよい。
【００２９】
以上が、第１実施形態の画像処理装置１００で行われる処理である。以上で説明したように、移動物体を含まない状態で事前に撮影された動画を用いて基準ゆらぎ量を生成することで、良好なゆらぎ補正を実現することができる。
【００３０】
＜第２実施形態＞
第２実施形態では、処理対象の動画を用いて基準ゆらぎ量を生成することで、良好なゆらぎ補正を実現する例を述べる。なお、以下では第１実施形態と異なる点を中心に説明することとする。以下、第２の実施形態の画像処理装置１００で行われる処理について、図６に示す機能ブロック図および図７に示すフローチャートを用いて説明する。画像処理装置１００は、図６に示すように、データ取得部６０１、基準画像生成部６０２、ゆらぎ算出部６０３、処理選択部６０４、移動物体判定部６０５、基準ゆらぎ量生成部６０５、制約範囲決定部６０６、ゆらぎ補正部６０７としての機能を有する。以下、各部により行われる処理の流れを説明する。
【００３１】
図７は、第２実施形態における処理の流れを示すフローチャートである。Ｓ７０１においてデータ取得部６０１は、入力インターフェース１０５を介して外部の撮像装置から、処理対象のフレームの画像データを実時間で取得する。Ｓ７０２において、基準画像生成部６０２は、すでに取得済である過去の複数フレームを用いて基準画像を生成する。基準画像が既に生成されている場合には、必ずしも新たに生成する必要はない。
【００３２】
Ｓ７０３においてゆらぎ算出部６０３は、基準画像を用いて、現在のフレームの各画素における動きベクトルを算出する。Ｓ７０４において処理選択部６０４は、基準ゆらぎ量の更新、またはゆらぎ補正のいずれを行うかを選択する。ステップＳ７０５〜７０７は、基準ゆらぎ量および制約範囲を最新の状態に更新するために、定期的に実行される。
【００３３】
Ｓ７０５において移動物体判定部６０５は、動きベクトルに基づいて処理対象のフレームにおける移動物体を検出する。Ｓ７０６において、ステップＳ７０４において移動物体がないと判定された場合、基準ゆらぎ量生成部６０６が、動きベクトルの大きさを基準ゆらぎ量としてＲＡＭ１０２または二次記憶装置１０４に保存する。もしくは、新たに生成された基準ゆらぎ量と過去に生成された基準ゆらぎ量とを合成してもよい。
【００３４】
Ｓ７０７において制約範囲決定部６０７は、基準ゆらぎ量に基づき制約範囲を更新する。Ｓ７０８においてゆらぎ補正部６０８は、動きベクトルに基づいて現在のフレームの画像に幾何変換を行うことで処理対象のフレームのゆらぎを補正する。Ｓ７０６において移動物体があると判別された場合には、移動物体と識別された領域は、ゆらぎ補正を行わない、または他の領域と異なる方法の補正を行うといった処理の切り替えを行う。
【００３５】
以上の処理により、特に実時間でゆらぎ補正の処理を行う場合に、基準ゆらぎ量や制約範囲を次々と更新して最新のゆらぎ情報を用いることでより高精度にゆらぎを補正することができる。
【００３６】
＜第３実施形態＞
第３実施形態では、動画を撮影したシーンの深度情報を用いて基準ゆらぎ量を生成することで、良好なゆらぎ補正を実現する例を述べる。なお、以下では第１実施形態と異なる点を中心に説明する。以下、第３実施形態の画像処理装置１００が実行する処理について、図８に示す機能ブロック図および図９に示すフローチャートを用いて説明する。
【００３７】
図８は、第３実施形態の画像処理装置１００の機能ブロック図である。画像処理装置１００は、図８に示すように、深度取得部８０１、基準ゆらぎ量生成部８０２、制約範囲決定部８０３、データ取得部８０４、基準画像生成部８０５、ゆらぎ算出部８０６、ゆらぎ補正部８０７としての機能を有する。以下、各部により行われる処理の流れを説明する。図９は、第３実施形態における処理の流れを示すフローチャートである。
【００３８】
Ｓ９０１において深度取得部２０１は、処理対象フレームの各画素に対する深度を示す深度情報を取得する。深度はカメラと被写体との距離であり、ステレオカメラやＴＯＦセンサなど様々な手段を用いて取得することができる。処理対象フレームを取得する主カメラを含む２台以上のカメラから深度情報を取得する場合には、処理対象フレームの各画素に対する深度は直接推定することができる。しかし、ＴＯＦセンサなど主カメラとは別のデバイスを用いる場合、得られる深度マップに対して幾何変換を行い、処理対象フレームと同一視点の画像に変換する必要がある。具体的には、専用チャートを撮影するなどして主カメラと深度取得デバイスの相対位置のキャリブレーションを行い、この結果に基づき深度マップに射影変換を行う。この他にも、主カメラで取得した画像だけから深度を推定する方法がある。例えば、霧や霞によって遠方の視認性が低下している場合には、公知の観測モデルに従い、１枚の画像から透過率マップを生成する。この透過率マップは深度の関数であり、予め係数を較正しておけば深度マップに変換可能である。
【００３９】
Ｓ９０２において基準ゆらぎ量生成部２０１は、ステップＳ９０１で得られた深度マップに基づいて基準ゆらぎ量を生成する。ここで、深度とゆらぎの大きさの間の関係について述べる。ゆらぎの強さはＦｒｉｅｄのパラメータによって表されることが一般的に知られており、Ｆｒｉｅｄのパラメータｒ０は地上での遠方の観測を前提とすると式（１）で与えられる。
【００４０】
【数１】
2019047218.tif 000003
【００４１】
ここで、Ｃｎは定数、ｋは２π／波長、Ｌは深度を表す。この関係に基づき、想定されるゆらぎによる動きベクトルの大きさを深度の関数として定義し、あるいはゆらぎと深度の関係をルックアップテーブルとして記憶しておくことで、深度マップを各領域の基準ゆらぎ量に変換することが可能になる。
【００４２】
Ｓ９０３において制約範囲決定部２０２は、基準ゆらぎ量に基づいてゆらぎ補正またはゆらぎ算出に用いる制約範囲を決定する。ステップＳ９０４においてデータ取得部２０３は、入力インターフェース１０５を介して外部装置から、または二次記憶装置１０４から、処理対象の動画を取得する。
【００４３】
Ｓ９０５において基準画像生成部２０４は、処理対象の動画（複数フレーム）の画像データから基準画像を生成する。Ｓ９０６においてゆらぎ算出部２０５は、基準画像を用いて処理対象の画像の各画素におけるゆらぎを算出する。Ｓ９０７においてゆらぎ補正部２０６は、動きベクトルに基づいて画像に幾何変換を行うことで処理対象のフレームのゆらぎを補正する。
【００４４】
以上が、第２実施形態の画像処理装置１００が実行する処理である。以上で説明したように、本実施形態によれば、深度情報を利用することで、良好なゆらぎ補正を実現することができる。
【００４５】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４６】
２０１  基準ゆらぎ量取得部
２０２  制約範囲決定部
２０３  データ取得部
２０４  基準画像生成部
２０５  ゆらぎ算出部
２０６  ゆらぎ補正部
【図１】
2019047218.tif 000004
【図２】
2019047218.tif 000005
【図３】
2019047218.tif 000006
【図４】
2019047218.tif 000007
【図５】
2019047218.tif 000008
【図６】
2019047218.tif 000009
【図７】
2019047218.tif 000010
【図８】
2019047218.tif 000011
【図９】
2019047218.tif 000012