卵巢卵泡分析流程
项目描述
ovary-analysis
ovary-analysis
是一个用于从超声图像中分析卵巢卵泡的 Python 包。ovary-analysis
包含了用于自动分割和测量卵巢卵泡的 follicle-finder
流程。
图形用户界面
如果您想为 follicle-finder
分割流程使用图形用户界面,请参阅我们的 follicle-tracker
napari 插件。.
用法
分割和测量
您可以通过 FollicleFinder 命令行界面进行自动化分割和测量。要查看 FollicleFinder 的选项,您可以在您的终端中键入 follicle-finder --help
(您必须首先激活您的 `follicle-finder 环境`)。
$ follicle-finder --help
usage: follicle-finder [-h] [-i IMAGE_PATH] [--image-key IMAGE_KEY] [--ovary-seg-config OVARY_SEG_CONFIG]
[--follicle-seg-config FOLLICLE_SEG_CONFIG] [--ovary-model OVARY_MODEL]
[--follicle-model FOLLICLE_MODEL]
[--ovary-probability-threshold OVARY_PROBABILITY_THRESHOLD]
[--ovary-dilation-size OVARY_DILATION_SIZE]
[--follicle-probability-threshold FOLLICLE_PROBABILITY_THRESHOLD]
[--follicle-volume-threshold FOLLICLE_VOLUME_THRESHOLD] [-o OUTPUT_DIRECTORY]
optional arguments:
-h, --help show this help message and exit
-i IMAGE_PATH, --image IMAGE_PATH
raw image path (default: None)
--image-key IMAGE_KEY
raw image key (default: raw_rescaled)
--ovary-seg-config OVARY_SEG_CONFIG
path to the ovary segmentation configuration file (default: )
--follicle-seg-config FOLLICLE_SEG_CONFIG
path to the follicle segmentation configuration file (default: )
--ovary-model OVARY_MODEL
path to the ovary model. if not provided, built-in model is used. (default: )
--follicle-model FOLLICLE_MODEL
path to the follicle model. if not provided, built-in model is used. (default: )
--ovary-probability-threshold OVARY_PROBABILITY_THRESHOLD
probabilty threshold for binarizing ovary prediction (default: 0.8)
--ovary-dilation-size OVARY_DILATION_SIZE
size of the dilation to perform on the ovary segmentation (default: 10)
--follicle-probability-threshold FOLLICLE_PROBABILITY_THRESHOLD
probabilty threshold for binarizing follicle prediction (default: 0.5)
--follicle-volume-threshold FOLLICLE_VOLUME_THRESHOLD
minimum volume (# voxels) for a follicle to be included (default: 30)
-o OUTPUT_DIRECTORY, --output OUTPUT_DIRECTORY
output directory path (default: )
要使用默认选项进行分割,您可以在您的终端中键入以下内容
$ follicle-finder --image /path/to/image --output /path/to/output/directory
其中 /path/to/image
是要分割的图像的路径,而 /path/to/output/directory
是结果将保存到的目录的路径。完成流程后,您将在输出目录中找到两个文件
segmentation.h5
:包含在follicles
键中的卵泡和ovary
键中的卵巢的分割图像。measurements.csv
:每个检测到的卵泡的测量表格。
如果您想使用自己的模型进行分割(请参阅下面的训练说明),可以使用以下命令
$ follicle-finder --image /path/to/image --ovary-model /path/to/ovary/model --follicle-model /path/to/follicle/model
--output /path/to/output/directory
其中 /path/to/ovary/model
和 path/to/follicle/model
分别是卵巢和卵泡模型的路径。
训练模型
我们在 examples
目录中包含了训练和执行交叉验证的示例脚本。由于训练和交叉验证的计算时间较长,我们设计了这些脚本用于具有 LSF 作业队列的科学计算集群。如果您想在其他计算环境中运行,请提交问题寻求帮助。
- 卵巢模型:
examples/make_ovary_cross_validation.py
- 卵泡模型:
examples/make_follicle_cross_validation.py
安装
先决条件
- 具有 nvidia GPU 的计算机。我们已在 P1000、P4000 和 RTX2080Ti 上进行过测试。
- 计算机上已安装 CUDA > 11.3
- anaconda 或 miniconda Python
使用 conda 进行安装
您可以通过我们的 conda 环境文件安装 follicle-finder
。首先,在您的计算机上安装 anaconda 或 miniconda。然后,下载 environment_denoise.yml 文件
(右键单击链接并“另存为...”)。在终端中,导航到下载 environment_denoise.yml
文件的目录
cd <path/to/downloaded/environment_denoise.yml>
然后创建 follicle-finder
环境
conda env create -f environment.yml
环境创建完成后,您可以激活它,并按以下方式使用 follicle-finder
。
conda activate follicle-finder
开发安装
您可以使用我们的 conda 开发环境文件设置开发环境。首先,在您的计算机上安装 anaconda 或 miniconda。然后,下载 environment_dev.yml 文件
(右键单击链接并“另存为...”)。在终端中,导航到下载 environment_dev.yml
文件的目录
cd <path/to/downloaded/environment_dev.yml>
然后创建 follicle-tracker
环境
conda env create -f environment_dev.yml
环境创建完成后,您可以激活它,并按以下方式安装 follicle-finder
。
conda activate follice_tracker
导航到您想要下载 ovary-analysis
仓库的目录,然后克隆 follicle-tracker 仓库。
cd /path/to/repo/parent/directory
git clone git@git.bsse.ethz.ch:iber/ovary-analysis.git
导航到 ovary-analysis
目录,并使用所有依赖项以可编辑模式安装。
cd ovary-analysis
pip install -e .
我们使用 pre-commit 确保整个仓库的代码风格一致。要在终端中设置 pre-commit,请运行以下命令。
pre-commit install
项目详情
ovary-analysis-0.0.3.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 29418c01d643ef8d97f303de644603192acbfb2303b72f9bc3d3321dc58d65bf |
|
MD5 | d6688fb5668a4448c1bb10996919354a |
|
BLAKE2b-256 | e978e9abeab54502b1de3e574611d4853e15671af467062fc464e6b6ed491ee4 |