我有一个4D大小的矩阵,比方说,100x200x3x10,其中100x200是一个图像的大小,3是通道数(RGB图像),10是图像数。
我想用自己计算每个图像中每个RGB矢量的内积。生成的图像大小应为100x200x10。如何有效地计算这些产品,可能不使用循环?
感谢。
答案 0 :(得分:4)
如果您调用矩阵M
,这应该有效:
squeeze(dot(M,M,3))
squeeze
是因为matlab给出了一个100x200x1x10矩阵,squeeze
敲出了多余的维度。