遥感图像处理笔记之【Machine Learning CS-433 - Class Project 2 - Road Segmentation - EPFL】
遥感图像处理学习(8)
前言
遥感系列第8篇。遥感图像处理方向的学习者可以参考或者复刻
本文初编辑于2024年1月2日
本文再编辑于2024年1月4日:附作者改进U-Net网络图片;文字补充说明
2024年1月25日搬运至本人博客园平台
总结:人家(指模型)已经是他的形状了️

仓库名字:Machine Learning CS-433 - Class Project 2 - Road Segmentation - EPFL
仓库地址:https://github.com/LucasBrazCappelo/ML_EPFL_Project_2
数据库介绍
作者团队在Google Maps的卫星图像上执行道路语义分割
作者团队使用了50幅尺寸为608x608的RGB卫星图像,以及100幅尺寸为400x400的RGB卫星标记图像。标记图像中的每个像素都被标记为白色(代表道路)或黑色(代表背景)。对图像采用了16x16像素的patch进行分割,而不是像素级别的分割。这种方法能够更好地处理道路的语义。
训练集包含100幅尺寸为400x400的RGB卫星标记图像,而测试集包含50幅尺寸为608x608的RGB卫星图像。
训练集的输出格式为1x400x400x2,测试集的输出格式为1x608x608x2,其中最后两个维度对应于图像的二元分类。
由于训练图像太少了,这里作者做了数据增强,即原图像的旋转再截取中间的小图片,见下图。
模型介绍
作者团队对U-Net网络的encoder阶段的卷积进行了改进,见下图。原始的U-Net网络的encoder的卷积核padding为0,但作者团队将其设定为1,这样就不需要在将图像从encoder复制到decoder时进行裁剪,简化了操作流程。
把别人的模型变成自己的样子,这何尝不是一种NTR!
泛式,终将成为你!

下面是原始U-Net

下面是作者改进U-Net。
卷积核零填充padding为1的话,就不会在卷积阶段让图片维度减少了,方便网络右侧将上采样图像和特征图像进行合并。

不过除此之外就没什么改动了,评价是不够牛,看看隔壁U-Net++、3D U-Net、Attention U-Net。
模型的输出端采用了LogSoftmax分类,并使用了Negative Log Likelihood误差和IoU误差进行优化。
模型采用了两个优化器,第一个是带有动量的SGD(动量为0.9),这样可以通过让之前的梯度对当前梯度计算产生影响来提供惯性。第二个是Adam优化器,但作者团队发现Adam优化器并不比SGD更有效,所以选择了保持简单的SGD。
此外,模型还实现了一个学习率调度器,允许指数衰减(gamma = 0.95)。
模型结果
在验证测试中,模型发现一些道路经常被打断,作者团队注意到这种现象通常发生在小道路上,因为建筑物或树的阴影导致切割效果不佳。同时,由于车辆的遮挡和横跨公路的广告牌,模型对高速公路的分割效果也不理想,见右下图。

不过,作者团队发现通过旋转图片的数据增强方式,可以有效提高对对角线道路的分割效果。
后面都是一些作者的奇思妙想,就不贴上来了。
遥感图像处理笔记之【Machine Learning CS-433 - Class Project 2 - Road Segmentation - EPFL】的更多相关文章
- Stanford机器学习笔记-7. Machine Learning System Design
7 Machine Learning System Design Content 7 Machine Learning System Design 7.1 Prioritizing What to W ...
- 学习笔记之Machine Learning Crash Course | Google Developers
Machine Learning Crash Course | Google Developers https://developers.google.com/machine-learning/c ...
- 学习笔记之Machine Learning by Andrew Ng | Stanford University | Coursera
Machine Learning by Andrew Ng | Stanford University | Coursera https://www.coursera.org/learn/machin ...
- Coursera 学习笔记|Machine Learning by Standford University - 吴恩达
/ 20220404 Week 1 - 2 / Chapter 1 - Introduction 1.1 Definition Arthur Samuel The field of study tha ...
- [笔记]机器学习(Machine Learning) - 00.目录/大纲/写在之前
目录会根据我的学习进度而更新,给自己列一个大纲以系统地看待整个学习过程. 学习资料来源 学习的是Coursera上吴恩达(Andrew Ng)老师的机器学习视频(课程传送门,最近在"最强大脑 ...
- 【coursera笔记】Machine Learning(Week6)
发现自己不写总结真是件很恶劣的事情,好多学的东西没有自己总结都忘记了.所以决定从今天开始,学东西的时候一定跟上总结. 我写的东西大多数是自己通俗的总结,不太喜欢写严格的定义或者证明,写了也记不住,欢迎 ...
- [笔记]机器学习(Machine Learning) - 01.线性回归(Linear Regression)
线性回归属于回归问题.对于回归问题,解决流程为: 给定数据集中每个样本及其正确答案,选择一个模型函数h(hypothesis,假设),并为h找到适应数据的(未必是全局)最优解,即找出最优解下的h的参数 ...
- [笔记]机器学习(Machine Learning) - 03.正则化(Regularization)
欠拟合(Underfitting)与过拟合(Overfitting) 上面两张图分别是回归问题和分类问题的欠拟合和过度拟合的例子.可以看到,如果使用直线(两组图的第一张)来拟合训,并不能很好地适应我们 ...
- [笔记]机器学习(Machine Learning) - 02.逻辑回归(Logistic Regression)
逻辑回归算法是分类算法,虽然这个算法的名字中出现了"回归",但逻辑回归算法实际上是一种分类算法,我们将它作为分类算法使用.. 分类问题:对于每个样本,判断它属于N个类中的那个类或哪 ...
- 学习笔记之机器学习(Machine Learning)
机器学习 - 维基百科,自由的百科全书 https://zh.wikipedia.org/wiki/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0 机器学习是人工智能的一个分 ...
随机推荐
- 《consul 简易上手指南》
consul 是一个用来做服务发现的框架,具有分布式.高可用以及可横向扩展的特性 什么是服务发现?为什么要实现服务发现? 举个常见的例子: 假设有一台 client 想要实现不同的业务,就需要调用接口 ...
- Linux 下 Docker 操作遭到守护程序套接字时访问权限被拒绝
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker. ...
- AtCoder Beginner Contest 171 AK!
这一场好神奇!能AK了 AB水题, C - One Quadrillion and One Dalmatians 把一个数字转化为字母,规则为 \([1,26]\) 对应 \([a,z]\) , 27 ...
- vue监听滚动到底部加载更多
https://blog.csdn.net/qq_39762109/article/details/89354305 此方法有个bug
- P1216-DP【橙】
在这道题中,我第一次用了memset,确实方便,不过需要注意的是只有全部赋值-1和0的时候才能使用它,否则他能干出吓死人的事.以及memset在cstring头文件里,在本地就算不include也能照 ...
- 每天学五分钟 Liunx | 有趣的 log
说明:看 systemd log 的时候发现了一段有意思的打印,不太明白为什么会这样,贴出来与朋友们分享,欢迎知道的朋友们说明下,非常感谢. 问题描述:服务启动时,会执行 python 脚本,该脚 ...
- [转帖]Region Merge Config
TiKV replicates a segment of data in Regions via the Raft state machine. As data writes increase, a ...
- [转帖]JMeter压测Redis
https://www.cnblogs.com/yjlch1016/p/14052402.html 一.Redis Data Set插件: https://jmeter-plugins.org/wik ...
- [转帖]/proc文件简介
https://www.jianshu.com/p/2610241770be 简介 /proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系统内核数据的操作提 ...
- [转帖]linux 下 {}大括号的用法
我们平时使用Linux的时候经常遇到这样一个问题,举例有这样一种情况:执行命令 $ cp /etc/apt/sources.list /etc/apt/sources.list.bak 这里面有个问题 ...

