基于区域边界的区域邻接图 (RAG)#

使用 rag_boundary 函数构建区域边界 RAG。 函数 skimage.graph.rag_boundary() 接受一个 edge_map 参数,该参数给出每个像素处存在特征(例如边缘)的重要性。 在区域边界 RAG 中,两个区域之间的边缘权重是 edge_map 中对应像素在其共享边界上的平均值。

plot rag boundary
from skimage import graph
from skimage import data, segmentation, color, filters, io
from matplotlib import pyplot as plt


img = data.coffee()
gimg = color.rgb2gray(img)

labels = segmentation.slic(img, compactness=30, n_segments=400, start_label=1)
edges = filters.sobel(gimg)
edges_rgb = color.gray2rgb(edges)

g = graph.rag_boundary(labels, edges)
lc = graph.show_rag(
    labels, g, edges_rgb, img_cmap=None, edge_cmap='viridis', edge_width=1.2
)

plt.colorbar(lc, fraction=0.03)
io.show()

脚本的总运行时间:(0 分钟 0.764 秒)

由 Sphinx-Gallery 生成的库