vs2010和matlab混合编程,利用VS 2010和Matlab混合编程实现卡尔曼滤波的方法

2017年 6月 第 32卷 第 2期 山 东 师 范 大 学 学 报 (自 然 科 学 版) Journal of Shandong Normal University(Natural Science) Jun.2017 Vo1.32 No.2 利用 VS 20 1 0和 Matlab混合 编程 实现 卡尔 曼滤 波的方法 陈旭宁 徐 雯 杨济民 (山东师范大学 物理与电子科学 学院 ,250014,济南 ) 摘要 在对脑电信号进行采集与处理的过程中,采集到的脑电信号在经过硬件处理之后仍然包含有大量的噪声,必须进行 滤波处理.本 文介绍 了卡 尔曼滤波 的基本原理 ,阐述 了 Matlab的优点与缺点 ,介绍 了目前流行的 Visual studio 2010工具平台的新特 性,提出了采用 Visual studio 2010与Marlab R2012b混合编程实现卡尔曼滤波的方法.通过实例.利用 Visual studio 2010与 Matlab R2012b混合 编程 实现了对 白鼠脑 电信号的卡尔曼滤波 ,取得 了良好 的效果.该方法将 两者的优缺点进 行 了互补 .实现 了 Matlab强 大的数值 运算 能力的跨 平台应用 ,使所得 程序在处理 复杂运算 时的运算速度 比单独使用 C、c+十等语 言进行处 理要 快 ,同时又有用 户界面 良好的优点 ,在科 研工作 和工程开发中的应用前 景非 常广阔. 关键词 Matlab; Visual Studio 2010; 卡尔曼滤波; 混合编程 中图分类号 rrP 31 文献标识码 A d0i: 10.3969/j.issn.1001—4748.2017.02.003 1 引 言 脑 电是大脑神经元突触后电位的综合 ,而脑电图是通过 电极采集并记录下 的脑细胞群的 自发性 、节律性 的电活动.一般情况下 ,将脑细胞 电活动的电位 幅值作为纵轴 ,时间作为横轴 ,这样把 电位幅度与时间的相互 关系记录下来就形成 了脑电图.白鼠的神经系统结构和机能单位与人的一样 ,都是神经细胞 ,也可以称为神 经元 ,大脑皮质中与功能有关的神经元主要是位于皮质层的椎体细胞.研究白鼠的脑电信号对研究人脑的功 能及脑部的临床诊断都有十分重要 的意义. 在对 白鼠脑电信号进行采集与处理的过程中,由于实验环境屏蔽性的不足 ,各类干扰都可能会混杂到采集 到的脑电信号当中,比如工频信号的干扰及其他的噪声干扰.脑电信号的硬件采集系统流程如图1所示 . 医圃 岛匝圃 匮回 0 巨圃 一匾圃 区圃 图 1 脑电信号采集系统流程图 采集到的脑电信号在经过上述硬件处理之后仍然包含有大量的噪声 ,为了保证信号后续处理分析结果 的准确性 ,必须对脑 电信号进行滤波处理 J. 卡尔曼滤波是一种适应各种不同条件的高效率滤波方法 ,被广泛地应用于信号处理、导航 、自动控制等 领域. Matlab的数值计算 、数据分析 、矩 阵处理 、计算 机仿真 、图像处理等功能十分强大 .在这些方 面有着 c、 c++等编程语言无可 比拟 的优势 ,利用 Maflab实现卡尔曼滤波 比较方便. 但 Matlab程序也有着诸多缺陷 ,例如 :Matlab程序代码边解释边执行 ,代码执行速度较慢 ;用 Matlab编 写的程序必须在安装 了 Matlab系统的计算机上才能 编译 和运行 ,对用户进行科学和工程计算非常不便[3]. 在很多时候 ,仅靠 Matlab还是不能很好地处理要解决的问题. 而面向对象 的程序开发语言 ,例如 c++、C}}等编程语言 ,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值