私は少し混乱しており、助けていただければ幸いです。
隣接するピクセルの検索に関する多くの投稿を読みましたが、これは非常に役立ちます。
http://blogs.mathworks.com/steve/2008/02/25/neighbor-indexing-2/
ただし、size(A)=[8 340 340 15] の 4D マトリックス (A) に適用するのに問題があります。これは、隣人を取得したい 3D 画像 (それぞれ 15 スライス) の 8 つのグループを表します。オフセットを計算するために使用するサイズがわかりません。これは私が試したコードですが、オフセットを 4 次元に適合させる必要があるため、機能していないと思いますか? どうすればループなしでそれを行うことができますか?
%A is a 4D matrix with 0 or 1 values
Aidx = find(A);
% loop here?
[~,M,~,~] =size(A);
neighbor_offsets = [-1, M, 1, -M]';
neighbors_idx = bsxfun(@plus, Aidx', neighbor_offsets(:));
neighbors = B(neighbors_idx);
ありがとう、ジギー