遥感图像处理学习(2)


前言

遥感图像处理方向的学习者可以参考或者复刻

本文初编辑于2023年12月14日

2024年1月24日搬运至本人博客园平台


文章标题:Deep learning for Geospatial data applications — Multi-label Classification

文章地址:https://readmedium.com/deep-learning-for-geospatial-data-applications-multi-label-classification-2b0a1838fcf3

文章所涉及的代码:https://colab.research.google.com/drive/1hFXDLQMozaWt7S1aUr2zHzQVxyDXmOs0?usp=sharing


这篇文章将CNN(Resnet18)应用于UCMerced Data数据集中,演示了遥感图像单分类任务,全部代码加在一起不超过十五行。强烈建议学习!

UCMerced Data是用于研究目的的21 类土地利用图像数据集,每个类别有100 张图像。

UCMerced Data可以认为是遥感图像领域的MNIST。


下面是对文章所涉及部分代码的说明

data = DataBlock(blocks=(ImageBlock, CategoryBlock),
get_items=get_image_files,
splitter=RandomSplitter(valid_pct=0.3, seed=42),
get_y=parent_label, item_tfms=Resize(128)) #最讨厌一句那~么~长~的代码了 #blocks=(ImageBlock, CategoryBlock): 这一部分指定了数据块的类型,
#其中包括图像数据块(ImageBlock)和类别数据块(CategoryBlock)。这表示我们的数据集包含图像数据和类别标签。
#get_items=get_image_files: 这一部分指定了如何获取数据集中的图像文件。
#在这里,使用了get_image_files函数,它会从指定的文件夹中获取所有的图像文件。
#splitter=RandomSplitter(valid_pct=0.3, seed=42): 使用了RandomSplitter来将数据集随机划分为训练集和验证集,
#其中验证集占总数据的30%。seed=42表示了随机种子,用于确保划分的随机性可以被重现。
#get_y=parent_label: 这一部分指定了如何从数据集中获取类别标签。
#使用了parent_label函数,它会从图像文件的路径中提取出类别标签。
#item_tfms=Resize(128): 这一部分指定了对图像数据进行的转换操作。
#使用了Resize(128),它会将图像调整为128x128的大小,以便统一图像的尺寸。
learn = cnn_learner(dls, resnet18, metrics=error_rate)#dls是图像数据
learn.fine_tune(5) #learn = cnn_learner(dls, resnet18, metrics=error_rate): 这一行代码创建了一个卷积神经网络模型cnn_learner,
#使用了名为resnet18的预训练模型作为基础模型,dls是数据加载器(DataLoaders),
#metrics=error_rate指定了模型评估指标为错误率。
#learn.fine_tune(5): 这一行代码对模型进行微调。在这里,fine_tune 方法会先冻结预训练模型的一部分层,
#然后在新的数据集上进行训练。括号中的参数5表示进行微调的阶段数,即在解冻整个模型之前,先训练最后几层的参数5个周期。

遥感图像处理笔记之【Deep learning for Geospatial data applications — Multi-label Classification】的更多相关文章

  1. 转:UFLDL_Tutorial 笔记(deep learning绝佳的入门资料 )

    http://blog.csdn.net/dinosoft/article/details/50103503 推荐一个deep learning绝佳的入门资料 * UFLDL(Unsupervised ...

  2. ZH奶酪:【阅读笔记】Deep Learning, NLP, and Representations

    中文译文:深度学习.自然语言处理和表征方法 http://blog.jobbole.com/77709/ 英文原文:Deep Learning, NLP, and Representations ht ...

  3. ML笔记:Deep Learning

    非DL:要找好的特征 DL:无需找好的特征,但新问题:要设计好的网络架构

  4. 论文笔记 — L2-Net: Deep Learning of Discriminative Patch Descriptor in Euclidean Space

    论文: 本文主要贡献: 1.提出了一种新的采样策略,使网络在少数的epoch迭代中,接触百万量级的训练样本: 2.基于局部图像块匹配问题,强调度量描述子的相对距离: 3.在中间特征图上加入额外的监督: ...

  5. Deep Learning 28:读论文“Multi Column Deep Neural Network for Traffic Sign Classification”-------MCDNN 简单理解

    读这篇论文“ Multi Column Deep Neural Network for Traffic Sign Classification”是为了更加理解,论文“Multi-column Deep ...

  6. 【深度学习Deep Learning】资料大全

    最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books  by Yoshua Bengio, Ian Goodfellow and Aaron C ...

  7. (转) Awesome - Most Cited Deep Learning Papers

    转自:https://github.com/terryum/awesome-deep-learning-papers Awesome - Most Cited Deep Learning Papers ...

  8. Machine and Deep Learning with Python

    Machine and Deep Learning with Python Education Tutorials and courses Supervised learning superstiti ...

  9. A Full Hardware Guide to Deep Learning

    A Full Hardware Guide to Deep Learning Deep Learning is very computationally intensive, so you will ...

  10. Displaying 1-16 of 86 results for: deep learning

    Displaying 1-16 of 86 results for: deep learning Deep Learning By Adam Gibson, Josh Patterson Publis ...

随机推荐

  1. MB01 BAPI_GOODSMVT_CREATE退货

    "-----------------------------------------@斌将军--------------------------------------------DATA: ...

  2. STM32CubeMX教程17 DAC - 输出三角波噪声波

    1.准备材料 正点原子stm32f407探索者开发板V2.4 STM32CubeMX软件(Version 6.10.0) keil µVision5 IDE(MDK-Arm) ST-LINK/V2驱动 ...

  3. AtCoder Beginner Contest 172 (C题前缀和 + 二分,D题筛因子,E题容斥定理)

    AB水题, C - Tsundoku 题目描述 有两摞书,一摞有 $n$ 本,从上至下每本需阅读 $a_i$ 分钟,一摞有 $m$ 本,从上至下每本需阅读 $b_i$ 分钟,问最多能在 $k$ 分钟内 ...

  4. mysql8.0环境搭建linux

    本文主要介绍如何在linux环境(64位)下搭建mysql8.0的数据库环境 1.到指定目录下下载安装包 [root@minio3 ~]# cd /usr/local/src [root@minio3 ...

  5. java读取解析endnote文件

    有些项目中会要求代码解析endnote文献资料获取一些标准的信息,例如XX在某著名期刊上发表了某篇文章,关于发表文章的这个事情的描述就会给坐着一个endnote文件来记录文章名称.作者.期刊名称.出版 ...

  6. Ubuntu 18.04安装arm-linux-gcc交叉编译器的两种方法(附下载地址)

    方法一:   我们都知道Ubuntu有一个专门用来安装软件的工具apt,我们可以用它来全自动安装arm-linux-gcc.   此方法安装的是最新版的,但是此方法需要FQ,否则99%会失败,这就是为 ...

  7. 30 秒使用 Sealos 搭建个人密码管理器 Vaultwarden

    我与 LastPass 的曲折恋情 超过 8 年网龄的我,注册过很多网站帐号,每个网站的密码我都用不同的复杂密码.一开始我全靠脑力记忆这些密码,后来渐渐觉得记起来很困难,就记录在笔记本上.但是随着时间 ...

  8. RabbitMQ消息队列的发布-消费

    1. 生产者 RabbitMQ_Producer static void Main(string[] args) { string path = AppDomain.CurrentDomain.Bas ...

  9. java基础-反射-day15

    目录 1. 案例引入 2. Class 的理解 3. 反射的详细使用 4. Class 类都有哪些实例 5. 详细使用 6. 获取属性 7. 获取方法 8 获取类的 接口 注解 所在的包 9. 思考 ...

  10. Redis 常用五种数据类型编码

    转载请注明出处: 目录 Redis 的五种数据结构 Redis 数据结构的内部编码 1.String 1.1 常用命令 1.2 内部编码 1.3 典型使用场景 2. Hash 2.1 常用命令及时间复 ...