Hi every one is there any way how to subtradt two matrices of different dimension let say A=<424x544x3uint8> and B=<462x545x3 uint8> How can we perform subtraction like S=A-B. Thanks
1 次查看(过去 30 天)
显示 更早的评论
A=imread('u.png'); B=imread('c2.png'); Ip = imabsdiff(A,B); imshow(Ip)
回答(1 个)
Andy
2014-10-22
How about expanding the two inputs to generate matrices with matching dimensions, assuming A(1,1) lines up with B(1,1)
Asize=size(A);
Bsize=size(B);
Csize=max(Asize,Bsize);
Anew=zeros(Csize);
Bnew=zeros(Csize);
Anew(1:Asize(1),1:Asize(1,2))=A;
Bnew(1:Bsize(1),1:Bsize(1,2))=B;
S=Anew-Bnew;
Alternatively trim them to the same size after finding the size of the overlap,
Asize=size(A);
Bsize=size(B);
Csize=min(Asize,Bsize);
Anew=A(1:Asize(1),1:Asize(1,2));
Bnew=B(1:Asize(1),1:Bsize(1,2));
S=Anew-Bnew;
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!