深度特征
设计神经网络模型来挖掘图像更深、更为抽象的特征。CNN随着深度的增加时所表达的高级语义信息比较强,而浅层的卷积结构对物体的轮廓刻画比较明显
原图经卷积后随深度增加,特征随之抽象。
特点:无需手工参与,受光照、姿态等影响较小,但特征表达方式取法明确知道。
End-to-end: 即端到端方法,意思是只有输入端和输出端,当中不需要设计和具体算法,就是一个神经网络。输入原始数据,输出结果即可。
Hand-crafted: 顾名思义人为设计的特征,即直接设计特征本身。与end-to-end相对,hand-crafted方法就是人工设计的一步步能够说出理由来的方法。
传统手工特征
传统手工特征(底层特征、中间特征)
底层特征: 主要指基于图像自身,通过简单操作就能得出的特征。如颜色、纹理、形状、梯度等属于底层征,它们也是中间特征操作的基础特征。图像视频领域广为熟知的底层特征有:RGB、LAB、HOG、HSV、LBP、SIFT、SURF、SILTP(LBP改进)。
纹理特征—LBP, Gabor, HOG, GLCM
特点:相对简单,无需学习与训练,仅需简单计算与统计。
中层特征: 在底层特征基础上进行多特征融合处理获得的特征,主要是颜色和纹理的多样性融合。例如:LOMO(HSV+SILTP)。也只特征提取方式进行改进与创新的一类特征,通常融入较为复杂的数据理论处理过程。
特点:比较复杂,主要体现在提取策略与融合过程。
GCN
提取特征点和描述子
GCN资料
GCN(Geometric Correspondence Network)是一个用于从图像中提取特征点和描述子的深度神经网络,所提的特征点和描述子可以用于位姿更新和闭环检测。GCNv2是GCN的改进版,提高了运行效率,把原来需要在GPU上运行的算法改进到可以在TX2上运行。GCN-SLAM就是基于GCNv2的实时SLAM系统。
用深度学习去提特征点和描述子的思路其实已经很常见,大致思路都是给定一张图片,端到端输出特征点和对应的描述子。
GCN独特之处在于它不是根据单张图片来训练,而是根据图像对,这个图像对就是slam中前后两帧对应的图像,在设计网络时,前后两帧之间的相对位姿也参与到损失函数的设计中来,这个相对位姿是根据数据集中的ground-truth提供的。作者认为,由于在训练时结合了ground-truth,所以它所提的特征点更能够适用于位姿匹配,能够提高精度和稳定性。
GCN网络结构
整个算法的设计过程其实就是网络结构的设计过程,整个网络主要分为两部分
第一部分是一个卷积神经网络,用于在一对图片里提取可以关联的特征;
第二部分是一个循环神经网络,由于slam的输入图像之间有前后的时序关系,这样图像中的特征点的位置其实是可以根据上一次提取出的位置给出预测的,此处的RCNN就是给出这个预测。