- 博客(61)
- 资源 (33)
- 收藏
- 关注
原创 gprMax3.0随机介质建模
此处利用gprMax建立随机介质模型,采用matlab生成随机数组,保存为HDF5文件,此处为全代码,无需修改即可运行。读入自定义的随机模型此文参考其他博主的自定义几何形状模块以及随机介质建模。
2024-02-27 14:54:26
1926
原创 具名元组和字典作为函数的参数
从结果可以看出*item_1解包的时候是按位置解包赋值的,要是想传递关键字参数还是要用字典处理。虽然具名元组能通过属性名称获取变量,但本质还是元组,作为参数传递的时候是以位置信息为准的。运行结果:id 1 comp_name 2 publish_time 3。运行结果:id 1 comp_name 3 publish_time 2。问题1:具名元组作为函数的参数是按位置传递还是关键字传递?
2023-06-02 15:39:38
179
原创 Docker Desktop 如何运行容器
1、配置镜像源,虽然配置了镜像源,但是在界面你还是搜索不到镜像,应该默认使用的是官方dockerhub的原因,后面可以手动创建避开这个问题。这里对应的路径是哪里呢,又应该如何访问呢?在linux中挂载的地址直接就能访问,windows中的这个地址可以通过浏览器或者文件管理器访问。这里要注意下,在不同的版本中这个路径有所不同,网上看到的路径可能不一定和你的能完全对应上。这里有个疑惑是这个挂载的容器卷在哪里呢,虽然可以直接点击右键下载或者上传文件。可以看到这里已经能搜索到镜像了,说明配置的镜像源已经生效了。
2023-06-01 18:24:02
2871
原创 Django的runserver部署和uwsgi部署对比
查了很多资料都说Django的runserver不适合生产环境部署,具体的原因并没有查到,目前可以得出的结论是runserver运行默认是多线程的可以支持一定量的并发,但是Django的官方并不建议这种方式。对比下runserver和uwsgi部署的性能差异,实验环境:1、虚拟机创建宿主机:virtualbox-2C-2G2、在宿主机中使用docker进行部署3、jemeter进行压测。测试的服务直接返回结果(Hello, world. You're at the polls index.)。测试的服务添加
2022-07-01 22:40:47
1926
2
原创 Python中如何使用logging模块记录日志
日志在实际生产工作中有着很重要的作用,之前一直不太注意这方面,导致生产环境遇到问题无从下手,借着整理把日志这块的功能熟悉下。网上有很多相关的介绍,不过还是建议大家浏览下官方相关的资料。官方文档的布局都差不多这里以3.8.12的版本为例:logging — Logging facility for Python — Python 3.8.12 documentation文档对logging模块的功能整体上做了个简单的介绍,左边的红框说logging模块是线程安全的(进程不安全),如何解决多进程的问题在logg
2022-06-10 22:25:25
909
1
原创 使用conda已安装python工具包,但Pycharm中仍提示缺包,解决办法
使用conda安装python工具包,但Pycharm中提示缺包,用pycharm自动安装还安装不了,-----解决办法其实很简单,就是要弄清楚解释器,弄清楚到底装了哪些python的问题。
2022-02-15 15:01:20
22340
原创 Python实现自动批量写gprMax3.0输入文件以及批量运行
此处利用python实现生成批量的gprMax3.0模型文件,并且进行批量的运行,需要注意的事项:1、写完模型输入文件时,要关闭文件,否则后面调用api运行会出错;2、运行Bscan时,尽量不输出模型的vti文件,太占内存,geomery_view注释掉
2022-02-11 14:57:25
4892
14
原创 python运行gprMax3.0
最近尝试用深度学习算法做点探地雷达的研究,发现缺点数据,之前用gprMax模拟都是cmd中手动输入命令运行,对于批量处理显然不合理,还是使用代码管理运行比较靠谱!下面介绍了具体的python实现代码,gprMax的输入文件,以及结果
2022-02-11 09:44:45
3355
5
原创 VirtualBox(centos7)中添加lvm(xfs)并扩展空间
最近工作上有个需求:给某个服务器扩展空间,为了不影响之前的服务,相当于:添加个硬盘然后对已有的挂载点扩容。PV(physical volume)即物理卷,就是物理磁盘,可以通过fdisk -l 查看操作系统有几块硬盘VG(volume group)即卷组,就是一组物理磁盘的组合,里面可以有一块硬盘也可以有多块硬盘LV(logical volume)及逻辑卷,就是在VG(指定的物理磁盘组)里面划分出来的可以说成是PV就是硬盘,而VG就是管理硬盘的操作系统,而LV就是操作系统分出来的各个分区.
2021-07-31 00:01:49
386
原创 Highstock中如何获取时间选择器的消息响应
Highstock中的时间选择器在绘制时间相关的图像的时候很好用,最近有一个需求:获取时间选择器选择的时间范围用于后面的处理。查看了下官方文档,还真有相关事件的定义:afterSetExtremes添加截图:https://www.highcharts.com.cn/docs/range-selector功能有了,可是怎么用呢,继续找资料,还真有人做过相关的工作:https://codesandbox.io/s/jyp7o添加截图代码下载:有了这个事件的响应,就可以做一些多图
2020-12-03 22:02:47
235
原创 ElementUI中Form表单的规则校验
ElementUI中的Form表单多用于信息提交页面,不同类型的信息有着不同的校验规则。利用ElementUI中的rules属性可以很方便的设置规则校验,除了常规的数据校验,rules实际上也支持正则化语法。在官方的例子中是通过函数实现的,实际上不用这么麻烦,使用pattern:正则化公式的方法即可。比如:phoneNumber:[ {required:true, message:'请输入手机号', trigger:'blur'}, {pattern: /^0{0,1}(13[
2020-12-03 15:26:35
1258
原创 Unity-Python-VUE Socket通信
需求描述:Unity通过Socket发送数据给网页在前端VUE中显示,socket服务采用Python实现。实际上这个功能可以分为下面三个部分:查了好多资料,整理如下的学习路线方便新手入坑。1、Unity和服务端的Socket通信;Unity的Socket服务,这个部分还算顺利没有遇到太坑的问题,参考下面的文章:http://www.luohanjie.com/2019-07-25/socket-io-for-unity3d.html这里提到的一个插件 Socket For Unity3
2020-12-03 14:39:56
758
原创 脑电特征中的微分熵(DE)计算
最近参加了一个脑电相关的竞赛,其中有一个赛道是情绪识别,根据脑电数据将情绪进行4分类,查了一些文献,使用了包括时域、频域、空间域的一些特征,最后发现微分熵作为特征的分类效果最好。相关参考文献整理下载:https://download.youkuaiyun.com/download/zhoudapeng01/12845100微分熵作为作为香农熵在连续变量上的推广形式其计算比较简单:参考:http://cg.cs.tsinghua.edu.cn/people/~Yongjin/N112018-00337.p
2020-09-15 16:20:01
17959
13
原创 Python中MNE库的脑电地形图绘制
脑电地形图在进行和“源”相关的分析时很有用,可以直观的看出各个电极的激活情况以及其随时间的变化。在标准的脑电数据中都是有电极的坐标位置的,会用EEGLab的可能对这块比较熟悉了,实际MNE库中也有相关的定义和实现,可以导入外部的电极数据,或者使用一些标准的位置信息如:10-20电极分布。电极的坐标以及坐标系:脑电电极的分布可以根据实际情况设计不同的位置,以标准的1020为例。https://www.diytdcs.com/2012/07/1020-system-electrode-distanc
2020-09-10 11:56:22
11432
2
原创 Python中HHT(希尔伯特-黄变换)以及其在EEG数据处理中的应用
在脑电信号的处理过程中去除伪迹是很关键的一个步骤,常用的有ICA和小波等方法。不过这些方法大多是针对多通道脑电数据进行处理的,单通道的脑电数据如何去除伪迹呢?推荐一篇文章《单通道脑电信号眼电伪迹去除算法研究》,在文章中提到了一种WT-EEMD-ICA方法,该方法是小波-集合经验模态分解-独立成分分析的结合。具体内容感兴趣的可以精读下这篇文章,在对应的下载附件中有这篇文章。文章相关资源下载:上面说的和本篇的内容关系不大,我就是在看了文章后对里面提到的HHT方法感兴趣,就研究了一下。下面主要说的是HHT
2020-09-08 09:27:04
12205
11
原创 Python中FIR滤波和小波包滤波对比(MNE脑电数据处理)
小波变换有信号显微镜之称,在EEG分析中也有广泛的应用,印象中小波算法是来源于地球物理解释的。之前有介绍过小波的一些资料和实现:https://blog.youkuaiyun.com/zhoudapeng01/article/details/107025901可以参考下,这里主要分析小波和FIR滤波效果的对比。博客对应的代码# 短时傅里叶变换和FIR滤波效果对比import mneimport matplotlib.pyplot as pltfrom scipy import signal, fft
2020-09-01 14:04:10
3094
1
原创 Python中FIR滤波和STFT滤波对比(MNE脑电数据处理)
在脑电数据处理中滤波是很重要的一个步骤,直接影响后面的特征提取等计算流程。在之间写的博客中有过介绍(https://blog.youkuaiyun.com/zhoudapeng01/article/details/106124655),目前在脑电领域应用比较多的滤波方法有FIR,小波,以及STFT(短时傅里叶变换)等。这里主要对比MNE库提供的FIR滤波和STFT方法:FIR滤波:FIR带通滤波在脑电数据处理中使用的非常多,其本质就是一个带通滤波器,主要用来分离不同频段的脑波数据,用于后续的数据处理工作。其在MNE
2020-08-26 09:34:44
3760
原创 Python 中MNE库去伪迹(ICA)
脑电数据处理过程中如何去除伪迹是很重要的一个步骤,伪迹的处理主要包括眼电、心电、肌肉点以及工频干扰。实际处理过程中通过滤波0.5-45赫兹的带通滤波器可以去除掉大部分的噪音,在我接触到的实际脑电数数据中心电的伪迹大多数还真不是很明显,去伪迹的时候眼电的伪迹相对更加明显一些。MNE库中也有很多去伪迹的方法,这里给大家介绍一种ICA的方式。查看了一些文章,ICA在脑电数据处理中应用的也比较普遍。采用ICA的方式去除伪迹,主要的工作就是分辨出ICA成分中的伪迹,实际上在你做完ICA后如果伪迹明显,还是很容
2020-07-29 14:50:59
7867
2
原创 Python中小波工具(pywt)分析EEG数据
小波作为一种信号处理的工具在脑波分析中应用很多,常用的有连续小波变换、小波包分析等等。小波涉及的相关介绍和公式推导有很多资料,推荐下面几个连接,本文主要介绍连续小波变换,小波包分解重构,对应频段能量计算这3种应用在Python中的实现。小波变换:https://www.cnblogs.com/jfdwd/p/9249850.htmlhttps://blog.youkuaiyun.com/weixin_42943114/article/details/89603208https://my.oschina.
2020-07-01 15:26:12
24009
8
原创 Python中MNE库进行PSD分析(计算不同频率区间的累加和)
在做脑波数据分析的时候,免不了需要进行频率域的数据分析,功率谱密度是常用的一种分析方法,在MNE库中有psd算法的实现。开始使用之前推荐个博客,https://zhuanlan.zhihu.com/p/49328001讲解了什么是PSD。有一点需要注意,PSD通常根据频率分辨率做归一化也就是其分母为采样点数。对应的官方实例:https://mne.tools/stable/auto_tutorials/time-freq/plot_sensors_time_frequency.html#sphx-.
2020-06-23 11:58:11
9527
2
原创 Python中MNE库滤波的重要性
最近在处理MI数据的时候发现滤波真的很重要啊,之前一直没把预处理当个事,这次发现还是很重要的!!!一、滤波对分类准确率的影响。1、以MNE官方提供的CSP实例为例(https://blog.youkuaiyun.com/zhoudapeng01/article/details/104969977):有FIR滤波的时候准确率为百分之九十多。注释掉FIR滤波后,准确率只有百分之三十多。。。还赶不上随机的结果。2、以BCICompetition中的BCICIV_2a_gdf数据为例:.
2020-05-15 14:27:07
4069
3
原创 Python中MNE库的事件相关特定频段分析(MEG数据)
最近做运动想象分类的时候遇到一个问题就是分类结果始终不准,想从原始数据分析一下脑电数据,找了下MNE提供的examples。里面还真有一个按频带分析的例子,说实话打开这个例子最主要的原因是这个图看着比较牛。。。后面的主要内容就是分析这个例子的实现原理了。先上代码吧...
2020-04-17 16:54:14
2089
原创 Python中MNE库的EEG数据(PCA和ICA)预处理
PCA/ICA是脑电数据预处理的一个步骤,一般放在带通滤波处理之后,个人理解PCA和ICA的作用基本一致,用于去除心电和眼电的影响。不过PCA是提取主要成分,相当于降维提取特征,ICA是分离独立成分,目前PCA和白化已经是ICA的标准化的预处理步骤了(用于降低计算量)。所以说只做ICA就可以了,因为这个过程也包括PCA了。(有关PCA和ICA的关系:https://www.zhihu.com/...
2020-03-31 16:12:43
11375
8
原创 Python中MNE库模拟原始脑电数据
研究脑电算法的时候发现了一个问题,如何评价模型的准确性? 之前的工作流程都是先用公开数据集的数据训练好模型,然后放到实测数据上进行参数微调。在公开数据集上进行模型的选择主要是因为公开数据集的数据质量较好,可以排除硬件的影响,从而专心于算法的研究。但有些时候,尽管在公开数据集上计算模型得到的结果也不是很理想,可是还想进一步分析算法,这时候就需要保证数据的不受其他因素的影响了,可是实测的数据总是会受到...
2020-03-26 13:08:12
2336
原创 运动想象中共空间模式算法(CSP)的实现
最近在研究运动想象算法,其中CSP来提取特征用的比较多,尤其是在二分类的问题中,之前写过一篇如何在MNE库中实现CSP算法的博客,用的是MNE库中已经写好的算法,现在想自己实现该算法,研究了几天发现坑还是比较多的。。。先列出一些参考的博客文章,里面有对应的算法在matlab中的实现,后面主要是解释算法中的一些细节以及自己对该算法的理解。CSP原理:https://blog.youkuaiyun.com...
2020-03-20 17:39:39
12727
22
原创 Pytorch BrokenPipeError: [Errno 32] Broken pipe
今天运行Pytorch出现Broken pipe错误,通过修改torch.utils.data.DataLoader()函数中的num_workers参数,解决。可能是因为windows对多线程的支持不是很好的原因吧。出错:修改后:默认num_workers为0参考链接如下:https://blog.youkuaiyun.com/AchangeC/article/details...
2020-03-13 16:30:50
3500
1
原创 Python中MNE库利用CSP分析运动想象数据
最近在研究EEG运动想象相关的内容,都说CSP在运动想象领域很好用,刚好最近接触了MNE库,就尝试了一下在这个库中的实现。牛皮就是牛皮,有现成的方法可以调用,既然有方法那当然也有示例了。官方给的示例,后面的内容就是对文档中的示例程序进行分析。https://mne.tools/stable/auto_examples/decoding/plot_decoding_csp_eeg.htm...
2020-01-15 12:01:13
12579
21
原创 Python 中 MNE 读取EEG竞赛数据绘图和提取epoch(gdf格式)
上一篇文章中介绍了研究读取gdf格式数据的心路历程,绕了半天竟然直接操作就可以。本来以为会很容易,毕竟数据都已经成功读入了,可是我又错了,弄了好久读取的数据绘图都不对(打印看数据是对的),感觉是mne的一个bug,在Github上提issue可是网络不给力,图片死活传不上,最后给开发团队发了封邮件,也不知道能不能回我。。。。好在经过不懈努力,试了多种方法,总算有一种方法可以成功绘制数据图像了。...
2020-01-08 16:43:11
7735
17
原创 Python 中 MNE 读取EEG竞赛数据(gdf格式)
最近在研究运动想象相关的算法,发现网上有一些公开的脑电数据,发现之前EEG还有这方面的竞赛,不知道为啥现在没有了,或许还有只不过我到目前还没找到,哈哈。前半部分都是说如何获取数据,后面才是标题的重点内容。下载还是很方便的链接地址如下:http://www.bbci.de/competition/ii/#datasets下载完数据,我就开始寻找能处理脑电数据的工具:https://zhuan...
2020-01-03 17:32:11
11061
7
原创 Unity中自定义协程函数
Unity中提供了协程的方法,在处理一些需要异步的函数时非常方便,尤其是在处理网络请求响应的时候,但是协程函数有些时候需要自定义,这就需要自己实现满足条件的协程函数了,好在Unity提供了这样的类来帮助我们实现相关的功能。通过继承CustomYieldInstruction实现自己的协程函数。https://docs.unity3d.com/ScriptReference/CustomYiel...
2020-01-03 13:34:32
852
原创 Unity中实现http的Put方法提交表单(BestHttp)
最近项目在做注册、登录、用户信息管理等需要和后台服务器沟通的功能,后台采用的是Http的方式,所以研究了下在Unity中Http的实现方式。主要有四种:1、WWW的方式。2、UnityWebRequest。3、C#的HttpWebRequest。4、第三方库。1、WWW的方式WWW的方式是Unity中比较老的一种方式,网上资料也很多,但是其支持的方法有限,有些新的特性也不支持,官方文档只描...
2020-01-03 11:58:54
2914
1
原创 Matlab如何进行更新升级(解决EEGLAB工具箱频繁报错的问题)
最近在运行脑波工具箱EEGLAB时出现报错,尝试解决了下,根据提示在命令行界面有超链接。点击命令行中的超链接,会直接调用Matlab内嵌的Web浏览器。不建议大家在内嵌的浏览器中下载,因为内嵌的浏览器没有下载进度的提示,我下了好几次都没下完。可以把内嵌浏览器中的地址拷贝到外部浏览器中,然后进行下载。...
2019-12-26 14:01:30
4061
1
原创 C#中实现FFT的两种方法
最近工作中有个需求,在C#环境中实现FFT算法,在网上找了些资料,最后实现了下面的两种方式,实际应用任选其一就好。第一种方法:不依赖C#中的Complex,需要实现计算过程的每一步详细步骤。输入序列长度为2的N次幂,使用前需先定义序列长度:FFT filter = new FFT(256);filter.fft(x,y) 其中x为实部y为虚部,计算后x为FFT后的实部,y为FF...
2019-12-24 16:54:21
10706
4
原创 errorC2449/ errorC2449/ errorC1071 遇到文件意外结束
这个问题是文件编码的问题,多存在于使用别人代码的时候,特别是文件中有中文的时候。解决方法:文件->另存为->编码保存->
2019-12-19 14:42:49
794
原创 C#中实现FIR带通滤波
最近有一个需求,在C#中实现FIR滤波,网上查了些资料感觉FIR滤波使用的还算比较多,相关的原理也比较简单。参考下面在Python环境中实现FIR的博客,在C#的环境中实现了一遍。https://blog.youkuaiyun.com/moge19/article/details/94495442(Python实现FIR带通滤波器)下文中的工程下载链接:https://download.csdn.ne...
2019-12-18 09:37:31
4415
1
原创 AES128加密算法的实现(C/Java/C#)
最近项目中有一个需求,实现AES128的加密算法,用于硬件和平台的通信。硬件加密部分使用C语言完成、平台有两种不同的环境:java(Linux)和C#(Windows)。在网上搜集了一些资料,有人实现过纯C代码的AES加密解密算法,这样实际上有一种较为简单的解决思路:加密部分直接拿过来使用;解密部分可以打包为dll(windows环境)或SO(linux环境)库供平台调用。但考虑到环境的兼容性等问...
2019-12-11 11:27:54
4210
1
原创 C#中实现神经网络算法打包dll(给Unity调用)
最近做Unity项目的时候有一个需求:在Unity中实现神经网络算法,最终还要满足跨平台,也就是在windows下和android下都能使用。在Unity中只涉及到网络的实现部分,也就是正向传播部分,网络的训练可以放到matlab和python中,这样可以减轻开发的压力。做了下面的一些简单尝试:1、C++打包dll给Unity调用,在Windows下没问题可行,在Android下不可行,实...
2019-12-04 13:26:54
2261
1
原创 VirtualBox 中的Centos如何安装VBoxGuestAdditions
最近在VirtualBox的虚拟机中安装Centos遇到一个问题:如何安装VBoxGuestAdditions功能。查了很多资料这个博客写的还靠谱些:VirtualBox安装VBoxGuestAdditions增强功能_未知的向往的博客-优快云博客_vboxguestadditions整理了下这里我用到的命令:一、安装VBoxGuestAdditions1、yum update2、yum install kernel-devel --外置核心模块3、yum install kernel-hea
2019-10-18 10:56:31
2358
1
原创 MySQL中直接保存Python变量
项目中需要用到MySQL保存数据,开始接触数据库以为只能保存简单的字符和数字,随着学习的深入发现数据库能存储的数据类型还是比较丰富的,之前设计的数据库表有些复杂了。完全可以将Python中的变量(列表、字典等)甚至类作为一个元素直接保存到数据库中,这样可以简化很多操作。比如在pytho中有一个字典类型的变量data。data = {'para1':name1,'para2':[1,2,3...
2019-10-12 15:10:02
307
原创 如何在Python的Bottle框架中使用Session
最近用Python的bottle框架搭建了一个小的网站,想给网站加入一个登陆页面,突然发现竟然没有考虑不同用户的问题。。。。。。毕竟这个东西不是我一个人用,查了一些资料发现session,cookie能满足这个需求。简单点说session和cookie是一种保持会话状态的机制,说明浏览器和服务器建立了会话连接。cookie是用于浏览器一侧的,将用户信息保存在cookie文件中,session是用于...
2019-09-26 17:16:45
1066
RNNBowVisualizing
2019-08-08
Python中FIR滤波和小波包滤波对比(MNE脑电数据处理).zip
2020-09-01
Python中MNE库进行PSD分析(计算不同频率区间的累加和).zip
2020-06-23
MNE_EEG_CSP.zip
2020-05-15
Automated model selection in covariance estimation and spatial.pdf
2020-04-17
Mechanisms of evoked and induced responses.pdf
2020-04-17
Python中MNE库的EEG数据(PCA和ICA)预处理.zip
2020-03-31
plot_simulate_raw_data.py
2020-03-26
Optimizing Spatial Filters for Robust.pdf
2020-03-19
Multiclass Common Spatial Pattern for
2020-03-19
plot_decoding_csp_eeg.py
2020-01-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人