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

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

Info

Publication number
JP3823982B2
JP3823982B2 JP2004128179A JP2004128179A JP3823982B2 JP 3823982 B2 JP3823982 B2 JP 3823982B2 JP 2004128179 A JP2004128179 A JP 2004128179A JP 2004128179 A JP2004128179 A JP 2004128179A JP 3823982 B2 JP3823982 B2 JP 3823982B2
Authority
JP
Japan
Prior art keywords
image
pixel
feature
feature point
correction method
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.)
Expired - Fee Related
Application number
JP2004128179A
Other languages
English (en)
Other versions
JP2004343737A (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.)
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Electric Industries Ltd
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 Sumitomo Electric Industries Ltd filed Critical Sumitomo Electric Industries Ltd
Priority to JP2004128179A priority Critical patent/JP3823982B2/ja
Publication of JP2004343737A publication Critical patent/JP2004343737A/ja
Application granted granted Critical
Publication of JP3823982B2 publication Critical patent/JP3823982B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、固定した監視カメラで対象範囲を時間的に複数回撮影した各画像の中に含まれる不動構造物又は不動表示物の特徴点が、常に画面の同一位置になるように画像を補正する方法及びそのプログラムに関するものである。
道路上の車両を検出するために、道路に固定式の監視カメラを設置し、その画像データを処理して、車両の速度、交通量、渋滞などを自動的に計測することが行われている。
監視カメラでとらえられた画像データの中には、道路周辺の建物、道路の白線、交通標識、ガードレールなど構造物又は表示物が含まれている。走行する車両を精度よく検出するためには、これらの構造物又は表示物は画面の中で不動である必要がある。
ところが、振動や風などで監視カメラやその台座が揺れて画角が狂うことがある。従来、画角に狂いが生じた場合、その画角のズレ量を算出し、新たに得られる撮影画像のパラメータをそのズレ量に応じて補正して、その補正により画角のズレの影響を取り除くようにした発明が知られている。
特開2002-232875号公報 特開平10-23322号公報
前述した画角のズレの影響を取り除く方法は、基準となる画像に基づいてテンプレートを作り、処理する画像に基づいてテンプレートを作り、それらのテンプレート間のパターンマッチングを行うものであった。
しかし、テンプレートマッチングを行うと、処理時間がかかるという問題がある。
そこで、本発明は、各画像の中に含まれる不動構造物又は不動表示物の特徴点に注目することにより、簡単な処理で、迅速に監視カメラの画像を補正することのできる画像補正方法を提供することを目的とする。
本発明の画像補正方法は、次の(a)〜(f)の処理を行うものである(請求項1)。(a) 監視カメラで撮影した画像を入力する。(b) ある時点の画像の中に1又は複数の基準特徴点を設定する。(c) その後の時点の画像において、前回抽出された特徴点(1回目の設定では基準特徴点とする)の存在位置の周辺に探索エリアを設定する。(d) その探索エリアの中に、特徴量が特徴量判定しきい値以上あり、かつ、特徴量が最も大きな特徴点を1つ抽出する。(e) 抽出された特徴点の画素と、基準特徴点に対応する画素との位置のずれに基づいて移動ベクトルを算出する。(f) 前記算出された移動ベクトルの大きさだけ画像全体を移動ベクトルと逆方向にずらすことによって、画像を補正する。
この処理により、「ある時点の画像」と「その後の時点の画像」において、特徴点の座標が常に一致するように画像を補正することができる。
前記(b)の基準特徴点の設定は、オペレータが手動で行ってもよく、オペレータが手動で行った後、その手動設定された点の周囲の特徴量最大の点を、画像処理のアルゴリズムを用いて自動的に探索して設定してもよい。また、画面全体に対して画像処理のアルゴリズムを用いて初めから完全に自動的に探索して設定してもよい(請求項2)。
前記(c)の探索エリアの大きさは、予め設定された大きさとすればよい。
前記(d)において、特徴量が最も大きな特徴点を1つ抽出するだけでは、前回抽出された特徴点のまわりに偶然、特徴量が最も大きな点が出現したとき(例えば走行している車両が画面内に入ってきたとき)に、これを排除できない。そこで、特徴量が最も大きな画素及びその周辺の画素と、前回抽出された特徴点に対応する画素及びその周辺の画素との画像一致度を算出する。算出された画像一致度が画像一致度判定しきい値よりも高い画素の中から、特徴量が最も大きな画素を特徴点として抽出するとよい(請求項3)。この方法によれば、特徴点の画素だけでなくその周辺の画素にも注目して画像一致度を判定するので、偶然、特徴量が最も大きな点が単発的に侵入した場合これを排除できる。
前記画像一致度は、例えば、対比する2つの画面において、特徴点に対応する画素から見て同じ位置にある「周辺の画素」どうしの輝度の差のばらつきに相当する量、又は輝度の相関係数を算出することにより得られる(請求項4,請求項5)。
前記画素の輝度は、日照条件の急激な変化に追従しないように、同一画素において過去に検出された輝度の履歴を考慮して求められることが好ましい(請求項6)。
画像一致度を算出する場合、「周辺の画素」は、特徴点の画素と1画素以上隔たっていることが好ましい(請求項7)。特徴点の画素に隣接する画素をとれば、隣接する画素は、特徴点のエッジの形状をそのまま延長して再現していることがあるので、画像の一致度を判定する際に、正しい判定ができなくなることがある。好ましくは、「周辺の画素」と特徴点の画素との隔たりは、特徴点のエッジの形状の延長が無視できる程度の距離に相当する画素数とするとよい。
前記(d)において、設定された探索エリア内のコントラストがコントラスト判定しきい値未満の場合は、特徴点の画素を抽出しないで画像補正処理をスキップすることが好ましい(請求項8)。探索エリア内のコントラストが低いときは、特徴点が正確に抽出できない確率が高いからである。
監視カメラで撮影した画像において、奇数番目のラインと偶数番目のラインとが別のフィールドで撮影されているときは、設定された探索エリア内の奇数番目のライン又は偶数番目のラインのいずれか一方を用いて、画像補正処理を行うことが好ましい(請求項9)。いわゆるNTSC方式においては奇数番目のライン又は偶数番目のラインの撮像時点が違うので、奇数番目のラインと偶数番目のラインを混合すると、正確な画像補正処理ができなくなることがあるからである。
前記(d)において、探索エリアの中に、特徴量が特徴量判定しきい値以上の点がない場合、つまり画角が大きくずれて特徴量を見失う場合がある。この場合は、基準特徴点の存在位置の周辺に探索エリアを設定しなおして、前記(d) 以下の手順を続ける(請求項10)。これは、画角がいずれデフォルトの画角(基準特徴点を設定した時の画角)に戻ってくるのを期待して、基準特徴点の付近で特徴点を探索することを意味する。
ところで、画角が大きくずれて特徴点を見失った場合、基準特徴点の付近で探索していても特徴点が戻ってこない場合がある。例えばカメラの取り付け角度が永久的にずれてしまった場合などである。そこで、このような事態を予想して、前記(d) の手順において、特徴量が特徴量判定しきい値以上の点がない場合、前回以前に時系列に抽出された特徴点に基づき算出される当該時系列データを平均化若しくは平滑化した点の存在位置周辺に探索エリアを設定しなおして、前記(d) 以下の手順を続けることが好ましい(請求項11)。画角がもう基準特徴点に戻らないと予想しているので、前回以前に抽出された特徴点の平均化若しくは平滑化した点をとることにしたのである。平均化若しくは平滑化の算出周期を短くすればするほど、「前回抽出された特徴点の存在位置周辺に探索エリアを設定」するという請求項1の処理に近づく。平均化若しくは平滑化の算出周期を長くすればするほど、「基準特徴点の存在位置の周辺に探索エリアを設定」するという請求項10の処理に近づく。
前記(f)において、算出された移動ベクトルが複数ある場合、移動ベクトルの方向や大きさがばらついていることがある。このばらつきは、「後の時点の画像」の中で、例えば走行している車両が画面内に入ってきたため、特徴点を誤って抽出したとき等に起こることである。この誤って抽出した特徴点の移動ベクトルの方向や大きさは、通常、他の特徴点の移動ベクトルの方向や大きさと違っている。そこで、全移動ベクトルのばらつきを算出し、この算出されたばらつきが移動ベクトルばらつき判定しきい値以上であるかどうかを判定し、しきい値以上であれば、移動ベクトルのばらつきを大きくしている特徴点の画素を除去して画像補正処理を行うことが好ましい(請求項12)。
前記「移動ベクトルのばらつきを大きくしている特徴点の画素」は、例えば当該画素を除いた他の移動ベクトルについてばらつきを算出したときに、算出されたばらつきが移動ベクトルばらつき判定しきい値未満となることにより判定すればよい(請求項13)。
前記(f)において、前記算出された移動ベクトルが複数ある場合は、それらの移動ベクトルの移動量の平均を求めて、この移動量の平均値に相当する距離だけ画像をずらせばよい(請求項14)。
前記特徴点は、例えば、画像の中に含まれる不動構造物又は不動表示物の角(コーナー)としてもよい(請求項15)。また特徴量は、コーナーのエッジ強度としてもよい(請求項16)。
また、本発明の画像補正プログラムは、請求項1記載の画像補正方法を実行するためのプログラムである(請求項17)。本発明の画像補正装置は、請求項1記載の画像補正方法を実行するための装置である(請求項18)。
以上のように本発明によれば、各画像の中に含まれる不動構造物又は不動表示物の特徴点に注目することにより、2つの異なる時点の画像において、特徴点の座標が常に一致するように、簡単かつ迅速に画像を補正することができる。
以下、本発明の実施の形態を、添付図面を参照しながら詳細に説明する。
図1は、本発明の画像補正方法を実行する画像処理システムのハードウェア構成図である。
当システムは、道路を見晴らす位置に設置され、固定画角で道路を撮影する機能を持つCCD監視カメラ2を備えている。CCD監視カメラ2は、その姿勢を可変するための回転台(雲台ともいう)に搭載されている。前記回転台は、モータによって水平2軸、及び垂直軸のまわりに回転可能となっていて、所定の角度になったところで固定することができる。
CCD監視カメラ2の画像信号は、通信回線、A/D変換器3を通して、中央の画像処理装置1に入力される。
画像処理装置1は、入力された画像信号を記憶するための画像メモリ4、本システム全体の演算制御を行う中央処理装置(CPU)7、CPU7の演算を補助するための主メモリ5、各種設定値や演算プログラムを記憶する不揮発性メモリ6(EEPROM)、端末機器との入出力制御を行うI/O制御器8、I/O制御器8に接続された入力デバイス9、及びI/O制御器8に接続された映像モニター装置10を備えている。
入力デバイス9は、本画像処理システムの運用に必要な各種設定値を手動入力するためのものであり、マウス、キーボードなどを含む。
映像モニター装置10は、画像処理装置1に供給された映像信号に基づく映像を画面上に映し出す。
CPU7は、本発明の画像補正方法を実行するものであり、その機能の全部又は一部は、CD−ROMや前記不揮発性メモリ6など所定の媒体に記録されたプログラムを、画像処理装置1のCPU7が実行することにより実現される。
図2は、画像補正方法を実行するCPU7の各機能を示すブロック図である。
初期設定処理において、オペレータが入力デバイス9を用いて設定値入力を行い、CPU7は入力された各種の設定値を不揮発性メモリ6に記憶する。
CPU7は、画像メモリ4に記憶された画像データと、各種の設定値に基づいて、コーナー追跡処理、異常コーナー除去処理、画像補正処理を行う。コーナー追跡処理には画像一致度判定処理が含まれ、異常コーナー除去処理には移動ベクトルの標準偏差算出処理が含まれる(本実施形態では、この標準偏差を請求項12記載のばらつきの判定量として用いる)。
以下、画像補正方法の流れを、フローチャートを用いて説明する。
図3は、処理の全体の流れを示すフローチャートである。この全体処理は、画像信号の1フレームが入力されるごとに行う。画像信号の各フレームの入力周期は、本実施では1/30秒である。もちろん、1/30秒に限定されるものではなく、1/10秒や1/5秒などであってもよい。
まず、初期設定により各種の定数を設定する(ステップS1)。この各種定数には、監視カメラの位置・角度、探索エリアの大きさ、エッジ強度判定しきい値、コントラスト判定しきい値、画像一致度判定しきい値、移動ベクトル標準偏差判定しきい値などがある。この初期設定処理は、後にフローチャート(図4,図5)を用いて詳しく説明する。
次に、「有効コーナー数」という変数を0とおく(ステップS3)。
そして、コーナーを順に取り出す(ステップS4)。このコーナーは、後に説明する「前周期コーナー情報」の中に含まれている。
取り出したコーナーに対して、コーナー追跡処理(ステップS5)を行う。このコーナー追跡処理は、後にフローチャート(図6,図7)を用いて詳しく説明する。
コーナーの追跡に成功したかどうか判定し(ステップS6)、コーナーの追跡に成功した場合(つまりそのコーナーが有効と判定された場合)、「有効コーナー数」を1プラスする(ステップS7)。
以上のステップS4→S7の処理が、コーナーの全てについて完了したかどうか判定し(ステップS8)、「前周期コーナー情報」の中に含まれるコーナーの全てについて完了すれば、有効コーナー数が3以上かどうか判定し(ステップS9)、3以上ない(つまり2以下の)場合は、画像補正処理は行わない。これは、有効コーナー数が2以下であれば、コーナー数が少ないので、画像補正処理が正確にできないと判断されるためである。なお、ステップS9の処理は、「3」という数値に限定されるものではなく、3以外の他の数値を採用してもよい。
3以上ある場合は、異常コーナー除去処理を行う(ステップS10)。この異常コーナー除去処理は、後にフローチャート(図8,図9)を用いて詳しく説明する。
異常コーナーの除去が終われば、画像補正処理を行う(ステップS11)。この画像補正処理は、後にフローチャート(図10)を用いて詳しく説明する。
図4、図5は、初期設定処理を説明するためのフローチャートである。まず、オペレータは、入力デバイス9を用いて、監視カメラの位置・角度、探索エリアの大きさ、エッジ強度判定しきい値、コントラスト判定しきい値、画像一致度判定しきい値、移動ベクトル標準偏差判定しきい値などの各種定数を設定する(ステップT1)。以下、設定例をあげる。
監視カメラで撮影される画像全体の大きさ:720画素×480画素/フレーム
輝度の階調数:256階調
探索エリアの大きさ:11画素×11画素(注1)
エッジ強度判定しきい値:150階調
コントラスト判定しきい値:32階調
画像一致度判定しきい値:0.9(注2)
移動ベクトル標準偏差判定しきい値:2画素
注1:想定される揺れの最大値に依存する。ほとんど揺れない場所では、例えば5画素×5画素に設定する。縦揺れが少ない場所では11画素×5画素などとする。
注2:画像一致度として相関係数を用いる場合。
次に、CCD監視カメラ2で撮影された画像の中から、後の画像補正の基準となる画像(基準画像という)を入力する(ステップT2)。この基準画像は、通常、本画像処理システム運用の最も初期に得られた画像である。
図11に、基準画像の例を示す。同図において、21は道路、22は道路中心部の白線、23は道路標示を示す。オペレータは、この基準画像の中から、車両計測エリアAと、コーナー設定エリアBとをそれぞれ設定する(ステップT3,T4)。コーナー設定エリアBは、車両計測エリアAよりも一回り大きくなっている。
オペレータは、コーナー設定エリアBの中に、マウスなどを用いて、後の画像補正の基準となるコーナーを指定する(ステップT5)。この指定は、手動で行うものであり、厳密なコーナーから多少ずれていてもよい。もし、指定された位置がコーナー設定エリアBの中になければ、再指定するように促す(ステップT6)。
CPU7は、こうして指定された位置及びその周辺に探索エリアを設定して(その探索エリアの大きさはステップT1で設定済みである)、探索エリア内でエッジ強度を算出する(ステップT7)。
ここで「エッジ強度」とは、CCD監視カメラ2の撮影面上の画素の輝度I(m,n)を、縦方向と横方向にそれぞれ偏微分し、それぞれの偏微分係数の二乗和をとったものをいう。(m,n)は当該画素の座標を表す。このエッジ強度をΔI(m,n)と書く。なお、エッジ強度をとるときは、画像がNTSC方式でインターレースされている場合は、水平走査が偶数番目の画素のみに注目してエッジ強度をとるか、水平走査が奇数番目の画素のみに注目してエッジ強度をとるかすることが好ましい。偶数番目の水平走査と、奇数番目の水平走査とでは、撮影時刻が半コマ分ずれているので、画像が動いている可能性があるためである。
エッジ強度ΔI(m,n)は、上で説明したものの他、Sobel演算子を用いて算出される下記の値Sobを採用してもよい。
Sobx=[I(m+1,n-1)+2I(m+1,n)+I(m+1,n+1)]
−[I(m-1,n-1)+2I(m-1,n)+I(m-1,n+1)]
Soby=[I(m-1,n+1)+2I(m,n+1)+I(m+1,n+1)]
−[I(m-1,n-1)+2I(m,n-1)+I(m+1,n-1)]
Sob=√(Sobx2+Soby2
また、エッジ強度として固有値λ1,λ2の小さい方を使ってもよい(Jianco Shi and Carlo Tomasi, "Good Features to Track" IEEE Conference on Computer Vision and Pattern Recognition (CVPR94), June 1994参照)。
探索エリアの中で、エッジ強度が最大の画素を基準コーナーとする(ステップT8)。このようにして、オペレータが指定したコーナーの近くに、厳密な意味でのコーナー(基準コーナー)を設定することができる。こうして設定された基準コーナーの位置を記憶し(ステップT9)、これらの基準コーナーの位置、基準コーナーのエッジ強度、周辺の画素の輝度のデータを、「前周期コーナー情報」にコピーする(ステップT10)。
ここで、「周辺の画素」とは、基準コーナーに対応する画素(基準画素という)から複数画素だけ離れた画素をいう。周辺の画素C1〜C8を、基準画素Cに隣接する画素としない理由は、コーナーのエッジの形が隣接画素にも及ぶため、隣接画素は、コーナー周辺の特徴を示すための情報として用いられないからである。図13は、基準画素Cと、周辺の画素C1〜C8との位置関係を記した図である。この例では、基準画素Cと周辺の画素C1〜C8とは、1画素隔てている。しかし、1画素離れている場合に限られず、2画素、あるいはそれ以上離れた画素を周辺の画素にとってもよい。要するに、周辺の画素と基準画素との隔たりは、基準画素のエッジの形状の延長が無視できる程度の距離に相当する画素数とするとよい。
いままで決定した基準コーナーの数を数え(ステップT11)、一定数N個(例えばN=5とする)に満たなければ、ステップT5に戻り、オペレータに次のコーナーの指定を促す。基準コーナーを複数(N個)登録するのは、1個だけだと、誤差が入れば、画像の移動量を正確に決定できないからである。
このようにして、N個の基準コーナーが設定されれば、初期設定処理は終わる。
図6、図7は、コーナー追跡処理を説明するためのフローチャートである。
このコーナー追跡処理は、前周期のコーナーと同じコーナーを、今周期の画像の中から探し出すための処理である。
まず、「前周期コーナー情報」を参照し、その中から1つのコーナーを選定し、その周辺に探索エリアを設定する(ステップU1)。図12は、「前周期コーナー情報」の中から選定されたコーナーC(前)と、その周辺に設定された探索エリアを示す図である。
次に、探索エリアの中のコントラスト(探索エリアの中の最小輝度と最大輝度との差)がコントラスト判定しきい値以上であるかどうか判断する(ステップU2)。コントラスト判定しきい値は、ステップT1で設定された定数である。コントラスト判定しきい値未満であれば、コーナー追跡処理を行わない。この理由は、夜、薄暮、雪の日などに撮影した画像は、コントラストが低くて、コーナーの位置やエッジ強度を精度よく算出できないからである。
コントラストがコントラスト判定しきい値以上であれば、探索エリア内の画素を順に取り出し(ステップU3)、当該画素のエッジ強度を算出する(ステップU4)。当該画素のエッジ強度がエッジ強度判定しきい値であるかどうか判断する(ステップU5)。このエッジ強度判定しきい値は、ステップT1で設定された定数である。当該画素のエッジ強度がエッジ強度判定しきい値であるかどうか判断する理由は、走行する車両がコーナーを隠した場合など、エッジがなくなってしまうので、このような場合に、コーナーの抽出処理を中止して処理時間を節約するためである。
エッジ強度がエッジ強度判定しきい値以上の画素を抽出して並べ、順に取り出す(ステップU6)。そして、当該画素及びその周辺の画像と、前周期のコーナー画素及びその周辺の画像との画像一致度を算出する(ステップU7)。周辺の画像との画像一致度を算出するのは、前周期のコーナーのまわりに偶然、エッジ強度が最も大きな他の点が出現したとき(例えば走行している車両が画面内に入ってきたとき)に、これを排除するためである。
この画像一致度の算出方法を説明する。周辺画素の番地をi(iは1からMまで、Mは周辺画素の数)で表す。当該番地iの周辺画素の輝度をI(i)で表し、前周期における番地iの周辺画素の輝度をI′(i)で表す。
ここで、周辺画素の輝度には、過去の周期における周辺画素の輝度の実績を考慮した指数平滑値を用いてもよい。指数平滑値の求め方は、前回周期の指数平滑値と、今回周期で求められた周辺画素の輝度との重み付け平均とする。前回周期の指数平滑値をZ(i,t-1)、今回周期で求められた周辺画素の輝度I(i,t)と書くと、今回周期の指数平滑値Z(i,t)は、重みβを使って、
Z(i,t)=βZ(i,t-1)+(1−β)I(i,t)
で表される。ただし、0<β<1、Z(i,t)は初期設定時における輝度I(i,0)である。重みβは、1にすると輝度は起動時の初期値のままになり、0にすると常に前回処理時の値そのものになる。βは0.99程度に設定し、輝度があまり更新されないようにする。ただし、強風で雲の流れが速い日などは日照変化が激しいので、βは小さめ(例えば0.9)にし、変化に追従しやすくする。
画像一致度を算出方法するには、図14に示すように、横軸に輝度Iをとり、縦軸に輝度I′をとり、番地iごとに点を座標{I(i),I′(i)}をプロットする。最小自乗法で全ての点の関係を最もよく近似する直線を引き、点{I(i),I′(i)}とその直線との最短距離siを求める。この最短距離siを全てのi(i=1〜M)について求め、それらの平均
S=Σsi(総和はi=1からMまでとる)
を求める。
このSの逆数1/Sを「画像一致度」とする。I(i)とI′(i)とが、各iについて近い値をとれば、Sは小さくなり、画像一致度1/Sは大きくなる。I(i)とI′(i)のばらつきが大きければ、画像一致度1/Sは小さくなる。なお、「画像一致度」は、Sの逆数1/Sに限られるものではない。Sが大きくなれば小さくなり、Sが小さくなれば大きくなる関数であれば、どのような形を採用してもよい。たとえば、e-sのような指数関数でもよい。
また、画像一致度として相関係数を使ってもよい。相関係数rは、次の式で表わされる。
r=Σ[(I(i)−Im)(I′(i) −I′m)]/(M−1)HH′
総和はi=1からMまでとる。ここで、ImはI(i)の平均値、Im′はI′(i)の平均値、HはI(i)の標準偏差、H′はI′(i)の標準偏差である。この相関係数rが大きいほど画像一致度は大きくなる。
この画像一致度を、ステップT1で求めた画像一致度判定しきい値と比較し(ステップU8)、画像一致度判定しきい値よりも小さければ、ステップU6に戻り、次のコーナーについても同じように画像一致度を求める。
画像一致度がステップT1で求めた画像一致度判定しきい値よりも大きければ、その画素を記憶し、記憶された1又は複数の画素の中から、エッジ強度の最も大きな画素を取り出し(ステップU9)、当該画素を今周期の有効コーナーとする(ステップU10)。そして、このコーナーの位置、エッジ強度、周辺画素の輝度I(i)のデータを、変数「今周期コーナー情報」に登録する(ステップU11)。
以上の今周期のコーナーの探索処理を、前周期のコーナーごとに設定した探索エリアにおいて、それぞれ行う。前周期のコーナーがN個あったとすれば、最大N個の今周期の有効コーナーが決まる。
図7に移り、今周期のコーナー情報の中に最低1個のコーナーがあるかどうかを調べる(ステップU12)。今周期のコーナー情報の中にL個(Lは1以上N以下の整数)のコーナーがあったとすれば、前周期のコーナーの位置と今周期のコーナーの位置とを比較し、その差である移動ベクトルVj(j=1〜L)を算出する(ステップU13)。
そして、このL個の今周期のコーナー情報を「前周期コーナー情報」に上書きする(ステップU14)。
今周期のコーナー情報の中にコーナーがない場合、又はステップU2でコントラストがコントラスト判定しきい値未満であった場合は、コーナーを無効にし(ステップU15)、初期設定で求めた基準コーナー情報を「前周期コーナー情報」にコピーする(ステップU16)。これは、コーナー追跡ができなかったことを意味し、初期設定処理で求めた基準コーナーを有効コーナーとみなして、以下の処理を進めるためである。
なお、コーナー追跡ができなかった場合、前回及びそれ以前に設定された各有効コーナーの位置を記憶しておき、その指数平滑線を算出して、前回周期におけるこの指数平滑線上の点を「前周期コーナー情報」にコピーして使うという実施形態も可能である。
図15は、過去に追跡されたコーナー位置を、処理周期ごとにプロットしたグラフである。コーナー位置は、便宜上一次元座標で表している。黒丸は追跡されたコーナーを示し、×印は追跡できなかったコーナーを示している。一点鎖線は追跡されたコーナーに基づいて作成された指数平滑線を表している。
前記指数平滑線は、図15に示すように、初期設定処理で求めた基準コーナーからスタートして、追跡されたコーナーに遅れながら追従していく。
指数平滑線の求め方は、前回周期の指数平滑値と、今回周期で求められたコーナー位置の重み付け平均とする。前回周期の指数平滑値をx(t-1)、今回周期で求められたコーナー位置をy(t)と書くと、今回周期の指数平滑値x(t)は、重みαを使って、
x(t)=(1−α)x(t-1)+αy(t)
で表される。ただし、0<α<1、x(0)=基準コーナーの位置、である。
α=0であれば、x(t)は常に基準コーナーの位置になり、これは前述したステップU16のケースである。α=1であれば、x(t)は、コーナー位置y(t)となる。これは過去のコーナーの位置履歴を考慮しないケースである。すなわち、コーナーが見つかならかった場合、常に前回見つかったコーナーの周囲を探索するという設定になる。
図15を参照しながら、本実施形態を具体的に説明する。処理周期t+1で、「×」で示したように、コーナーを見失ったとする。この場合、指数平滑線上の位置x(t)を基準にして、同図に"I"で示したように探索エリアを設定する。処理周期t+2では、この探索エリアの中でコーナーを探索する。処理周期t+2においてコーナーを見つけられなかったとする。指数平滑線は横軸に並行に延長される。処理周期t+3では、探索エリアの中に黒丸のコーナーが見つかったことを示している。
このように、コーナーを見失った場合、今まで追跡したコーナーの指数平滑線に基づいて探索エリアを設定する理由は、監視カメラの画角が変化した場合、画角はまた元の位置に戻ってくるであろうという見込みに基づいている。弾性的に完全に元の位置に戻る場合もあり、完全に元の位置には戻らない非弾性的な場合もある。いずれの場合も、指数平滑線に基づいて探索エリアを設定することにより、見失ったコーナーを見つける確率は高くなると考えている。
なお、指数平滑演算に代えて、過去一定期間のデータの平均をとる移動平均演算を採用してもよい。
次に、有効コーナーの中から、方向、大きさのかけ離れた異常コーナーを除去する処理を説明する。
図8、図9は、異常コーナー除去処理を説明するためのフローチャートである。まず、有効コーナーを全部取り出し、それぞれの有効コーナーの移動ベクトルVjの横成分Vjxを求める(ステップV1)。"x"は画面の水平走査方向を示し、"j"はコーナーを表す添え字である。Vjxの平均と標準偏差を算出し、標準偏差がステップT1で設定した「移動ベクトル標準偏差判定しきい値」以上かどうかを判定する(ステップV2)。移動ベクトル標準偏差判定しきい値未満であれば、移動ベクトルVjの縦成分Vjyを求める(ステップV3)。"y"は画面の垂直走査方向を示す。Vjyの平均と標準偏差を算出し、標準偏差が「移動ベクトル標準偏差判定しきい値」以上かどうかを判定する(ステップV4)。ステップV2,V4でいずれも「移動ベクトル標準偏差判定しきい値」未満であれば、異常なコーナーはなかったとして、異常コーナー除去処理を終える。
ステップV2又はV4で標準偏差が「移動ベクトル標準偏差判定しきい値」以上あれば、図のステップV5に移り、有効コーナーを順に取り出す。その取り出したコーナー以外のコーナーについて、移動ベクトルVjの横成分Vjxの平均と標準偏差を算出し(ステップV6)、横成分Vjxの標準偏差が「移動ベクトル標準偏差判定しきい値」未満になったかどうか判定する(ステップV7)。横成分Vjxの標準偏差が「移動ベクトル標準偏差判定しきい値」未満になれば、その取り出したコーナー以外のコーナーについて、移動ベクトルVjの縦成分Vjyの平均と標準偏差を算出し(ステップV8)、縦成分Vjyの標準偏差が「移動ベクトル標準偏差判定しきい値」未満になったかどうか判定する(ステップV9)。
ステップV7,V9の両方で、標準偏差が「移動ベクトル標準偏差判定しきい値」未満になれば、そのコーナーが、移動ベクトル標準偏差を大きくしている「張本人」であるとして、当該コーナーを無効候補にする(ステップV10)。
そして他の有効コーナーについてもステップV5〜ステップV10の処理を行い、移動ベクトル標準偏差を大きくしているコーナーが見つかれば、当該コーナーを無効候補にする(ステップV10)。
全ての有効コーナーについて処理が終了すれば、無効候補の数を調べ(ステップV12)、1個のみであれば、当該コーナーを無効にする(ステップV13)。2個以上あれば、異常なコーナーはなかったとして、異常コーナー除去処理を終える。すなわち無効候補が1個あるときだけ、当該コーナーを無効にする。この理由は、コーナーの数はもともと少ない場合は、2個以上棄てると、後述する画像補正処理に支障が生じるからである。したがって、コーナーの数が十分多ければ、2個以上棄てるようにしてもよい。
なお、異常なコーナーが2個以上あると画像補正処理をしないというアルゴリズムを採用してもよい。
次に、画像補正処理を説明する。異常コーナーが除去され、有効コーナーが確定すると、画像補正処理に入る。図10は、画像補正処理を説明するためのフローチャートである。全有効コーナーについて、移動ベクトルVjの横成分Vjxの平均値ΔVxを算出し(ステップW1)、移動ベクトルVjの縦成分Vjyの平均値ΔVyを算出する(ステップW2)。そして、監視カメラの画面上で全体をΔVx,ΔVyだけ移動させる(ステップW3)。これで画像補正処理が終了する。
以上の画像補正処理により、CCD監視カメラ2で対象範囲を時間的に複数回撮影した各画像の中に含まれる不動構造物又は不動表示物のコーナーが、常に、画面内の同一位置になるように画像を補正することができる。
本発明の画像補正方法を実行する画像処理システムのハードウェア構成図である。 画像補正方法を実行するCPU7の各機能を示すブロック図である。 本発明の画像補正処理の全体の流れを示すフローチャートである。 初期設定処理を説明するためのフローチャートである。 初期設定処理を説明するためのフローチャートである(図4の続き)。 コーナー追跡処理を説明するためのフローチャートである。 コーナー追跡処理を説明するためのフローチャートである(図6の続き)。 異常コーナー除去処理を説明するためのフローチャートである。 異常コーナー除去処理を説明するためのフローチャートである(図8の続き)。 画像補正処理を説明するためのフローチャートである。 基準画像の例を示す画面図である。 「前周期コーナー情報」の中から選定されたコーナーC(前)と、その周辺に設定された探索エリアを示す図である。 基準画素Cと、周辺の画素C1〜C8との位置関係を記した図である。 横軸に輝度Iをとり、縦軸に輝度I′をとり、番地iごとに点を座標{I(i),I′(i)}をプロットしたグラフである。 過去に追跡されたコーナー位置をプロットしたグラフである。
符号の説明
1 画像処理装置
2 CCD監視カメラ
3 A/D変換器
4 画像メモリ
5 主メモリ
6 不揮発性メモリ(EEPROM)、
7 中央処理装置(CPU)
8 I/O制御器
9 入力デバイス
10 映像モニター装置

Claims (18)

  1. 固定した監視カメラで対象範囲を時間的に複数回撮影した各画像の中に含まれる不動構造物又は不動表示物の特徴点が、画面内の同一位置になるように画像を補正する方法であって、
    (a)監視カメラで撮影した画像を入力し、(b)ある時点の画像の中に基準となる1または複数の特徴点(基準特徴点という)を設定し、(c)その後の時点の画像において、前回抽出された特徴点(1回目の設定では基準特徴点とする)の存在位置周辺に探索エリアを設定し、(d)その探索エリアの中に、特徴量が特徴量判定しきい値以上あり、かつ、特徴量が最も大きな特徴点を1つ抽出し、(e)抽出された特徴点の画素と、基準特徴点に対応する画素との位置のずれに基づいて移動ベクトルを算出し、(f)前記算出された移動ベクトルの大きさだけ画像全体を移動ベクトルと逆方向にずらすことによって、画像を補正することを特徴とする画像補正方法。
  2. 前記(b)の基準特徴点の設定は、次の(b1)から(b3)のいずれかの方法により行うものである請求項1記載の画像補正方法。
    (b1)オペレータが手動で設定する。
    (b2)オペレータが手動で行った後、その手動設定された点の周囲の特徴量最大の点を、画像処理のアルゴリズムを用いて自動的に探索して設定する。
    (b3)画面全体に対して特徴量最大の点を、画像処理のアルゴリズムを用いて自動的に探索して設定する。
  3. 前記(d)の手順において、特徴量が特徴量判定しきい値以上ある画素及びその周辺の画素と、前回抽出された特徴点に対応する画素及びその周辺の画素との画像一致度を算出し、算出された画像一致度が画像一致度判定しきい値よりも高い画素の中から、特徴量が最も大きな画素を特徴点として抽出することを特徴とする請求項1記載の画像補正方法。
  4. 前記画像一致度は、対比する2つの画面において、特徴点に対応する画素から見て同じ位置にある「周辺の画素」どうしの輝度の差をとり、全ての周辺の画素について、前記輝度の差のばらつきに相当する量を算出することにより得られるものである請求項3記載の画像補正方法。
  5. 前記画像一致度は、対比する2つの画面において、特徴点の画素から見て同じ位置にある「周辺の画素」どうしの輝度の相関係数を算出することにより得られるものである請求項3記載の画像補正方法。
  6. 前記画素の輝度は、同一画素において過去に検出された輝度の履歴を考慮して求められることを特徴とする請求項4又は請求項5記載の画像補正方法。
  7. 前記周辺の画素は、特徴点の画素と1画素以上隔たっていることを特徴とする請求項3記載の画像補正方法。
  8. 前記(d) の手順において、設定された探索エリア内のコントラストがコントラスト判定しきい値未満の場合は、特徴点の画素を抽出しないで、処理を終えることを特徴とする請求項1記載の画像補正方法。
  9. 監視カメラで撮影した画像において、奇数番目のラインと偶数番目のラインとが別のフィールドで撮影されているときは、設定された探索エリア内の奇数番目のライン又は偶数番目のラインのいずれか一方を用いて、画像補正処理を行うことを特徴とする請求項1記載の画像補正方法。
  10. 前記(d) の手順において、特徴量が特徴量判定しきい値以上の点がない場合、基準特徴点の存在位置周辺に探索エリアを設定しなおして、前記(d) 以下の手順を続けることを特徴とする請求項1記載の画像補正方法。
  11. 前記(d) の手順において、特徴量が特徴量判定しきい値以上の点がない場合、前回以前に時系列に抽出された特徴点に基づき算出される当該時系列データを平均化若しくは平滑化した点の存在位置周辺に探索エリアを設定しなおして、前記(d) 以下の手順を続けることを特徴とする請求項1記載の画像補正方法。
  12. 前記(f) の手順において、算出された移動ベクトルが複数ある場合、移動ベクトルのばらつきを算出し、この算出されたばらつきが移動ベクトルばらつき判定しきい値以上である場合に、移動ベクトルのばらつきを大きくしている特徴点の画素を除去して画像補正処理を行うことを特徴とする請求項1記載の画像補正方法。
  13. ある画素を除いた他の移動ベクトルについてばらつきを算出したときに、算出されたばらつきが移動ベクトルばらつき判定しきい値未満となった時に、当該画素を、「前記移動ベクトルのばらつきを大きくしている特徴点の画素」であると判定する請求項12記載の画像補正方法。
  14. 前記(f) の手順において、前記算出された移動ベクトルが複数ある場合に、それらの移動ベクトルの移動量の平均を求めて、この移動量の平均値に相当する距離だけ画像をずらすことを特徴とする請求項1記載の画像補正方法。
  15. 前記特徴点は、画像の中に含まれる不動構造物又は不動表示物の角(コーナー)である請求項1記載の画像補正方法。
  16. 前記特徴量は、コーナーのエッジ強度である請求項15記載の画像補正方法。
  17. 請求項1記載の画像補正方法を実行するための画像補正プログラム。
  18. 固定した監視カメラで対象範囲を時間的に複数回撮影した各画像の中に含まれる不動構造物又は不動表示物の特徴点が、画面内の同一位置になるように画像を補正する装置であって、
    (a)監視カメラで撮影した画像を入力する手段、(b)ある時点の画像の中に基準となる1または複数の特徴点(基準特徴点という)を設定する手段、(c)その後の時点の画像において、前回抽出された特徴点(1回目の設定では基準特徴点とする)の存在位置周辺に探索エリアを設定する手段、(d)その探索エリアの中に、特徴量が特徴量判定しきい値以上あり、かつ、特徴量が最も大きな特徴点を1つ抽出する手段、(e)抽出された特徴点の画素と、基準特徴点に対応する画素との位置のずれに基づいて移動ベクトルを算出する手段、並びに(f)前記算出された移動ベクトルの大きさだけ画像全体を移動ベクトルと逆方向にずらすことによって、画像を補正する手段を備えることを特徴とする画像補正装置。
JP2004128179A 2003-04-24 2004-04-23 画像補正方法、プログラム及び装置 Expired - Fee Related JP3823982B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004128179A JP3823982B2 (ja) 2003-04-24 2004-04-23 画像補正方法、プログラム及び装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003120512 2003-04-24
JP2004128179A JP3823982B2 (ja) 2003-04-24 2004-04-23 画像補正方法、プログラム及び装置

Publications (2)

Publication Number Publication Date
JP2004343737A JP2004343737A (ja) 2004-12-02
JP3823982B2 true JP3823982B2 (ja) 2006-09-20

Family

ID=33543236

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004128179A Expired - Fee Related JP3823982B2 (ja) 2003-04-24 2004-04-23 画像補正方法、プログラム及び装置

Country Status (1)

Country Link
JP (1) JP3823982B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009267466A (ja) * 2008-04-22 2009-11-12 Mega Chips Corp 動体検知機能付監視カメラ
JP2011163900A (ja) * 2010-02-09 2011-08-25 Casio Computer Co Ltd 画像処理装置、画像処理プログラム、及び画像処理方法
US9922423B2 (en) 2012-07-12 2018-03-20 Nec Corporation Image angle variation detection device, image angle variation detection method and image angle variation detection program
CN112070801B (zh) * 2020-08-31 2023-08-11 上海沈德医疗器械科技有限公司 一种基于图像的运动检测方法
KR102260372B1 (ko) * 2020-10-29 2021-06-03 한국건설기술연구원 토공현장의 디지털맵 생성을 위한 드론 기반 지상기준점 배치 자동화 방법

Also Published As

Publication number Publication date
JP2004343737A (ja) 2004-12-02

Similar Documents

Publication Publication Date Title
US10204277B2 (en) Electronic device, traveling lane identifying system, and traveling lane identifying method
JP4957807B2 (ja) 移動物検知装置及び移動物検知プログラム
CN112598922B (zh) 车位检测方法、装置、设备及存储介质
JP2020519989A (ja) ターゲット識別方法、装置、記憶媒体および電子機器
CN110610150B (zh) 一种目标运动物体的跟踪方法、装置、计算设备和介质
JP2000011133A (ja) 移動物体検出装置及びその方法
CN109241345B (zh) 基于人脸识别的视频定位方法和装置
JP3823982B2 (ja) 画像補正方法、プログラム及び装置
JP2004145501A (ja) 道路白線認識装置
JP2013122739A (ja) 解析装置、解析プログラムおよび解析方法
JP2002342762A (ja) 物体追跡方法
KR100994722B1 (ko) 카메라 핸드오프를 이용한 다중 카메라상의 연속적인 물체추적 방법
JP2019209734A (ja) 軌道識別装置
US9648211B2 (en) Automatic video synchronization via analysis in the spatiotemporal domain
JP2003317106A (ja) 走行路認識装置
CN114882003A (zh) 一种检测相机的拍摄位姿变化的方法、介质及计算设备
CN116152691A (zh) 图像检测方法、装置、设备和存储介质
JP4661578B2 (ja) 移動体認識装置
JP2004252827A (ja) 車線認識装置
JP4107273B2 (ja) 移動体検出装置
JP2635232B2 (ja) 車間距離検出装置
JPH10124687A (ja) 道路白線検出方法及び道路白線検出装置
JP2001209804A (ja) 動画像処理装置及びその方法
KR102201168B1 (ko) 오버헤드 카메라를 이용한 사람 추적 방법
JPH03158976A (ja) 走行車線判別方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060518

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: 20060606

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060619

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090707

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100707

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110707

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110707

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120707

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120707

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130707

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees