用途:用于全切片组织学图像(WSI)的元数据检查、组织识别、瓦片提取与 H&E 染色标准化。
主要能力:通过 Slide 查看 dimensions、levels 和 level_dimensions;用 TissueMask 或 BiggestTissueBoxMask 生成组织掩膜;提供 RandomTiler(带种子抽样,最多 n_tiles)、GridTiler(按掩膜网格切分)、ScoreTiler(对所有候选评分后保存前 n_tiles)三种瓦片策略;支持预览并保存掩膜与瓦片预览图,以及基于染色区域的核与细胞密度评分。
使用方式:需先安装原生 OpenSlide,再建立独立环境。例如 Python 3.10 下: uv venv --python 3.10 .venv-histolab uv pip install --python .venv-histolab/bin/python 'histolab==0.7.0' pooch matplotlib .venv-histolab/bin/python -c 'import openslide; print(openslide.library_version)' macOS 使用 Homebrew:brew install openslide。若绑定找不到库,可在启动 Python 前设置: env DYLD_FALLBACK_LIBRARY_PATH="$(brew --prefix openslide)/lib" .venv-histolab/bin/python -c 'import openslide; print(openslide.library_version)'
限制:0.7.0 要求 Python <3.12、NumPy <=1.24.4、scikit-image <0.19.4、SciPy <1.10.1、Pillow <11、openslide-python 1.3.1,且不支持 Windows;需与现代科学环境隔离。extraction_mask 属于 extract() 和 locate_tiles(),不属于构造器;locate_tiles() 无 n_tiles 参数。随机瓦片可能重叠、重复或漏检;网格边界与组织检查可能留下空隙;ScoreTiler 仍会评分全部候选。n_tiles 为上限而非保证。评分不是校准的肿瘤概率,也不是模糊或对焦评分;0.7.0 中原始分数相等时 scaled_score 可能未定义。随机种子只复现采样,不能防止患者数据泄漏;跨尺度同一随机种子不对齐坐标。染色标准化目标应仅在训练数据上拟合。数据集划分应在训练、验证、测试瓦片分配前按患者拆分。0.7.0 掩膜分辨率取缩略图与 1/32 尺度图中较大者。大规模 WSI、远程示例下载和精确 MPP 后端未端到端验证。