2017-11-28 10 views
0

私はCTスキャン(1と0値のみ)のセグメンテーション画像を持っています。 skimage.measureの関数 "label"を使って、接続されたコンポーネントのndarrayを取得します。今、私は "ラベル"出力(ndarray)から最大の接続コンポーネントだけを取得する必要があります。 どうすればいいですか?セグメンテーション画像の最大連結成分を取得

私のコードは次のようになります。

from skimage.measure import label  

def getLargestCC(segmentation): 
    labels = label(segmentation) 
    // now I need to get only the largest connected component and return it 
return largestCC 

おかげでたくさん!

+0

テストのために 'segmentation'の内容を投稿できますか? –

+0

それはイメージなので、少し問題になります。この種のファイルをここに投稿するにはどうすればいいですか?それは実際に私がそれを分割したイメージファイルなので、2つの値の間の値を持つすべてのピクセルは1であり、他のすべてのピクセルは0です。 – Vipasana

答えて

0

私はあなたが出力、マスクとして何をしたいのか分かりませんか?

import numpy as np 
from skimage.measure import label 

def getLargestCC(segmentation): 
    labels = label(segmentation) 
    largestCC = labels == np.argmax(np.bincount(labels.flat)) 
    return largestCC 

numpyののbincountは、ラベルごとの出現回数をカウントし、ARGMAXが最も大きかったこれらのどれを教えてくれます。

関連する問題