1
Skimage
パッケージのツールを使用してイメージをセグメント化した後に、リージョン隣接グラフを作成しようとしています。ドキュメントの例を使用して、SLICを使用してイメージをセグメント化し、RAGを正常に作成できます。スキマージュ領域クイックシフトセグメンテーションからの隣接グラフ(RAG)
from skimage import data
from skimage import segmentation
from skimage.future import graph
import matplotlib.pyplot as plt
#Load Image
img = data.coffee()
#Segment image
labels = segmentation.slic(img, compactness=30, n_segments=800)
#Create RAG
g = graph.rag_mean_color(img, labels)
#Draw RAG
gplt = graph.draw_rag(labels, g, img)
plt.imshow(gplt)
Iセグメントにイメージをsegmentation.quickshift
またはsegmentation.felzenszwalb
のいずれかを使用し、RAGを作成する場合は、私は、draw_rag()
でエラーが発生します。
labels = segmentation.quickshift(img, kernel_size=5, max_dist=5, ratio=0.5)
g = graph.rag_mean_color(img, labels)
gplt = graph.draw_rag(labels, g, img)
labels = segmentation.felzenszwalb(img, scale=100, sigma=0.5, min_size=50)
g = graph.rag_mean_color(img, labels)
gplt = graph.draw_rag(labels, g, img)
Traceback (most recent call last):
File "C:\Anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3032, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-34-c0784622a6c7>", line 1, in <module>
gplt = graph.draw_rag(labels, g, img)
File "C:\Anaconda\lib\site-packages\skimage\future\graph\rag.py", line 429, in draw_rag
out[circle] = node_color
IndexError: index 600 is out of bounds for axis 1 with size 600
ドキュメントは、RAG方法は、これらの方法のいずれかからのセグメントと互換性があります示唆しているようだので、私は私が何か間違ったことをやっているかどうかわからないんだけど、バグがあります、またはRAG缶SLICセグメンテーション方式でのみ使用できます。助言がありますか?