光谱定性分析流程与实现---基于OpenSA开源库完成

光谱预处理最简单实现方法--基于OpenSA光谱分析库 系列文章目录 “光晰本质,谱见不同”,光谱作为物质的指纹,被广泛应用于成分分析中。伴随微型光谱仪/光谱成像仪的发展与普及,基于光谱的分析技术将不只停留于工业和实验室,即将走入生活,实现万物感知,见微知著。本系列文章致力于光谱分析技术的科普和应用。 文章目录系列文章目录前言一、数据来源二、代码解读2.1 读取数据2 .2 划分数据集2 .3 返回训练集和测试集并绘制光谱图片2.4 建立1-D CNN模型2.5 训练1-D CNN模型2.6 测试1-D CNN模型2.7 运行CNN模型,并用查看结果总结 阅读详情

系列文章目录

“光晰本质,谱见不同”,光谱作为物质的指纹,被广泛应用于成分分析中。伴随微型光谱仪/光谱成像仪的发展与普及,基于光谱的分析技术将不只停留于工业和实验室,即将走入生活,实现万物感知,见微知著。本系列文章致力于光谱分析技术的科普和应用。



前言

典型的光谱分析模型(以近红外光谱作为示意,可见光、中远红外、荧光、拉曼、高光谱等分析流程亦相似)建立流程如下所示,在建立过程中,需要使用算法对训练样本进行选择,然后使用预处理算法对光谱进行预处理,或对光谱的特征进行提取,再构建校正模型实现定量分析,最后针对不同测量仪器或环境,进行模型转移或传递。因此训练样本的选择、光谱的预处理、波长筛选、校正模型、模型传递以及上述算法的参数都影响着模型的应用效果。

图 1近红外光谱建模及应用流程
针对光谱分析流程所涉及的常见的训练样本的划分、光谱的预处理、波长筛选、校正模型算法建立了完整的算法库,名为OpenSA(OpenSpectrumAnalysis)。整套算法库的架构如下所示。
在这里插入图片描述
样本划分模块提供随机划分、SPXY划分、KS划分三种数据集划分方法,光谱预处理模块提供常见光谱预处理,波长筛选模块提供Spa、Cars、Lars、Uve、Pca等特征降维方法,分析模块由光谱相似度计算、聚类、分类(定性分析)、回归(定量分析)构建,光谱相似度子模块计算提供SAM、SID、MSSIM、MPSNR等相似计算方法,聚类子模块提供KMeans、FCM等聚类方法,分类子模块提供ANN、SVM、PLS_DA、RF等经典化学计量学方法,亦提供CNN、AE、Transformer等前沿深度学习方法,回归子模块提供ANN、SVR、PLS等经典化学计量学定量分析方法,亦提供CNN、AE、Transformer等前沿深度学习定量分析方法。模型评估模块提供常见的评价指标,用于模型评估。自动参数优化模块用于自动进行最佳的模型设置参数寻找,提供网格搜索、遗传算法、贝叶斯概率三种最优参数寻找方法。可视化模块提供全程的分析可视化,可为科研绘图,模型选择提供视觉信息。可通过几行代码快速实现完整的光谱分析及应用(注: 自动参数优化模块和可视化模块暂不开源,等毕业后再说)


本篇针对OpenSA的定性分析模块进行演示,展示如何快速的构建光谱定性分析模型。

一、光谱数据读入

提供一个为公开定性分析数据集,本章仅以公开定量分析数据集作为演示,该数据集为4分类的开源药品的数据集。

1.1 光谱数据读入

# 分别使用一个回归、一个分类的公开数据集做为example
def LoadNirtest(type):

    if type == "Rgs":
        CDataPath1 = './/Data//Rgs//Cdata1.csv'
        VDataPath1 = './/Data//Rgs//Vdata1.csv'
        TDataPath1 = './/Data//Rgs//Tdata1.csv'

        Cdata1 = np.loadtxt(open(CDataPath1, 'rb'), dtype=np.float64, delimiter=',', skiprows=0)
        Vdata1 = np.loadtxt(open(VDataPath1, 'rb'), dtype=np.float64
无信息变量选择(UVE)波长筛选算法--基于OpenSA开源库实现 系列文章目录 “光晰本质,谱见不同”,光谱作为物质的指纹,被广泛应用于成分分析中。伴随微型光谱仪/光谱成像仪的发展与普及,基于光谱的分析技术将不只停留于工业和实验室,即将走入生活,实现万物感知,见微知著。本系列文章致力于光谱分析技术的科普和应用。 文章目录系列文章目录前言一、光谱数据读入1.1 光谱数据读入1.2 光谱可视化二、光谱波长筛选2.1 光谱预处理模块2 .2 光谱波长筛选的使用总结 前言 典型的光谱分析模型(以近红外光谱作为示意,可见光、中远红外、荧光、拉曼、高光谱等分析流程亦相似)建立流 阅读详情

相关推荐

matlab预处理光谱数据,一种近红外光谱数据预处理方法与流程

本发明公开了属于近红外光谱分析技术领域,尤其涉及一种近红外光谱数据预处理的新方法,主要用于建立近红外定量和定性模型时对近红外光谱数据的预处理。背景技术:近红外光谱技术具有分析速度快、样本制作简单的特点,目前,近红外光谱技术在烟草、中药、食品领域得以实际应用,随着近红外光谱技术应用范围不断拓展,大量相对准确的近红外定量模型需要建立,一个预测精度高、稳定性好的模型受近红外光谱数据的影响较大。近红外光谱...

weixin_39704727的博客 4229

光谱数据分析全流程解读

本文系统介绍了光谱分析技术及其化学计量学方法,重点阐述了拉曼光谱数据处理流程。光谱分析通过解析物质与光的相互作用获取特征信息,化学计量学则运用数学和统计学方法优化数据提取。数据处理包括预处理(归一化、滤波去噪、基线校正)、特征量提取和数学模型建立三大核心模块。其中,归一化处理采用min-max和Z-score标准化方法,去噪运用滑动中值/均值/S-G滤波算法,基线校正通过多项式拟合实现。最后通过回归分析建立浓度预测模型。该技术体系为物质定性和定量分析提供了可靠工具。

Dfreedom.的博客 3万+

深入探索LineSpec开源库:光谱数据处理利器

光谱数据分析是现代科学和工程领域不可或缺的一部分,其应用跨越了化学、物理学、生物学、材料科学等多个领域。在本章中,我们将对光谱数据分析的基础概念进行介绍,解释其在各种环境中的应用,并概述数据分析过程的总体框架。我们将探讨不同类型的光谱技术,例如紫外-可见光谱、红外光谱、核磁共振光谱等,以及它们是如何提供有关物质组成和结构信息的。此外,本章还将简要介绍数据分析在制药、食品安全检测、环境监测等实际问题解决中的作用。

weixin_32661831的博客 1333

OpenSA:资产管理,资产采集,灰色发布,反向代理,批量任务,任务编排,计划任务,日志审计,权限管理,角色管理,部门管理,运维自动化

OpenSA运维自动化平台 架构说明 Django 2.1 + MySQL 5.7 + Redis 5.0 +芹菜v4.2.0 生产环境请使用nginx + uwsgi,不对公网开放,或者使用SSL双向认证 命令和文件分发基于SSH协议,支持Linux / Windows(cygwin)|支持快速修改为ansible 使用2.7版本inspina模版 支持国际化(默认中/英),有些细节未完善,欢迎加入完善项目 如果系统自己用得还不错,请多多推荐给身边的朋友(star!star!star!......) 欢迎提交功能开发和优化建议! 屏幕

MATLAB高光谱数据分析代码

有助于大家学习

Python-OpenSA运维自动化平台

资产管理、资产采集、灰度发布、反向代理、批量任务、任务编排、计划任务、日志审计、权限管理、角色管理、部门管理

OpenSA:该存储库包含基于OpenRA Mod SDK的Swarm Assault重制项目

关于 该存储库包含在OpenRA引擎中重新创建的Swarm Assault游戏。该项目的目标是为1999年发行的《群虫突击》游戏带来现代控制和质量生活的改进,同时仍尽可能忠实于原始原始资料。 状态 目前,该项目仍需要大量抛光。但是,您可以自由地进行小规模冲突或重新创建任务(当前为80/100),可以随时提供任何反馈,甚至可以帮助您进一步推进该项目。 虫群大战vs OpenSA 由于OpenSA项目基于OpenRA Mod SDK,因此它在质量上有很多改进,并且在项目中添加了其他内容。以下是主要功能: 开源, 多人游戏 支持高清分辨率, 无缝放大和缩小, 能够将单位排队, 集会积分, 由玩家控制的单位比由AI控制的单位更不容易徘徊。 更高级的地图编辑器,具有创建具有目标的任务的能力 可以向游戏中添加自己的单位 OpenSA中没有随机地图生成器,但是该项目能够将旧地图转换为ORA格式,因此不会

《LabVIEW ZYNQ实战指南》第6章>>案例解析:基于USB WiFi模块的ZYNQ无线通信部署与Linux RT开发

本文详细解析了如何为ZYNQ开发板部署USB WiFi模块,实现无线通信。通过LabVIEW Linux RT环境,利用封装好的驱动VI,开发者可轻松配置ZYNQ连接无线网络,摆脱网线束缚,实现程序无线部署与远程调试,为工业物联网应用奠定基础。

app77的博客 755

[前沿技术] AMD FSR 1.0源码解析:EASU算法实现细节与优化策略

本文深入解析了AMD FSR 1.0技术的核心——EASU(边缘自适应空间升频)算法。通过剖析其源码,详细阐述了EASU如何利用12-tap采样窗口、基于Lanczos滤波器的多项式近似以及自适应的边缘检测机制,在无需AI模型的情况下实现高质量图像放大。文章重点揭示了其极致的GPU优化策略,包括寄存器利用、采样优化和避免动态分支,为理解高性能图形算法提供了绝佳范例。

docker7nomad的博客 541

目标检测中回归损失函数(L1Loss,L2Loss,Smooth L1Loss,IOU,GIOU,DIOU,CIOU,EIOU,αIOU ,SIOU)

为了解决CIoU的问题,有学者在CIOU的基础上将纵横比拆开,提出了EIOU Loss,并且加入Focal聚焦优质的预测框,与CIoU相似的,EIoU是损失函数的解决方案,只用于训练。在错误率小的地方,梯度的值也应当小,反之在错误率大的地方,梯度也应当大,因为这时候我们需要对错误率小的情况进行微调,而错误率大的地方进行大刀阔斧的调整;如下图所示,三种情况IoU都相等,但看得出来他们的重合度是不一样的,左边的图回归的效果最好,右边的最差。DIoU的作者考虑到,在两个框中心点重合时,c与d的值都不变。

zyw2002的博客 6632

【Creo】关于Creo一换网络就报错许可证丢失问题解决方案

依照我的个人理解,Creo只要一更换网络,则其许可证里面的网卡参数和现在的网络就对不上了,所以就会出现报错,并且有可能是报错代码(-9),提示许可证激活有问题。

weixin_52002180的博客 6042

神经网络学习笔记-波尔兹曼(Boltzmann)机

Boltzmann机是一种反馈随机神经网络 两种输出状态,单极性0或1。输出状态的取值根据概率统计法则决定,这种概率统计法则类似Boltzmann分布,部分反馈 它在神经元状态变化中引入了统计概率,网络的平衡状态服从Boltzmann分布,网络运行机制基于模拟退火算法。 离散Hopfield神经网络+模拟退火+隐单元=Boltzman机 DHNN全反馈,转移函数:符号函数 BM机网络拓扑...

求易学堂的博客 2615

运行stable-diffusion出现的问题

解决:即用 https://github.com/CompVis/taming-transformers/blob/master/taming/modules/vqvae/quantize.py 新文件,替换错误提示文件中的全部内容即可。5.新建文件夹 CompVis/stable-diffusion-safety-checker/将下载的四个文件放入 解决!后面还会遇到'openai/clip-vit-large-patch14离线下载的问题,同样步骤解决。解决:下载后离线,步骤如下。

weixin_52121118的博客 2348

中文顶刊《会计研究》文本分析技术最新进展总结盘点

会计研究》是由中华人民共和国财政部主管、中国会计学会主办的国家一级学术期刊,为会计领域中文顶级期刊。随着大数据技术的日益成熟, 社交网络类文本 、上市公司披露类文本、媒体报道类文本、 其他类文本 、网络搜索数据、P2P 网络借贷文 本与分析师报告等文本数据逐渐成为财务会计的研究素材。

qq_52891550的博客 2893

高斯过程的数学理解

G澳大利亚的过程是有益的,特别是当我们有少量数据时。当我在制造业担任数据科学家时,我们的团队使用这种算法来揭示我们接下来应该进行哪些实验条件。但是,此算法不如其他算法流行。在这篇博客中,我将通过可视化和 Python 实现来解释高斯过程 [1] 的数学背景。

gongdiwudu的专栏 3611

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

上一篇: 无信息变量选择(UVE)波长筛选算法--基于OpenSA开源库实现
下一篇: 高光谱图像算法实习工程师面经
Echo_Code
博客等级 码龄7年 795粉丝 25原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值