[![View model-based-spike-detection on File Exchange](https://www.mathworks.com/matlabcentral/images/matlab-file-exchange.svg)](https://www.mathworks.com/matlabcentral/fileexchange/105670-model-based-spike-detection)
# Model-based online implementation of spike detection algorithms for neuroengineering applications
Spike detection algorithms development in Simulink® to evaluate the preferable contestant for the intended embedded (µC or Field Programmable Gate Array - FPGA) implementation. A Model-Based Design approach for neuroengineering applications enables to (i) simulate, and forecast pros and cons of the code execution on target hardware, and (ii) carry out preliminary analysis about the algorithms conduct in real-time.
<br />
<img src="https://github.com/MattiaDif/model-based-spike-detection/blob/main/img/models.png?raw=true" width="800">
<p>
<b>Fig.1 - Spike detection models developed in both single- and multi-channel modality</b></figcaption>
</p>
<br />
<br />
<img src="https://github.com/MattiaDif/model-based-spike-detection/blob/main/img/SNEO.png?raw=true" width="800">
<p>
<b>Fig.2 - SNEO Simulink model</b></figcaption>
</p>
<br />
## Required Software
1. MATLAB® and Simulink® version R2020a or later
## Installation
To clone this repo open your terminal and run:
`git clone https://github.com/MattiaDif/model-based-spike-detection.git`
Rember to add the repo to the Matlab path!
## Repo description
Inside Spike_Detection_Models:
1. SingleChannelModels: folder that contains the Simulink model for spike detection in single-channel modality subdivided by category. The files named with the prefix float_sch are the spike detection Simulink models, while the files named with the prefix float_sch_run are the Matlab scripts to control the model parameters and lunch the simulation.
2. MultiChannelModels: folder that contains the Simulink model for spike detection in mutli-channel modality subdivided by category. The files named with the prefix float_mch are the spike detection Simulink models, while the files named with the prefix float_mch_run are the Matlab scripts to control the model parameters and lunch the simulation.
3. TestData: folder that contains data for testing the model in Simulink (see the reame.txt file in the folder for further details).
4. Recording_Generator: folder that contains Python scripts to generate simulated multichannel recording exploting MEArec ([MEArec repo](https://github.com/alejoe91/MEArec.git)).
## Background
Different spike detection models has been developed in Simulink to investigate their feasibility in a real-time environment. The algorithms are subdivided among 3 main categories according to the spike detection methods found in literature:
1. Sample Thresholding: a spike is detected if the sample overcomes a threshold.
2. Energy Operator: non-linear energy operator (NEO) computation to enhance the high frequency content. A spike is detected if the NEO sample overcomes a threshold.
3. Template Matching: spike detection based on the similarity between a waveform and a template. A spike is detected if the similarity metric is greater than a set value.
## CORE TEAM
The following people have contributed to the current state of the project (24/01/2022). Specifically:
- Development: [Stefano Buccelli](https://www.iit.it/it/people-details/-/people/stefano-buccelli) [1], [Mattia Di Florio](https://rubrica.unige.it/personale/UUZFUllo) [1],[3].
- Conceptualization/Supervision: [Vijay Iyer](https://www.mathworks.com/matlabcentral/profile/authors/6910229) [2], [Akshay Rajhans](https://www.mathworks.com/matlabcentral/profile/authors/4409783) [2], [Stefano Buccelli](https://www.iit.it/it/people-details/-/people/stefano-buccelli) [1], [Michela Chiappalone](https://rubrica.unige.it/personale/UkNHWlNg) [1],[3].
For any questions, please reach via email Mattia Di Florio ([email protected]) or Stefano Buccelli ([email protected]) or write an issue!
1. Rehab Technologies IIT-INAIL Lab, Istituto Italiano di Tecnologia, Via Morego 30, 12 16163 Genova, Italy
2. MathWorks, 1 Lakeside Campus Drive, Natick, MA 01760, USA
3. Department of Informatics, Bioengineering, Robotics, System Engineering (DIBRIS), 20 University of Genova, Via all’Opera Pia 13, 16145, Genova, Italy
## REFERENCE
For further information please refer to the scientific publication: [link](https://doi.org/10.1109/EMBC48229.2022.9871444)
没有合适的资源?快使用搜索试试~ 我知道了~
基于Simulink实现尖峰检测算法.zip
共52个文件
slx:17个
m:17个
mat:6个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 88 浏览量
2023-09-27
10:19:57
上传
评论
收藏 35.47MB ZIP 举报
温馨提示
1.版本:matlab2014/2019a/2021a,内含运行结果,不会运行可私信 2.领域:智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,更多内容可点击博主头像 3.内容:标题所示,对于介绍可点击主页搜索博客 4.适合人群:本科,硕士等教研学习使用 5.博客介绍:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可si信 %% 开发者:Matlab科研助手 %% 更多咨询关注天天Matlab微信公众号
资源推荐
资源详情
资源评论
收起资源包目录
基于Simulink实现尖峰检测算法.zip (52个子文件)
基于Simulink实现尖峰检测算法
Recording_Generator
template_generator.py 2KB
plotting_multinoise.py 1KB
recording_generator_multinoise.py 6KB
changelog.txt 485B
plotting.py 815B
recording_generator.py 5KB
说明.txt 2KB
img
SNEO.png 48KB
models.png 356KB
README.md 4KB
Spike_Detection_models
MultiChannelModels
Energy_Operator
float_mch_run_SNEO.m 2KB
float_mch_SNEO.slx 37KB
Sample_Thresholding
float_mch_LocalMaxima_HardThreshold.slx 36KB
float_mch_run_LocalMaxima_HardThreshold.m 1KB
float_mch_run_Sample_AdaptiveThreshold.m 1KB
float_mch_run_LocalMaxima_AdaptiveThreshold.m 1KB
float_mch_LocalMaxima_AdaptiveThreshold.slx 35KB
float_mch_run_Sample_HardThreshold.m 1KB
float_mch_Sample_AdaptiveThreshold.slx 33KB
float_mch_Sample_HardThreshold.slx 33KB
Template_Matching
float_mch_TemplateMatchingContinuous.slx 38KB
float_mch_run_TemplateMatchingContinuous.m 2KB
TestData
monotrode_test_20_gt.mat 3.67MB
tetrode_test_20.mat 21.21MB
monotrode_test_20_waveforms_mean.mat 4KB
tetrode_test_20_waveforms_mean.mat 6KB
monotrode_test_20.mat 7.36MB
readme.txt 741B
tetrode_test_20_gt.mat 4.61MB
SingleChannelModels
Energy_Operator
float_sch_SNEO.slx 38KB
float_sch_run_SWTTEO.m 3KB
float_sch_run_SNEO.m 2KB
float_sch_SWTTEO.slx 41KB
Sample_Thresholding
float_sch_Sample_HardThreshold.slx 63KB
float_sch_SigmaDelta_AdaptiveThreshold.slx 36KB
float_sch_LocalMaxima_AdaptiveThreshold.slx 37KB
float_sch_WindowDiscriminator.slx 84KB
float_sch_run_WindowDiscriminator.m 2KB
float_sch_Sample_AdaptiveThreshold.slx 36KB
float_sch_LocalMaxima_HardThreshold.slx 44KB
float_sch_run_Sample_HardThreshold.m 1KB
float_sch_run_SigmaDelta_AdaptiveThreshold.m 2KB
float_sch_run_Sample_AdaptiveThreshold.m 1KB
float_sch_run_LocalMaxima_AdaptiveThreshold.m 5KB
float_sch_run_LocalMaxima_HardThreshold.m 1KB
float_sch_PTSD.slx 37KB
float_sch_run_PTSD.m 2KB
Template_Matching
float_sch_TemplateMatchingContinuous.slx 35KB
float_sch_run_TemplateMatchingContinuous.m 2KB
float_sch_TemplateMatchingCentered.slx 39KB
float_sch_run_TemplateMatchingCentered.m 2KB
readme.txt 441B
共 52 条
- 1
资源评论
Matlab科研辅导帮
- 粉丝: 1w+
- 资源: 7553
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功