遥感图像处理笔记之【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 机器学习是人工智能的一个分 ...
随机推荐
- Python使用pandas库读取txt文件中的Json数据,并导出到csv文件
使用的是 Python 3 代码: #!/usr/bin/python # -*- coding: gbk -*- # JSON数据导出到csv文件 import json import pandas ...
- kafka搭建 一、单机版
系列导航 一.kafka搭建-单机版 二.kafka搭建-集群搭建 三.kafka集群增加密码验证 四.kafka集群权限增加ACL 五.kafka集群__consumer_offsets副本数修改 ...
- 【调试】perf和火焰图
简介 perf是linux上的性能分析工具,perf可以对event进行统计得到event的发生次数,或者对event进行采样,得到每次event发生时的相关数据(cpu.进程id.运行栈等),利用这 ...
- vue-devtools调试工具
- 3 分钟将免费无限制的 Claude 2.0 接入任意 GPT 套壳应用,太香了!
Claude 是 ChatGPT 的最强竞争对手,由 OpenAI 早期团队成员创建,目标就是打造出能 赶超 ChatGPT 的 AI.最新版的 Claude 2.0,能力已经开始领先 ChatGPT ...
- C#爬虫知识介绍
爬虫 爬虫(Web Crawler)是指使用程序自动获取互联网上的信息和数据的一种技术手段.它通常从一个起始网址出发,按照一定的规则递归地遍历网页,并将有用的信息提取出来,然后存储到本地或者数据库中, ...
- 扒一扒迅雷11新功能——6T云盘功能、极致传输、高清播放、跨端同步
云盘功能 极致传输 高清播放 跨端同步
- Logback 实现日志链路追踪
本文为博主原创,未经允许不得转载: 在开发过程中,经常会使用log记录一下当前请求的参数,过程和结果,以便帮助定位问题.在并发量下的情况下,日志打印不会剧增,可以很快就能通过打印的日志查看执行的情况. ...
- 【TouchGFX】Widgets and Containers
Widgets and Containers 是 TouchGFX 应用最基础的东西,他们贯穿于 UI 的整个开发,属于 TouchGFX 的预制组件,同时也支持自定义实现 Widgets Widge ...
- SQLServer数据库JDBC连接串参数的简单学习
SQLServer数据库JDBC连接串参数的简单学习 背景 前段时间一直跟同事一起处理SQLServer 比其他数据库的deadlock更多的问题. 涉及到了几个驱动的参数. 想着问题基本上告一段落, ...

