当前位置: 首页 > news >正文

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

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

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

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

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

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈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.

🌈4 Matlab代码实现

相关文章:

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

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

notepad++ verilog关键字自动补全

新建verilog.xml放在安装目录下 D:\Program Files (x86)\Notepad\autoCompletion <?xml version"1.0" encoding"Windows-1252" ?> <NotepadPlus><AutoComplete><KeyWord name"accept_on" /><KeyWord name"a…...

C语言知识

C语言知识 链接 C语言中的数组初始化是有三种形式的&#xff0c;分别是&#xff1a; (1)数据类型 数组名称[长度n] {元素1,元素2…元素n}; (2)数据类型 数组名称[] {元素1,元素2…元素n}; (3)数据类型 数组名称[长度n]; 数组名称[0] 元素1; 数组名称[1] 元素2; 数组…...

数据结构基础

将节点构建成树 数据的结构逻辑结构集合线性结构树形结构图状结构 存储结构合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如…...

深度学习中数据处理相关的技巧

文章目录 提取隐蔽特征惰性加载数据集类别分布不均衡 提取隐蔽特征 在某些任务中&#xff0c;一些类别的特征可能相对较为罕见或难以捕捉。由于这些特征在数据集中出现的频率较低&#xff0c;模型可能无法充分学习它们&#xff0c;从而导致对这些类别的辨别能力较弱。为了解决…...

wkhtmltopdf 与 .Net Core

wkhtmltopdf 是使用webkit引擎转化为pdf的开源小插件. 其有.NET CORE版本的组件,DinkToPdf,但该控件对跨平台支持有限 。 是由于各系统平台会产生不同的编译结果,故windows上使用.dll,而Linux上的动态链接库是.so 所以你需要在Linux系统上安装相关wkhtmltox软件。 我这里准备了…...

Linux Mint 21.3 计划于 2023 年圣诞节发布

Linux Mint 项目近日公布了基于 Ubuntu 的 Linux Mint 发行版下一个重要版本的一些初步细节&#xff0c;以及备受期待的基于 Debian 的 LMDE 6&#xff08;Linux Mint Debian Edition&#xff09;版本。 近日&#xff0c;Linux Mint 项目负责人克莱门特-勒菲弗&#xff08;Clem…...

腾讯云3年轻量应用服务器2核4G5M和2核2G4M详细介绍

腾讯云轻量应用服务器3年配置&#xff0c;目前可以选择三年的轻量配置为2核2G4M和2核4G5M&#xff0c;2核2G4M和2核4G5M带宽&#xff0c;当然也可以选择选一年&#xff0c;第二年xufei会比较gui&#xff0c;腾讯云百科分享腾讯云轻量应用服务器3年配置表&#xff1a; 目录 腾…...

rabbitmq中的消息确认

如何保证消息被全部消费 应用场景&#xff1a;我们不想丢失任何任务消息。如果一个工作者&#xff08;worker&#xff09;挂掉了&#xff0c;我们希望任务会重新发送给其他的工作者&#xff08;worker&#xff09;。 为了防止消息丢失&#xff0c;RabbitMQ提供了消息响应&…...

jenkins一键部署github项目

个人目前理解jenkins部署分为两步&#xff1a; 构建项目&#xff0c;如生成jar自动执行sh脚本 如果没有jenkins&#xff0c;我们可能需要将jar移动到服务器&#xff0c;然后执行java -jar跑程序&#xff0c;jenkins可以替代我们执行这些东西&#xff0c;下面从0开始&#xff0…...

岩土工程安全监测隧道中使用振弦采集仪注意要点?

岩土工程安全监测隧道中使用振弦采集仪注意要点&#xff1f; 岩土工程的安全监测是非常重要的&#xff0c;它可以帮助工程师及时发现可能存在的问题&#xff0c;并及时解决&#xff0c;保障施工进度以及施工质量&#xff0c;保障工程的安全运行。其中&#xff0c;振弦采集仪是…...

第四章nginx组件精讲

nginx配件location匹配的规则和优先级&#xff08;重点面试题&#xff09; RUI&#xff1a;统一资源标识符&#xff0c;是一种字符串标识&#xff0c;用于标识抽象的或者物理资源&#xff08;文件&#xff0c;图片&#xff0c;视频&#xff09; nginx当中&#xff1a;uri ww…...

LlamaGPT -基于Llama 2的自托管类chatgpt聊天机器人

LlamaGPT一个自托管、离线、类似 ChatGPT 的聊天机器人&#xff0c;由 Llama 2 提供支持。100% 私密&#xff0c;不会有任何数据离开你的设备。 推荐&#xff1a;用 NSDT编辑器 快速搭建可编程3D场景 1、如何安装LlamaGPT LlamaGPT可以安装在任何x86或arm64系统上。 首先确保…...

常见的跨域解决方案

常见的跨域解决方案&#xff1a; 跨域问题可以分为两种情况&#xff1a;前端跨域和后端跨域。以下是针对这两种情况的跨域解决方案&#xff1a; 前端跨域解决方案&#xff1a; JSONP&#xff1a; 适用于前端向不同域名下的服务器请求数据&#xff0c;通过添加回调函数名称来…...

分布式websocket解决方案

1、websocket问题由来 websocket基础请自行学习,本文章是解决在分布式环境下websocket通讯问题。 在单体环境下,所有web客户端都是连接到某一个微服务上,这样消息都是到达统一服务端,并且也是由一个服务端进行响应,所以不会出现问题。 但是在分布式环境下,我们很容易发现…...

奥威BI财务数据分析方案:借BI之利,成就智能财务分析

随着智能技术的发展&#xff0c;各行各业都走上借助智能技术高效运作道路&#xff0c;财务数据分析也不例外。借助BI商业智能技术能够让财务数据分析更高效、便捷、直观立体&#xff0c;也更有助于发挥财务数据分析作为企业经营管理健康晴雨表的作用。随着BI财务数据分析经验的…...

Android12之com.android.media.swcodec无法生成apex问题(一百六十三)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…...

Xcode build和version

参考 一个叫做Version&#xff0c;一个叫做Build&#xff0c;&#xff08;version是版本号&#xff0c;build是打正式包每次Archive时的都增加的值&#xff09;这两个值都可以在Xcode中选中target&#xff0c;点击“Summary”后看到。 Version在plist文件中的key是“CFBundleSh…...

前端面试:【原型链】代码世界的家族传承

嗨&#xff0c;亲爱的代码探险家&#xff01;在JavaScript的奇妙世界里&#xff0c;有一个令人惊叹的概念&#xff0c;那就是原型链。这个概念就像是代码世界的家族传承&#xff0c;允许对象之间分享属性和方法&#xff0c;让你的代码更加高效和灵活。 1. 什么是原型链&#xf…...

2D应用开发是选择WebGL 还是选择Canvas?

推荐&#xff1a;使用 NSDT场景编辑器 助你快速搭建可二次编辑的3D应用场景 在介绍WebGL和Canvas的区别和联系之前&#xff0c;需要先了解它们各自的定义和特点。 WebGL是一种基于标准HTML5的技术&#xff0c;用于在Web浏览器中实时渲染3D图形。它是由Khronos Group开发的一套…...

攻克Windows安装难题:AtlasOS全方位解决2502/2503错误的技术方案

攻克Windows安装难题&#xff1a;AtlasOS全方位解决2502/2503错误的技术方案 【免费下载链接】Atlas &#x1f680; An open and lightweight modification to Windows, designed to optimize performance, privacy and security. 项目地址: https://gitcode.com/GitHub_Tren…...

通义千问1.5-1.8B-Chat-GPTQ-Int4 Java开发集成:SpringBoot项目实战指南

通义千问1.5-1.8B-Chat-GPTQ-Int4 Java开发集成&#xff1a;SpringBoot项目实战指南 最近在帮一个朋友做项目&#xff0c;他们想在自己的Java应用里加个智能对话功能&#xff0c;看中了通义千问1.5-1.8B-Chat-GPTQ-Int4这个模型。这模型挺有意思的&#xff0c;体积小但能力不弱…...

iOS日志与事件深度解析工具:iLEAPP技术架构与实战指南

iOS日志与事件深度解析工具&#xff1a;iLEAPP技术架构与实战指南 【免费下载链接】iLEAPP iOS Logs, Events, And Plist Parser 项目地址: https://gitcode.com/gh_mirrors/il/iLEAPP 在移动设备取证和数据分析领域&#xff0c;iOS系统的复杂性一直是技术人员的挑战。面…...

ICP算法实战:从Point-to-Plane到VGICP,5种点云配准方法性能对比(附Python代码)

ICP算法实战&#xff1a;从Point-to-Plane到VGICP&#xff0c;5种点云配准方法性能对比&#xff08;附Python代码&#xff09; 在三维视觉和机器人领域&#xff0c;点云配准是构建环境地图、实现定位导航的基础技术。当我们需要将多个视角采集的点云数据拼接成一个完整的三维模…...

5分钟快速搭建你的第一个Gemini AI智能体应用:完整开发指南

5分钟快速搭建你的第一个Gemini AI智能体应用&#xff1a;完整开发指南 【免费下载链接】gemini-fullstack-langgraph-quickstart Get started with building Fullstack Agents using Gemini 2.5 and LangGraph 项目地址: https://gitcode.com/gh_mirrors/ge/gemini-fullstac…...

AlwaysOnTop:重新定义你的数字工作空间

AlwaysOnTop&#xff1a;重新定义你的数字工作空间 【免费下载链接】AlwaysOnTop Make a Windows application always run on top 项目地址: https://gitcode.com/gh_mirrors/al/AlwaysOnTop 想象一下这样的场景&#xff1a;你正在为一个重要的项目编写报告&#xff0c;…...

STM32F103C8T6连接HC-06蓝牙模块的完整避坑指南:从AT指令调试到数据收发异常处理

STM32F103C8T6与HC-06蓝牙模块实战避坑手册&#xff1a;从AT指令异常到数据收发的深度解决方案 当你第一次尝试用STM32F103C8T6驱动HC-06蓝牙模块时&#xff0c;是否遇到过这样的场景&#xff1a;AT指令发送后如同石沉大海&#xff0c;串口调试助手始终一片空白&#xff1b;或是…...

保姆级教程:SenseVoiceSmall多语言语音识别快速部署与情感检测实战

保姆级教程&#xff1a;SenseVoiceSmall多语言语音识别快速部署与情感检测实战 1. 环境准备与快速部署 1.1 系统要求与依赖安装 在开始之前&#xff0c;请确保你的系统满足以下基本要求&#xff1a; 操作系统&#xff1a;Linux (推荐 Ubuntu 20.04) 或 Windows WSL2Python版…...

春联生成模型-中文-base行业落地:新能源车企‘碳中和’‘智驾’等科技春联生成

春联生成模型-中文-base行业落地&#xff1a;新能源车企碳中和智驾等科技春联生成 1. 引言&#xff1a;当传统春联遇上现代科技 春节贴春联是千百年来的传统习俗&#xff0c;但传统的"福禄寿喜"已经难以完全表达现代企业的科技内涵。特别是新能源车企&#xff0c;既…...

抖音弹幕抓取终极指南:3分钟掌握系统代理抓包技术

抖音弹幕抓取终极指南&#xff1a;3分钟掌握系统代理抓包技术 【免费下载链接】DouyinBarrageGrab 基于系统代理的抖音弹幕wss抓取程序&#xff0c;能够获取所有数据来源&#xff0c;包括chrome&#xff0c;抖音直播伴侣等&#xff0c;可进行进程过滤 项目地址: https://gitc…...