论文链接:
https://arxiv.org/pdf/1904.07850.pdf.
1 Background and Motivation
目标检测为许多计算机视觉任务提供动力,比如实例分割、姿态估计、跟踪和动作识别等。它在监视、自动驾驶和视觉问题回答等下游方面都有应用。
当前的物体检测器通过紧密围绕物体的与轴对齐的bounding box 表示每个物体。然后,它们将目标检测减少为对大量潜在目标bounding box的图像分类。对与每个bounding box,分类器决定这个图像的内容属于前景还是背景。大多数成功的目标检测器大概列出了潜在对象位置的详尽列表,并对其进行分类。 这是浪费,低效的,并且需要额外的后处理。
作者提出了一个简单有效的方法,即通过目标bounding box 的一个中心点来表示目标。其他的性质,如:物体大小、维度、3D范围、方向和姿态可以根据中心点位置的图像特征直接回归得到。因此目标检测问题变成了一个标准的关键点估计问题。作者通过把图像输入到全卷积网络中来获得热力图,热力图的峰值就是对应的目标中心,根据每个峰值的图像特征就可以预测出物体bounding box尺寸。这个方法可以扩展到很多其他任务上。 通过预测每个中心点的额外输出,作者还提供了3D目标检测和多人人类姿态估计的实验。 对于3Dbounding box估计,作者回归到对象的绝对深度,3Dbounding box尺寸和物体方向。 为了进行人类姿态估计,作者将2D关节位置视为距中心的offsets,并在中心点位置直接回归到它们。
作者提出的的基于中心点的方法CenterNet与相应的基于bounding box的检测器相比,是end-to-end可区分的,更简单,更快,更准确的。
2 Advantages/Contributions
提出基于 center point 的one-stage目标检测的方法——Objects as Points(CenterNet) ,充分挖掘和利用中心点的特征,快速精确的实现了目标检测!
3 Method
让
(
x
1
k
,
y
1
k
,
x
2
k
,
y
2
k
)
\left ( x_{1}^{k},y_{1}^{k},x_{2}^{k},y_{2}^{k} \right )
(x1k,y1k,x2k,y2k)为类别为
c
k
c_{k}
ck的目标
c
c
c的bounding box,则它的中心点为
(
x
1
k
+
x
2
k
2
,
y
1
k
+
y
2
k
2
)
\left ( \frac{x_{1}^{k}+x_{2}^{k}}{2},\frac{y_{1}^{k}+y_{2}^{k}}{2} \right )
(2x1k+x2k,2y1k+y2k)。让
I
∈
R
W
×
H
×
3
I\in R^{W\times H\times 3}
I∈RW×H×3是高为
H
H
H,宽唯
W
W
W的输入图像,则 keypoint heatmap
Y
^
∈
[
0
,
1
]
W
R
×
H
R
×
C
\hat{Y}\in \left [ 0,1 \right ]^{\frac{W}{R}\times \frac{H}{R}\times C}
Y^∈[0,1]RW×RH×C,其中
R
R
R是output stride,
C
C
C是关键点类型的数量。作者使用
Y
^
\hat{Y}
Y^去预测所有中心点。对于每个目标
k
k
k回归目标大小为
s
k
=
(
x
2
k
−
x
1
k
,
y
2
k
−
y
1
k
)
s_{k}=\left ( x_{2}^{k}-x_{1}^{k}, y_{2}^{k}-y_{1}^{k}\right )
sk=(x2k−x1k,y2k−y1k)。为了减小计算量,对于所有的类别都使用一个大小
S
^
∈
R
W
R
×
H
R
×
2
\hat{S}\in R^{\frac{W}{R}\times \frac{H}{R}\times 2}
S^∈RRW×RH×2。
对于center point 使用
L
1
L_{1}
L1loss:
L
s
i
z
e
=
1
N
∑
k
=
1
N
∣
S
^
p
k
−
s
k
∣
L_{size}=\frac{1}{N}\sum_{k=1}^{N}\left | \hat{S}_{pk}-s _{k}\right |
Lsize=N1k=1∑N∣∣∣S^pk−sk∣∣∣
The overall training objective is :
L
d
e
t
=
L
k
+
λ
s
i
z
e
L
s
i
z
e
+
λ
o
f
f
L
o
f
f
L_{det}=L_{k}+\lambda _{size}L_{size}+\lambda _{off}L_{off}
Ldet=Lk+λsizeLsize+λoffLoff
对于每个类
c
c
c的关键点的ground truth:
p
∈
R
2
p\in R^{2}
p∈R2,然后把所有关键点的ground truth放进一个热力图
Y
^
∈
[
0
,
1
]
W
R
×
H
R
×
C
\hat{Y}\in \left [ 0,1 \right ]^{\frac{W}{R}\times \frac{H}{R}\times C}
Y^∈[0,1]RW×RH×C中,高斯核:
Y
x
y
c
=
e
x
p
(
−
(
x
−
p
~
x
2
)
+
(
y
−
p
~
y
2
)
2
σ
p
2
)
Y_{xyc}=exp\left ( -\frac{\left ( x-\tilde{p}_{x}^{2} \right )+\left ( y-\tilde{p}_{y}^{2} \right )}{2\sigma _{p}^{2}} \right )
Yxyc=exp(−2σp2(x−p~x2)+(y−p~y2)),
σ
p
2
\sigma _{p}^{2}
σp2是一个目标合适大小的标准误差。其中
L
k
=
−
1
N
∑
x
y
c
{
(
1
−
Y
^
x
y
c
)
α
l
o
g
(
Y
^
x
y
c
)
if
Y
x
y
c
=
1
(
1
−
Y
x
y
c
)
β
(
Y
^
x
y
c
)
α
l
o
g
(
1
−
Y
^
x
y
c
)
otherwise
L_{k}=\frac{-1}{N}\sum_{xyc}^{}\begin{cases} &\left ( 1-\hat{Y}_{xyc} \right )^{\alpha }log\left ( \hat{Y}_{xyc} \right ) \text{ if } Y_{xyc}= 1\\ _{} & \left ( 1-Y_{xyc} \right )^{\beta }\left ( \hat{Y}_{xyc} \right ) ^{\alpha }log\left ( 1-\hat{Y}_{xyc} \right ) \text {otherwise} \end{cases}
Lk=N−1xyc∑⎩⎨⎧(1−Y^xyc)αlog(Y^xyc) if Yxyc=1(1−Yxyc)β(Y^xyc)αlog(1−Y^xyc)otherwise
α
\alpha
α 和
β
\beta
β是focal loss的超参数。
N
N
N是图像
I
I
I中关键点的数量。实验中
α
=
2
\alpha=2
α=2 和
β
=
4
\beta=4
β=4。为了恢复由输出步幅引起的离散化误差,作者另外预测了每个中心点的局部local offset:
O
^
∈
R
W
R
×
H
R
×
2
\hat{O}\in R^{\frac{W}{R}\times \frac{H}{R}\times 2}
O^∈RRW×RH×2。所有类别
c
c
c共享相同的偏移量预测。 offset经过L1损失训练:
L
o
f
f
=
1
N
∑
p
∣
O
^
p
~
−
(
p
R
−
p
~
)
∣
L_{off}=\frac{1}{N}\sum_{p}^{}\left | \hat{O}{\tilde{p}}-\left ( \frac{p}{R}-\tilde{p} \right ) \right |
Loff=N1p∑∣∣∣O^p~−(Rp−p~)∣∣∣