深度学习方法在道路提取、图像检索上的几篇文章阅读笔记

2023-11-07

关于全卷积神经网络的upsampling还没有搞清楚,如果你有合适的资料或者好方法,欢迎评论交流!

深度学习方法在道路提取上的应用

1、【传统方法】A review of road extraction from remote sensing images
2、【充分利用道路特征-FCN+改进的损失函数】Road Structure Refined CNN for Road Extraction in Aerial Image
A.重新设计了反卷积层和融合层,提出了一种新的损失函数,将道路结构的几何信息与交叉熵损失相结合
B.introduction:两个方向的研究:
启发式:数学形态学、纹理渐进分析,利用关于道路的一些知识
数据驱动式:聚类、马尔可夫随机场(MRFs)、条件随机场(CRFs)
新:神经网络:忽略了道路的几何约束特征,导致提取效果不好。
a.本文考虑了CNN框架中道路结构的空间相关性和几何信息,结合了反卷积和融合层来提供结构化的输出。
FCN:全卷积神经网络https://blog.csdn.net/taigw/article/details/51401448
   https://blog.csdn.net/xg123321123/article/details/53092154
与传统CNN在卷积层之后使用全连接层得到固定长度的特征向量进行分类(全连接层+softmax)不同,FCN可以接受任意尺寸的输入图像,然后通过反卷积层对最后一个卷积层的feature map进行上采样, 使它恢复到输入图像相同的尺寸,从而可以对每个像素都产生了一个预测, 同时保留了原始输入图像中的空间信息, 最后在与输入图等大小的特征图上对每个像素进行分类,逐像素地用softmax分类计算损失,相当于每个像素对应一个训练样本
优点:
1、可以接受任意大小的输入图像,而不用要求所有的训练图像和测试图像具有同样的尺寸。
2、更加高效,因为避免了由于使用像素块而带来的重复存储和计算卷积的问题。
缺点:
1、得到的结果还是不够精细。进行8倍上采样虽然比32倍的效果好了很多,但是上采样的结果还是比较模糊和平滑,对图像中的细节不敏感。
2、对各个像素进行分类,没有充分考虑像素与像素之间的关系,忽略了在通常的基于像素分类的分割方法中使用的空间规整(spatial regularization)步骤,缺乏空间一致性。
b.新的损失函数,不仅利用每个像素间的最小欧几里得距离来生成一个权重映射,而且道路几何结构也被建模为全球道路结构。
C.思想:
1)VGG前13个卷积层提取图像的层次特征,训练模型RSRCNN
2)对模型RSRCNN进行参数微调
3)三个额外的卷积层c14,c15,c16适应道路结构
4)设计deconvolution\fusion\crop layer
deconvolution layer:原文Fig. 2. ,上采样???(input2*2) * (filter4*4)=(output4*4)
fusion layer:
输入为conv和deconv的结果,要把conv大小调整成和deconv一样
通过pixel-wise将两个层组合在一起,(高级语义信息+底层细节信息)
crop layer:保证模型输入输出大小相同
5)结合道路结构和交叉熵损失,设计损失函数
靠近路网的像素出现偏差对损失函数大,所以惩罚大;远离路网的像素出现偏差对损失函数影响小,所以惩罚小
D.结论:
收敛速度更快;对道路结构的保护更好;60000轮迭代之后出现过拟合
E.结论分析:平衡训练样本(图片裁切,重采样),自损失函数(4)对于图像背景的权重较小。
Q:1损失函数靠近道路网络的惩罚较大,远离路网结构的惩罚较小(背景的惩罚较小):
靠近路网的像素出现偏差对损失函数大,所以惩罚大;远离路网的像素出现偏差对损失函数影响小,所以惩罚小
   2upsampling??? https://www.zhihu.com/question/43609045?sort=created




深度学习方法在图像检索上的应用
1、【基准】Exploiting Deep Features for Remote Sensing Image Retrieval
图像检索——从视觉特征、相似性度量、相关性反馈三个核心方面提出RS图像特征提取的基准(武大)
文章安排如下,详见笔记:
introduction
A.基于文本&内容的图像检索
B.大数据下:更合适的相似性度量:自适应修正图像特征之间的相似度
相关性反馈:捕捉用户的查询意图
C.特征提取:low-level、middle-level、high-level
overview:
A.从输入和参考中提取特征
B.相似性计算,排序返回
C.优化图像检索返回的排序
features:
A.conv层特征:细粒度特征+encode
1)介绍各种pooling method:本实验中mean 最好
2)介绍各种encode方式:本实验中IFK最好>BOW>VLAD
3)多尺度:RS19中(300*300+600*600最好)UCM(原始最好),使用多尺度有点好处
B.FC层特征:
1)除softmax的输出作为特征
2)multi-patch pooling,分成多个子块分别池化,mean最好
3)caffenet\VGG16 19 M 层数增加fc6和fc7性能接近,fc6比较好
C.微调:
1)数据集不需要很大RSSCN7微调,RS19和UCM测试
experiment&result:
A.评价标准
ANMRR平均归一化调整的检索秩
mAP平均精度均值
B.结论:
降维比较好
Googlenet比较好,inception(5b) RS19 和avg_layer UCM性能最好


2、【选择性搜索region proposal+CNN classification+NMS_USB-BBR优化边界框冗余问题】
Accurate Object Localization in Remote Sensing Images Based on Convolutional Neural Networks
A.问题:由复杂的上下文信息所引起的遥感图像中对象定位的两个主要问题是,描述对象的特征和精确目标位置
B.思想:选择性搜索region proposal+CNN classification+NMS_USB-BBR优化边界框冗余问题
减少生成的感兴趣对象        分类 优化边界框
C.做法:
1)region proposal:每幅图像找1500个候选区域,从低密度地区也抽取一些感兴趣区域。根据颜色、纹理、形状等生成,intersection of union>0.5合并
2)feature extraction:旋转平移缩放后分类
使用Alexnet和Googlenet修改模型
a.在最后一层之前加一个64D的层(Alexnet将第2个FC从4096降到64,Googlenet加一个64D的层)
因为全连接层越多,参数越多,训练速度越慢,拟合能力越好,可能导致训练很慢,且训练集效果好测试集不好
b.Alexnet+Googlenet组合起来
c.对组合模型和单个模型分别计算类别和分数,分数取平均,类别取分数大的那一个的类别
3)accurate object localization:优化边界框,降低假的positive samples
NMS:广泛应用于边界框冗余问题,但是无法合并,当IoU和分数都较大的时候,拒绝
USB-BBR:对于同一个对象(用ground truth 和 检测出的框overlap大于阈值认为是一个对象)的一组分数G,按面积升序排列。
计算两个框的overlap,>0.5归为同一组,对每一组迭代找出一个最佳边界框
4)tips:
local response normalization:局部响应归一化LRN(一般是在激活、池化后进行的一中处理方法,对局部神经元的活动创建竞争机 制,使得其中响应比较大的值变得相对更大,并抑制其他反馈较小的神经元,增强了模型的泛化能力)
https://blog.csdn.net/yangdashi888/article/details/77918311
https://blog.csdn.net/sinat_21585785/article/details/75087768
momentum:加速梯度下降的收敛(undo:共轭梯度下降……)
overlaping pooling:
dropout:丢弃一些参数记忆,泛化
D.结论
1)fine-tune效果比较好,可以提高P-R
2)combined model比single model效果好,计算成本也高
3)降维好
4)对比特征提取CNN > EFT-HOG+SVM > LBP-HT+SVM
5)对于立交桥的检测效果不好
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

深度学习方法在道路提取、图像检索上的几篇文章阅读笔记 的相关文章

  • 本地JAR打镜像,并启动

    1 准备好jar 和Dockerfile文件 2 使用命令打镜像 docker build t wstest 3 查看镜像 4 由于服务是两个端口 使用以下命令 5 优化怎么随着docker的开启而启动 docker run restart
  • Maltrail恶意流量检测系统

    Maltrail恶意流量检测系统 项目介绍 项目GitHub地址 项目架构 项目数据集 运行方式 订阅源扩展 数据采集模块提取 项目介绍 maltrail是一款轻量级的恶意流量检测系统 其工作原理是通过采集网络中各个开源黑样本 包括IP 域
  • python操作sql

    from pymysql import connect def main 创建connection连接 conn connect host localhost port 3306 user root password 123456 data
  • 深入浅出UML类图(一)

    在UML 2 0的13种图形中 类图是使用频率最高的UML图之一 Martin Fowler在其著作 UML Distilled A Brief Guide to the Standard Object Modeling Language

随机推荐

  • Redis中key-value实现

    实现字典的方法有很多种 最简单的就是使用链表或数组 但是这种方式只适用于元素个数不多的情况下 要兼顾高效和简单性 可以使用哈希表 如果追求更为稳定的性能特征 并且希望高效地实现排序操作的话 则可以使用更为复杂的平衡树 在众多可能的实现中 R
  • JAVA8新特性--集合遍历之forEach

    java中的集合有两种形式Collection
  • 5.2 activiti任务监听器TaskListener

    1 任务监听器定义 任务监听器用于在特定的任务相关事件发生时 执行自定义的Java逻辑或表达式 2 监听器监听的事件 String EVENTNAME CREATE create 创建 当任务已经创建 并且所有任务参数都已经设置时触发 St
  • Basic Level 1090 危险品装箱 (25分)

    题目 集装箱运输货物时 我们必须特别小心 不能把不相容的货物装在一只箱子里 比如氧化剂绝对不能跟易燃液体同箱 否则很容易造成爆炸 本题给定一张不相容物品的清单 需要你检查每一张集装箱货品清单 判断它们是否能装在同一只箱子里 输入格式 输入第
  • Linux期末复习总结

    目录 Linux 系统的结构 shell Linux用户类型及其用户主目录 shell提示符 输入输出重定向 标准输入 输出设备 Linux文件的类型 Linux 的目录结构 基本操作命令 链接命令 ln 链接的特点 tar命令举例 vi
  • 求一批整数中出现最多的各位数字

    描述 给定一批整数 分析每个整数的每一位数字 求出现次数最多的各 位数字 例如给定3个整数1234 2345 3456 其中出现最多次数的数字是3和4 均出现了3次 输入 输入在第1行中给出正整数N 1000 在第二行中给出N个不超过整型范
  • QT QLinearGradient (颜色渐变---应用控件背景渐变)

    示例 frame gt setStyleSheet background color qlineargradient spread pad x1 0 y1 0 x2 1 y2 0 stop 0 030303 stop 0 5 030303
  • 多线程及多进程的选择

    我的理解是进程是指在系统中正在运行的一个应用程序 程序一旦运行就是进程 或者更专业化来说 进程是指程序执行时的一个实例 线程是进程的一个实体 进程 资源分配的最小单位 线程 程序执行的最小单位 线程进程的区别体现在几个方面 0 因为进程拥有
  • 【手撕代码系列】JS手写实现bind方法

    公众号 Code程序人生 分享前端所见所闻 在JavaScript中 bind方法允许我们绑定函数的上下文并返回一个新的函数 在这篇文章中 我们将手写实现bind方法 以更好地了解它的内部工作原理 bind方法的语法 bind方法的语法如下
  • 整数转化为罗马数字

    1 问题描述 罗马数字包含以下七种字符 I V X L C D 和 M 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如 罗马数字 2 写做 II 即为两个并列的 1 12 写做 XII 即为 X
  • 多线程互斥锁 pthread_mutex 的使用及初始化问题

    一 互斥锁pthread mutex的使用 1 初始化锁 有两种方法初始化互斥锁 静态方式和动态方式 静态方式 pthread mutex t mutex lock PTHREAD MUTEX INITIALIZER 在LinuxThrea
  • 软件测试流程/需求分析之软件需求概述

    今天重点从四个方面来和大家对需求阶段需求分析做一个讲解 阅读测试文档 参与需求评审 测试需求分析 提取功能点 去做这些对应的事情之前 我们要先了解到底什么是需求 需求评审我们要从哪些点去评审 我们要去提取功能点要怎么样去进行提取 回忆测试流
  • 使用ffmpeg将mkv,rmvb转换成mp4

    cmd输入ffmpeg version 检查ffmpeg安装版本 1 进入mkv rmvb所在的文件夹 2 转换mkv ffmpeg i inputname mkv c v copy c a copy outputname mp4 转换rm
  • 几种优化算法(求最优解)

    几种优化算法 先简单备注下 今后接触到再看 参考资料 http blog sina com cn s blog 6a1bf1310101hhta html
  • SpringBean管理

    一 什么是SpringBean 在Spring中将管理对象称为 Bean Bean是由一个SpringIOC容器实例化 组装和管理的对象 也就是说 Bean并不是由我们程序员编写的 而是在程序运行过程中 由Spring通过反射机制生成的 S
  • 串口通信开发

    一开始做串口通信开发时 觉得并不难 无非就是发送 然后等一会 再接收就完事了 其实里面的水很深 特别是在各种设备都有的情况下 我们在整个开发过程中 遇到了以下的几个主要问题 1 设备出现严重的延迟 2 接收过程出现数据粘包或截断 3 多设备
  • 华为OD机试-目录删除

    Online C compiler to run C program online include
  • 解决错误:Plugin with id 'com.android.application' not found

    本文转载地址 https blog csdn net qq 26819733 article details 50935632 Error 1 0 Plugin with id com android application not fou
  • C++中的转移字符

    C 中转移字符 顺序 描述 表示 单引号 字节0x27 ASCII编码 双引号 字节0x22 ASCII编码 问号 字节0x3f ASCII编码 反斜线 字节0x5c ASCII编码 a 可听见钟 字节0x07 ASCII编码 b 退格 字
  • 深度学习方法在道路提取、图像检索上的几篇文章阅读笔记

    关于全卷积神经网络的upsampling还没有搞清楚 如果你有合适的资料或者好方法 欢迎评论交流 深度学习方法在道路提取上的应用1 传统方法 A review of road extraction from remote sensing i