画像処理装置、画像処理方法、及びプログラム
【課題】簡易な構成で適切に動きぼけ付加処理を行い、ジャーキネス劣化を低減させた画像を得る。
【解決手段】入力された動画像データにおける処理対象フレームについて、領域毎の静動判定の結果と、撮像時の撮像情報とに基づいて動きぼけ付加処理を行う。例えば動領域と判定された領域について、シャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報等の撮像情報により、動きぼけ量を示す評価値を生成し、評価値に基づいて動きぼけ付加処理を行う。これによって、フレーム内の領域毎に動きベクトルを検出するという処理負担の大きい処理を不要とする。
【解決手段】入力された動画像データにおける処理対象フレームについて、領域毎の静動判定の結果と、撮像時の撮像情報とに基づいて動きぼけ付加処理を行う。例えば動領域と判定された領域について、シャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報等の撮像情報により、動きぼけ量を示す評価値を生成し、評価値に基づいて動きぼけ付加処理を行う。これによって、フレーム内の領域毎に動きベクトルを検出するという処理負担の大きい処理を不要とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画像に対して動きぼけを付加する画像処理を行う画像処理装置、画像処理方法、及びその画像処理をコンピュータ等の演算処理装置に実行させるプログラムに関する。
【背景技術】
【0002】
【特許文献1】特開2007−274299号公報
【0003】
シャッタ機能を有する撮像装置によりフレームレートで決定される期間に対して各フレームが短い有効露光時間で撮像された動画像を、表示デバイスを用いて表示すると、画像中に含まれる移動物体の動きが不連続に表示され、画像を観察する観察者が多重像を知覚してしまうという視覚上の画像劣化が発生する場合がある。
このような動きの不自然さによる動画像の劣化は、一般的にモーションジャーキネス(Motion Jerkiness)と呼ばれる(参考文献:ANSI T1.801.02-1996)。
【0004】
モーションジャーキネスが発生する具体例について、図20に示す動画像撮像装置500及び動画像再生装置600を用いて説明する。
動画像撮像装置500は、動画像を撮像してMPEG(Moving Picture Experts Group)などの規格で符号化し、この符号化された画像データをDVD(Digital Versatile Disc)などの記録媒体700に記録するものであり、具体的には次のような構成を有している。
【0005】
即ち動画像撮像装置500は、被写体像からの光を集光する撮像光学系510と、この撮像光学系510により集光された光を受光して画像信号に変換する撮像素子520と、この撮像素子520により変換された画像信号を符号化する符号化処理部530を有する。
また動画像撮像装置500は、符号化処理部530により符号化された画像データを所定の伝送路を介して外部へ送信する送信処理部540と、符号化処理部530により符号化された画像データをDVDなどの記録媒体700に記録する記録処理部550を備える。
【0006】
撮像光学系510は、外部から入射する被写体光の光量を調節する絞り機構511と、絞り機構511により光量を調節された被写体光を撮像素子520の受光面に集光させる光学レンズ系512とから構成される。
【0007】
一方、動画像再生装置600は、符号化された画像データを復号して、ディスプレイなどに表示出力するものであり、具体的には次のような構成を有している。
即ち動画像再生装置600は、所定の伝送路を介して伝送されてくる符号化された画像データを受信する受信処理部610と、記録媒体700から符号化された画像データを読み出す読出処理部620を有する。
また動画像再生装置600は、受信処理部610及び読出処理部620から出力される符号化された画像データを復号する復号処理部630と、復号処理部630によって復号された画像信号を表示するディスプレイなどの表示出力部640とを備える。
【0008】
例えば明るい野外などで動画像を撮像するとき、このような従来の動画像撮像装置500では、絞り機構511を絞ることによって撮像素子520に入射させる光量を制限して露光量を適切に制御している。
しかしながら、通常、絞り機構511を絞りすぎると回折現象により像がぼやけてしまう。このため、動画像撮像装置500では、絞り機構511によって光量を調節するのに加えて、シャッタ速度を短くすることで適切な露光制御を行っている。
また、絞り機構が設けられていない動画像撮像装置では、シャッタ速度を変更することで露光制御を行っている。
【0009】
このようにして、従来の動画像撮像装置500では、シャッタ速度を短くすることで、野外撮影などにおいて適切な露光制御を行うことができるが、これに伴って次のような現象が現れてくる。
すなわち、従来の動画像撮像装置500では、シャッタ速度を短くしすぎると、人間の視覚特性によって画像の動きに滑らかさを欠いた現象となって現れてしまう。
【0010】
このような動きの不自然さによる動画像の劣化は、一般的にモーションジャーキネス(Motion Jerkiness)と呼ばれる。すなわち、動画像再生装置600は、動画像撮像装置500によってジャーキネス劣化を含んで撮像されると、そのままジャーキネス劣化を含んだ画像データを復号して表示出力部640により表示することとなる。
【発明の開示】
【発明が解決しようとする課題】
【0011】
上述したように、動画像のフレームレートに対して非常に高速のシャッタ速度で撮像された画像は、静止画像として表示したときには鮮鋭度が高いが、動画像として表示したときには画像中の動体の動きが滑らかではなく、人間の視覚特性上、不自然に見えてしまう。
そこで上記特許文献1に記載されているように、本出願人は先に、動画像についての動きベクトルを検出し、動きベクトルを用いて動画像に適切に動きぼけを付加する技術を提案した。
ところが、例えば動画像を構成する各フレームの各領域毎に動きベクトルを検出する処理は、処理負担が大きく、簡易な装置やシステムには不向きとなる場合がある。
そこで本発明は、処理負担の少ない簡易な手法で、動画像に適切に動きぼけを付加し、ジャーキネス劣化を低減できる画像処理装置、画像処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の画像処理装置は、動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定手段と、上記動画像データに対し、上記静動判定手段の判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加手段とを備える。
また上記動きぼけ付加手段は、上記動画像データの各処理対象画像について、上記静動判定手段によって動領域と判定された領域に、上記撮像情報に基づいて動きぼけを付加する処理を行う。
また上記静動判定手段は、静領域か動領域かの判定結果と、上記撮像情報とに基づいて領域毎の評価値を生成し、上記動きぼけ付加手段は、上記評価値に基づいて、上記動画像データの各処理対象画像に動きぼけを付加する処理を行う。
また上記静動判定手段は、上記撮像情報取込手段からの複数種類の撮像情報を用いた重み付け演算処理により上記評価値を生成する。
【0013】
また上記動きぼけ付加手段では、上記撮像情報としてのシャッタ速度情報によるシャッタ速度が速いほど動きぼけ量を大きくする動きぼけ付加処理が行われる。
また上記動きぼけ付加手段では、上記撮像情報としての絞り値情報による絞り値が大きいほど動きぼけ量を大きくする動きぼけ付加処理が行われる。
また上記動きぼけ付加手段では、上記撮像情報としての焦点距離情報による焦点距離が遠いほど動きぼけ量を大きくする動きぼけ付加処理が行われる。
また上記動きぼけ付加手段では、上記撮像情報としてのジャイロスコープ回転量情報によるジャイロスコープ回転量が大きいほど動きぼけ量を大きくする動きぼけ付加処理が行われる。
【0014】
また上記動きぼけ付加手段は、動画像データに対し、動画像を構成する各単位画像を処理対象画像とし、上記処理対象画像から1つ以上の解像度の異なる縮小画像を生成する縮小画像生成部と、上記処理対象画像の注目画素に位置的に対応する画素を上記縮小画像から抽出し、上記静動判定手段の判定結果と上記撮像情報とに基づく値を基に、上記注目画素および上記縮小画像から抽出した1つ以上の抽出画素について、重み付け加算処理を行って、上記処理対象画像に動きぼけを付加する画素合成処理部とを有する。
【0015】
また被写体を撮像して動画像を生成する撮像手段をさらに備え、上記撮像手段での撮像によって得られた動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される。
また記録媒体の再生動作により動画像データを再生する再生手段をさらに備え、上記再生手段で再生された動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される。
また動画像データを受信する受信手段をさらに備え、上記受信手段で受信された動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される。
【0016】
本発明の画像処理方法は、動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定ステップと、上記動画像データに対し、上記静動判定ステップでの判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加処理ステップとを有する。
本発明のプログラムは、上記静動判定ステップと上記動きぼけ付加処理ステップを演算処理装置に実行させるプログラムである。
【0017】
このような本発明では、入力された動画像データにおける処理対象画像(例えば1フレームの画像データ)について、領域毎の静動判定の結果と、撮像時の撮像情報とに基づいて動きぼけ付加処理を行う。静動判定は、フレーム内の領域(画素単位或いは複数画素による画素ブロック単位)毎について動領域か静領域かを判定する処理であり、例えば前後フレームの比較などの簡易な処理で可能である。
また撮像情報とは、例えばシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報(例えば撮像装置の水平方向、垂直方向の動きを示す情報)などである。
これらの静動判定結果と撮像情報にもとづいて、動画像についてジャーキネス劣化が発生しやすい領域に動きぼけを付加する。これによって、フレーム内の領域毎に動きベクトルを検出するという処理負担の大きい処理を不要とする。
【発明の効果】
【0018】
本発明によれば、動画像に対して、その撮像時の撮像情報や静動判定に応じて適切な動きぼけを処理対象画像毎に付加することができ、人間の視覚特性上、より自然にジャーキネス劣化が低減された動画像を出力することができる。
特に、動きベクトル検出等の負担の重い処理を行わなくて良いことから、簡易に適切な動きぼけ付加処理を行うことができ、装置の簡易化、低コスト化に適している。
【発明を実施するための最良の形態】
【0019】
以下、本発明を実施するための最良の形態について、図面を参照しながら詳細に説明する。本発明の実施の形態としての画像処理装置は、人間の視覚特性上、不自然に見えてしまうジャーキネス劣化を含んだ動画像に対して動きぼけを付加して、このような劣化を低減するものである。
説明は次の順序で行う。
[1.基本構成例]
[2.第1の実施の形態:動画像撮像装置]
[2−1:動画像撮像装置の全体構成]
[2−2:撮像情報及び評価値生成]
[2−3:動きぼけ付加部の構成例及び動作]
[2−4:まとめ]
[3.第2の実施の形態:再生・受信装置]
[4.プログラム]
【0020】
[1.基本構成例]
まず本発明の実施の形態の画像処理装置としての基本的な構成例を図1で説明する。後述する第1の実施の形態は、この図1の画像処理装置100の構成を含む動画像撮像装置であり、第2の実施の形態は、この図1の画像処理装置100の構成を含む再生・受信装置となる。
【0021】
実施の形態の基本構成としての画像処理装置100は、画像処理を用いて、ジャーキネス劣化を低減した画像を生成することを目的としている。
撮像した動画像を表示装置を用いて表示した際には、人間の視覚特性上において不自然に感じるジャーキネス劣化が生じることがある。
そこで実施の形態では、入力された動画像が撮像された際の撮像情報を用いて、適切に動きぼけを付加することでジャーキネス劣化の発生を低減する。これによって画質劣化の少ない高画質な画像信号を生成して出力し、高画質化処理を実現する。
【0022】
図1の画像処理装置100は、画像取込部1と、動領域判定部2と、動きぼけ付加部3を備える。
画像取込部11は画像データを当該画像処理装置100に取り込む部位としている。例えば撮像装置などから動画像としての画像データDDを取得する。そして画像データDDを動領域判定部2及び動きぼけ付加部3に供給する。
取り込まれた画像データDDに対応しては、撮像情報CIとして、シャッタ速度、絞り値、焦点距離、ジャイロスコープ情報などの撮影時の情報が存在する。画像取込部1は、取り込んだ画像データDDについての、これらの撮像情報CIを抽出し、動領域判定部2に供給する。
【0023】
動領域判定部2は、画像データDDの前後フレームの差分を基にして、動いている物体の検出を行う。例えば処理対象とするフレーム内での領域(画素単位或いは複数画素による画素ブロック単位)毎について動領域か静領域かを判定する。
また、動領域判定部2は、撮像情報CIを基にして、動物体におけるジャーキネス劣化の発生度合いを示す評価値を生成し、動きぼけ付加部3に与える。
【0024】
動きぼけ付加部3は、動領域判定部2から与えられる評価値に基づき、入力される画像データDDに対して、擬似的に動きぼけを発生させる。これによりジャーキネス劣化を低減させた出力画像データODを出力する。動きぼけの発生アルゴリズムは、多様に考えられるが、その一例を後述する第1の実施の形態の説明中で述べる。
【0025】
このような画像処理装置100では、入力された画像データDDにおける処理対象画像(例えば1フレームの画像データ)について、動領域判定部2で行われる領域毎の静動判定の結果と、撮像情報CIとに基づいて動きぼけ付加部3が動きぼけ付加処理を行う。即ち静動判定結果と撮像情報CIにもとづいて、動きぼけ付加部3が動画像についてジャーキネス劣化が発生しやすい領域に動きぼけを付加することになる。これによって、フレーム内の領域毎に動きベクトルを検出するという処理負担の大きい処理を不要としながら、適切な動きぼけ付加を実現し、ジャーキネス劣化を低減させる。
【0026】
[2.第1の実施の形態:動画像撮像装置]
[2−1:動画像撮像装置の全体構成]
第1の実施形態として、被写体を撮像して、その撮像した動画像に上述した動きぼけ付加処理を施して出力する動画像撮像装置200の構成について、図2を参照して説明する。
【0027】
この動画像撮像装置200は、動画像を撮像して、撮像画像をDVDなどの記録媒体90に記録したり、外部機器に送信するものである。
この動画像撮像装置200は、図2に示すように、撮像光学系10として、絞り機構11、光学レンズ系12、撮像素子部13を備える。
【0028】
絞り機構11は、外部から入射する被写体光の光量を調節する。
光学レンズ系12は、絞り機構11により光量が調節された被写体光を撮像素子部13の受光面に集光させる。
撮像素子部13は、光学レンズ系12により集光された光を受光面で受光し、画像信号に変換する。そして所定の信号処理を行って動画像としての画像データDDを出力する。
撮像素子部13から出力される画像データDDは、動きぼけ付加部30及び動領域判定部40に供給される。
なお、画像データDDは、例えばフレームレート60fpsのプログレッシブ形式の単位画像から構成されるものとするが、プログレッシブ形式に限定されるものではなく、インタレース方式で動画像の単位画像が構成されているようにしても良い。
【0029】
また動画像撮像装置200は、ジャイロセンサ14を備え、動画像撮像装置200自体の動きを検出する。例えば水平方向、垂直方向の回転量情報を検出する。この回転量の情報は、いわゆる手ぶれ補正などに利用されるとともに、本例では動きぼけ付加のための撮像情報CIの1つとしても用いられる。
【0030】
制御部20は、動画像撮像装置200の全体の動作を制御する。例えばマイクロコンピュータにより構成される。この制御部20は、撮像動作制御、信号処理制御、記録媒体90への記録動作制御、外部機器への送信動作制御などを行う。
撮像動作制御としては、制御部20は、撮像時に撮像光学系10に対してレンズ駆動によるフォーカス制御、ズーム制御を行う。また絞り機構11の開閉制御や撮像素子部13でのシャッタ速度制御、信号ゲイン制御などにより露光調整制御を行う。また例えばジャイロセンサ14からの動画像撮像装置200自体の動きの検出に基づいた、ぶれ補正処理制御などを行う。
各制御動作についての詳述は避けるが、本例の画像処理に関する処理として、制御部20は撮像情報CIを出力するものとなる。即ち上記のような撮像時の制御動作からは、得られる画像データDDについてのシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報などを得ることができるが、これらを撮像情報CIとして動領域判定部40に供給する。
【0031】
動領域判定部40は、図5により後述するが、画像データDDの前後フレームの差分を基にして、フレーム内での領域(画素単位或いは複数画素による画素ブロック単位)毎について動領域か静領域かを判定する。また、動領域判定部40は、撮像情報CIを基にして、動物体におけるジャーキネス劣化の発生度合いを示す評価値Eを生成し、動きぼけ付加部30に与える。
動きぼけ付加部30は、その構成及び処理については図6〜図18で詳述するが、動領域判定部40から与えられる評価値に基づき、入力される画像データDDに対して、擬似的に動きぼけを発生させる。この場合、ジャーキネス発生と見込まれる領域にその発生量に応じた動きぼけ付加を行う。適応的に動きぼけ付加を行うことでジャーキネス劣化を低減させた出力画像データODを出力する。
【0032】
動きぼけ付加部30にて、適応的に動きぼけを付加した画像データODは、動画像符号化処理部50で圧縮処理される。圧縮されたデータストリームは、送信処理部60又は記録処理部70に供給される。
送信処理部60は、圧縮されたデータストリームに対して、所定の送信用のエンコード及び変調処理を行い、外部機器に送信出力する。
記録処理部70は、圧縮されたデータストリームに対して、所定の記録用のエンコード及び変調処理を行い、例えば光ディスクその他の記録媒体90に記録する。
なお制御部20は、撮像情報CIを送信処理部60、記録処理部70にも与える。送信処理部60、記録処理部70は、送信データ、または記録データに撮像情報CIを重畳させて送信や記録を行うこともできる。
【0033】
[2−2:撮像情報及び評価値生成]
このような構成の動画像撮像装置200では、動領域判定部40が、画像データDDのフレーム毎に動領域を判定する。そして動領域に対して動きぼけ付加部30で動きぼけを付加するわけであるが、動領域判定部40は、この動きぼけ付加処理のために評価値を生成して動きぼけ付加部30に与える。この評価値は、撮像情報CIを用いて生成する。
制御部20が動領域判定部40に与える撮像情報CIは、シャッタ速度情報S、絞り値情報F、焦点距離情報D、ジャイロスコープ回転量情報GX(水平方向の回転量)、GY(垂直方向の回転量)とする。
そして動領域判定部40が生成する評価値Eは、例えばフレーム内の各動領域について、それぞれどの程度の動きぼけを付加するかを示す情報となる。
【0034】
図3,図4を用いて、動領域判定部40が撮像情報CIに基づく評価値を生成する際の考え方を示す。
この図3,図4は、動領域判定部40が、制御部20から与えられる撮像情報CIに応じて評価値Eを制御するためのテーブルである。この図3,図4において評価値Eを縦軸とし、その値の高低を示しているが、評価値Eが「高い」というのは、被写体の動きが大きく、ジャーキネス劣化が大きい状態であって、動きぼけ量を多く付加すべきことを意味するものとする。
【0035】
図3(a)は撮像情報CIの1つとしてシャッタ速度Sを横軸に示している。
上述のように制御部20は、撮像素子部13の駆動における電子シャッタ機能の制御情報から、撮像時のシャッタ速度を得ることが出来る。
動領域判定部40は、供給されたシャッタ速度情報で示されるシャッタ速度が、画像データDDのフレームレートよりも高速な場合、その速度の比率に応じて動領域の評価値を増加させる。また、シャッタ速度情報で示されるシャッタ速度がフレームレートと同等の場合には評価値を下げ、動きぼけ付加処理が無効になるようにする。
なお、フレームレートは「fps」即ち「フレーム/秒」で表され、例えばフレームレート=60fpsでは、1秒間に60フレームであることを意味するが、この場合、撮像素子における1フレームの電子シャッタの露光時間は、通常は、最大1/60秒である。これがここでいうシャッタ速度である。一般に露光制御などのために電子シャッタ制御が行われるが、その場合、1フレーム期間のうちで露光期間を変化させる。例えば1/60秒のうちの露光時間(シャッタ速度)を1/120秒、1/180秒、1/1000秒などのように変化させることで露光調整が行われる。
動領域判定部40は、このような意味でのシャッタ速度Sを、当該フレームレートにおける本来のシャッタ速度(例えば1/60秒)と比較して評価値Eを生成する。
【0036】
シャッタ速度をSとし、特にシャッタ速度Sに応じた評価値をEsとすると、
Es=fs(S)
で評価値を操作する。関数fs(x)が線形増加関数であるとすれば、図3(a)に実線で示すようになる。
なお、非線形関数であってもよく、例えば図中に破線で示すようにシャッタ速度Sに応じた評価値Eを生成するものであってもよい。
【0037】
図3(b)は、動領域判定部40が、制御部20から与えられる絞り値Fに応じて、評価値を制御するためのテーブルである。
制御部20は、撮像光学系10の制御情報から、撮像時の絞り値Fを得ることが出来る。
動領域判定部40は、絞り値Fが小さい場合、被写界深度が浅くなり被写体前後がぼけやすくなるためジャーキネス劣化が発生しにくいと判断し、評価値Eを下げる。一方、絞り値Fが大きい場合、被写界深度が深くなり画像全体に渡ってシャープになるため、ジャーキネス劣化が発生しやすいと判断し、評価値Eを上げる。
ここで絞り値Fについての評価値をEfとすると、
Ef=ff(F)
で評価値を操作する。関数ff(x)は、図に示すような線形増加関数に限らず、非線形関数であっても構わない。
【0038】
図4(a)は、動領域判定部40が、制御部20から与えられる焦点距離Dに応じて、評価値を制御するためのテーブルである。制御部20は、撮像光学系10の制御情報から、撮像時の焦点距離Dを得ることが出来る。
動領域判定部40は、焦点距離Dが短い(広角)場合、被写界深度は深くなるため、それだけ見ればジャーキネス劣化が発生しやすいが、この場合、手振れや動体の動きは画面上では相対的に小さくなるため、総合的にはジャーキネス劣化が発生しにくいと判断し、評価値を下げる。
一方、焦点距離Dが長い(望遠)場合、被写界深度は浅くなり、それだけ見ればジャーキネス劣化が発生しにくいが、この場合、手振れや動体の動きは相対的に画面上で大きくなり、総合的に見ればジャーキネス劣化が発生しやすいと判断し、評価値を上げる。
ここで、焦点距離Dについての評価値をEdとすると、
Ed=fd(D)
で評価値を操作する。関数fd(x)は、図に示すような線形増加関数に限らず、非線形関数であっても構わない。
【0039】
図4(b)は、動領域判定部40が、制御部20から与えられるジャイロスコープ情報(水平方向の回転量GX)に応じて、水平方向の評価値EXを制御するためのテーブルである。制御部20は、ジャイロセンサ14の検出情報から、動画像撮像装置200自体の水平方向の動きを得ることが出来る。
動領域判定部40は、水平方向の回転量GX(垂直軸に対する回転量)が小さい場合、画面の動きは小さく、ジャーキネス劣化が発生しにくいと判断し、水平方向の評価値EXを下げる。一方、回転量GXが大きい場合、ジャーキネス劣化が発生しやすいと判断し、水平方向の評価値EXを上げる。ここで、回転量GXについての、水平方向の評価値をEgxとすると、
Egx=fgx(GX)
で評価値を操作する。関数fgx(x)は、図に示すような線形増加関数に限らず、非線形関数であっても構わない。
【0040】
図4(c)は、動領域判定部40が、制御部20から与えられるジャイロスコープ情報(垂直方向の回転量GY)に応じて、垂直方向の評価値EYを制御するためのテーブルである。制御部20は、同じくジャイロセンサ14の検出情報から、動画像撮像装置200自体の垂直方向の動きを得ることが出来る。
動領域判定部40は、垂直方向の回転量GY(水平軸に対する回転量)が小さい場合、画面の動きは小さく、ジャーキネス劣化が発生しにくいと判断し、垂直方向の評価値EYを下げる。一方、回転量GYが大きい場合、ジャーキネス劣化が発生しやすいと判断し、垂直方向の評価値EYを上げる。ここで、回転量GYについての、垂直方向の評価値をEgyとすると、
Egy=fgy(GY)
で評価値を操作する。関数fgy(Y)は、図に示すような線形増加関数に限らず、非線形関数であっても構わない。
【0041】
動領域判定部40は、例えば以上のような方式で、撮像情報CIに応じた評価値Eを生成する。
動領域判定部40の構成例を図5に示す。
動領域判定部40は、動領域検出部41、フレームメモリ42、評価値生成部43を備える。
動領域検出部41は、入力される画像データDDの現在のフレーム画像と、1フレーム前のフレーム画像の差分を求め、動いている領域(動領域)を検出する。
領域とは、画素単位でもよいし、複数画素による画素ブロック単位でもよい。
即ち動領域検出部41は、現フレームの画像をフレームメモリ42に記憶しつつ、前フレームの画像をフレームメモリ42から読み出して、領域毎に差分計算を行う。そして計算結果により、各領域が「動領域」であるか「静領域」であるかを示す検出結果値を出力する。例えば動領域を「1」、静領域を「0」として示す情報として、現フレームの各領域毎の検出結果情報を生成し、評価値生成部43に供給する。
【0042】
評価値生成部43は、動領域検出部41から出力される検出結果で示される動領域(検出結果が「1」の領域)に対して、制御部20から与えられる撮像情報CI(シャッタ速度S、絞り値F、焦点距離D、回転量GX,GY)を基に評価値を生成する。
このとき、各撮像情報CIに対する制御は、図3,図4に示したテーブルに従う。最終的な評価値は、これらのテーブルによる操作を組み合わせて出力する。
【0043】
一例として、最終的な評価値をEx,Eyとして、以下の式で求める。
Ex=ws×Es+wf×Ef+wd×Ed+wgx×Egx
Ey=ws×Es+wf×Ef+wd×Ed+wgy×Egy
なお、評価値Exは、水平方向に付加すべきぼけ量を示す値、評価値Eyは、垂直方向に付加すべきぼけ量を示す値である。
また、wsはシャッタ速度Sに基づく評価値Esに与える重み係数、wfは絞り値Fに基づく評価値Efに与える重み係数、wdは焦点距離Dに基づく評価値Edに与える重み係数、wgxは水平回転量GXに基づく評価値Egxに与える重み係数、wgyは垂直回転量GYに基づく評価値Egyに与える重み係数である。
【0044】
評価値生成部43は、例えばこのように重み付け加算によって、水平方向についての評価値Exと、垂直方向についての評価値Eyを生成し、これらを動きぼけ付加部30に出力する。動きぼけ付加部30は、供給される評価値E(この場合Ex,Ey)に基づいて、後述のように動きぼけ付加処理を行う。
【0045】
このように動領域判定部40では、まずフレーム内の動領域を検出し、各動領域に対して撮像情報CIに基づいて値を調整した評価値を生成する。
例えばフレーム内の静領域については、動領域検出部41での検出結果「0」をそのまま評価値Eとし(評価値E=0)、動きぼけ付加部30が、動きぼけを付加しない領域として認識できるようにする。
そして動領域については、動領域検出部41での検出結果「1」に対して、評価値生成部43の演算処置で上記Ex,Eyの式のように撮像情報CIに基づいた演算を行い、撮像情報CIに応じて評価値を調整するものとなる。
つまり動領域について、撮像情報CIに基づいて求められる上記Ex,Eyを評価値とし、動きぼけ付加部30に対して、付加する動きぼけ量を示す情報とする。
【0046】
なお、上記のように評価値Ex,Eyを求める演算は一例であり、他にも多様に考えられる。例えば重み付け乗算を行っても良い。
また、ジャイロセンサ14の検出に基づく回転量として水平方向、垂直方向の回転量を用いることで、水平、垂直のそれぞれの評価値Ex,Eyを求めているが、方向性による区別をつけずに1つの評価値Eを算出してもよい。
逆に、動きの方向を45°方向、135°方向なども検出して、水平方向、垂直方向、45°方向、135°方向のそれぞれの評価値を算出することも考えられる。
またシャッタ速度情報S、絞り値情報F、焦点距離情報D、ジャイロスコープ回転量情報GX(水平方向の回転量)、GY(垂直方向の回転量)の全てを用いなくても良い。つまりこれらの一部を評価値Eの算出に用いても良い。
また動領域検出部の検出結果を2値(「0」か「1」)ではなく、多値で扱っても良い。この場合、静止領域では検出結果が「0」となり、動きの大きい領域では検出結果が大きくなり、動きの小さい領域では検出結果が小さくなる。この検出結果をMとし、上記のようにして求められた評価値Ex,Eyに乗ずることによって最終的な評価値を算出しても良い。
また、上記例では、シャッタ速度情報S、絞り値情報F、焦点距離情報D、ジャイロスコープ回転量情報GX、GYから、それぞれ評価値Es、Ef、Ed、Egx、Egyを関数演算で求め、その後、評価値Es、Ef、Ed、Egx、Egyについて重み付け加算を行うとしたが、シャッタ速度情報S、絞り値情報F、焦点距離情報D、ジャイロスコープ回転量情報GX、GYを、直接用いて評価値Eを算出することもできる。
【0047】
[2−3:動きぼけ付加部の構成例及び動作]
動きぼけ付加部30は、撮像素子部13から供給される画像データDDに対して、動領域判定部40からの評価値Eに基づいて動きぼけを付加する。
この動きぼけ付加部30の構成例及び動作を説明していく。
【0048】
図6は、動きぼけ付加部30の構成例を示している。
動きぼけ付加部30は、画像データDD、および動領域判定部40からの評価値Eを入力とし、入力される動画像を構成する1フレーム毎の画像データDDに対して動きぼけの付加を行ってジャーキネス劣化が低減した出力画像ODを出力する。
【0049】
図6に示すように、動きぼけ付加部30は、フィルタリング処理などにより処理対象フレーム中から選択された画素に動きぼけを付加し、その結果得られた画素から構成される1つ以上の縮小面を生成する縮小画像生成処理部32を備える。
また、評価値Eを基に、処理対象フレーム中の対応画素および縮小画像生成処理部32において生成された縮小面中の対応画素から、出力画像を構成する各画素の画素値を算出し出力する動きぼけレンダリング処理部31を備える。
【0050】
各処理部についての具体的な処理内容を説明する前に、この動きぼけ付加部30による動きぼけ付加処理の概要について述べておく。
動きぼけ付加部30は、縮小画像生成処理部32と動きぼけレンダリング処理部31により各画素に適切な量の動きぼけを付加し、ジャーキネス劣化を低減した画像を出力する。
図7は、動きぼけ付加処理の概要を示すものである。特に、図6中の縮小画像生成処理部32と動きぼけレンダリング処理部31において行われる処理内容の概要を説明するためのものである。
【0051】
図7における元画像(基底面)とは、入力される画像データDDとしての1つの処理対象フレームの画像データとなる。
縮小画像生成処理部32では、処理対象フレームである元画像に対し、詳しくは後述する空間フィルタリング処理を実行し、その結果として第1縮小面を作成する。
第1縮小面は、元画像よりも一定の比率だけ縮小され、画素数が減少した画像である。
さらに縮小画像生成処理部32は、得られた第1縮小面に対し、同様の空間フィルタリング処理を実行し、結果として得られる第2縮小面を作成する。
このような要領で縮小画像生成処理部32は、再帰的にフィルタ処理を用いることで、所定の階層数の縮小画像(第1縮小面〜第n縮小面)の生成を行う。
【0052】
動きぼけレンダリング処理部31では、上記の要領で生成された階層型の縮小画像(第1縮小面〜第n縮小面)を用いて、動きぼけを適応的に付加した、視覚特性上自然にジャーキネス劣化を低減した画像を生成し、出力する。
動きぼけレンダリング処理部31は、例えば図7中に示す元画像の各画素について、元画像である基底面、第1縮小面、および第2縮小面から、動きぼけ付加対象の画素に対応する位置の画素値を各面から抽出し、レンダリング方式に重み付け加算を実行する。
各面が有する画素数はそれぞれ異なるため、動きぼけ付加対象の画素に対応する位置の画素が各縮小面に存在しない場合、詳しくは後述する周辺の画素からの補間処理を行い、画素値を抽出する。
基底面及び各縮小面から抽出したそれぞれの画素値に対する重み係数(w0、w1、w2)は、評価値Eに依存して決める。
例えば、評価値Eが大きい値の場合、つまり付加する動きぼけの量が大きい場合ほど、高階層の縮小面から抽出した画素の重み係数を大きくする。図7の例においては第2縮小面から抽出した画素の重み係数を大きくすることになる。
一方、評価値Eが小さい値の場合、つまり付加する動きぼけの量が少ない場合ほど、低階層の縮小面から抽出した画素の重み係数を大きくする。例えば図7の例においては基底面から抽出した画素の重み係数を大きくする。
このような重み付け加算の結果として、ジャーキネス劣化を低減した画像が生成される。
【0053】
縮小画像生成処理部32の具体的な処理について説明する。
縮小画像生成処理部32で行われる処理は、入力される画像データDDに対し空間フィルタリング処理を実行することである。また、その結果として得られる縮小画像に対し(または画像として構成されなくても、前段のフィルタリング処理の結果として得られる複数の画素を用いて)、さらに同様の空間フィルタリング処理を繰り返す。これにより階層的な縮小画像データRSDを生成する。
上記空間フィルタリング処理は、フィルタリング処理前の画像中において複数画素を有する領域の画素情報を用いて行われ、処理の前後にて一定の比率だけ縮小され、画素数が減少した画像を生成する。そのためフィルタリング処理後の各画素は、フィルタリング処理前の画像中における当該領域をぼかした画素、として出力されるわけである。
【0054】
以下において、最も簡易なフィルタリング方法の例を用いて詳しく説明する。
図8は、縮小画像生成を行うフィルタ処理の具体例における、縮小前後の画素の対応関係について示すものである。
図8の例では、縮小前の画像において、分割領域R11として示した4×4画素を用いたフィルタリングを実行し、縮小後の画像における画素P11を出力することを表現している。分割領域R12,R21についても同様に画素P12,P21を示している。
結果として、縮小後の画像は、縮小前の画像と比べ、垂直・水平方向にそれぞれ1/4の画素数となっている。
なお4×4画素ブロックを用いるのは、あくまで一例であり、N×Nの画素ブロックを用いて同様の処理を行えば、垂直・水平方向にそれぞれ1/Nの画素数を有する縮小画像が生成できる。
【0055】
分割領域R11に対して行うのは、例えば、ボックスフィルタなどのローパスフィルタ処理であるとすれば、周辺画素の画素値を平均化することで、画素P1はぼけを含んだ画素として生成される。
【0056】
このようにして得られた縮小画像を図7に示した第1縮小面とした場合、この第1縮小面に対し、さらに図8と同様の空間フィルタリング処理を実行して第2縮小面を作成する。
この場合、第1縮小面に4×4画素の分割領域を用いたフィルタリングを実行することにより、第2縮小面の各画素は、元画像における16×16画素の領域の画素値を平均化したぼけ画素として生成されることになる。
必要に応じて、第2縮小面の生成後に第3縮小面以降を同じ要領で生成することも可能であり、階層数を増やしても処理の内容は変わらない。
【0057】
このように、縮小画像生成処理部2では、入力画像に空間ローパスフィルタ処理を実行することで、結果として得られる低解像度な画像を生成し、さらに生成した低解像度画像に同様の処理を実行することでより低解像度な画像を生成していく。このような多重解像度フィルタリング処理を実行して、階層型の縮小画像データRSDを生成する。
【0058】
図9、図10に、他の例として、方向選択型縮小画像生成フィルタ方式を説明する。
図8では分割領域として4×4画素の方形領域の例を示したが、フィルタリングを実行する分割領域は、方形でなくても構わない。
むしろ図8に示した4×4画素を用いたフィルタのような等方型フィルタでは、後段の動きぼけレンダリング処理で動きぼけを付加した場合、画質上の問題が発生してしまう場合もあり得る。それは、付加したい所望の動きぼけのみでなく、動きと直交する方向に低解像度化した結果生じるぼけが支配的になってしまう現象である。
例えば、水平方向の動きに応じた動きぼけを付加したい場合、動きぼけの方向である水平のみでなく、垂直方向にもローパスフィルタリングされた縮小画像を用いるため、垂直方向の解像度が低下した画像になってしまう。
つまり画像内容としての動き方向に応じてぼけを付加することでジャーキネスを低減するときに、動き方向とは直交方向にもぼけが付加され、それが視覚上適切な画像とならない場合がある。
【0059】
そのような事象を回避するには、最終的に付加される動きぼけの方向を考慮した縮小面生成フィルタリングを行う必要がある。この方法は、動きぼけを付加する各方向に独立に縮小面を用意するものである。
【0060】
図9は、水平方向の動きぼけ付加用の、具体的な縮小画像生成フィルタ処理の一例における、縮小前後の画素の対応関係について示すものである。
図9においては、まず、入力される画像データDD(基底面)に4×1タップの長方形フィルタ処理を実行し、水平方向の画素数が1/4、垂直方向の画素数は変化しない、水平方向1/4縮小画像を生成している。
例えば基底面における領域R011、R012、R021についてのそれぞれのフィルタ処理で得られた画素は、水平方向1/4縮小画像における画素P111、P112、P121となる。
なお4×1画素領域を用いたのは、あくまで一例であり、所望の縮小率に応じて変更できる。
フィルタの内容は、例えばボックスフィルタなどのローパスフィルタである。
【0061】
さらに、生成した水平方向1/4縮小画像に対し、同様のフィルタ処理を実行することで、水平方向の画素数が1/16、垂直方向の画素数は変化しない、水平方向1/16縮小画像を生成する。
例えば水平方向1/4縮小画像における領域R111についてのフィルタ処理で得られた画素は、水平方向1/16縮小画像における画素P211となる。
このように、水平方向の動きぼけ付加用として、垂直方向の解像度低下を防ぐため、水平方向のみ多階層の縮小画像を生成する。
【0062】
図10は、垂直方向の動きぼけ付加用の、具体的な縮小画像生成フィルタ処理の一例における、縮小前後の画素の対応関係について示すものである。
図10においても、図9の場合と同様に、まず、入力される画像データDDに1×4タップの長方形フィルタ処理を実行し、水平方向の画素数が変化せず、垂直方向の画素数が1/4となった、垂直方向1/4縮小画像を生成している。フィルタの内容は、例えばボックスフィルタなどのローパスフィルタである。
例えば基底面における領域R011、R012、R021についてのそれぞれのフィルタ処理で得られた画素は、垂直方向1/4縮小画像における画素P111、P112、P121となる。
【0063】
さらに、生成した垂直方向1/4縮小画像に対し、同様のフィルタを実行することで、水平方向の画素数が変化せず、垂直方向の画素数が1/16となった、垂直方向1/16縮小画像を生成する。
例えば垂直方向1/4縮小画像における領域R111についてのフィルタ処理で得られた画素は、垂直方向1/16縮小画像における画素P211となる。
このように、垂直方向の動きぼけ付加用として、水平方向の解像度低下を防ぐため、垂直方向のみ多階層の縮小画像を生成する。
【0064】
例えば以上のように、水平方向、垂直方向の例を示したが、これら以外に、斜め45°方向、斜め135°方向、その他のあらゆる角度方向の縮小画像生成フィルタを採用しても構わない。
上記までに説明する方法は、各方向の動きぼけ付加用として独立に縮小画像を生成するため、後段の動きぼけレンダリング処理において、各画素に付加する動きぼけの方向に応じて、適応的に各方向の縮小画像から画素を選択または合成する必要が生じる。この方法については、動きぼけレンダリング処理部3の説明において述べる。
【0065】
さて、上記までに付加される動きぼけの方向を考慮した縮小面生成フィルタリングについて説明をしてきたが、その処理をより詳細に説明するために、1つの具体的な構成例を設定して、以降の説明に逐次用いる。
下記の<具体例:条件1>をその例として用いる。
【0066】
<具体例:条件1>
縮小画像生成方向:水平・垂直
縮小画像階層数:水平および垂直に各3層(第3縮小面まで)
動きぼけ生成方向:動きぼけレンダリング時に水平・垂直から移動速度の絶対値が大きい方を選択(詳細は後述)
フィルタ前後の縮小率
第1縮小面:1/4
第2縮小面:1/16
第3縮小面:1/64
【0067】
上記の仕様では、付加できる最大の動きぼけ量は、水平・垂直の各方向に、±64画素移動した相当の動きぼけまでを生成できる。
図11は、<具体例:条件1>の設定における、縮小画像生成処理部32の構成例を示すものである。
上記の水平・垂直の各方向に1次元フィルタを用いて縮小面生成処理を実行する場合の処理フローを示しており、生成された各縮小面は縮小画像データRSDとして出力される。
即ち入力画像データDDに対して、1次元フィルタ処理21−1で水平方向1/4縮小画像を生成する。さらに1次元フィルタ処理21−1の結果について1次元フィルタ処理21−2で水平方向1/16縮小画像を生成する。さらに1次元フィルタ処理21−2の結果について1次元フィルタ処理21−3で水平方向1/64縮小画像を生成する。
また、入力画像データDDに対して、1次元フィルタ処理22−1で垂直方向1/4縮小画像を生成する。さらに1次元フィルタ処理22−1の結果について1次元フィルタ処理22−2で垂直方向1/16縮小画像を生成する。さらに1次元フィルタ処理22−2の結果について1次元フィルタ処理22−3で垂直方向1/64縮小画像を生成する。
これらの結果として得られた6個の縮小画像データRSDが出力されることになる。
【0068】
なお、図示している1次元フィルタ(21−1〜22−3)の処理は、ソフトウエア演算で実現される再帰的なフィルタ処理をブロックで表現した処理フローとしているが、当該構成をハードウエア構成として捉えても良い。次の図12も同様である。
【0069】
図12は、図11に示した処理フローを、拡張して一般化したものである。
上記の<具体例:条件1>の設定においては、生成する水平・垂直方向の階層数は3と決めていたが、図12はこれを限定せず、水平方向の縮小面階層数をMx、垂直方向の縮小面階層数をMyと表現して一般化している処理フローである。
1次元フィルタ処理21−1・・・21−Mxにより、Mx階層の水平方向縮小画像が生成され、また1次元フィルタ処理22−1・・・22−Myにより、My階層の垂直方向縮小画像が生成される。これらが縮小画像データRSDとして出力される。
なお、図示及び説明は省略するが、縮小画像生成方向について、水平・垂直方向のみから斜め方向も含めた構成へと拡張することもできる。
【0070】
ここまで、各方向の動きぼけ付加用として独立に縮小画像を生成する方法について、その処理手順を述べたが、以下では、実際に各方向用に縮小画像を生成する際に用いるフィルタについて、その内容を説明する。
【0071】
上記までの説明においては、例として4タップのボックスフィルタを用いることを述べてきた。これは、縮小率1/4に対応して4画素ブロックのフィルタを用いていたわけであり、最も容易に実現できる方法であるため、である。動きぼけ発生原理を考慮しても、移動平均フィルタと同内容でボックスフィルタが、原理的に実際の動きぼけに最も類似するはずである。しかしながら、最終的に得られる画質の向上のために、変更することも可能である。
【0072】
図13は、縮小画像生成処理に用いるフィルタ形状の具体例を示すものである。
上記<具体例:条件1>の設定にて、水平・垂直のいずれかの方向に1/4縮小するフィルタを想定し、横軸は4画素ごとを1ブロックと考えた場合の座標を示しており、縦軸はフィルタとして各画素に乗ずる加重である。
4タップのボックスフィルタの他、7タップのテントフィルタ、10タップの階段フィルタ、13タップのガウシアンフィルタを例として図示しており、所謂FIRローパスフィルタであれば採用可能であることを示している。
【0073】
フィルタタップ数は、縮小フィルタによる縮小率が1/Nのとき、Nタップ以上であることが必要条件である(例えば、縮小率1/4、入力4画素に対し1画素を出力する場合には4タップ)が、さらにタップ数を増加することにより、画質の向上が期待できる。
これは、タップ数が小さいほど発生する恐れが高まる、折り返し現象に起因する画質劣化を低減できるためである。
また、フィルタタップ数の増加に伴い、隣接する分割領域に属する画素を重複してフィルタ処理を行うことになるが、それは問題とならない。
【0074】
図14は、フィルタリングを行う場合に用いる各縮小画像の画素の位置関係を説明するための図である。
いま、水平方向の縮小画像を生成しているものとして、各縮小画像からの画素をどのように重み付け加算することで、出力画素の画素値を算出するかを、この図を用いて説明する。フィルタタップ数は7の場合を例として用いている。なお、垂直方向もこれに準じて行えばよいため、図は省略する。
【0075】
図14中には、各縮小画像の画素について、番号が振られている。以下、何層目の縮小画像の何番目の画素か、についてこの番号を用いて表現する。例えば、1/16縮小画像の番号79の画素はL2(79)と表記する。基底面である入力画像データDD中の画素はL0(画素番号)で表現する。
【0076】
各縮小画像中の画素番号は、基底面上の対応する位置のものであり、各縮小面中で斜線を付した画素を位相の中心として、フィルタリングが実行されて作成されたものである。例えば、第1番目の縮小面である1/4縮小面中の画素L1(7)は、基底面中のL0(4)〜L0(10)までの画素を用いた7タップのフィルタによって、生成された画素である。
このように、各縮小画像においてフィルタを4画素シフトしつつ実行することにより、用いる画素が隣接するフィルタと重複しても問題なく、フィルタの前後で1/4だけ縮小された、次層の縮小面が作成される。当然、縮小率が異なる場合も同様の方法で実現可能である。
【0077】
続いて動きぼけレンダリング処理部31の具体的な処理について説明する。
動きぼけレンダリング処理部31は、入力された画像データDDと、縮小画像生成処理部32で生成された階層的な縮小画像を用いて、動きぼけを含んだ出力画像の各画素値を算出する。
【0078】
図15は、動きぼけレンダリング処理の流れを示す概略図である。
動きぼけレンダリング処理部31には、画像データDD、縮小画像データRSDおよび評価値E(例えば水平方向の評価値Ex及び垂直方向の評価値Ey)が入力し、各画素に適切な量の動きぼけが付加された出力画像データODを出力する。
【0079】
まず、評価値Ex、評価値Eyから、当該画素に対し、どの方向に何画素移動した相当の動きぼけを付加するかの情報である、レンダリングパラメータの抽出が行われる(S1)。
レンダリングパラメータとは、言い換えれば、後段のレンダリング処理において、画像データDDおよび縮小画像データRSD中の当該画素の各々に、どれだけの重みを乗じて加算処理を実行するか、を示すデータである。後に具体的な例を用いてより明確に説明する。
縮小画像データRSDには、画像データDD中の各縮小画像において、当該画素に位置的に対応する画素の画素値を、補間処理によって生成する、合成画素算出処理が行われる(S2)。
この処理が必要な理由および具体的な処理内容の例については、詳しくは後述する。
最後に、画像データDDの当該画素、および、縮小画像データRSDから生成された各合成画素、のそれぞれに重みを付けて加算処理することにより、当該画素に対応する出力画素の画素値を算出する、レンダリング処理が行われる。重みの情報は、入力されるレンダリングパラメータ中にあるものとする。
【0080】
図16は、上記した<具体例:条件1>における、動きぼけ付加部30の構成、特に動きぼけレンダリング処理部31の処理ブロックを詳細に示すものである。
縮小画像生成処理部32においては、図示するように、縮小画像データRSDとして、水平および垂直に各3層の縮小画像が作成されている。
【0081】
動きぼけレンダリング処理部31において、合成画素算出処理部33−1〜33−3には、画像データDDから処理対象の当該画素が入力されるのとタイミングを合わせて、3層の水平縮小画像から各々に画素が入力され、後述する合成画素値の算出処理が行われる。
また合成画素算出処理部32−1〜32−3には、画像データDDから処理対象の当該画素が入力されるのとタイミングを合わせて、3層の垂直縮小画像から各々に画素が入力され、後述する合成画素値の算出処理が行われる。
これら合成画素算出処理部33−1〜33−3、32−1〜32−3で算出された各縮小画像に対する合成画素は、セレクタ34へと入力される。
【0082】
評価値判定部35には、評価値E(この場合、Ex及びEy)が入力されている。
上記<具体例:条件1>は、各画素に水平および垂直方向のいずれか一方の動きぼけを選択的に付加する条件である。
そのため、評価値判定部35では、評価値Ex,Eyを基に、動きを付加する方向が水平と垂直のいずれであるかを示す選択情報と、付加する動きぼけの方向に対する各合成画素値に乗ずる重みを示す重み情報、を生成する。
そして選択情報は、セレクタ34へ供給され、重み情報は、重み付け画素加算処理部36へ供給される。
【0083】
セレクタ34は、評価値判定部35から入力された選択情報を基に、合成画素値のうち水平・垂直のどちら一方から入力された画素値のみを選択し、重み付け画素加算処理部36へ出力する。つまり、<具体例:条件1>の場合では、6つの画素値が入力し、3つの画素値として出力される。
重み付け画素加算処理部36には、既に入力された画像データDDから処理対象の当該画素が入力されている。
さらに、上記の通り、合成画素値のうち方向選択された各画素値が入力される。
また、評価値判定部35から各画素値に対する重み情報が入力している。
この重み付け画素加算処理部36では、重み情報を基に、入力した各画素値に対し、詳しくは後述する重み付け画素加算処理を実行し、出力する画素値を算出する。
【0084】
合成画素算出処理部33−1〜33−3,32−1〜32−3における処理を図17で説明する。
図17は、合成画素算出処理および重み付け画素加算処理の内容について、具体例を示して説明するための図である。画像データDDと縮小画像データRSDについて、上記図14と同様に、各画素を示している。
【0085】
合成画素算出処理部33−1〜33−3,32−1〜32−3で行われる合成画素値の算出は、水平および垂直の各縮小画像から入力された画素について行うが、図17では、付加する動きぼけの方向が水平方向の場合(つまり合成画素算出処理部33−1〜33−3のみ)について図示している。以下の説明は、垂直方向の場合(合成画素算出処理部32−1〜32−3)についても同様に考えればよい。
【0086】
まず、合成画素値の算出処理が必要な理由について述べる。
後段の重み付け画素加算処理部36の処理では、前記の通り、画像データDDの当該画素、および、縮小画像データRSDから生成された各合成画素、のそれぞれに重みを付けて加算処理することにより、当該画素に対応する出力画素の画素値を算出するわけである。
しかし、各縮小画像には常に、画像データDD中の当該画素に対応する画素が存在するわけではないため、各縮小画像における対応画素を補間処理により算出しなくてはならない。
例えば、図17中の画像データDDで「20」の番号を振られている画素L0(20)に位置的に対応する、各縮小画像中における画素は存在しない。これは、画像データDDにフィルタリングを実行して、第1の縮小画像である1/4縮小画像を生成する際、L0(20)がフィルタの位相中心ではない画素であるためであり、1/4縮小面以降、位置的に対応する画素は存在しないわけである。
【0087】
そのため、何らかの補間処理によって、当該画素に対応する縮小画像中の画素値L1(20)’、L2(20)’、L3(20)’を推定するわけである。
ここでは、例として線形補間法を用いて、L1(20)’、L2(20)’、L3(20)’を算出する場合を考える。
【0088】
いま、各縮小画像生成時に位相中心となった画素の入力画像データDDにおける座標と、当該画素との距離を、図17中に示す通り、d1(20)、d2(20)、d3(20)のように表現する。これらは、当該画素よりも左に存在し、かつ、最寄りの位相中心となる画素、との距離である。このとき、入力画像データDDで「20」の番号を振られている画素L0(20)に対応する各縮小画像中における合成画素値L1(20)’、L2(20)’、L3(20)’は、
【数1】
と表現される。
【0089】
一般には、入力画像データDD中の第N番目画素L0(N)に対応する、第K縮小画像(1/R縮小面)において位置的に対応する合成画素の画素値LK(N)’を、以下のように表現する。
【数2】
ただし、<N>Kとは、入力画像データDD中の当該画素である第N番目の画素よりも左に存在し、かつ、第K縮小画像においてNに最寄りの位相中心となる画素、である。
【0090】
この(数2)に示す通り、各縮小面に存在する2画素(位置的に当該画素に対応する最寄りの2画素)を用いた、2タップのフィルタリング処理によって、線形補間された画素値を算出できる。
なお、ここでは線形補間による合成画素値算出の方法を示したが、補間の方式は、スプライン補間など、より高次な計算法を用いて算出することも可能である。
【0091】
次に評価値判定部35における処理を説明する。
各画素に水平および垂直方向のいずれか一方の動きぼけを選択的に付加する、上記<具体例:条件1>に準じた評価値判定部35では、既に入力されている評価値Ex,Eyを基に、動きを付加する方向が水平と垂直のいずれであるかを示す選択情報と、付加する動きぼけの方向に対する各合成画素値に乗ずる重みを示す重み情報、を生成する。
【0092】
評価値判定部35による動きぼけを付加する方向の選択方式としては、入力された評価値Ex,Eyの値、即ち水平および垂直方向の動きの大きさを比較し、それが大の方向にぼけを付加する方法を採用することができる。
Ex≧Eyのとき:水平方向のぼけ付加
Ex<Eyのとき:垂直方向のぼけ付加
これを基に、動きぼけを付加する方向についての選択情報を、セレクタ34へと出力する。この例の場合、セレクタ34へ送る情報量は、1画素の動きぼけ付加に対して1ビットでよい。
【0093】
評価値判定部35のもうひとつの役割は、各合成画素値に乗ずる重みの情報を算出して、重み付け画素加算処理部36へと出力することであるが、この重み付けの決定方法は、以下の、重み付け画素加算処理部36の詳細な説明の中で例を示して明らかにする。
【0094】
次に重み付け画素加算処理部36における処理を説明する。
重み付け画素加算処理部36には、画像データDDの当該画素L0(N)、およびセレクタ34で選択された、水平・垂直方向のどちらか一方について、各縮小画像から生成された合成画素が各々入力される。
以下では、<具体例:条件1>の水平・垂直方向用に3層の縮小画像が生成されている場合であるとし、さらに付加する動きベクトル方向がセレクタ34において、水平方向に決定されているものとする。
このとき、各水平縮小画像中の画素から生成された合成画素をL1(N)’、L2(N)’、L3(N)’と表現する。
【0095】
ここで、同じく評価値判定部35から入力した重み情報を基に、下記(数3)に示す、これらの画素値の線形重み付け加算処理が行われ、出力画素値Lout(N)が算出される。
【数3】
ここでw0〜w3は、各画素値に乗ずる重みである。一般には、下記の(数4)のように表せる。
【数4】
ただし、Mは当該方向に生成された縮小画像数であり、L0(N)=L0(N)’であるものとする。
【0096】
評価値判定部35は、入力された評価値Ex,Eyから、画像データDDの各画素に対して、各縮小画像に対する重みwkを算出し、重み付け画素加算処理部36へと提供しているわけである。
各画素値に与える重みを生成する手段であるが、<具体例:条件1>の場合を想定し、重みw0〜w3を決定する方法の例を示す。
当該画素の位置的に対応する評価値Ex,Eyのうち、値が大である成分の値をVと記す。そして以下の重み決定ルールに基づいて、順に分け与えていく。
【0097】
手順1:w0=1。
V≦1であればw1=0,w2=0,w3=0とし、手順5へ。
手順2:V−w0>4−1であればw1=3。
そうでない場合、w1=V−w0,w2=0,w3=0とし、手順5へ。
手順3:V−(w0+w1)>16−4であればw2=12。
そうでない場合、w2=V−(w0+w1),w3=0とし、手順5へ。
手順4:w3=V−(w0+w1+w2)。
手順5:w0〜w3の各値をVで除算して規格化。
【0098】
以上は一例であり、その限りではない。特に、手順5にて除算が生じるため、ハードウェアでの実現の場合に処理コストが増大する。そのため、Vに対する各重みwkをテーブル化することで、処理コストの低減が可能である。
【0099】
図18は、重み情報テーブルの例である。
図中のテーブルの1列目は、選択された方向の評価値E(評価値Ex,Eyのいずれか)を示しており、2〜5列目は、各縮小面から抽出した各画素に乗ずる重みの値を示している。
数値はあくまで一例であり、限定するものではないが、評価値Eが小さいほど、各縮小面の重みの値は、小さい階層(基底面や第1縮小面)の重みの値を大とし、逆にベクトル絶対値が大きいほど、大きい階層(第3縮小面や第2縮小面)の重みの値を大とすべきである。
【0100】
このように評価値判定部35で重み情報が生成されて重み付け画素加算処理36に供給される。そして重み付け画素加算処理36で、例えば上記(数3)の線形重み付け加算処理が行われ、出力画素値Lout(N)が算出されることになる。
そしてこの重み付け画素加算処理36は、ジャーキネス劣化を低減した出力画像データODとなる。
【0101】
[2−4:まとめ]
以上、第1の実施の形態の動画像撮像装置200について説明してきたが、この実施の形態によれば、人間の視覚特性上、より自然にジャーキネス劣化が低減された動画像を出力することができる。
特に、本実施の形態では、撮像され、入力された画像データDDにおける処理対象画像(例えば1フレームの画像データ)について、領域毎の静動判定の結果と、撮像時の撮像情報CIとに基づいて動きぼけ付加処理を行う。
そして動領域判定部40における静動判定は、フレーム内の領域(画素単位或いは複数画素による画素ブロック単位)毎について動領域か静領域かを判定する処理であり、例えば前後フレームの比較などの簡易な処理で可能である。
また撮像情報CIとして、例えばシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報(撮像装置の水平方向、垂直方向の動きを示す情報)を用いて、付加すべきぼけ量を示す評価値Eを生成する。
即ち静動判定結果によって検出される動領域について、撮像情報にもとづいて適切なぼけ量を付加させる評価値Eが生成され、動画像についてジャーキネス劣化が発生しやすい領域に適切な量の動きぼけを付加することができる。
このため、フレーム内の領域毎に動きベクトルを検出するという処理負担の大きい処理を不要としつつ、人間の視覚特性上、より自然にジャーキネス劣化が低減された動画像を出力することができる。
また、動きベクトル検出等の負担の重い処理を行わなくて良いことから、簡易に適切な動きぼけ付加処理を行うことができ、装置の簡易化、低コスト化に適している。
【0102】
また動きぼけ付加処理については、主に空間的なフィルタリング処理によって実現され、中間フレームを生成することがないため、処理過程で画像データを記憶するためのメモリを少なくすることができる。
さらに、空間フィルタ処理は、階層的なフィルタリングを実行した結果得られる、各階層の画素値を重み付け加算して出力する。そのため、各階層において行うフィルタは、少ないタップ数で実現可能である。また、そのフィルタのタップ数は、付加する動きぼけの量に依存せず、固定タップ数で行うことが可能である。
このような再帰的な処理による実現は、特にハードウェアによる処理実装に適している。当然に、ソフトウェア、また組合せによる実現も可能である。
【0103】
また、動きぼけ付加部30で処理された画像データODは、図2で説明したように、送信処理部60から送信出力されたり、記録処理部70によって記録媒体90に記録される。
したがって、この動画像撮像装置200によって送信された送信データ、及び記録媒体90に記録された記録データの再生を行う再生装置は、この実施の形態に示したような動きぼけ付加処理を行うことなく、既存の再生処理工程を行うだけで、ジャーキネス効果が低減された動画像を表示装置に表示させることができる。
【0104】
[3.第2の実施の形態:再生・受信装置]
第2の実施の形態としての再生・受信装置300の構成を図19に示す。
この再生・受信装置300は、放送などの媒体で送られる画像データの受信や、記録媒体91に記録された画像データを再生して、表示する装置としている。
【0105】
受信処理部110は、例えばテレビジョン放送等により送信されてくる画像データを受信する。なお、ネットワーク通信、ダウンロードなどの形態の画像データの受信処理を行う部位としてもよい。受信処理部110では受信・復調処理を行い、受信したデータストリームを動画像復号化処理部130及び制御部170に供給する。
再生処理部120は、記録媒体91に対して画像データの再生動作を行い、再生したデータストリームを動画像復号化処理部130及び制御部170に供給する。
【0106】
受信処理部110で受信された画像データ、及び再生処理部120で記録媒体91から再生された画像データは、符号化された画像データであるが、撮像情報が重畳されたデータとなっている。例えばそれらの画像データが撮像された際の撮像装置において例えばシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報等がメタデータとして付加されていることを想定する。
制御部170は、このような画像データから撮像情報を抽出する。そして抽出された撮像情報CIを動領域判定部150に供給する。
【0107】
動画像復号化処理部は、受信処理部110又は再生処理部120から供給される、圧縮符号化されている画像データを伸張処理し、復号処理後の画像データDDを動領域判定部150及び動きぼけ付加部140に供給する。
動領域判定部150、動きぼけ付加部140は、上記第1の実施の形態の動領域判定部40、動きぼけ付加部30と同様である。即ち動領域判定部150は、各フレーム内の領域毎について動領域か静領域かを判定する静動判定処理を行い、また撮像情報CIとして、例えばシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報等を用いて、付加すべきぼけ量を示す評価値Eを生成する。
また動きぼけ付加部140は、評価値Eに基づいて、入力される画像データDDに対して動きぼけ付加処理を行って、ジャーキネス劣化が低減された出力画像データODを出力する。
画像表示部160では、動きぼけ付加部140で処理された出力画像データODについて表示出力を行う。
【0108】
このような第2の実施の形態としての再生・受信装置300では、受信又は再生した画像データについて、適切にジャーキネス劣化を低減させることができ、高品質な画像表示を実現できる。そしてその動きぼけ付加処理のためには、第1の実施の形態と同様、動きベクトル検出等の負担の重い処理を行わなくて良いことから、簡易に適切な動きぼけ付加処理を行うことができ、再生・受信装置の簡易化、低コスト化に適している。
【0109】
以上、本発明の第1,第2の実施の形態を説明してきたが、本発明の画像処理装置、画像処理方法は、上記各例に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変更が可能であることは勿論である。
また実施の形態は、図1の画像処理装置100としての基本構成を含む動画像撮像装置200、再生・受信装置300として説明したが、本発明の画像処理装置は画像処理を行う各種機器に適用できる。例えば画像通信装置、画像記録装置、ゲーム機器、ビデオ編集機、携帯電話機などが想定される。
また上記してきた画像処理装置100,動画像撮像装置200、再生・受信装置300の構成は、複数の処理部の論理的集合構成であり、各構成として示した処理部が同一筐体内にあるものには限らない。
【0110】
[4.プログラム]
本発明はさらに、汎用のパーソナルコンピュータその他の情報処理装置において、動画像再生や記録等を行う際に、上記の画像処理装置1としての動作を実行することも当然想定される。
即ち、上述した画像処理装置1を構成する各処理部は、例えばFPGA等によって設計されるハードウェアによって実現されることもできるが、各処理部によって実現される画像処理をコンピュータ等の情報処理機器に実行させるようにしても良い。
例えば上述の動領域判定部2(40,150)、撮像情報CIを取得する機能部位としての画像取込部1、及び動きぼけ付加部3(30、140)の動作を演算処理装置に実行させるプログラムを画像処理アプリケーションソフトウエアとして提供することで、パーソナルコンピュータ等において、適切な画像処理を実現できる。
【0111】
即ち当該プログラムは以下の各ステップを演算処理装置(CPU等)に実行させる。
まず動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定ステップを演算処理装置に実行させる。
また、動画像データが撮像装置による撮像により生成された際の撮像情報を取り込む撮像情報取込ステップを演算処理装置に実行させる。
また、動画像データに対し、静動判定ステップでの判定結果と、撮像情報取込ステップで取り込んだ撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加処理ステップを演算処理装置に実行させる。
【0112】
このようなプログラムにより、本発明をパーソナルコンピュータ、携帯電話機、PDA(Personal Digital Assistant)、その他画像データを用いる多様な情報処理装置においても同様の画像処理を実行できるようにすることができる。
【0113】
なお、このようなプログラムは、パーソナルコンピュータ等の機器に内蔵されている記録媒体としてのHDDや、CPUを有するマイクロコンピュータ内のROMやフラッシュメモリ等に予め記録しておくことができる。
あるいはまた、フレキシブルディスク、CD−ROM(Compact Disc Read Only Memory)、MO(Magnet optical)ディスク、DVD、ブルーレイディスク、磁気ディスク、半導体メモリ、メモリカードなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
また、プログラムは、リムーバブル記録媒体からパーソナルコンピュータ等にインストールする他、ダウンロードサイトから、LAN(Local Area Network)、インターネットなどのネットワークを介してダウンロードすることもできる。
【図面の簡単な説明】
【0114】
【図1】本発明の実施の形態の基本構成としての画像処理装置のブロック図である。
【図2】第1の実施の形態の動画像撮像装置のブロック図である。
【図3】実施の形態の撮像情報の説明図である。
【図4】実施の形態の撮像情報の説明図である。
【図5】実施の形態の動領域判定部のブロック図である。
【図6】実施の形態の動きぼけ付加部のブロック図である。
【図7】実施の形態の縮小画像を用いた重み付け加算処理の説明図である。
【図8】実施の形態の縮小画の生成処理の説明図である。
【図9】実施の形態の水平方向縮小画像の生成処理の説明図である。
【図10】実施の形態の垂直方向縮小画像の生成処理の説明図である。
【図11】実施の形態の縮小画像生成処理部の処理の説明図である。
【図12】実施の形態の縮小画像生成処理部の処理を一般化した説明図である。
【図13】実施の形態の縮小画像生成処理部のフィルタの説明図である。
【図14】実施の形態の縮小画像生成処理の説明図である。
【図15】実施の形態の動きぼけ付加部の処理の説明図である。
【図16】実施の形態の動きぼけ付加部の構成のブロック図である。
【図17】実施の形態の合成画素算出処理及び重み付け画素加算処理の説明図である。
【図18】実施の形態の重み情報テーブルの説明図である。
【図19】第2の実施の形態の再生・受信装置のブロック図である。
【図20】従来の動画像撮像装置と動画像再生装置のブロック図である。
【符号の説明】
【0115】
1 画像取込部、2 動領域判定部、3 動きぼけ付加部、10 撮像光学系、11 絞り機構、12 光学レンズ系、13 撮像素子部、14 ジャイロセンサ、20,170 制御部、30、140 動きぼけ付加部、40,150 動領域判定部、50 動画像符号化処理部、60 送信処理部、70 記録処理部、90,91 記録媒体、100 画像処理装置、110 受信処理部、120 再生処理部、130 動画像復号化処理部、160 画像表示部、200 動画像撮像装置、300 再生・受信装置
【技術分野】
【0001】
本発明は、動画像に対して動きぼけを付加する画像処理を行う画像処理装置、画像処理方法、及びその画像処理をコンピュータ等の演算処理装置に実行させるプログラムに関する。
【背景技術】
【0002】
【特許文献1】特開2007−274299号公報
【0003】
シャッタ機能を有する撮像装置によりフレームレートで決定される期間に対して各フレームが短い有効露光時間で撮像された動画像を、表示デバイスを用いて表示すると、画像中に含まれる移動物体の動きが不連続に表示され、画像を観察する観察者が多重像を知覚してしまうという視覚上の画像劣化が発生する場合がある。
このような動きの不自然さによる動画像の劣化は、一般的にモーションジャーキネス(Motion Jerkiness)と呼ばれる(参考文献:ANSI T1.801.02-1996)。
【0004】
モーションジャーキネスが発生する具体例について、図20に示す動画像撮像装置500及び動画像再生装置600を用いて説明する。
動画像撮像装置500は、動画像を撮像してMPEG(Moving Picture Experts Group)などの規格で符号化し、この符号化された画像データをDVD(Digital Versatile Disc)などの記録媒体700に記録するものであり、具体的には次のような構成を有している。
【0005】
即ち動画像撮像装置500は、被写体像からの光を集光する撮像光学系510と、この撮像光学系510により集光された光を受光して画像信号に変換する撮像素子520と、この撮像素子520により変換された画像信号を符号化する符号化処理部530を有する。
また動画像撮像装置500は、符号化処理部530により符号化された画像データを所定の伝送路を介して外部へ送信する送信処理部540と、符号化処理部530により符号化された画像データをDVDなどの記録媒体700に記録する記録処理部550を備える。
【0006】
撮像光学系510は、外部から入射する被写体光の光量を調節する絞り機構511と、絞り機構511により光量を調節された被写体光を撮像素子520の受光面に集光させる光学レンズ系512とから構成される。
【0007】
一方、動画像再生装置600は、符号化された画像データを復号して、ディスプレイなどに表示出力するものであり、具体的には次のような構成を有している。
即ち動画像再生装置600は、所定の伝送路を介して伝送されてくる符号化された画像データを受信する受信処理部610と、記録媒体700から符号化された画像データを読み出す読出処理部620を有する。
また動画像再生装置600は、受信処理部610及び読出処理部620から出力される符号化された画像データを復号する復号処理部630と、復号処理部630によって復号された画像信号を表示するディスプレイなどの表示出力部640とを備える。
【0008】
例えば明るい野外などで動画像を撮像するとき、このような従来の動画像撮像装置500では、絞り機構511を絞ることによって撮像素子520に入射させる光量を制限して露光量を適切に制御している。
しかしながら、通常、絞り機構511を絞りすぎると回折現象により像がぼやけてしまう。このため、動画像撮像装置500では、絞り機構511によって光量を調節するのに加えて、シャッタ速度を短くすることで適切な露光制御を行っている。
また、絞り機構が設けられていない動画像撮像装置では、シャッタ速度を変更することで露光制御を行っている。
【0009】
このようにして、従来の動画像撮像装置500では、シャッタ速度を短くすることで、野外撮影などにおいて適切な露光制御を行うことができるが、これに伴って次のような現象が現れてくる。
すなわち、従来の動画像撮像装置500では、シャッタ速度を短くしすぎると、人間の視覚特性によって画像の動きに滑らかさを欠いた現象となって現れてしまう。
【0010】
このような動きの不自然さによる動画像の劣化は、一般的にモーションジャーキネス(Motion Jerkiness)と呼ばれる。すなわち、動画像再生装置600は、動画像撮像装置500によってジャーキネス劣化を含んで撮像されると、そのままジャーキネス劣化を含んだ画像データを復号して表示出力部640により表示することとなる。
【発明の開示】
【発明が解決しようとする課題】
【0011】
上述したように、動画像のフレームレートに対して非常に高速のシャッタ速度で撮像された画像は、静止画像として表示したときには鮮鋭度が高いが、動画像として表示したときには画像中の動体の動きが滑らかではなく、人間の視覚特性上、不自然に見えてしまう。
そこで上記特許文献1に記載されているように、本出願人は先に、動画像についての動きベクトルを検出し、動きベクトルを用いて動画像に適切に動きぼけを付加する技術を提案した。
ところが、例えば動画像を構成する各フレームの各領域毎に動きベクトルを検出する処理は、処理負担が大きく、簡易な装置やシステムには不向きとなる場合がある。
そこで本発明は、処理負担の少ない簡易な手法で、動画像に適切に動きぼけを付加し、ジャーキネス劣化を低減できる画像処理装置、画像処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の画像処理装置は、動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定手段と、上記動画像データに対し、上記静動判定手段の判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加手段とを備える。
また上記動きぼけ付加手段は、上記動画像データの各処理対象画像について、上記静動判定手段によって動領域と判定された領域に、上記撮像情報に基づいて動きぼけを付加する処理を行う。
また上記静動判定手段は、静領域か動領域かの判定結果と、上記撮像情報とに基づいて領域毎の評価値を生成し、上記動きぼけ付加手段は、上記評価値に基づいて、上記動画像データの各処理対象画像に動きぼけを付加する処理を行う。
また上記静動判定手段は、上記撮像情報取込手段からの複数種類の撮像情報を用いた重み付け演算処理により上記評価値を生成する。
【0013】
また上記動きぼけ付加手段では、上記撮像情報としてのシャッタ速度情報によるシャッタ速度が速いほど動きぼけ量を大きくする動きぼけ付加処理が行われる。
また上記動きぼけ付加手段では、上記撮像情報としての絞り値情報による絞り値が大きいほど動きぼけ量を大きくする動きぼけ付加処理が行われる。
また上記動きぼけ付加手段では、上記撮像情報としての焦点距離情報による焦点距離が遠いほど動きぼけ量を大きくする動きぼけ付加処理が行われる。
また上記動きぼけ付加手段では、上記撮像情報としてのジャイロスコープ回転量情報によるジャイロスコープ回転量が大きいほど動きぼけ量を大きくする動きぼけ付加処理が行われる。
【0014】
また上記動きぼけ付加手段は、動画像データに対し、動画像を構成する各単位画像を処理対象画像とし、上記処理対象画像から1つ以上の解像度の異なる縮小画像を生成する縮小画像生成部と、上記処理対象画像の注目画素に位置的に対応する画素を上記縮小画像から抽出し、上記静動判定手段の判定結果と上記撮像情報とに基づく値を基に、上記注目画素および上記縮小画像から抽出した1つ以上の抽出画素について、重み付け加算処理を行って、上記処理対象画像に動きぼけを付加する画素合成処理部とを有する。
【0015】
また被写体を撮像して動画像を生成する撮像手段をさらに備え、上記撮像手段での撮像によって得られた動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される。
また記録媒体の再生動作により動画像データを再生する再生手段をさらに備え、上記再生手段で再生された動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される。
また動画像データを受信する受信手段をさらに備え、上記受信手段で受信された動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される。
【0016】
本発明の画像処理方法は、動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定ステップと、上記動画像データに対し、上記静動判定ステップでの判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加処理ステップとを有する。
本発明のプログラムは、上記静動判定ステップと上記動きぼけ付加処理ステップを演算処理装置に実行させるプログラムである。
【0017】
このような本発明では、入力された動画像データにおける処理対象画像(例えば1フレームの画像データ)について、領域毎の静動判定の結果と、撮像時の撮像情報とに基づいて動きぼけ付加処理を行う。静動判定は、フレーム内の領域(画素単位或いは複数画素による画素ブロック単位)毎について動領域か静領域かを判定する処理であり、例えば前後フレームの比較などの簡易な処理で可能である。
また撮像情報とは、例えばシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報(例えば撮像装置の水平方向、垂直方向の動きを示す情報)などである。
これらの静動判定結果と撮像情報にもとづいて、動画像についてジャーキネス劣化が発生しやすい領域に動きぼけを付加する。これによって、フレーム内の領域毎に動きベクトルを検出するという処理負担の大きい処理を不要とする。
【発明の効果】
【0018】
本発明によれば、動画像に対して、その撮像時の撮像情報や静動判定に応じて適切な動きぼけを処理対象画像毎に付加することができ、人間の視覚特性上、より自然にジャーキネス劣化が低減された動画像を出力することができる。
特に、動きベクトル検出等の負担の重い処理を行わなくて良いことから、簡易に適切な動きぼけ付加処理を行うことができ、装置の簡易化、低コスト化に適している。
【発明を実施するための最良の形態】
【0019】
以下、本発明を実施するための最良の形態について、図面を参照しながら詳細に説明する。本発明の実施の形態としての画像処理装置は、人間の視覚特性上、不自然に見えてしまうジャーキネス劣化を含んだ動画像に対して動きぼけを付加して、このような劣化を低減するものである。
説明は次の順序で行う。
[1.基本構成例]
[2.第1の実施の形態:動画像撮像装置]
[2−1:動画像撮像装置の全体構成]
[2−2:撮像情報及び評価値生成]
[2−3:動きぼけ付加部の構成例及び動作]
[2−4:まとめ]
[3.第2の実施の形態:再生・受信装置]
[4.プログラム]
【0020】
[1.基本構成例]
まず本発明の実施の形態の画像処理装置としての基本的な構成例を図1で説明する。後述する第1の実施の形態は、この図1の画像処理装置100の構成を含む動画像撮像装置であり、第2の実施の形態は、この図1の画像処理装置100の構成を含む再生・受信装置となる。
【0021】
実施の形態の基本構成としての画像処理装置100は、画像処理を用いて、ジャーキネス劣化を低減した画像を生成することを目的としている。
撮像した動画像を表示装置を用いて表示した際には、人間の視覚特性上において不自然に感じるジャーキネス劣化が生じることがある。
そこで実施の形態では、入力された動画像が撮像された際の撮像情報を用いて、適切に動きぼけを付加することでジャーキネス劣化の発生を低減する。これによって画質劣化の少ない高画質な画像信号を生成して出力し、高画質化処理を実現する。
【0022】
図1の画像処理装置100は、画像取込部1と、動領域判定部2と、動きぼけ付加部3を備える。
画像取込部11は画像データを当該画像処理装置100に取り込む部位としている。例えば撮像装置などから動画像としての画像データDDを取得する。そして画像データDDを動領域判定部2及び動きぼけ付加部3に供給する。
取り込まれた画像データDDに対応しては、撮像情報CIとして、シャッタ速度、絞り値、焦点距離、ジャイロスコープ情報などの撮影時の情報が存在する。画像取込部1は、取り込んだ画像データDDについての、これらの撮像情報CIを抽出し、動領域判定部2に供給する。
【0023】
動領域判定部2は、画像データDDの前後フレームの差分を基にして、動いている物体の検出を行う。例えば処理対象とするフレーム内での領域(画素単位或いは複数画素による画素ブロック単位)毎について動領域か静領域かを判定する。
また、動領域判定部2は、撮像情報CIを基にして、動物体におけるジャーキネス劣化の発生度合いを示す評価値を生成し、動きぼけ付加部3に与える。
【0024】
動きぼけ付加部3は、動領域判定部2から与えられる評価値に基づき、入力される画像データDDに対して、擬似的に動きぼけを発生させる。これによりジャーキネス劣化を低減させた出力画像データODを出力する。動きぼけの発生アルゴリズムは、多様に考えられるが、その一例を後述する第1の実施の形態の説明中で述べる。
【0025】
このような画像処理装置100では、入力された画像データDDにおける処理対象画像(例えば1フレームの画像データ)について、動領域判定部2で行われる領域毎の静動判定の結果と、撮像情報CIとに基づいて動きぼけ付加部3が動きぼけ付加処理を行う。即ち静動判定結果と撮像情報CIにもとづいて、動きぼけ付加部3が動画像についてジャーキネス劣化が発生しやすい領域に動きぼけを付加することになる。これによって、フレーム内の領域毎に動きベクトルを検出するという処理負担の大きい処理を不要としながら、適切な動きぼけ付加を実現し、ジャーキネス劣化を低減させる。
【0026】
[2.第1の実施の形態:動画像撮像装置]
[2−1:動画像撮像装置の全体構成]
第1の実施形態として、被写体を撮像して、その撮像した動画像に上述した動きぼけ付加処理を施して出力する動画像撮像装置200の構成について、図2を参照して説明する。
【0027】
この動画像撮像装置200は、動画像を撮像して、撮像画像をDVDなどの記録媒体90に記録したり、外部機器に送信するものである。
この動画像撮像装置200は、図2に示すように、撮像光学系10として、絞り機構11、光学レンズ系12、撮像素子部13を備える。
【0028】
絞り機構11は、外部から入射する被写体光の光量を調節する。
光学レンズ系12は、絞り機構11により光量が調節された被写体光を撮像素子部13の受光面に集光させる。
撮像素子部13は、光学レンズ系12により集光された光を受光面で受光し、画像信号に変換する。そして所定の信号処理を行って動画像としての画像データDDを出力する。
撮像素子部13から出力される画像データDDは、動きぼけ付加部30及び動領域判定部40に供給される。
なお、画像データDDは、例えばフレームレート60fpsのプログレッシブ形式の単位画像から構成されるものとするが、プログレッシブ形式に限定されるものではなく、インタレース方式で動画像の単位画像が構成されているようにしても良い。
【0029】
また動画像撮像装置200は、ジャイロセンサ14を備え、動画像撮像装置200自体の動きを検出する。例えば水平方向、垂直方向の回転量情報を検出する。この回転量の情報は、いわゆる手ぶれ補正などに利用されるとともに、本例では動きぼけ付加のための撮像情報CIの1つとしても用いられる。
【0030】
制御部20は、動画像撮像装置200の全体の動作を制御する。例えばマイクロコンピュータにより構成される。この制御部20は、撮像動作制御、信号処理制御、記録媒体90への記録動作制御、外部機器への送信動作制御などを行う。
撮像動作制御としては、制御部20は、撮像時に撮像光学系10に対してレンズ駆動によるフォーカス制御、ズーム制御を行う。また絞り機構11の開閉制御や撮像素子部13でのシャッタ速度制御、信号ゲイン制御などにより露光調整制御を行う。また例えばジャイロセンサ14からの動画像撮像装置200自体の動きの検出に基づいた、ぶれ補正処理制御などを行う。
各制御動作についての詳述は避けるが、本例の画像処理に関する処理として、制御部20は撮像情報CIを出力するものとなる。即ち上記のような撮像時の制御動作からは、得られる画像データDDについてのシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報などを得ることができるが、これらを撮像情報CIとして動領域判定部40に供給する。
【0031】
動領域判定部40は、図5により後述するが、画像データDDの前後フレームの差分を基にして、フレーム内での領域(画素単位或いは複数画素による画素ブロック単位)毎について動領域か静領域かを判定する。また、動領域判定部40は、撮像情報CIを基にして、動物体におけるジャーキネス劣化の発生度合いを示す評価値Eを生成し、動きぼけ付加部30に与える。
動きぼけ付加部30は、その構成及び処理については図6〜図18で詳述するが、動領域判定部40から与えられる評価値に基づき、入力される画像データDDに対して、擬似的に動きぼけを発生させる。この場合、ジャーキネス発生と見込まれる領域にその発生量に応じた動きぼけ付加を行う。適応的に動きぼけ付加を行うことでジャーキネス劣化を低減させた出力画像データODを出力する。
【0032】
動きぼけ付加部30にて、適応的に動きぼけを付加した画像データODは、動画像符号化処理部50で圧縮処理される。圧縮されたデータストリームは、送信処理部60又は記録処理部70に供給される。
送信処理部60は、圧縮されたデータストリームに対して、所定の送信用のエンコード及び変調処理を行い、外部機器に送信出力する。
記録処理部70は、圧縮されたデータストリームに対して、所定の記録用のエンコード及び変調処理を行い、例えば光ディスクその他の記録媒体90に記録する。
なお制御部20は、撮像情報CIを送信処理部60、記録処理部70にも与える。送信処理部60、記録処理部70は、送信データ、または記録データに撮像情報CIを重畳させて送信や記録を行うこともできる。
【0033】
[2−2:撮像情報及び評価値生成]
このような構成の動画像撮像装置200では、動領域判定部40が、画像データDDのフレーム毎に動領域を判定する。そして動領域に対して動きぼけ付加部30で動きぼけを付加するわけであるが、動領域判定部40は、この動きぼけ付加処理のために評価値を生成して動きぼけ付加部30に与える。この評価値は、撮像情報CIを用いて生成する。
制御部20が動領域判定部40に与える撮像情報CIは、シャッタ速度情報S、絞り値情報F、焦点距離情報D、ジャイロスコープ回転量情報GX(水平方向の回転量)、GY(垂直方向の回転量)とする。
そして動領域判定部40が生成する評価値Eは、例えばフレーム内の各動領域について、それぞれどの程度の動きぼけを付加するかを示す情報となる。
【0034】
図3,図4を用いて、動領域判定部40が撮像情報CIに基づく評価値を生成する際の考え方を示す。
この図3,図4は、動領域判定部40が、制御部20から与えられる撮像情報CIに応じて評価値Eを制御するためのテーブルである。この図3,図4において評価値Eを縦軸とし、その値の高低を示しているが、評価値Eが「高い」というのは、被写体の動きが大きく、ジャーキネス劣化が大きい状態であって、動きぼけ量を多く付加すべきことを意味するものとする。
【0035】
図3(a)は撮像情報CIの1つとしてシャッタ速度Sを横軸に示している。
上述のように制御部20は、撮像素子部13の駆動における電子シャッタ機能の制御情報から、撮像時のシャッタ速度を得ることが出来る。
動領域判定部40は、供給されたシャッタ速度情報で示されるシャッタ速度が、画像データDDのフレームレートよりも高速な場合、その速度の比率に応じて動領域の評価値を増加させる。また、シャッタ速度情報で示されるシャッタ速度がフレームレートと同等の場合には評価値を下げ、動きぼけ付加処理が無効になるようにする。
なお、フレームレートは「fps」即ち「フレーム/秒」で表され、例えばフレームレート=60fpsでは、1秒間に60フレームであることを意味するが、この場合、撮像素子における1フレームの電子シャッタの露光時間は、通常は、最大1/60秒である。これがここでいうシャッタ速度である。一般に露光制御などのために電子シャッタ制御が行われるが、その場合、1フレーム期間のうちで露光期間を変化させる。例えば1/60秒のうちの露光時間(シャッタ速度)を1/120秒、1/180秒、1/1000秒などのように変化させることで露光調整が行われる。
動領域判定部40は、このような意味でのシャッタ速度Sを、当該フレームレートにおける本来のシャッタ速度(例えば1/60秒)と比較して評価値Eを生成する。
【0036】
シャッタ速度をSとし、特にシャッタ速度Sに応じた評価値をEsとすると、
Es=fs(S)
で評価値を操作する。関数fs(x)が線形増加関数であるとすれば、図3(a)に実線で示すようになる。
なお、非線形関数であってもよく、例えば図中に破線で示すようにシャッタ速度Sに応じた評価値Eを生成するものであってもよい。
【0037】
図3(b)は、動領域判定部40が、制御部20から与えられる絞り値Fに応じて、評価値を制御するためのテーブルである。
制御部20は、撮像光学系10の制御情報から、撮像時の絞り値Fを得ることが出来る。
動領域判定部40は、絞り値Fが小さい場合、被写界深度が浅くなり被写体前後がぼけやすくなるためジャーキネス劣化が発生しにくいと判断し、評価値Eを下げる。一方、絞り値Fが大きい場合、被写界深度が深くなり画像全体に渡ってシャープになるため、ジャーキネス劣化が発生しやすいと判断し、評価値Eを上げる。
ここで絞り値Fについての評価値をEfとすると、
Ef=ff(F)
で評価値を操作する。関数ff(x)は、図に示すような線形増加関数に限らず、非線形関数であっても構わない。
【0038】
図4(a)は、動領域判定部40が、制御部20から与えられる焦点距離Dに応じて、評価値を制御するためのテーブルである。制御部20は、撮像光学系10の制御情報から、撮像時の焦点距離Dを得ることが出来る。
動領域判定部40は、焦点距離Dが短い(広角)場合、被写界深度は深くなるため、それだけ見ればジャーキネス劣化が発生しやすいが、この場合、手振れや動体の動きは画面上では相対的に小さくなるため、総合的にはジャーキネス劣化が発生しにくいと判断し、評価値を下げる。
一方、焦点距離Dが長い(望遠)場合、被写界深度は浅くなり、それだけ見ればジャーキネス劣化が発生しにくいが、この場合、手振れや動体の動きは相対的に画面上で大きくなり、総合的に見ればジャーキネス劣化が発生しやすいと判断し、評価値を上げる。
ここで、焦点距離Dについての評価値をEdとすると、
Ed=fd(D)
で評価値を操作する。関数fd(x)は、図に示すような線形増加関数に限らず、非線形関数であっても構わない。
【0039】
図4(b)は、動領域判定部40が、制御部20から与えられるジャイロスコープ情報(水平方向の回転量GX)に応じて、水平方向の評価値EXを制御するためのテーブルである。制御部20は、ジャイロセンサ14の検出情報から、動画像撮像装置200自体の水平方向の動きを得ることが出来る。
動領域判定部40は、水平方向の回転量GX(垂直軸に対する回転量)が小さい場合、画面の動きは小さく、ジャーキネス劣化が発生しにくいと判断し、水平方向の評価値EXを下げる。一方、回転量GXが大きい場合、ジャーキネス劣化が発生しやすいと判断し、水平方向の評価値EXを上げる。ここで、回転量GXについての、水平方向の評価値をEgxとすると、
Egx=fgx(GX)
で評価値を操作する。関数fgx(x)は、図に示すような線形増加関数に限らず、非線形関数であっても構わない。
【0040】
図4(c)は、動領域判定部40が、制御部20から与えられるジャイロスコープ情報(垂直方向の回転量GY)に応じて、垂直方向の評価値EYを制御するためのテーブルである。制御部20は、同じくジャイロセンサ14の検出情報から、動画像撮像装置200自体の垂直方向の動きを得ることが出来る。
動領域判定部40は、垂直方向の回転量GY(水平軸に対する回転量)が小さい場合、画面の動きは小さく、ジャーキネス劣化が発生しにくいと判断し、垂直方向の評価値EYを下げる。一方、回転量GYが大きい場合、ジャーキネス劣化が発生しやすいと判断し、垂直方向の評価値EYを上げる。ここで、回転量GYについての、垂直方向の評価値をEgyとすると、
Egy=fgy(GY)
で評価値を操作する。関数fgy(Y)は、図に示すような線形増加関数に限らず、非線形関数であっても構わない。
【0041】
動領域判定部40は、例えば以上のような方式で、撮像情報CIに応じた評価値Eを生成する。
動領域判定部40の構成例を図5に示す。
動領域判定部40は、動領域検出部41、フレームメモリ42、評価値生成部43を備える。
動領域検出部41は、入力される画像データDDの現在のフレーム画像と、1フレーム前のフレーム画像の差分を求め、動いている領域(動領域)を検出する。
領域とは、画素単位でもよいし、複数画素による画素ブロック単位でもよい。
即ち動領域検出部41は、現フレームの画像をフレームメモリ42に記憶しつつ、前フレームの画像をフレームメモリ42から読み出して、領域毎に差分計算を行う。そして計算結果により、各領域が「動領域」であるか「静領域」であるかを示す検出結果値を出力する。例えば動領域を「1」、静領域を「0」として示す情報として、現フレームの各領域毎の検出結果情報を生成し、評価値生成部43に供給する。
【0042】
評価値生成部43は、動領域検出部41から出力される検出結果で示される動領域(検出結果が「1」の領域)に対して、制御部20から与えられる撮像情報CI(シャッタ速度S、絞り値F、焦点距離D、回転量GX,GY)を基に評価値を生成する。
このとき、各撮像情報CIに対する制御は、図3,図4に示したテーブルに従う。最終的な評価値は、これらのテーブルによる操作を組み合わせて出力する。
【0043】
一例として、最終的な評価値をEx,Eyとして、以下の式で求める。
Ex=ws×Es+wf×Ef+wd×Ed+wgx×Egx
Ey=ws×Es+wf×Ef+wd×Ed+wgy×Egy
なお、評価値Exは、水平方向に付加すべきぼけ量を示す値、評価値Eyは、垂直方向に付加すべきぼけ量を示す値である。
また、wsはシャッタ速度Sに基づく評価値Esに与える重み係数、wfは絞り値Fに基づく評価値Efに与える重み係数、wdは焦点距離Dに基づく評価値Edに与える重み係数、wgxは水平回転量GXに基づく評価値Egxに与える重み係数、wgyは垂直回転量GYに基づく評価値Egyに与える重み係数である。
【0044】
評価値生成部43は、例えばこのように重み付け加算によって、水平方向についての評価値Exと、垂直方向についての評価値Eyを生成し、これらを動きぼけ付加部30に出力する。動きぼけ付加部30は、供給される評価値E(この場合Ex,Ey)に基づいて、後述のように動きぼけ付加処理を行う。
【0045】
このように動領域判定部40では、まずフレーム内の動領域を検出し、各動領域に対して撮像情報CIに基づいて値を調整した評価値を生成する。
例えばフレーム内の静領域については、動領域検出部41での検出結果「0」をそのまま評価値Eとし(評価値E=0)、動きぼけ付加部30が、動きぼけを付加しない領域として認識できるようにする。
そして動領域については、動領域検出部41での検出結果「1」に対して、評価値生成部43の演算処置で上記Ex,Eyの式のように撮像情報CIに基づいた演算を行い、撮像情報CIに応じて評価値を調整するものとなる。
つまり動領域について、撮像情報CIに基づいて求められる上記Ex,Eyを評価値とし、動きぼけ付加部30に対して、付加する動きぼけ量を示す情報とする。
【0046】
なお、上記のように評価値Ex,Eyを求める演算は一例であり、他にも多様に考えられる。例えば重み付け乗算を行っても良い。
また、ジャイロセンサ14の検出に基づく回転量として水平方向、垂直方向の回転量を用いることで、水平、垂直のそれぞれの評価値Ex,Eyを求めているが、方向性による区別をつけずに1つの評価値Eを算出してもよい。
逆に、動きの方向を45°方向、135°方向なども検出して、水平方向、垂直方向、45°方向、135°方向のそれぞれの評価値を算出することも考えられる。
またシャッタ速度情報S、絞り値情報F、焦点距離情報D、ジャイロスコープ回転量情報GX(水平方向の回転量)、GY(垂直方向の回転量)の全てを用いなくても良い。つまりこれらの一部を評価値Eの算出に用いても良い。
また動領域検出部の検出結果を2値(「0」か「1」)ではなく、多値で扱っても良い。この場合、静止領域では検出結果が「0」となり、動きの大きい領域では検出結果が大きくなり、動きの小さい領域では検出結果が小さくなる。この検出結果をMとし、上記のようにして求められた評価値Ex,Eyに乗ずることによって最終的な評価値を算出しても良い。
また、上記例では、シャッタ速度情報S、絞り値情報F、焦点距離情報D、ジャイロスコープ回転量情報GX、GYから、それぞれ評価値Es、Ef、Ed、Egx、Egyを関数演算で求め、その後、評価値Es、Ef、Ed、Egx、Egyについて重み付け加算を行うとしたが、シャッタ速度情報S、絞り値情報F、焦点距離情報D、ジャイロスコープ回転量情報GX、GYを、直接用いて評価値Eを算出することもできる。
【0047】
[2−3:動きぼけ付加部の構成例及び動作]
動きぼけ付加部30は、撮像素子部13から供給される画像データDDに対して、動領域判定部40からの評価値Eに基づいて動きぼけを付加する。
この動きぼけ付加部30の構成例及び動作を説明していく。
【0048】
図6は、動きぼけ付加部30の構成例を示している。
動きぼけ付加部30は、画像データDD、および動領域判定部40からの評価値Eを入力とし、入力される動画像を構成する1フレーム毎の画像データDDに対して動きぼけの付加を行ってジャーキネス劣化が低減した出力画像ODを出力する。
【0049】
図6に示すように、動きぼけ付加部30は、フィルタリング処理などにより処理対象フレーム中から選択された画素に動きぼけを付加し、その結果得られた画素から構成される1つ以上の縮小面を生成する縮小画像生成処理部32を備える。
また、評価値Eを基に、処理対象フレーム中の対応画素および縮小画像生成処理部32において生成された縮小面中の対応画素から、出力画像を構成する各画素の画素値を算出し出力する動きぼけレンダリング処理部31を備える。
【0050】
各処理部についての具体的な処理内容を説明する前に、この動きぼけ付加部30による動きぼけ付加処理の概要について述べておく。
動きぼけ付加部30は、縮小画像生成処理部32と動きぼけレンダリング処理部31により各画素に適切な量の動きぼけを付加し、ジャーキネス劣化を低減した画像を出力する。
図7は、動きぼけ付加処理の概要を示すものである。特に、図6中の縮小画像生成処理部32と動きぼけレンダリング処理部31において行われる処理内容の概要を説明するためのものである。
【0051】
図7における元画像(基底面)とは、入力される画像データDDとしての1つの処理対象フレームの画像データとなる。
縮小画像生成処理部32では、処理対象フレームである元画像に対し、詳しくは後述する空間フィルタリング処理を実行し、その結果として第1縮小面を作成する。
第1縮小面は、元画像よりも一定の比率だけ縮小され、画素数が減少した画像である。
さらに縮小画像生成処理部32は、得られた第1縮小面に対し、同様の空間フィルタリング処理を実行し、結果として得られる第2縮小面を作成する。
このような要領で縮小画像生成処理部32は、再帰的にフィルタ処理を用いることで、所定の階層数の縮小画像(第1縮小面〜第n縮小面)の生成を行う。
【0052】
動きぼけレンダリング処理部31では、上記の要領で生成された階層型の縮小画像(第1縮小面〜第n縮小面)を用いて、動きぼけを適応的に付加した、視覚特性上自然にジャーキネス劣化を低減した画像を生成し、出力する。
動きぼけレンダリング処理部31は、例えば図7中に示す元画像の各画素について、元画像である基底面、第1縮小面、および第2縮小面から、動きぼけ付加対象の画素に対応する位置の画素値を各面から抽出し、レンダリング方式に重み付け加算を実行する。
各面が有する画素数はそれぞれ異なるため、動きぼけ付加対象の画素に対応する位置の画素が各縮小面に存在しない場合、詳しくは後述する周辺の画素からの補間処理を行い、画素値を抽出する。
基底面及び各縮小面から抽出したそれぞれの画素値に対する重み係数(w0、w1、w2)は、評価値Eに依存して決める。
例えば、評価値Eが大きい値の場合、つまり付加する動きぼけの量が大きい場合ほど、高階層の縮小面から抽出した画素の重み係数を大きくする。図7の例においては第2縮小面から抽出した画素の重み係数を大きくすることになる。
一方、評価値Eが小さい値の場合、つまり付加する動きぼけの量が少ない場合ほど、低階層の縮小面から抽出した画素の重み係数を大きくする。例えば図7の例においては基底面から抽出した画素の重み係数を大きくする。
このような重み付け加算の結果として、ジャーキネス劣化を低減した画像が生成される。
【0053】
縮小画像生成処理部32の具体的な処理について説明する。
縮小画像生成処理部32で行われる処理は、入力される画像データDDに対し空間フィルタリング処理を実行することである。また、その結果として得られる縮小画像に対し(または画像として構成されなくても、前段のフィルタリング処理の結果として得られる複数の画素を用いて)、さらに同様の空間フィルタリング処理を繰り返す。これにより階層的な縮小画像データRSDを生成する。
上記空間フィルタリング処理は、フィルタリング処理前の画像中において複数画素を有する領域の画素情報を用いて行われ、処理の前後にて一定の比率だけ縮小され、画素数が減少した画像を生成する。そのためフィルタリング処理後の各画素は、フィルタリング処理前の画像中における当該領域をぼかした画素、として出力されるわけである。
【0054】
以下において、最も簡易なフィルタリング方法の例を用いて詳しく説明する。
図8は、縮小画像生成を行うフィルタ処理の具体例における、縮小前後の画素の対応関係について示すものである。
図8の例では、縮小前の画像において、分割領域R11として示した4×4画素を用いたフィルタリングを実行し、縮小後の画像における画素P11を出力することを表現している。分割領域R12,R21についても同様に画素P12,P21を示している。
結果として、縮小後の画像は、縮小前の画像と比べ、垂直・水平方向にそれぞれ1/4の画素数となっている。
なお4×4画素ブロックを用いるのは、あくまで一例であり、N×Nの画素ブロックを用いて同様の処理を行えば、垂直・水平方向にそれぞれ1/Nの画素数を有する縮小画像が生成できる。
【0055】
分割領域R11に対して行うのは、例えば、ボックスフィルタなどのローパスフィルタ処理であるとすれば、周辺画素の画素値を平均化することで、画素P1はぼけを含んだ画素として生成される。
【0056】
このようにして得られた縮小画像を図7に示した第1縮小面とした場合、この第1縮小面に対し、さらに図8と同様の空間フィルタリング処理を実行して第2縮小面を作成する。
この場合、第1縮小面に4×4画素の分割領域を用いたフィルタリングを実行することにより、第2縮小面の各画素は、元画像における16×16画素の領域の画素値を平均化したぼけ画素として生成されることになる。
必要に応じて、第2縮小面の生成後に第3縮小面以降を同じ要領で生成することも可能であり、階層数を増やしても処理の内容は変わらない。
【0057】
このように、縮小画像生成処理部2では、入力画像に空間ローパスフィルタ処理を実行することで、結果として得られる低解像度な画像を生成し、さらに生成した低解像度画像に同様の処理を実行することでより低解像度な画像を生成していく。このような多重解像度フィルタリング処理を実行して、階層型の縮小画像データRSDを生成する。
【0058】
図9、図10に、他の例として、方向選択型縮小画像生成フィルタ方式を説明する。
図8では分割領域として4×4画素の方形領域の例を示したが、フィルタリングを実行する分割領域は、方形でなくても構わない。
むしろ図8に示した4×4画素を用いたフィルタのような等方型フィルタでは、後段の動きぼけレンダリング処理で動きぼけを付加した場合、画質上の問題が発生してしまう場合もあり得る。それは、付加したい所望の動きぼけのみでなく、動きと直交する方向に低解像度化した結果生じるぼけが支配的になってしまう現象である。
例えば、水平方向の動きに応じた動きぼけを付加したい場合、動きぼけの方向である水平のみでなく、垂直方向にもローパスフィルタリングされた縮小画像を用いるため、垂直方向の解像度が低下した画像になってしまう。
つまり画像内容としての動き方向に応じてぼけを付加することでジャーキネスを低減するときに、動き方向とは直交方向にもぼけが付加され、それが視覚上適切な画像とならない場合がある。
【0059】
そのような事象を回避するには、最終的に付加される動きぼけの方向を考慮した縮小面生成フィルタリングを行う必要がある。この方法は、動きぼけを付加する各方向に独立に縮小面を用意するものである。
【0060】
図9は、水平方向の動きぼけ付加用の、具体的な縮小画像生成フィルタ処理の一例における、縮小前後の画素の対応関係について示すものである。
図9においては、まず、入力される画像データDD(基底面)に4×1タップの長方形フィルタ処理を実行し、水平方向の画素数が1/4、垂直方向の画素数は変化しない、水平方向1/4縮小画像を生成している。
例えば基底面における領域R011、R012、R021についてのそれぞれのフィルタ処理で得られた画素は、水平方向1/4縮小画像における画素P111、P112、P121となる。
なお4×1画素領域を用いたのは、あくまで一例であり、所望の縮小率に応じて変更できる。
フィルタの内容は、例えばボックスフィルタなどのローパスフィルタである。
【0061】
さらに、生成した水平方向1/4縮小画像に対し、同様のフィルタ処理を実行することで、水平方向の画素数が1/16、垂直方向の画素数は変化しない、水平方向1/16縮小画像を生成する。
例えば水平方向1/4縮小画像における領域R111についてのフィルタ処理で得られた画素は、水平方向1/16縮小画像における画素P211となる。
このように、水平方向の動きぼけ付加用として、垂直方向の解像度低下を防ぐため、水平方向のみ多階層の縮小画像を生成する。
【0062】
図10は、垂直方向の動きぼけ付加用の、具体的な縮小画像生成フィルタ処理の一例における、縮小前後の画素の対応関係について示すものである。
図10においても、図9の場合と同様に、まず、入力される画像データDDに1×4タップの長方形フィルタ処理を実行し、水平方向の画素数が変化せず、垂直方向の画素数が1/4となった、垂直方向1/4縮小画像を生成している。フィルタの内容は、例えばボックスフィルタなどのローパスフィルタである。
例えば基底面における領域R011、R012、R021についてのそれぞれのフィルタ処理で得られた画素は、垂直方向1/4縮小画像における画素P111、P112、P121となる。
【0063】
さらに、生成した垂直方向1/4縮小画像に対し、同様のフィルタを実行することで、水平方向の画素数が変化せず、垂直方向の画素数が1/16となった、垂直方向1/16縮小画像を生成する。
例えば垂直方向1/4縮小画像における領域R111についてのフィルタ処理で得られた画素は、垂直方向1/16縮小画像における画素P211となる。
このように、垂直方向の動きぼけ付加用として、水平方向の解像度低下を防ぐため、垂直方向のみ多階層の縮小画像を生成する。
【0064】
例えば以上のように、水平方向、垂直方向の例を示したが、これら以外に、斜め45°方向、斜め135°方向、その他のあらゆる角度方向の縮小画像生成フィルタを採用しても構わない。
上記までに説明する方法は、各方向の動きぼけ付加用として独立に縮小画像を生成するため、後段の動きぼけレンダリング処理において、各画素に付加する動きぼけの方向に応じて、適応的に各方向の縮小画像から画素を選択または合成する必要が生じる。この方法については、動きぼけレンダリング処理部3の説明において述べる。
【0065】
さて、上記までに付加される動きぼけの方向を考慮した縮小面生成フィルタリングについて説明をしてきたが、その処理をより詳細に説明するために、1つの具体的な構成例を設定して、以降の説明に逐次用いる。
下記の<具体例:条件1>をその例として用いる。
【0066】
<具体例:条件1>
縮小画像生成方向:水平・垂直
縮小画像階層数:水平および垂直に各3層(第3縮小面まで)
動きぼけ生成方向:動きぼけレンダリング時に水平・垂直から移動速度の絶対値が大きい方を選択(詳細は後述)
フィルタ前後の縮小率
第1縮小面:1/4
第2縮小面:1/16
第3縮小面:1/64
【0067】
上記の仕様では、付加できる最大の動きぼけ量は、水平・垂直の各方向に、±64画素移動した相当の動きぼけまでを生成できる。
図11は、<具体例:条件1>の設定における、縮小画像生成処理部32の構成例を示すものである。
上記の水平・垂直の各方向に1次元フィルタを用いて縮小面生成処理を実行する場合の処理フローを示しており、生成された各縮小面は縮小画像データRSDとして出力される。
即ち入力画像データDDに対して、1次元フィルタ処理21−1で水平方向1/4縮小画像を生成する。さらに1次元フィルタ処理21−1の結果について1次元フィルタ処理21−2で水平方向1/16縮小画像を生成する。さらに1次元フィルタ処理21−2の結果について1次元フィルタ処理21−3で水平方向1/64縮小画像を生成する。
また、入力画像データDDに対して、1次元フィルタ処理22−1で垂直方向1/4縮小画像を生成する。さらに1次元フィルタ処理22−1の結果について1次元フィルタ処理22−2で垂直方向1/16縮小画像を生成する。さらに1次元フィルタ処理22−2の結果について1次元フィルタ処理22−3で垂直方向1/64縮小画像を生成する。
これらの結果として得られた6個の縮小画像データRSDが出力されることになる。
【0068】
なお、図示している1次元フィルタ(21−1〜22−3)の処理は、ソフトウエア演算で実現される再帰的なフィルタ処理をブロックで表現した処理フローとしているが、当該構成をハードウエア構成として捉えても良い。次の図12も同様である。
【0069】
図12は、図11に示した処理フローを、拡張して一般化したものである。
上記の<具体例:条件1>の設定においては、生成する水平・垂直方向の階層数は3と決めていたが、図12はこれを限定せず、水平方向の縮小面階層数をMx、垂直方向の縮小面階層数をMyと表現して一般化している処理フローである。
1次元フィルタ処理21−1・・・21−Mxにより、Mx階層の水平方向縮小画像が生成され、また1次元フィルタ処理22−1・・・22−Myにより、My階層の垂直方向縮小画像が生成される。これらが縮小画像データRSDとして出力される。
なお、図示及び説明は省略するが、縮小画像生成方向について、水平・垂直方向のみから斜め方向も含めた構成へと拡張することもできる。
【0070】
ここまで、各方向の動きぼけ付加用として独立に縮小画像を生成する方法について、その処理手順を述べたが、以下では、実際に各方向用に縮小画像を生成する際に用いるフィルタについて、その内容を説明する。
【0071】
上記までの説明においては、例として4タップのボックスフィルタを用いることを述べてきた。これは、縮小率1/4に対応して4画素ブロックのフィルタを用いていたわけであり、最も容易に実現できる方法であるため、である。動きぼけ発生原理を考慮しても、移動平均フィルタと同内容でボックスフィルタが、原理的に実際の動きぼけに最も類似するはずである。しかしながら、最終的に得られる画質の向上のために、変更することも可能である。
【0072】
図13は、縮小画像生成処理に用いるフィルタ形状の具体例を示すものである。
上記<具体例:条件1>の設定にて、水平・垂直のいずれかの方向に1/4縮小するフィルタを想定し、横軸は4画素ごとを1ブロックと考えた場合の座標を示しており、縦軸はフィルタとして各画素に乗ずる加重である。
4タップのボックスフィルタの他、7タップのテントフィルタ、10タップの階段フィルタ、13タップのガウシアンフィルタを例として図示しており、所謂FIRローパスフィルタであれば採用可能であることを示している。
【0073】
フィルタタップ数は、縮小フィルタによる縮小率が1/Nのとき、Nタップ以上であることが必要条件である(例えば、縮小率1/4、入力4画素に対し1画素を出力する場合には4タップ)が、さらにタップ数を増加することにより、画質の向上が期待できる。
これは、タップ数が小さいほど発生する恐れが高まる、折り返し現象に起因する画質劣化を低減できるためである。
また、フィルタタップ数の増加に伴い、隣接する分割領域に属する画素を重複してフィルタ処理を行うことになるが、それは問題とならない。
【0074】
図14は、フィルタリングを行う場合に用いる各縮小画像の画素の位置関係を説明するための図である。
いま、水平方向の縮小画像を生成しているものとして、各縮小画像からの画素をどのように重み付け加算することで、出力画素の画素値を算出するかを、この図を用いて説明する。フィルタタップ数は7の場合を例として用いている。なお、垂直方向もこれに準じて行えばよいため、図は省略する。
【0075】
図14中には、各縮小画像の画素について、番号が振られている。以下、何層目の縮小画像の何番目の画素か、についてこの番号を用いて表現する。例えば、1/16縮小画像の番号79の画素はL2(79)と表記する。基底面である入力画像データDD中の画素はL0(画素番号)で表現する。
【0076】
各縮小画像中の画素番号は、基底面上の対応する位置のものであり、各縮小面中で斜線を付した画素を位相の中心として、フィルタリングが実行されて作成されたものである。例えば、第1番目の縮小面である1/4縮小面中の画素L1(7)は、基底面中のL0(4)〜L0(10)までの画素を用いた7タップのフィルタによって、生成された画素である。
このように、各縮小画像においてフィルタを4画素シフトしつつ実行することにより、用いる画素が隣接するフィルタと重複しても問題なく、フィルタの前後で1/4だけ縮小された、次層の縮小面が作成される。当然、縮小率が異なる場合も同様の方法で実現可能である。
【0077】
続いて動きぼけレンダリング処理部31の具体的な処理について説明する。
動きぼけレンダリング処理部31は、入力された画像データDDと、縮小画像生成処理部32で生成された階層的な縮小画像を用いて、動きぼけを含んだ出力画像の各画素値を算出する。
【0078】
図15は、動きぼけレンダリング処理の流れを示す概略図である。
動きぼけレンダリング処理部31には、画像データDD、縮小画像データRSDおよび評価値E(例えば水平方向の評価値Ex及び垂直方向の評価値Ey)が入力し、各画素に適切な量の動きぼけが付加された出力画像データODを出力する。
【0079】
まず、評価値Ex、評価値Eyから、当該画素に対し、どの方向に何画素移動した相当の動きぼけを付加するかの情報である、レンダリングパラメータの抽出が行われる(S1)。
レンダリングパラメータとは、言い換えれば、後段のレンダリング処理において、画像データDDおよび縮小画像データRSD中の当該画素の各々に、どれだけの重みを乗じて加算処理を実行するか、を示すデータである。後に具体的な例を用いてより明確に説明する。
縮小画像データRSDには、画像データDD中の各縮小画像において、当該画素に位置的に対応する画素の画素値を、補間処理によって生成する、合成画素算出処理が行われる(S2)。
この処理が必要な理由および具体的な処理内容の例については、詳しくは後述する。
最後に、画像データDDの当該画素、および、縮小画像データRSDから生成された各合成画素、のそれぞれに重みを付けて加算処理することにより、当該画素に対応する出力画素の画素値を算出する、レンダリング処理が行われる。重みの情報は、入力されるレンダリングパラメータ中にあるものとする。
【0080】
図16は、上記した<具体例:条件1>における、動きぼけ付加部30の構成、特に動きぼけレンダリング処理部31の処理ブロックを詳細に示すものである。
縮小画像生成処理部32においては、図示するように、縮小画像データRSDとして、水平および垂直に各3層の縮小画像が作成されている。
【0081】
動きぼけレンダリング処理部31において、合成画素算出処理部33−1〜33−3には、画像データDDから処理対象の当該画素が入力されるのとタイミングを合わせて、3層の水平縮小画像から各々に画素が入力され、後述する合成画素値の算出処理が行われる。
また合成画素算出処理部32−1〜32−3には、画像データDDから処理対象の当該画素が入力されるのとタイミングを合わせて、3層の垂直縮小画像から各々に画素が入力され、後述する合成画素値の算出処理が行われる。
これら合成画素算出処理部33−1〜33−3、32−1〜32−3で算出された各縮小画像に対する合成画素は、セレクタ34へと入力される。
【0082】
評価値判定部35には、評価値E(この場合、Ex及びEy)が入力されている。
上記<具体例:条件1>は、各画素に水平および垂直方向のいずれか一方の動きぼけを選択的に付加する条件である。
そのため、評価値判定部35では、評価値Ex,Eyを基に、動きを付加する方向が水平と垂直のいずれであるかを示す選択情報と、付加する動きぼけの方向に対する各合成画素値に乗ずる重みを示す重み情報、を生成する。
そして選択情報は、セレクタ34へ供給され、重み情報は、重み付け画素加算処理部36へ供給される。
【0083】
セレクタ34は、評価値判定部35から入力された選択情報を基に、合成画素値のうち水平・垂直のどちら一方から入力された画素値のみを選択し、重み付け画素加算処理部36へ出力する。つまり、<具体例:条件1>の場合では、6つの画素値が入力し、3つの画素値として出力される。
重み付け画素加算処理部36には、既に入力された画像データDDから処理対象の当該画素が入力されている。
さらに、上記の通り、合成画素値のうち方向選択された各画素値が入力される。
また、評価値判定部35から各画素値に対する重み情報が入力している。
この重み付け画素加算処理部36では、重み情報を基に、入力した各画素値に対し、詳しくは後述する重み付け画素加算処理を実行し、出力する画素値を算出する。
【0084】
合成画素算出処理部33−1〜33−3,32−1〜32−3における処理を図17で説明する。
図17は、合成画素算出処理および重み付け画素加算処理の内容について、具体例を示して説明するための図である。画像データDDと縮小画像データRSDについて、上記図14と同様に、各画素を示している。
【0085】
合成画素算出処理部33−1〜33−3,32−1〜32−3で行われる合成画素値の算出は、水平および垂直の各縮小画像から入力された画素について行うが、図17では、付加する動きぼけの方向が水平方向の場合(つまり合成画素算出処理部33−1〜33−3のみ)について図示している。以下の説明は、垂直方向の場合(合成画素算出処理部32−1〜32−3)についても同様に考えればよい。
【0086】
まず、合成画素値の算出処理が必要な理由について述べる。
後段の重み付け画素加算処理部36の処理では、前記の通り、画像データDDの当該画素、および、縮小画像データRSDから生成された各合成画素、のそれぞれに重みを付けて加算処理することにより、当該画素に対応する出力画素の画素値を算出するわけである。
しかし、各縮小画像には常に、画像データDD中の当該画素に対応する画素が存在するわけではないため、各縮小画像における対応画素を補間処理により算出しなくてはならない。
例えば、図17中の画像データDDで「20」の番号を振られている画素L0(20)に位置的に対応する、各縮小画像中における画素は存在しない。これは、画像データDDにフィルタリングを実行して、第1の縮小画像である1/4縮小画像を生成する際、L0(20)がフィルタの位相中心ではない画素であるためであり、1/4縮小面以降、位置的に対応する画素は存在しないわけである。
【0087】
そのため、何らかの補間処理によって、当該画素に対応する縮小画像中の画素値L1(20)’、L2(20)’、L3(20)’を推定するわけである。
ここでは、例として線形補間法を用いて、L1(20)’、L2(20)’、L3(20)’を算出する場合を考える。
【0088】
いま、各縮小画像生成時に位相中心となった画素の入力画像データDDにおける座標と、当該画素との距離を、図17中に示す通り、d1(20)、d2(20)、d3(20)のように表現する。これらは、当該画素よりも左に存在し、かつ、最寄りの位相中心となる画素、との距離である。このとき、入力画像データDDで「20」の番号を振られている画素L0(20)に対応する各縮小画像中における合成画素値L1(20)’、L2(20)’、L3(20)’は、
【数1】
と表現される。
【0089】
一般には、入力画像データDD中の第N番目画素L0(N)に対応する、第K縮小画像(1/R縮小面)において位置的に対応する合成画素の画素値LK(N)’を、以下のように表現する。
【数2】
ただし、<N>Kとは、入力画像データDD中の当該画素である第N番目の画素よりも左に存在し、かつ、第K縮小画像においてNに最寄りの位相中心となる画素、である。
【0090】
この(数2)に示す通り、各縮小面に存在する2画素(位置的に当該画素に対応する最寄りの2画素)を用いた、2タップのフィルタリング処理によって、線形補間された画素値を算出できる。
なお、ここでは線形補間による合成画素値算出の方法を示したが、補間の方式は、スプライン補間など、より高次な計算法を用いて算出することも可能である。
【0091】
次に評価値判定部35における処理を説明する。
各画素に水平および垂直方向のいずれか一方の動きぼけを選択的に付加する、上記<具体例:条件1>に準じた評価値判定部35では、既に入力されている評価値Ex,Eyを基に、動きを付加する方向が水平と垂直のいずれであるかを示す選択情報と、付加する動きぼけの方向に対する各合成画素値に乗ずる重みを示す重み情報、を生成する。
【0092】
評価値判定部35による動きぼけを付加する方向の選択方式としては、入力された評価値Ex,Eyの値、即ち水平および垂直方向の動きの大きさを比較し、それが大の方向にぼけを付加する方法を採用することができる。
Ex≧Eyのとき:水平方向のぼけ付加
Ex<Eyのとき:垂直方向のぼけ付加
これを基に、動きぼけを付加する方向についての選択情報を、セレクタ34へと出力する。この例の場合、セレクタ34へ送る情報量は、1画素の動きぼけ付加に対して1ビットでよい。
【0093】
評価値判定部35のもうひとつの役割は、各合成画素値に乗ずる重みの情報を算出して、重み付け画素加算処理部36へと出力することであるが、この重み付けの決定方法は、以下の、重み付け画素加算処理部36の詳細な説明の中で例を示して明らかにする。
【0094】
次に重み付け画素加算処理部36における処理を説明する。
重み付け画素加算処理部36には、画像データDDの当該画素L0(N)、およびセレクタ34で選択された、水平・垂直方向のどちらか一方について、各縮小画像から生成された合成画素が各々入力される。
以下では、<具体例:条件1>の水平・垂直方向用に3層の縮小画像が生成されている場合であるとし、さらに付加する動きベクトル方向がセレクタ34において、水平方向に決定されているものとする。
このとき、各水平縮小画像中の画素から生成された合成画素をL1(N)’、L2(N)’、L3(N)’と表現する。
【0095】
ここで、同じく評価値判定部35から入力した重み情報を基に、下記(数3)に示す、これらの画素値の線形重み付け加算処理が行われ、出力画素値Lout(N)が算出される。
【数3】
ここでw0〜w3は、各画素値に乗ずる重みである。一般には、下記の(数4)のように表せる。
【数4】
ただし、Mは当該方向に生成された縮小画像数であり、L0(N)=L0(N)’であるものとする。
【0096】
評価値判定部35は、入力された評価値Ex,Eyから、画像データDDの各画素に対して、各縮小画像に対する重みwkを算出し、重み付け画素加算処理部36へと提供しているわけである。
各画素値に与える重みを生成する手段であるが、<具体例:条件1>の場合を想定し、重みw0〜w3を決定する方法の例を示す。
当該画素の位置的に対応する評価値Ex,Eyのうち、値が大である成分の値をVと記す。そして以下の重み決定ルールに基づいて、順に分け与えていく。
【0097】
手順1:w0=1。
V≦1であればw1=0,w2=0,w3=0とし、手順5へ。
手順2:V−w0>4−1であればw1=3。
そうでない場合、w1=V−w0,w2=0,w3=0とし、手順5へ。
手順3:V−(w0+w1)>16−4であればw2=12。
そうでない場合、w2=V−(w0+w1),w3=0とし、手順5へ。
手順4:w3=V−(w0+w1+w2)。
手順5:w0〜w3の各値をVで除算して規格化。
【0098】
以上は一例であり、その限りではない。特に、手順5にて除算が生じるため、ハードウェアでの実現の場合に処理コストが増大する。そのため、Vに対する各重みwkをテーブル化することで、処理コストの低減が可能である。
【0099】
図18は、重み情報テーブルの例である。
図中のテーブルの1列目は、選択された方向の評価値E(評価値Ex,Eyのいずれか)を示しており、2〜5列目は、各縮小面から抽出した各画素に乗ずる重みの値を示している。
数値はあくまで一例であり、限定するものではないが、評価値Eが小さいほど、各縮小面の重みの値は、小さい階層(基底面や第1縮小面)の重みの値を大とし、逆にベクトル絶対値が大きいほど、大きい階層(第3縮小面や第2縮小面)の重みの値を大とすべきである。
【0100】
このように評価値判定部35で重み情報が生成されて重み付け画素加算処理36に供給される。そして重み付け画素加算処理36で、例えば上記(数3)の線形重み付け加算処理が行われ、出力画素値Lout(N)が算出されることになる。
そしてこの重み付け画素加算処理36は、ジャーキネス劣化を低減した出力画像データODとなる。
【0101】
[2−4:まとめ]
以上、第1の実施の形態の動画像撮像装置200について説明してきたが、この実施の形態によれば、人間の視覚特性上、より自然にジャーキネス劣化が低減された動画像を出力することができる。
特に、本実施の形態では、撮像され、入力された画像データDDにおける処理対象画像(例えば1フレームの画像データ)について、領域毎の静動判定の結果と、撮像時の撮像情報CIとに基づいて動きぼけ付加処理を行う。
そして動領域判定部40における静動判定は、フレーム内の領域(画素単位或いは複数画素による画素ブロック単位)毎について動領域か静領域かを判定する処理であり、例えば前後フレームの比較などの簡易な処理で可能である。
また撮像情報CIとして、例えばシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報(撮像装置の水平方向、垂直方向の動きを示す情報)を用いて、付加すべきぼけ量を示す評価値Eを生成する。
即ち静動判定結果によって検出される動領域について、撮像情報にもとづいて適切なぼけ量を付加させる評価値Eが生成され、動画像についてジャーキネス劣化が発生しやすい領域に適切な量の動きぼけを付加することができる。
このため、フレーム内の領域毎に動きベクトルを検出するという処理負担の大きい処理を不要としつつ、人間の視覚特性上、より自然にジャーキネス劣化が低減された動画像を出力することができる。
また、動きベクトル検出等の負担の重い処理を行わなくて良いことから、簡易に適切な動きぼけ付加処理を行うことができ、装置の簡易化、低コスト化に適している。
【0102】
また動きぼけ付加処理については、主に空間的なフィルタリング処理によって実現され、中間フレームを生成することがないため、処理過程で画像データを記憶するためのメモリを少なくすることができる。
さらに、空間フィルタ処理は、階層的なフィルタリングを実行した結果得られる、各階層の画素値を重み付け加算して出力する。そのため、各階層において行うフィルタは、少ないタップ数で実現可能である。また、そのフィルタのタップ数は、付加する動きぼけの量に依存せず、固定タップ数で行うことが可能である。
このような再帰的な処理による実現は、特にハードウェアによる処理実装に適している。当然に、ソフトウェア、また組合せによる実現も可能である。
【0103】
また、動きぼけ付加部30で処理された画像データODは、図2で説明したように、送信処理部60から送信出力されたり、記録処理部70によって記録媒体90に記録される。
したがって、この動画像撮像装置200によって送信された送信データ、及び記録媒体90に記録された記録データの再生を行う再生装置は、この実施の形態に示したような動きぼけ付加処理を行うことなく、既存の再生処理工程を行うだけで、ジャーキネス効果が低減された動画像を表示装置に表示させることができる。
【0104】
[3.第2の実施の形態:再生・受信装置]
第2の実施の形態としての再生・受信装置300の構成を図19に示す。
この再生・受信装置300は、放送などの媒体で送られる画像データの受信や、記録媒体91に記録された画像データを再生して、表示する装置としている。
【0105】
受信処理部110は、例えばテレビジョン放送等により送信されてくる画像データを受信する。なお、ネットワーク通信、ダウンロードなどの形態の画像データの受信処理を行う部位としてもよい。受信処理部110では受信・復調処理を行い、受信したデータストリームを動画像復号化処理部130及び制御部170に供給する。
再生処理部120は、記録媒体91に対して画像データの再生動作を行い、再生したデータストリームを動画像復号化処理部130及び制御部170に供給する。
【0106】
受信処理部110で受信された画像データ、及び再生処理部120で記録媒体91から再生された画像データは、符号化された画像データであるが、撮像情報が重畳されたデータとなっている。例えばそれらの画像データが撮像された際の撮像装置において例えばシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報等がメタデータとして付加されていることを想定する。
制御部170は、このような画像データから撮像情報を抽出する。そして抽出された撮像情報CIを動領域判定部150に供給する。
【0107】
動画像復号化処理部は、受信処理部110又は再生処理部120から供給される、圧縮符号化されている画像データを伸張処理し、復号処理後の画像データDDを動領域判定部150及び動きぼけ付加部140に供給する。
動領域判定部150、動きぼけ付加部140は、上記第1の実施の形態の動領域判定部40、動きぼけ付加部30と同様である。即ち動領域判定部150は、各フレーム内の領域毎について動領域か静領域かを判定する静動判定処理を行い、また撮像情報CIとして、例えばシャッタ速度情報、絞り値情報、焦点距離情報、ジャイロスコープ回転量情報等を用いて、付加すべきぼけ量を示す評価値Eを生成する。
また動きぼけ付加部140は、評価値Eに基づいて、入力される画像データDDに対して動きぼけ付加処理を行って、ジャーキネス劣化が低減された出力画像データODを出力する。
画像表示部160では、動きぼけ付加部140で処理された出力画像データODについて表示出力を行う。
【0108】
このような第2の実施の形態としての再生・受信装置300では、受信又は再生した画像データについて、適切にジャーキネス劣化を低減させることができ、高品質な画像表示を実現できる。そしてその動きぼけ付加処理のためには、第1の実施の形態と同様、動きベクトル検出等の負担の重い処理を行わなくて良いことから、簡易に適切な動きぼけ付加処理を行うことができ、再生・受信装置の簡易化、低コスト化に適している。
【0109】
以上、本発明の第1,第2の実施の形態を説明してきたが、本発明の画像処理装置、画像処理方法は、上記各例に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変更が可能であることは勿論である。
また実施の形態は、図1の画像処理装置100としての基本構成を含む動画像撮像装置200、再生・受信装置300として説明したが、本発明の画像処理装置は画像処理を行う各種機器に適用できる。例えば画像通信装置、画像記録装置、ゲーム機器、ビデオ編集機、携帯電話機などが想定される。
また上記してきた画像処理装置100,動画像撮像装置200、再生・受信装置300の構成は、複数の処理部の論理的集合構成であり、各構成として示した処理部が同一筐体内にあるものには限らない。
【0110】
[4.プログラム]
本発明はさらに、汎用のパーソナルコンピュータその他の情報処理装置において、動画像再生や記録等を行う際に、上記の画像処理装置1としての動作を実行することも当然想定される。
即ち、上述した画像処理装置1を構成する各処理部は、例えばFPGA等によって設計されるハードウェアによって実現されることもできるが、各処理部によって実現される画像処理をコンピュータ等の情報処理機器に実行させるようにしても良い。
例えば上述の動領域判定部2(40,150)、撮像情報CIを取得する機能部位としての画像取込部1、及び動きぼけ付加部3(30、140)の動作を演算処理装置に実行させるプログラムを画像処理アプリケーションソフトウエアとして提供することで、パーソナルコンピュータ等において、適切な画像処理を実現できる。
【0111】
即ち当該プログラムは以下の各ステップを演算処理装置(CPU等)に実行させる。
まず動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定ステップを演算処理装置に実行させる。
また、動画像データが撮像装置による撮像により生成された際の撮像情報を取り込む撮像情報取込ステップを演算処理装置に実行させる。
また、動画像データに対し、静動判定ステップでの判定結果と、撮像情報取込ステップで取り込んだ撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加処理ステップを演算処理装置に実行させる。
【0112】
このようなプログラムにより、本発明をパーソナルコンピュータ、携帯電話機、PDA(Personal Digital Assistant)、その他画像データを用いる多様な情報処理装置においても同様の画像処理を実行できるようにすることができる。
【0113】
なお、このようなプログラムは、パーソナルコンピュータ等の機器に内蔵されている記録媒体としてのHDDや、CPUを有するマイクロコンピュータ内のROMやフラッシュメモリ等に予め記録しておくことができる。
あるいはまた、フレキシブルディスク、CD−ROM(Compact Disc Read Only Memory)、MO(Magnet optical)ディスク、DVD、ブルーレイディスク、磁気ディスク、半導体メモリ、メモリカードなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
また、プログラムは、リムーバブル記録媒体からパーソナルコンピュータ等にインストールする他、ダウンロードサイトから、LAN(Local Area Network)、インターネットなどのネットワークを介してダウンロードすることもできる。
【図面の簡単な説明】
【0114】
【図1】本発明の実施の形態の基本構成としての画像処理装置のブロック図である。
【図2】第1の実施の形態の動画像撮像装置のブロック図である。
【図3】実施の形態の撮像情報の説明図である。
【図4】実施の形態の撮像情報の説明図である。
【図5】実施の形態の動領域判定部のブロック図である。
【図6】実施の形態の動きぼけ付加部のブロック図である。
【図7】実施の形態の縮小画像を用いた重み付け加算処理の説明図である。
【図8】実施の形態の縮小画の生成処理の説明図である。
【図9】実施の形態の水平方向縮小画像の生成処理の説明図である。
【図10】実施の形態の垂直方向縮小画像の生成処理の説明図である。
【図11】実施の形態の縮小画像生成処理部の処理の説明図である。
【図12】実施の形態の縮小画像生成処理部の処理を一般化した説明図である。
【図13】実施の形態の縮小画像生成処理部のフィルタの説明図である。
【図14】実施の形態の縮小画像生成処理の説明図である。
【図15】実施の形態の動きぼけ付加部の処理の説明図である。
【図16】実施の形態の動きぼけ付加部の構成のブロック図である。
【図17】実施の形態の合成画素算出処理及び重み付け画素加算処理の説明図である。
【図18】実施の形態の重み情報テーブルの説明図である。
【図19】第2の実施の形態の再生・受信装置のブロック図である。
【図20】従来の動画像撮像装置と動画像再生装置のブロック図である。
【符号の説明】
【0115】
1 画像取込部、2 動領域判定部、3 動きぼけ付加部、10 撮像光学系、11 絞り機構、12 光学レンズ系、13 撮像素子部、14 ジャイロセンサ、20,170 制御部、30、140 動きぼけ付加部、40,150 動領域判定部、50 動画像符号化処理部、60 送信処理部、70 記録処理部、90,91 記録媒体、100 画像処理装置、110 受信処理部、120 再生処理部、130 動画像復号化処理部、160 画像表示部、200 動画像撮像装置、300 再生・受信装置
【特許請求の範囲】
【請求項1】
動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定手段と、
上記動画像データに対し、上記静動判定手段の判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加手段と、
を備えた画像処理装置。
【請求項2】
上記動きぼけ付加手段は、上記動画像データの各処理対象画像について、上記静動判定手段によって動領域と判定された領域に、上記撮像情報に基づいて動きぼけを付加する処理を行う請求項1に記載の画像処理装置。
【請求項3】
上記静動判定手段は、静領域か動領域かの判定結果と、上記撮像情報とに基づいて領域毎の評価値を生成し、
上記動きぼけ付加手段は、上記評価値に基づいて、上記動画像データの各処理対象画像に動きぼけを付加する処理を行う請求項2に記載の画像処理装置。
【請求項4】
上記静動判定手段は、複数種類の撮像情報を用いた重み付け演算処理により上記評価値を生成する請求項3に記載の画像処理装置。
【請求項5】
上記動きぼけ付加手段では、上記撮像情報としてのシャッタ速度情報によるシャッタ速度が速いほど動きぼけ量を大きくする動きぼけ付加処理が行われる請求項1に記載の画像処理装置。
【請求項6】
上記動きぼけ付加手段では、上記撮像情報としての絞り値情報による絞り値が大きいほど動きぼけ量を大きくする動きぼけ付加処理が行われる請求項1に記載の画像処理装置。
【請求項7】
上記動きぼけ付加手段では、上記撮像情報としての焦点距離情報による焦点距離が遠いほど動きぼけ量を大きくする動きぼけ付加処理が行われる請求項1に記載の画像処理装置。
【請求項8】
上記動きぼけ付加手段では、上記撮像情報としてのジャイロスコープ回転量情報によるジャイロスコープ回転量が大きいほど動きぼけ量を大きくする動きぼけ付加処理が行われる請求項1に記載の画像処理装置。
【請求項9】
上記動きぼけ付加手段は、
動画像データに対し、動画像を構成する各単位画像を処理対象画像とし、上記処理対象画像から1つ以上の解像度の異なる縮小画像を生成する縮小画像生成部と、
上記処理対象画像の注目画素に位置的に対応する画素を上記縮小画像から抽出し、上記静動判定手段の判定結果と上記撮像情報とに基づく値を基に、上記注目画素および上記縮小画像から抽出した1つ以上の抽出画素について、重み付け加算処理を行って、上記処理対象画像に動きぼけを付加する画素合成処理部と、
を有する請求項1に記載の画像処理装置。
【請求項10】
被写体を撮像して動画像を生成する撮像手段をさらに備え、
上記撮像手段での撮像によって得られた動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される請求項1に記載の画像処理装置。
【請求項11】
記録媒体の再生動作により動画像データを再生する再生手段をさらに備え、
上記再生手段で再生された動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される請求項1に記載の画像処理装置。
【請求項12】
動画像データを受信する受信手段をさらに備え、
上記受信手段で受信された動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される請求項1に記載の画像処理装置。
【請求項13】
動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定ステップと、
上記動画像データに対し、上記静動判定ステップでの判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加処理ステップと、
を有する画像処理方法。
【請求項14】
動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定ステップと、
上記動画像データに対し、上記静動判定ステップでの判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加処理ステップと、
を演算処理装置に実行させるプログラム。
【請求項1】
動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定手段と、
上記動画像データに対し、上記静動判定手段の判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加手段と、
を備えた画像処理装置。
【請求項2】
上記動きぼけ付加手段は、上記動画像データの各処理対象画像について、上記静動判定手段によって動領域と判定された領域に、上記撮像情報に基づいて動きぼけを付加する処理を行う請求項1に記載の画像処理装置。
【請求項3】
上記静動判定手段は、静領域か動領域かの判定結果と、上記撮像情報とに基づいて領域毎の評価値を生成し、
上記動きぼけ付加手段は、上記評価値に基づいて、上記動画像データの各処理対象画像に動きぼけを付加する処理を行う請求項2に記載の画像処理装置。
【請求項4】
上記静動判定手段は、複数種類の撮像情報を用いた重み付け演算処理により上記評価値を生成する請求項3に記載の画像処理装置。
【請求項5】
上記動きぼけ付加手段では、上記撮像情報としてのシャッタ速度情報によるシャッタ速度が速いほど動きぼけ量を大きくする動きぼけ付加処理が行われる請求項1に記載の画像処理装置。
【請求項6】
上記動きぼけ付加手段では、上記撮像情報としての絞り値情報による絞り値が大きいほど動きぼけ量を大きくする動きぼけ付加処理が行われる請求項1に記載の画像処理装置。
【請求項7】
上記動きぼけ付加手段では、上記撮像情報としての焦点距離情報による焦点距離が遠いほど動きぼけ量を大きくする動きぼけ付加処理が行われる請求項1に記載の画像処理装置。
【請求項8】
上記動きぼけ付加手段では、上記撮像情報としてのジャイロスコープ回転量情報によるジャイロスコープ回転量が大きいほど動きぼけ量を大きくする動きぼけ付加処理が行われる請求項1に記載の画像処理装置。
【請求項9】
上記動きぼけ付加手段は、
動画像データに対し、動画像を構成する各単位画像を処理対象画像とし、上記処理対象画像から1つ以上の解像度の異なる縮小画像を生成する縮小画像生成部と、
上記処理対象画像の注目画素に位置的に対応する画素を上記縮小画像から抽出し、上記静動判定手段の判定結果と上記撮像情報とに基づく値を基に、上記注目画素および上記縮小画像から抽出した1つ以上の抽出画素について、重み付け加算処理を行って、上記処理対象画像に動きぼけを付加する画素合成処理部と、
を有する請求項1に記載の画像処理装置。
【請求項10】
被写体を撮像して動画像を生成する撮像手段をさらに備え、
上記撮像手段での撮像によって得られた動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される請求項1に記載の画像処理装置。
【請求項11】
記録媒体の再生動作により動画像データを再生する再生手段をさらに備え、
上記再生手段で再生された動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される請求項1に記載の画像処理装置。
【請求項12】
動画像データを受信する受信手段をさらに備え、
上記受信手段で受信された動画像データが、上記静動判定手段と上記動きぼけ付加手段に入力される請求項1に記載の画像処理装置。
【請求項13】
動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定ステップと、
上記動画像データに対し、上記静動判定ステップでの判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加処理ステップと、
を有する画像処理方法。
【請求項14】
動画像データを構成する各単位画像を処理対象画像とし、各処理対象画像の領域毎の静動判定を行う静動判定ステップと、
上記動画像データに対し、上記静動判定ステップでの判定結果と、上記動画像データが撮像装置による撮像により生成された際の撮像情報とに基づいて動きぼけを付加する処理を行う動きぼけ付加処理ステップと、
を演算処理装置に実行させるプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【公開番号】特開2010−34850(P2010−34850A)
【公開日】平成22年2月12日(2010.2.12)
【国際特許分類】
【出願番号】特願2008−194876(P2008−194876)
【出願日】平成20年7月29日(2008.7.29)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成22年2月12日(2010.2.12)
【国際特許分類】
【出願日】平成20年7月29日(2008.7.29)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]