Project Icon

cellpose

多功能细胞分割和图像修复工具

Cellpose是一款开源的细胞分割和图像处理工具,适用于各类生物图像分析。它支持细胞和细胞核的通用分割,可针对特定数据进行优化。Cellpose提供图形界面、API和命令行接口,支持人机交互训练。最新版本还增加了图像去噪、去模糊和上采样等修复功能,进一步提升分割效果。该工具具有高度灵活性和准确性,能满足研究人员的多样化需求。

Cellpose

cellpose

文档状态 测试 代码覆盖率 PyPI版本 下载量 月下载量 Python版本 许可证: GPL v3 贡献者 网站 Image.sc论坛 仓库大小 GitHub星标 GitHub分支

这是一种通用的细胞和细胞核分割算法(v1.0),可以针对您自己的数据进行优化(v2.0),并且(新功能)执行图像修复(v3.0)。

Cellpose由Carsen Stringer和Marius Pachitariu编写。要了解Cellpose3(图像修复),请阅读论文。要了解Cellpose 2.0(人机交互循环),请阅读论文或观看演讲。要了解Cellpose 1.0,请阅读论文或观看演讲。如需支持,请提交问题。 请查看下方的安装说明https://github.com/MouseLand/cellpose/blob/main/README.md/#Installation,也请查看cellpose.readthedocs.io上的详细文档以获取更多信息。

:star2: v3(2024年2月):star2:

Cellpose3在图形用户界面、API和命令行界面中启用了图像恢复功能(保存为_seg.npy)。想了解更多...

  • 查看论文
  • API文档在此
  • 图像恢复的Google Colab示例笔记本:在Colab中打开,使用新的CellposeDenoiseModel
  • 使用新的超通用"cyto3"模型的Google Colab示例笔记本:在Colab中打开。使用model_type="cyto3"尝试新的cyto3超通用Cellpose模型。
去噪去模糊上采样
cellpose去噪示例cellpose去模糊示例cellpose上采样示例

引用

如果您使用Cellpose 1、2或3,请引用Cellpose 1.0论文 Stringer, C., Wang, T., Michaelos, M., & Pachitariu, M. (2021). Cellpose: a generalist algorithm for cellular segmentation. Nature methods, 18(1), 100-106.

如果您使用人机交互训练,请同时引用Cellpose 2.0论文 Pachitariu, M. & Stringer, C. (2022). Cellpose 2.0: how to train your own model. Nature methods, 1-8.

如果您使用新的图像恢复模型或cyto3,请同时引用Cellpose3论文 Stringer, C. & Pachitariu, M. (2024). Cellpose3: one-click image restoration for improved segmentation. bioRxiv.

:triangular_flag_on_post: Cellpose中的所有模型,除了yeast_BF_cp3yeast_PhC_cp3deepbacs_cp3之外,都在一定程度上使用了CC-BY-NC许可的数据进行训练。Cellpose注释数据集也采用CC-BY-NC许可。

:star2: v2.0(2022年4月):star2:

Cellpose 2.0支持人机交互式模型训练!了解更多信息...

  • 查看这个Twitter帖子以获取概述。
  • 查看这篇论文了解算法和性能的更多细节。此外,这里有一篇简短的论文评论链接
  • 观看简短的概述讲座和更长的教程讲座,介绍如何在GUI和Jupyter notebook中运行Cellpose 2.0。
  • 查看完整的人机交互视频
  • 查看Colab notebook,获取云端GPU访问权限以训练模型或运行自定义模型:在Colab中打开
  • 查看文档了解如何使用,并查看GUI中"Models"菜单的帮助信息。

Cellpose不再支持Mxnet。如需使用Mxnet,请使用v1.0.2版本(不推荐)。

安装

如果您的电脑上安装了Python 3.8或更高版本,可以使用conda或原生Python安装Cellpose。

本地安装(< 2分钟)

系统要求

支持在Linux、Windows和Mac OS上运行代码。要运行图形界面,您需要Yosemite之后的Mac OS版本。运行软件至少需要8GB RAM。对于较大的图像和3D体积,可能需要16GB-32GB内存。该软件在Windows 10和Ubuntu 18.04上经过大量测试,在Mac OS上的测试相对较少。如果安装出现问题,请提交issue。

依赖项

Cellpose依赖以下优秀的包(如果缺失,conda/pip会自动安装):

选项1:使用conda安装

如果您有旧的cellpose环境,可以在创建新环境之前使用conda env remove -n cellpose删除它。

如果使用GPU,请确保正确安装了驱动程序和CUDA库。

  1. 安装Anaconda Python发行版。注意,如果没有将anaconda添加到路径中,可能需要使用anaconda提示符。
  2. 打开anaconda提示符/命令提示符,确保路径中包含Python 3conda
  3. 使用conda create --name cellpose python=3.8创建新环境。我们推荐使用Python 3.8,但Python 3.9和3.10也可能正常工作。
  4. 运行conda activate cellpose激活新环境
  5. (选项1)要安装带GUI的cellpose,运行python -m pip install cellpose[gui]。如果使用zsh服务器,可能需要使用引号:python -m pip install 'cellpose[gui]'
  6. (选项2)要安装不带GUI的cellpose,运行python -m pip install cellpose

要升级cellpose(包在这里),在环境中运行以下命令:

python -m pip install cellpose --upgrade

注意,运行cellpose之前必须先运行conda activate cellpose。如果要在此环境中运行Jupyter notebooks,还需执行python -m pip install notebookpython -m pip install matplotlib

您也可以尝试从基础环境使用以下命令安装cellpose和GUI依赖项:

python -m pip install cellpose[gui]

如果安装出现问题,请查看文档了解更多细节。您也可以使用仓库中包含的cellpose环境文件,通过conda env create -f environment.yml创建cellpose环境,这可能解决某些依赖问题。

如果这些建议无效,请提交issue。

选项2:使用Python的venv安装

Venv(感兴趣的可以参考这个教程)是Python内置的创建虚拟环境的工具。如果您不想安装conda且已经安装了Python3,这是一个很好的替代方案。主要区别在于您需要选择安装环境和包的位置。Cellpose将存在于这个环境中,无法从其他环境访问。每次运行cellpose之前,您需要导航到环境目录并激活它。步骤与conda安装类似:

如果使用GPU,请确保正确安装了驱动程序和CUDA库。

  1. python.org安装Python 3.8或更高版本。这将是环境中使用的Python版本。你可以使用python --version命令检查你的Python版本。

  2. 导航到你想要创建环境的目录,运行python3 -m venv cellpose命令创建一个名为cellpose的新环境。

  3. 在Mac/Linux上使用source cellpose/bin/activate或在Windows上使用cellpose\Scripts\activate激活环境。终端中应出现(cellpose)前缀。

  4. 使用pip通过python -m pip install cellpose命令在cellpose虚拟环境中安装cellpose。

  5. 使用python -m pip install cellpose[gui]安装cellpose GUI。根据你的终端软件,可能需要使用引号,如:python -m pip install 'cellpose[gui]'

  6. 现在你可以通过python -m cellpose或在cellpose目录中使用cellpose命令从这个环境运行cellpose。

  7. 要退出环境,运行deactivate命令。

Windows或Linux上的GPU版本(CUDA)

如果你计划处理大量图像,可能需要安装torch的GPU版本(如果尚未安装)。

要在Python中使用NVIDIA GPU,首先需要为你的GPU安装NVIDIA驱动程序,可以访问这个网站下载。你也可以安装CUDA工具包,或使用pytorch cudatoolkit(通过下面的conda安装)。如果遇到安装问题,我们建议自行安装CUDA工具包,从这里选择11.x版本之一。

接下来需要卸载CPU版本的torch:

pip uninstall torch

要安装torch的GPU版本,请按照这里的说明操作。强烈推荐使用conda安装,然后选择你的GPU支持的CUDA版本(较新的GPU可能需要高于10.2的CUDA版本)。例如,这个命令将在Linux和Windows上安装11.6版本(注意删除了torchvisiontorchaudio命令,因为cellpose不需要它们):

conda install pytorch pytorch-cuda=11.6 -c pytorch -c nvidia

如果最新的CUDA版本不工作,尝试较旧的版本,如cuda 11.3:

conda install pytorch==1.12.0 cudatoolkit=11.3 -c pytorch

有关如何安装几个较旧版本的信息可在这里找到。安装后,你可以检查conda list中的pytorch,其版本信息应该包含cuXX.X,而不是cpu

安装GitHub版本

按照上面的步骤安装依赖项。然后运行

pip install git+https://www.github.com/mouseland/cellpose.git

如果你想要编辑代码的能力,在GitHub仓库文件夹中运行pip install -e .。如果你想回到cellpose的pip版本,只需运行pip install cellpose

无需本地Python安装运行cellpose 1.0

你可以先在网站上快速试用Cellpose(许多功能被禁用)。

你还可以在Google Colab上使用GPU运行Cellpose:

  • 基于代码的notebook:在Colab中打开
  • @pr4deepr编写的更加用户友好的2D分割notebook:在Colab中打开
  • @guijacquemet编写的用户友好的ZeroCostDL4Mic notebook,包括训练cellpose模型:在Colab中打开

如果你在本地计算机上遇到MKL问题或运行速度问题(尤其是处理3D数据时),推荐使用Colab notebooks。Colab不允许运行GUI,但你可以在Colab中保存*_seg.npy文件,下载后可以在GUI中打开。

可执行文件:你可以下载为Windows 10Mac OS(High Sierra或更高版本)制作的可执行文件,这些文件是使用PyInstaller在Intel处理器上制作的(MKL加速可用,但不支持GPU)。请注意,在两种情况下,打开都需要几秒钟时间。

  • Mac OS文件将下载为cellpose_maccellpose_mac.dms。您需要将其转换为可执行文件并通过终端运行:
  1. 打开终端并运行cd ~/Downloads/
  2. 运行chmod 777 cellpose_macchmod 777 cellpose_mac.dms使文件可执行。
  3. 运行./cellpose_mac./cellpose_mac.dms以打开cellpose图形界面。cellpose的消息将显示在终端中。
  4. 您也可以使用命令行界面运行,例如./cellpose_mac --dir ~/Pictures/ --chan 2 --save_png
  • Windows 10文件是一个exe文件,您可以点击它来运行图形界面。您也可以使用命令行界面运行,例如cellpose.exe --dir Pictures/ --chan 2 --save_png

在本地运行cellpose

最快的开始方式是从命令行终端打开图形界面。如果您没有将anaconda添加到路径中,可能需要打开anaconda提示符:

python -m cellpose

cellpose首次运行时会从网站下载最新可用的训练模型权重。

现在您可以将任何图像(.tif、.png、.jpg、.gif)拖放到图形界面中并运行Cellpose,和/或手动分割它们。当图形界面处理时,您会看到进度条填满,在此期间您无法点击图形界面中的任何内容。有关图形界面正在执行的操作的更多信息,您可以查看打开图形界面的终端/提示符。示例数据请参见网站或此zip文件。为获得最佳准确性和运行时性能,请调整图像大小使细胞宽度小于100像素。

对于具有多个Z层的3D数据,请使用3D版本的图形界面:

python -m cellpose --Zstack

分步演示

  1. 下载并解压这个文件夹中的图像。这些是论文中测试图像的一个子集。
  2. 使用python -m cellpose启动图形界面。
  3. 将文件夹中的图像拖入图形界面。
  4. 设置模型(在演示中全部为cyto)和要分割的通道(在演示中全部为green)。如果您正在分割cyto并有可用的细胞核通道,可以选择设置第二个通道。
  5. 点击calibrate按钮以估计图像中对象的大小。或者(推荐)您可以手动设置cell diameter并按回车键。您将在图像左下角看到设置的大小作为一个红色圆盘。
  6. 点击run segmentation按钮。如果选中了MASKS ON,您应该会看到图像上绘制的掩码。
  7. 现在您可以点击左/右箭头键在文件夹中移动并分割另一张图像。

要在图像上绘制ROI,您可以右键点击然后悬停以完成ROI(不要右键点击并拖动)。要删除ROI,按住CTRL键的同时左键点击。更多详细信息请参见这里

在演示图像上,在标准笔记本电脑或台式机上(MKL正常工作的情况下),这些步骤中的每一步都应该在几秒钟内完成。

3D分割

对于多通道、多Z层的tiff文件,预期的格式是Z x 通道 x Ly x Lx。

下载预训练模型

当您首次在cellpose中运行预训练模型时,模型将自动从网站下载。如果您在下载时遇到问题,可以从这个Google Drive zip文件下载,解压文件并将模型放在您的主目录下的.cellpose/models/路径中,例如在Windows上路径为C:/Users/YOUR_USERNAME/.cellpose/models/,在Linux上路径为/home/YOUR_USERNAME/.cellpose/models/,因此/home/YOUR_USERNAME/.cellpose/models/cyto_0是一个模型的完整路径示例。如果您无法访问Google Drive,模型也可在百度网盘上获取:链接:https://pan.baidu.com/s/1CARpRGCBHIYaz7KeyoX-fg ;提取码:pose ;感谢@qixinbo!

旧版软件发布

更新v1.0(2022年1月)

Cellpose已经相对稳定一段时间了。小的错误将继续修复,但我们现在发布一个参考1.0版本。Cellpose的更大更新将朝着即将发布的新2.0候选版本进行。

此更新修复了GUI和绘图中的错误。它还停止了模型权重的重新加载以提高速度。resample=True再次成为默认设置,如同早期版本,可以使用--no_resample关闭。现在默认关闭日志记录。在CLI中使用--verbose标志或在脚本/笔记本中通过以下方式打开:

from cellpose.io import logger_setup
logger_setup();

要安装此版本,请使用

pip install cellpose==1.0.2

更新v0.7(2021年11月)

查看Omnipose,这是Cellpose的一个扩展,用于长丝状细菌。Omnipose由Kevin Cutler (@kevinjohncutler)编写。要了解Omnipose,请阅读论文

更新v0.6(2020年12月)

Pytorch现在是cellpose的默认深度神经网络软件。Mxnet仍将得到支持。要安装mxnet(CPU版本),请运行pip install mxnet-mkl。要在notebook中使用mxnet,在创建模型时声明torch=False,例如model = models.Cellpose(torch=False)。要在命令行中使用mxnet,添加标志--mxnet,例如python -m cellpose --dir ~/images/ --mxnet。在GPU上运行时,pytorch实现比mxnet实现快20%,而在CPU上运行时慢20%。

默认情况下,动态计算使用双线性插值而非最近邻插值。在model.eval中设置interp=False可以关闭此功能。双线性插值在CPU上会稍慢,但如果使用torch且启用GPU,它比最近邻插值更快。

计时(v0.6版本)

您可以通过添加--check_mkl标志来检查cellpose是否正在运行MKL版本(如果您使用的是CPU而非GPU)。如果不使用MKL,cellpose会慢得多。以下是Cellpose的运行时间,分为运行深度神经网络(DNN)的时间和后处理(梯度追踪、分割、质量控制等)的时间。DNN运行时间显示了使用GPU(Nvidia GTX 1080Ti)或CPU(Intel 10核7900X)的情况,有无网络集成(4net vs 1net)。无论是否进行集成或使用CPU/GPU版本,后处理运行时间都相似。运行时间针对不同的图像大小显示,所有图像的细胞直径均为30像素(我们训练集的平均值)。

256像素512像素1024像素
DNN(1net,GPU)0.054秒0.12秒0.31秒
DNN(1net,CPU)0.30秒0.65秒2.4秒
DNN(4net,GPU)0.23秒0.41秒1.3秒
DNN(4net,CPU)1.3秒2.5秒9.1秒
后处理(CPU)0.32秒1.2秒6.1秒
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号