假设我在MATLAB中有一个长度为5的2D向量,例如:
A=
[1 2;
3 4;
5 6;
7 8;
9 10]
这是图像中某些像素的位置。通过检查条件,例如A(:,1) < 2 && A(:,2) > 9
是否要从A中移除两个点[1 2]和[9 10],并留下长度为3的新A:
newA=
[
3 4;
5 6;
7 8]
答案 0 :(得分:4)
我认为你想做的事情可以按照以下方式完成:
A(A(:,1) < 2 | A(:,2) > 9, :) = []
我认为你没有正确定义你的病情;)
答案 1 :(得分:1)
A=[1,2;3,4;5,6;7,8;9,10];
disp('Original A');
disp(A);
B=[];
j=1;
for i=1:1:size(A)
if(A(i,1)<2 || A(i,2)>9)
else
B(j,:)=A(i,:);
j=j+1;
end
end
A=[];
A=B;
disp('updated A');
disp(A);
输出
Original A
1 2
3 4
5 6
7 8
9 10
updated A
3 4
5 6
7 8