Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
多数のゼロと値 1 の要素を含む 10x10 のマトリックスを取得しました。1 の要素とその周囲を含むサブマトリックスを作成しようとしています。
問題:
これは単なる例です。要素「1」はマトリックス内の任意の場所に配置されます。find を使用して自分の要素を見つけることができることに気づきfind(MATRIX==1)ました。
find(MATRIX==1)
3x3 サブマトリックスを定義するにはどうすればよいですか?
「find」を使用してその「1」要素のインデックスを取得し、それらから目的の行列を作成する必要があります。何かのようなもの:
[row, col] = find(MATRIX==1); subMatrix = MATRIX(row-1:row+1, col-1:col+1);
もちろん、'1' 要素が MATRIX の境界内にないことを確認する必要がある場合があります (つまり、row-1、row+1、col-1、col+1 が範囲外ではない)。
一番。