Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image Matlab:对矩阵的每个元素应用一个运算_Image_Matlab_Loops_Matrix_Cell - Fatal编程技术网

Image Matlab:对矩阵的每个元素应用一个运算

Image Matlab:对矩阵的每个元素应用一个运算,image,matlab,loops,matrix,cell,Image,Matlab,Loops,Matrix,Cell,我有100个图像,我已经阅读并存储在一个矩阵的形式,我想应用对每个图像的操作。我该怎么办? 我有另一个包含800个图像的矩阵,我想做同样的事情,即对每个图像应用一个操作。 我不知道如何做一个携带它的环。感谢您的帮助最直接的方法是使用 对于128-by-128-by-100矩阵(我们称之为M),您可以执行以下操作 for imi = 1:size(M,3) currImg = M(:,:,imi); % take a "slice" of M = an image % proces

我有100个图像,我已经阅读并存储在一个矩阵的形式,我想应用对每个图像的操作。我该怎么办? 我有另一个包含800个图像的矩阵,我想做同样的事情,即对每个图像应用一个操作。
我不知道如何做一个携带它的环。感谢您的帮助

最直接的方法是使用 对于
128
-by-
128
-by-
100
矩阵(我们称之为
M
),您可以执行以下操作

for imi = 1:size(M,3)
    currImg = M(:,:,imi); % take a "slice" of M = an image
    % process currImg here...
end
for ri = 1:size(C,1)
    for ci = 1:size(C,2)
        currImg = C{ri,ci}; % get an image stored in cell ri,ci
        % process currImg here...
    end
end
对于
40
-by-
20
单元数组(我们称之为
C
),您可以执行以下操作

for imi = 1:size(M,3)
    currImg = M(:,:,imi); % take a "slice" of M = an image
    % process currImg here...
end
for ri = 1:size(C,1)
    for ci = 1:size(C,2)
        currImg = C{ri,ci}; % get an image stored in cell ri,ci
        % process currImg here...
    end
end

请注意访问矩阵(使用
()
)和访问单元格元素(使用
{}
)的不同模式。

这实际上取决于要应用的操作。例如,如果要用3x3正方形放大每个图像,只需传递3D矩阵和3x3正方形即可

imdilate (img, true (3, 3));
这个简单的例子将在矩阵的所有2D图像上应用膨胀,这完全是选择正确的结构元素的问题(
true(3,3)
)。当然,您也可以使用for循环,但这不是该语言的用途。上面的例子不是比循环更优雅吗


Matlab语言的一个设计良好的函数应该可以为您处理这种情况,并且可以处理n维矩阵的所有图像。这取决于您对运算符和函数的理解程度,以使其满足您的要求。

假设您的函数是这种形式的
函数imageOut=someFunction(imageIn)

第一种情况:(假设
I
是一个
MxNxP
矩阵,带有
p
图像,每个
MxN

第二种情况:(假设
I
MxN
单元数组,每个单元包含一个图像)


我同意这不是最聪明的问题,但为什么会有反对票?你尝试了什么?我建议您开始。。。特别是循环