神经生物学必掌握的技能之一:Calcium Imaging Analysis(package)如何使用Calcium Imaging Analysis
大家好!
今天,给大家分享的是一个软件包。
软件包的名字是Calcium Imaging Analysis(package),钙成像分析软件包。可以用来分析,单光子、双光子钙成像数据集。
软件包这块,我准备分四部分介绍。
第一,“这个软件包,有多牛?!”
第二,这个软件包,有什么样的功能?
第三,如何使用这个软件包。
第四,哪些功能能拿过来放到数据工厂中?
顺便再介绍一下作者。
这个工具包有多厉害?!
-
有三篇发表在顶期刊(Cell、Nature、Science)上的工作都引用了这个工具包。足以说明,这个工具包在业内的地位是相当受认可的。
那么这个工具包提供什么样的功能呢?
-
calcium imaging preprocessing,钙荧光视频,预处理;
-
胞体识别;
-
活动曲线重建。(不知道是什么的?)
-
多天实验配准(across sessions alignment)
-
还有一些其他的和神经元活动分析相关的功能,以及和动物行为学分析相关的功能。
简单来说,既有处理,又有分析;
既包括神经元活动分析,又有行为学分析。
那么,接下来,就是今天讨论班的重点了,怎么用这个软件包。帮助自己处理和分析实验数据。
这个软件包,包含了五个模块:
其中,粉色模块代表的是,需要纯手工参与的部分;
白色模块代表的是,自动处理环节,或者批处理环节;
粉白两掺模块代表的是,半自动处理环节。
第一模块,输入数据。(可以load tif文件,也可以load .h5文件)
第二模块,Video Processing,视频预处理,有降采样,去抖动,时间滤波,矫正错误帧,转换成DeltF/F视频等。
第三模块,胞体识别;
第四模块,跨天的分析;
第五模块,执行一些实验相关的分析;
软件的安装步骤:
第一步,下载这个软件包,下载地址是:
https://github.com/bahanonu/calciumImagingAnalysis
第二步,解压,
第三步,软件初始化,耐心等待1~2个小时,让软件把依赖都下载好。
% Run these commands in MATLAB to get started.
% Loads all directories
loadBatchFxns;
% Loads the class into an object for use in this session
obj = calciumImagingAnalysis;
% Download and load dependent software packages into "_external_programs" folder.
% Also download test data into "data" folder.
% Normally only need to one once after first downloading calciumImagingAnalysis package.
obj.loadDependencies;
% Add folders containing imaging data.
obj.modelAddNewFolders;
% [optional] Set the names calciumImagingAnalysis will look for in each folder
obj.setMovieInfo;
% Open class menu to pick module to run.
obj.runPipeline; % then hit enter!
实验一:胞体识别流程
loadBatchFxns;
obj = calciumImagingAnalysis;
obj
第二步,选择example folder
可以看到,成功加载了4个文件夹。
obj.modelExtractSignalsFromMovie
选择方法:
配置算法参数1
配置PCAICA算法参数2:
By Subjet还是Folder
配置算法参数,PCA/ICA,大概识别出来多少个胞体?
325 275
算法开始跑起来了:
“ Computing ICA weights”
识别出来的结果:
一闪而退
可能的原因是“Matlab版本太高了,JavaFrame 图窗属性将在以后的版本中删除”。
所以,要想跑这个软件包,Matlab 2012a,Matlab2018b都不行,最好是早一点的版本,比如2016,2015,2014。就是还没推出matlab APP的时候(R2017a推出了app,https://www.mathworks.com/help/matlab/release-notes.html)
怎么办?使用如下的方法,加载
obj.modelVarsFromFiles
可以看到胞体识别的结果
多条trace的结果没看到。
如果想看叠加效果的话,
obj.viewCellExtractionOnMovie
选择用matlab看,还是imageJ看?
用matlab,看
实验二:查看胞体的总体情况
查看胞体的总体情况
obj.computeManualSortSignals
实验三:多天胞体配准实验(未完成)
参考文献:
https://bahanonu.github.io/calciumImagingAnalysis/alldocs/
https://bahanonu.github.io/calciumImagingAnalysis/alldocs/
https://bahanonu.github.io/calciumImagingAnalysis/install/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?