【问题标题】:Extracting every pixel value from matrix and storing it in new one in Matlab从矩阵中提取每个像素值并将其存储在 Matlab 中的新像素中
【发布时间】:2017-03-18 02:57:27
【问题描述】:

我猜我的问题是一个典型的新手问题。 我的矩阵如下所示:

[102 183 301]

第一个和第二个维度是行和列,第三个是我必须处理的图像数量。我应该编写一个代码来提取这 301 个图像中每个像素的像素值并将其存储到一个新矩阵中。 我只管理了一个像素,我的代码如下所示:

for y=1:301;
    inVal=squeeze(Data2(y,21,153));
    if y==1
        MAT=zeros(size(Data,3),size(inVal,1));
    end
    MAT(y)=squeeze(MAT(y,:))+inVal;
end

我之前对矩阵进行了置换以从每个图像中获取像素值,但这并不能找到所有其他图像,或者至少我无法找到。 我真的很感激一些建议,因为我从来没有编码过。

【问题讨论】:

    标签: matlab image-processing matrix pixel


    【解决方案1】:

    如果您想要所有图像上位置 (x,y) 处所有像素值的向量,尊重您的初始数据层,只需执行以下操作:

    MAT = squeeze(Data(x,y,:));
    

    【讨论】:

    • 我需要的有点不同:for X=1:x for Y=1:y if X==1 && Y==1 mat=zeros(size(th,1),size (th,2));结束 if th(X,Y)>=lim1 && th(X,Y)=lim2 mat(X,Y)=0 则结束; end end end x 描述长度,y 描述图像宽度。此外,我添加了 2 个限制来对像素值进行排序。我没有很好地说明我的问题,所以你的答案虽然有效。
    猜你喜欢
    • 2023-04-07
    • 1970-01-01
    • 2017-10-10
    • 2014-04-11
    • 2013-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-18
    相关资源
    最近更新 更多