JP3779494B2 - 動き検出装置及び記録媒体 - Google Patents
動き検出装置及び記録媒体 Download PDFInfo
- Publication number
- JP3779494B2 JP3779494B2 JP15575799A JP15575799A JP3779494B2 JP 3779494 B2 JP3779494 B2 JP 3779494B2 JP 15575799 A JP15575799 A JP 15575799A JP 15575799 A JP15575799 A JP 15575799A JP 3779494 B2 JP3779494 B2 JP 3779494B2
- Authority
- JP
- Japan
- Prior art keywords
- motion
- block
- detection device
- motion detection
- area
- 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 - Lifetime
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Analysis (AREA)
- Closed-Circuit Television Systems (AREA)
Description
【発明の属する技術分野】
本発明は、MPEGエンコーダにより得られる動きベクトルを用いて物体の動きを検出する動き検出装置及び動き検出方法及び動き検出のプログラムを記録した記録媒体に関する。
【0002】
【従来の技術】
店舗の営業時間の延長や無人施設の増加等に伴って、防犯対策の強化が望まれている。現在の対策としては、店内に監視カメラを設置してそれにより撮影された映像を監視員が目視するという形態が多く採用されている。
この形態において長時間にわたる監視作業は監視員の負担となる。そこで従来技術においては、監視カメラにより撮影された映像から人間等の物体の動き(以下、単に動きと省略する)を検出する動き検出装置が利用されている。この動き検出装置に警報器を接続し、動きが検出されたとき警報を発生させるように構成すれば、監視員は警報が発生したときのみ映像に注目すれば良いので監視作業にかかる負担が軽減される。
【0003】
従来の動き検出装置は背景差分法を用いて動きを検出する。背景差分法は、監視カメラにより撮影される過去のフレームと現在のフレームとを比較し、異なっている部分を動きと判定する方法である。より具体的には、2つのフレームの画素毎に輝度値の差を算出し、その差がしきい値より大きい場合に動きと判定する。このしきい値は、画像の小さなゆらぎや日照差等が物体動きとして誤検出されるのを防ぐための値である。
【0004】
また近年においては、MPEG符号化方式により映像をMPEG符号化する技術が発達している。従来の別の動き検出装置として、このMPEG符号化に利用される動きベクトルを流用して動きを検出するものがある。
動きベクトルとは、対象ブロックと参照ブロックとの空間的な位置関係を表わすベクトルである。ここでブロックは、16画素×16ラインや8画素×8ライン等の画素の集まりの単位である。また対象ブロックは、符号化の対象となっているフレーム中のブロックであり、参照ブロックは、対象ブロックのフレームと時間的に近い別フレーム中から探索されて選択されるブロックである。参照ブロックとしては、別フレーム中又は別フレームの所定の探索範囲中から対象ブロックと類似性の高いブロックが選択される。静止画の場合、参照ブロックと対象ブロックとは同じ位置になる。よってこの場合、動きベクトルは0になる。動画の場合、参照ブロックと対象ブロックとは、同じ物体等の動きの一部分を表わす場合が多い。この場合動きベクトルは、その物体の移動量と方向とを表わす。動きベクトルを利用して動きを検出する動き検出装置は、簡単には、動きベクトルがある程度の大きさのあるブロックを動きと判定する。実際には、画像のゆれ等を考慮して動きベクトルの大きさが所定の値より大きいブロックを動きと判定する。
【0005】
【発明が解決しようとする課題】
動き検出装置は、人間等の物体の動きのみを動きとして検出できるのが望ましい。
しかし、従来の背景差分法や動きベクトルを用いた動き検出装置は、蛍光灯のフリッカーが強い場合や夜間に自動車のライトが点滅して入射する場合等、短時間における輝度変化が大きい場合、動きを表わしていないはずの平坦な部分を動きとして誤検出してしまうという問題がある。ここで平坦な部分とは、壁面や床面等、同一フレーム中においてほぼ一様な輝度分布を示す画像部分を指す。
【0006】
上記の問題に鑑み、短時間中に輝度が大きく変化する状況下においても、平坦部分を動きと検出する誤検出を低減した動き検出装置及び動き検出方法及び動き検出のプログラムを記録した記録媒体の提供を目的とする。
【0007】
【課題を解決するための手段】
上記問題を解決するため、本発明の動き検出装置は、カメラから入力される映像を順次圧縮符号化するビデオエンコーダに接続され、画像中の物体の動きを検出する動き検出装置であって、ビデオエンコーダからブロック毎に算出される動きベクトルと、ブロックに対応する参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第1差分総和と、ブロックの動きベクトルが指す参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第2差分総和とを取得し、ブロックに対応させてメモリに格納する取得手段と、(第1差分総和)−(第2差分総和)>=(しきい値)を満たすブロックを、動いている物体の一部を表わす動きブロックと判定する判定手段とを備える。
【0008】
また前記動き検出装置は、さらに、フレーム内における警戒領域及び警戒方向をそれぞれ示すデータを記憶する記憶手段と、前記記憶手段に記憶されているデータを用いて、前記判定手段により動きブロックと判定された各ブロックが前記警戒領域内に存在するかどうかを判定し、それらのブロックが前記警戒領域内に存在する場合に、それらのブロックの平均動きベクトルの水平成分および垂直成分の各符号と、前記警戒方向の水平成分および垂直成分の各符号とを照合して双方の方向が同じかどうかを判定する領域判定手段と、前記領域判定手段の判定結果に基づいて警報を発生する警報手段とを備える。また、前記領域判定手段により、連続する所定数のフレームにわたって、警戒領域内のブロックの動きベクトルの平均的な方向が、前記警戒方向と同じであると判定された場合に、前記警報手段は警報を発生する。
【0010】
また前記動き検出装置は、さらに、前記判定手段によって動きブロックと判定された各ブロックについて、|(第1差分総和)−(第2差分総和)|/(|水平MV|+|垂直MV|+1)>=(第2しきい値)を満たす場合に動きブロックであると判定し、そうでない場合は静止ブロックであると判定し、前記判定手段によって静止ブロックと判定された各ブロックについては静止ブロックと判定する第2判定手段を備える。
また前記動き検出装置は、さらに、フレーム内における警戒領域及び警戒方向をそれぞれ示すデータを記憶する記憶手段と、前記記憶手段に記憶されているデータを用いて、前記第2判定手段により動きブロックと判定された各ブロックが前記警戒領域内に存在するかどうかを判定し、それらのブロックが前記警戒領域内に存在する場合に、それらのブロックの平均動きベクトルの水平成分および垂直成分の各符号と、前記警戒方向の水平成分および垂直成分の各符号とを照合して双方の方向が同じかどうかを判定する領域判定手段と、前記領域判定手段の判定結果に基づいて警報を発生する警報手段とを備える。
また前記動き検出装置は、前記領域判定手段により、連続する所定数のフレームにわたって、警戒領域内のブロックの動きベクトルの平均的な方向が、前記警戒方向と同じであると判定された場合に、前記警報手段は警報を発生する。
【0011】
上記問題を解決するため、本発明の記録媒体は、カメラから入力される映像を順次圧縮符号化するビデオエンコーダにより出力される動きベクトルを用いて、コンピュータに画像中の物体の動きを検出させるためのプログラムを記録している記録媒体であって、当該プログラムはコンピュータに、ビデオエンコーダからブロック毎に算出される動きベクトルと、ブロックに対応する参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第1差分総和と、ブロックの動きベクトルが指す参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第2差分総和とを取得し、ブロックに対応させてメモリに格納する取得ステップと、(第1差分総和)−(第2差分総和)>=(しきい値)を満たすブロックを、動いている物体の一部を表わす動きブロックと判定する判定ステップとを実行させるプログラムを記録する。
【0012】
【発明の実施の形態】
(実施形態1)
以下に本発明の実施形態1における動き検出装置について図面を用いて説明する。
(概略構成)
図1は、動き検出装置とその周辺装置からなる動き検出システムの概略構成を示すブロック図である。
【0013】
同図において、動き検出システムは、監視カメラ1、MPEGビデオエンコーダ2、録画再生装置3、動き検出装置4から構成される。
監視カメラ1は、撮影された画像を表わすビデオ信号をMPEGビデオエンコーダ2に出力する。
MPEGビデオエンコーダ2は、監視カメラ1より出力されるビデオ信号をMPEG方式により符号化してその符号化データを録画再生装置3へ出力する。またMPEGビデオエンコーダ2は、符号化の際に算出される最小差分総和、ゼロ差分総和、動きベクトルを動き検出装置4に出力する。なお、これらの用語についてはMPEGビデオエンコーダ2の構成の説明とあわせて後述する。
【0014】
録画再生装置3は、MPEGビデオエンコーダ2より出力される符号化データを記録媒体に記録すると同時にMPEG方式により復号化してディスプレイ等に表示する。
監視カメラ1、MPEGビデオエンコーダ2、録画再生装置3は、それぞれ新規な構成要素を備える装置ではなく、従来からある典型的な装置でよい。
【0015】
動き検出装置4は、MPEGビデオエンコーダ2より出力される最小差分総和、ゼロ差分総和、動きベクトルを用いて監視カメラ1により撮影された画像中の動きを検出する。
(MPEGビデオエンコーダ2)
図2は、MPEGビデオエンコーダ2の構成を示すブロック図である。
【0016】
同図においてMPEGビデオエンコーダ2は、変換部712、動き補償部715、差分部717、DCT/量子化部718、可変長符号化部71b、逆DCT/逆量子化部719、加算部71a、フレームメモリ714から構成される。
変換部712は、監視カメラ1よりビデオ信号が入力される。このビデオ信号は、輝度情報と色差情報とを含み、時間的に連続する複数のフレームを構成する。変換部712は、輝度情報と色差情報とを符号化で用いる解像度の輝度信号と色差信号とに変換する。具体的に1フレームの解像度は、輝度信号の場合は720画素×480ライン、色差信号の場合は、360画素×240ラインである。
【0017】
変換部712は、1フレーム分の輝度信号及び色差信号を16画素×16ラインのマクロブロック(以下MBと略す)単位に分割して差分部717に出力する。ここで1つのMBは、16画素×16ラインの輝度信号からなる輝度ブロック(8画素×8ラインの輝度信号からなるブロック4つ分)と、8画素×8ラインの青色差信号からなる青色差ブロックと、8画素×8ラインの赤色差信号からなる赤色差ブロックとから構成される。これらのブロックは互いに空間的に対応している。
【0018】
また変換部712は、差分部717へのMBの出力と同時に輝度ブロックのみを動き補償部715にも出力する。
以後nフレームをXY平面に見たてた場合の座標位置(i,j)に存在するMBをMBi,j,n、輝度ブロックをYBi,j,n、青色差ブロックをCbBi,j,n、赤色差ブロックをCrBi,j,nと表わす。またnはフレームの時間的な位置を示す。またMBにおいては、個々のMBと他のMBとを識別する必要のない場合には、添え字を省略して単にMBと表記する。
(動き補償予測)
動き補償予測とは、簡単には、nフレームの画素Pに対して、nフレームに近い別のmフレーム中から画素Pと類似している画素P’を探索する操作をいう。
【0019】
動き補償部715は、この動き補償予測を輝度ブロック単位に行う。動き補償部715は、nフレームの輝度ブロックYBi,j,nに対して、nフレームとは別のmフレームの中からYBi,j,nに類似した16画素×16ラインの輝度ブロックYBs,t,mを探索する。
ここでYBi,j,nは、変換部712より出力される輝度ブロックである。
【0020】
mフレームは、nフレームと比較的近い過去又は未来のフレームである。例えばnフレームの1つ前(過去)のフレームや1つ後(未来)のフレームである。mフレーム中の各MBは、逆DCT/逆量子化部719及び加算部71aによる復号を経てフレームメモリ714に記憶されている。mフレームを参照フレームと呼び、nフレームを対象フレームと呼ぶ。
【0021】
YBs,t,mは、0.5画素単位で探索される。
動き補償部715は、輝度ブロックYBs,t,mを探索するために、まずmフレームの探索範囲内における16画素×16ラインの全てのブロックについて輝度ブロックYBi,j,nとの差分総和を算出する。ここで差分総和は、YBi,j,nとmフレームの探索範囲(水平、垂直方向+/−数十画素)における16画素×16ラインのブロックとの画素毎の輝度値の差分の絶対値の総和である。この差分総和が小さければ小さいほど、探索範囲中のブロックと輝度ブロックYBi,j,nとの類似の度合いは高い。
【0022】
動き補償部715は、算出された差分総和のうち差分総和が最小となるブロックをYBi,j,nに最も類似するブロックYBs,t,mとする。さらに動き補償部715は、フレームメモリ714に記憶されるmフレームからYBs,t,mと空間的に対応する青色差ブロックCbBs,t,m及び赤色差ブロックCrBs,t,mを切り出す。以上のようにして得られるYBs,t,m、CbBs,t,m、CrBs,t,mの3つのブロックをまとめて参照ブロックと呼ぶ。
【0023】
さらに動き補償部715は、YBs,t,mとYBi,j,nとからYBi,j,nにおける動きベクトルMVi,j,nを算出する。ここで動きベクトルは、YBi,j,nとYBs,t,mとの空間的な位置関係を示す。MVi,j,nは、水平成分と垂直成分とにより表わされ、水平成分MVxi,j,n=s−i、垂直成分MVyi,j,n=t−jである。
動き補償部715は、このようにして算出されるYBs,t,m、CbBs,t,m、CrBs,t,mを差分部717に出力し、MVi,j,nを可変長符号化部71bに出力する。
【0024】
一方、動き補償部715は、先のMVi,j,nと、探索の過程で算出される差分総和のうちの最小差分総和とゼロ差分総和とを動き検出装置4に出力する。ここで最小差分総和は、YBi,j,nとYBs,t,mとの差分総和でありAEi,j,nと表わす。またゼロ差分総和は、YBi,j,nとmフレーム上において同じ位置に相当するブロックYBi,j,mとの差分総和でありAE0i,j,nと表わす。
【0025】
差分部717は、変換部712より入力されるMBとMBに対応する参照ブロックとから予測誤差を算出してDCT/量子化部718に出力する。予測誤差は、MBと対応する参照ブロックとの差分で表わされる。
DCT/量子化部718は、差分部717より予測誤差が入力されると、8画素×8ラインのブロック単位にDCT符号化を行う。さらにDCT/量子化部718は、DCT符号化により得られるDCT符号化係数を量子化して量子化データを出力する。
【0026】
可変長符号化部71bは、DCT/量子化部718より得られる量子化データと動き補償部715より得られる動きベクトル等を可変長符号化して符号化データを出力する。
逆DCT/逆量子化部719、加算部71aからなる部分は、DCT/量子化部718より出力される量子化データに対して逆量子化と逆DCT変換を行って予測誤差を復号し、それと参照ブロックとを加算することによって符号化中のフレームを再生し、フレームメモリ714に出力する。
【0027】
フレームメモリ714は、2フレーム分の記憶領域を有する。1フレーム分の記憶領域は、符号化の対象となっているフレームが再生されて加算部71aを会してブロック単位に入力される。また、もう1フレーム分の記憶領域は、このように入力された1つ前に再生されたフレームが入力される。1つ前に再生されたフレームは、動き補償予測の参照フレームとして用いられる。
(動き検出装置4)
図3は、動き検出装置4の構成を示すブロック図である。
【0028】
同図において動き検出装置4は、CPU5、ROM6、RAM8、入出力I/F9より構成される。
ROM6は、動き検出処理を記述したプログラムを記憶しており、CPU5がこの動き検出処理を実行することにより監視カメラ1により撮影された画像中の動きを検出する。
(動き検出処理の概略)
図4は、動き検出処理の概略を示すフローチャートである。
【0029】
同図に示すように動き検出処理はステップ1〜5の5つの判定処理からなる。動き検出装置4は、フレーム単位に繰り返しこれらの判定処理を行う。各判定処理において動き検出装置4は、動きMBの候補とされているMBについて、それらが動きMBであるか否かを判定する。ここで動きMBとは、動いている物体を表わす画像部分のMBを指していう。また動きMBに対して、静止している画像部分のMBを静止MBという。
【0030】
動き検出装置4は、1つの判定処理において動きMBと判定したMBをその次の判定処理において動きMBの候補として扱う。すなわち動き検出装置4は、ステップ1の判定処理において動きMBと判定したMBを、その次のステップ2の判定処理においては動きMBの候補とし、各動きMBの候補について動きMBであるか否かを判定する。さらにステップ2において動きMBと判定したMBを、その次のステップ3の判定処理においては動きMBの候補とし、各動きMBの候補について動きMBであるか否かを判定する。このようにして動き検出装置4は、ステップ5の判定処理において動きMBと判定したMBを最終的な動きMBとして検出する。
(各ステップの簡単な説明)
ステップ1〜5の判定処理を簡単に説明すると以下のようになる。
ステップ1:AE0とAEとの差がしきい値より大きいとき、そのMBを動きMBと判定する処理。
ステップ2:MBとその周囲のMBの動きベクトル(以下MVと略す)との方向及び大きさがランダムでないときそのMBを動きMBと判定する処理。
ステップ3:AE0とAEとの差分をMVで割ったときの比率がしきい値より大きいとき、そのMBを動きMBと判定する処理。
ステップ4:周囲のMBに動きMBが存在するMBと、周囲のMBに動きMBがないMBであってMVの小さいMBを動きMBと判定する処理。
ステップ5:1つ前のフレームの同位置及びその周辺のMBに動きMBが存在するとき、そのMBを動きMBと判定する処理。
【0031】
ここで各ステップにおいて動きMBと判定されなかったMBは静止MBとなる。
(RAM8)
以下に動き検出処理において用いられるRAM8について説明する。
RAM8は、MV領域81、AE領域82、AE0領域83、MMBI領域83〜MMBV領域88、前MMBIV領域89より構成される。
【0032】
MV領域81、AE領域82、AE0領域83は、それぞれMPEGビデオエンコーダ2より出力されるMV、AE、AE0をMBと対応させて記憶する。ここでMBと対応させて記憶するとは、個々のMBを特定するフレーム位置及び座標位置等、個々のMBを他のMBと区別するための識別子と対応させて記憶することを指す。
【0033】
MMBI領域84〜MMBV領域88は、それぞれステップ1〜5に対応し、各ステップにおける判定結果を記憶する。MMBI領域84〜MMBV領域88は、各MBが動きMBであるか静止MBであるかを示すフラグ群を記憶する。各フラグは、MMBI〜MMBVで表わされる。MMBI〜MMBVは、対応するMBが動きMBと判定されたとき1、静止MBと判定されているとき0を保持する。
【0034】
前MMBIV領域89は、MMVIV領域87に記憶されているMMVIVのフレームに対する1つ前のフレームのMMVIVを記憶する。言いかえると、MMVIV領域87がnフレームにおけるMMVIVを記憶しているとすると、前MMBIV領域89はn−1フレームにおけるMMVIVを記憶する。前MMBIV領域89に記憶される前フレームのMMVIVを前MMVIVと呼ぶこととする。
【0035】
以下、各ステップについて詳細なフローチャートを用いて説明する。
(ステップ1)
図5は、ステップ1のフローチャートを示す。
同図において動き検出装置4は、1フレーム中の各MBについて以下の処理を行う。
【0036】
すなわち動き検出装置4は、当該MBのAE0とAEとの差を算出し、その差をしきい値(ここにおいては1000)と比較する(ステップ52)。
動き検出装置4は、比較の結果、差がしきい値よりも大きければそのMBを動きMVと判定し、しきい値よりも小さければ静止MBと判定する。動き検出装置4は、当該MBを動きMBと判定した場合そのMBBIを1にし、静止MBと判定した場合そのMMBIを0にする(ステップ53、54)。
(ステップ1の説明)
この処理によって動き検出装置4は、輝度差の小さいフリッカーが発生している状況下における平坦部分での誤検出を低減する。
【0037】
誤検出が低減されるのは以下の理由による。画像を動きを表わす画像部分(動き部分と略す)と動きのない部分を表わす画像部分とに分け、さらに動きのない部分を表わす画像部分を平坦な部分を表わす画像部分(平坦部分と略す)と平坦でない部分を表わす画像部分(平坦でない部分と略す)とに分ける。このように分けた場合、小さいフリッカーが発生している状況下では、平坦部分及び平坦でない部分のMBは、ゼロ差分総和と最小差分総和との差が小さく、動き部分においては前記差は大きくなるという特性がある。この特性を利用してステップ1において動き検出装置4は、前記差としきい値との比較によってMBが動きMBであるか否かを判定する。
(ステップ2)
図6(a)は、ステップ2のフローチャートを示す。
【0038】
動き検出装置4は、1フレーム中の各MBについて以下の処理を行う。
動き検出装置4は、MMBI領域84から当該MBのMMBIを読み出し、その値が1であるか否かを識別する(ステップ62)。
識別の結果MMBI=0であれば、動き検出装置4は当該MBに対応するMMBIIを0にする(ステップ68)。
【0039】
識別の結果MMBI=1であれば、動き検出装置4はMB数I及びMB数IIの計数処理を行う(ステップ63)。
ここでMB数Iは、当該MBの周囲MBにおける動きMBの数である。周囲MBとは、当該MBの周囲のMBを指す。図6(b)に当該MBと周囲MBとの位置関係を示す。同図は、1フレーム中の9個のMB61〜69を部分的に示している。同図においてMB61が当該MBであるとすると、その他のMB62〜69が周囲MBである。
【0040】
MB数IIは、周囲MBでかつ動きMBであるMBのうち、つまりMB数Iに計数されているMBのうち、当該MBとMVの大きさ及び方向がほぼ同じMBの数である。
動き検出装置4は、MB数IIの値がMB数Iの値の半分以上であるか否かを判定する(ステップ64)。
【0041】
判定の結果、半分以上であれば当該MBを動きMBと判定し、その他は静止MBと判定する。動き検出装置4は、当該MBを動きMBと判定した場合そのMMBIIを1にし、静止MBと判定した場合そのMMBIIを0にする(ステップ65、66)。
図7は、ステップ63におけるMB数I及びIIの計数処理の詳細を示すフローチャートである。
【0042】
同図において動き検出装置4は、まずMB数I及びMB数IIの値を0に初期化する(ステップ71)。
次に動き検出装置4は、当該MBの周囲MBそれぞれについて以下の処理を行う(ステップ72)。
動き検出装置4は、MMBI領域84から周辺MBのMMBIを読み出し、その値が1であるか否かを識別する(ステップ73)。
【0043】
識別の結果MMBI=1であれば、動き検出装置4は、MB数Iに1を加える(ステップ74)。
次に動き検出装置4は、MV領域81から周辺MBのMVx、MVyの符号SMVx、SMVyと、当該MBのMVx、MVyの符号SMVx、SMVyとを対照して、それぞれが一致するか否かを判定する(ステップ75)。これによって動き検出装置4は、周辺MBのMVの方向と当該MBのMVの方向とがほぼ同じであるか否かを判定している。
【0044】
判定の結果、MVx及びMVyがともに一致する場合、さらに動き検出装置4は、周辺MBのMVの大きさと当該MBのMVの大きさとが近いか否かを判定する。
詳しくは、動き検出装置4は、周辺MBのMVxと当該MBのMVxとの差の絶対値、及び周辺MBのMVyと当該MBのMVyとの差の絶対値が両方ともしきい値(ここでは20)以下であるか否かを判定する(ステップ76)。
【0045】
ステップ75、ステップ76の2つの判定がともに肯定的に判定された場合、動き検出装置4は、MB数IIに1を加える(ステップ77)。
このようにして当該MVの周辺に存在する8個の周辺MBについてステップ72〜77を繰り返し、MB数I及びMB数IIを計数する。
(ステップ2の説明)
この処理によって動き検出装置4は、ライトの点滅等、短時間に輝度が大きく変化する状況下での平坦部分における誤検出を低減する。
【0046】
誤検出が低減されるのは以下の理由による。短時間に輝度差が大きく変化する状況下においては、MVは、動き部分においては方向及び大きさが一様になり、平坦部分においては方向及び大きさがランダムになり、平坦でない部分においては大きさが0になるという特性がある。ここでランダムとは、例えば図6(b)の9個のMB61〜69を用いて説明すると、MB61はMVxが−61でMVyが31、MB62はMVxが30でMVyが−100、MB63はMVxが−2でMVyが−10、MB64はMVxが77でMVyが5、MB65はMVxが−89でMVyが20、...というように各MB毎にMVxとMVyが不規則で勝手な値をとり、あるMBのMVx及びMVyのおおよその値が、その周りのMBのMVx及びMVyから予測できる確率の低い部分のマクロブロック群を指していう。これに対して一様とは、例えばMB61はMVxが−31でMVyが24、MB62はMVxが−30でMVy22、MB63はMVxが−32でMVyが23、MB64はMVxが−29でMVyが23、MB65はMVxが−32でMVyが20、...というように各MB毎のMVx及びMVyがランダムでなく、平均値の近くに分布する部分のマクロブロック群を指していう。
【0047】
このような特性を利用してステップ2において動き検出装置4は、当該MBと周辺MBのMVの大きさ及び方向がランダムな場合に静止MBと判定し、一様な場合に動きMBと判定する。なお平坦でない部分のMBは、ゼロ差分総和と最小差分総和との差が0か又は0に近くなるのでステップ1において静止MBと判定されている。
(ステップ3)
図8は、ステップ3のフローチャートを示す。
【0048】
動き検出装置4は、1フレーム中の各MBについて以下の処理を行う。
動き検出装置4は、MMBII領域85から当該MBのMMBIIを読出し、その値が1であるか否かを識別する(ステップ82)。
識別の結果MMBII=0であれば、動き検出装置4は、対応するMMBIIIを0にする(ステップ83)。
【0049】
識別の結果MMBII=1であれば、動き検出装置4は次の処理を行う。
まず動き検出装置4は、当該MBにおけるAE0とAEとの差を算出する。なおここでは前記差を算出しているが、この差はステップ52における差と同一のものであるから、ステップ52の時点で差を記憶しておくようして、その記憶されている差をここで用いるようにしてもよい。
【0050】
つぎに動き検出装置4は、当該MBのMVxの絶対値|MVx|とMVyの絶対値|MVy|と1との加算値を算出する。ここで1を加えているのは、この加算値は、除数として用いられるので、|MVx|及び|MVy|がともに0の場合に加算値が0になるのを防ぐためである。
最後に動き検出装置4は、前記差の加算値による商を算出する。動き検出装置4は、この商をしきい値(ここでは70)と比較し、商がしきい値以上の場合に当該MBを動きMBと判定し、しきい値より小さい場合に静止MBと判定する(ステップ84)。
【0051】
動き検出装置4は、当該MBが動きMBのとき対応するMMBIIIを1とし、静止MBのとき対応するMMBIIIを0とする(ステップ85、86)。
以上、動き検出装置4は、1フレーム中の各MBについてステップ82〜86の処理を繰り返す。
(ステップ3の説明)
この処理によって動き検出装置4は、ステップ2と同様に単時間に輝度が大きく変化する状況下での平坦部分における誤検出を低減する。
【0052】
誤検出が低減されるのは以下の理由による。動きのない平坦部分では、前記商がしきい値より小さくなる。これを利用して動き検出装置4は、前記商がしきい値より大きいMBのみを動きMBであると判定する。
(ステップ4)
図9は、ステップ4のフローチャートを示す。
【0053】
同図において動き検出装置4は、1フレーム中の各MBについて以下の処理を行う。
動き検出装置4は、MMBIII領域86から当該MBのMMBIIIを読出し、その値が1であるか否かを識別する(ステップ91)。
識別の結果MMBIII=0であれば、動き検出装置4は当該MBに対応するMMBIVを0にする(ステップ92)。
【0054】
識別の結果MMBIII=1であれば、動き検出装置4は当該MBにおけるMB数IIIの計数処理を行う(ステップ93)。
ここでMB数IIIは、当該MBに対する周囲MBにおける動きMBの数である。
計数の結果、MB数IIIが0でない場合、つまり1以上である場合、動き検出装置4は、当該MBを動きMBと判定し、対応するMMBIVを1にする(ステップ94、95)。
【0055】
計数の結果、MB数IIIが0である場合、動き検出装置4は、当該MBのMVの大きさが大きいMBを静止MBと判定し、小さいMBを動きMBと判定する。より詳しくは、動き検出装置4は、当該MBの|MVx|と|MVy|との合計値がしきい値(ここでは16)以下である場合に当該MBを動きMBと判定し、しきい値より大きい場合に当該MBを静止MBと判定する(ステップ96)。動き検出装置4は、当該MBが動きMBであれば対応するMMBIVを1にし、静止MBであれば対応するMMBIVを0にする(ステップ97、98)。
【0056】
以上のようにして動き検出装置4は、ステップ91〜98の処理を各MBについて繰り返す。
(MB数III計数処理)
図10は、ステップ93におけるMB数III計数処理を詳細に示すフローチャートである。
【0057】
同図において動き検出装置4は、まずMB数IIIの値を0に初期化する(ステップ101)。
次に動き検出装置4は、当該MBの周囲MBそれぞれについて以下の処理を行う。
動き検出装置4は、MMBIII領域86から周囲MBに対応するMMBIIIを読み出して、その値が1であるか否かを識別する(ステップ103)。
【0058】
識別の結果、MMBIII=1である場合は、動き検出装置4はMB数IIIに1を加える(ステップ103、104)。
動き検出装置4は、ステップ103、104の処理を当該MBの周囲8つの周囲MBについて繰り返してMMBIIIを計数する。
(ステップ4の説明)
この処理によって動き検出装置4は、人間等ある程度の大きさの物体をあらわしていないMBを動きMBでないと判定し、それにより誤検出を低減する。これは動いている人間等を表わす画像部分は、複数の動きブロックから構成されるという仮定に基づいている。
(ステップ5)
図11は、ステップ5のフローチャートを示す。
【0059】
同図において動き検出装置4は、1フレーム中の各MBについて以下の処理を行う。
動き検出装置4は、MMBIV領域87から当該MBに対応するMMBIVを読み出してその値が1であるか否かを識別する(ステップ111)。
識別の結果MMBIV=0である場合は、動き検出装置4は、対応するMMB5を0にする(ステップ112)。
【0060】
識別の結果MMBIV=1である場合は、動き検出装置4は以下の処理を行う。
動き検出装置4は、MB数IVを計数する(ステップ113)。
ここにおいてMB数IVとは、当該MBが存在するフレームの1つ前のフレームにおける、当該MBと同位置に存在するMB(同位置MB)及び同位置MBの周囲MBにおける動きMBの数である。
【0061】
動き検出装置4は、MB数IVの値が0より大きいか否かを判定する(ステップ114)。
判定の結果、MB数IVの値が0より大きい場合、つまり前フレームの同一位置及びその周辺のMBにおいて1つでも動きMBが存在する場合、動き検出装置4は、当該MBを動きMBと判定し、それ以外の場合、当該MBを静止MBと判定する。動き検出装置4は、当該MBが動きMBであると判定した場合にそれに対応するMMBVを1にし、当該MBが静止MBであると判定した場合にそれに対応するMMBVを0にする(ステップ115、116)。
【0062】
動き検出装置4はステップ111〜116の処理を各MBについて繰り返す。
(MB数IV計数処理)
図12は、ステップ113におけるMB数IV計数処理のより詳細なフローチャートである。
同図において動き検出装置4は、まずMB数IVの値を0に初期化する(ステップ121)。
【0063】
次に動き検出装置4は、当該MBの存在するフレームの1つ前のフレームにおける、当該MBと同位置及びその周辺の9個のMB(前MBとする)それぞれについて以下の処理を行う。
動き検出装置4は、前MMBIV領域89から前MB対応する前MMBIVを9個読出し、それぞれの値が1であるか否かを識別する(ステップ123)。
【0064】
識別の結果、前MMBIV=1であれば、MB数IVに1を加える(ステップ124)。
動き検出装置4は9個の前MBに対してステップ122、123を繰り返してMB数IVを計数する。
(ステップ5の説明)
この処理によって動き検出装置4は、時間的に連続して移動する動きを表わさないMBを動きMBでないと判定し、それにより誤検出を低減している。これは動いている人間等を表わす画像部分は、複数フレームに亙って、同位置あるいはその付近のMBが動きMBになるはずであるという仮定に基づいている。
【0065】
以上本実施形態の動き検出装置4は、MPEGビデオエンコーダ2より出力される最小差分総和AE、ゼロ差分総和AE0、MVを用いてステップ1〜5の判定処理を行うことによって動きMBを検出する。特に動き検出装置は、ステップ2の判定処理、つまりMVの大きさ及び方向が一様であるか否かによって動きMBであるか否かを判定する処理を行う。これによって動き検出装置は、ライトの点滅等により短時間で激しく輝度が変化するような状況下においても、平坦な部分のMBを誤って動きMBと判定することが少なくなり、誤検出が低減される。
(第2実施形態)
本実施形態における動き検出装置は、そのRAM内にフレーム上の警戒領域と警戒方向とを予め記憶している。そして動き検出装置は、動き検出処理によって動きMBと判定された動きMBが警戒領域内に存在し、かつそれら動きMBのMVの平均的な方向が警戒方向とほぼ同じである場合に、警報を鳴らす。
【0066】
以下に第2実施形態の動き検出装置について図面を用いて説明する。
図13は、第2実施形態における動き検出装置の構成を示すブロック図である。
同図において動き検出装置13は、CPU131、ROM134、RAM132、入出力I/F9、警報発生装置133から構成される。この構成中、図3と同じ符号の構成要素は同じものであるので説明を省略し、以下異なる構成要素について説明する。
【0067】
警報発生装置133は、CPU131の制御によって警報を発生する。
RAM132は、動きベクトル領域81、最小差分総和領域82、ゼロ差分総和領域83、動きMBI領域84〜動きMBV領域88、前動きMBIV、警戒情報領域1321から構成される。RAM132においてRAM8と同じ符号の記憶領域は同じ内容を記憶する。
【0068】
警戒情報領域1321は、警戒領域データと警戒方向データとを記憶する。
ここで警戒領域データは、矩形の警戒領域を表わし、フレーム上における位置と大きさから構成される。警戒領域は、例えば、店内のレジ付近や出入り口付近等、監視カメラ1により撮影される画像中で特に警戒して監視すべき領域である。
【0069】
警戒方向データは、方向を示すベクトルの水平成分と垂直成分とから構成される。警戒方向は、動きを表わす物体の特に検出すべき動きの方向を示す。例えばレジ付近の警戒領域内において人間がレジに近づく方向や、出入り口付近の警戒領域内において外から店内に入ってくる方向等、警戒して監視すべき動き方向である。
【0070】
図14は、監視カメラ1によって撮影された出入り口を含む店内の画像であり、画像中に設定された警戒領域及び警戒方向とを示す。
同図において点線の矩形141はフレーム上に設定された警戒領域を示す。この警戒領域は、店内の入り口付近に設定されている。2重点線142は、この警戒領域の警戒方向を示す。この例では、警戒領域の右方向に警戒方向が設定されている。
【0071】
ROM134は、ROM6と同様動き検出処理を記述したプログラムを記憶し、それに加えて警報発生処理を記述したプログラムを記憶する。
CPU131は、CPU5と同様ROM134に記憶される動き検出処理を実行するのに加えて、フレーム毎に警報発生処理を実行する。これら2つの処理を実行することによりCPU131は、次の2つの条件を満たす場合に警報発生装置133に警報を発生させる。すなわち、条件1:動き検出処理によって検出された動きMBが警戒領域内に存在し、条件2:それら動きMBのMVの平均的な方向が警戒方向とほぼ同じである。
【0072】
図15は、警報発生処理の詳細なフローチャートである。
CPU131は、1フレームの動き検出処理が終了したとき警報発生処理を実行する。
同図においてCPU131は、警戒領域内に動きMBが存在するか否かを判定する(ステップ151)。詳しくは、CPU131は、まず警戒情報領域1321から警戒領域データを読出す。次にCPU131は、MMBV領域88から警戒領域データが示す警戒領域内のMBに対応するMMBVを読み出す。CPU131は、読出したMMBVの値が1であるか否かを判定する。CPU131は、1つ以上MMBV=1のMBがあればステップ152に進み、1つもMMBV=1のMBがなければ警報発生処理を終了する。
【0073】
CPU131は、先に読み出したMMBVのうちMMBV=1のMBについて、そのMVの平均的な方向を求める(ステップ152)。詳しくは、CPU131は、MVxの平均値とMVyの平均値を算出する。
CPU131は、MVx及びMVyの平均値と、警戒方向データの水平成分及び垂直成分とが近いか否かを判定する(ステップ153)。この判定は、例えば、MVxの平均と警戒方向データの水平成分との差と、MVyの平均値と警戒方向データの垂直成分との差とがしきい値(例えば20)よりも小さければ近いと判定すればよい。
【0074】
CPU153は、ステップ153の判定において肯定的に判定したとき警報発生装置133に警報を発生させる。
以上のような構成によって、例えば図14の画像において人間が外から店内に入ってきたとき、CPU153は、動き検出処理によって人間の動きを表わす動きMBを検出する。続いてCPU153は、矩形141の警戒領域内に動きMBが存在するか否かを判定する。判定の結果、動きMBが存在するので、CPU131はさらに、その動きMBのMVの平均的な方向が点線142に示す警戒方向(右方向)とほぼ同じであるかを判定する。CPU131は、この判定によりほぼ同じと判定し、警報発生装置133に警報を発生させる。
【0075】
このようにして本実施形態の動き検出装置13は、動きが警戒領域内に存在してその動きの方向が警戒方向とほぼ同じであるとき警報を発生するので、レジ付近や出入り口付近等に警戒領域及び警戒方向を設定すれば、監視員の監視作業が限定されるので負担が軽減される。
(その他の実施形態)
以上本発明にかかる動き検出装置について実施形態に基づいて説明したが本発明はこれらの実施形態に限らず、以下のようにしてもよい。
(1)実施形態1において図4に示す動き検出処理は、フレーム単位ではなく、k個のMB単位に行われるようにしてもよい。
【0076】
この場合kは以下のことを考慮して決定すればよい。
ステップ2の判定処理では当該MBが動きMBであるか否かを判定するには、周囲MBのMMBIの値とMVとが必要である。
一方、MPEGビデオエンコーダ2は、MB毎にフレームの左から右、上から下へと順に符号化を行う。
【0077】
これらを考慮すると、動き検出装置4は、当該MBの右下に位置する周辺MBのMV及びMMBIの値が取得できた時にステップ2における判定処理を行うことができる。1フレームの水平方向のMBが45個の場合、当該MBの右下に位置する周辺MBは当該MBから符号化の順に数えて47番目である。したがってこの場合kは47以上にすればよい。
(2)実施形態1において、ステップ1の判定処理のかわりに以下のステップ1Aの判定処理を用いてもよい。
ステップ1A:
1)CPU5は、輝度ブロック(16画素×16ライン)を構成する4個の基本輝度ブロック(8画素×8ライン)の分散値を求める。
2)CPU5は、4つの分散値の最小値(VARmin)を求める。
3)CPU5は、
VARmin>しきい値1、かつ|MVx|+|MVy|>しきい値2
のとき当該MBを動きMBと判定する。
【0078】
VARminはアクティビティと呼ばれるものである。アクティビティは、平坦ま画像部分のMBでは小さくなり、平坦でない画像部分のMBでは大きくなるという特性がある。この特性によりMBが平坦な画像部分を表わすMBであるか否かを識別することができる。
VARmin>しきい値1は、しきい値1によって平坦な画像部分のMBが動きMBと判定されないようにしている。また|MVx|+|MVy|>しきい値2は、画像のゆらぎによって発生する小さなMVのために誤って動きMBと判定されないようにしている。
(3)実施形態1においてステップ1の判定処理のかわりに以下のステップ1Bの判定処理を用いても良い。
ステップ1B:
各MBについて、そのMVが所定のしきい値(例えば0)より大きいMBを動きMBと判定する。
(3)第1実施形態、上記(1)、(2)において、ステップ1〜5又はステップ1A〜5又はステップ1B〜5からなる動き検出処理は、順番を入れ替えてもよい。またステップ1、1A、1B、2〜5すべてを行っても良い。またいくつかのステップを省略してもよい。ステップ2のみでもよい。
(4)第2実施形態においてCPU131は、次のような場合に警報発生装置133に警報を発生させるようにしてもよい。すなわち、CPU131は、連続する複数のフレーム(例えば15フレーム)に亙って、警戒領域内に動きMBが存在すると判定しており、かつそれら動きMBのMVの平均的な方向が警戒方向とほぼ同じであると判定した場合、警報発生装置133に警報を発生させる。
(5)第2実施形態において、警戒方向データは、水平成分と垂直成分とから方向を表わしているが、簡単に右方向、左方向、上方向、下方向の4方向のみを表わすようにしてもよい。
(6)(5)の場合において、CPU131は、さらに警戒領域内の動きMBのMVx及びMVyの平均に基づいて、MVの平均的な方向が右方向、左方向、上方向、下方向のいずれに属するかを決定し、これによって決定された方向と警戒方向データが示す方向とMVの方向とが一致する場合に警報を発生させるようにしてもよい。
この場合例えばCPU131は、
|MVx|>|MVy|、かつ、MVx>0なら左方向、
|MVx|>|MVy|、かつ、MVx<=0なら右方向、
|MVx|<=|MVy|、かつ、MVy>0なら上方向、
|MVx|<=|MVy|、かつ、MVy<=0なら下方向、
と決定する。
(7)(6)の場合において、監視カメラ1が天井から斜め下方を見下ろす角度で取りつけられている場合であって、かつ、警戒方向が下方向又は上方向、つまり監視カメラ1に近づく方向又は遠ざかる方向に設定されている場合、以下のようにしてもよい。
【0079】
CPU131は、次のようにしてMVの平均的な方向が4方向のどれに属するかを決定する。すなわち、
|MVx|>|MVy|×m、かつ、MVx>0なら左方向、
|MVx|>|MVy|×m、かつ、MVx<=0なら右方向、
|MVx|<=|MVy|×m、かつ、MVy>0なら上方向、
|MVx|<=|MVy|×m、かつ、MVy<=0なら下方向
ここでmは例えば2である。mは、監視カメラ1の俯角(監視カメラ1の光軸が天井となす角度)によって変わる。例えば、俯角が浅いほど、mをより大きく設定すればよい。これは俯角が浅いほど、動きMBの上下方向の動きが左右方向より小さくなるからである。
(8)実施形態1においてMPEGビデオエンコーダ2は、動き検出装置4の検出結果を用いてMB毎の符号化モードを決定するように構成してもよい。
【0080】
符号化モードは、動き補償予測モードとイントラ符号化モードとの2種類ある。
動き補償予測モードは、参照ブロックと対象ブロックとの差分である予測誤差に対してDCT符号化及び量子化を施す方式である。このモードは、連続的に移動する動き等、フレーム間の画像の相関が高い場合に高い符号化効率が期待できる。
【0081】
イントラ符号化モードは、対象ブロックに対してDCT符号化及び量子化を施す方式である。このモードは、シーンチェンジのようにフレーム間の画像に相関がない場合に用いられる。
DCT/量子化部718は、以下のようにして符号化モードを決定し、そのモードに応じた符号化を行うようにしてもよい。
DCT/量子化部718は、
1)対象MBの輝度ブロックの分散VARを求める。
2)参照ブロックの輝度信号について平均2乗予測誤差MSEを求める。
3)VAR<MSEかつMSE>64のときイントラ符号化モードと決定し、それ以外は動き補償予測モードと仮決定する。
4)対象MBのMMBVの値を動き検出装置4より取得する。
5)MMVV=0(静止MB)の場合であって、3)で動き補償予測モードに仮決定されている場合、イントラ符号化モードに変更する。
【0082】
このように構成することにより、MPEGビデオエンコーダ2は、静止MBを動き補償予測モードで符号化してしまうのを防ぐことができる。
【0092】
【発明の効果】
本発明の動き検出装置は、カメラから入力される映像を順次圧縮符号化するビデオエンコーダに接続され、画像中の物体の動きを検出する動き検出装置であって、ビデオエンコーダからブロック毎に算出される動きベクトルと、ブロックに対応する参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第1差分総和と、ブロックの動きベクトルが指す参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第2差分総和とを取得し、ブロックに対応させてメモリに格納する取得手段と、(第1差分総和)−(第2差分総和)>=(しきい値)を満たすブロックを、動いている物体の一部を表わす動きブロックと判定する判定手段とを備える。
【0093】
この構成によれば、判定手段は、第2差分総和と第1差分総和との差がしきい値より大きい場合に当該ブロックを動きと判定する。これにより動き検出装置は、小さいフリッカーが発生している状況下において、輝度分布が一様な平坦な部分で動きベクトルが発生するが、それが原因でその部分のブロックを誤って動きとして検出する誤検出が低減されるという効果がある。
【0094】
判定手段により誤検出が低減されるのは以下の理由による。
説明のために短時間に大きな輝度変化がある場合の画像を、動きを表わす画像部分(動き部分と略す)と動きを表わさない画像部分とに分け、さらに動きを表わさない画像部分を平坦な部分を表わす画像部分(平坦部分と略す)と平坦でない部分を表わす画像部分(平坦でない部分と略す)とに分ける。小さいフリッカーが発生している状況下では平坦部分及び動き部分において動きベクトルが発生する。このため動きベクトルの大きさによって動きを検出する従来の動き検出装置においては、平坦部分を動きとして検出してしまう。
【0095】
これに対し平坦部分及び平坦でない部分においてはゼロ差分総和と最小差分総和との差が小さく、動き部分においては前記差は大きくなるという特性がある。これを利用して本発明の動き検出装置は、判定手段が前記差がしきい値より大きいか否かによって動きであるか否かを判定するので、平坦部分は動きとして検出されない。
【0096】
また、前記動き検出装置は、さらに、フレーム内における警戒領域及び警戒方向をそれぞれ示すデータを記憶する記憶手段と、前記記憶手段に記憶されているデータを用いて、前記判定手段により動きブロックと判定された各ブロックが前記警戒領域内に存在するかどうかを判定し、それらのブロックが前記警戒領域内に存在する場合に、それらのブロックの平均動きベクトルの水平成分および垂直成分の各符号と、前記警戒方向の水平成分および垂直成分の各符号とを照合して双方の方向が同じかどうかを判定する領域判定手段と、前記領域判定手段の判定結果に基づいて警報を発生する警報手段とを備える。
この構成によれば動き検出装置は、さらに領域判定手段が警戒領域と定められた領域内に動きブロックが存在すると判定した場合に、警報手段が警報を発生する。これにより監視作業を行う監視員は、警報手段の警報が発生した場合のみ映像に注目すれば良いので監視作業にかかる負担が軽減されるという効果がある。また、警報手段による警報の発生は、警戒領域内において警戒方向に進む動きがある場合に限定される。よって動き検出装置は、例えば店内において入り口からの侵入やレジ、金庫への接近等があった場合に警報手段が警報を発生するよう構成することができる。そのような構成において監視員は、より監視作業にかかる負担が軽減されるという効果がある。
また、前記動き検出装置は、さらに、前記判定手段によって動きブロックと判定された各ブロックについて、|(第1差分総和)−(第2差分総和)|/(|水平MV|+|垂直MV|+1)>=(第2しきい値)を満たす場合に動きブロックであると判定し、そうでない場合は静止ブロックであると判定し、前記判定手段によって静止ブロックと判定された各ブロックについては静止ブロックと判定する第2判定手段を備える。
【0097】
ライトが点滅している状況下において、動きのない平坦部分では、上式の左辺が第2しきい値より小さくなるという特性がある。
この特性を利用して第2判定手段は、しきい値より大きいブロックのみを動きブロックであると判定するので、上記効果に加えて誤検出が低減されるという効果がある。
【0101】
また本発明の動き検出プログラムを記録した記録媒体は、カメラから入力される映像を順次圧縮符号化するビデオエンコーダにより出力される動きベクトルを用いて、コンピュータに画像中の物体の動きを検出させるためのプログラムを記録している記録媒体であって、当該プログラムはコンピュータに、ビデオエンコーダからブロック毎に算出される動きベクトルと、ブロックに対応する参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第1差分総和と、ブロックの動きベクトルが指す参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第2差分総和とを取得し、ブロックに対応させてメモリに格納する取得ステップと、(第1差分総和)−(第2差分総和)>=(しきい値)を満たすブロックを、動いている物体の一部を表わす動きブロックと判定する判定ステップとを実行させるよう構成される。
【0102】
このようなステップからなるプログラムにおいては、判定ステップは、第2差分総和と第1差分総和との差がしきい値より大きい場合に当該ブロックを動きと判定する。これにより動き検出装置は、小さいフリッカーが発生している状況下において、輝度分布が一様な平坦な部分で動きベクトルが発生するが、それが原因でその部分のブロックを誤って動きとして検出する誤検出が低減されるという効果がある。
【図面の簡単な説明】
【図1】動き検出装置とその周辺装置からなる動き検出システムの概略構成を示すブロック図である。
【図2】 MPEGビデオエンコーダ2の構成を示すブロック図である。
【図3】動き検出装置4の構成を示すブロック図である。
【図4】動き検出処理の概略を示すフローチャートである。
【図5】ステップ1のフローチャートを示す。
【図6】(a)ステップ2のフローチャートを示す。
(b)当該MBと周囲MBとの位置関係を示す。
【図7】ステップ63におけるMB数I及びIIの計数処理の詳細を示すフローチャートである。
【図8】ステップ3のフローチャートを示す。
【図9】ステップ4のフローチャートを示す。
【図10】ステップ93におけるMB数III計数処理を詳細に示すフローチャートである。
【図11】ステップ5のフローチャートを示す。
【図12】MB数IV計数処理のより詳細なフローチャートである。
【図13】第2実施形態における動き検出装置の構成を示すブロック図である。
【図14】監視カメラ1によって撮影された出入り口を含む店内の画像であり、画像中に設定された警戒領域及び警戒方向とを示す。
【図15】警報発生処理の詳細なフローチャートである。
【符号の説明】
1 監視カメラ
2 MPEGビデオエンコーダ
3 録画再生装置
4 動き検出装置
5 CPU
6 ROM
8 RAM
9 入出力I/F
712 変換部
715 動き補償部
717 差分部
718 DCT/量子化部
71b 可変長符号化部
719 逆DCT/逆量子化部
71a 加算部
714 フレームメモリ
Claims (7)
- カメラから入力される映像を順次圧縮符号化するビデオエンコーダに接続され、画像中の物体の動きを検出する動き検出装置であって、
ビデオエンコーダからブロック毎に算出される動きベクトルと、ブロックに対応する参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第1差分総和と、ブロックの動きベクトルが指す参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第2差分総和とを取得し、ブロックに対応させてメモリに格納する取得手段と、
(第1差分総和)−(第2差分総和)>=(しきい値)を満たすブロックを、動いている物体の一部を表わす動きブロックと判定する判定手段とを備える
ことを特徴とする動き検出装置。 - 前記動き検出装置は、さらに、
フレーム内における警戒領域及び警戒方向をそれぞれ示すデータを記憶する記憶手段と、
前記記憶手段に記憶されているデータを用いて、前記判定手段により動きブロックと判定された各ブロックが前記警戒領域内に存在するかどうかを判定し、それらのブロックが前記警戒領域内に存在する場合に、それらのブロックの平均動きベクトルの水平成分および垂直成分の各符号と、前記警戒方向の水平成分および垂直成分の各符号とを照合して双方の方向が同じかどうかを判定する領域判定手段と、
前記領域判定手段の判定結果に基づいて警報を発生する警報手段とを備える
ことを特徴とする請求項1記載の動き検出装置。 - 前記領域判定手段により、連続する所定数のフレームにわたって、警戒領域内のブロックの動きベクトルの平均的な方向が、前記警戒方向と同じであると判定された場合に、前記警報手段は警報を発生することを特徴とする請求項2記載の動き検出装置。
- 前記動き検出装置は、さらに、
前記判定手段によって動きブロックと判定された各ブロックについて、|(第1差分総和)−(第2差分総和)|/(|水平MV|+|垂直MV|+1)>=(第2しきい値)を満たす場合に動きブロックであると判定し、そうでない場合は静止ブロックであると判定し、前記判定手段によって静止ブロックと判定された各ブロックについては静止ブロックと判定する第2判定手段を備える
ことを特徴とする請求項1記載の動き検出装置。 - 前記動き検出装置は、さらに、
フレーム内における警戒領域及び警戒方向をそれぞれ示すデータを記憶する記憶手段と、
前記記憶手段に記憶されているデータを用いて、前記第2判定手段により動きブロックと判定された各ブロックが前記警戒領域内に存在するかどうかを判定し、それらのブロックが前記警戒領域内に存在する場合に、それらのブロックの平均動きベクトルの水平成分および垂直成分の各符号と、前記警戒方向の水平成分および垂直成分の各符号とを照合して双方の方向が同じかどうかを判定する領域判定手段と、
前記領域判定手段の判定結果に基づいて警報を発生する警報手段とを備えることを特徴とする請求項4記載の動き検出装置。 - 前記領域判定手段により、連続する所定数のフレームにわたって、警戒領域内のブロックの動きベクトルの平均的な方向が、前記警戒方向と同じであると判定された場合に、前記警報手段は警報を発生することを特徴とする請求項5記載の動き検出装置。
- カメラから入力される映像を順次圧縮符号化するビデオエンコーダにより出力される動きベクトルを用いて、コンピュータに画像中の物体の動きを検出させるためのプログラムを記録している記録媒体であって、当該プログラムはコンピュータに、
ビデオエンコーダからブロック毎に算出される動きベクトルと、ブロックに対応する参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第1差分総和と、ブロックの動きベクトルが指す参照フレーム中の矩形領域と当該ブロックとの各画素の輝度差の絶対値の総和である第2差分総和とを取得し、ブロックに対応させてメモリに格納する取得ステップと、
(第1差分総和)−(第2差分総和)>=(しきい値)を満たすブロックを、動いている物体の一部を表わす動きブロックと判定する判定ステップとを実行させる
ことを特徴とするプログラムを記録した記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15575799A JP3779494B2 (ja) | 1998-06-03 | 1999-06-02 | 動き検出装置及び記録媒体 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17215598 | 1998-06-03 | ||
JP10-172155 | 1998-06-03 | ||
JP15575799A JP3779494B2 (ja) | 1998-06-03 | 1999-06-02 | 動き検出装置及び記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000059796A JP2000059796A (ja) | 2000-02-25 |
JP3779494B2 true JP3779494B2 (ja) | 2006-05-31 |
Family
ID=26483678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP15575799A Expired - Lifetime JP3779494B2 (ja) | 1998-06-03 | 1999-06-02 | 動き検出装置及び記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3779494B2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010104059A (ko) * | 2000-05-12 | 2001-11-24 | 박종섭 | 부호화기의 폴트 검출기 |
JP4617442B2 (ja) * | 2001-07-19 | 2011-01-26 | 株式会社メガチップス | 画像復号方法及びプログラム |
FI112018B (fi) * | 2001-12-18 | 2003-10-15 | Hantro Products Oy | Menetelmä ja laite liikkeen tunnistamiseksi |
FI112017B (fi) * | 2001-12-18 | 2003-10-15 | Hantro Products Oy | Menetelmä ja laite automaattiseen zoomaukseen |
WO2004008403A2 (en) * | 2002-07-15 | 2004-01-22 | Magna B.S.P. Ltd. | Method and apparatus for implementing multipurpose monitoring system |
JP4662142B2 (ja) * | 2004-08-13 | 2011-03-30 | ソニー株式会社 | 移動物体検出装置及び方法 |
JP4623368B2 (ja) | 2005-03-16 | 2011-02-02 | ソニー株式会社 | 移動物体検出装置、移動物体検出方法及びプログラム |
WO2012042705A1 (ja) * | 2010-09-27 | 2012-04-05 | パナソニック株式会社 | 動体検出方法及び動体検出装置 |
US8842723B2 (en) * | 2011-01-03 | 2014-09-23 | Apple Inc. | Video coding system using implied reference frames |
JP5776769B2 (ja) | 2011-05-24 | 2015-09-09 | 富士通株式会社 | 物体接近検知装置、物体接近検知方法、及びプログラム |
JP7232497B2 (ja) * | 2018-06-15 | 2023-03-03 | エイアイビューライフ株式会社 | 情報処理装置 |
CN110379130B (zh) * | 2019-06-28 | 2021-04-16 | 浙江大学 | 一种基于多路高清sdi视频的医疗看护防摔倒系统 |
CN111292354B (zh) * | 2020-01-22 | 2023-07-28 | 维沃移动通信有限公司 | 误检测抑制方法及电子设备 |
JP2024001374A (ja) * | 2020-11-27 | 2024-01-10 | シャープ株式会社 | 映像処理装置、表示装置、および映像処理方法 |
-
1999
- 1999-06-02 JP JP15575799A patent/JP3779494B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2000059796A (ja) | 2000-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6512537B1 (en) | Motion detecting apparatus, motion detecting method, and storage medium storing motion detecting program for avoiding incorrect detection | |
JP3779494B2 (ja) | 動き検出装置及び記録媒体 | |
JP4140202B2 (ja) | 移動物体検出装置 | |
JP4673849B2 (ja) | 複数のイメージセンサ間における視野関係を決定するためのコンピュータ化された方法及び装置 | |
JP2809659B2 (ja) | ビデオ画像処理 | |
US8625671B2 (en) | Look-ahead system and method for pan and zoom detection in video sequences | |
KR101877294B1 (ko) | 객체, 영역 및 객체가 유발하는 이벤트의 유기적 관계를 기반으로 한 복수 개 기본행동패턴 정의를 통한 복합 상황 설정 및 자동 상황 인지가 가능한 지능형 방범 cctv 시스템 | |
US20120275524A1 (en) | Systems and methods for processing shadows in compressed video images | |
JP2008505562A (ja) | Mpegビデオストリーム内の動きを検出する方法及び装置 | |
JP5713797B2 (ja) | 映像監視装置 | |
US20200372260A1 (en) | Display control device, display control system, and display control method | |
JP2007266652A (ja) | 移動物体検出装置、移動物体検出方法、移動物体検出プログラム、映像復号化装置、映像符号化装置、撮像装置及び映像管理システム | |
US6480543B1 (en) | Detection of a change of scene in a motion estimator of a video encoder | |
JPH07288802A (ja) | 侵入物体監視装置 | |
JP2005284652A (ja) | 動きベクトルを用いた映像監視方法及び装置 | |
EP3413268B1 (en) | Counter-flow detection in compressed video | |
KR102015082B1 (ko) | 압축영상에 대한 신택스 기반의 객체 추적 방법 | |
CN113792697B (zh) | 目标检测方法、装置、电子设备及可读存储介质 | |
CN115035543A (zh) | 一种基于大数据的移动轨迹预测系统 | |
Kumari et al. | Dynamic scheduling of an autonomous PTZ camera for effective surveillance | |
JP4736171B2 (ja) | 監視用信号の通信方法、及び監視用信号通信装置 | |
Fernando et al. | Sudden scene change detection in MPEG-2 video sequences | |
JP5173946B2 (ja) | 符号化前処理装置、符号化装置、復号装置及びプログラム | |
KR100290607B1 (ko) | 자동물체인식및추적촬영기능의보안방법 | |
Freer et al. | Automatic video surveillance with intelligent scene monitoring and intruder detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050913 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051104 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051220 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060202 |
|
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: 20060228 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060302 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3779494 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100310 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110310 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110310 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120310 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130310 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130310 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140310 Year of fee payment: 8 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |