Key Points Estimation and Point Instance Segmentation Approach for Lane Detection 论文笔记

Key Points Estimation and Point Instance Segmentation Approach for Lane Detection

论文链接: https://arxiv.org/abs/2002.06604

一、Problem Statement

对PINet旧版本的一个补充。旧版解析在这个链接

二、Direction

增加了多个hourglass network,也添加了知识蒸馏。相对于以前只在TuSimple数据集上测试,多增加了在CuLane数据集上的测试验证。

三、Method

1、 Lane Instance Point Network

网络结构上大体没有改变,堆叠多了两个hourglass,可以根据计算资源去选择网络的大小。

来看一下这个网络的Loss,对比旧版本,其有小部分修改:
L t o t a l = a L e x i s t + b L n o n − e x i s t + c L o f f s e t + d L f e a t u r e + e L d i s t i l l a t a t i o n L_{total}=aL_{exist} + bL_{non-exist} + cL_{offset} + dL_{feature} + eL_{distillatation} Ltotal=aLexist+bLnonexist+cLoffset+dLfeature+eLdistillatation

(1). confidence branch
confidence branch 预测每一个单元格的置信度。然后这个值会传递给下一个hourglass block,用来稳定训练。这个分支的loss为:
L e x i s t = 1 N e ∑ c ∈ G e ( c c ∗ − c c ) 2 L n o n − e x i s t = 1 N n ∑ c c ∈ G n c c > 0.01 ( c c ∗ − c c ) 2 + 0.00001 ⋅ ∑ c c ∈ G n c c 2 \begin{matrix} L_{exist}=\frac{1}{N_e}\sum_{c\in G_e}(c^*_c-c_c)^2\\ \\ L_{non-exist}=\frac{1}{N_n}\sum_{\begin{matrix} c_c\in G_n \\ c_c>0.01\end{matrix}}(c^*_c-c_c)^2 + 0.00001 \cdot\sum_{c_c\in G_n}c_c^2 \end{matrix} Lexist=Ne1cGe(cccc)2Lnonexist=Nn1ccGncc>0.01(cccc)2+0.00001ccGncc2

N e , N n N_e, N_n Ne,Nn表示存在点或者不存在点的单元格的数量。 G G G表示所有单元格, c c ∗ c_c^* cc是ground-truth, c c c_c cc是预测值。上面式子最后一项是regularization term。

(2). offset branch
offset branch是用来找到每个点的确切位置。它的值在0-1区间,是相对于每一个单元格(grid)。offset branch有两个通道,分别预测x轴和y轴。
L o f f s e t = 1 N e ∑ c x ∈ G e ( c x ∗ − c x ) 2 + 1 N e ∑ c y ∈ G n ( c y ∗ − c y ) 2 L_{offset}=\frac{1}{N_e}\sum_{c_x\in G_e}(c^*_x-c_x)^2+\frac{1}{N_e}\sum_{c_y\in G_n}(c^*_y-c_y)^2 Loffset=Ne1cxGe(cxcx)2+Ne1cyGn(cycy)2

(3). feature branch
这个分支的训练是用来使具有相同实例的网格特征更接近,不同实例的特征距离更远,是一个聚类的过程。看一下它的loss:
L f e a t u r e = 1 N e 2 ∑ i N e ∑ j N e l ( i . j ) L_{feature}=\frac{1}{N_e^2}\sum_i^{N_e}\sum_j^{N_e}l(i.j) Lfeature=Ne21iNejNel(i.j)
l ( i , j ) = { ∣ ∣ F i − F j ∣ ∣ 2 i f C i j = 1 m a x ( 0 , K − ∣ ∣ F i − F j ∣ ∣ 2 ) i f C i j = 2 l(i,j)=\left\{ \begin{matrix} ||F_i-F_j||_2 & if &C_{ij}=1\\ max(0,K-||F_i-F_j||_2) & if & C_{ij}=2\\ \end{matrix} \right. l(i,j)={FiFj2max(0,KFiFj2)ififCij=1Cij=2
其中 C i j C_{ij} Cij表示点 i , j \Large i,j i,j 是否是同一个实例,如果是同一个实例,则等于1,否则为2。 F i F_i Fi表示输出的特征点。 K > 0 K>0 K>0是一个常量。然后使用简单的distance based 聚类算法区分点的类别。

(4). Distillation branch
Hourglass原作者认为更多的hourglass modules堆叠会有更好地效果。所以想采用知识蒸馏的办法,把更深的网络认为是teacher,对裁剪的短网络进行蒸馏学习。
L d i s t i l l a t i o n = ∑ m M D ( F ( A M ) − F ( A M ) ) F ( A M ) = S ( G ( A M ) ) , S : s p a t i a l s o f t m a x G ( A m ) = ∑ i = 1 G ∣ A m i ∣ 2 , G : R C X H X W → R H X W \begin{matrix} L_{distillation}=\sum_m^MD(F(A_M)-F(A_M))\\\\ F(A_M)=S(G(A_M)), S:spatial softmax\\\\ G(A_m)=\sum_{i=1}^G|A_{mi}|^2, G:R^{CXHXW} \rightarrow R^{HXW} \end{matrix} Ldistillation=mMD(F(AM)F(AM))F(AM)=S(G(AM)),S:spatialsoftmaxG(Am)=i=1GAmi2,G:RCXHXWRHXW

2、 数据增强
通过翻转、平移、旋转、添加高斯噪声、亮度增强、增加阴影来进行数据增强。

四、Conclusion

与第一版看起来变化不大。多了知识蒸馏这个,个人感觉比较鸡肋。

References

1.https://zhuanlan.zhihu.com/p/115170109

深度学习在OFDM系统中的信道估计和信号检测中具有强大的能力。 在OFDM系统中,信道估计和信号检测是关键的环节。传统的方法往往需要通过数学建模和算法设计来实现,但由于信号传播特性的复杂性和非线性,这些方法往往难以处理海量数据和高维度问题。 而深度学习则通过构建深层神经网络来学习信道估计和信号检测的模式和特征。深度学习的神经网络具有强大的拟合能力和自适应性,能够从大量数据中自动学习到信道和信号的复杂模式,有效提取特征,并进行高效的估计和检测。 在信道估计方面,深度学习可以通过训练神经网络来实现对信道的建模和估计。通过输入接收到的OFDM信号和相关参数,神经网络可以通过学习整个OFDM信道的非线性特性,准确地估计出信道的状态信息,为后续信号检测提供准确的输入。 在信号检测方面,深度学习可以通过训练神经网络来实现信号的自动检测和解调。通过输入接收到的OFDM信号,神经网络可以自动学习信号的模式和特征,对信号进行准确的检测和解调,大大提高了系统的检测性能和鲁棒性。 总结而言,深度学习在OFDM系统中的信道估计和信号检测中具有强大的能力。它通过构建深层神经网络来学习信道和信号的模式和特征,实现了对复杂场景下的信道和信号的准确估计和检测,为OFDM系统的性能提升提供了一种有效的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值