youtube:https://www.youtube.com/watch?v=O3PtbKjvNK0
ICRA2020,京东农牧美国团队的作品
论文提出了一个自底向上的猪只身体关键点检测方法,非常类似openpose。然后是一个基于匈牙利算法的不同时刻猪只匹配问题。最后基于空间敏感时序响应(STRF)进行猪只计数。
主要贡献:
- 在大量聚集的房屋中的猪只点数的传感器硬件配置被提出。
- 一个新颖的自下而上的猪只关键点检测算法被提出,解决了检测中的高IOU问题,遮挡问题,形变问题。
- 基于空间敏感时序响应(STRF)算法被提出,解决了跟踪和猪只运动造成的误检问题。
- 一个高效的猪只点数的整体流程被提出,并且在嵌入式设备取得了非常快的速度表现。
整体流程:
小车跑一圈后,就可以收集到视频,把视频离线保存下来。对于每一帧图片,经过关键点检测的网络,得到特征图和方向向量场,然后基于贪心算法组合为关键点骨架。最终基于STRF得到最终的猪只数目。整个过程是离线处理,效果很好,速度很慢。
高IOU问题:
基于坐标轴对齐的正框,不能解决高IOU的问题。但是本文的基于关键点的方法,则完全可以避免这个问题。
关键点网络结构:
网络输入大小为352*640,整体结构先进行下采样,再进行上采样。输出大小和输入大小一样。
网络的输出包括2个部分,关键点的特征图和关键点的偏移向量。
其中关键点的特征图包含4个通道,1个红色点+2个绿色点+2个蓝色点+背景,组成了4个通道。本质就是基于每一个pixel的分类问题,训练loss为交叉熵loss。
关键点偏移的特征图包含2个通道,分别表示x,y的偏移。
G0(x) 表示关键点的mask,关键点位置为1,背景位置为0,
U(x) 表示网络的预测
V (x) 表示ground truth,
关键点跟踪:
关键点跟踪问题,本质是一个二分图匹配问题(bipartite graph matching),最终通过匈牙利算法解决。
Ct-1j 表示,第j头猪在t-1时刻的候选,
Cit表示,第i头猪在t时刻的候选,
Ψ 表示Ct-1j和Cit的相似性,
Ψ由关键点的相似性ΨA和空间距离的相似性ΨL组成,
其中,关键点的相似性ΨA,通过关键点检测网络的上采样的前一层的特征作为关键点的特征。
空间距离的相似性ΨL,基于猪只中心点的L2距离得到。
STRF:
STRF将一个图片水平分为激活区域和非激活区域,非激活区域表示已经计入总的猪只个数的区域,激活区域表示还未计入总的猪只个数的区域。激活区域经过激活扫描线,就变为非激活区域。
使用STRF算法,大大的避免了误检问题。
实验结果:
关键点检测结果,
点数结果,
总结:
- 一种基于视频的离线的猪只点数方法,速度较慢,效果非常不错。