JP2018025988A - 画像処理プログラム、画像処理方法および画像処理装置 - Google Patents

画像処理プログラム、画像処理方法および画像処理装置 Download PDF

Info

Publication number
JP2018025988A
JP2018025988A JP2016157702A JP2016157702A JP2018025988A JP 2018025988 A JP2018025988 A JP 2018025988A JP 2016157702 A JP2016157702 A JP 2016157702A JP 2016157702 A JP2016157702 A JP 2016157702A JP 2018025988 A JP2018025988 A JP 2018025988A
Authority
JP
Japan
Prior art keywords
range
person
area
image processing
next frame
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.)
Granted
Application number
JP2016157702A
Other languages
English (en)
Other versions
JP6750385B2 (ja
Inventor
信浩 宮▲崎▼
Nobuhiro Miyazaki
信浩 宮▲崎▼
瀬川 英吾
Eigo Segawa
英吾 瀬川
健太郎 辻
Kentaro Tsuji
健太郎 辻
明燮 鄭
Mingbian Zheng
明燮 鄭
松田 裕司
Yuji Matsuda
裕司 松田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016157702A priority Critical patent/JP6750385B2/ja
Priority to US15/652,734 priority patent/US10297040B2/en
Priority to CN201710638817.5A priority patent/CN107730533B/zh
Publication of JP2018025988A publication Critical patent/JP2018025988A/ja
Application granted granted Critical
Publication of JP6750385B2 publication Critical patent/JP6750385B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • G06V40/173Classification, e.g. identification face re-identification, e.g. recognising unknown faces across different face tracks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/48Matching video sequences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)
  • Closed-Circuit Television Systems (AREA)

Abstract

【課題】対象物の位置の誤判定を低減すること。
【解決手段】画像処理装置100は、撮像装置を用いて撮像されたフレームから第1の対象物に対応する第1の領域と、第2の対象物に対応する第2の領域とを抽出した場合に、次の処理を行う。画像処理装置100は、撮像装置によって撮像された過去フレームを記憶する記憶部を参照して、次フレームで第1の対象物を探索する第1の範囲と、第2の対象物を探索する第2の範囲を特定する。画像処理装置100は、次フレームで特定した第1の範囲と第2の範囲とが重なる面積が所定値以上の場合には、重なる面積が所定値未満となるように、次フレームでの第1の範囲、及び/または第2の範囲を変更する。画像処理装置100は、変更後の第1の範囲と第2の範囲を探索して、次フレームでの第1の対象物に対応する領域と第2の対象物に対応する領域を特定する。
【選択図】図6

Description

本発明は、画像処理プログラム等に関する。
近年、監視カメラは、監視目的の他に、マーケティングや交通量調査等、多くの用途で用いられる。例えば、ショッピングセンター等の監視カメラにより撮影された画像データに基づいて人物の移動経路を解析することで、人物が購入した商品などを推定し、マーケティングに役立てる。
例えば、従来技術では、パーティクルフィルタで推定した頭部候補に対して識別器による頭部判定をして、人物の頭部の位置決定を行う処理を繰り返し実行することで、同一人物を追跡する。
特開2012−108798号公報 特開2008−112210号公報 特開2004−94518号公報 特開2011−180684号公報 特開2008−26974号公報
しかしながら、上述した従来技術では、対象物の位置の誤判定を低減することができないという問題がある。
1つの側面では、本発明は、対象物の位置の誤判定を低減することができる画像処理プログラム、画像処理方法および画像処理装置を提供することを目的とする。
第1の案では、画像処理プログラムは、コンピュータに下記の処理を実行させる。コンピュータは、撮像装置を用いて撮像されたフレームから第1の対象物に対応する第1の領域と、第2の対象物に対応する第2の領域とを抽出した場合に、次の処理を行う。コンピュータは、撮像装置によって撮像された過去フレームを記憶する記憶部を参照して、次フレームで第1の対象物を探索する第1の範囲と、第2の対象物を探索する第2の範囲を特定する。コンピュータは、次フレームで特定した第1の範囲と第2の範囲とが重なる面積が所定値以上の場合には、重なる面積が所定値未満となるように、次フレームでの第1の範囲、及び/または第2の範囲を変更する。コンピュータは、変更後の第1の範囲と第2の範囲を探索して、次フレームでの第1の対象物に対応する領域と第2の対象物に対応する領域を特定する。
対象物の位置の誤判定を低減することができる。
図1は、人物の移動経路を判定する参考例を説明するための図(1)である。 図2は、人物の移動経路を判定する参考例を説明するための図(2)である。 図3は、参考例の問題点を説明するための図(1)である。 図4は、参考例の問題点を説明するための図(2)である。 図5は、本実施例に係る画像処理装置の処理を説明するための図である。 図6は、本実施例に係る画像処理装置の構成を示す機能ブロック図である。 図7は、画像テーブルのデータ構造の一例を示す図である。 図8は、追跡テーブルのデータ構造の一例を示す図である。 図9は、類似度算出部の処理を説明するための図である。 図10は、範囲特定部の処理を説明するための図(1)である。 図11は、範囲特定部の処理を説明するための図(2)である。 図12は、範囲特定部の処理を説明するための図(3)である。 図13は、変更部の処理を説明するための図(1)である。 図14は、変更部の処理を説明するための図(2)である。 図15は、領域特定部の処理を説明するための図である。 図16は、検出部の処理を説明するための図である。 図17は、本実施例に係る画像処理装置の処理手順を示すフローチャートである。 図18は、類似度算出処理の処理手順を示すフローチャートである。 図19は、位置推定処理の処理手順を示すフローチャートである。 図20は、領域算出処理の処理手順を示すフローチャートである。 図21は、位置決定処理の処理手順を示すフローチャートである。 図22は、人物追跡処理の処理手順を示すフローチャートである。 図23は、人物検出処理の処理手順を示すフローチャートである。 図24は、コンピュータのハードウェア構成の一例を示す図である。
以下に、本願の開示する画像処理プログラム、画像処理方法および画像処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
本実施例の説明を行う前に、人物の移動経路を判定する参考例について説明する。この参考例は従来技術ではない。参考例の画像処理装置は、位置予測処理を行った後に、追跡処理を実行する。
図1及び図2は、人物の移動経路を判定する参考例を説明するための図である。図1を用いて、参考例による位置予測処理について説明する。前提として、時刻t,tにおいて、人物1Aの位置が特定されているものとする。時刻tにおける人物1Aの位置を(x,y)とし、時刻tにおける人物1Aの位置を(x,y)とする。
参考例の画像処理装置は、人物1Aが直線的に移動すると仮定して、時刻tにおける人物1Aの位置(x,y)を予測する。図1に示す例では、画像処理装置は、位置(x、y)を含む範囲を探索範囲1Bとして設定する。
図2を用いて、参考例による追跡処理について説明する。前提として、図1の位置予測処理に基づき、探索範囲1Bが設定されているものとする。画像処理装置は、人物1Aの特徴2Aを記憶部から取得する。人物1Aの特徴2Aは、1つ前の画像データから検出した人物1Aの特徴であり、例えば、時刻tにおける人物1Aの特徴となる。
人物の特徴2Aと探索範囲1Bとを比較して、人物1Aの特徴2Aと探索範囲1Bとの類似度が高い領域2Bを特定し、特定した領域2Bを時刻tにおける人物1Aの領域として判定する。参考例による画像処理装置は、上記の位置予測処理、追跡処理を繰り返し実行することで、人物1Aを追跡していく。
続いて、参考例の問題点について説明する。図3および図4は、参考例の問題点を説明するための図である。まず、図3について説明する。前提として、時刻t,tにおいて、人物3A,4Aの位置が特定されているものとする。時刻tにおける人物3Aの位置を(x31,y31)とし、時刻tにおける人物3Aの位置を(x32,y32)とする。時刻tにおける人物4Aの位置を(x41,y41)とし、時刻tにおける人物4Aの位置を(x42,y42)とする。
参考例の画像処理装置は、図1で説明した処理と同様にして、人物3Aが直線的に移動すると仮定し、時刻tにおける人物3Aの位置を含む範囲を探索範囲3Bとして設定する。画像処理装置は、人物4Aが直線的に移動すると仮定し、時刻tにおける人物4Aの位置を含む範囲を探索範囲4Bとして設定する。
図4について説明する。画像処理装置は、人物3Aの特徴5Aを記憶部から取得する。人物3Aの特徴5Aは、1つ前の画像データから検出した人物3Aの特徴であり、例えば、時刻tにおける人物3Aの特徴となる。
画像処理装置は、人物3Aの特徴5Aと探索範囲3Bとの類似度が高い領域を時刻tにおける人物3Aの領域として判定する。しかしながら、人物3Aと人物4Aとの特徴が類似しており、かつ、探索範囲3B,4Bとが所定領域以上重複していると、人物4Aの領域6Bを、人物3Aの領域として判定してしまい、人物3Aについて、適切に追跡処理を実行することができない。
同様に、画像処理装置は、人物4Aの特徴6Aを記憶部から取得する。人物4Aの特徴6Aは、1つ前の画像データから検出した人物4Aの特徴であり、例えば、時刻tにおける人物4Aの特徴となる。
画像処理装置は、人物4Aの特徴6Aと探索範囲4Bとの類似度が高い領域を時刻tにおける人物4Aの領域として判定する。しかしながら、人物3Aと人物4Aとの特徴が類似しており、かつ、探索範囲3B,4Bとが所定領域以上重複していると、人物3Aの領域5Bを、人物4Aの領域として判定してしまい、人物4Aについて、適切に追跡処理を実行することができない。
次に、本実施例に係る画像処理装置について説明する。図5は、本実施例に係る画像処理装置の処理を説明するための図である。図5のステップS10について説明する。前提として、ある時刻に撮影された画像データのフレームには、人物10A,10Bが存在しているものとする。画像処理装置は、人物10A,10Bが等速で直線的に移動することを仮定して、過去の人物10A,10Bの移動速度から次フレームにおける位置を推定する。
例えば、人物の移動速度(速度ベクトル)は、式(1)により定義される。
v=(p(t−1)−p(t−2),p(t−1)−p(t−2)・・・(1)
式(1)において、p(t)は、時刻tにおける人物のx座標を示す。p(t)は、時刻tにおける人物のy座標を示す。例えば、時刻tにおける人物の位置座標は、式(2)によって定義される。
p(t)=(p(t),p(t))・・・(2)
画像処理装置は、人物10A,10Bの移動速度に基づいて、次フレームの人物10A,10Bの位置座標を予測する。例えば、人物10Aの単位時間(フレーム間の時間)の移動量、移動方向をv(速度)とすると、次フレームの人物10Aの位置座標は位置座標10A’となる。人物10Bの単位時間(フレーム間の時間)の移動量、移動方向をv(速度)とすると、次フレームの人物10Bの位置座標は、位置座標10B’となる。
図5のステップS11について説明する。画像処理装置は、人物10Aの予測される位置座標10A’を基準にして、探索範囲11Aを設定する。また、画像処理装置は、人物10Bの予測される位置座標10B’を基準にして、探索範囲11Bを設定する。
画像処理装置は、下記に示す「追い抜き発生の条件1,2」を満たすか否かを判定する。画像処理装置は、追い抜き発生の条件1,2の双方を満たす場合には、追い抜きは発生すると判定し、ステップS12の処理に移行する。画像処理装置は、追い抜き発生の条件1,2の双方を満たさない場合には、追い抜きが発生しないと判定し、参考例の追跡処理と同様の処理を行う。追い抜きが発生しない場合には、参考例の追跡処理を行っても、図3,4に示した問題が発生しない。
追い抜き発生の条件1:x,y座標方向におけるvとvとの符号が等しい、または、vの値が0となる。
追い抜きの発生条件2:探索範囲11Aと探索範囲11Bとの重複領域11Cの縦幅をh、横幅をwとした場合において、w≧wかつh≧hとなる。wおよびhは、予め設定される閾値であり、人物領域の大きさに対応する。
図5のステップS12について説明する。画像処理装置は、追い抜きが発生すると判定した場合には、速度が速い方の人物の推定位置を元の移動方向との差が最も小さく、他の人物の探索範囲との重複領域が人物領域よりも小さくなるように、速い方の速度の方向を調整する。
具体的には、画像処理装置は、重複領域11Cの横幅wがw以下となるまで、または、重複領域11Cの縦幅hがh以下となるまで、速度ベクトルvの方向を変更して探索範囲11Aを再設定する処理を繰り返し実行する。画像処理装置は、重複領域11Cの横幅wがw以下となる、または、重複領域11Cの縦幅hがh以下となる速度ベクトルが複数存在する場合には、元の速度ベクトルと、変更後の速度ベクトルとのなす角θが最小となる速度ベクトルv’を特定する。画像処理装置は、速度ベクトルv’によって、探索範囲11Aを設定し、追跡処理を実行する。
図5のステップS10〜S12で説明したように、本実施例に係る画像処理装置は、追い抜く人物は、追い抜かれる人物を避けて移動することに着目し、追い抜く人物の予測される位置座標を調整する。このように調整することで、追い抜く人物の探索範囲と、追い抜かれる人物の探索範囲との重複領域が、人物領域よりも小さくなり、人物の入れ替わりを抑止できるので、適切に追跡処理を実行することができる。
続いて、本実施例に係る画像処理装置の構成について説明する。図6は、本実施例に係る画像処理装置の構成を示す機能ブロック図である。図6に示すように、この画像処理装置100は、カメラ110と、入力装置120と、表示装置130と、記憶部140と、制御部150とを有する。
カメラ110は、撮影範囲の画像を撮影し、撮影した画像のデータを、画像処理装置100に出力する装置である。以下の説明では、カメラ110が撮影した画像のデータを画像データと表記する。画像データは、時刻毎のフレームが連続するデータとなる。図6では説明を省略するが、カメラ110は、ネットワークを介して、画像処理装置100に接続されても良い。
入力装置120は、各種の情報を画像処理装置100に入力するための入力装置である。入力装置120は、キーボードやマウス、タッチパネル等に対応する。
表示装置130は、制御部150の処理結果等を表示する表示装置である。表示装置130は、液晶ディスプレイやタッチパネル等に対応する。
記憶部140は、画像テーブル141、追跡テーブル142、予測誤差データ143を有する。記憶部140は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
画像テーブル141は、画像データに含まれる時刻毎のフレームを格納するテーブルである。図7は、画像テーブルのデータ構造の一例を示す図である。図7に示すように、この画像テーブル141は、時刻とフレームとを対応付ける。上記のように、カメラ110により撮影される画像データは、時刻毎に連続するフレームから構成される。
追跡テーブル142は、追跡対象の人物に関する各種の情報を保持するテーブルである。図8は、追跡テーブルのデータ構造の一例を示す図である。図8に示すように、追跡テーブル142は、人物ID(Identification)と、時刻と、人物領域と、移動量とを対応付ける。人物IDは、人物を一意に識別する情報である。時刻は、該当するフレームの時刻を示すものである。
人物領域は、人物が存在するフレーム上の領域を示すものである。人物領域は、x座標と、y座標と、幅と、高さとを有する。x座標、y座標は、人物領域の左上のx座標、y座標に対応する。幅は、人物領域の幅に対応し、高さは、人物領域の高さに対応する。なお、x座標、y座標は、人物領域の左上のx座標、y座標に限らず、人物領域の右上、左下、右下、中心等のx座標、y座標であっても良い。
移動量(x,y)は、人物が単位時間当たりに移動するx軸方向およびy軸方向の移動量を示すものである。移動量(x,y)は、速度ベクトルに対応する。例えば、単位時間を、時刻t−1のフレームから時刻tのフレームまでの時間とする。
予測誤差データ143は、推定されるある人物の位置座標と、ある人物の実際の位置座標との誤差を示す情報である。予測誤差データ143に関する具体的な説明は後述する。
制御部150は、取得部151、類似度算出部152、範囲特定部153、変更部154、領域特定部155、検出部156を有する。制御部150は、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)などの集積装置に対応する。また、制御部150は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路に対応する。
取得部151は、カメラ110から画像データを取得する処理部である。取得部151は、画像データに含まれる各フレームを、時刻と対応付けて画像テーブル141に格納する。
類似度算出部152は、次フレームに複数の人物領域が存在する場合に、各人物領域の類似度を算出する処理部である。類似度算出部152は、各人物領域の類似度のデータを、変更部154に出力する。類似度算出部152は、次フレームに3つ以上の人物領域が存在する場合には、異なる2つの人物領域の組毎に、類似度を算出する。
例えば、類似度算出部152は、正規化相互相関関数の値を、類似度として算出する。具体的に、類似度算出部152は、式(3)に基づいて、各人物領域の類似度Rを算出する。図9は、類似度算出部の処理を説明するための図である。図9に示すように、次フレームには、人物10Aの領域Tと、人物10Bの領域Iとが存在するものとする。式(3)のT(x,y)は、領域Tに含まれる座標(x,y)の画素値を示す。I(x,y)は、領域Iに含まれる座標(x,y)の画素値を示す。hは、領域Tまたは領域Iの高さに対応する。wは、領域Tまたは領域Iの幅に対応する。
Figure 2018025988
類似度算出部152は、次フレームに含まれる人物領域の組に対して類似度を算出する処理を繰り返し実行する。例えば、類似度算出部152は、フレームの時刻と、人物領域の組に対応する各人物IDと、類似度とを対応付けた情報を、変更部154に出力する。
範囲特定部153は、追跡テーブル142を基にして、次フレームにおける第1の人物を探索する第1の範囲と、第2の人物を探索する第2の範囲を特定する処理部である。範囲特定部153は、以下に説明する位置推定処理、範囲算出処理を実行する。
範囲特定部153が実行する位置推定処理について説明する。範囲特定部153は、過去フレームにおける人物の位置座標から人物の移動量を算出し、次フレームにおける人物の位置座標を推定する。
図10は、範囲特定部の処理を説明するための図(1)である。前提として、過去の処理により、カメラ座標系における、過去2フレームの人物の位置座標p(t−1)、p(t−2)が、追跡テーブル142に格納されているものとする。ここでは一例として、人物を人物10Aとする。位置座標p(t−2)は、時刻t−2における人物10Aの位置座標に対応する。位置座標p(t−1)は、時刻t−1における人物10Aの位置座標に対応する。ここで、p(t)は、上述した式(2)で定義される。
人物10Aの単位時間当たりの移動量(速度ベクトル)は、式(4)により定義される。範囲特定部153は、人物10Aが等速で直線的に移動すると仮定し、時刻tにおける人物10Aの位置座標p(t)を、式(5)によって推定する。
Δ=p(t−1)−p(t−2)・・・(4)
p(t)=p(t−1)+Δ・・・(5)
続いて、範囲特定部153が実行する範囲算出処理について説明する。範囲特定部153は、上記の位置推定処理により特定した位置座標p(t)を基準として、探索範囲を設定する。
図11は、範囲特定部の処理を説明するための図(2)である。範囲特定部153は、位置座標p(t)を基にして、横幅r、縦幅rの探索範囲11Aを設定する。例えば、範囲特定部153は、探索範囲11Aの左上端が、位置座標p(t)となるように、探索範囲11Aを設定する。
続いて、範囲特定部153は、予測誤差ε(ε,ε)を考慮して、探索範囲11Aを修正する。範囲特定部153は、予測誤差ε(ε,ε)を、予測誤差データ143から取得する。
図12は、範囲特定部の処理を説明するための図(3)である。予測誤差εは、式(5)に基づいて推定した人物10Aの位置座標と、人物10Aの実際の位置座標との誤差に対応するものである。例えば、範囲特定部153は、探索範囲11Aの横幅を2εだけ広げ、縦幅をεだけ広げることで、探索範囲11Aを探索範囲11A’に修正する。探索範囲11Aを、探索範囲11A’に修正することで、人物領域をもれなく探索領域11A’に含めることができる。範囲特定部153以外の説明において、修正した探索範囲11A’を、単に、探索範囲11Aと表記する。
例えば、予測誤差εは、式(6)により定義される。予測誤差εは、式(7)により定義される。式(6)のxは、式(5)に基づいて推定された人物10Aのx座標に対応する。式(6)のyは、式(5)に基づいて推定された人物10Aのy座標に対応する。
ε=x×(1−p)・・・(6)
ε=y×(1−p)・・・(7)
式(6)のpは、式(8)により定義される値である。式(7)のpは、式(9)により定義される値である。
Figure 2018025988
Figure 2018025988
式(8)および式(9)のpx1,py1は、ある人物(例えば、人物10A)における予測精度であり、それぞれ、式(10)、式(11)により定義される。
Figure 2018025988
Figure 2018025988
式(10)に含まれる「xp1,xp2,xp3・・・」、式(11)に含まれる「yp1,yp2,yp3・・・」は、式(12)〜式(17)により定義される。式(12)〜式(17)において、x(t)は、時刻tにおけるフレームから検出された人物の実際のx座標を示すものである。y(t)は、時刻tにおけるフレームから検出された人物の実際のy座標を示すものである。x(t)は、時刻tにおけるフレームから検出された人物の予測されたx座標を示すものである。y(t)は、時刻tにおけるフレームから検出された人物の予測されたy座標を示すものである。
Figure 2018025988
式(8)および式(9)のpx2,py2は、他の人物(例えば、人物10B)における予測精度であり、それぞれ、式(10)、式(11)と同様にして定義される。式(8)および式(9)のpx3,py3は、他の人物(例えば、図示しない人物10C)における予測精度であり、それぞれ、式(10)、式(11)と同様にして定義される。
範囲特定部153は、事前に、人物10A〜10C、その他の人物の実際の位置座標と、式(5)に基づく、推定される位置座標とを算出しておき、予測誤差ε,εを算出しておくものとする。範囲特定部153は、予測誤差ε,εのデータを、予測誤差データ143として、記憶部140に登録しておく。
範囲特定部153は、人物IDと、この人物IDに対応する、時刻t−1の人物の位置座標、移動量(速度ベクトル)、探索範囲を対応付けた情報を、変更部154に出力する。
変更部154は、次フレームで特定された人物10Aの探索範囲11Aと、人物10Bの探索範囲11Bとの重なる面積が、所定値以上である場合に、重なる面積が所定値未満となるように、探索範囲11Aまたは探索範囲11Bの位置を変更する処理部である。
まず、変更部154は、追い抜き発生の条件1,2の双方を満たすか否かを判定することで、探索範囲11Aまたは探索範囲11Bの位置を変更するか否かを判定する。
上記のように、追い抜き発生の条件1は「x,y座標方向におけるvとvとの符号が等しい、または、vの値が0となる。」である。ここで、追い抜く人物を人物10A、追い抜かれる人物を人物10Bとすると、人物10Aの移動量が「v」に対応し、人物10Bの移動量が「v」に対応する。例えば、変更部154は、各人物の移動量を比較し、移動量が大きい方を追い抜く人物、移動量が小さい方を追い抜かれる人物として判定する。
追い抜き発生の条件2は「探索範囲11Aと探索範囲11Bとの重複領域11Cの縦幅をh、横幅をwとした場合において、w≧wかつh≧hとなる。wおよびhは、予め設定される閾値であり、人物領域の大きさに対応する。」である。
図13は、変更部の処理を説明するための図(1)である。図13に示す座標系では、右側ほど、xの座標が大きくなり、下側ほど、yの座標が大きくなるものとする。図13に示すように、探索範囲11Bの左上端の座標を(x1min,y1min)とし、右下端の座標を(x1max,y1max)とする。探索範囲11Aの左上端の座標を(x2min,y2min)とし、右下端の座標を(x2max,y2max)とする。
重複領域11Cの幅wは、式(18)によって定義される。重複領域11Cの高さhは、式(19)によって定義される。式(18)および式(19)に含まれるmin(x,y)は、x、yのうち、値の小さいものを選択することを意味する。max(x,y)は、x、yのうち、値の大きいものを選択することを意味する。変更部154は、式(18)および式(19)に基づいて、重複領域11Cの幅w、高さhを算出する。
w=min(x1max,x2max)−max(x1min,x2min)・・・(18)
h=min(y1max,y2max)−max(y1min,y2min)・・・(19)
変更部154は、追い抜きの条件1,2の双方を満たさない場合には、探索範囲11Aまたは探索範囲11Bの位置を変更する処理をスキップする。すなわち、変更部154は、追い抜きの条件1,2の双方を満たさない場合には、探索範囲11Aまたは探索範囲11Bの位置をそのままとする。
一方、変更部154は、追い抜きの条件1,2の双方を満たす場合には、探索範囲11Aまたは探索範囲11Bの位置を変更する処理を実行する。ここでは一例として、探索範囲11Aの位置を変更する場合について説明する。
図14は、変更部の処理を説明するための図(2)である。図14の説明では、追い抜く人物を人物10Aとし、追い抜かれる人物を人物10Bとする。また、人物10Aの変更前の速度ベクトル(移動量)を速度ベクトルvとし、変更後の速度ベクトルを速度ベクトルv’とする。
図14のステップS20について説明する。変更部154は、速度ベクトルvの向きを、人物10Bから離れる方向に変更することで、速度ベクトルv’を設定する。速度ベクトルvと、速度ベクトルv’との大きさは等しいが、向きが異なる。図14に示す例では、速度ベクトルvと速度ベクトルv’とのなす角はθとなる。
図14のステップS21について説明する。変更部154は、人物10Aの移動量を、速度ベクトルv’として、人物10Aの次フレームにおける位置座標を再計算し、探索範囲11Aを再設定する。変更部154が、移動量に基づいて、人物10Aの位置座標を計算する処理および探索範囲を設定する処理は、上述した範囲特定部153が、位置座標を計算する処理、探索範囲を設定する処理と同様である。
図14のステップS22について説明する。変更部154は、新たに設定した探索範囲11Aと、人物10Bの探索範囲11Bとの重複領域11Cを特定する。
変更部154は、重複領域11Cの横幅wがw以下となるまで、または、重複領域11Cの縦幅hがh以下となるまで、速度ベクトルvの方向を変更して探索範囲11Aを再設定する処理(ステップS20〜S22)を繰り返し実行する。変更部154は、重複領域11Cの横幅wがw以下となる、または、重複領域11Cの縦幅hがh以下となる速度ベクトルが複数存在する場合には、元の速度ベクトルと、変更後の速度ベクトルとのなす角θが最小となる速度ベクトルv’を特定する。変更部154は、特定したなす角θが最小となる速度ベクトルv’に基づく探索範囲11Aを、変更後の探索範囲11Aとして確定する。
変更部154は、人物IDと、次フレームの探索範囲とを対応付けた情報を、領域特定部155に出力する。例えば、次フレームを、時刻tのフレームとする。
なお、変更部154は、類似度算出部152からフレームの時刻と、人物領域の組に対応する各人物IDと、類似度とを対応付けた情報を取得し、各人物IDの類似度が、閾値未満である場合には、下記の処理を行う。ここでは、説明の便宜上、各人物IDに対応する人物を、人物10A,10Bとする。変更部154は、時刻t−1における人物10Aの人物領域と、人物10Bの人物領域との類似度が、閾値未満である場合には、図14のステップS20〜S22に示した処理をスキップし、変更前の人物10Aの探索範囲11Aと、人物10Bの探索範囲11Bを、そのままにする。そして、変更部154は、人物IDと、次フレームの探索範囲とを対応付けた情報を、領域特定部155に出力する。
領域特定部155は、次フレームに設定された各探索範囲から人物の領域を特定する処理部である。領域特定部155は、過去フレームから得られる人物の特徴を用いることにより、同一人物の追跡を行う。ここでは説明の便宜上、時刻tのフレームに設定された人物10Aの探索範囲11Aから、人物10Aの領域を特定する場合について説明する。また、時刻tのフレームに設定された人物10Bの探索範囲11Bから、人物11Bの領域を特定する場合について説明する。
図15は、領域特定部の処理を説明するための図である。図15のステップS30について説明する。領域特定部155は、人物10Aのテンプレート12Aを、画像テーブル141および追跡テーブル142を基にして、取得する。例えば、領域特定部155は、追跡テーブル142を参照し、人物ID「10A」の時刻「t−1」に対応する人物領域の情報を取得する。図8で説明したように、人物領域の情報には、x座標、y座標、幅、高さが含まれる。続いて、領域特定部155は、画像テーブル141の時刻「t−1」のフレームから、人物10Aの人物領域の画像を抽出することで、テンプレート12Aを取得する。
同様にして、領域特定部155は、人物10Bのテンプレート12Bを、画像テーブル141および追跡テーブルを基にして、取得する。例えば、領域特定部155は、追跡テーブル142を参照し、人物ID「10B」の時刻「t−1」に対応する人物領域の情報を取得する。続いて、領域特定部155は、画像テーブル141の時刻「t−1」のフレームから、人物10Bの人物領域の画像を抽出することで、テンプレート12Bを取得する。
図15のステップS31について説明する。領域特定部155は、探索範囲11A上に、テンプレート12Aを配置して、類似度を算出する処理を、テンプレート12Aの位置を移動させながら繰り返し実行する。
例えば、領域特定部155は、探索範囲11Aのうち、テンプレートと重複する領域とテンプレートとの類似度を、式(20)により算出する。式(20)のT’(x,y)は、テンプレートT’に含まれる座標(x,y)の画素値を示す。I’(x,y)は、探索範囲のうちテンプレートと重複する領域I’に含まれる座標(x,y)の画素値を示す。hは、テンプレートT’の高さに対応する。wは、テンプレートT’の幅に対応する。
Figure 2018025988
領域特定部155は、テンプレート12Aとの比較による、最も類似度Rが大きくなる領域I’を領域13Aとする。この場合には、領域特定部155は、時刻tにおける人物10Aの人物領域13Aとして特定する。
同様にして、領域特定部155は、探索範囲11B上に、テンプレート12Bを配置して、類似度を算出する処理を、テンプレート12Bの位置を移動させながら繰り返し実行する。領域特定部155は、テンプレート12Bとの比較による、最も類似度Rが大きくなる領域I’を領域13Bとする。この場合には、領域特定部155は、時刻tにおける人物10Bの人物領域13Bとして特定する。
図15のステップS32について説明する。領域特定部155は、時刻t−1の人物10Aが、時刻tにおいて、人物領域13Aに移動したと判定する。領域特定部155は、人物ID「10A」、時刻「t」、人物領域13Aの情報、人物10Aの移動量を対応付けて、追跡テーブル142に登録する。
領域特定部155は、時刻t−1の人物10Bが、時刻tにおいて、人物領域13Bに移動したと判定する。領域特定部155は、人物ID「10B」、時刻「t」、人物領域13Bの情報、人物10Bの移動量を対応付けて、追跡テーブル142に登録する。
図6の説明に戻る。検出部156は、時刻tのフレームから人物を検出する処理部である。検出部156は、検出した人物が、追跡中の人物であるのか否かを判定し、追跡中の人物でない場合には、検出した人物の情報を、新たな追跡対象の人物として、追跡テーブル142に追加する。
図16は、検出部の処理を説明するための図である。図16のステップS40について説明する。検出部156は、画像テーブル141を参照し、時刻t−1のフレーム50aと、時刻tのフレーム50bを取得する。
図16のステップS41について説明する。検出部156は、フレーム50aとフレーム50bとの背景差分画像51を生成する。
図16のステップS42について説明する。検出部156は、HOG(Histograms of Oriented Gradients)特徴を用いて、識別器を予め生成しておく。検出部156は、識別器と背景差分画像51とを比較して、背景差分画像51に人物の領域が含まれるか否かを判定する。検出部156は、背景差分画像51に人物の領域が含まれる場合に、人物領域候補52を出力する。
図16のステップS43について説明する。検出部156は、時刻tにおける追跡中の人物の人物領域を、追跡テーブル142を基にして特定する。ここでは説明の便宜上、追跡テーブル142を基にして特定する人物領域を、人物10Aの人物領域13Aとする。検出部156は、人物領域13Aと、人物領域候補52との重複率を算出する。
検出部156は、人物領域13Aと、人物領域候補52との重複率が所定の重複率以上である場合には、人物領域候補52が、人物領域13Aに対応するものと判定し、追跡テーブル142に追加する処理をスキップする。
検出部156は、人物領域13Aと、人物領域候補52との重複率が所定の重複率未満である場合には、人物領域候補52が、人物領域13Aに対応しないと判定する。検出部156は、人物領域候補52が、追跡テーブル142の各人物領域に対応しないと判定した場合に、人物候補領域52の情報を、追跡テーブル142に新規に登録する。例えば、検出部156は、ユニークな人物IDを割り当て、人物IDと、時刻tと、人物候補領域のx座標、y座標、幅、高さを対応付けて、追跡テーブル142に登録する。
次に、本実施例に係る画像処理装置100の処理手順について説明する。図17は、本実施例に係る画像処理装置の処理手順を示すフローチャートである。図17に示すように、画像処理装置100の取得部151は、カメラ110から画像データを取得する(ステップS101)。
画像処理装置100の類似度算出部152は、類似度算出処理を実行する(ステップS102)。画像処理装置100の範囲特定部153は、位置推定処理を実行する(ステップS103)。範囲特定部153は、領域算出処理を実行する(ステップS104)。
画像処理装置100の変更部154は、位置決定処理を実行する(ステップS105)。画像処理装置100の領域特定部155は、人物追跡処理を実行する(ステップS106)。画像処理装置100の検出部156は、人物検出処理を実行する(ステップS107)。
画像処理装置100の制御部150は、処理結果を出力する(ステップS108)。画像処理装置100は、処理を継続するか否かを判定する(ステップS109)。画像処理装置100は、処理を継続する場合には(ステップS109,Yes)、ステップS101に移行する。画像処理装置100は、処理を継続しない場合には(ステップS109,No)、処理を終了する。
図17のステップS102に示した類似度算出処理について説明する。図18は、類似度算出処理の処理手順を示すフローチャートである。図18に示すように、類似度算出部152は、画像テーブル141および追跡テーブル142に基づき人物領域を特定する(ステップS201)。
類似度算出部152は、画像テーブル141および追跡テーブル142に基づき別の人物領域を特定する(ステップS202)。類似度算出部152は、各人物領域同士の類似度を算出する(ステップS203)。
類似度算出部152は、類似度を算出していない人物領域の組み合わせが存在するか否かを判定する(ステップS204)。類似度算出部152は、類似度を算出していない人物領域の組み合わせが存在する場合には(ステップS204,Yes)、ステップS201に移行する。一方、類似度算出部152は、類似度を算出していない人物領域の組み合わせが存在しない場合には(ステップS204,No)、類似度算出処理を終了する。
図17のステップS103に示した位置推定処理について説明する。図19は、位置推定処理の処理手順を示すフローチャートである。図19に示すように、範囲特定部153は、過去のフレームにて、得られた同一人物の人物領域が2以上であるか否かを判定する(ステップS251)。範囲特定部153は、過去のフレームにて、得られた同一人物の人物領域が2以上でない場合には(ステップS251,No)、ステップS255に移行する。一方、範囲特定部153は、過去のフレームにて、得られた同一人物の人物領域が2以上である場合には(ステップS251,Yes)、ステップS252に移行する。
範囲特定部153は、過去の2フレームにおける人物の各位置座標を特定する(ステップS252)。範囲特定部153は、各位置座標を用いて、人物の移動量(速度ベクトル)を算出する(ステップS253)。
範囲特定部153は、人物の位置座標を推定する(ステップS254)。例えば、範囲特定部153は、時刻t−2、時刻t−1の人物の位置座標を基にして、速度ベクトルを算出し、時刻tの人物の位置座標を推定する。
範囲特定部153は、位置座標の推定を行っていない人物が存在するか否かを判定する(ステップS255)。範囲特定部153は、位置座標の推定を行っていない人物が存在する場合には(ステップS255,Yes)、ステップS251に移行する。一方、範囲特定部153は、位置座標の推定を行っていない人物が存在しない場合には(ステップS255,No)、位置推定処理を終了する。
図17のステップS104に示した領域算出処理について説明する。図20は、領域算出処理の処理手順を示すフローチャートである。図20に示すように、範囲特定部153は、推定した次フレーム(時刻tのフレーム)の人物の位置座標を取得する(ステップS301)。範囲特定部153は、推定した人物の位置座標を基に人物の探索範囲を設定する(ステップS302)。
範囲特定部153は、探索範囲を設定していない人物が存在するか否かを判定する(ステップS303)。範囲特定部153は、探索範囲を設定していない人物が存在する場合には(ステップS303,Yes)、ステップS301に移行する。範囲特定部153は、探索範囲を設定していない人物が存在しない場合には(ステップS303,No)、領域算出処理を終了する。
図17のステップS105に示した位置決定処理について説明する。図21は、位置決定処理の処理手順を示すフローチャートである。図21に示すように、変更部154は、追跡対象の人物の移動量(速度ベクトル)、探索範囲の情報を取得する(ステップS351)。変更部154は、別の人物の移動量(速度ベクトル)、探索範囲の情報を取得する(ステップS352)。
変更部154は、人物の移動方向が等しい、または、前方に位置する人物の移動量が0であるかを判定する(ステップS353)。変更部154は、人物の移動方向が等しい、または、前方に位置する人物の移動量が0である場合には(ステップS353,Yes)ステップS354に移行する。一方、変更部154は、人物の移動方向が等しくない場合、または、前方に位置する人物の移動量が0でない場合には(ステップS353,No)、ステップS357に移行する。
変更部154は、探索範囲の重複領域が人物領域の大きさ以上であるか否かを判定する(ステップS354)。変更部154は、探索範囲の重複領域が人物領域の大きさ以上である場合には(ステップS354,Yes)、ステップS355に移行する。一方、変更部154は、探索範囲の重複領域が人物領域の大きさ以上でない場合には(ステップS354,No)、ステップS357に移行する。
変更部154は、人物の移動方向を変更して人物の位置座標および探索範囲を推定する(ステップS355)。変更部154は、重複領域が人物領域の大きさ以上であるか否かを判定する(ステップS356)。変更部154は、重複領域が人物領域の大きさ以上である場合には(ステップS356,Yes)、ステップS354に移行する。
変更部154は、重複領域が人物領域の大きさ以上でない場合には(ステップS356,No)、人物の探索範囲として固定する(ステップS357)。ステップS357において、変更部154は、ステップS356の条件がNoとなる変更後の速度ベクトルのうち、変更前の速度ベクトルと変更後の速度ベクトルとのなす角θが最小となる速度ベクトルに基づく探索範囲を、変更後の探索範囲として固定する。
変更部154は、追跡対象の他の人物が存在するか否かを判定する(ステップS358)。変更部154は、追跡対象の他の人物が存在する場合には(ステップS358,Yes)、ステップS351に移行する。変更部154は、追跡対象の他の人物が存在しない場合には(ステップS358,No)、位置決定処理を終了する。
図17のステップS106に示した人物追跡処理について説明する。図22は、人物追跡処理の処理手順を示すフローチャートである。図22に示すように、領域特定部155は、人物領域のテンプレートを取得する(ステップS401)。
領域特定部155は、人物領域のテンプレートを用いて、探索範囲内を走査し、類似度を算出する(ステップS402)。領域特定部155は、探索範囲内で類似度が最も高い領域を人物領域として特定する(ステップS403)。
領域特定部155は、追跡テーブル142を更新する(ステップS404)。領域特定部155は、追跡処理を行っていない人物が存在するか否かを判定する(ステップS405)。領域特定部155は、追跡処理を行っていない人物が存在する場合には(ステップS405,Yes)、ステップS401に移行する。領域特定部155は、追跡処理を行っていない人物が存在する場合には(ステップS405,No)、人物追跡処理を終了する。
図17のステップS107に示した人物検出処理について説明する。図23は、人物検出処理の処理手順を示すフローチャートである。図23に示すように、検出部156は、背景差分画像を求める(ステップS451)。検出部156は、HOG特徴を用いて識別器を予め作成する(ステップS452)。
検出部156は、背景差分画像に人物候補領域が含まれるか否かを識別器を用いて判定する(ステップS453)。検出部156は、人物と判定された人物候補領域を特定する(ステップS454)。
検出部156は、人物領域候補と人物追跡処理で得られた人物領域との重複率が閾値以上であるか否かを判定する(ステップS455)。検出部156は、人物領域候補と人物追跡処理で得られた人物領域との重複率が閾値以上でない場合には(ステップS455,No)、新たに現れた人物として人物領域候補の情報を追跡テーブル142に新規登録する(ステップS456)。
一方、検出部156は、人物領域候補と人物追跡処理で得られた人物領域との重複率が閾値以上である場合には(ステップS455,Yes)、人物検出処理を終了する。
次に、本実施例に係る画像処理装置100の効果について説明する。画像処理装置100は、第1の人物の第1探索範囲と、第2の人物の第2探索範囲との重なる面積が、所定値以上の場合には、重なる面積が所定値未満となるように、第1探索範囲、及び/または第2探索範囲を変更する。そして、画像処理装置100は、次フレームの第1探索範囲から第1の人物の領域を特定し、次フレームの第2探索範囲から第2の人物の領域を特定する。このため、対象物の位置の誤判定を低減することができる。
画像処理装置100は、過去フレームにおける第1の人物の移動履歴を基にして、第1の速度ベクトルを算出することで、第1の探索範囲を特定する。また、画像処理装置100は、過去フレームにおける第2の人物の移動履歴を基にして、第2の速度ベクトルを算出することで、第2の探索を特定する。これにより、第1の人物および第2の人物の位置を簡易的な方法で、算出することができる。
画像処理装置100は、速度ベクトルの方向を変更しつつ、第1の探索範囲と第2の探索範囲とが重なる面積を特定し、重なる面積が所定値未満となる条件を満たす範囲内で速度ベクトルの方向の変更量が最小となる変更量を特定する。画像処理装置100は、特定した変更量だけ速度ベクトルの方向を変更し、次フレームでの第1の探索範囲を変更する。これにより、追い抜く人物の探索範囲と、追い抜かれる人物の探索範囲との重複範囲が、人物領域よりも小さくなり、人物の入れ替わりを抑止できるので、適切に追跡処理を実行することができる。
画像処理装置100は、過去フレームに含まれる第1の人物の特徴と、第2の人物の特徴との類似度が閾値以上である場合に、次フレームにおける探索範囲の変更を行う。第1の人物の特徴と第2の人物の特徴とが類似している場合にのみ、上記のような入れ替わりが発生するため、特徴が類似していない場合には、次フレームにおける探索範囲を変更する処理をスキップして、処理負荷を減らすことができる。
画像処理装置100は、第1の人物の移動方向と、第2の人物の移動方向とが略同一である場合に、次フレームでの第1の範囲における探索範囲の変更を行う。ここで、第1の人物の移動方向と、第2の人物の移動方向とが略同一でなければ各探索領域が重複する場合がないため、探索範囲の変更を行うか否かの処理をスキップすることで、処理負荷を減らすことができる。
なお、本実施例では一例として、カメラ110に撮影される人物を追跡する場合について説明したが、これに限定されるものではなく、車両や動物などの移動体についても同様に適用することができる。
次に、上記実施例に示した画像処理装置100と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図24は、コンピュータのハードウェア構成の一例を示す図である。
図24に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203とを有する。また、コンピュータ200は、記憶媒体からプログラム等を読み取る読み取り装置204と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインタフェース装置205とを有する。また、コンピュータ200は、カメラ206を有する。また、コンピュータ200は、各種情報を一時記憶するRAM207と、ハードディスク装置208とを有する。そして、各装置201〜208は、バス209に接続される。
ハードディスク装置208は、取得プログラム208a、類似度算出プログラム208b、範囲特定プログラム208c、変更プログラム208d、領域特定プログラム208e、検出プログラム208fを有する。CPU201は、取得プログラム208a、類似度算出プログラム208b、範囲特定プログラム208c、変更プログラム208d、領域特定プログラム208e、検出プログラム208fを読み出してRAM207に展開する。
取得プログラム208aは、取得プロセス207aとして機能する。類似度算出プログラム208bは、類似度算出プロセス207bとして機能する。範囲特定プログラム208cは、範囲特定プロセス207cとして機能する。変更プログラム208dは、変更プロセス207dとして機能する。領域特定プログラム208eは、領域特定プロセス207eとして機能する。検出プログラム208fは、検出プロセス207fとして機能する。
例えば、取得プロセス207aの処理は、取得部151の処理に対応する。類似度算出プロセス207bの処理は、類似度算出部152の処理に対応する。範囲特定プロセス207cの処理は、範囲特定部153の処理に対応する。変更プロセス207dの処理は、変更部154の処理に対応する。領域特定プロセス207eの処理は、領域特定部155の処理に対応する。検出プロセス207fの処理は、検出部156の処理に対応する。
なお、各プログラム208a〜208fについては、必ずしも最初からハードディスク装置208に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200が各プログラム208a〜208fを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータに、
撮像装置を用いて撮像されたフレームから第1の対象物に対応する第1の領域と、第2の対象物に対応する第2の領域とを抽出した場合に、前記撮像装置によって撮像された過去フレームを記憶する記憶部を参照して、次フレームで前記第1の対象物を探索する第1の範囲と、前記第2の対象物を探索する第2の範囲を特定し、
前記次フレームで特定した前記第1の範囲と前記第2の範囲とが重なる面積が所定値以上の場合には、重なる面積が前記所定値未満となるように、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更し、
変更後の第1の範囲と第2の範囲を探索して、前記次フレームでの前記第1の対象物に対応する領域と前記第2の対象物に対応する領域を特定する
処理を実行させることを特徴とする画像処理プログラム。
(付記2)前記範囲を特定する処理は、前記過去フレームにおける前記第1の対象物の移動履歴を基にして、第1の速度ベクトルを算出することで、前記第1の範囲を特定し、前記過去フレームにおける前記第2の対象物の移動履歴を基にして、第2の速度ベクトルを算出することで、前記第2の範囲を特定することを特徴とする付記1に記載の画像処理プログラム。
(付記3)前記範囲を変更する処理は、前記第1の速度ベクトルの方向を変更しつつ、前記第1の範囲と前記第2の範囲とが重なる面積を特定し、前記重なる面積が前記所定値未満となる条件を満たす範囲内で前記第1の速度ベクトルの方向の変更量が最小となる変更量を特定し、特定した変更量だけ前記第1の速度ベクトルの方向を変更することで、前記次フレームでの前記第1の範囲を変更することを特徴とする付記2に記載の画像処理プログラム。
(付記4)前記範囲を変更する処理は、前記過去フレームに含まれる前記第1の対象物の第1の特徴と、前記第2の対象物の第2の特徴との類似度が閾値以上である場合に、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更することを特徴とする付記1、2または3に記載の画像処理プログラム。
(付記5)前記範囲を変更する処理は、前記第1の対象物の移動方向と、前記第2の対象物の移動方向とが略同一である場合に、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更することを特徴とする付記1〜4のいずれか一つに記載の画像処理プログラム。
(付記6)コンピュータが実行する画像処理方法であって、
撮像装置を用いて撮像されたフレームから第1の対象物に対応する第1の領域と、第2の対象物に対応する第2の領域とを抽出した場合に、前記撮像装置によって撮像された過去フレームを記憶する記憶部を参照して、次フレームで前記第1の対象物を探索する第1の範囲と、前記第2の対象物を探索する第2の範囲を特定し、
前記次フレームで特定した前記第1の範囲と前記第2の範囲とが重なる面積が所定値以上の場合には、重なる面積が前記所定値未満となるように、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更し、
変更後の第1の範囲と第2の範囲を探索して、前記次フレームでの前記第1の対象物に対応する領域と前記第2の対象物に対応する領域を特定する
処理を実行することを特徴とする画像処理方法。
(付記7)前記範囲を特定する処理は、前記過去フレームにおける前記第1の対象物の移動履歴を基にして、第1の速度ベクトルを算出することで、前記第1の範囲を特定し、前記過去フレームにおける前記第2の対象物の移動履歴を基にして、第2の速度ベクトルを算出することで、前記第2の範囲を特定することを特徴とする付記6に記載の画像処理方法。
(付記8)前記範囲を変更する処理は、前記第1の速度ベクトルの方向を変更しつつ、前記第1の範囲と前記第2の範囲とが重なる面積を特定し、前記重なる面積が前記所定値未満となる条件を満たす範囲内で前記第1の速度ベクトルの方向の変更量が最小となる変更量を特定し、特定した変更量だけ前記第1の速度ベクトルの方向を変更することで、前記次フレームでの前記第1の範囲を変更することを特徴とする付記7に記載の画像処理方法。
(付記9)前記範囲を変更する処理は、前記過去フレームに含まれる前記第1の対象物の第1の特徴と、前記第2の対象物の第2の特徴との類似度が閾値以上である場合に、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更することを特徴とする付記6、7または8に記載の画像処理方法。
(付記10)前記範囲を変更する処理は、前記第1の対象物の移動方向と、前記第2の対象物の移動方向とが略同一である場合に、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更することを特徴とする付記6〜9のいずれか一つに記載の画像処理方法。
(付記11)撮像装置を用いて撮像されたフレームから第1の対象物に対応する第1の領域と、第2の対象物に対応する第2の領域とを抽出した場合に、前記撮像装置によって撮像された過去フレームを記憶する記憶部を参照して、次フレームで前記第1の対象物を探索する第1の範囲と、前記第2の対象物を探索する第2の範囲を特定する範囲特定部と、
前記次フレームで特定した前記第1の範囲と前記第2の範囲とが重なる面積が所定値以上の場合には、重なる面積が前記所定値未満となるように、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更する変更部と、
変更後の第1の範囲と第2の範囲で探索して、前記次フレームでの前記第1の対象物に対応する領域と前記第2の対象物に対応する領域を特定する領域特定部と
を有することを特徴とする画像処理装置。
(付記12)前記変更部は、前記過去フレームにおける前記第1の対象物の移動履歴を基にして、第1の速度ベクトルを算出することで、前記第1の範囲を特定し、前記過去フレームにおける前記第2の対象物の移動履歴を基にして、第2の速度ベクトルを算出することで、前記第2の範囲を特定することを特徴とする付記11に記載の画像処理装置。
(付記13)前記変更部は、前記第1の速度ベクトルの方向を変更しつつ、前記第1の範囲と前記第2の範囲とが重なる面積を特定し、前記重なる面積が前記所定値未満となる条件を満たす範囲内で前記第1の速度ベクトルの方向の変更量が最小となる変更量を特定し、特定した変更量だけ前記第1の速度ベクトルの方向を変更することで、前記次フレームでの前記第1の範囲を変更することを特徴とする付記12に記載の画像処理装置。
(付記14)前記変更部は、前記過去フレームに含まれる前記第1の対象物の第1の特徴と、前記第2の対象物の第2の特徴との類似度が閾値以上である場合に、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更することを特徴とする付記11、12または13に記載の画像処理装置。
(付記15)前記変更部は、前記第1の対象物の移動方向と、前記第2の対象物の移動方向とが略同一である場合に、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更することを特徴とする付記11〜14のいずれか一つに記載の画像処理装置。
100 画像処理装置
110 カメラ
120 入力装置
130 表示装置
140 記憶部
141 画像テーブル
142 追跡テーブル
143 予測誤差データ
150 制御部
151 取得部
152 類似度算出部
153 範囲特定部
154 変更部
155 領域特定部
156 検出部

Claims (7)

  1. コンピュータに、
    撮像装置を用いて撮像されたフレームから第1の対象物に対応する第1の領域と、第2の対象物に対応する第2の領域とを抽出した場合に、前記撮像装置によって撮像された過去フレームを記憶する記憶部を参照して、次フレームで前記第1の対象物を探索する第1の範囲と、前記第2の対象物を探索する第2の範囲を特定し、
    前記次フレームで特定した前記第1の範囲と前記第2の範囲とが重なる面積が所定値以上の場合には、重なる面積が前記所定値未満となるように、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更し、
    変更後の第1の範囲と第2の範囲を探索して、前記次フレームでの前記第1の対象物に対応する領域と前記第2の対象物に対応する領域を特定する
    処理を実行させることを特徴とする画像処理プログラム。
  2. 前記範囲を特定する処理は、前記過去フレームにおける前記第1の対象物の移動履歴を基にして、第1の速度ベクトルを算出することで、前記第1の範囲を特定し、前記過去フレームにおける前記第2の対象物の移動履歴を基にして、第2の速度ベクトルを算出することで、前記第2の範囲を特定することを特徴とする請求項1に記載の画像処理プログラム。
  3. 前記範囲を変更する処理は、前記第1の速度ベクトルの方向を変更しつつ、前記第1の範囲と前記第2の範囲とが重なる面積を特定し、前記重なる面積が前記所定値未満となる条件を満たす範囲内で前記第1の速度ベクトルの方向の変更量が最小となる変更量を特定し、特定した変更量だけ前記第1の速度ベクトルの方向を変更することで、前記次フレームでの前記第1の範囲を変更することを特徴とする請求項2に記載の画像処理プログラム。
  4. 前記範囲を変更する処理は、前記過去フレームに含まれる前記第1の対象物の第1の特徴と、前記第2の対象物の第2の特徴との類似度が閾値以上である場合に、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更することを特徴とする請求項1、2または3に記載の画像処理プログラム。
  5. 前記範囲を変更する処理は、前記第1の対象物の移動方向と、前記第2の対象物の移動方向とが略同一である場合に、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更することを特徴とする請求項1〜4のいずれか一つに記載の画像処理プログラム。
  6. コンピュータが実行する画像処理方法であって、
    撮像装置を用いて撮像されたフレームから第1の対象物に対応する第1の領域と、第2の対象物に対応する第2の領域とを抽出した場合に、前記撮像装置によって撮像された過去フレームを記憶する記憶部を参照して、次フレームで前記第1の対象物を探索する第1の範囲と、前記第2の対象物を探索する第2の範囲を特定し、
    前記次フレームで特定した前記第1の範囲と前記第2の範囲とが重なる面積が所定値以上の場合には、重なる面積が前記所定値未満となるように、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更し、
    変更後の第1の範囲と第2の範囲を探索して、前記次フレームでの前記第1の対象物に対応する領域と前記第2の対象物に対応する領域を特定する
    処理を実行することを特徴とする画像処理方法。
  7. 撮像装置を用いて撮像されたフレームから第1の対象物に対応する第1の領域と、第2の対象物に対応する第2の領域とを抽出した場合に、前記撮像装置によって撮像された過去フレームを記憶する記憶部を参照して、次フレームで前記第1の対象物を探索する第1の範囲と、前記第2の対象物を探索する第2の範囲を特定する範囲特定部と、
    前記次フレームで特定した前記第1の範囲と前記第2の範囲とが重なる面積が所定値以上の場合には、重なる面積が前記所定値未満となるように、前記次フレームでの前記第1の範囲、及び/または前記第2の範囲を変更する変更部と、
    変更後の第1の範囲と第2の範囲を探索して、前記次フレームでの前記第1の対象物に対応する領域と前記第2の対象物に対応する領域を特定する領域特定部と
    を有することを特徴とする画像処理装置。
JP2016157702A 2016-08-10 2016-08-10 画像処理プログラム、画像処理方法および画像処理装置 Active JP6750385B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016157702A JP6750385B2 (ja) 2016-08-10 2016-08-10 画像処理プログラム、画像処理方法および画像処理装置
US15/652,734 US10297040B2 (en) 2016-08-10 2017-07-18 Image processing method, image processing apparatus and medium storing image processing program
CN201710638817.5A CN107730533B (zh) 2016-08-10 2017-07-31 图像处理方法、图像处理设备和存储图像处理程序的介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016157702A JP6750385B2 (ja) 2016-08-10 2016-08-10 画像処理プログラム、画像処理方法および画像処理装置

Publications (2)

Publication Number Publication Date
JP2018025988A true JP2018025988A (ja) 2018-02-15
JP6750385B2 JP6750385B2 (ja) 2020-09-02

Family

ID=61159234

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016157702A Active JP6750385B2 (ja) 2016-08-10 2016-08-10 画像処理プログラム、画像処理方法および画像処理装置

Country Status (3)

Country Link
US (1) US10297040B2 (ja)
JP (1) JP6750385B2 (ja)
CN (1) CN107730533B (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10824878B2 (en) * 2016-03-08 2020-11-03 Accuware, Inc. Method and arrangement for receiving data about site traffic derived from imaging processing
CN112534473A (zh) * 2018-08-22 2021-03-19 日立汽车系统株式会社 图像处理装置以及图像处理方法
CN111127508B (zh) * 2018-10-31 2023-05-02 杭州海康威视数字技术股份有限公司 一种基于视频的目标跟踪方法及装置
US11507768B2 (en) * 2019-07-04 2022-11-22 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium
US11640701B2 (en) * 2020-07-31 2023-05-02 Analog Devices International Unlimited Company People detection and tracking with multiple features augmented with orientation and size based classifiers

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008112210A (ja) * 2006-10-27 2008-05-15 Matsushita Electric Works Ltd 自動追尾方法
JP2009048428A (ja) * 2007-08-20 2009-03-05 Secom Co Ltd 移動物体追跡装置
JP2011180684A (ja) * 2010-02-26 2011-09-15 Secom Co Ltd 移動物体追跡装置
JP2012108798A (ja) * 2010-11-18 2012-06-07 Secom Co Ltd 移動物体追跡装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004094518A (ja) 2002-08-30 2004-03-25 Oki Electric Ind Co Ltd 人物追跡装置、人物追跡方法及びプログラム
JP2008026974A (ja) 2006-07-18 2008-02-07 Mitsubishi Electric Corp 人物追跡装置
EP1916538A3 (en) 2006-10-27 2011-02-16 Panasonic Electric Works Co., Ltd. Target moving object tracking device
JP2009071689A (ja) * 2007-09-14 2009-04-02 Sony Corp 画像処理装置、画像処理方法および撮像装置
CN101807300B (zh) * 2010-03-05 2012-07-25 北京智安邦科技有限公司 一种目标碎片区域融合的方法及装置
KR101355974B1 (ko) * 2010-08-24 2014-01-29 한국전자통신연구원 복수의 객체를 추적하는 객체 추적 방법 및 장치
US9165369B1 (en) * 2013-03-14 2015-10-20 Hrl Laboratories, Llc Multi-object detection and recognition using exclusive non-maximum suppression (eNMS) and classification in cluttered scenes
US9589595B2 (en) * 2013-12-20 2017-03-07 Qualcomm Incorporated Selection and tracking of objects for display partitioning and clustering of video frames
CN103903282A (zh) * 2014-04-08 2014-07-02 陕西科技大学 一种基于LabVIEW的目标跟踪方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008112210A (ja) * 2006-10-27 2008-05-15 Matsushita Electric Works Ltd 自動追尾方法
JP2009048428A (ja) * 2007-08-20 2009-03-05 Secom Co Ltd 移動物体追跡装置
JP2011180684A (ja) * 2010-02-26 2011-09-15 Secom Co Ltd 移動物体追跡装置
JP2012108798A (ja) * 2010-11-18 2012-06-07 Secom Co Ltd 移動物体追跡装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
宮野 博義: "追跡対象数の変動を確率的に考慮した擬似独立な複数物体追跡", 情報処理学会 画像の認識・理解シンポジウム (MIRU 2011), vol. IS2-42, JPN6020024885, 20 July 2011 (2011-07-20), JP, pages 786 - 793, ISSN: 0004305171 *

Also Published As

Publication number Publication date
CN107730533B (zh) 2021-10-12
US20180047181A1 (en) 2018-02-15
CN107730533A (zh) 2018-02-23
JP6750385B2 (ja) 2020-09-02
US10297040B2 (en) 2019-05-21

Similar Documents

Publication Publication Date Title
CN107730533B (zh) 图像处理方法、图像处理设备和存储图像处理程序的介质
US11037325B2 (en) Information processing apparatus and method of controlling the same
US9639759B2 (en) Video processing apparatus and video processing method
US9953225B2 (en) Image processing apparatus and image processing method
US10636165B2 (en) Information processing apparatus, method and non-transitory computer-readable storage medium
US20150169956A1 (en) Object tracking method and device
US20130129144A1 (en) Apparatus and method for detecting object using ptz camera
JP2018503200A (ja) 水体におけるオブジェクトを識別し、追跡し、かつ/あるいは、標的にするために一連の画像を処理する方法およびシステム
US10600190B2 (en) Object detection and tracking method and system for a video
JP2007280043A (ja) 映像監視検索システム
US20130088426A1 (en) Gesture recognition device, gesture recognition method, and program
US10861185B2 (en) Information processing apparatus and method of controlling the same
KR20120044484A (ko) 이미지 처리 시스템에서 물체 추적 장치 및 방법
JP2020149111A (ja) 物体追跡装置および物体追跡方法
JP7438684B2 (ja) 画像処理装置、画像処理方法、及びプログラム
TWI547887B (zh) 用以利用積分梯度投影作臉部追蹤之方法、裝置與電腦程式
JP2013215549A (ja) 画像処理装置、画像処理プログラムおよび画像処理方法
JP2012113414A (ja) 部位検出装置、部位検出方法、及びプログラム
CN112966654A (zh) 唇动检测方法、装置、终端设备及计算机可读存储介质
KR20100041172A (ko) 영상 추적 장치의 이동표적 움직임 추적 방법
JP2018092354A (ja) 物体検出装置および物体検出方法
JP2016021097A (ja) 画像処理装置、画像処理方法、およびプログラム
JP2018036901A (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP6787075B2 (ja) 画像処理システム、画像処理装置および画像処理方法
JP2013152537A (ja) 情報処理装置および方法、並びにプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200626

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200727

R150 Certificate of patent or registration of utility model

Ref document number: 6750385

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150