我正在尝试对图像中的每个像素进行如下操作:
A 是 x*y*4 矩阵,w 只是一个 1x9 向量。
我有一个矩阵 L,它是 200x200x4x9。
L 的前两个维度是像素的 (x,y) 位置。每个位置有 4 个不同的子像素(第三维)。每个子像素都有一个向量 m,最后一个维度是我方程中的 m。
我计划获得整个图像的第一个子像素的结果,这就是我尝试过的:
A (:,:,1) = w * L (:, :, 1, :) ====> Inputs must be 2-D, or at least one input must be scalar.
A (:,:,1) = w * L (:, :, 1, :)' ====> Transpose on ND array is not defined.
A (:,:,1) = w * reshape (L (:, :, 1, :), 1, 9)' ===> To RESHAPE the number of elements must not change.
如果我只打印 L (1,1,1,:) 我会得到单个元素的值(看起来不像向量):
ans(:,:,1,1) = 0.8980
ans(:,:,1,2) = 0.8065
ans(:,:,1,3) = 0.8471
ans(:,:,1,4) = 0.7607
ans(:,:,1,5) = 0.7175
ans(:,:,1,6) = 0.9020
ans(:,:,1,7) = 0.8100
ans(:,:,1,8) = 0.7640
ans(:,:,1,9) = 0.8135
编辑:供参考,
Size(A) = [200 200 4]
Size(L) = [200 200 4 9]
Size(w) = [1 9]
编辑:这就是我使用循环的方式