(58)【調査した分野】(Int.Cl.,DB名)
前記ノイズを除去するステップは、前記各グループについて、そのグループに属する前記フレームの中の第1除外フレーム以外のフレームを用いて、前記フレームからノイズを除去するステップであり、
前記第1除外フレームは、前記グループ内で前記タイムラインに沿って始端および終端の少なくとも一方の前記フレームを含む、
請求項1から6のいずれかに記載の画像処理プログラム。
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、特許文献1では、フレームを画一的に所定数ずつに分けてゆく。しかしながら、それら所定数のフレームどうしは、タイムライン上で隣接しているとは言え、互いに十分に類似しているとは限らない。もし、それら所定数のフレームどうしが互いに大きく異なっているようであれば、ノイズ除去処理後のフレームがぼやけてしまう等の問題が生じる。
本発明は、タイムライン上のフレームからノイズを高精度に除去する画像処理プログラム、画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
第1観点に係る画像処理プログラムは、タイムライン上の複数のフレームからノイズを除去するための画像処理プログラムであって、分割ステップと、除去ステップとをコンピュータに実行させる。分割ステップは、複数のフレームをタイムラインに沿って複数のグループに分割するステップである。除去ステップは、グループ単位で、フレームからノイズを除去するステップである。グループのフレーム数は、グループによって異なる。分割ステップは、グループのフレーム数がタイムラインに沿って周期的に現れるように、複数のフレームをタイムラインに沿って複数のグループに分割するステップである。
【0006】
ここでは、タイムライン上の複数のフレームが、タイムラインに沿って、複数のグループに分割される。その後、グループ単位で、ノイズ除去処理が実行される。グループの要素数は、グループによって異なり、タイムライン上で周期性を持つ。つまり、タイムライン上のフレームが、同じ要素数を有するグループに画一的に分割されるのではなく、ある周期性に従って、異なる要素数を有するグループに分割される。従って、類似しているフレームどうしを同じグループに分類しやすくなる。その結果、ノイズを高精度に除去することが可能になる。
【0007】
第2観点に係る画像処理プログラムは、第1観点に係る画像処理プログラムであって、入力受付ステップをさらにコンピュータに実行させる。入力受付ステップは、周期パターンの入力を受け付けるステップである。周期パターンは、グループのフレーム数をタイムラインに沿って配列したパターンの一周期である。分割ステップは、周期パターンに従って、複数のフレームをタイムラインに沿って複数のグループに分割するステップである。
【0008】
ここでは、ユーザが、タイムラインに沿ったグループの要素数の配列の一周期を指定することができる。従って、類似フレームを同じグループにさらに分類しやすくなる。その結果、ノイズをさらに高精度に除去することが可能になる。
【0009】
第3観点に係る画像処理プログラムは、第2観点に係る画像処理プログラムであって、入力受付ステップは、フレーム数と、そのフレーム数の周期パターン内での繰り返し回数との組を複数組入力させるステップを含む。
【0010】
ここでは、ユーザは、複数のフレーム数を指定し、指定した各フレーム数についての繰り返し回数を指定することができる。つまり、類似フレームが現れる周期性を、簡単に指定することができる。従って、類似フレームを同じグループに簡単に分類することができる。
【0011】
第4観点に係る画像処理プログラムは、第2観点又は第3観点に係る画像処理プログラムであって、指定受付ステップをさらにコンピュータに実行させる。指定受付ステップは、タイムライン上でのグループ間の境界の位置の指定を受け付けるステップである。分割ステップは、周期パターンおよび境界の位置に従って、複数のフレームをタイムラインに沿って複数のグループに分割するステップである。
【0012】
タイムライン上では、類似フレームがある周期性に従って現れると予想される場合であっても、例外が存在し得る。ここでは、ユーザが、周期パターンを指定することにより、大まかな周期性を指定しつつ、グループ間の境界の位置を指定することにより、周期性の例外を指定することができる。周期性の例外を指定する方法としては、例えば、グループ間の境界を移動させる方法や、グループ間に新たな境界を追加する方法等がある。そして、大まかな周期性とその例外とに従って、ノイズ除去処理が実行される。その結果、ノイズをさらに高精度に除去することが可能になる。
【0013】
第5観点に係る画像処理プログラムは、第4観点に係る画像処理プログラムであって、指定受付ステップは、移動受付ステップと、平行移動ステップとを含む。移動受付ステップは、周期パターンに従って規定される複数のグループ間の複数の境界のうち、任意の境界の移動の指示を受け付けるステップである。平行移動ステップは、周期パターンに従って規定される複数の境界のうち、移動の指示に係る境界以降の境界を平行移動させるステップである。分割ステップは、平行移動後の境界の位置に従って、複数のフレームをタイムラインに沿って複数のグループに分割するステップである。
【0014】
ここでは、ユーザが、周期パターンに従って規定されるグループ間の境界の位置の移動を指示することができる。そして、特定の境界の位置が移動されると、その境界だけでなく、タイムライン上でその境界よりも後ろの境界が連動して移動される。従って、類似フレームが現れる周期性の例外を、より簡単に指定することができる。
【0015】
第6観点に係る画像処理プログラムは、第1観点から第5観点のいずれかに係る画像処理プログラムであって、フレームは、撮像装置により撮像され、撮像装置とフレームレートの異なる記録装置により記録されたフレームである。
【0016】
撮像装置のフレームレートと、記録装置のフレームレートとが異なる場合、タイムライン上では、同様のフレームが、異なる枚数ずつ、周期性を持って現れ得る。例えば、前者が1FPSであり、後者が29.97FPSである場合、記録装置では、約30枚ずつ類似フレームが記録され得る。より正確には、例えば、類似フレームの連続枚数は、タイムラインに沿って、29枚、29枚、30枚、29枚、29枚、30枚、・・・のような周期性を有するパターンで出現し得る。ここでは、タイムライン上のフレームが、ある周期性に従って、異なる要素数を有するグループに分割される。従って、ここでは、撮像装置により撮像され、撮像装置とフレームレートの異なる記録装置により記録された複数のフレームについて、類似フレームを同じグループに正確に分類しやすくなる。その結果、撮像装置により撮像され、撮像装置とフレームレートの異なる記録装置により記録されたフレームから、ノイズを高精度に除去することが可能になる。
【0017】
第7観点に係る画像処理プログラムは、第1観点から第6観点のいずれかに係る画像処理プログラムであって、除去ステップは、各グループについて、そのグループに属するフレームの中の第1除外フレーム以外のフレームを用いて、フレームからノイズを除去するステップである。第1除外フレームは、グループ内でタイムラインに沿って始端および終端の少なくとも一方のフレームを含む。
【0018】
タイムライン上の複数のフレームが、ある周期性に従って、複数のグループに分割される場合、グループ内で始端および終端のフレームは、同じグループ内の他のフレームと類似していない可能性が相対的に高い。従って、ここでは、グループ内で始端および終端のフレームを除外して、ノイズ除去処理が実行される。その結果、ノイズをさらに高精度に除去することが可能になる。
【0019】
第8観点に係る画像処理プログラムは、第1観点から第7観点のいずれかに係る画像処理プログラムであって、選択受付ステップをさらにコンピュータに実行させる。選択受付ステップは、第2除外フレームとして、タイムライン上の任意のフレームの選択を受け付けるステップである。除去ステップは、各グループについて、そのグループに属するフレームの中の第2除外フレーム以外のフレームを用いて、フレームからノイズを除去するステップである。
【0020】
タイムライン上では、類似フレームがある周期性に従って現れると予想される場合であっても、例外が存在し得る。ここでは、ユーザが、タイムライン上の任意のフレームを、例外のフレームとして指定することができる。そして、グループ内の例外のフレームを除外して、ノイズ除去処理が実行される。その結果、ノイズをさらに高精度に除去することが可能になる。
【0021】
第9観点に係る画像処理プログラムは、第1観点から第8観点のいずれかに係る画像処理プログラムであって、除去ステップは、各グループについて、そのグループに属する2以上のフレームを平均化した平均フレームを生成するステップである。
ここでは、各グループについて、そのグループに属する2以上のフレームが平均化される。従って、ノイズを容易に除去することができる。
【0022】
第10観点に係る画像処理装置は、分割部と、除去部とを備え、タイムライン上の複数のフレームからノイズを除去する。分割部は、複数のフレームをタイムラインに沿って複数のグループに分割する。除去部は、グループ単位で、フレームからノイズを除去する。グループのフレーム数は、グループによって異なる。分割部は、グループのフレーム数がタイムラインに沿って周期的に現れるように、複数のフレームをタイムラインに沿って複数のグループに分割するステップである。
【0023】
ここでは、タイムライン上の複数のフレームが、タイムラインに沿って、複数のグループに分割される。その後、グループ単位で、ノイズ除去処理が実行される。グループの要素数は、グループによって異なり、タイムライン上で周期性を持つ。つまり、タイムライン上のフレームが、同じ要素数を有するグループに画一的に分割されるのではなく、ある周期性に従って、異なる要素数を有するグループに分割される。従って、類似しているフレームどうしを同じグループに分類しやすくなる。その結果、ノイズを高精度に除去することが可能になる。
【0024】
第11観点に係る画像処理方法は、分割ステップと、除去ステップとを備え、タイムライン上の複数のフレームからノイズを除去する方法である。分割ステップは、複数のフレームをタイムラインに沿って複数のグループに分割するステップである。除去ステップは、グループ単位で、フレームからノイズを除去するステップである。グループのフレーム数は、グループによって異なる。分割ステップは、グループのフレーム数がタイムラインに沿って周期的に現れるように、複数のフレームをタイムラインに沿って複数のグループに分割するステップである。
【0025】
ここでは、タイムライン上の複数のフレームが、タイムラインに沿って、複数のグループに分割される。その後、グループ単位で、ノイズ除去処理が実行される。グループの要素数は、グループによって異なり、タイムライン上で周期性を持つ。つまり、タイムライン上のフレームが、同じ要素数を有するグループに画一的に分割されるのではなく、ある周期性に従って、異なる要素数を有するグループに分割される。従って、類似しているフレームどうしを同じグループに分類しやすくなる。その結果、ノイズを高精度に除去することが可能になる。
【発明の効果】
【0026】
本発明によれば、タイムライン上のフレームが、同じ要素数を有するグループに画一的に分割されるのではなく、ある周期性に従って、異なる要素数を有するグループに分割される。従って、類似しているフレームどうしを同じグループに分類しやすくなる。その結果、ノイズを高精度に除去することが可能になる。
【発明を実施するための形態】
【0028】
以下、図面を参照しつつ、本発明の一実施形態に係る画像処理プログラム、画像処理装置および画像処理方法について説明する。
<1.画像処理装置の概要>
図1に示す画像処理装置1は、本発明に係る画像処理装置の一実施形態である。画像処理装置1は、汎用のパーソナルコンピュータである。画像処理装置1には、本発明に係る画像処理プログラムの一実施形態である画像処理プログラム2がインストールされている。画像処理プログラム2は、動画および静止画に対する画像処理を支援するためのアプリケーションソフトウェアである。画像処理プログラム2は、画像処理装置1に後述する動作に含まれるステップを実行させる。
【0029】
画像処理装置1は、ディスプレイ10、入力部20、記憶部30および制御部40を有する。ディスプレイ10と、入力部20と、記憶部30と、制御部40とは、互いにバス線5で接続されており、相互に通信可能である。本実施形態では、ディスプレイ10は、液晶ディスプレイである。入力部20は、マウスおよびキーボート等から構成される。記憶部30は、ハードディスク等から構成される。制御部40は、CPU、ROMおよびRAM等から構成される。
ディスプレイ10は、後述する画面等をユーザに対し表示する。入力部20は、画像処理装置1に対するユーザからの操作を受け付ける。
【0030】
画像処理プログラム2は、記憶部30内に格納されている。記憶部30内には、ソフトウェア管理領域50が確保されている。ソフトウェア管理領域50は、画像処理プログラム2が使用する領域である。ソフトウェア管理領域50内には、オリジナル画像領域51および加工ファイル領域52が確保されている。各領域51,52の役割については、後述する。
【0031】
制御部40は、記憶部30内に格納されている画像処理プログラム2を読み出して実行することにより、仮想的に画像処理部41、グループ分割部42およびパラメータ受付部43として動作する。各部41〜43の動作については、後述する。
【0032】
<2.画像処理装置の構成および動作の詳細>
制御部40は、ユーザが入力部20を介して所定の操作を行ったことを検知すると、画像処理プログラム2を起動する。画像処理プログラム2が起動されると、基本画面W1(
図2参照)がディスプレイ10上に表示される。なお、制御部40は、ディスプレイ10上に表示される画面、ウィンドウ、ボタンその他の全ての要素の表示を制御する。
【0033】
<2−1.画像データの取り込み>
基本画面W1は、オリジナル画像領域51への画像データの取り込みの命令をユーザから受け付ける。オリジナル画像領域51へ取り込まれた画像データは、後述する画像処理の対象になる。制御部40は、静止画ファイル又は動画ファイルから、オリジナル画像領域51へ画像データを取り込む。なお、本明細書において、静止画ファイルとは、静止画形式のデータファイルであり、動画ファイルとは、動画形式のデータファイルである。
【0034】
静止画ファイルから画像データを取り込む場合、ユーザは、入力部20を操作することにより、1の静止画ファイルを指定するか、又は1のフォルダを指定する。前者の場合、制御部40は、その静止画ファイルの記憶部30内のアドレスパスおよびファイル名をユーザに入力させる。後者の場合、制御部40は、そのフォルダの記憶部30内のアドレスパスおよびフォルダ名をユーザに入力させる。その後、制御部40は、指定された1の静止画ファイル又は指定された1のフォルダ内の全ての静止画ファイルを、オリジナル画像領域51に静止画ファイル群として保存する。なお、本明細書において、「群」という場合には、その要素数は複数とは限らず、1つであってもよい。
【0035】
一方、動画ファイルから画像データを取り込む場合、ユーザは、入力部20を操作することにより、1の動画ファイルの記憶部30内のアドレスパスおよびファイル名を入力する。制御部40は、ユーザが動画ファイルを指定したことを検知すると、基本画面W1上に動画取込みウィンドウ(図示されない)を重ねて表示させる。動画取込みウィンドウは、指定された動画ファイルの全タイムラインのうち、任意の長さのタイムラインの選択をユーザから受け付ける。制御部40は、ユーザが入力部20を介して任意の長さのタイムラインの選択を行ったことを検知すると、その選択に対応する静止画ファイル群を生成する。この静止画ファイル群は、ユーザの選択に係るタイムラインの動画に含まれるフレーム群に1対1で対応する。その後、制御部40は、この静止画ファイル群をオリジナル画像領域51に保存する。
【0036】
従って、本実施形態では、後述する画像処理の対象は、動画ファイルではなく、静止画ファイルである。静止画ファイルは、オリジナル画像領域51へファイル単位、フォルダ単位、あるいは動画ファイルの全部又は一部のタイムライン単位で取り込まれる。
【0037】
<2−2.静止画ファイル群の再生>
オリジナル画像領域51へ静止画ファイル群が取り込まれると、制御部40は、基本画面W1上に表示ウィンドウW2(
図3参照)を重ねて表示させる。表示ウィンドウW2は、オリジナル画像領域51への静止画ファイル群の取り込み動作の数だけ、表示される。
【0038】
表示ウィンドウW2内には、まず、オリジナル画像領域51へ取り込まれた静止画ファイル群に含まれる1の静止画ファイル(例えば、タイムライン上で先頭のフレームに対応する静止画ファイル)が表示される。なお、制御部40は、静止画ファイル群が動画ファイルに由来するものではなく、静止画ファイルに由来するものであっても、静止画ファイル群に含まれる静止画ファイルをタイムラインに沿って配列されているものと認識する。配列は、ファイルの属性(ファイル名、作成日時、更新日時等)から自動的に判断される。
【0039】
後述するとおり、表示ウィンドウW2内に表示されるフレームは、ユーザの操作を受けて切り替わる。制御部40は、表示ウィンドウW2内に現在表示されているフレームの識別情報をリアルタイムに管理する。
【0040】
制御部40は、表示ウィンドウW2内で、その表示ウィンドウW2に対応する静止画ファイル群を、動画として再生可能である。
図3に示すとおり、制御部40は、基本画面W1上に、ウィンドウ選択プルダウンメニューT1、再生ボタンT2、コマ送りボタンT3、コマ戻しボタンT4、タイムラインバーT5およびFPS設定エリアT6を表示する。
【0041】
表示ウィンドウW2が複数存在する場合であっても、アクティブな表示ウィンドウW2は1つである。ウィンドウ選択プルダウンメニューT1は、どの表示ウィンドウW2をアクティブとするかの選択をユーザから受け付ける。以下、アクティブな表示ウィンドウW2に対応する静止画ファイル群を、アクティブファイル群と呼ぶ。また、アクティブな表示ウィンドウW2内に現在表示されているフレームを、アクティブ表示フレームと呼ぶ。
【0042】
再生ボタンT2は、アクティブファイル群の動画としての再生の命令をユーザから受け付ける。制御部40は、ユーザが入力部20を介して再生ボタンT2を押下したことを検知すると、アクティブな表示ウィンドウW2内に、アクティブファイル群のフレームをタイムラインに沿って順次コマ送りの形式で表示させる。なお、再生は、再生ボタンT2が押下された時点のアクティブ表示フレームから開始する。また、再生ボタンT2は、再生の停止の命令をユーザから受け付ける。制御部40は、再生中にユーザが入力部20を介して再生ボタンT2を押下したことを検知すると、アクティブな表示ウィンドウW2内の表示を、その時点のアクティブ表示フレームに固定する。
【0043】
コマ送りボタンT3、コマ戻しボタンT4はそれぞれ、アクティブ表示フレームを、アクティブファイル群のタイムラインに沿って1つ後、1つ前のフレームへ切り替える命令をユーザから受け付ける。
【0044】
タイムラインバーT5は、アクティブファイル群のタイムラインを図式的に表す。タイムラインバーT5は、そのバーが延びる方向に、アクティブファイル群のフレーム数で等分に分割されている。タイムラインバーT5上の左からn番目の分割領域は、アクティブファイル群のタイムライン上でn番目のフレームに対応する(nは、自然数)。
【0045】
図3に示すように、タイムラインバーT5は、選択フレーム群に対応する分割領域A1と、非選択フレーム群に対応する分割領域A2とを異なる態様で表示する。選択フレーム群とは、アクティブファイル群のタイムライン上で現在選択されている区間に対応するフレーム群である。非選択フレーム群とは、アクティブファイル群のタイムライン上で現在選択されていない区間に対応するフレーム群である。本実施形態では、領域A1は、薄いトーンの色で表示され、領域A2は、濃いトーンの色で表示される。
【0046】
タイムラインバーT5は、アクティブファイル群のタイムライン上の任意の区間の選択をユーザから受け付ける。選択される区間は、連続区間であっても、不連続区間であってもよい。言い換えると、ユーザは、入力部20を介してタイムラインバーT5を操作することにより、アクティブファイル群の全フレームの中から、任意のフレームを任意の数だけ選択することができる。具体的には、ユーザは、タイムラインバーT5上で選択したいフレームに対応する分割領域を選択する。分割領域は、同時に複数選択が可能である。画像処理部41は、選択フレーム群を後述される画像処理の対象として認識する。なお、ユーザによりタイムラインバーT5上の分割領域が選択される度に、アクティブ表示フレームは、最新に選択された分割領域に対応するフレームに切り替わる。
FPS設定エリアT6は、アクティブファイル群の動画としての再生時のフレームレートを表示しつつ、その変更をユーザから受け付ける。
【0047】
<2−3.画像処理>
以下、選択フレーム群に対する画像処理(後述するアナログノイズ除去処理を除く。)について説明する。
画像処理部41は、ノイズ除去、シャープネス、明るさ/コントラスト/彩度調整、画像解像度、回転、画像平均、文字/矢印/モザイクの付加などの複数の画像処理モジュールを実行可能である。画像処理モジュールは、画像処理プログラム2に組み込まれている。
【0048】
ユーザは、入力部20を介して基本画面W1を操作することにより、画像処理モジュールの中から任意のものを、任意の順番に、任意の回数だけ選択することが可能である。必要であれば、ユーザは、画像処理モジュールの選択に併せて、その画像処理モジュールの実行時に用いられるパラメータを入力する。画像処理部41は、ユーザが画像処理モジュールを1つ選択したことを検知する度に、選択フレーム群に対しその画像処理モジュールを実行する。なお、選択フレーム群に対し画像処理モジュールを実行するとは、選択フレーム群に含まれる各フレームに対しその画像処理モジュールを実行することである。
【0049】
フレームに対し画像処理モジュールが1回、2回、3回,・・・と、順次実行されてゆくにつれて、そのフレームは、第1次、第2次、第3次,・・・と、順次加工されてゆく。第0次フレームは、オリジナル画像領域51に保存されている静止画ファイルに対応する。第(n+1)次フレームは、第n次フレームに対し画像処理モジュールを1回実行した後の静止画ファイルに対応する(nは、0以上の整数)。画像処理モジュールが順次実行されてゆくにつれて、第1次以降のフレームに対応する静止画ファイルが順次生成される。これらの静止画ファイルは、加工ファイル領域52内にそれぞれ別のファイルとして保存される。
【0050】
<2−4.アナログノイズ除去処理>
次に、アナログノイズ除去処理について説明する。画像処理部41は、アナログノイズ除去モジュールを実行可能である。アナログノイズ除去モジュールは、画像処理プログラム2に組み込まれている。以下、アナログノイズ除去処理の実行に適したフレーム群の一例(以下、対象フレーム群と呼ぶ。)について説明した後、対象フレーム群に対するアナログノイズ除去処理の流れについて説明する。
【0051】
<2−4−1.アナログノイズ除去処理の実行に適したフレーム群の例>
対象フレーム群は、防犯カメラ3により撮像され、ビデオテープレコーダ4により記録された動画に含まれるフレーム群である。
図4に示すように、防犯カメラ3は、同軸ケーブル6を介してビデオテープレコーダ4に接続され、ビデオテープレコーダ4にアナログビデオ信号を出力する。ビデオテープレコーダ4は、防犯カメラ3からのアナログビデオ信号を、アナログ式の記録媒体であるVHS(登録商標)テープ7に記録する。
【0052】
ユーザは、VHS(登録商標)テープ7に記録されている映像の画像処理を望む場合、ビデオキャプチャユニット8を介してビデオテープレコーダ4を画像処理装置1に接続する。ビデオキャプチャユニット8は、ビデオテープレコーダ4から送信されてくるアナログビデオ信号をデジタルビデオ信号に変換し、画像処理装置1に出力する。画像処理装置1には、エンコーダプログラム(図示されない)がインストールされている。エンコーダプログラムは、ビデオキャプチャユニット8からのデジタルビデオ信号を符号化し、画像処理プログラム2が取り込み可能な動画ファイル又は静止画ファイル群を生成するプログラムである。ユーザは、エンコーダプログラムを起動して、VHS(登録商標)テープ7に記録されている映像を含む動画ファイル又は静止画ファイル群を生成する。続いて、ユーザは、上述した態様で、その動画ファイル又は静止画ファイル群からオリジナル画像領域51へ画像データを取り込む。この時、オリジナル画像領域51に保存される静止画ファイル群に対応するフレーム群が、対象フレーム群である。
【0053】
本実施形態では、防犯カメラ3のフレームレートと、ビデオテープレコーダ4のフレームレートとが異なる。具体的には、防犯カメラ3のフレームレートは、1FPS(Frame Per Second)であり、ビデオテープレコーダ4のフレームレートは、29.97FPSである。従って、本実施形態では、防犯カメラ3のフレームレートと、ビデオテープレコーダ4のフレームレートとは、整数倍の関係にない。
【0054】
その結果、
図5に示すように、防犯カメラ3で撮像された1枚のフレームが、29枚のフレーム又は30枚のフレームとして、VHS(登録商標)テープ7に記録され得る。より正確には、防犯カメラ3のタイムラインに沿って1枚目のフレームは、29枚のフレームとして、2枚目のフレームは、29枚のフレームとして、3枚目のフレームは、30枚のフレームとして、4枚目のフレームは、29枚のフレームとして、5枚目のフレームは、29枚のフレームとして、6枚目のフレームは、30枚のフレームとしてVHS(登録商標)テープ7に順次記録され得、以下同様に続き得る。まとめると、防犯カメラ3のタイムラインに沿って(3n−2)枚目のフレームは、29枚のフレームとして、(3n−1)枚目のフレームは、29枚のフレームとして、3n枚目のフレームは、30枚のフレームとしてVHS(登録商標)テープ7に順次記録され得る(nは、自然数)。
【0055】
従って、防犯カメラ3の1枚のフレームに由来してVHS(登録商標)テープ7に記録されるフレーム数は、防犯カメラ3のフレームによって異なる。以下、VHS(登録商標)テープ7に記録されているフレームのうち、防犯カメラ3のタイムラインに沿ってn枚目のフレームに対応するフレームを、グループG(n)に属するものとする(nは、自然数)。また、グループG(n)の要素数を、I(n)と表す。そうすると、要素数I(n)をタイムラインに沿って配列したパターン(以下、要素数配列パターンと呼ぶ。)、すなわち、I(1),I(2),・・・は、周期性を有する。なお、周期性を有するとの表現は、その周期性に例外があることを妨げない。本実施形態では、要素数配列パターンの一周期は、概ね29枚、29枚、30枚である。
【0056】
本実施形態では、防犯カメラ3およびビデオテープレコーダ4は、インターレース方式である。従って、防犯カメラ3で撮像される1枚のフレームは、1つの奇数フィールドおよび1つの偶数フィールドからなる。同様に、VHS(登録商標)テープ7に記録される1枚のフレームも、1つの奇数フィールドおよび1つの偶数フィールドからなる。従って、VHS(登録商標)テープ7にタイムラインに沿って順次記録されるフレームの配列の中で、境界L付近のフレームは、防犯カメラ3の異なるフレームに由来する2つのフィールドを組み合わせた画像になる可能性が相対的に高い。
図5に示すように、境界Lとは、VHS(登録商標)テープ7にタイムラインに沿って順次記録されるフレームの配列の中で、グループG(n)に属するフレーム群と、グループG(n+1)に属するフレーム群との境界である(nは、自然数)。
【0057】
<2−4−2.アナログノイズ除去処理の流れ>
以下、対象フレーム群に対するアナログノイズ除去処理の流れについて説明する。上記のとおり、本実施形態では、対象フレーム群とは、アナログ式の防犯カメラ3およびビデオテープレコーダ4により録画されたものである。従って、対象フレーム群に含まれる各フレームは、ランダムノイズを含むが、対象フレーム群に対しアナログノイズ除去処理を実行することにより、そのランダムノイズを除去することができる。
【0058】
画像処理部41は、選択フレーム群を、アナログノイズ除去処理の実行の対象とする。従って、ユーザは、入力部20を操作することにより、アナログノイズ除去処理の実行の対象としたい対象フレーム群を、選択フレーム群として選択する。ただし、選択フレーム群にフレームが1つしか含まれない場合、アクティブファイル群のタイムライン上の全区間に対応するフレーム群が、アナログノイズ除去処理の実行の対象となるものとする。以下、簡単のため、選択フレーム群として、アクティブファイル群のタイムライン上の全区間に対応するフレーム群が選択されているものとして説明する。
【0059】
制御部40は、ユーザが入力部20を介して基本画面W1上で所定の操作を行ったことを検知すると、基本画面W1上にアナログノイズ除去ウィンドウW3(
図6参照)を重ねて表示させる。アナログノイズ除去ウィンドウW3は、アナログノイズ除去モジュールの実行時に用いられるパラメータの入力を受け付ける。アナログノイズ除去ウィンドウW3は、境界パターン指定エリアB1、端スキップ設定エリアB2、連動設定エリアB3、実行ボタンB4およびキャンセルボタンB5を表示する。
【0060】
パラメータ受付部43は、境界パターン指定エリアB1を介して、周期パターンの入力をユーザから受け付ける。周期パターンとは、要素数配列パターンの一周期として、ユーザが予想するものである。
図6に示されるように、本実施形態では、周期パターンの指定の方法としては、フレーム数と、そのフレーム数の周期パターン内での繰り返し回数との組を2組入力する方法が採られる。要素数配列パターンの一周期は、上述したとおり、概ね29枚、29枚、30枚である。従って、ユーザは、境界パターン指定エリアB1内で、29枚が2回繰り返し並び、その後、30枚が1回並ぶフレームの配列のパターンを指定すればよい。制御部40は、境界パターン指定エリアB1内で指定されている周期パターンに従って、タイムライン上に境界Lを規定し、選択フレーム群のグループG(1),G(2),・・・を認識する。
【0061】
制御部40は、タイムラインバーT5の表示の態様を、境界パターン指定エリアB1内で指定されている周期パターンに連動して変化させる。具体的には、
図6に示されるように、タイムラインバーT5上には、境界パターン指定エリアB1内で指定されている周期パターンに従って、グループG(1),G(2),・・・間の境界Lを示すラインT7が表示される。ラインT7は、タイムライン上で境界Lの前後の2つのフレームに対応する2つの分割領域の間に配置される。
【0062】
パラメータ受付部43は、端スキップ設定エリアB2を介して、始端および終端フレームの少なくとも一方を後述する平均処理から除外するか否かの設定をユーザから受け付ける。始端フレームとは、グループG(1),G(2),・・・内でタイムラインに沿って始端に位置するフレームである。終端フレームとは、グループG(1),G(2),・・・内でタイムラインに沿って終端に位置するフレームである。従って、始端フレームおよび終端フレームは、同じグループG(1),G(2),・・・内の他のフレームと類似していない可能性が相対的に高い。始端フレームおよび終端フレームは、上記のとおり、防犯カメラ3で異なるタイミングに撮像された2つのフレームの奇数および偶数フィールドの組み合わせである可能性が相対的に高いからである。従って、後述する平均処理の実行時に、始端フレームおよび終端フレームを除外することが適切になる場合がある。
【0063】
防犯カメラ3の異なるフレームのフィールドが合成されたフレームは、一見して判別され得る。従って、ユーザは、アクティブ表示フレームおよびサムネイル一覧T8(
図7参照)を参照しつつ、始端フレームおよび終端フレームの少なくとも一方を後の平均処理から除外するか否かを容易に判断することができる。サムネイル一覧T8とは、アクティブファイル群のタイムラインに属する全フレームのサムネイル画像を、そのタイムラインに沿って配列したものである。制御部40は、基本画面W1上でのユーザの所定の操作に応じて、タイムラインバーT5の表示とサムネイル一覧T8の表示とを切り替える。なお、サムネイル一覧T8上にも、境界パターン指定エリアB1内で指定されている周期パターンに従って、グループG(1),G(2),・・・間の境界Lを示すラインT9が表示される。ラインT9は、タイムライン上で境界Lの前後の2つのフレームの2つのサムネイル画像の間に配置される。
【0064】
制御部40は、タイムラインバーT5の表示の態様を、端スキップ設定エリアB2内の設定の内容に連動して変化させる。具体的には、
図8に示されるように、ユーザが端スキップ設定エリアB2内で始端フレームを除外することを選択すると、全グループG(1),G(2),・・・の始端フレームに対応するタイムラインバーT5上の分割領域が、第1色に変化する。終端フレームについても、同様である。第1色は、後の平均処理から除外されるフレームに対応する分割領域に付される色である。なお、後の平均処理から除外されないフレームに対応する分割領域には、第1色と異なる第2色が付される。従って、ユーザは、タイムラインバーT5上の分割領域の色を見ながら、どのフレームが後の平均処理から除外される状態になっているのかを容易に判断することができる。
【0065】
同様に、制御部40は、サムネイル一覧T8の表示の態様を、端スキップ設定エリアB2内の設定の内容に連動して変化させる。具体的には、サムネイル一覧T8上では、後の平均処理から除外されるフレームのサムネイル画像の表示は省略され、代わりにX印が表示される。従って、ユーザは、サムネイル一覧T8上のX印を見ながら、どのフレームが後の平均処理から除外される状態になっているのかを容易に判断することができる。
【0066】
ところで、ユーザは、例えば、サムネイル一覧T8を見ながら、始端フレームおよび終端フレームとは別に、後の平均処理から除外すべきフレームを見つけるかもしれない。後の平均処理から除外すべきフレームとは、例えば、防犯カメラ3の異なるフレームのフィールドが合成されたフレームの他、ノイズが異常に多く混ざっている等、一見して同じグループG(1),G(2),・・・内の他のフレームと類似しないフレームである。パラメータ受付部43は、タイムラインバーT5およびサムネイル一覧T8を介して、後の平均処理から除外すべきフレームの選択をユーザから受け付ける。具体的には、ユーザは、タイムラインバーT5上で除外すべきフレームに対応する分割領域に所定の操作(例えば、クリック)を加えるか、又は、サムネイル一覧T8上で除外すべきフレームのサムネイル画像に所定の操作(例えば、クリック)を加える。除外すべきフレームとしては、アクティブファイル群の全フレームのうち、任意のものが任意の数だけ選択可能である。また、ユーザは、タイムラインバーT5又はサムネイル一覧T8を同様に操作することにより、後の平均処理から除外すべきとして選択されている任意のフレームについて、平均処理に加え直すべくその選択を解除することができる。
【0067】
制御部40は、タイムラインバーT5およびサムネイル一覧T8の表示の態様を、この選択および選択解除の操作の内容に連動して変化させる。具体的には、制御部40は、選択の操作を検知すると、除外すべきとして選択されたフレームに対応するタイムラインバーT5上の分割領域を第1色に変化させ、除外すべきとして選択されたフレームのサムネイル一覧T8上のサムネイル画像をX印に変化させる。一方、制御部40は、選択解除の操作を検知すると、除外を解除すべきとして選択されたフレームに対応するタイムラインバーT5上の分割領域を第2色に変化させ、除外を解除すべきとして選択されたフレームに対応するサムネイル一覧T8上のX印をサムネイル画像に変化させる。
【0068】
パラメータ受付部43は、タイムラインバーT5又はサムネイル一覧T8を介して、任意の境界Lをタイムライン上で任意の位置に移動させる指示をユーザから受け付ける。ユーザは、この移動の指示として、ラインT7,T9をドラッグアンドドロップする等し、タイムラインバーT5又はサムネイル一覧T8上で任意のラインT7,T9を任意の位置に移動させる。なお、境界Lを移動させることは、境界Lの位置を指定し、タイムライン上でその境界Lの直前および直後のグループG(n)を再定義することに等しい。また、境界Lを移動させることは、要素数配列パターンの周期性の例外を指定することである。
【0069】
パラメータ受付部43は、連動設定エリアB3を介して、境界Lの移動に、タイムラインに沿ってその境界Lよりも後ろの全ての境界Lの移動を連動させるか否かの設定をユーザから受け付ける。ユーザが境界Lを移動させた時に、連動設定エリアB3上で連動が設定されていた場合には、パラメータ受付部43は、タイムライン上でその境界L以降の全ての境界Lの位置、第1色が付される位置および×印の位置を平行移動させる。この時、タイムラインに沿ってその境界Lの直前のグループG(n)以降の全てのグループG(n)が再定義されることになる。なお、タイムラインバーT5およびサムネイル一覧T8上では、連動により移動した境界Lを示すラインT7,T9の位置、第1色が付される位置および×印の位置も、連動して切り替わる。一方、ユーザが境界Lを移動させた時に、連動設定エリアB3上で連動が設定されていなかった場合には、タイムラインに沿ってその境界Lの直前および直後のグループG(n)のみが再定義されることになる。
【0070】
また、パラメータ受付部43は、タイムラインバーT5又はサムネイル一覧T8を介して、境界Lをタイムライン上の任意の位置に追加する指示をユーザから受け付ける。ユーザは、この追加の指示として、例えば、タイムラインバーT5又はサムネイル一覧T8上で、境界Lを追加したい位置の直前のフレームに対応する分割領域又はサムネイル画像の真下をダブルクリックする。この操作を受けて、制御部40は、タイムラインバーT5又はサムネイル一覧T8上の、境界Lの前後のフレームに対応する2つの分割領域間又はサムネイル画像間にラインT7,T9を追加する。なお、境界Lを追加することは、境界Lの位置を指定し、タイムライン上でその境界Lの直前および直後のグループG(n)を再定義することに等しい。また、境界Lを追加することは、要素数配列パターンの周期性の例外を指定することである。
【0071】
実行ボタンB4は、アナログノイズ除去処理を実行する指示をユーザから受け付ける。キャンセルボタンB5は、アナログノイズ除去処理の実行をキャンセルする指示をユーザから受け付ける。画像処理部41は、実行ボタンB4が押されたことを検知すると、
図10に示すアナログノイズ除去処理を開始する。実行ボタンB4の押下時に、エリアB1,B2、タイムラインバーT5およびサムネイル一覧T8内で設定されている内容は、アナログノイズ除去モジュールの実行時にパラメータとして用いられる。
【0072】
まず、ステップS1では、グループ分割部42は、境界パターン指定エリアB1内で指定された周期パターンに従って、選択フレーム群をタイムラインに沿って仮想的にグループG(1),G(2),・・・に分割する。この時、グループG(1),G(2),・・・の要素数は、前述の理由から、グループG(n)によって異なり、かつ、境界パターン指定エリアB1内で指定された周期パターンに完全に従って、タイムラインに沿って周期的に現れる。ただし、グループ分割部42は、タイムラインバーT5又はサムネイル一覧T8を介して境界Lが追加又は移動させられていた場合には、追加後又は移動後の境界Lのセットに従って、グループG(1),G(2),・・・を修正する。修正されたグループG(1),G(2),・・・の要素数は、例外を示しつつ、周期パターンに従って、タイムラインに沿って周期的に現れることになる。
【0073】
続いて、ステップS2では、画像処理部41は、グループ分割部42により分割されたグループG(n)の単位で、選択フレーム群からランダムノイズを除去する。具体的には、画像処理部41は、各グループG(1),G(2),・・・について、以下の平均処理を実行する。グループG(1)についての平均処理は、以下のとおりである。
【0074】
画像処理部41は、グループGe(1)を定義する。グループGe(1)とは、グループG(1)に属する全フレームから、端スキップ設定エリアB2内で除外すべきとして選択された始端フレームおよび終端フレームの少なくとも一方と、タイムラインバーT5又はサムネイル一覧T8上で除外すべきとして選択されたフレームとを除外したグループである。そして、画像処理部41は、グループGe(1)に含まれる全フレームを平均化し、1枚のフレームを生成する。具体的には、画像処理部41は、各画素について、グループGe(1)に含まれる全フレームの画素値の平均値を算出し、各画素について、算出された平均値を画素値とする新たな1枚のフレームを生成する。新たに生成されたフレームの静止画ファイルは、グループGe(1)に含まれる全フレームの静止画ファイルとは別のファイルとして、加工ファイル領域52内に保存される。
【0075】
以後、グループG(2),・・・についても、同様の平均処理が実行される。全グループG(1),G(2),・・・についての平均処理が終了すると、グループG(1),G(2),・・・の数だけ新たなフレームが生成されることになる。以後、制御部40は、これらの新たなフレーム群を、新たなタイムライン上の動画として管理する。
【0076】
続くステップS3では、制御部40は、この新たなタイムラインに対応する表示ウィンドウW2を新たに作成し、基本画面W1上に表示する。
図11は、
図8および
図9の状態のアナログノイズ除去ウィンドウW3上で実行ボタンB4が押下され、アナログノイズ除去処理が実行された後の基本画面W1の図である。
図12、
図8および
図9のFPS設定エリアT6を比較すれば分かるように、制御部40は、選択フレーム群のフレームレートから、この新たなタイムラインのフレームレートを算出する。その後、アナログノイズ除去処理が終了する。
【0077】
<3.用途>
上記のとおり、画像処理プログラム2は、静止画又は動画ファイルのどちらから画像データを取り込もうとも、その後、画像データを静止画ファイル群として管理する。従って、画像処理プログラム2は、同じタイムラインの中の任意のフレームを任意に画像処理したいというユーザの要望に容易に応えることができる。また、画像処理プログラム2は、静止画ファイル群を動画として再生する機能を有している。その結果、画像データが画像処理プログラム2内で静止画ファイル群として取り扱われようとも、ユーザは、その画像データを動画として認識することができる。従って、画像処理プログラム2は、動画の解析や編集等を行う場面で特に有用である。
【0078】
画像処理プログラム2は、多種多様な動画に対する画像処理を取り扱うことができるが、例えば、警察等の機関が事件の捜査のために防犯カメラの監視映像を解析するのにも利用され得る。本実施形態に係るアナログノイズ除去処理は、例えば、防犯カメラにより撮像され、ビデオレコーダにより記録された監視映像からランダムノイズを除去するのに有用である。
【0079】
<4.特徴>
<4−1>
ステップS1では、ユーザにより指定された周期パターンに従って、グループG(1),G(2),・・・の要素数がタイムラインに沿って周期的に現れるように、選択フレーム群がタイムラインに沿って複数のグループG(1),G(2),・・・に分割される。続くステップS2では、グループG(n)単位で、選択フレーム群からランダムノイズが除去される。つまり、選択フレーム群が、同じ要素数を有するグループに画一的に分割されるのではなく、ユーザにより指定された周期パターンの周期性に従って、異なる要素数を有するグループG(1),G(2),・・・に分割される。従って、類似しているフレームどうしを同じグループG(1),G(2),・・・に分類しやすくなる。その結果、ランダムノイズを高精度に除去することが可能になる。
【0080】
<4−2>
ユーザは、境界パターン指定エリアB1内で、フレーム数を2つ指定し、指定した各フレーム数についての繰り返し回数を入力することにより、周期パターンを指定することができる。従って、ユーザは、類似フレームが現れる周期性を簡単に指定することができる。
【0081】
<4−3>
一般に、グループG(1),G(2),・・・内の始端フレームおよび終端フレームは、同じグループ内の他のフレームと類似していない可能性が相対的に高い。上記実施形態では、ユーザは、端スキップ設定エリアB2を介して、グループG(1),G(2),・・・内で始端フレームおよび終端フレームの少なくとも一方を、ステップS2の平均処理から除外するように指定することができる。その結果、ランダムノイズの除去の精度がさらに向上する。
【0082】
<4−4>
一般に、タイムライン上では、類似フレームがある周期性に従って現れると予想される場合であっても、例外が存在し得る。上記実施形態では、ユーザは、タイムラインバーT5又はサムネイル一覧T8を介して、タイムライン上の任意のフレームを例外のフレームとして指定することができる。そして、ステップS2では、ユーザにより指定された例外のフレームが除外された上で、平均処理が実行される。また、上記実施形態では、ユーザが、周期パターンを指定することにより、大まかな周期性を指定しつつ、グループG(n)間の境界Lの位置を指定することにより、周期性の例外を指定することができる。そして、大まかな周期性とその例外とに従って、平均処理が実行される。その結果、ランダムノイズの除去の精度がさらに向上する。
【0083】
<4−5>
上記実施形態では、ユーザが、タイムラインバーT5又はサムネイル一覧T8を介して、周期パターンに従って規定されるグループG(n)間の境界Lの位置の移動を指示することができる。そして、特定の境界Lの位置が移動されると、その境界だけでなく、タイムライン上でその境界よりも後ろの境界が連動して移動される。従って、類似フレームが現れる周期性の例外を簡単に指定することができる。
【0084】
<5.変形例>
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて、種々の変更が可能である。例えば、以下の変更が可能である。
<5−1>
アナログノイズ除去処理は、上記実施形態で例示された対象フレーム群に対してのみ適用可能なのではなく、タイムライン上で類似フレームの連続枚数が概ね周期性を持って現れるような任意のフレーム群に対して適用可能である。
【0085】
<5−2>
ステップS2では、フレーム群から新たに生成されるフレームの各画素の画素値(代表値)として、フレーム群のその画素の画素値の平均値が算出された。しかしながら、フレーム群からランダムノイズを除去する方法は、平均値を算出する方法に限られない。例えば、各画素について、所定の刻み毎にフレーム群の画素値のヒストグラムを作成し、最大分布の刻みの画素値を、その画素の代表値としてもよい。なお、平均値を算出する方法としては、相加平均値や相乗平均値、調和平均値を算出する等、複数の画素値を均す様々な方法を適宜選択し得る。
<5−3>
周期パターンの指定の方法は、上述したものに限られない。例えば、フレーム数と、そのフレーム数の周期パターン内での繰り返し回数との組を3組以上指定できるようにしてもよい。
【0086】
<5−4>
上記実施形態では、防犯カメラ3およびビデオテープレコーダ4の両方が、インターレース方式であったが、
図10のアナログノイズ除去処理は、インターレース方式でない機器によって撮像され、記録されたフレーム群に対しても適用可能である。しかし、
図10のアナログノイズ除去処理は、撮像装置および記録装置の少なくとも一方がインターレース方式である場合に、特に効果的である。
【0087】
<5−5>
上記実施形態では、ステップS2で生成されたフレーム群は、新たなタイムライン上で管理されるようになっていたが、元のタイムライン上で管理してもよい。そして、その場合には、制御部40が、ユーザによる所定の操作に応じて、表示ウィンドウW2内の表示を、ステップS2の処理の前後のフレーム間で適宜切り替え可能にすることが好ましい。さらに、その場合にも、ステップS2の処理後のフレーム群の静止画ファイル群を、ステップS2の処理前のフレーム群の静止画ファイル群とは別のファイルとして、加工ファイル領域52内に保存することが好ましい。表示ウィンドウW2内の表示を瞬時に切り替え可能になるからである。さらに、その場合には、グループG(n)に含まれるが、グループGe(n)には含まれないフレーム(すなわち、エリアB2、タイムラインバーT5、サムネイル一覧T8を介して除外されたフレーム)については、元のタイムラインから削除してもよい。同じタイムライン(すなわち、元のタイムライン)上に、ランダムノイズが除去されたフレームと、除去されていないフレームが混ざるのを防ぐためである。
【0088】
<5−6>
上記実施形態では、オリジナル画像領域51へ取り込まれた画像データは、全て静止画ファイルとして保存されるようになっていた。しかしながら、オリジナル画像領域51へ取り込まれた画像データを、動画ファイルとして保存するようにしてもよい。オリジナル画像領域51内の画像データの形式を静止画形式とするか動画形式とするかは、ユーザが選択できるようにしてもよいし、取り込み元の画像データの形式等に応じて自動的に決定されるようにしてもよい。
さらに、その後、動画ファイルに対して画像処理が施される場合には、その画像処理後の画像データも動画ファイルの形式で保存するようにしてもよい。