(57)【要約】【課題】複数の画像に対し、同じ画像処理を実行するのに要する計算時間を短縮することができる画像処理プログラムを提供する。【解決手段】本発明の画像処理プログラムは、第１画像処理ステップと、第２画像処理ステップとをコンピュータに実行させる。第１画像処理ステップは、第１画像および第２画像のうちの第１画像から、画像処理のパラメータを算出しつつ、そのパラメータを用いて、第１画像に対しその画像処理を実行するステップである。第２画像処理ステップは、上記パラメータを用いて、第２画像に対し上記画像処理を実行するステップである。【選択図】図６
2013142997.tif 000002
【特許請求の範囲】
【請求項１】
第１画像および第２画像のうちの前記第１画像から、画像処理のパラメータを算出しつつ、前記パラメータを用いて、前記第１画像に対し前記画像処理を実行するステップと、
前記パラメータを用いて、前記第２画像に対し前記画像処理を実行するステップと
をコンピュータに実行させる、
画像処理プログラム。
【請求項２】
前記第１画像および前記第２画像は、同じタイムライン上の画像である、
請求項１に記載の画像処理プログラム。
【請求項３】
前記第１画像および前記第２画像は、異なるタイムライン上の画像である、
請求項１に記載の画像処理プログラム。
【請求項４】
前記パラメータは、ボケ具合を含み、
前記画像処理は、エッジを強調する処理を含む、
請求項１から３のいずれかに記載の画像処理プログラム。
【請求項５】
前記パラメータは、ノイズ情報、歪曲収差情報および周辺光量情報の少なくとも１つを含み、
前記画像処理は、ノイズを除去する処理、ノイズを付加する処理、歪曲収差を補正する処理および周辺光量を補正する処理の少なくとも１つを含む、
請求項１から４のいずれかに記載の画像処理プログラム。
【請求項６】
前記第１画像および前記第２画像に対し、前記画像処理を実行する指示を受け付けるステップ
をさらにコンピュータに実行させ、
前記第１画像に対し前記画像処理を実行するステップは、前記指示に応じて、前記パラメータを算出しつつ、前記第１画像に対し前記画像処理を実行するステップであり、
前記第２画像に対し前記画像処理を実行するステップは、前記パラメータが算出されたことに応じて、前記第２画像に対し前記画像処理を実行するステップである、
請求項１から５のいずれかに記載の画像処理プログラム。
【請求項７】
第１画像および第２画像のうちの前記第１画像から、画像処理のパラメータを算出しつつ、前記パラメータを用いて、前記第１画像に対し前記画像処理を実行する第１画像処理部と、
前記パラメータを用いて、前記第２画像に対し前記画像処理を実行する第２画像処理部と
を備える、
画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理プログラムおよび画像処理装置に関する。
【背景技術】
【０００２】
従来より、複数の画像に対し、同じ画像処理を実行することが望まれる場合がある。例えば、特許文献１では、動画に含まれる画像の振れを補正するべく、各時刻の画像から各時刻での画像処理のパラメータを算出し、各時刻での画像処理のパラメータを用いて、各時刻の画像を補正する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１０７９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１では、同じ画像処理の実行の対象である複数の画像について、別々に画像処理のパラメータが算出される。なお、本明細書において、同じ画像処理とは、同じアルゴリズムで実現される画像処理を意味し、異なるパラメータが用いられる場合を含むものとする。そうすると、複数の画像に対する画像処理の計算時間が膨大になる虞がある。この問題は、画像処理のパラメータの算出が高負荷な処理である場合に、特に顕著になる。
本発明は、複数の画像に対し、同じ画像処理を実行するのに要する計算時間を短縮することができる画像処理プログラムおよび画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
第１観点に係る画像処理プログラムは、第１画像処理ステップと、第２画像処理ステップとをコンピュータに実行させる。第１画像処理ステップは、第１画像および第２画像のうちの第１画像から、画像処理のパラメータを算出しつつ、そのパラメータを用いて、第１画像に対しその画像処理を実行するステップである。第２画像処理ステップは、上記パラメータを用いて、第２画像に対し上記画像処理を実行するステップである。
【０００６】
ここでは、第１画像および第２画像に対し、同じ画像処理が実行される。そして、第１画像および第２画像のうちの第１画像のみから、両画像に対する画像処理に用いられるパラメータが算出される。言い換えると、第１画像から第１画像に対する画像処理用に算出されたパラメータが、第２画像に対する画像処理に流用される。なお、パラメータを流用する態様としては、第１画像から算出されたパラメータをそのまま第２画像に対する画像処理に用いる態様や、第１画像から算出されたパラメータを微調整して第２画像に対する画像処理に用いる態様等が考えられる。つまり、第２画像に対する画像処理用にパラメータを算出する処理が省略又は簡略化される。従って、複数の画像に対し、同じ画像処理を実行するのに要する計算時間が短縮される。
【０００７】
第２観点に係る画像処理プログラムは、第１観点に係る画像処理プログラムであって、第１画像および第２画像は、同じタイムライン上の画像である。
多くの場合、同じタイムラインに属する少なくとも一部の複数の画像に対しては、同じパラメータを用いて同じ画像処理を実行することが適切となり得る。それらの画像は、似通った条件下で撮影された可能性が高いからである。ここでは、同じタイムライン上の第１画像および第２画像に対し、同じパラメータを用いて同じ画像処理を実行可能である。従って、画像処理を高速化しつつ、適切な画像を得ることができる。
【０００８】
第３観点に係る画像処理プログラムは、第１観点に係る画像処理プログラムであって、第１画像および第２画像は、異なるタイムライン上の画像である。
異なるタイムラインに属する複数の画像に対し、同じパラメータを用いて同じ画像処理を実行することが適切となる場合がある。例えば、それらの画像が、同じ場所に設置された同じカメラによって撮影された場合などである。ここでは、異なるタイムライン上の第１画像および第２画像に対し、同じパラメータを用いて同じ画像処理を実行可能である。従って、画像処理を高速化しつつ、適切な画像を得ることができる。
【０００９】
第４観点に係る画像処理プログラムは、第１観点から第３観点のいずれかに係る画像処理プログラムであって、上記パラメータは、ボケ具合を含む。上記画像処理は、エッジを強調する処理を含む。
【００１０】
ここでは、第１画像から推定された第１画像のボケ具合を用いて、第１画像だけでなく、第２画像のエッジを強調する処理が実行される。ボケ具合とは、例えば、点拡がり関数（ＰＳＦ）として表される。ボケ具合は、焦点ボケであれば、カメラのレンズの特性に依存するパラメータである。従って、第１画像および第２画像が同じカメラで撮影された画像であれば、第１画像から推定されたボケ具合を、第２画像に適用し得る。ここでは、撮影に使用されたカメラが同じである等、似通った条件下で撮影された複数の画像に対するエッジ強調処理を高速化しつつ、適切な画像を得ることができる。
【００１１】
第５観点に係る画像処理プログラムは、第１観点から第４観点のいずれかに係る画像処理プログラムであって、上記パラメータは、ノイズ情報、歪曲収差情報および周辺光量情報の少なくとも１つを含む。上記画像処理は、ノイズを除去する処理、ノイズを付加する処理、歪曲収差を補正する処理および周辺光量を補正する処理の少なくとも１つを含む。
【００１２】
ここでは、第１画像から推定された第１画像のノイズ情報、歪曲収差情報および周辺光量情報の少なくとも１つを用いて、第１画像だけでなく、第２画像のノイズを除去する処理、ノイズを付加する処理、歪曲収差を補正する処理および周辺光量を補正する処理の少なくとも１つが実行される。ノイズ情報、歪曲収差情報および周辺光量情報は、カメラ、撮影時刻、撮影場所等の撮影条件に依存するパラメータである。従って、似通った条件下で撮影された複数の画像に対するノイズ除去処理、歪曲収差補正処理および周辺光量補正処理を高速化しつつ、適切な画像を得ることができる。
【００１３】
第６観点に係る画像処理プログラムは、第１観点から第５観点のいずれかに係る画像処理プログラムであって、指示受付ステップをさらにコンピュータに実行させる。指示受付ステップは、第１画像および第２画像に対し、上記画像処理を実行する指示を受け付けるステップである。第１画像処理ステップは、上記指示に応じて、上記パラメータを算出しつつ、第１画像に対し上記画像処理を実行するステップである。第２画像処理ステップは、上記パラメータが算出されたことに応じて、第２画像に対し上記画像処理を実行するステップである。
【００１４】
ここでは、ユーザが画像処理の実行を指示すると、自動的に画像処理のパラメータが算出され、自動的に第１画像および第２画像が画像処理される。従って、画像処理を指示した後、画像処理が完了するまでのユーザの待ち時間が短縮される。
【００１５】
第７観点に係る画像処理装置は、第１画像処理部と、第２画像処理部とを備える。第１画像処理部は、第１画像および第２画像のうちの第１画像から、画像処理のパラメータを算出しつつ、そのパラメータを用いて、第１画像に対しその画像処理を実行する。第２画像処理部は、上記パラメータを用いて、第２画像に対し上記画像処理を実行する。
【００１６】
ここでは、第１画像および第２画像に対し、同じ画像処理が実行される。そして、第１画像および第２画像のうちの第１画像のみから、両画像に対する画像処理に用いられるパラメータが算出される。言い換えると、第１画像から第１画像に対する画像処理用に算出されたパラメータが、第２画像に対する画像処理に流用される。なお、パラメータを流用する態様としては、第１画像から算出されたパラメータをそのまま第２画像に対する画像処理に用いる態様や、第１画像から算出されたパラメータを微調整して第２画像に対する画像処理に用いる態様等が考えられる。つまり、第２画像に対する画像処理用にパラメータを算出する処理が省略又は簡略化される。従って、複数の画像に対し、同じ画像処理を実行するのに要する計算時間が短縮される。
【発明の効果】
【００１７】
本発明によれば、第１画像から第１画像に対する画像処理用に算出されたパラメータが、第２画像に対する画像処理に流用される。つまり、第２画像に対する画像処理用にパラメータを算出する処理が省略又は簡略化される。従って、複数の画像に対し、同じ画像処理を実行するのに要する計算時間が短縮される。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態に係る画像処理装置のブロック図である。
【図２】画像データが取り込まれる前の基本画面の図である。
【図３】画像データが取り込まれた後の基本画面の図である。
【図４】確認ウィンドウを示す図である。
【図５】選択フレーム群に対するボケ補正処理のフローチャート。
【図６】各フレームに対するボケ補正処理のフローチャート。
【図７】変形例に係る各フレームに対するボケ補正処理のフローチャート。
【発明を実施するための形態】
【００１９】
以下、図面を参照しつつ、本発明の一実施形態に係る画像処理プログラムおよび画像処理装置について説明する。
＜１．画像処理装置の概要＞
図１に示す画像処理装置１は、本発明に係る画像処理装置の一実施形態である。画像処理装置１は、汎用のパーソナルコンピュータである。画像処理装置１には、本発明に係る画像処理プログラムの一実施形態である画像処理プログラム２がインストールされている。画像処理プログラム２は、動画および静止画に対する画像処理を支援するためのアプリケーションソフトウェアである。画像処理プログラム２は、画像処理装置１に後述する動作に含まれるステップを実行させる。
【００２０】
画像処理装置１は、ディスプレイ１０、入力部２０、記憶部３０および制御部４０を有する。ディスプレイ１０と、入力部２０と、記憶部３０と、制御部４０とは、互いにバス線５で接続されており、相互に通信可能である。本実施形態では、ディスプレイ１０は、液晶ディスプレイである。入力部２０は、マウスおよびキーボート等から構成される。記憶部３０は、ハードディスク等から構成される。制御部４０は、ＣＰＵ、ＲＯＭおよびＲＡＭ等から構成される。
ディスプレイ１０は、後述する画面等をユーザに対し表示する。入力部２０は、画像処理装置１に対するユーザからの操作を受け付ける。
【００２１】
画像処理プログラム２は、記憶部３０内に格納されている。記憶部３０内には、ソフトウェア管理領域５０が確保されている。ソフトウェア管理領域５０は、画像処理プログラム２が使用する領域である。ソフトウェア管理領域５０内には、オリジナル画像領域５１および加工ファイル領域５２が確保されている。各領域５１，５２の役割については、後述する。
【００２２】
制御部４０は、記憶部３０内に格納されている画像処理プログラム２を読み出して実行することにより、仮想的に画像処理部４１および指示受付部４２として動作する。各部４１，４２の動作については、後述する。
【００２３】
＜２．画像処理装置の構成および動作の詳細＞
制御部４０は、ユーザが入力部２０を介して所定の操作を行ったことを検知すると、画像処理プログラム２を起動する。画像処理プログラム２が起動されると、基本画面Ｗ１（図２参照）がディスプレイ１０上に表示される。なお、制御部４０は、ディスプレイ１０上に表示される画面、ウィンドウ、ボタンその他の全ての要素の表示を制御する。
【００２４】
＜２−１．画像データの取り込み＞
基本画面Ｗ１は、オリジナル画像領域５１への画像データの取り込みの命令をユーザから受け付ける。オリジナル画像領域５１へ取り込まれた画像データは、後述する画像処理の対象になる。制御部４０は、静止画ファイル又は動画ファイルから、オリジナル画像領域５１へ画像データを取り込む。なお、本明細書において、静止画ファイルとは、静止画形式のデータファイルであり、動画ファイルとは、動画形式のデータファイルである。
【００２５】
静止画ファイルから画像データを取り込む場合、ユーザは、入力部２０を操作することにより、１の静止画ファイルを指定するか、又は１のフォルダを指定する。前者の場合、制御部４０は、その静止画ファイルの記憶部３０内のアドレスパスおよびファイル名をユーザに入力させる。後者の場合、制御部４０は、そのフォルダの記憶部３０内のアドレスパスおよびフォルダ名をユーザに入力させる。その後、制御部４０は、指定された１の静止画ファイル又は指定された１のフォルダ内の全ての静止画ファイルを、オリジナル画像領域５１に静止画ファイル群として保存する。なお、本明細書において、「群」という場合には、その要素数は複数とは限らず、１つであってもよい。
【００２６】
一方、動画ファイルから画像データを取り込む場合、ユーザは、入力部２０を操作することにより、１の動画ファイルの記憶部３０内のアドレスパスおよびファイル名を入力する。制御部４０は、ユーザが動画ファイルを指定したことを検知すると、基本画面Ｗ１上に動画取込みウィンドウ（図示されない）を重ねて表示させる。動画取込みウィンドウは、指定された動画ファイルの全タイムラインのうち、任意の長さのタイムラインの選択をユーザから受け付ける。制御部４０は、ユーザが入力部２０を介して任意の長さのタイムラインの選択を行ったことを検知すると、その選択に対応する静止画ファイル群を生成する。この静止画ファイル群は、ユーザの選択に係るタイムラインの動画に含まれるフレーム群に１対１で対応する。その後、制御部４０は、この静止画ファイル群をオリジナル画像領域５１に保存する。
【００２７】
従って、本実施形態では、後述する画像処理の対象は、動画ファイルではなく、静止画ファイルである。静止画ファイルは、オリジナル画像領域５１へファイル単位、フォルダ単位、あるいは動画ファイルの全部又は一部のタイムライン単位で取り込まれる。
【００２８】
＜２−２．静止画ファイル群の再生＞
オリジナル画像領域５１へ静止画ファイル群が取り込まれると、制御部４０は、基本画面Ｗ１上に表示ウィンドウＷ２（図３参照）を重ねて表示させる。表示ウィンドウＷ２は、オリジナル画像領域５１への静止画ファイル群の取り込み動作の数だけ、表示される。
【００２９】
表示ウィンドウＷ２内には、まず、オリジナル画像領域５１へ取り込まれた静止画ファイル群に含まれる１の静止画ファイル（例えば、タイムライン上で先頭のフレームに対応する静止画ファイル）が表示される。なお、制御部４０は、静止画ファイル群が動画ファイルに由来するものではなく、静止画ファイルに由来するものであっても、静止画ファイル群に含まれる静止画ファイルをタイムラインに沿って配列されているものと認識する。配列は、ファイルの属性（ファイル名、作成日時、更新日時等）から自動的に判断される。
【００３０】
後述するとおり、表示ウィンドウＷ２内に表示されるフレームは、ユーザの操作を受けて切り替わる。制御部４０は、表示ウィンドウＷ２内に現在表示されているフレームの識別情報をリアルタイムに管理する。
【００３１】
制御部４０は、表示ウィンドウＷ２内で、その表示ウィンドウＷ２に対応する静止画ファイル群を、動画として再生可能である。図３に示すとおり、制御部４０は、基本画面Ｗ１上に、ウィンドウ選択プルダウンメニューＴ１、再生ボタンＴ２、コマ送りボタンＴ３、コマ戻しボタンＴ４およびタイムラインバーＴ５を表示する。
【００３２】
表示ウィンドウＷ２が複数存在する場合であっても、アクティブな表示ウィンドウＷ２は１つである。ウィンドウ選択プルダウンメニューＴ１は、どの表示ウィンドウＷ２をアクティブとするかの選択をユーザから受け付ける。以下、アクティブな表示ウィンドウＷ２に対応する静止画ファイル群を、アクティブファイル群と呼ぶ。また、アクティブな表示ウィンドウＷ２内に現在表示されているフレームを、アクティブ表示フレームと呼ぶ。
【００３３】
再生ボタンＴ２は、アクティブファイル群の動画としての再生の命令をユーザから受け付ける。制御部４０は、ユーザが入力部２０を介して再生ボタンＴ２を押下したことを検知すると、アクティブな表示ウィンドウＷ２内に、アクティブファイル群のフレームをタイムラインに沿って順次コマ送りの形式で表示させる。なお、再生は、再生ボタンＴ２が押下された時点のアクティブ表示フレームから開始する。また、再生ボタンＴ２は、再生の停止の命令をユーザから受け付ける。制御部４０は、再生中にユーザが入力部２０を介して再生ボタンＴ２を押下したことを検知すると、アクティブな表示ウィンドウＷ２内の表示を、その時点のアクティブ表示フレームに固定する。
【００３４】
コマ送りボタンＴ３、コマ戻しボタンＴ４はそれぞれ、アクティブ表示フレームを、アクティブファイル群のタイムラインに沿って１つ後、１つ前のフレームへ切り替える命令をユーザから受け付ける。
【００３５】
タイムラインバーＴ５は、アクティブファイル群のタイムラインを図式的に表す。タイムラインバーＴ５は、そのバーが延びる方向に、アクティブファイル群のフレーム数で等分に分割されている。タイムラインバーＴ５上の左からｎ番目の分割領域は、アクティブファイル群のタイムライン上でｎ番目のフレームに対応する（ｎは、自然数）。
【００３６】
図３に示すように、タイムラインバーＴ５は、選択フレーム群に対応する分割領域Ａ１と、非選択フレーム群に対応する分割領域Ａ２とを異なる態様で表示する。選択フレーム群とは、アクティブファイル群のタイムライン上で現在選択されている区間に対応するフレーム群である。非選択フレーム群とは、アクティブファイル群のタイムライン上で現在選択されていない区間に対応するフレーム群である。本実施形態では、領域Ａ１は、薄いトーンの色で表示され、領域Ａ２は、濃いトーンの色で表示される。
【００３７】
タイムラインバーＴ５は、アクティブファイル群のタイムライン上の任意の区間の選択をユーザから受け付ける。選択される区間は、連続区間であっても、不連続区間であってもよい。言い換えると、ユーザは、入力部２０を介してタイムラインバーＴ５を操作することにより、アクティブファイル群の全フレームの中から、任意のフレームを任意の数だけ選択することができる。具体的には、ユーザは、タイムラインバーＴ５上で選択したいフレームに対応する分割領域を選択する。分割領域は、同時に複数選択が可能である。画像処理部４１は、選択フレーム群を後述される画像処理の対象として認識する。なお、ユーザによりタイムラインバーＴ５上の分割領域が選択される度に、アクティブ表示フレームは、最新に選択された分割領域に対応するフレームに切り替わる。
【００３８】
＜２−３．画像処理＞
以下、選択フレーム群に対する画像処理について説明する。
画像処理部４１は、ノイズ除去、ノイズ付加、シャープネス、明るさ／コントラスト／彩度調整、画像解像度、回転、文字／矢印／モザイクの付加、歪曲収差補正、周辺光量補正、ボケ補正などの複数の画像処理モジュールを実行可能である。画像処理モジュールは、画像処理プログラム２に組み込まれている。
【００３９】
指示受付部４２は、画像処理を実行する指示をユーザから受け付ける。ユーザは、入力部２０を介して基本画面Ｗ１を操作することにより、画像処理モジュールの中から任意のものを、任意の順番に、任意の回数だけ選択することが可能である。必要であれば、ユーザは、画像処理モジュールの選択に併せて、その画像処理モジュールの実行時に用いられるパラメータを入力する。画像処理部４１は、ユーザが画像処理モジュールを１つ選択したことを指示受付部４２が検知する度に、選択フレーム群に対しその画像処理モジュールを実行する。なお、選択フレーム群に対し画像処理モジュールを実行するとは、選択フレーム群に含まれる各フレームに対しその画像処理モジュールを実行することである。
【００４０】
フレームに対し画像処理モジュールが１回、２回、３回，・・・と、順次実行されてゆくにつれて、そのフレームは、第１次、第２次、第３次，・・・と、順次加工されてゆく。第０次フレームは、オリジナル画像領域５１に保存されている静止画ファイルに対応する。第（ｍ＋１）次フレームは、第ｍ次フレームに対し画像処理モジュールを１回実行した後の静止画ファイルに対応する（ｍは、０以上の整数）。画像処理モジュールが順次実行されてゆくにつれて、第１次以降のフレームに対応する静止画ファイルが順次生成される。これらの静止画ファイルは、加工ファイル領域５２内にそれぞれ別のファイルとして保存される。
【００４１】
＜２−３−１．ボケ補正＞
以下、ボケ補正の画像処理（以下、ボケ補正処理）の詳細について説明する。上記のとおり、指示受付部４２は、ボケ補正処理を実行する指示をユーザから受け付ける。画像処理部４１は、ユーザによるボケ補正処理の実行の指示に応じて、選択フレーム群に対し、図５に示すボケ補正処理を開始する。
【００４２】
具体的には、制御部４０は、ユーザが入力部２０を介して基本画面Ｗ１上で所定の操作を行ったことを検知すると、基本画面Ｗ１上に確認ウィンドウＷ３（図４参照）を重ねて表示させる。ボケ補正処理に含まれる、後述するステップＳ２２およびステップＳ２３に係る処理は、高負荷の処理である。従って、ボケ補正処理が開始すると、他の処理が滞る可能性がある。確認ウィンドウＷ３は、ユーザに対しボケ補正処理に時間がかかる旨の警告を表示し、それでもボケ補正処理を実行するか否かをユーザに確認するウィンドウである。
【００４３】
確認ウィンドウＷ３は、実行ボタンＢ１およびキャンセルボタンＢ２を表示する。指示受付部４２は、実行ボタンＢ１を介し、ボケ補正処理を実行する指示をユーザから受け付ける。指示受付部４２は、キャンセルボタンＢ２を介し、ボケ補正処理の実行をキャンセルする指示をユーザから受け付ける。画像処理部４１は、ユーザが入力部２０を介して実行ボタンＢ１を押したことを指示受付部４２が検知すると、図５に示すボケ補正処理を開始する。
【００４４】
具体的には、画像処理部４１は、選択フレーム群に含まれる全フレームについて、ステップＳ２の処理を順次実行する。ステップＳ２の処理は、ボケ補正の画像処理モジュールを実行する処理である。ステップＳ２に先行するステップＳ１では、ステップＳ２の処理の対象となるフレーム（以下、対象フレーム）として、選択フレーム群に含まれるフレームであって、未だステップＳ２の処理を経ていないフレームの中から、タイムラインに沿って先頭のフレームが１枚選択される。従って、図５に示すボケ補正処理では、ステップＳ１およびステップＳ２の処理がＫ回実行される（Ｋは、１以上の整数）。なお、Ｋとは、選択フレーム群に含まれるフレーム数である。
【００４５】
Ｌ回目のステップＳ２の実行時、すなわち、対象フレームがＬ枚目のフレームである時、画像処理部４１は、第Ｌ画像処理部４１−Ｌとして動作する（Ｌは、自然数）。Ｌ枚目のフレームとは、Ｌ回目のステップＳ１で選択されるフレームである。
【００４６】
図６は、図５のステップＳ２の処理の詳細を示す。まず、ステップＳ２１では、第Ｌ画像処理部４１−Ｌは、対象フレームが１枚目のフレームであるか否かを判断する。第Ｌ画像処理部４１−Ｌは、対象フレームが１枚目のフレームであると判断した場合には、処理をステップＳ２２に進め、そうでない場合には、ステップＳ２２をスキップし、処理をステップＳ２３に進める。ステップＳ２２では、パラメータ算出ルーチンが実行され、ステップＳ２３では、ボケ補正ルーチンが実行される。パラメータ算出ルーチンおよびボケ補正ルーチンは、ボケ補正の画像処理モジュールの実行時に、サブルーチンとして呼び出される。パラメータ算出ルーチンおよびボケ補正ルーチンのプログラムは、画像処理プログラム２に組み込まれている。
【００４７】
ステップＳ２２のパラメータ算出ルーチンでは、ステップＳ２３のボケ補正ルーチンで用いられるパラメータが算出される。本実施形態では、ボケ補正ルーチンのパラメータとして、点拡がり関数（ＰＳＦ）が算出される。
【００４８】
図５および図６から分かるように、ステップＳ２３のボケ補正ルーチンは、選択フレーム群に含まれる各フレームに対して実行されるが、ステップＳ２２のパラメータ算出ルーチンは、選択フレーム群に含まれる全フレームのうち、１枚目のフレームに対してのみ実行される。つまり、画像処理部４１−１のみがＰＳＦを算出し、画像処理部４１−２，４１−３，・・・はＰＳＦを算出しない。従って、ボケ補正ルーチンを繰り返し実行するに当たり、選択フレーム群に含まれる各フレームについてＰＳＦが必要になるものの、ＰＳＦは、１回しか算出されない。そこで、本実施形態では、ボケ補正ルーチンの実行時において、後述するとおり、１枚目のフレームのＰＳＦが、選択フレーム群に含まれる残りのフレームのＰＳＦとして流用される。
【００４９】
本実施形態では、ＰＳＦは、以下のように算出される。ＰＳＦは、対象フレームの焦点ボケを近似する関数であり、本実施形態では、ガウス分布に従うものとして以下のようにモデル化されている。
ｈ（ｘ，ｙ）＝（１／２πσ２）ｅｘｐ｛−（ｘ２＋ｙ２）／２σ２｝    （式１）
【００５０】
ただし、ｈ（ｘ，ｙ）は、ＰＳＦであり、ｘ，ｙは、対象フレームの空間領域の直交座標系であり、πは、円周率であり、σは、標準偏差である。標準偏差σは、画像のボケ具合を表すパラメータである。なお、式１から分かるように、ＰＳＦを算出するとは、ＰＳＦのモデル式の未知の係数である標準偏差σを算出することに等しい。標準偏差σの算出の方法としては、様々なものが公知であるが、例えば、対象フレームに含まれるエッジ部分の輝度値の変化幅から推定する等、当業者が任意のものを適宜選択し得る。なお、ステップＳ２２でのＰＳＦの算出時には、選択フレーム群に含まれる全フレームのうち、対象フレームのみが参照され、残りのフレームは、参照されない。
【００５１】
ステップＳ２３のボケ補正ルーチンは、対象フレームに含まれるボケを改善し、エッジを強調する処理である。ステップＳ２３では、第Ｌ画像処理部４１−Ｌは、ステップＳ２２で算出されたＰＳＦ（より正確には、本実施形態では、標準偏差σ）を用いて、対象フレームに対し、ボケ補正ルーチンを実行する。つまり、第Ｌ画像処理部４１−Ｌは、ＰＳＦからボケる前の対象フレームを推定する。具体的には、本実施形態では、第Ｌ画像処理部４１−Ｌは、対象フレームｇ（ｘ，ｙ）のフーリエ変換後のフレームＧ（ｕ，ｖ）を、ＰＳＦであるｈ（ｘ，ｙ）のフーリエ変換後の関数Ｈ（ｕ，ｖ）の逆数である逆フィルタＨｉｎｖ（ｕ，ｖ）に通し、逆フィルタＨｉｎｖ（ｕ，ｖ）を通過したフレームＦ（ｕ，ｖ）を逆フーリエ変換することにより、ボケの改善された原フレームｆ（ｘ，ｙ）を生成する。なお、ｕ，ｖは、対象フレームの周波数領域の直交座標系である。本アルゴリズムは、以下の式２に基づく。
Ｆ（ｕ，ｖ）＝Ｈｉｎｖ（ｕ，ｖ）Ｇ（ｕ，ｖ）    （式２）
以上の態様で、選択フレーム群に含まれる全フレームについて、ステップＳ２の処理が終了すると、図５に示すボケ補正処理が完了する。
【００５２】
＜３．用途＞
上記のとおり、画像処理プログラム２は、静止画又は動画ファイルのどちらから画像データを取り込もうとも、その後、画像データを静止画ファイル群として管理する。従って、画像処理プログラム２は、同じタイムラインの中の任意のフレームを任意に画像処理したいというユーザの要望に容易に応えることができる。また、画像処理プログラム２は、静止画ファイル群を動画として再生する機能を有している。その結果、画像データが画像処理プログラム２内で静止画ファイル群として取り扱われようとも、ユーザは、その画像データを動画として認識することができる。従って、画像処理プログラム２は、動画の解析や編集等を行う場面で特に有用である。
【００５３】
画像処理プログラム２は、多種多様な動画に対する画像処理を取り扱うことができるが、例えば、警察等の機関が事件の捜査のために防犯カメラの監視映像を解析するのにも利用され得る。例えば、防犯カメラの監視映像の中に、容疑者が捕えられている場合がある。しかし、通常、防犯カメラのピントが被写体（容疑者）に合っていることは少なく、必要とされる映像は、不鮮明に写っている場合が多い。本実施形態に係るボケ補正の機能は、防犯カメラの監視映像に含まれる、焦点ボケ等が生じている不鮮明な画像群を高速に鮮明化するのに特に有用である。
【００５４】
＜４．特徴＞
＜４−１＞
上記実施形態では、画像処理部４１は、選択フレーム群に含まれる全フレームのうちの１枚目のフレームから、ボケ補正ルーチンのパラメータである点拡がり関数（ＰＳＦ）を算出しつつ、そのＰＳＦを用いて、１枚目のフレームに対しボケ補正ルーチンを実行する。また、画像処理部４１は、同じＰＳＦを用いて、選択フレーム群に含まれる１枚目以降のフレームに対してもボケ補正ルーチンを実行する。
【００５５】
すなわち、選択フレーム群に含まれる全フレームのうちの１枚目のフレームのみから、全フレームに共通のＰＳＦが算出される。言い換えると、１枚目のフレームから１枚目のフレームに対するボケ補正ルーチン用に算出されたＰＳＦが、２枚目以降のフレームに対するボケ補正ルーチンのＰＳＦとしてそのまま用いられる。つまり、２枚目以降のフレームから２枚目以降のフレームに対するボケ補正ルーチン用にＰＳＦを算出する処理が省略される。従って、複数のフレームに対し、同じボケ補正ルーチンを実行するのに要する計算時間が短縮される。
【００５６】
＜４−２＞
画像のボケ具合は、焦点ボケ等、カメラのレンズの特性に依存し得る。従って、同じカメラで撮影されたフレームであれば、あるフレームから推定されたボケ具合を、別のフレームに適用し得る。上記実施形態では、選択フレーム群に含まれる１枚目のフレームから推定された１枚目のフレームのボケ具合を用いて、１枚目のフレームだけでなく、２枚目以降のフレームに対してもボケ補正ルーチンが実行される。従って、ユーザは、撮影に使用されたカメラが同じである等、似通った条件下で撮影された複数のフレームを選択フレーム群として選択することにより、それらのフレームに対するボケ補正処理を高速化しつつ、ボケの改善された適切な画像を得ることができる。
【００５７】
＜４−３＞
多くの場合、同じタイムラインに属する少なくとも一部の複数のフレームに対しては、同じパラメータを用いて同じ画像処理を実行することが適切となり得る。それらのフレームは、似通った条件下で撮影された可能性が高いからである。上記実施形態では、同じタイムライン上の複数のフレームを含む選択フレーム群に対し、同じＰＳＦを用いてボケ補正ルーチンを実行可能である。従って、ボケ補正処理を高速化しつつ、ボケの改善された適切な画像を得ることができる。
【００５８】
＜５．変形例＞
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて、種々の変更が可能である。例えば、以下の変更が可能である。
【００５９】
＜５−１＞
ステップＳ２２では、パラメータが、選択フレーム群に含まれる全フレームのうち、タイムライン上で先頭のフレームから算出されるようになっていたが、先頭以外のフレームから算出されるようにしてもよい。例えば、パラメータの算出の基礎となるフレームを、ユーザが任意に指定できるようにしてもよいし、先頭以外のフレームが選択され得る所定のアルゴリズムに従って、自動的に決定してもよい。
【００６０】
＜５−２＞
ステップＳ２２では、パラメータが、選択フレーム群に含まれる全フレームのうち、１枚のフレームのみから算出されるようになっていたが、２枚以上のフレームから算出されるようにしてもよい。例えば、選択フレーム群に含まれる全フレームのうち、タイムライン上で１枚目と２枚目のフレームのみからパラメータを算出し、そのパラメータを、１枚目と２枚目のフレームだけでなく、３枚目以降のフレームのボケ補正ルーチンで流用するようにしてもよい。
【００６１】
＜５−３＞
上記実施形態では、選択フレーム群に含まれる全フレームに対するステップＳ２３の処理が、シーケンス処理されるようになっていたが、並列処理されるようにしてもよい。例えば、ステップＳ２２でパラメータが算出されたことに応じて、画像処理部４１−１，４１−２，・・・が、それぞれ異なるフレームに対し、ステップＳ２３の処理を並列に実行するようにしてもよい。
【００６２】
＜５−４＞
上記実施形態では、画像処理モジュールの実行の対象である選択フレーム群を、同じタイムライン上のフレームのみから選択可能であったが、異なるタイムライン上のフレームからも選択可能にしてもよい。
【００６３】
一般に、異なるタイムラインに属する複数のフレームに対し、同じパラメータを用いて同じ画像処理を実行することが適切となる場合がある。例えば、それらのフレームが、同じ場所に設置された同じカメラによって撮影された場合などである。本変形例では、異なるタイムラインに属する複数のフレームを含む選択フレーム群に対し、同じＰＳＦを用いてボケ補正ルーチンを実行可能である。従って、ボケ補正処理を高速化しつつ、ボケの改善された適切な画像を得ることができる。
【００６４】
＜５−５＞
上記実施形態では、複数のフレームに対するボケ補正ルーチンで用いられるパラメータとして、ＰＳＦの標準偏差σが算出されたが、ボケ具合を表す別のパラメータが算出されてもよい。例えば、ＰＳＦをガウス関数以外でモデル化し、そのモデルに含まれる別の変数を算出するようにしてもよい。あるいは、ボケ具合を表すパラメータとして、ＰＳＦ以外の指標を算出するようにしてもよい。
【００６５】
＜５−６＞
上記実施形態では、ステップＳ２２で算出されたパラメータを複数のフレーム間で共用するステップＳ２３の画像処理として、ボケ補正ルーチンが実行されたが、他の画像処理が実行されてもよい。なお、ステップＳ２３の画像処理が変われば、ステップＳ２２で算出されるべきパラメータも変わることは言うまでもない。
【００６６】
例えば、ステップＳ２３で、ノイズを除去する処理又はノイズを付加する処理を実行し、ステップＳ２２で、選択フレーム群のうちの特定のフレームから、ノイズ除去フィルタ又はノイズ付加フィルタ等のノイズ情報（パラメータ）を算出してもよい。
【００６７】
あるいは、ステップＳ２３で、歪曲収差を補正する処理を実行し、ステップＳ２２で、選択フレーム群のうちの特定のフレームから、歪曲率等の歪曲収差の程度を表す情報（パラメータ）を算出してもよい。
【００６８】
あるいは、ステップＳ２３で、周辺光量を補正する処理を実行し、ステップＳ２２で、選択フレーム群のうちの特定のフレームから、画角等の周辺光量の程度に影響を与える情報（パラメータ）を算出してもよい。
【００６９】
＜５−７＞
上記実施形態では、選択フレーム群に含まれる全フレームのうちの１枚目のフレームから算出されたパラメータが、１枚目のフレームのパラメータとしてだけでなく、残りのフレームのパラメータとしてもそのまま用いられるようになっていた。しかし、１枚目のフレームのパラメータを残りのフレームに対する画像処理に流用する方法は、これに限られない。例えば、残りのフレームに対する画像処理時に、１枚目のフレームから算出されたパラメータを、残りのフレームのパラメータとしてより適切になるよう、残りのフレームの情報を用いて微調整してもよい。本変形例では、残りのフレームのパラメータを算出する処理が簡略化され、全フレームに対し同じ画像処理を実行するのに要する計算時間が短縮される。本変形例を上記実施形態のステップＳ２に適用する場合、例えば、図６に示すステップＳ２の処理は、図７に示すように変更され得る。すなわち、１枚目のフレーム以外のフレームに対しては、パラメータを一から算出するステップＳ２２の代わりに、既にステップＳ２２で算出済みのパラメータを微調整するステップＳ２４を実行するように変更され得る。
【００７０】
＜５−８＞
上記実施形態では、オリジナル画像領域５１へ取り込まれた画像データは、全て静止画ファイルとして保存されるようになっていた。しかしながら、オリジナル画像領域５１へ取り込まれた画像データを、動画ファイルとして保存するようにしてもよい。オリジナル画像領域５１内の画像データの形式を静止画形式とするか動画形式とするかは、ユーザが選択できるようにしてもよいし、取り込み元の画像データの形式等に応じて自動的に決定されるようにしてもよい。
さらに、その後、動画ファイルに対して画像処理が施される場合には、その画像処理後の画像データも動画ファイルの形式で保存するようにしてもよい。
【符号の説明】
【００７１】
１  画像処理装置（コンピュータ）
２  画像処理プログラム
４１  画像処理部
４１−Ｌ  第Ｌ画像処理部
４２  指示受付部
【図１】
2013142997.tif 000003
【図５】
2013142997.tif 000004
【図６】
2013142997.tif 000005
【図７】
2013142997.tif 000006
【図２】
2013142997.tif 000007
【図３】
2013142997.tif 000008
【図４】
2013142997.tif 000009