《Learning Patterns of Activity Using Real-Time Tracking》
Goals:
- Self-calibration: determine the positions of all the cameras relative to one another;
- Construction of rough site models: determine the ground plane and mark occupied areas;
- Detect objects in the site: extract information about all moving objects in the site;
- Classify detected objects: label detected objects by common shape, appearance, or motion;
- Learn from extended observation: what are the common activity patterns;
- Detect unusual events in the site: mark activities that don’t fit common patterns.
Problems:
- Cluttered areas
- Objects overlapping
- Shadows
- Lighting changes
- Moving elements of the scene
- Slow-moving
- Objects introduce or remove
Relate Work
- Maximum interframe difference[^1]
- Adaptive Gaussian statistical model[^2]
- Disparity verification[3][4]
- Kalman Filter[^5]
- Multiclass statistical model[^6]
- GMM[^7]
Approach
Parameters
- the learning constant α \alpha α
- the proportion of the data T T T
Gaussian Distributions
P ( X t ) = ∑ i = 1 K w i , t ∗ η ( X t , μ i , t , Σ i , t ) P(X_t)=\sum^K_{i=1}w_{i,t}*\eta(X_t,\mu_{i,t},\Sigma_{i,t}) P(Xt)=i=1∑Kwi,t∗η(Xt,μi,t,Σi,t)
- 模型参数:
K K K is the number of distributions, w i , t w_{i,t} wi,t is an estimate of the weight (the portion of the data accounted for by this Gaussian) , η \eta η is a Gaussian probability density function. - 计算简化:
K K K=3~5; Σ k , t = σ k 2 I \Sigma_{k,t}=\sigma^2_kI Σk,t=σk2I; EM → \rightarrow →K-Means - 模型匹配:
阈值:2.5 σ \sigma σ (不同分布阈值不同)
If none of the K K K distributions match the current pixel value, the least probable distribution is replaced with a distribution with the current value as its mean value, an initially high variance, and low prior weight. - 模型更新
- 权重更新: w k , t = ( 1 − α ) w k , t − 1 + α ( M k , t ) w_{k,t}=(1-\alpha)w_{k,t-1}+\alpha(M_{k,t}) wk,t=(1−α)wk,t−1+α(Mk,t)
- 参数更新: μ t = ( 1 − ρ ) μ t − 1 + ρ X t , σ t 2 = ( 1 − ρ ) σ t − 1 2 + ρ ( X t − μ t ) T ( X t − μ t ) , ρ = α η ( X t ∣ μ k , σ k ) \mu_t=(1-\rho)\mu_{t-1}+\rho{X_t},\sigma^2_t=(1-\rho)\sigma^2_{t-1}+\rho(X_t-\mu_t)^T(X_t-\mu_t),\rho=\alpha\eta(X_t|\mu_k,\sigma_k) μt=(1−ρ)μt−1+ρXt,σt2=(1−ρ)σt−12+ρ(Xt−μt)T(Xt−μt),ρ=αη(Xt∣μk,σk)
- 背景估计:
Most supporting evidence and the least variance, listed by w / σ w/\sigma w/σ.
B = arg min b ( ∑ k = 1 b w k > T ) B={\arg\min}_b(\sum^b_{k=1}w_k>T) B=argminb(k=1∑bwk>T)
Tracker (frame):
- 连通分支[^8]:Determine the whole moving object, and character their position, size, moments, and other shape information.
- 卡尔曼模型池 + 连通分支池
- 模型依概率匹配到连通域
- 误差较小的匹配用于更新对应模型
- 更新后的模型如果具备足够的适合度,应用到下一帧
- 无法匹配的连通域搜索并建立新的卡尔曼模型
- 使用前两帧不匹配的连通分支建立新模型
- 使用当前帧和前两帧中未匹配的模型假设新模型
- 如果没有模型匹配为空,则进行常数弱化传播
- 去除适应度(预测误差的方差倒数)低于阈值的模型
- 跟踪单个对象的连续序列,发生交互停止跟踪
- 删除可能性最低模型防止组合爆炸