0
我得到了一個10x10的矩陣,一堆零和一個值爲1的元素。 我試圖創建一個元素爲1及其周圍的子矩陣。Matlab,定義子矩陣
問題:
這僅僅是一個例子,所述的元素 「1」 的任何地方放置在基質內。我意識到我可以使用find find(MATRIX==1)
找到我的元素。
如何定義我的3x3子矩陣?
我得到了一個10x10的矩陣,一堆零和一個值爲1的元素。 我試圖創建一個元素爲1及其周圍的子矩陣。Matlab,定義子矩陣
問題:
這僅僅是一個例子,所述的元素 「1」 的任何地方放置在基質內。我意識到我可以使用find find(MATRIX==1)
找到我的元素。
如何定義我的3x3子矩陣?
您需要使用'find'來獲取那個'1'元素的索引,並從它們中構建所需的矩陣。喜歡的東西:
[row, col] = find(MATRIX==1);
subMatrix = MATRIX(row-1:row+1, col-1:col+1);
當然,你可能需要檢查的是「1」元素是不是在矩陣的邊界(即行1,行+ 1,COL-1,山坳+ 1不是越界)。
最好。
感謝您的快速回答,非常感謝。 – user3503856