一款从TCSPC FLIM数据中执行矢量图绘制的插件。
项目描述
napari-flim-phasor-plotter
Napari-flim-phasor-plotter是一个napari插件,可以交互式地加载和显示原始荧光寿命成像显微镜(FLIM)单张图像和系列,并生成矢量图。这些是使用napari-clusters-plotter绘图器对可视化衰变数据进行傅里叶变换的结果,并适应FLIM环境。这使得可以对FLIM图像进行定性和定量分析。
快速演示
内容
安装
我们建议在您的计算机上安装了Miniforge之后,使用mamba安装napari-flim-phasor-plotter
。请按照以下步骤在终端中执行。
点击这里选择您操作系统的正确下载选项。
创建conda环境
mamba create -n napari-flim-phasor-env python=3.9 napari pyqt git
激活环境
mamba activate napari-flim-phasor-env
使用以下命令安装napari-flim-phasor-plotter
插件:
pip install napari-flim-phasor-plotter
或者,克隆此存储库并使用以下命令安装最新的插件开发版本:
pip install git+https://github.com/zoccoler/napari-flim-phasor-plotter.git
用法
加载原始FLIM数据
1. 输入数据类型
此插件可以读取以下FLIM 文件类型
.ptu
.sdt
.tif
.zarr
此插件支持以下 数据形状
- 2D FLIM图像(实际上是3D数据,其中FLIM计数在第一个轴上)。
- 3D FLIM图像(实际上是4D数据,其中FLIM计数在第一个轴上)。
- 3D时间间隔FLIM图像(实际上是5D数据,其中FLIM计数在第一个轴上)。
- 多通道'.tif'或'.zarr'数据可能需要单独加载。
如果您使用此插件作为读取器来读取文件,它返回并按以下顺序与数据轴一起工作(来自多个探测器的数据以不同的napari层显示)
(flim_counts
, time
, z
, y
, x
)
即使数据是2D的,插件也会添加一个单位time
和一个z
轴。它还通过求和flim_counts
维度在另一个层中提供标准强度图像。
2. 打开原始FLIM图像
将兼容的文件格式(请参阅以下支持的文件格式此处)拖放到打开FLIM图像。它以两层显示:一个'原始FLIM图像序列'(对应于FLIM '微时间'每个单独时间点的强度图像序列),以及一个时间累积图像(通常称为'强度'图像)。通过滚动FLIM时间序列可以提供图像区域的寿命的第一印象。
3. 加载堆栈
如果您有多个切片或时间点作为单独的文件,您可以选择包含文件的文件夹。为了使插件正确构建堆栈,文件名必须包含关于它们代表哪个切片或时间点的指示,即,每个文件名应包含一个_t
和/或_z
后跟一个数字。这个数字应该从1
开始,并随着每个新的切片或时间点增加1。
以下是一些示例模板
- 时间间隔
image_t001.ptu
image_t002.ptu
- z-stack
image_z01.sdt
image_z02.sdt
- 3D时间间隔
image_t001_z001.tif
image_t001_z002.tif
- ...
image_t002_z001.tif
4. 示例数据
此插件附带一些示例FLIM原始图像
- '2D'原始FLIM图像
- 榛子(原本是'.ptu'文件)
- 种子囊(原本是'.sdt'文件)
- '3D'原始FLIM图像堆栈(榛子3D)
- 榛子3D(原本是一系列'.ptu'文件)
- '2D'合成FLIM图像
- 寿命猫
要加载它,请转到文件 > 打开示例 -> FLIM相量绘图器
。
相量分析
1. 生成相量图
从菜单插件 > FLIM相量图绘制器 > 计算相量
调用插件,通过像素级的傅里叶变换生成衰减数据的相量图。在此选择要使用的FLIM图像(应该是包含原始数据的那一层),指定激光脉冲频率(如果文件元数据中包含信息,计算相量后将更新此字段)。选择一个谐波以实现最佳可视化,定义一个强度阈值(在此为绝对值)以排除光子计数低的像素,并可选地应用3x3中值滤波器的n
次迭代。运行
将创建相量图并在图层列表中创建一个额外的标签图层。
2. 相量图导航
使用顶部工具栏导航相量图。例如,通过激活缩放工具按钮(放大镜图标),您可以放大(左键点击)或缩小(右键点击),但请记住在使用后通过单击图标一次来禁用缩放工具。
通过单击下拉菜单展开以显示高级选项
更改相量图的色彩映射。在那里,您还可以选择通过勾选对数刻度
复选框以对数刻度显示颜色范围。可选地,通过指定要显示的寿命范围(以逗号分隔)在tau线
字段中添加tau线,然后单击显示/隐藏
来在相量图上方可视化它们。
3. 相量图选择
手动在相量图中圈出感兴趣区域,以在新创建的图像图层中突出相应的像素。按住‘Shift’键以选择和可视化多个簇,作为研究具有类似FLIM模式图像区域的一种方式。
4. 将相量分析集成到工作流程中
聚类
此插件与napari-clusters-plotter插件集成。因此,您可以使用由napari-clusters-plotter
插件提供的聚类小部件自动分割相量图,然后在原始FLIM图像中可视化分割结果。通过工具 -> 测量后处理 -> 聚类(ncp)
访问。下面是演示
后处理
在簇选择后,为选定的簇使用不同的标签(颜色)是常见的。在每个标签中,断开连接的区域和孤立像素在分割中也很常见。为了解决这个问题,我们提供了一些基本的后处理函数。
一个常见的步骤是选择一个感兴趣的簇以进行进一步处理。通过选择标签
图层(通常命名为cluster_ids_in_space
)并勾选显示选定内容
复选框,我们可以通过持续增加标签号直到找到所需的簇来识别我们的簇/标签。之后,我们可以通过插件 -> FLIM相量图绘制器 -> 手动标签提取
提取所选标签作为掩码。这将创建一个包含所选簇掩码的新图层。
为了连接小型孤立区域并删除掩码中的小型孔洞,我们可以使用smooth_cluster_mask
函数。可以通过插件 -> FLIM相量图绘制器 -> 平滑簇掩码
访问。这将删除面积小于指定填充面积px
的孔洞,并在给定的平滑半径
内连接区域。在运行函数之前,请勿忘记选择包含掩码的图层,因为此函数期望一个包含单个标签的图层(如二值掩码)。
在此之后,我们可以使用其他插件,如napari-segment-blobs-and-things-with-membranes
和napari-skimage-regionprops
插件,进一步处理掩码。例如,我们可以通过工具 -> 分割/标记 -> 连接组件标记(scikit-image,nsbatwm)
在掩码上进行实例分割。我们还可以通过工具 -> 测量表 -> 对象特征/属性(scikit-image,nsr)
提取对象的特征。
下面是后处理步骤的演示
此外,您可以通过运行以下 Jupyter Notebook 来重现此示例工作流程:Example_workflow.ipynb。
保存结果
通过选择(点击)相应的 标签
层(通常命名为 cluster_ids_in_space
)并转到 文件 -> 保存所选层
来保存您的分割结果。这可以将层保存为 .tif
文件。要保存相量图的截图,请点击工具栏上的 保存
按钮。要将相量图保存为 .csv
文件,转到 工具 -> 测量 -> 显示表格(nsr)
,将出现一个新的小部件。从 标签层
下拉菜单中选择包含表格的层,其名称以 Labelled_pixels_from_
开头,然后点击 运行
按钮。这将显示每个像素的 G
和 S
值的表格。点击 另存为 csv...
按钮将表格保存为 .csv
文件。
数据转换
如果一组原始(未压缩)图像大于 4GB,我们建议将其转换为 .zarr
格式。这可以通过 插件 > napari-flim-phasor-plotter > 转换为 zarr
来完成。
警告:在当前版本中,使用 .zarr
的懒加载是可用的,但处理过程可能仍然会将所有数据加载到内存中,因此请注意您的内存使用情况。
限制
该插件目前尚不支持
- 相量校准
- 圆形聚类选择或光标选择(只有自由手选择可用)
- 从相量图中选择聚类生成伪通道
- FRET 分析
- 分块处理
- 衰减曲线拟合
贡献
非常欢迎贡献。可以使用 tox 运行测试,请在提交拉取请求之前确保覆盖率至少保持不变。
许可证
根据 BSD-3 许可证发布,“napari-flim-phasor-plotter”是免费和开源软件。
如果您在出版物中使用此插件,请引用我们:[https://doi.org/10.5281/zenodo.12620956](https://doi.org/10.5281/zenodo.12620956)
问题
如果您遇到任何问题,请附上详细描述[提交问题](https://github.com/zoccoler/napari-flim-phasor-plotter/issues)。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分发
构建分发
napari_flim_phasor_plotter-0.1.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fe8d4be367c45e045da22e54853d3ceae2c7f36785764e1d75c06b757aa23652 |
|
MD5 | 5578ec9ae1153001a3cffb6a230082a2 |
|
BLAKE2b-256 | f4439a5c4e6b2c49fb1a2ea127586f9537df0cb62591cbeae20131c57b5b3888 |
哈希值 for napari_flim_phasor_plotter-0.1.2-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b114676676f6a6140b2e2bfe4322a70f2597a92b60a8ef0e0bf24665ac84f329 |
|
MD5 | a7b33e4d511db34a2bb112e38fbbb1ba |
|
BLAKE2b-256 | 9c5aa28e2ff1d0094d8ee557965394b1ce7e3d0a6aeea958226b8121976f1db3 |