在MATLAB中不使用循环的图像组件乘法?

Sha*_*han 2 matlab image-processing

我有两个RGB图像,让我们说AB.两者都具有相同的尺寸,尺寸为'(x,y,3)'.如何将两个图像相乘,以便我们在每个位置采用点积,结果将是一个大小为'(x,y)'的矩阵?

例如,'A(1,1,:)*转置(B(1,1,:))'.使用循环它非常慢.

abc*_*bcd 5

您可以使用MATLAB的内置函数dot.因此,要沿第三维度采用点积,请使用

C=dot(A,B,3);
Run Code Online (Sandbox Code Playgroud)