两天前我问过如何将图像分块为how to segment the image into block。幸运的是,我亲爱的chappjc得到了最好的答案。图像分块是否取决于图像的大小?
[m,n] = size(Image);
numBlocksX = 10; numBlocksY = 10;
bsX = ceil(n/numBlocksX); bsY = ceil(m/numBlocksY);
numFullBlocksX = floor(n/bsX); numFullBlocksY = floor(m/bsY);
xBlocks = [repmat(bsX,numFullBlocksX,1); mod(n,bsX)*ones(mod(n,bsX)>0)];
yBlocks = [repmat(bsY,numFullBlocksY,1); mod(m,bsY)*ones(mod(m,bsY)>0)];
blockCell = mat2cell(Image,yBlocks,xBlocks);
我的问题:
我的图像具有尺寸160×160 代码工作以及当尝试将图像分割成8×8的块数,或10×10,或12 x 12,...等
但是,当我尝试将图像分割成22 x 22块数,代码工作,但图像被分割成21 x 21而不是22 x 22!
分割是否依赖于原始图像的大小?因为当我与较大的图像工作时,图像被分割成22×22
我只需要你对我的问题的意见(如果分割取决于图像的大小?)
请我需要你的帮助!
您是否尝试过逐行检查代码,看看您是否理解它的作用? –
真诚的不,我不明白所有的线,但它效果不错:) – Christina