Error : Incomplete or misformed expression or statement. Line: 4 Column: 6
CODE : A function that creates overlapping blocks of same size from an image
function [blocks,val1,val2]=frame2OverlappingBlocks(I,blockSize,shift)
if blockSize(1)>=shift [n_row,n_col] = size(I); %check the dimension consistency
[~,pos1,val1]=find((((1:shift:n_row) + blockSize(1)-1)>=n_row).*((1:shift:n_row) + blockSize(1)-1),1); [~,pos2,val2]=find((((1:shift:n_col) + blockSize(2)-1)>=n_col).*((1:shift:n_col) + blockSize(2)-1),1); I = imresize(I,[val1 val2]); %[n_row_new,n_col_new] = size(I);
blocksPerRow = pos2; howManyRows = pos1; blocks = cell(howManyRows,blocksPerRow); for i=1:howManyRows for j=1:blocksPerRow topLeftPel = [shift*i-(shift-1) shift*j-(shift-1)]; blocks{i,j}.intensity = I(topLeftPel(1):topLeftPel(1)+blockSize(1)-1,topLeftPel(2):topLeftPel(2)+blockSize(2)-1); blocks{i,j}.topLeftPixel = topLeftPel; end end else display('Amount of shift is greater than the Block size!!'); endend
Best Answer