Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

store array into matrix

Asked by pammy on 17 May 2013

i've divided the image into overlapping blocks of size 2x2.

 overlapR=(rows-(blockSizeR-1));
 overlapC=(columns-(blockSizeC-1));
 BmatRows=(rows-(blockSizeR-1))*(columns-(blockSizeC-1));
 BmatCols=blockSizeR*blockSizeC;
 index=1;
 newB=zeros(BmatRows,BmatCols);
 for row=1:incrR:rows-(blockSizeR-1)
        rowStart=row;
        rowEnd=row+(blockSizeR-1);
    for col=1:incrC:columns-(blockSizeC-1)
        colStart=col;
        colEnd=col+(blockSizeC-1);
        dbstop if error
        oneBlock=grayImage(rowStart:rowEnd,colStart:colEnd);
        blurMoment=BlurInvariants(oneBlock);
        newB(index,:)=blurMoment;
        index=index+1;
     end
end

next i calculated the BlurInvariant (I1 to I6 moments) its output is

    Columns 1 through 4
55.578300091237828  80.214628323890793  63.941635242249006  67.963797222206097
Columns 5 through 6
81.296646744833296   7.960173582309505

the following error occurs

Subscripted assignment dimension mismatch.
 Error in overlapLexicoBlurInvariant (line 72)
        newB(index,:)=blurMoment;

plz help me solving my error

0 Comments

pammy

Products

No products are associated with this question.

1 Answer

Answer by Jan Simon on 17 May 2013

The size of newB and blurMoment do not match. What sizes do you get, when the deugger stops at the error?

0 Comments

Jan Simon

Contact us