如何在matlab中重新加入分割图像

问题描述

| 我将大图像分成较小的块,因为在MATLAB中处理整个图像所花费的时间很多。现在,在分割图像并完成所需的处理之后,我需要从那些块中重新加入图像。我该怎么做? 这就是我拆分图像的方式:
k=1;
    for i=1:floor(nCol/6):(5*nCol/6)
        for j=1:floor(nRow/6):(5*nRow/6)

            im{k}=I(i:floor(i+nCol/6),j:floor(j+nRow/6),1:3);
            k=k+1;

        end

    end


for i=1:k-1
      part=some_function(im{i});
在这部分是图像本身的数组..那就是我使用它
for i=1:length(part)
         figure; imshow(part{1}{i});
基本上,这部分包含已处理的块的各个部分,并分成许多部分。因此,基本上,首先我需要将一部分合并为一个图像,然后将所有部分合并为一个整体图像。我希望你明白我的意思。     

解决方法

        通常,MATLAB中的图像只是矩阵。因此,您可以使用通常的水平和垂直串联命令将它们重新粘合在一起:
WholeImage = [ NorthWest NorthEast; ...
               SouthWest SouthEast ];
假设您的图像分为四部分,这会将它们重新组合在一起。 如果您将其分解为可变数量的碎片并将其存储在单元格阵列中,则ѭ3有助于将碎片粘合在一起。     ,        如果已将图像拆分为通道(例如RGB),则可以按以下方式使用cat命令:
img = cat(3,R,G,B);