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