[ PROMPT_NODE_26962 ]
graphs
[ SKILL_DOCUMENTATION ]
# 图构建与空间分析
## 概述
PathML 提供了从组织图像构建空间图的工具,以表示细胞和组织层面的关系。基于图的表示支持复杂的空间分析,包括邻域分析、细胞间相互作用研究和图神经网络应用。这些图捕获了形态特征和空间拓扑,用于下游计算分析。
## 图类型
PathML 支持构建多种图类型:
### 细胞图 (Cell Graphs)
- 节点代表单个细胞
- 边代表空间邻近或生物学相互作用
- 节点特征包括形态、标记物表达、细胞类型
- 适用于单细胞空间分析
### 组织图 (Tissue Graphs)
- 节点代表组织区域或超像素
- 边代表空间邻接
- 节点特征包括组织成分、纹理特征
- 适用于组织层面的空间模式
### 空间转录组图 (Spatial Transcriptomics Graphs)
- 节点代表空间点或细胞
- 边编码空间关系
- 节点特征包括基因表达谱
- 适用于空间组学分析
## 图构建工作流
### 从分割到图
将细胞核或细胞分割结果转换为空间图:
python
from pathml.graph import CellGraph
from pathml.preprocessing import Pipeline, SegmentMIF
import numpy as np
# 1. 执行细胞分割
pipeline = Pipeline([
SegmentMIF(
nuclear_channel='DAPI',
cytoplasm_channel='CD45',
model='mesmer'
)
])
pipeline.run(slide)
# 2. 提取实例分割掩码
inst_map = slide.masks['cell_segmentation']
# 3. 构建细胞图
cell_graph = CellGraph.from_instance_map(
inst_map,
image=slide.image, # 可选:用于提取视觉特征
connectivity='delaunay', # 'knn', 'radius', 或 'delaunay'
k=5, # 对于 knn:邻居数量
radius=50 # 对于 radius:像素距离阈值
)
# 4. 访问图组件
nodes = cell_graph.nodes # 节点特征
edges = cell_graph.edges # 边列表
adjacency = cell_graph.adjacency_matrix # 邻接矩阵
### 连接方法
**K-最近邻 (KNN):**
python
# 将每个细胞连接到其 k 个最近邻居
graph = CellGraph.from_instance_map(
inst_map,
connectivity='knn',
k=5 # 邻居数量
)
- 每个节点的固定度数
- 捕获局部邻域
- 简单且可解释
**基于半径:**