以下、図面を参照して、本発明の実施の形態(以下、「本実施形態」と称する)につき詳細に説明する。なお、各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。また、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
ここでは、被写界に対する撮像素子の光学的な位置を変化させる動作を「変位」と称する。また、変位を発生(実行)させた結果得られる結像を「変位後の結像」と称する。また、撮像素子を形成する各単位セル(画素)の中心点が移動し得る領域を「画素の単位格子領域」と称する。
本発明に係る撮像制振装置は、「変位後の結像」が「画素の単位格子領域の範囲」からはみ出さないように(図4(b)参照)、「変位」を発生(実行)させることによって、映像の圧縮符号化効率を改善して、画質の向上やビットレートの増加の抑制等を実現するとともに、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまうことを防止する。
[実施形態1]
<撮像制振装置の構成>
以下、図1を参照して、本実施形態1に係る撮像制振装置1の構成につき説明する。
図1に示すように、本実施形態1に係る撮像制振装置1は、制御部2、レンズ20、2つの撮像素子10,60、変位部40a〜40d、及び、ハーフミラー50を有している。以下、2つの撮像素子10,60を区別する場合に、撮像素子10を「第1撮像素子10」と称し、撮像素子60を「第2撮像素子60」と称する。
制御部2は、撮像制振装置1の全体の動作を制御する機能手段である。制御部2は、CPUによって構成されており、後記する「変位量推定部70」、及び、後記する「変位制御部80」を備えている。
レンズ20は、第1撮像素子10上に光を集めて、観賞用の映像を第1撮像素子10上に結像させる光学系である。このレンズ20は、ここでは、凸レンズとしての機能を有しており、レンズ単体でも又は複数のレンズを組み合わせた構成であっても構わない。レンズ20は、図示を省略した筐体に接続されるように構成されている。
第1撮像素子10は、レンズ20から取り込んだ被写体等の映像を撮影する素子である。
第2撮像素子60は、結像の全体又はその一部分の動きベクトルの測定値の算出に用いる映像を撮影する素子である。第2撮像素子60は、ここでは、「結像の全体又はその一部分の動きベクトルの測定値」を算出するためのセンサとして用いられる。
以下、「結像の全体又はその一部分の動きベクトルの測定値」を「測定動きベクトルVs」と称する。また、「結像の全体又はその一部分の動きベクトルの測定値(測定動きベクトルVs)」の算出に用いる映像を「測定用の映像」と称する。
なお、第1撮像素子10と第2撮像素子60とは、同じ種類の素子であってもよいし、異なる種類の素子であってもよい。第2撮像素子60の空間分解能(画素間隔あたりの画角)は、第1撮像素子10よりも細かいことがより好ましい(ただし、この条件は、必須ではない)。
変位部40a〜40dは、前記した「変位(すなわち、被写界に対する第1撮像素子10の光学的な位置を変化させる動作)」を発生(実行)させる手段である。変位部40a〜40dは、第1撮像素子10及び光学系(レンズ20等)のいずれか一方を小数画素単位で物理的に移動させる手段として構成することができる。
本実施形態1では、変位部40a〜40dがレンズ20の光軸30に対する第1撮像素子10の位置を小数画素単位で物理的に変化させるアクチュエータによって構成されている場合を想定して説明する。
具体的には、変位部40a〜40dが第1撮像素子10を第1撮像素子10の撮像面に沿って水平方向及び垂直方向に移動させる構成(すなわち、レンズ20の光軸30に対して垂直に交差する平面内で第1撮像素子10を2次元的に並進させる構成)となっているものとして説明する。
このような変位部40a〜40dとしては、例えば、圧電素子や、サーボモータ、リニアモータ等によって構成することができる。
なお、図1に示す例では、撮像制振装置1は、4つの変位部40a〜40dが設けられている。しかしながら、変位部の数は、レンズ20の光軸30に対して垂直に交差する平面内で第1撮像素子10を2次元的に並進させることができれば、4つでなくてもよい。
また、本実施形態1では、撮像制振装置1は、変位部40a〜40dによって第1撮像素子10を移動させる構成になっているが、レンズ20等の光学系を移動させる構成にすることも可能である。
ハーフミラー50は、光路を第1撮像素子10の方向と第2撮像素子60の方向とに分岐する分岐部材である。撮像制振装置1は、ハーフミラー50をレンズ20からの光軸30上でレンズ20と第1撮像素子10との間に設けられており、ハーフミラー50によって光路が分岐されることにより、同じ映像が第1撮像素子10上と第2撮像素子60上とに結像されるように構成されている。つまり、ハーフミラー50は、光路を第1撮像素子10の方向と第2撮像素子60の方向とに分岐して、観賞用の被写体の映像を第1撮像素子10に導いて第1撮像素子10上に結像させるとともに、前記した「測定用の映像(すなわち、「測定動きベクトルVs」の算出に用いる映像)」を第2撮像素子60に導いて第2撮像素子60上に結像させるように構成されている。
なお、撮像制振装置1は、ハーフミラー50の代わりに、分岐部材として図示せぬハーフプリズムを用いる構成にしてもよい。
第2撮像素子60で結像された測定用の映像は、図示せぬ記憶部に格納された後、制御部2によって読み出されて、変位部40a〜40dを作動させるための制御量(以下、「変位制御量」と称する)の算出に用いられる。
制御部2は、ここでは、以下に説明する「変位量推定部70」及び「変位制御部80」を備える構成となっている。
「変位量推定部70」及び「変位制御部80」は、例えば、撮像素子10,60がモノクロ単板の正方格子として構成されており、かつ、開口率が100%の場合に、後記する「変位制御量の算出法」の章で詳細に説明するように、前記した「変位制御量(すなわち、変位部40a〜40dを作動させるための制御量)」を後記する「(uc−round(uc)),(vc−round(vc))」に設定することによって、後記する「変位結果ベクトル」を「(round(uc)),(round(vc))」に設定して、映像の圧縮符号化を行う際の動き補償予測処理を整数画素単位で行えるようにする。
変位量推定部70は、前記した「変位(すなわち、被写界に対する第1撮像素子10の光学的な位置を変化させる動作)」を発生させなかった場合に生じる結像の動きベクトルの推定値(以下、「推定動きベクトルVc」と称する)を小数画素精度で算出する機能手段である。
本実施形態1では、変位量推定部70は、まず、第2撮像素子60で撮影された前記した「測定用の映像」に基づいて、前記した「測定動きベクトルVs」を算出し、次に、その測定動きベクトルVsに基づいて、前記した「推定動きベクトルVc」を小数画素精度で算出する。なお、「測定動きベクトルVs」の算出法及び「推定動きベクトルVc」の算出法については、後記する。
ここで、「小数画素精度」とは、前記した「画素の単位格子領域」のサイズより細かい精度を意味している。なお、「画素の単位格子領域」の具体例については、図3A〜図3Cを用いて後記する。
変位制御部80は、変位部40a〜40dを作動させて、前記した「変位(すなわち、被写界に対する第1撮像素子10の光学的な位置を変化させる動作)」を発生させる機能手段である。
変位制御部80は、変位量推定部70によって算出された推定動きベクトルVcに基づいて、前記した「変位制御量(すなわち、変位部40a〜40dを作動させるための制御量)」を算出する。
このとき、変位制御部80は、その「変位制御量」分だけ前記した「変位」を発生させることによって、撮影時の各フレーム間の被写体像の全体的な移動量(例えば、第1撮像素子10における所定領域の平均的な動き等)が画素の単位格子領域のサイズにおいて整数値となるようにする。
すなわち、このとき、変位制御部80は、変位部40a〜40dが前記した「変位」を発生させた結果得られる、「第1撮像素子10上の結像の全体又はその一部分(例えば、中央付近の領域)」の複数個所又は撮像時刻の異なる複数フレームを画素の単位格子領域のサイズ精度(以下、「画素精度」と称する)で測った場合の「好適な所定の代表値」の小数部分の絶対値が最小となるように、「変位制御量」を算出して、「変位制御量」分だけ前記した「変位」を発生させる。
そのための構成として、本実施形態1では、変位制御部80は、後記する「変位結果ベクトル」の値が隣接する2つの画素の中心点同士を結ぶことによって得られるベクトル値集合の中のいずれかのベクトル値もしくはゼロベクトル値と一致する値となる変位制御量を算出する構成になっている。
ここで、「変位結果ベクトルの値が隣接する2つの画素の中心点同士を結ぶことによって得られるベクトル値集合の中のいずれかのベクトル値もしくはゼロベクトル値と一致する値となる変位制御量」とは、変位結果ベクトルの値が直近の整数値となる変位制御量を意味している。
本実施形態1では、「変位結果ベクトルの値が隣接する2つの画素の中心点同士を結ぶことによって得られるベクトル値集合の中のいずれかのベクトル値もしくはゼロベクトル値と一致する値となる変位制御量」は、後記する「変位制御量の算出法」の章で説明する手法が変位制御部80によって実行されることによって、算出される。
なお、「好適な所定の代表値」とは、例えば、最頻値や、平均値、中央値、統計値等の中から、運用に応じて、予め任意に定められた好適な値を意味している。「好適な所定の代表値」としては、特に、最頻値が好ましい。なお、「変位制御量」の具体的な算出法については、後記する。
変位制御部80は、「変位制御量」を算出すると、「変位制御量」(厳密には、「変位制御量」分だけ変位部40a〜40dを作動させるための制御信号)を変位部40a〜40dに出力する。これに応答して、変位部40a〜40dは、「変位制御量」分だけ、第1撮像素子10を第1撮像素子10の撮像面に沿って水平方向及び垂直方向に移動させて、前記した「変位」を発生させる。
以下、「変位」を発生させた結果、第1撮像素子10で得られる、変位後の結像の変位前の位置からの動きベクトルを「変位結果ベクトル」と称する。つまり、「変位結果ベクトル」は、前記した「変位」の発生の前と後とにおける、第1撮像素子10によって撮像された映像の一部又は全体の画素単位で測った移動量を意味している。
<撮像制振装置の動作>
以下、図1、並びに、図2Aを参照して、撮像制振装置1の動作につき説明する。なお、撮像制振装置1は、図示せぬタイマによって計測された時間に基づいて動作する。また、撮像制振装置1の動作は、図示せぬ記憶部に読み出し自在に予め格納された制御プログラムによって規定されており、制御部2によって実行される。また、各データは、図示せぬ記憶部に読み出し自在に一旦格納されてから、その後の処理を行う所要の構成要素に出力される。以下、これらの点については、情報処理では常套手段であるので、その詳細な説明を省略する。
図1に示すように、撮像制振装置1は、前記した通り、レンズ20によって第1撮像素子10上に光を集めて、観賞用の映像を第1撮像素子10上に結像させる。その際に、撮像制振装置1は、ハーフミラー50によって光路を第1撮像素子10の方向と第2撮像素子60の方向とに分岐して、観賞用の映像を第1撮像素子10に導くとともに、前記した「測定用の映像(すなわち、「測定動きベクトルVs」の算出に用いる映像)」を第2撮像素子60に導いて第2撮像素子60上に結像させる。
第1撮像素子10及び第2撮像素子60は、それぞれ、図2Aに示す「蓄積」タイミングで、撮像素子10,60上に結像された映像を構成する光に対応する電荷を蓄積する。そして、制御部2が、図2Aに示す「読出」タイミングで、撮像素子10,60に蓄積された電荷を電圧信号に変換して映像信号として図示せぬ記憶部に格納し、その後に、図示せぬ記憶部から映像信号を読み出して、映像信号を所定の演算に用いる。
「所定の演算」としては、例えば、制御部2の変位量推定部70による前記した「測定動きベクトルVs」の算出及び前記した「推定動きベクトルVc」の算出、並びに、制御部2の変位制御部80による前記した「変位制御量」の算出等がある。また、「所定の演算」としては、例えば、制御部2の図示せぬ機能手段による映像の圧縮符号化処理やその映像の圧縮符号化処理を行う際の動き補償予測処理等がある。ここでは、変位量推定部70による前記した「測定動きベクトルVs」の算出及び前記した「推定動きベクトルVc」の算出、並びに、変位制御部80による前記した「変位制御量」の算出を重点的に説明する。
図2Aに示す例では、第1撮像素子10のフレーム時間間隔が「Tc」となっており、また、第2撮像素子60のフレーム時間間隔がTsとなっている。ここで、「フレーム時間間隔」とは、映像の「蓄積」と「読出」とを周期的に行う間隔を意味している。
なお、図2Aに示す例では、第1撮像素子10のフレーム時間間隔Tc及び第2撮像素子60のフレーム時間間隔Tsが、ほぼ同じ値に設定されている。しかしながら、図2Bに示すように、第1撮像素子10のフレーム時間間隔Tc及び第2撮像素子60のフレーム時間間隔Tsは、異なる値に設定することができる。
図2Aに示す例では、フレーム時間間隔Ts,Tcは、それぞれ、各周期の「蓄積」期間の開始時から次の周期の「蓄積」期間の開始時までの間隔となっている。しかしながら、フレーム時間間隔Ts,Tcは、それぞれ、各周期の「蓄積」期間の終了時から次の周期の「蓄積」期間の終了時までの間隔であってもよい。又は、フレーム時間間隔Ts,Tcは、それぞれ、各周期の「読出」期間の開始時から次の周期の「読出」期間の開始時までの間隔、或いは、各周期の「読出」期間の終了時から次の周期の「読出」期間の終了時までの間隔であってもよい。
なお、第2撮像素子60の「蓄積」期間は、第1撮像素子10の「蓄積」期間よりも、短くなっている。これは、第2撮像素子60によって撮影される映像が、前記した「測定用の映像(すなわち、「測定動きベクトルVs」の算出に用いる映像)」であり、観賞用の映像でないため、第1撮像素子10によって撮影される映像よりも低品位で構わないからである。
図2Aに示す例では、撮像制振装置1は、撮像時刻の異なるフレームF1,F2,F3,…の「蓄積」タイミングで、第1撮像素子10によって観賞用の映像としての「変位後の結像」を撮影している。
撮像制振装置1は、このような動作を実現するために、第1撮像素子10での「蓄積」タイミングに先行するタイミングで、第2撮像素子60によって撮像時刻の異なる複数フレームの測定用の映像を撮影する。例えば、撮像制振装置1は、フレームF1の「蓄積」タイミングに先行して、フレームfa,fbの「蓄積」タイミングで、第2撮像素子60によって測定用の映像を撮影している。
第2撮像素子60によって撮影されたフレームfa,fbの測定用の映像は、第1撮像素子10がフレームF1の観賞用の映像を撮影する際に事前に行われる、前記した「変位」を発生させる変位制御に用いられる。すなわち、フレームfa,fbは、フレームF1用の動きベクトルの推定に用いるフレーム対となる。以下に、その詳細を説明する。
撮像制振装置1は、第2撮像素子60でのフレームfbの測定用の映像の「蓄積」期間が終了してから、第1撮像素子60でのフレームF1の観賞用の映像の「蓄積」期間が開始するまでの間に、以下の処理を行う。
例えば、撮像制振装置1は、フレームfa,fbの測定用の映像が第2撮像素子60に蓄積されて図示せぬ記憶部に格納されると、制御部2が、読出時間t1のタイミングで、フレームfa,fbの各測定用の映像を読み出す。
次に、算出時間t2のタイミングで、制御部2の変位量推定部70が、まず、フレームfa,fbの各測定用の映像に基づいて、前記した「測定動きベクトルVs」を算出し、次に、その測定動きベクトルVsに基づいて、前記した「推定動きベクトルVc」を算出し、さらに、制御部2の変位制御部80が、「変位制御量」を算出する。なお、「測定動きベクトルVs」の算出法、「推定動きベクトルVc」の算出法、及び、「変位制御量」の算出法については、それぞれ、後記する。
次に、変位制御時間t3のタイミングで、変位制御部80が、算出時間t2で算出された「変位制御量」(厳密には、「変位制御量」分だけ変位部40a〜40dを作動させるための制御信号)を変位部40a〜40dに出力する。
これにより、変位制御部80が、変位部40a〜40dに、その「変位制御量」分だけ、第1撮像素子10を第1撮像素子10の撮像面に沿って水平方向及び垂直方向に移動させて、前記した「変位」を発生させる変位制御を行う。
その結果、第1撮像素子10は、フレームF1の「蓄積」タイミングで、観賞用の映像としての「変位後の結像」を撮影する。
この後、撮像制振装置1は、フレームF2,F3,…の「蓄積」タイミングに合わせて、同様の動作を繰り返し行う。これにより、第1撮像素子10は、各フレームF2,F3,…の「蓄積」タイミングで、観賞用の映像としての「変位後の結像」を撮影する。
<測定動きベクトルVsの算出法>
以下、図1を参照して、前記した「測定動きベクトルVs」の算出法につき説明する。
図1に示すように、変位量推定部70は、第2撮像素子60によって撮影された測定用の映像の複数個所又は撮像時刻の異なる複数フレーム間の測定用の映像から、前記した「測定動きベクトルVs」を算出する。
ここでは、変位量推定部70は、第2撮像素子60によって撮影された撮像時刻の異なる複数フレーム間の測定用の映像において、映像の全体又は一部分でブロックマッチングを行うことによって、「測定動きベクトルVs」を算出するものとして説明する。
ここで、「第2撮像素子60によって撮影された撮像時刻の異なる複数フレーム」とは、例えば、第1撮像素子10によってこれから撮影しようとする現フレームに先行して、第2撮像素子60によって撮影されたフレーム−1とフレーム−2との2つのフレーム等を意味している。
なお、「測定動きベクトルVs」の算出精度は、第2撮像素子60によって撮影された2つのフレーム間の測定用の映像のブロックマッチングによって取得されるため、第2撮像素子60の画素ピッチが第1撮像素子10の画素ピッチよりも十分に細かい場合(例えば、0.5倍以下の場合)に、整数画素精度であっても、又は、小数画素精度であっても構わない。
ただし、「測定動きベクトルVs」の算出精度は、第2撮像素子60の画素ピッチが第1撮像素子10の画素ピッチよりも十分に細かくない場合(例えば、0.5倍よりも大きい場合)に、小数画素精度である必要がある。
小数画素精度のブロックマッチングを行う手法としては、例えば、2つのフレームの映像のそれぞれに補間画素を内挿して拡大した映像を生成し、生成した映像同士を比較することによって動きベクトルを求め、これを拡大倍率で除することによって取得する手法がある。
又は、小数画素精度のブロックマッチングを行う手法としては、例えば、いわゆる「パラボラフィッティング」と称される手法がある。この「パラボラフィッティング」と称される手法は、2つのフレーム間の映像で相関をとり、相関値が最大値(誤差の最小値)をとる動きベクトルを求め、その動きベクトルを中心とする、例えば水平方向に±1画素以内でかつ垂直方向に±1画素以内の計9点の画素における相関値列(又は誤差値列)の2次曲面を求め、その2次曲面上で最大値(又は最小値)を与える点を求めて、この点を小数画素精度の動きベクトルとみなす手法である。
変位量推定部70は、このようなブロックマッチングを行うことによって、「測定動きベクトルVs」を算出する。なお、「測定動きベクトルVs」は、2つのフレーム間の測定用の映像のブロックマッチングによって取得されるため、ブロックマッチングに用いられる映像の画素の単位格子領域のサイズに影響される。
<推定動きベクトルVcの算出法>
以下、図1を参照して、前記した「推定動きベクトルVc」の算出法につき説明する。
図1に示すように、変位量推定部70は、「測定動きベクトルVs」を算出すると、以下のようにして、「測定動きベクトルVs」に基づいて、前記した「推定動きベクトルVc」を小数画素精度で算出する。
変位量推定部70は、第1撮像素子10の撮像フレーム時間間隔を「Tc」とし、第1撮像素子10の水平画素ピッチを「Pc」とし、第1撮像素子10の垂直画素ピッチを「Qc」とし、さらに、第2撮像素子60の撮像フレーム時間間隔を「Ts」とし、第2撮像素子60の水平画素ピッチを「Ps」とし、第2撮像素子60の垂直画素ピッチを「Qs」としたとき、以下の式(1)に基づいて、小数画素精度の「推定動きベクトルVc」を算出することができる。
なお、式(1)は、以下の(a)〜(c)の条件を満たしていると仮定した場合のものである。
(a)第1撮像素子10の水平軸及び垂直軸と第2撮像素子60の水平軸及び垂直軸とがそれぞれ平行となるように、第1撮像素子10と第2撮像素子60とが配置されているという条件。
(b)第2撮像素子60上の結像がハーフミラー50によって鏡像となることが補償済みであるという条件。
(c)第1撮像素子10と第2撮像素子60とがレンズ20の第二光学主点から同一の距離に配置されているという条件。
<変位制御量の算出法>
以下、図1を参照して、前記した「変位制御量」の算出法につき説明する。
図1に示すように、変位制御部80は、変位量推定部70が「推定動きベクトルVc」を算出すると、以下のようにして、「推定動きベクトルVc」に基づいて、変位制御量(ΔX,ΔY)を算出する。
本実施形態1では、変位制御部80は、「推定動きベクトルVc(推定結果)」の水平成分値及び垂直成分値から、「推定動きベクトルVc」の水平成分値及び垂直成分値のそれぞれに対して画素の単位格子領域のサイズにおける小数部分を直近の整数値に向けて桁の繰り上げ演算又は繰り下げ演算を行った水平成分演算値及び垂直成分演算値を減算することによって、変位制御量(ΔX,ΔY)を算出する。
具体的には、変位制御部80は、変位量推定部70によって算出された「推定動きベクトルVc」の水平成分値を「uc」とし、垂直成分値を「vc」としたとき、推定動きベクトルVcに基づいて、以下の式(2)に基づいて、変位制御量(ΔX,ΔY)を算出する。
ここで、round関数は、丸め演算を表している。「丸め演算」は、小数第1位の四捨五入や、IEEE757−2008に定める2種類の最近接丸めのいずれか、0.5を加算するものに対する切り下げ、或いは、0.5を減算したものに対する切り上げを行う演算である。
このような丸め演算による水平成分演算値round(uc)及び垂直成分演算値round(vc)は、それぞれ、水平成分値uc及び垂直成分値vcよりも大きくなる場合もあれば、水平成分値uc及び垂直成分値vcよりも小さくなる場合もある。
そして、変位制御量(ΔX,ΔY)は、動きベクトルVc(推定結果)の水平成分値uc及び垂直成分値vcから丸め演算による水平成分演算値round(uc)及び垂直成分演算値round(vc)を減算した値であるため、水平方向及び垂直方向にそれぞれ第1撮像素子10の画素ピッチの0.5倍以内(具体的には、仮に、第1撮像素子10がモノクロ単板の正方格子として構成されており、かつ、開口率が100%の場合に、チェビシェフ距離における半径0.5画素以内)の値となる。
変位部40a〜40dは、変位制御量(ΔX,ΔY)に応じて、水平方向に(uc−round(uc))分だけ、また、垂直方向に(vc−round(vc))分だけ、第1撮像素子10を変位させる。
これにより、前記した「変位結果ベクトル(すなわち、変位後の結像の変位前の位置からの動きベクトル)」は、水平成分値が(uc−ΔX)=(uc−(uc−round(uc)))=round(uc)となり、また、垂直成分値が(vc−ΔY)=(vc−(vc−round(vc)))=round(vc)となる。
つまり、「変位結果ベクトル」は、「推定動きベクトルVc」の水平成分値及び垂直成分値のそれぞれに対して水平成分値及び垂直成分値がそれぞれ画素の単位格子領域のサイズにおける小数部分を直近の整数値に向けて桁の繰り上げ演算又は繰り下げ演算を行った値になる。このように、制御部2の変位制御の結果、映像の圧縮符号化を行う際の動き補償予測処理を整数画素単位で行うことができる。
なお、「変位結果ベクトル」は、前記した通り、前記した「変位」の発生の前と後とにおける、第1撮像素子10によって撮像された映像の一部又は全体の画素単位で測った移動量を意味している。「変位結果ベクトル」は、各フレーム間においてほぼ整数値化されるため、小数部分の値が最小の値となる。
撮像制振装置1は、変位後の結像が、必ず、画素の単位格子領域の範囲内の位置に存在して、画素の単位格子領域の範囲からはみ出さないように、「変位」を発生させる。これによって、撮像制振装置1は、撮影時の各フレーム間の被写体像の全体的な移動量(例えば、撮像素子における所定領域の平均的な動き等)を、画素の単位格子領域のサイズにおいて整数化する。
その結果、撮像制振装置1は、映像の圧縮符号化を行う際の動き補償予測処理後の予測処理残差を抑制することができる。そのため、撮像制振装置1は、映像の圧縮符号化効率を改善して、例えば、画質の向上やビットレートの増加の抑制等を実現することができる。
また、撮像制振装置1は、変位部40a〜40dが変位制御量(ΔX,ΔY)分だけしか振動の抑制を行わないため、画素の単位格子領域のサイズの倍数の被写体像の動揺を過剰に相殺することがなくなる。その結果、撮像制振装置1は、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまうことを防止することができる。
<画素の単位格子領域の具体例>
以下、図3A〜図3Cを参照して、画素の単位格子領域の具体例につき説明する。「画素の単位格子領域」とは、前記した通り、撮像素子を形成する各単位セル(画素)の中心点が移動し得る領域を意味している。画素の単位格子領域は、撮像素子10,60の構造や仕様によって異なっている。
図3Aは、モノクロ単板の正方格子として構成されており、かつ、その開口率が100%となっている撮像素子100を形成する単位セル101における画素の単位格子領域の一例を示している。
図3A中、点線で示す領域の内部が単位セル101における画素の単位格子領域(すなわち、単位セル101の中心点が移動し得る領域)である。なお、図3A中、点線で示す領域は、単位セル101の中心と隣接左上セルの中心との中点、単位セル101の中心と隣接右上セルの中心との中点、単位セル101の中心と隣接右下セルの中心との中点、及び、単位セル101の中心と隣接左下セルの中心との中点を頂点とする正方形状の領域になっている。カメラは、単位セル101を被写界に対して光学的に移動させるが、そのとき、その移動の範囲は、単位セル101の中心点が単位格子領域を逸脱しないように制限される(以下、同様)。
図3Bは、カラー用の正方格子として構成されている撮像素子200を形成する単位セルにおける画素の単位格子領域の一例を示している。
図3B(a)は、撮像素子200の構造を示している。図3B(a)に示す例では、撮像素子200は、一点鎖線で示すように、2つの緑(G)用の単位セルと1つの赤(R)用の単位セルと1つの青(B)用の単位セルとからなる4つのセルをカラー用の一ブロックのセルとして用いる構造になっている。
図3B(b)は、このような撮像素子200を形成する緑(G)用の単位セル201Gにおける画素の単位格子領域の一例を示している。図3B(b)中、点線で示す格子の内部の領域が単位セル201Gにおける画素の単位格子領域である。なお、図3B(b)中、点線で示す領域は、単位セル201Gの上、右、下、及び、左の各セルの中心を結んだ正方形状の領域になっている。
図3B(c)は、赤(R)用の単位セル201Rにおける画素の単位格子領域の一例を示している。図3B(c)中、点線で示す格子の内部の領域が単位セル201Rにおける画素の単位格子領域である。なお、図3B(c)中、点線で示す領域は、単位セル201Rの左上、右上、右下、及び、左下の各セルの中心を結んだ正方形状の領域になっている。
緑(G)用の単位セル201Gは、カラー用の一ブロックのセルの中にセルが2つ存在するため、画素の単位格子領域が図3B(b)に示すようになる。一方、赤(R)用の単位セル201Rは、カラー用の一ブロックのセルの中にセルが1つしか存在しないため、画素の単位格子領域が図3B(c)に示すようになる。なお、ここでは、図示せぬ青(B)用の単位セルの画素の単位格子領域は、赤(R)用の単位セル201Rと同様になるものとする。ただし、これらの画素の単位格子領域は、撮像素子200の構造や仕様によっては、異なる構成になる場合がある。
図3Cは、ハニカム格子として構成された撮像素子300を形成する単位セル301における画素の単位格子領域の一例を示している。図3C中、点線で示す格子の内部の領域が単位セル301における画素の単位格子領域である。なお、図3C中、点線で示す領域は、単位セル301の中心と単位セル301に隣接する6つの単位セルの各中心との6つの中点を求め、これら6つの中点を結んだ六角形状の領域になっている。
<本発明を適用した場合の変位後の結像の位置>
本発明は、前記した通り、変位後の結像が画素の単位格子領域の範囲からはみ出さないように、「変位」を発生させること(図4(b)参照)によって、映像の圧縮符号化効率を改善して、画質の向上やビットレートの増加の抑制等を実現するとともに、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまうことを防止するものである。
以下、図4を参照して、本発明を適用しない場合と本発明を適用した場合との変位後の結像の位置の違いにつき説明する。なお、「本発明を適用する場合」とは、変位後の結像を必ず画素の単位格子領域Rの範囲内に存在させる値(すなわち、変位後の結像を必ず画素の単位格子領域Rの範囲からはみ出させない値)に、「変位制御量」の値を設定することを意味している。また、「本発明を適用しない場合」とは、「変位制御量」の値を、そのような値に設定しないことを意味している。
図4(a)は、比較例として、本発明を適用しない場合の変位後の結像の位置の一例を示している。一方、図4(b)は、本実施形態1として、本発明を適用した場合の変位後の結像の位置の一例を示している。なお、図4は、第1撮像素子10がモノクロ単板の正方格子として構成されており、かつ、その開口率が100%となっている場合の例を示している。
図4(a)に示すように、本発明を適用しない比較例は、変位後の結像が4つの画素上に跨ってのる。つまり、比較例は、変位後の結像が、画素の単位格子領域Rの範囲から小数画素単位ではみ出す状態になる。
このような比較例は、映像の圧縮符号化を行う際の動き補償予測処理時に、画素の単位格子領域Rの範囲からはみ出す領域が存在し、動き補償予測処理において非整数画素の動き補償を行うための補間フィルタの影響が生じ、その影響分だけ動き補償残差が余分に生ずるため、符号化効率(レート歪み特性)が低下する。その結果、比較例は、例えば、画質が劣化したり、ビットレートが増加したりする等の不具合が発生する場合がある。また、比較例は、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまう場合がある。
これに対し、図4(b)に示すように、本発明を適用する本実施形態1は、変位後の結像が単一の画素上にのる。つまり、本実施形態1は、変位後の結像が、画素の単位格子領域Rの範囲から小数画素単位ではみ出さない状態になる。
このような本実施形態1は、映像の圧縮符号化を行う際の動き補償予測処理時に、画素の単位格子領域Rの範囲からはみ出す領域が存在しないため、映像の圧縮符号化を行う際の動き補償予測処理において、補間フィルタの影響分だけ動き補償残差が余分に生ずることを回避することができる。すなわち、本実施形態1は、映像の圧縮符号化を行う際の動き補償予測処理後の予測処理残差を抑制することができる。その結果、本実施形態1は、符号化効率(レート歪み特性)の低下を抑制することができる。これにより、本実施形態1は、映像の圧縮符号化効率を改善して、画質の向上やビットレートの増加の抑制等を実現するとともに、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまうことを防止することができる。
以上の通り、本実施形態1に係る撮像制振装置1によれば、第1撮像素子10によって撮影される映像の変位後の結像の変位結果ベクトル(すなわち、変位制御を行った結果、第1撮像素子10で撮影される出力映像の被写体像の動きベクトル)が各フレーム間においてほぼ整数値化される。
そのため、撮像制振装置1によれば、カメラが出力映像の圧縮符号化を行う場合に(特に、カメラが、例えば、MPEG−1、MPEG−2、MPEG−4、H.264/MPEG−4 AVC等の、時間相関を利用して映像を圧縮符号化する方式によって出力映像の圧縮符号化を行う場合に)、映像の圧縮符号化効率を改善して、画質の向上やビットレートの増加の抑制等を実現するとともに、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまうことを防止することができる。
また、撮像制振装置1によれば、第1撮像素子10を水平方向及び垂直方向に±0.5画素以内の範囲だけしか変位させないため、被写体の真の位置と撮影された被写体像の位置との誤差が水平方向及び垂直方向に±0.5画素以内の範囲となり、撮像制振装置1をカメラに付加することに起因する動的な画質劣化を最小限にとどめることができる。
[実施形態2]
次に、本実施形態2に係る撮像制振装置1Bについて説明する。撮像制振装置1Bは、実施形態1に係る撮像制振装置1と比較すると、撮像素子10によって撮影された観賞用の映像を測定用の映像として併用することによって(すなわち、観賞用の映像を測定用の映像としても用いることによって)変位制御量を算出する点で相違している。以下、図5を参照して、本実施形態2に係る撮像制振装置1Bの構成につき説明する。ここでは、本実施形態2に係る「測定動きベクトル(すなわち、結像の全体又はその一部分の動きベクトルの測定値)」を「測定動きベクトルVd」と称する。
図5に示すように、本実施形態2に係る撮像制振装置1Bは、実施形態1に係る撮像制振装置1と比較すると、実施形態1に係る撮像制振装置1(図1参照)からハーフミラー50及び第2撮像素子60を除いた構成となっている。
また、撮像制振装置1Bは、変位量推定部70Bが、撮像素子10で撮影された観賞用の映像と変位制御部80から出力される変位制御量の値を表す制御信号とを用いて、推定動きベクトルVcを算出する構成になっている。
変位量推定部70Bは、撮像素子10によって撮影された撮像時刻の異なる複数フレーム間の鑑賞用の映像において、映像の全体又は一部分でブロックマッチングを行うことによって、「測定動きベクトルVd」を算出する。
具体的には、例えば、図6に示すように、変位量推定部70Bは、撮像素子10によってこれから撮影しようとする現フレームに先行して、撮像素子10によって撮影されたフレーム−1Fとフレーム−2Fとの2つのフレーム間の鑑賞用の映像において、映像の全体又は一部分でブロックマッチングを行うことによって、「測定動きベクトルVd」を算出する。
なお、図6に示す例では、撮像制振装置1Bは、フレーム−2F,−1F,F1,F2,…の「蓄積」タイミングで、撮像素子10によって、測定用の映像及び観賞用の映像として併用される「変位後の結像」を撮影している。撮像制振装置1Bは、フレーム−1Fの映像の「蓄積」期間が終了してから、フレームF1の映像の「蓄積」期間が開始するまでの間に、以下の処理を行う。
撮像制振装置1Bは、制御部2が、読出時間t1のタイミングで、フレーム−2F,−1Fの各映像を読み出す。
次に、算出時間t2のタイミングで、制御部2の変位量推定部70Bが、まず、フレーム−2F,−1Fの各映像に基づいて、前記した「測定動きベクトルVd」を算出し、次に、その測定動きベクトルVdに基づいて、前記した「推定動きベクトルVc」を算出し、さらに、制御部2の変位制御部80が、「変位制御量(ΔX,ΔY)」を算出する。
なお、変位量推定部70Bは、「測定動きベクトルVd」を算出する際に、小数画素精度のブロックマッチングを行う。小数画素精度のブロックマッチングを行う手法は、実施形態1で説明した手法と同様である。
ここでは、これら2つのフレームの撮像時刻を時刻taと時刻tb(ただし、ta<tb)として説明する。なお、ここでは、「撮像時刻」は、例えば、蓄積開始時刻若しくは蓄積終了時刻、又は、これらの平均値として定義する。
また、ここでは、時刻taにおいて変位制御部80が変位部40a〜40dに指示した変位制御量をベクトル「Da」とし、また、時刻tbにおいて変位制御部80が変位部40a〜40dに指示した変位制御量をベクトル「Db」として説明する。
このような条件下において、変位量推定部70Bは、例えば、以下の式(3)に基づいて、「推定動きベクトルVc」を小数画素精度で算出する。
変位量推定部70Bは、推定動きベクトルVcを算出すると、算出された推定動きベクトルVcを変位制御部80に出力する。すると、変位制御部80は、算出された推定動きベクトルVcを用いて、前記した式(2)に基づいて、変位制御量(ΔX,ΔY)を算出する。
すなわち、撮像制振装置1Bは、変位制御部80が、「推定動きベクトルVc」の水平成分値uc及び垂直成分値vcから、「推定動きベクトルVc」の水平成分値uc及び垂直成分値vcのそれぞれに対して画素の単位格子領域のサイズにおける小数部分を直近の整数値に向けて桁の繰り上げ演算又は繰り下げ演算を行った水平成分演算値round(uc)及び垂直成分演算値round(vc)を減算することによって、変位制御量(ΔX,ΔY)を算出する。
変位制御部80は、変位制御量(ΔX,ΔY)を算出すると、変位制御量(ΔX,ΔY)を変位部40a〜40dに出力する。これに応答して、変位部40a〜40dは、変位制御量(ΔX,ΔY)分だけ、撮像素子10を移動させる。
なお、変位量推定部70Bは、推定動きベクトルVcの代わりに、前記した式(3)に基づいて算出された「推定動きベクトルVc」の時系列に対してフィルタ処理(例えば、直近3時点分の推定動きベクトルVc1,Vc2,Vc3の平均値をとる演算(すなわち、Vcn=(Vc1+Vc2+Vc3)/3)等)を行って、フィルタ処理の結果である推定動きベクトルVcnを算出し、その推定動きベクトルVcnを変位制御部80に出力するようにしても構わない。
以上の通り、本実施形態2に係る撮像制振装置1Bによれば、実施形態1に係る撮像制振装置1(図1参照)と同様に、映像の圧縮符号化効率を改善して、画質の向上やビットレートの増加の抑制等を実現するとともに、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまうことを防止することができる。
また、撮像制振装置1Bによれば、実施形態1に係る撮像制振装置1と同様に、撮像素子10を水平方向及び垂直方向に±0.5画素以内の範囲だけしか変位させないため、被写体の真の位置と撮影された被写体像の位置との誤差が水平方向及び垂直方向に±0.5画素以内の範囲となり、撮像制振装置1Bをカメラに付加することに起因する動的な画質劣化を最小限にとどめることができる。
しかも、撮像制振装置1Bによれば、実施形態1に係る撮像制振装置1(図1参照)からハーフミラー50及び第2撮像素子60を除いた構成になっているため、実施形態1に係る撮像制振装置1よりも装置の小型化を図ることができる。
[実施形態3]
次に、本実施形態3に係る撮像制振装置1Cについて説明する。撮像制振装置1Cは、実施形態1に係る撮像制振装置1と比較すると、変位部40a〜40dを除く代わりに、光学的に光路を変位することができる素子(以下、「光路変更素子」と称する)を用いる点、及び、本実施形態3に係る変位制御部80Cが変位制御量に対応する制御信号を光路変更素子に出力して光路変更素子を作動させる点で相違している。以下、図7を参照して、本実施形態3に係る撮像制振装置1Cの構成につき説明する。
図7に示すように、撮像制振装置1Cは、ハーフミラー50と第1撮像素子10との間に、変位部90が配置されている。変位部90は、光学的に光路30を変位することができる光路変更素子によって構成されている。以下、変位部90を「光路変更素子90」と称する。
光路変更素子90は、図8に示すように、本実施形態3に係る変位制御部80Cから出力される変位制御量に対応する制御信号に応じて、光路30を、水平方向、垂直方向、及び、斜め方向のいずれか任意の方向に、小数画素精度で多段階に変位させる素子である。光学的変位部90は、入射光の光軸方向と出射光の光軸方向とが平行になるように、出射光を出射する。
係る構成において、本実施形態3に係る撮像制振装置1Cは、実施形態1に係る撮像制振装置1と同様に、変位量推定部70が、「測定動きベクトルVs」及び「推定動きベクトルVc」を算出する。
すなわち、撮像制振装置1Cは、実施形態1に係る撮像制振装置1と同様に、まず、変位量推定部70が、第2撮像素子60によって撮影された撮像時刻の異なる複数フレーム(例えば、第1撮像素子10によってこれから撮影しようとする現フレームに先行して、第2撮像素子60によって撮影されたフレーム−1とフレーム−2との2つのフレーム)間の測定用の映像において、映像の全体又は一部分でブロックマッチングを行うことによって、「測定動きベクトルVs」を算出する。次に、撮像制振装置1Cは、実施形態1に係る撮像制振装置1と同様に、変位量推定部70が、算出された測定動きベクトルVsを用いて、前記した式(1)に基づいて、「推定動きベクトルVc」を小数画素精度で算出する。
この後、撮像制振装置1Cは、実施形態1に係る撮像制振装置1の変位制御部80と同様に、変位制御部80Cが、変位量推定部70によって算出された推定動きベクトルVcを用いて、前記した式(2)に基づいて、「変位制御量(ΔX,ΔY)」を算出する。
すなわち、撮像制振装置1Cは、変位制御部80Cが、「推定動きベクトルVc」の水平成分値uc及び垂直成分値vcから、「推定動きベクトルVc」の水平成分値uc及び垂直成分値vcのそれぞれに対して画素の単位格子領域のサイズにおける小数部分を直近の整数値に向けて桁の繰り上げ演算又は繰り下げ演算を行った水平成分演算値round(uc)及び垂直成分演算値round(vc)を減算することによって、変位制御量(ΔX,ΔY)を算出する。
変位制御部80Cは、変位制御量(ΔX,ΔY)を算出すると、変位制御量(ΔX,ΔY)に対応する制御信号を生成して、生成した制御信号を光路変更素子90に出力する。このとき、生成される制御信号は、光路変更素子90に対して、実施形態1に係る撮像制振装置1(図1参照)の変位部40a〜40dが第1撮像素子10を変位させた方向とは逆方向で、かつ、同じ大きさ(絶対値)分だけ、光路30を変位させることを指示する内容になっている。
その結果、光路変更素子90は、実施形態1に係る撮像制振装置1(図1参照)の変位部40a〜40dが第1撮像素子10を変位させた方向と逆方向で、かつ、同じ大きさ(絶対値)分だけ、光路30を変位させる。
本実施形態3に係る撮像制振装置1Cによれば、実施形態1に係る撮像制振装置1(図1参照)と同様に、映像の圧縮符号化効率を改善して、画質の向上やビットレートの増加の抑制等を実現するとともに、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまうことを防止することができる。
また、撮像制振装置1Cによれば、実施形態1に係る撮像制振装置1が第1撮像素子10を水平方向及び垂直方向に±0.5画素以内の範囲だけしか変位させない代わりに、光路30を水平方向及び垂直方向に±0.5画素以内の範囲だけしか変位させないため、被写体の真の位置と撮影された被写体像の位置との誤差が水平方向及び垂直方向に±0.5画素以内の範囲となり、撮像制振装置1Cをカメラに付加することに起因する動的な画質劣化を最小限にとどめることができる。
[実施形態4]
次に、本実施形態4に係る撮像制振装置1Dについて説明する。撮像制振装置1Dは、実施形態2に係る撮像制振装置1B(図5参照)と比較すると、変位部40a〜40dを除く代わりに、光路変更素子90を用いる点、及び、本実施形態4に係る変位制御部80Cが実施形態3と同様に変位制御量に対応する制御信号を光路変更素子90に出力して光路変更素子90を作動させる点で相違している。以下、図9を参照して、本実施形態4に係る撮像制振装置1Dの構成につき説明する。ここでは、本実施形態4に係る「測定動きベクトル(すなわち、結像の全体又はその一部分の動きベクトルの測定値)」を「測定動きベクトルVd」と称する。
図9に示すように、撮像制振装置1Dは、実施形態3に係る撮像制振装置1Cと同様に、ハーフミラー50と第1撮像素子10との間に、光路変更素子90が配置されている。
係る構成において、本実施形態4に係る撮像制振装置1Dは、実施形態2に係る撮像制振装置1Bと同様に、変位量推定部70Bが、「測定動きベクトルVd」及び「推定動きベクトルVc」を算出する。
すなわち、撮像制振装置1Dは、実施形態2に係る撮像制振装置1Bと同様に、まず、変位量推定部70Bが、撮像素子10によって撮影された撮像時刻の異なる複数フレーム(例えば、撮像素子10によってこれから撮影しようとする現フレームに先行して、撮像素子10によって撮影されたフレーム−1F(図6参照)とフレーム−2F(図6参照)との2つのフレーム)間の鑑賞用の映像において、映像の全体又は一部分でブロックマッチングを行うことによって、「測定動きベクトルVd」を算出する。次に、撮像制振装置1Dは、実施形態2に係る撮像制振装置1Bと同様に、変位量推定部70Bが、算出された測定動きベクトルVd、時刻taにおける変位制御量を表すベクトルDa、及び、時刻tbにおける変位制御量を表すベクトルDbを用いて、前記した式(3)に基づいて、「推定動きベクトルVc」を小数画素精度で算出する。
この後、撮像制振装置1Dは、実施形態2に係る撮像制振装置1Bと同様に、変位制御部80Cが、変位量推定部70Bによって算出された推定動きベクトルVcを用いて、前記した式(2)に基づいて、「変位制御量(ΔX,ΔY)」を算出する。
すなわち、撮像制振装置1Dは、変位制御部80Cが、「推定動きベクトルVc」の水平成分値uc及び垂直成分値vcから、「推定動きベクトルVc」の水平成分値uc及び垂直成分値vcのそれぞれに対して画素の単位格子領域のサイズにおける小数部分を直近の整数値に向けて桁の繰り上げ演算又は繰り下げ演算を行った水平成分演算値round(uc)及び垂直成分演算値round(vc)を減算することによって、変位制御量(ΔX,ΔY)を算出する。
変位制御部80Cは、変位制御量(ΔX,ΔY)を算出すると、実施形態3と同様に、変位制御量(ΔX,ΔY)に対応する制御信号を生成して、生成した制御信号を光路変更素子90に出力する。このとき、生成される制御信号は、光路変更素子90に対して、実施形態1に係る撮像制振装置1(図1参照)の変位部40a〜40dが第1撮像素子10を変位させた方向とは逆方向で、かつ、同じ大きさ(絶対値)分だけ、光路30を変位させることを指示する内容になっている。
その結果、光路変更素子90は、実施形態3と同様に、実施形態1に係る撮像制振装置1(図1参照)の変位部40a〜40dが第1撮像素子10を変位させた方向と逆方向で、かつ、同じ大きさ(絶対値)分だけ、光路30を変位させる。
本実施形態4に係る撮像制振装置1Dによれば、実施形態3に係る撮像制振装置1C(図7参照)と同様に、映像の圧縮符号化効率を改善して、画質の向上やビットレートの増加の抑制等を実現するとともに、演出上の理由等で意図された被写体像の動揺までをも過剰に相殺してしまうことを防止することができる。
また、撮像制振装置1Dによれば、実施形態3に係る撮像制振装置1Cと同様に、光路30を水平方向及び垂直方向に±0.5画素以内の範囲だけしか変位させないため、被写体の真の位置と撮影された被写体像の位置との誤差が水平方向及び垂直方向に±0.5画素以内の範囲となり、撮像制振装置1Dをカメラに付加することに起因する動的な画質劣化を最小限にとどめることができる。
しかも、撮像制振装置1Dによれば、実施形態3に係る撮像制振装置1C(図7参照)からハーフミラー50及び第2撮像素子60を除いた構成になっているため、実施形態3に係る撮像制振装置1Cよりも装置の小型化を図ることができる。
なお、前記した実施形態1〜4では、制御部2,2B,2C,2Dは、それぞれ、図示せぬ記憶部に読み出し自在に予め格納された制御プログラムを実行することによって、前記した「変位量推定部70(又は70B)」及び「変位制御部80(又は80B)」を備える構成になっているものとする。
本発明は、前記した実施形態に限定されることなく、本発明の要旨を逸脱しない範囲で種々の変更や変形を行うことができる。
例えば、実施形態1に係る撮像制振装置1(図1参照)及び実施形態3に係る撮像制振装置1C(図7参照)は、光路を分岐する分岐部材としてハーフミラー50を用いる構成になっている。しかしながら、撮像制振装置1,1Cは、ハーフミラー50の代わりに、分岐部材としてハーフプリズムを用いる構成にしてもよい。
また、撮像素子10を、時分割的に動き推定用(第2撮像素子60の代用)と映像出力用とに併用してもよい。
なお、前記した「変位結果ベクトルの値が隣接する2つの画素の中心点同士を結ぶことによって得られるベクトル値集合の中のいずれかのベクトル値もしくはゼロベクトル値と一致する値となる変位制御量」は、正方格子(図3A及び図3B参照)やハニカム格子(図3C参照)だけでなく、例えば、長方格子や斜方格子、クインカンクス格子等の図示せぬ格子にも適用可能な変位制御量になっている。