Error : Incomplete or misformed expression or statement.
Afficher commentaires plus anciens
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!!');
end
end
2 commentaires
Walter Roberson
le 26 Jan 2014
Which MATLAB version are you using? If you are using R2008b or earlier, try replacing the ~ with the name of an otherwise unused variable.
Gaurav
le 26 Jan 2014
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!