JP5321540B2 - 画像補正処理装置、画像補正処理方法、及び画像補正処理プログラム - Google Patents

画像補正処理装置、画像補正処理方法、及び画像補正処理プログラム Download PDF

Info

Publication number
JP5321540B2
JP5321540B2 JP2010144903A JP2010144903A JP5321540B2 JP 5321540 B2 JP5321540 B2 JP 5321540B2 JP 2010144903 A JP2010144903 A JP 2010144903A JP 2010144903 A JP2010144903 A JP 2010144903A JP 5321540 B2 JP5321540 B2 JP 5321540B2
Authority
JP
Japan
Prior art keywords
block
image
point
motion vector
correction processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010144903A
Other languages
English (en)
Other versions
JP2012010145A (ja
Inventor
守 知久
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
JVCKenwood Corp
Original Assignee
JVCKenwood Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by JVCKenwood Corp filed Critical JVCKenwood Corp
Priority to JP2010144903A priority Critical patent/JP5321540B2/ja
Publication of JP2012010145A publication Critical patent/JP2012010145A/ja
Application granted granted Critical
Publication of JP5321540B2 publication Critical patent/JP5321540B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Studio Devices (AREA)
  • Image Analysis (AREA)

Description

本発明は、撮影画像の中心位置を補正するための画像補正処理装置、画像補正処理方法、及び画像補正処理プログラムに関する。
小型で高性能のビデオカメラが一般ユーザに手に入るようになり、外出時に持ち歩く機会が増えている。自動車で外出したり、旅行するときも、助手席や後部座席に同乗した人がビデオカメラで外の風景を撮影したり、車のダッシュボード上にカメラを固定して、運転中に車両の前方を撮影することがある。
特許文献1には、車載カメラによって車両の前方を連続して撮像する際、車両の走行により画像に生じたぶれを補正する画像補正装置および画像補正方法が記載されている。
特開2005−318568号公報
特許文献1の画像補正装置および画像補正方法は、同文献の段落0032に記載されるように、画像内におけるオブジェクトの動きを示すオプティカルフローは、車両の進行方向とカメラの光軸方向が一致している場合、消失点から放射状に生じることを前提として、車両の走行により画像に生じたぶれを補正する。
車両にカメラを搭載して走行中に前方を撮影すると、車両がカーブを曲がるときは、車両の走行方向がカメラの光軸方向からずれる。たとえば、左に曲がろうとしてハンドルを左に切って走行すると、走行方向は左前方であるのに対して、カメラの光軸方向は真正面を向いている。そのため、車両に乗っている人が走行方向である左前方を見ていても、カメラが撮影している方向は真正面のままであり、車両がカーブを曲がるときに撮影された映像は右から左に視野が大きくシフトし、映像を視聴する人に目が回るような不快感を与える。
このように、車両がカーブを曲がる際、車両の走行方向とカメラの光軸方向が一致しないため、撮影画像において放射状のオプティカルフローの消失点がカメラの光軸中心からずれる現象が起こる。一般に、動画において放射状のオプティカルフローの消失点がカメラの光軸中心からずれた場合、動画を見たときに違和感が生じる。
本発明はこうした状況に鑑みてなされたものであり、その目的は、撮影画像における放射状のオプティカルフローの消失点と撮影画像の中心とのずれを補正することができる画像補正処理装置、画像補正処理方法、及び画像補正処理プログラムを提供することにある。
上記課題を解決するために、本発明のある態様の画像補正処理装置は、所定の点を中心とした放射状のオプティカルフローが生じる撮影画像を補正する。この装置は、複数のブロックに分割された撮影画像の各ブロックの動きベクトルを検出する動きベクトル検出部と、前記ブロック毎に、動きベクトルを検出する際の基準点である代表点を通り、かつ、そのブロックの動きベクトルと傾きが同じ直線を算出する一次関数算出部と、算出された直線の傾きが異なる少なくとも二つのブロックを選択し、その選択されたブロックの直線の交点を求めることにより、前記所定の点である消失点の位置を算出する消失点算出部と、前記消失点の位置と撮影画像の中心とが一致するように撮影画像を補正する中心位置補正部とを含む。
本発明の別の態様は、画像補正処理方法であり、所定の点を中心とした放射状のオプティカルフローが生じる撮影画像を補正する。この方法は、複数のブロックに分割された撮影画像の各ブロックの動きベクトルを検出するステップと、前記ブロック毎に、動きベクトルを検出する際の基準点である代表点を通り、かつ、そのブロックの動きベクトルと傾きが同じ直線を算出するステップと、算出された直線の傾きが異なる少なくとも二つのブロックを選択し、その選択されたブロックの直線の交点を求めることにより、前記所定の点である消失点の位置を算出するステップと、前記消失点の位置と撮影画像の中心とが一致するように撮影画像を補正するステップとを含む。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、撮像された画像において、放射状のオプティカルフローの消失点と撮影画像の中心とのずれを補正することができる。
25個のブロックに分割された撮影画像において、各ブロックの代表点と動きベクトルを示す図である。 手ぶれ補正をしてフレームメモリから出力画像を切り出す処理を説明する図である。 撮影画像の各ブロックで検出される動きベクトルを説明する図である。 図4(a)、(b)は、車両が前進中に車載カメラで前方を撮影したときに撮影画像の各ブロックで検出される動きベクトルを説明する図である。 図5(a)、(b)は、車両がカーブを曲がる際に車載カメラで前方を撮影したときに撮影画像の各ブロックで検出される動きベクトルを説明する図である。 図5(b)の前方撮影画像から中心位置をずらして画像を切り出す処理を説明する図である。 撮影画像の各ブロックの番号を示す図である。 図7に示す第4ブロックにおける代表点と代表点の動きベクトルを示す図である。 図7に示す第25ブロックにおける代表点と代表点の動きベクトルを示す図である。 図8の第4ブロックのフロー放射線と図9の第25ブロックのフロー放射線を合成した図である。 撮影画像の中心と各ブロックの代表点を結ぶ直線を示す図である。 車両が上にバウンドしたときの撮影画像の消失点の位置を示す図である。 車両が下にバウンドしたときの撮影画像の消失点の位置を示す図である。 本発明の実施の形態に係る中心位置補正機能を搭載した撮像装置の構成図である。 図14の中心位置補正処理ブロックの構成図である。
本発明の実施の形態に係る中心位置補正処理方法を図1〜図13を参照して説明し、その後、図14および図15を参照して、中心位置補正機能を搭載した撮像装置の構成を説明する。
図1〜3を参照して、一般的な手ぶれ補正処理を説明する。図1は、25個のブロックに分割された撮影画像において、各ブロックの動きベクトルを示す図である。代表点は各ブロックの中心の画素であり、手ぶれによる代表点画素の輝度をもつ画素の動きを検出することで、手ぶれによる動きベクトル(以下、単に「手ぶれベクトル」と呼ぶ)が求まる。方向と大きさは、代表点の画素の輝度に最も近い輝度をもつ画素をブロック内で探索することによってx、yで検出することができる。
ここで、「代表点」は動きベクトルを検出する際の基準となる点であり、「代表点」はブロックの中心の画素に限定されず、ブロック内の任意の位置の特徴点であってもよい。
図2は、手ぶれ補正をしてフレームメモリから出力画像を切り出す処理を説明する図である。図1の25ブロックで求められた手ぶれベクトルを平均化し、平均化された手ぶれベクトルによって、出力画像をフレームメモリから切り出す中心位置をずらす。図2の左側は、フレームメモリ内に格納された撮影画像である。手ぶれがなければ、撮影画像の中心から出力画像を切り出せばよいが、図1のような手ぶれベクトルが検出された場合は、平均化された手ぶれベクトルが示す動きの方向と量でもって切り出す中心位置をずらし、図2の右側に示すような出力画像を切り出す。これにより手ぶれが補正された画像が出力される。
図3は、撮影画像の各ブロックで検出される動きベクトルを説明する図である。図1では、撮影画像を25個のブロックに分割し、各ブロックの動きベクトルを検出するとしたが、実装上は、図3の右側に示すように、各ブロックをさらにたとえば20個にエリアに分割し、各エリアの中心画素を代表点とし、エリア毎に動きベクトルを求め、20エリアで平均化したものを当該ブロックの動きベクトルとする。ただし、以下では、説明を簡単にするため、各ブロックに一つの代表点があるものとして説明する。
ビデオカメラやデジタルスチルカメラなどの撮像装置には、一般に、手ぶれ補正機能が搭載されており、動きベクトルをブロック単位で検出し、得られた動きベクトル値を全ブロックで平均することで手ぶれベクトルを算出することが行われている。
しかしながら、カメラを走行中の車両に搭載して撮影したり、助手席や後部座席に乗っている人がカメラを手に持って撮影すると、撮影対象のオブジェクトの移動フローが放射状になるため、各ブロックで同じ方向の動きベクトルが検出されることを前提とした一般的な手ぶれ補正機能は有効に働かなくなる。
図4(a)、(b)は、車両が前進中に車載カメラで前方を撮影したときに撮影画像の各ブロックで検出される動きベクトルを説明する図である。図4(a)に示すようなまっすぐな道路を車両が走行中は、周囲のオブジェクトの動きを示すオプティカルフローは走行方向を中心に放射状になる。したがって、車載カメラで前方撮影した場合、図4(b)に示すように、撮影画像の中心から放射状に広がる方向に動きベクトルが検出される。動きベクトルの大きさは走行速度によって変化する。この放射状のオプティカルフローの中心を「消失点」と呼ぶ。
図5(a)、(b)は、車両がカーブを曲がる際に車載カメラで前方を撮影したときに撮影画像の各ブロックで検出される動きベクトルを説明する図である。図5(a)に示すような左にカーブした道路を車両が走行中は、周囲のオブジェクトの動きを示すオプティカルフローは走行方向である左前方の点を中心に放射状に生じる。したがって、車載カメラで前方撮影した場合、図5(b)に示すように、撮影画像の左上の消失点を中心として放射状に広がる方向に動きベクトルが検出される。すなわち、車両がカーブを曲がる際に前方撮影された画像では、オプティカルフローの消失点は、撮影画像の中心からずれた位置に生じる。これは、車両の走行方向とカメラの光軸方向がずれることによって起こる現象である。
本実施の形態は、このように車両の走行方向がカメラの光軸方向からずれることが原因で発生する、撮影画像における放射状のオプティカルフローの消失点と撮影画像の中心とのずれを補正する画像補正処理方法を提供する。
図6は、図5(b)の前方撮影画像から中心位置をずらして画像を切り出す処理を説明する図である。撮影画像を保持するフレームメモリから出力画像を切り出す中心位置を、図5(b)の前方撮影画像において検出されたオプティカルフローの消失点にずらす。これにより、出力される画像は消失点を中心とする画像に補正される。
図7〜図13を参照して、本発明の実施の形態に係る画像補正処理方法を説明する。
図7は、撮影画像の各ブロックの番号を示す図である。左上隅を第1ブロックとし、左から右、上から下に進むにしたがってブロックの番号を順番に振る。ここでは、撮影画像は縦横それぞれ5ブロックで分割され、第1〜第25のブロックに分割されている。説明の便宜上、撮影画像の横方向をX軸、縦方向をY軸とし、撮影画像の中心点の座標を(0,0)とし、1つのブロックのサイズを30×30、撮影画像全体のサイズを150×150であるとして、撮影画像内の点の座標を表す。たとえば、第4ブロックの代表点の座標は(30,60)であり、第25ブロックの代表点の座標は(60,−60)である。
図8は、図7に示す第4ブロックにおける代表点と代表点の動きベクトルを示す。第4ブロックの代表点の座標は(30,60)であり、撮影画像において、この代表点は、図8の矢印で示す動きベクトルの方向に、動きベクトル量だけ移動する。
図8の一点鎖線で示された直線は、撮影画像のオプティカルフローの消失点と第4ブロックの代表点を結ぶ直線y=ax+bを示す。カーブを走行中はこの一点鎖線上に代表点の動きベクトルが検出される。この一点鎖線で示される直線を「フロー放射線」と呼ぶ。
フロー放射線の傾きaは、代表点の動きベクトルの傾きから求められる。図8に示すように、代表点の動き検出量は、X方向に10、Y方向に10であるから、傾きa=1である。
フロー放射線の切片bは、代表点の座標値(30,60)を、傾きa=1のフロー放射線の式y=x+bに代入することで求めることができ、b=60−30=30である。こうして、フロー放射線の式y=x+30が得られる。求めたい撮影画像のオプティカルフローの消失点はこのフロー放射線上にある。
図9は、図7に示す第25ブロックにおける代表点と代表点の動きベクトルを示す。第25ブロックの代表点の座標は(60,−60)であり、撮影画像において、この代表点は、図8の矢印で示す動きベクトルの方向に、動きベクトル量だけ移動する。
図8と同様、図9の一点鎖線は、撮影画像のオプティカルフローの消失点と第25ブロックの代表点を結ぶ直線(フロー放射線)y=ax+bを示す。このフロー放射線上に代表点の動きベクトルが検出される。
フロー放射線の傾きaは、代表点の動きベクトルの傾きから求められる。図9に示すように、代表点の動き検出量は、X方向に12、Y方向に−12であるから、傾きa=−1である。
フロー放射線の切片bは、代表点の座標値(60,−60)を、傾きa=−1のフロー放射線の式y=−x+bに代入することで求めることができ、b=−60+60=0である。こうして、フロー放射線の式y=−xが得られる。求めたい撮影画像のオプティカルフローの消失点はこのフロー放射線上にある。
図10は、図8の第4ブロックのフロー放射線と図9の第25ブロックのフロー放射線を合成した図である。撮影画像のオプティカルフローの消失点は、第4ブロックのフロー放射線y=x+30と第25ブロックのフロー放射線y=−xの交点として求めることができる。図10において、その交点を二重丸で示す。連立方程式y=x+30、y=−xを解くことにより、交点のx座標−15、y座標15が求まる。こうして得られた消失点(−15,15)を中心に撮影画像を切り出せば、消失点を中心とした出力画像が得られる。
傾きが異なるフロー放射線をもつ任意の二つのブロックを選択し、選択された二つのブロックのフロー放射線の交点を求めることにより、撮影画像の消失点を得ることができる。ここで、二本のフロー放射線が鋭角に交わる場合は、交点として求められる消失点の精度は一般的に良くない。できるだけ直角に近い角度で交わるフロー放射線を選択することで算出される消失点の精度を高めることができる。また、二つのブロックの異なる組み合わせを複数用いて、消失点を複数回求め、平均を求めることで精度を高めることもできる。
図11は、撮影画像の中心と各ブロックの代表点を結ぶ直線を示す図である。符号A〜Hで示される8本の一点鎖線は、撮影画像の中心から各ブロックの代表点へ引いた直線である。たとえば、符号Aで示す一点鎖線は、撮影画像の中心から第11〜15のブロックの代表点へ引いた直線であり、符号Gで示す一点鎖線は、撮影画像の中心から第5、9、13、17、21のブロックの代表点へ引いた直線である。
同一の一点鎖線上にあるブロックから二つのブロックを選択し、各ブロックのフロー放射線の交点を求めると、二つのフロー放射線の傾きの差が小さいため、誤差が大きくなる可能性がある。直交する二本の一点鎖線からそれぞれ一つずつブロックを選択して、各ブロックのフロー放射線の傾きを求めると、傾きの差は大きいため、交点を求めた場合の精度が向上することが期待できる。
たとえば、直線Aと直線Eは直交するから、直線A上の第11、12、14、15ブロックのいずれか一つのブロックと、直線E上の第3、8、18、23ブロックのいずれか一つのブロックとを組み合わせ、各ブロックのフロー放射線の交点を求める。この場合、ブロックの組み合わせは16通りある。
同様に、直線B上の第6、20ブロックのいずれか一つと直線F上の第4、22ブロックのいずれか一つの組み合わせ(4通り)からフロー放射線の交点を求める。直線C上の第1、7、19、25ブロックのいずれか一つと直線G上の第5、9、17、21ブロックのいずれか一つの組み合わせ(16通り)からフロー放射線の交点を求める。直線D上の第2、24ブロックのいずれか一つと直線H上の第10、16ブロックのいずれか一つの組み合わせ(4通り)からフロー放射線の交点を求める。
これら40通りのブロックの組み合わせについて、二本のフロー放射線の交点を求めて、消失点を得る。得られた40個の消失点の座標値を平均することで、高い精度の消失点を求めることができる。
上記の説明では、図11において直交する二本の一点鎖線のそれぞれから一つずつブロックを選択すると、二つのブロックのフロー放射線の傾きの差は大きくなると仮定したが、消失点が撮影画像の中心からずれるため、撮影中心から見て直交する位置関係にあった二つのブロックであっても、消失点から見た場合に、二つのブロックのフロー放射線が直角に近い角度で交わるとは限らない。また、同一の一点鎖線上の二つのブロックであっても、消失点から見ると、傾きが異なるフロー放射線をもつことになる。
そこで、撮影画像の各ブロックにおいて動きベクトルの検出値からフロー放射線の傾きを求めたとき、傾きの差が大きいブロックの組み合わせを選択するようにしてもよい。具体的には、各ブロックの動きベクトルを単位ベクトル化し、二つのブロックの動きベクトルの内積を求めることで二つのブロックの動きベクトルが作る角度を評価し、動きベクトルが作る角度が直角に近い二つのブロックを選択すればよい。
次に、車両走行時の車両の揺れが撮影画像に及ぼす影響について説明する。車両の走行中は、道路の凸凹によって車両が上下にバウンドすることがある。車両が上下にバウンドしたとき、車載カメラの撮影視野も上下にシフトする。
図12は、車両が上にバウンドしたときの撮影画像の消失点の位置を示す図である。車両が上にバウンドすると、車載カメラの光軸中心も上にシフトし、カメラの撮影中心が上にずれる。このとき、切り出すべき出力画像の中心点、言い換えれば、オプティカルフローの消失点は相対的に下に移動している。したがって、オプティカルフローの消失点から出力画像を切り出す上述の中心位置補正処理をここでも用いて、フロー放射線の交点から消失点を求め、下方に生じた消失点に中心位置をずらす補正処理を行えばよい。
図13は、車両が下にバウンドしたときの撮影画像の消失点の位置を示す図である。車両が下にバウンドすると、車載カメラの光軸中心も下にシフトし、カメラの撮影中心が下にずれる。このとき、切り出すべき出力画像の中心点、言い換えれば、オプティカルフローの消失点は相対的に上に移動している。図12と同様に、フロー放射線の交点から消失点を求め、上方に生じた消失点に中心位置をずらせばよい。
このように、車両走行時の車両の揺れについても、カーブを曲がるときと同様、オプティカルフローの消失点に撮影画像の中心位置をずらす中心位置補正処理方法を用いて、撮影画像の中心位置を補正することができる。
さらに、車両の走行停止時の車両の揺れが撮影画像に及ぼす影響について説明する。交差点で信号待ちのために車両の走行を一時停止しているとき、エンジンがかかっているため、一般に車載カメラに振動が伝わり、撮影画像がぶれる。車両が走行を停止しているため、撮影画像内のオブジェクトは走行に伴う動きがなく、放射状のオプティカルフローは生じていない。そのため、フロー放射線がそもそも存在しないため、消失点を求めて中心位置を補正する処理は機能しない。そこで、走行停止時は、中心位置補正処理を中断し、カメラに搭載されている通常の手ぶれ補正処理に切り替える。走行停止時は、エンジンによる車両の揺れにより、放射状ではなく、一定方向に振動する動きになるため、手ぶれと同じような動きベクトルが検出される。したがって、通常の手ぶれ補正処理によって手ぶれを補正した画像を出力すればよい。なお、通常の手ぶれ補正処理を行う機能は、後述のカメラ制御マイコン40が有していてもよいし、図示しない他の制御部が有していてもよい。
本実施の形態では、撮影画像の各ブロックで検出される動きベクトルが所定の許容範囲内で一致する場合は、車両が走行を停止しているものと判断し、オプティカルフローの消失点を求めて撮影画像の中心位置を補正する「中心位置補正処理モード」から、通常撮影時の「手ぶれ補正処理モード」に切り替える。あるいは、ユーザがカメラを走行モードに設定すると、手ぶれ補正処理モードから中心位置補正処理モードに切り替わるようにしてもよい。
図7〜図13を参照して説明した中心位置補正処理方法を実行するための撮像装置を以下、説明する。
図14は、本発明の実施の形態に係る中心位置補正機能を搭載した撮像装置100の構成図である。ここで説明する撮像装置100は、一実施例として動画を撮影してフラッシュメモリやハードディスクなどに記録するビデオカメラである。図14において、実線矢印は映像情報の流れを示し、点線矢印は制御情報の流れを示す。
レンズ10に入射する被写体の像は電荷結合素子(CCD)12に結像する。CCD12から出力される撮影画像は、A/D変換器14によってデジタル信号に変換され、カメラ信号処理LSI30に入力される。
カメラ信号処理LSI30において、色信号処理部16は、A/D変換器14から出力されたデジタル信号を色信号(C)に変換し、Y信号処理部18は、A/D変換器14から出力されたデジタル信号を輝度信号(Y)に変換する。色信号処理部16から出力される色信号は、フィールドメモリ20に記憶される。Y信号処理部18から出力される輝度信号は、ローパスフィルタ(LPF)19にかけられた後、フィールドメモリ20に記憶されるとともに、動きベクトル検出に使用するためにベクトル検出部22に入力される。
ベクトル検出部22は撮影画像の輝度信号にもとづいて動きベクトルを検出し、フィールドメモリ20から撮影画像を切り出す指示をフィールドメモリ20に与える。
ここで、ベクトル検出部22は、フィールドメモリ20から撮影画像を切り出すときの中心位置を光軸中心からオプティカルフローの消失点に移動させるために、カメラ制御マイコン40に設けられた中心位置補正処理ブロック50と協働して動きベクトルを検出する。ベクトル検出部22は、撮影画像から検出された動きベクトルを中心位置補正処理ブロック50に供給し、中心位置補正処理ブロック50はベクトル検出部22により検出された動きベクトルからオプティカルフローの消失点を算出し、算出した消失点を撮影画像をフィールドメモリ20から切り出す中心位置としてベクトル検出部22に供給する。
フィールドメモリ20の指定された中心位置(オプティカルフローの消失点)から切り出された撮影画像の色信号と輝度信号はコーデックLSI24に供給される。コーデックLSI24は、SDRAM38を一時記憶として利用しながら、撮影画像を圧縮符号化し、符号化された画像情報をCF/ATAインタフェース34に与える。また、記録された画像を再生する際は、コーデックLSI24は、CF/ATAインタフェース34から供給される符号化された画像情報を復号する。
CF/ATAインタフェース34は、コンパクトフラッシュ(商標)のような小型カードに対する読み書きのインタフェース、またはATA規格等のハーディスクに対する読み書きのインタフェースである。コーデックLSI24により圧縮符号化された画像情報は、CF/ATAインタフェース34を介してメモリカードやハードディスク36に書き込まれる。コーデックLSI24がメモリカードやハードディスク36から画像情報を読み出す際にもCF/ATAインタフェース34を介して行われる。
コーデックLSI24により処理された撮影画像の色信号と輝度信号はD/A変換器26に供給され、アナログ信号に変換される。Y/C信号混合部28は、D/A変換器26から出力された輝度信号と色信号を混合してビデオ出力部32に供給する。ビデオ出力部32は、画面にビデオ信号を表示させる。
操作部44は、ユーザから撮像装置100を操作する命令を受け付け、操作命令をカメラ制御マイコン40に与える。カメラ制御マイコン40は、撮像装置100全体を制御する制御部であり、操作命令にもとづいてレンズ機構を制御したり、ディスプレイの設定を変更したりする。
たとえば、操作部44により光学ズームが指示された場合、カメラ制御マイコン40は、レンズ10のズームを調整する。操作部44により録画の指示がなされた場合、カメラ制御マイコン40はコーデックLSI24に動画記録の指示を与える。操作部44により、メモリカードやハードディスク36に記録された画像の再生指示がなされると、カメラ制御マイコン40はコーデックLSI24に動画再生の指示を与える。
図15は、図14の中心位置補正処理ブロック50の構成図である。動きベクトル取得部52は、ベクトル検出部22から撮影画像の各ブロックの動きベクトルの情報を受け取る。
撮像装置100は車両に搭載されるか、車両に同乗している人が手に持っている。車両が停止しているときは、車両の揺れまたは手ぶれによって、図1で説明したように、撮影画像のすべてのブロックで一定の方向を向いた動きベクトルが検出される。車両がまっすぐ前進しているときは、図4(b)で説明したように、撮影画像の中心から放射状に広がる方向に動きベクトルが検出される。車両がカーブを曲がるときは、図5(b)で説明したように、撮影画像の中心からずれた走行方向の一点にオプティカルフローの消失点が生じ、その消失点を中心として放射状に広がる方向に動きベクトルが検出される。
一次関数算出部54は、撮影画像のブロック毎に、代表点の動き検出量からフロー放射線の傾きaを求める。次に、一次関数算出部54は、代表点の座標値を傾きaのフロー放射線の式y=ax+bに代入することでフロー放射線の切片bを求める。各ブロックのフロー放射線を示す一次関数の傾きaと切片bの情報は一次関数情報記憶部60に記憶される。一次関数算出部54による処理の具体例は、図8および図9を参照して上述した通りである。
消失点算出部56は、一次関数情報記憶部60を参照し、傾きが異なるフロー放射線をもつ二つのブロックを選択し、選択したブロックのフロー放射線の交点を求めることにより、消失点を算出する。消失点算出部56による処理の具体例は、図10を参照して上述した通りである。
消失点算出部56は、フロー放射線の傾きが異なる任意の二つのブロックを選択して求めた消失点を消失点記憶部62に記憶する。消失点算出部56は、複数の消失点を平均化して最終的な消失点を求め、消失点記憶部62に記憶する。
ここで、消失点算出部56が消失点算出の際に利用する二つのブロックを選択するとき、あるブロックにおいて検出された動きベクトルの信頼度が所定の閾値よりも低い場合には、そのブロックは選択対象から外すようにしてもよい。動きベクトルの検出精度が低下するのは、たとえば、撮影画像に空や壁が写っていたり、格子模様が写っている場合、輝度の同じ画素を探索することで動きベクトルを検出することには限界が生じるからである。そのため、ブロックによっては動きベクトルの信頼性が著しく低いことがある。
動きベクトルを代表点の輝度にもとづいて探索する際、代表点画素の輝度レベルと最も近い輝度レベルをもつ画素とのレベル差が閾値よりも大きい場合、消失点算出部56は、そのブロックの動きベクトル検出点の信頼度が低いと判断し、当該代表点が属するブロックは選択対象から除外する。ただし、この信頼度の判断基準の場合、撮影画像に空や壁が含まれると一様の輝度レベルになり差が閾値よりも小さくなるため、信頼度が高いと判断されてしまう可能性がある。そこで、信頼性判断のひとつの方法として、代表点の画素の輝度レベルと最も近い輝度レベルをもつ画素と、2番目に近い輝度レベルをもつ画素との輝度レベルの差が所定の閾値よりも小さい場合に、消失点算出部56が、そのブロックの動きベクトル検出点の信頼度が低いと判断し、当該代表点が属するブロックは選択対象から除外することが、より好ましい。また、被写体が動いたために、あるブロックだけ他のブロックとは異なる動きを示している場合、消失点算出部56は、そのブロックを信頼度が低いと判断し、選択対象から除外してもよい。
中心位置補正部58は、消失点記憶部62から最終的な消失点を読み出し、ベクトル検出部22に与える。ベクトル検出部22は、フィールドメモリ20から撮影画像を切り出すときの中心位置を、中心位置補正部58から与えられた消失点の座標位置にずらす。
なお、ベクトル検出部22による動きベクトル検出機能は、中心位置補正処理ブロック50の動きベクトル取得部52にもたせてもよく、ベクトル検出部22による消失点の座標にもとづく撮影画像のメモリ切り出し機能は、中心位置補正処理ブロック50の中心位置補正部58にもたせてもよい。
中心位置補正処理ブロック50は、さらに、補正モード切替部64を備える。補正モード切替部64は、車両が走行中であるか、停止中であるかを判定し、車両が走行中であれば、フロー放射線の交点から消失点を求め、撮影画像を切り出す中心位置を消失点の座標位置にずらす「中心位置補正処理」を実行するが、車両が停止中であれば、図1〜図3で説明した通常の「手ぶれ補正処理」に切り替える。
補正モード切替部64は、一次関数情報記憶部60を参照し、撮影画像の各ブロックで検出された動きベクトルの方向(フロー放射線の傾き)が所定の許容範囲で一致する場合は、車両が停止中であると判定する。図1に示すように、車両が停止しているときは、車両の揺れまたは手ぶれにより、撮影画像の各ブロックで動きベクトルは一定方向に向いているからである。ここで「所定の許容範囲」とは、動きベクトルの検出精度のもとで、動きベクトルが同一方向を向いていると判断しうる最大誤差範囲である。
より、具体的には、図11で述べた、撮影画像の中心から見た場合に直交する位置関係にある二つのブロックの動きベクトルの方向があらかじめ定めた誤差範囲で一致するときは、他のブロックの組み合わせについて動きベクトルの傾きの一致・不一致を判断することなく、走行停止中であると判断し、手ぶれ補正処理モードに切り替えてもよい。あるいは、全ブロックの動きベクトルを求め、検出された動きベクトル値のばらつきを評価して、ばらつきが所定の閾値よりも小さく、動きベクトルがいずれのブロックでもほぼ同じ方向を向いている場合、走行停止中であると判断し、手ぶれ補正モードに切り替えてもよい。
他方、補正モード切替部64は、一次関数情報記憶部60を参照し、撮影画像の各ブロックで検出された動きベクトルが異なる方向を向いている場合は、車両が走行中であると判定する。図4(b)、図5(b)で示すように、車両が走行しているときは、放射状に動きベクトルが検出されるからである。
この場合も特定の二つのブロックの動きベクトルが作る角度が所定の閾値を超える場合、他のブロックの組み合わせについて動きベクトルが作る角度が所定の閾値を超えるかどうかを判断することなく、走行中であると判断し、中心位置補正処理モードに切り替えてもよい。あるいは、全ブロックの動きベクトルを求め、検出された動きベクトルの方向、すなわちフロー放射線の傾きのばらつきを評価して、ばらつきが所定の閾値よりも大きい場合、走行中であると判断し、中心位置補正処理モードに切り替えてもよい。
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。また、本発明は画像補正処理装置の機能をコンピュータに実現させるためのプログラムを含むものである。これらのプログラムは、記録媒体から読み取られてコンピュータに取り込まれてもよいし、通信ネットワークを介して伝送されてコンピュータに取り込まれてもよい。
上記の実施の形態では、撮影画像において放射状のオプティカルフローの消失点がカメラの光軸中心からずれる現象が起こる一例として、カーブを曲がる車から前方を撮影した場合を説明したが、消失点と撮影画像の中心(光軸中心)とがずれる現象はこの場合に限らず、発生しうる。そのような場合でも本発明を適用することができる。また、撮像装置が撮影している方向に移動している例について説明したが、本発明は撮像装置が撮影している方向とは逆の方向に移動している場合についても適用できる。また、各実施形態において、放射状のオプティカルフローとは、撮像装置が撮影している方向とは逆の方向に移動して、動きベクトルそれぞれが消失点の方向を向いている場合のオプティカルフローも含むものとする。また、各実施形態において、「手ぶれ」とは、手による画像ぶれに限らず、車の振動等による画像ぶれも含むものとする。
20 フィールドメモリ、 22 動きベクトル検出部、 24 コーデックLSI、 30 カメラ信号処理LSI、 32 ビデオ出力部、 40 カメラ制御マイコン、 44 操作部、 50 中心位置補正処理ブロック、 52 動きベクトル取得部、 54 一次関数算出部、 56 消失点算出部、 58 中心位置補正部、 60 一次関数情報記憶部、 62 消失点記憶部、 64 補正モード切替部、 100 撮像装置。

Claims (7)

  1. 所定の点を中心とした放射状のオプティカルフローが生じる撮影画像を補正する画像補正処理装置において、
    複数のブロックに分割された撮影画像の各ブロックの動きベクトルを検出する動きベクトル検出部と、
    前記ブロック毎に、動きベクトルを検出する際の基準点である代表点を通り、かつ、そのブロックの動きベクトルと傾きが同じ直線を算出する一次関数算出部と、
    算出された直線の傾きが異なる少なくとも二つのブロックを選択し、その選択されたブロックの直線の交点を求めることにより、前記所定の点である消失点の位置を算出する消失点算出部と、
    前記消失点の位置と撮影画像の中心とが一致するように撮影画像を補正する中心位置補正部とを含むことを特徴とする画像補正処理装置。
  2. 前記消失点算出部は、あるブロックにおいて検出された動きベクトルの信頼度を、そのブロックに含まれる画素の輝度レベルに基づいて判断し、その信頼度が所定の閾値よりも低い場合には、そのブロックを選択対象から外すことを特徴とする請求項1に記載の画像補正処理装置。
  3. 前記消失点算出部は、ブロックの対を複数選択し、その複数のブロックの対それぞれに基づいて消失点の位置を算出し、その算出した消失点の位置を平均化し、
    前記中心位置補正部は、前記消失点算出部が算出した、平均化された消失点の位置と、撮影画像の中心とが一致するように撮影画像を補正することを特徴とする請求項1または2に記載の画像補正処理装置。
  4. 前記消失点算出部は、二つのブロックの動きベクトルがなす角度が直角に近いブロックの組み合わせを優先して選択し、その優先して選択したブロックの直線の交点を求めることにより、前記消失点を算出することを特徴とする請求項1から3のいずれかに記載の画像補正処理装置。
  5. 各ブロックの動きベクトルの傾きが所定の許容範囲内で一致する場合に、前記消失点の位置と撮影画像の中心とが一致するように撮影画像を補正する補正処理を中断させ、画像ぶれ補正処理に切り替える補正モード切替部をさらに含むことを特徴とする請求項1から4のいずれかに記載の画像補正処理装置。
  6. 所定の点を中心とした放射状のオプティカルフローが生じる撮影画像を補正する画像補正処理方法において、
    複数のブロックに分割された撮影画像の各ブロックの動きベクトルを検出するステップと、
    前記ブロック毎に、動きベクトルを検出する際の基準点である代表点を通り、かつ、そのブロックの動きベクトルと傾きが同じ直線を算出するステップと、
    算出された直線の傾きが異なる少なくとも二つのブロックを選択し、その選択されたブロックの直線の交点を求めることにより、前記所定の点である消失点の位置を算出するステップと、
    前記消失点の位置と撮影画像の中心とが一致するように撮影画像を補正するステップとを含むことを特徴とする画像補正処理方法。
  7. コンピュータに、所定の点を中心とした放射状のオプティカルフローが生じる撮影画像を補正する機能を実現させる画像補正処理プログラムにおいて、
    複数のブロックに分割された撮影画像の各ブロックの動きベクトルを検出する機能と、
    前記ブロック毎に、動きベクトルを検出する際の基準点である代表点を通り、かつ、そのブロックの動きベクトルと傾きが同じ直線を算出する機能と、
    算出された直線の傾きが異なる少なくとも二つのブロックを選択し、その選択されたブロックの直線の交点を求めることにより、前記所定の点である消失点の位置を算出する機能と、
    前記消失点の位置と撮影画像の中心とが一致するように撮影画像を補正する機能とをコンピュータに実現させることを特徴とする画像補正処理プログラム。
JP2010144903A 2010-06-25 2010-06-25 画像補正処理装置、画像補正処理方法、及び画像補正処理プログラム Active JP5321540B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010144903A JP5321540B2 (ja) 2010-06-25 2010-06-25 画像補正処理装置、画像補正処理方法、及び画像補正処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010144903A JP5321540B2 (ja) 2010-06-25 2010-06-25 画像補正処理装置、画像補正処理方法、及び画像補正処理プログラム

Publications (2)

Publication Number Publication Date
JP2012010145A JP2012010145A (ja) 2012-01-12
JP5321540B2 true JP5321540B2 (ja) 2013-10-23

Family

ID=45540180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010144903A Active JP5321540B2 (ja) 2010-06-25 2010-06-25 画像補正処理装置、画像補正処理方法、及び画像補正処理プログラム

Country Status (1)

Country Link
JP (1) JP5321540B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10489926B2 (en) 2015-08-31 2019-11-26 Mitsubishi Electric Corporation Image processing device, image processing method, and program
JP7378856B2 (ja) 2019-08-20 2023-11-14 フィローブ カンパニー,リミテッド スライディング窓戸システムの2辺支持フレームウィンドウサッシとドアフレームとが相互に重なる側面セクションにおける断熱構造

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6069938B2 (ja) * 2012-08-07 2017-02-01 日産自動車株式会社 飛び出し検出装置
JP2016148512A (ja) * 2013-06-11 2016-08-18 ヤマハ発動機株式会社 単眼モーションステレオ距離推定方法および単眼モーションステレオ距離推定装置
JP2015011502A (ja) * 2013-06-28 2015-01-19 株式会社Jvcケンウッド 先方状況判定装置、安全運転支援装置
KR102087588B1 (ko) * 2015-03-19 2020-03-11 젠텍스 코포레이션 카메라 기반 디스플레이 시스템을 위한 이미지 프로세싱
KR102265315B1 (ko) * 2015-04-17 2021-06-15 삼성전자주식회사 영상 광류를 추정하는 방법 및 이를 위한 장치
JP6736362B2 (ja) * 2016-06-03 2020-08-05 キヤノン株式会社 画像処理装置、画像処理方法、プログラム
CN110651295B (zh) * 2017-05-30 2024-04-26 索尼半导体解决方案公司 图像处理设备、图像处理方法和程序
CN108921079B (zh) * 2018-06-27 2022-06-10 盯盯拍(深圳)技术股份有限公司 拍摄角度调整方法、拍摄角度调整设备以及车载摄像装置
JP6924304B1 (ja) * 2020-05-26 2021-08-25 セイコーソリューションズ株式会社 画像解析装置、プログラム及び画像解析方法
WO2022190578A1 (ja) * 2021-03-10 2022-09-15 パナソニックIpマネジメント株式会社 判定システム、判定方法、及びプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3435240B2 (ja) * 1995-01-20 2003-08-11 株式会社東芝 移動物体検知装置及びその方法
JP4513871B2 (ja) * 2008-02-15 2010-07-28 ソニー株式会社 画像処理方法、画像処理プログラムおよび画像処理装置
JP2010128744A (ja) * 2008-11-27 2010-06-10 Toyota Infotechnology Center Co Ltd 対応ブロック探索装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10489926B2 (en) 2015-08-31 2019-11-26 Mitsubishi Electric Corporation Image processing device, image processing method, and program
JP7378856B2 (ja) 2019-08-20 2023-11-14 フィローブ カンパニー,リミテッド スライディング窓戸システムの2辺支持フレームウィンドウサッシとドアフレームとが相互に重なる側面セクションにおける断熱構造

Also Published As

Publication number Publication date
JP2012010145A (ja) 2012-01-12

Similar Documents

Publication Publication Date Title
JP5321540B2 (ja) 画像補正処理装置、画像補正処理方法、及び画像補正処理プログラム
JP4400611B2 (ja) 撮像装置、ブレ補正方法、およびプログラム
US8587636B2 (en) Image processing apparatus and method, and program
US8004570B2 (en) Image processing apparatus, image-pickup apparatus, and image processing method
JP6385212B2 (ja) 画像処理装置及び方法、撮像装置、及び画像生成装置
JP6071545B2 (ja) 撮像装置、画像処理装置及びその制御方法、プログラム、記憶媒体
JP4759524B2 (ja) 電子式手振れ補正方法及びその装置並びに電子式手振れ補正プログラムと撮像装置
JP2007116309A (ja) 画像情報再生装置
US9912867B2 (en) Image processing apparatus, image capturing apparatus and storage medium storing image processing apparatus
CN113574856A (zh) 图像处理设备、图像处理方法和程序
JP2007173966A (ja) 撮像装置及びその画像データ処理方法
JP5298899B2 (ja) 画像補正処理装置および画像補正処理方法
JP5393877B2 (ja) 撮像装置および集積回路
JP2011023988A (ja) 撮像装置
JP5889719B2 (ja) 撮像装置、撮像方法及びプログラム
JP5195663B2 (ja) 撮像装置、合焦方法及びプログラム
JP4888829B2 (ja) 動画処理装置、動画撮影装置および動画撮影プログラム
JP7324284B2 (ja) 撮像デバイス、手ぶれ補正デバイス、撮像方法及び手ぶれ補正方法
JP5477345B2 (ja) 撮像装置、合焦方法及びプログラム
JP5621265B2 (ja) 手ぶれ補正装置、撮像処理方法及びプログラム
US20230103051A1 (en) Image processing apparatus, image processing method, and program
JP6188369B2 (ja) 撮像装置
JP5979040B2 (ja) 撮像装置、撮像方法及びプログラム
JP5561392B2 (ja) 撮像装置、合焦方法及びプログラム
JP2009244434A (ja) 手ぶれ防止装置、電子機器、手ぶれ防止方法、および、手ぶれ防止プログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20111012

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120724

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130611

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130701

R150 Certificate of patent or registration of utility model

Ref document number: 5321540

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150