遥感图像处理笔记之【Deep learning for Geospatial data applications — Multi-label Classification】
1.遥感图像处理笔记之【Land use/Land cover classification with Deep Learning】
2.遥感图像处理笔记之【Deep learning for Geospatial data applications — Multi-label Classification】
3.遥感图像处理笔记之【Multi-label Land Cover Classification with Deep Learning】4.遥感图像处理笔记之【FastAI Multi-label image classification】5.遥感图像处理笔记之【U-Net for Semantic Segmentation on Unbalanced Aerial Imagery】6.遥感图像处理笔记之【Сrор field boundary detection: approaches and main challenges】7.遥感图像处理笔记之【Automatic Flood Detection from Satellite Images Using Deep Learning】8.遥感图像处理笔记之【Machine Learning CS-433 - Class Project 2 - Road Segmentation - EPFL】9.遥感图像处理笔记之【多模态遥感图像综述】10.遥感图像处理笔记之【图像融合综述】11.【Trento】遥感图像数据集提供下载12.遥感图像处理笔记之【论文:一种图像融合新方法】13.【Pavia】遥感图像数据集下载地址和读取数据集代码14.特征融合与特征交互的区别15.遥感图像Trento原始数据集下载遥感图像处理学习(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个周期。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)