SCNN--车道线检测
论文名称:Spatial As Deep: Spatial CNN for Traffific Scene Understanding
发表时间:2017年
作者:Xingang Pan1 , Jianping Shi2 , Ping Luo1 , Xiaogang Wang1, and Xiaoou Tang1
一.概念
1.softmax:归一化指数函数,目的是将多分类的结果以概率的形式展现出来。
例如:假如模型对三分类问题的预测结果为-3,1.5,2.7
- 将预测结果转化为非负数:y1=exp(x1)=exp(-3)=0.05;y2=exp(x2)=exp(1.5)=4.48;y3=exp(x3)=exp(2.7)=14.88
- 各种预测结果概率之和为:z1=y1/(y1+y2+y3)=0.05/(0.05+4.48+14.88)=0.0026;z2=y2/(y1+y2+y3)=4.48/(0.05+4.48+14.88)=0.2308;z3=y3/(y1+y2+y3)=14.88/(0.05+4.48+14.88)=0.7666;
2.深度学习中的mask:掩膜。表示分割的结果。分类的结果:lable。
3.通道channels: (1)RGB,channels=3。(2)每个卷积层中卷积核的数量。
4.检测评价函数(IOU):重叠部分除以集合
相关的:
(1)被检测到 tp:true positive 有用的信息。
(2)没有被检测到 fn:false negative.
不相关的:
(1)被检测到 fp:false positive 无用的信息
(2)没有被检测到 tn
Precision=TP/(TP+FP)
Recall=TP/(TP+FN)
IOU=TP/(FN+TP+FP)
论文中:
所以 F-measure=2/(1/Precision+1/Recall),if β=1.
5.VGG16结构图:
论文中:作者在VGG16的基础上。在VGG16的fc6全连接层采用空洞卷积,并将fc7和fc8改为1x1的全卷积,命名为DeepLab-LargeFOV。同时在VGG16的fc6-fc8层用四路采用不同卷积率的空洞卷积作用于每个fc6,在fc7和fc8同样采用全卷积策略,命名为DeepLab-ASPP。根据空洞卷积的卷积率的不同组合,r={2,4,8,12}的称为DeepLab-ASPP-S;r={6,12,18,24}的称为DeepLab-ASPP-L。下图分别为VGG16上的DeepLab-LargeFOV和DeepLab-ASPP示意图:
6.LargeFOV(空洞卷积又名膨胀卷积)。
7.ASPP:(rate:卷积率)卷积率不断变大为此增加了感受野。
来自论文:DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs
时间:2017
8.三次样条曲线:其基本思想是由两相邻节点所构成的每一个小区间内用低次多项式来逼近,并且在各结点的连接处又保证是光滑的(即导数连续)。
9.空间交叉熵损失函数(spatial cross entropy loss):一般情况下,最后一个输出层的节点个数与分类任务的目标数相等。假设最后的节点数为N,那么对于每一个样例,神经网络可以得到一个N维的数组作为输出结果,数组中每一个维度会对应一个类别。在最理想的情况下,如果一个样本属于k,那么这个类别所对应的的输出节点的输出值应该为1,而其他节点的输出都为0,即[0,0,1,0,….0,0],这个数组也就是样本的Label,是神经网络最期望的输出结果,交叉熵就是用来判定实际的输出与期望的输出的接近程度。
原理:交叉熵刻画的是实际输出(概率)与期望输出(概率)的距离,也就是交叉熵的值越小,两个概率分布就越接近。
参考博客:交叉熵作为损失函数在神经网络中的作用_fu6543210的博客-CSDN博客
二.
在本SCNN论文中,作者在主干网络结束后,得到了一个C*H*W的特征矩阵。
(a)为传统的CNN+CRF框架。(b)中的中间四个模块为SCNN,是嵌入到主干网络中的结构。
SCNN_D:为四个模块之一,其模块内部从上到下卷积时共享同一个卷积核。首先切成H片,在第一片上面用C*w大小的卷积核卷积,由于有C个通道,所以要用C个C*w的卷积核,第一片经过卷积,非线性等操作后加到下一片上(一般这个w是个较大的卷积核,作者实验证明w=9结果最理想),直到最后一片也被更新。
切片的处理过程公式化:
等号左边为更新后的值,右边f为非线性激活函数,K(i,j,k ):最后一片中通道i的元素和当前片中通道j的元素之间的权重,这两个元素之间偏移为k列。
经过四个SCNN模块处理后,特征矩阵(C*H*W)经过再一次卷积操作,输出为n个通道的分割结果。由于主干网络中对原图有下采样操作,最后进行像素级别的损失函数计算前,作者对图像进行了对应倍数的上采样放大操作。
在本SCNN论文中:
(a)图上半部分为LargeFOV。softmax标准化之后得到的是一个矩阵。下半部分左边spatial cross entropy loss为空间交叉熵损失(见上面概念9)。右半部分--Avgpool:对特征矩阵进行平均池化。sigmoid函数作用:对于预测问题想要得到一个0或1的答案。
FC:全连接层(fully connected)全连接层的每一个节点都与上一层的所有节点相连。
Interp:一维线性插值函数,例如下图为sin函数的插值。(文中在此对像素点进行了处理)
(b)图为原图像通过在上述模型的基础上,添加了一个分支,即右边的部分用来预测4条车道线存在的概率。左边输出的概率图经过这个分支网络预测车道线是否存在。
对于存在值大于0.5的车道标记,在对应的概率图每20行搜索找到最大值位置的点(argmax),然后通过三次样条函数连接这些点(cubic splines),就得到了最终的预测。
最终效果:数据集CULane
数据集:CityScapes
附:在使用tensorflow跑此代码时,请将所有文件移动到tools文件夹下,否则会出现找不到文件路径等等问题。
SCNN--车道线检测相关推荐
- 车道线检测参考学习资料
一.GitHub: https://github.com/amusi/awesome-lane-detection(全) https://github.com/ChengZhongShen/Advan ...
- 基于Spatial CNN的车道线检测和交通场景理解
SCNN车道线检测--(SCNN)Spatial As Deep: Spatial CNN for Traffic Scene Understanding(论文解读) Spatial As Deep: ...
- 【论文解读】Spatial As Deep: Spatial CNN for Traffic Scene Understanding(车道线检测SCNN)
Spatial As Deep: Spatial CNN for Traffic Scene Understanding 原文链接:https://arxiv.org/abs/1712.06080 g ...
- ECCV2020|超快的车道线检测,代码模型已开源
作者|cfzd 来源|https://zhuanlan.zhihu.com/p/157530787 很高兴和大家分享一下我们刚刚被 ECCV 2020 接收的新工作:一种超快速的车道线检测算法(Ult ...
- 车道线检测综述及新工作汇总
编辑丨3D视觉工坊 车道线检测综述及近期新工作--为ADAS.自动驾驶服务. 部分视频效果展示: https://www.bilibili.com/video/BV1E54y1V7G4 https:/ ...
- 实战教程 | 车道线检测项目实战,霍夫变换 新方法 Spatial CNN
点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 此文按照这样的逻辑进行撰写.分享机器学习.计算机视觉的基础知识,接着我们以一个实际的项目,带领大家自己 ...
- 【深度学习】实战教程 | 车道线检测项目实战,霍夫变换 新方法 Spatial CNN
此文按照这样的逻辑进行撰写.分享机器学习.计算机视觉的基础知识,接着我们以一个实际的项目,带领大家自己动手实践.最后,分享更多学习资料.进阶项目实战,这部分属于我CSDN上的专栏,最后会按照顺序给出相 ...
- 详解车道线检测数据集和模型 VIL-100: A New Dataset and A Baseline Model for Video Instance Lane Detection
本文介绍一个新的车道线数据集 VIL-100 和检测模型 MMA-Net,论文已收录于 ICCV2021,重点是理解本文提出的 LGMA 模块,用于聚合局部和全局记忆特征. 论文链接:https:// ...
- ECCV 2020 | 超快的车道线检测
本文转载自知乎,已获作者授权转载. 链接:https://zhuanlan.zhihu.com/p/157530787 很高兴和大家分享一下我们刚刚被 ECCV 2020 接收的新工作:一种超快速的车 ...
- 项目实训第二周(车道线检测)
本周工作 上一周对于LaneNet这一模型进行了了相关复现,训练以及测试,因为LaneNet算是比较经典的一个车道线检测模型,距今时间较长,而且其问题我也在上一周的博客中指明,这一周我继续对于近今年国 ...
最新文章
- 经典大数据面试题及解析
- mysql导入frm文件_MySQL备份文件.ibd、.frm、.MYD、.MYI的恢复教程
- AutoHomeRefreshListView仿汽车之家下拉刷新 《IT蓝豹》
- php验证卡号,PHP验证信用卡卡号是否正确函数
- php7 curl开源库,7个适用于PHP的最佳Curl包装器库
- GridView控件日期格式化
- atitit。自定义uml MOF EMF体系eclipse emf 教程o7t
- c语言 牛逼代码,有c语言牛逼的神人吗
- java excel 导入试题
- IAR,STVD和STVP的使用
- 智能家居生活之视频监控
- TIdTCPClient的几种方法
- 本人成功续费了。你的支付授权失败。请核对你的信息并重试,或尝试其他支付方式。请联系你的银行了。
- 75.(leaflet之家)leaflet柱状图
- android 底层键值映射,如何在使用android-ETE时进行键值映射.doc
- 对话系统综述 *Advances and Challenges in Conversational Recommender Systems: A Survey*
- VMware配置虚拟机映射,实现局域网络互相访问
- Java树形结构设计与开发
- 清除一个挖矿程序、步骤!!!
- 全国计算机技术与软件专业技术资格(水平)考试【软件评测师】-考试内容总结(一)计算机系统构成及硬件基础知识...