怎样利用matlab对一幅图像进行分块以及重组?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样利用matlab对一幅图像进行分块以及重组?相关的知识,希望对你有一定的参考价值。
就是将指定的图像分解成若干个大小相等的块,进行某些运算后在重组成一幅图。
能不能给出分块函数的名称或是源代码?
高手帮帮忙!
用col2im函数就行,
如果是将图像分割成块的时候用的im2col参数为'distinct',那么用col2im函数时参数也是'distinct',
如果分割图像的时候参数为'sliding',那么用需要用reshape+accumarray函数解决。
clc
img = double(imread('tire.tif'));
[r c] = size(img);
w = 8;
imgBlock = im2col(img,[w w],'sliding'); imgBlock = imgBlock(:);
[x y] = meshgrid(1:c,1:r);
xx = im2col(x,[w w], 'sliding'); xx = xx(:);
yy = im2col(y,[w w], 'sliding'); yy = yy(:);
img2 = accumarray([yy xx], imgBlock, [], @mean);
figure,imshow(img, []);
figure,imshow(img2,[]); 参考技术B ssf
以上是关于怎样利用matlab对一幅图像进行分块以及重组?的主要内容,如果未能解决你的问题,请参考以下文章