【图像分类】基于卷积神经网络和主动学习的高光谱图像分类(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

****🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️**座右铭:**行百里者,半于九十。

📋📋📋++本文目录如下:++🎁🎁🎁

目录

[💥1 概述](#💥1 概述)

[📚2 运行结果](#📚2 运行结果)

[🎉3 参考文献](#🎉3 参考文献)

[🌈4 Matlab代码实现](#🌈4 Matlab代码实现)


💥1 概述

文献来源:

深度神经网络最近已广泛应用于高光谱图像(HSI)分类。然而,它的成功在很大程度上归功于许多标记样品,这些样品的采集需要花费大量的时间和金钱。为了在降低标注成本的同时提高分类性能,本文提出了一种用于HSI分类的主动深度学习方法,该方法将主动学习和深度学习集成到一个统一的框架中。首先,我们训练一个具有有限数量的标记像素的卷积神经网络(CNN)。接下来,我们主动从候选池中选择信息量最大的像素进行标记。然后,使用通过合并新标记的像素构建的新训练集对CNN进行微调。此步骤与上一步一起迭代执行。最后,利用马尔可夫随机场(MRF)来增强类标签平滑度,以进一步提高分类性能。与其他最先进的传统和基于深度学习的HSI分类方法相比,我们提出的方法在三个基准HSI数据集上实现了更好的性能,标记样本明显更少。

原文摘要:

Abstract--- Deep neural network has been extensively applied to hyperspectral image (HSI) classification recently. However, its success is greatly attributed to numerous labeled samples, whose acquisition costs a large amount of time and money. In order to improve the classification performance while reducing the labeling cost, this article presents an active deep learning approach for HSI classification, which integrates both active learning and deep learning into a unified framework. First, we train a convolutional neural network (CNN) with a limited number of labeled pixels. Next, we actively select the most informative pixels from the candidate pool for labeling. Then, the CNN is fine-tuned with the new training set constructed by incorporating the newly labeled pixels. This step together with the previous step is iteratively conducted. Finally, Markov random field (MRF) is utilized to enforce class label smoothness to further boost the classification performance. Compared with the other state-of-the-art traditional and deep learning-based HSI classification methods, our proposed approach achieves better performance on three benchmark HSI data sets with significantly fewer labeled samples. Index Terms--- Active learning (AL), convolutional neural network (CNN), deep learning, hyperspectral image (HSI) classification, Markov random field (MRF).

📚 2 运行结果

部分代码:

%% Parameters for data

data.NameFolder = {'IndianPines', 'PaviaU', 'PaviaCenter'};

data.NameMat = {'GT.mat', 'Feature.mat'};

data.SizeOri = {[145, 145, 220], [610, 340, 103], [400, 300, 102]};

data.SizeWin = 8;

data.NumClass = {16, 9, 8};

data.IndBand = {[10, 80, 200], [12, 67, 98], [10, 60, 90]}; % to generate false RGB, which should be less contaminated bands

%data.flagPCA = true;

%data.ReducedDim = 10;

% Three datasets:

% data.flagSet = 1, Indian Pines;

% = 2, Pavia University;

% = 3, Pavia Center.

data.flagSet = 1;

data.NameFolder = data.NameFolder{data.flagSet};

data.SizeOri = data.SizeOri{data.flagSet};

data.NumClass = data.NumClass{data.flagSet};

data.IndBand = data.IndBand{data.flagSet};

%% Parameters for algorithm

alg.SampleSty = 'Rd'; % out of {'Rd', 'Classwise'}

alg.CountSty = 'Num'; % out of {'Num', 'Ratio'}

alg.NumTrn1st = {250, 107, 58};

alg.NumTrn1st = alg.NumTrn1st{data.flagSet};

% if alg.CountSty == 'Ratio'

%alg.RatioTrn1st = {0.02, 0.0025, 0.0025};

%alg.RatioTrn1st = alg.RatioTrn1st{data.flagSet};

alg.CrossVal = 0.05;

alg.NumAlAugPerIte = {[250, 150, 100, 50], [107, 107, 107], [26, 20]}; % The training samples added in each iteration keeps the same ratio with the training sample number of the first iteration

alg.NumAlAugPerIte = alg.NumAlAugPerIte{data.flagSet};

alg.NumIter = length(alg.NumAlAugPerIte)+1;

alg.AlStra = 'BvSB'; % out of {'BvSB', 'RS', 'EP'};

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

1\] Xiangyong Cao, Jing Yao, Zongben Xu, Deyu Meng. Hyperspectral Image Classification with Convolutional Neural Network and Active Learning. IEEE Transactions on Geoscience and Remote Sensing, 2020. \[2\] H. Bi, F. Xu, Z. Wei, Y. Xue, and Z. Xu, An active deep learning approach for minimally supervised polsar image classification. IEEE Transactions on Geoscience and Remote Sensing, 2019. ## [🌈](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=Mzk0MDMzNzYwOA==&action=getalbum&album_id=2591810113208958977#wechat_redirect "🌈")****4 Matlab代码实现****

相关推荐
万事可爱^16 分钟前
LangChain v1.0学习笔记(4)—— 核心组件Models
人工智能·笔记·学习·langchain·大模型
大学生毕业题目41 分钟前
毕业项目推荐:99-基于yolov8/yolov5/yolo11的肾结石检测识别系统(Python+卷积神经网络)
人工智能·python·yolo·目标检测·cnn·pyqt·肾结石检测
寄思~42 分钟前
Excel 数据匹配工具 -笔记
笔记·python·学习·excel
朔北之忘 Clancy1 小时前
2020 年 6 月青少年软编等考 C 语言二级真题解析
c语言·开发语言·c++·学习·青少年编程·题解·尺取法
知识分享小能手1 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04 中安装 Docker 容器 —— 知识点详解(26)
学习·ubuntu·docker
开开心心_Every1 小时前
安卓做菜APP:家常菜谱详细步骤无广简洁
服务器·前端·python·学习·edge·django·powerpoint
wdfk_prog1 小时前
WIN11如何可以安装ISO
linux·笔记·学习
Darkershadow1 小时前
蓝牙学习之Provision(2)
学习·蓝牙·ble·mesh
kitsch0x972 小时前
论文学习_IDFUZZ: Intelligent Directed Grey-box Fuzzing
学习
dxnb222 小时前
Datawhale26年1月组队学习:Agentic AI+Task1工作流简介
人工智能·学习