2016-09-25 5 views
1

イメージimgが与えられると、bwconncompでMatlabの接続コンポーネントが得られます。返された接続コンポーネントから、各コンポーネントの最大値を取得できます。しかし、どのようにして最大値のインデックスを取得できますか?私は最大値が実際に画像内でどこに発生するのか知りたい。接続された各コンポーネントの最大値のインデックスを取得

は、ここで私がこれまで持っているもののための擬似コードです:

cc = bwconncomp(img) 
% iterate through the length(cc.PixelIdxList) 
     value(it) = max(cc.PixelIdxList{:,it}) 
     x(it) = ? 
     y(it) = ? 

にはどうすればいいxyを得るのですか?このよう

答えて

2

:実際PixelIdxList

ind(it) = max(cc.PixelIdxList{:,it}) 
[x(it),y(it)] = ind2sub(size(img),ind(it)) 

はあなたに線形ピクセルのインデックスではなく、その値を与え、そしてあなたは、インデックスを添え字に変換するind2subを使用することができます。 - 私が探していたまさに

value(it) = img(ind(it)); 
+0

これは完璧です:

は、値そのものの種類を取得します。ありがとうございました! – user6664585

関連する問題