在matlab中找到满足2个条件的公共索引

find common indices that satisfy 2 conditions in matlab

我有一个非常大的二维数组 (8000x6000)。 同一个数组(cond1 和 cond2)满足两个条件,我想调和它们,找到满足两个条件的公共索引

F=rand(8000,6000);
ind1=find(F>0.5);ind1 stores indices that satisfy cond1

第二个条件(cond2)是索引是否满足条件

newF=zeros(8000,6000);
[x,y]=meshgrid(1:6000,1:8000);
newF(x+y>200)=1;

新数组newF在不满足新条件时值为零,而在满足条件时值为1。

我想找到满足两个条件的 F 和 newF 的公共索引。 当我试图找到 ind2(r,c)

 [r,c]=find(newF>0) 

我无法协调 ind1 和 r,c 以找到共同的索引。 有人可以帮我吗?

通过应用条件获得的逻辑矩阵相乘,element wise and then use find找到共同的行和列下标。即

[r, c] = find((F>0.5) .* (newF>0));    
% .* is also replaceable by &. Use whichever is faster