calculate correlation between the blocks

1 view (last 30 days)
i've divided the image into 16x16 blocks i.e total of 256 blocks.
now i want to calculate the correlation between the blocks...
can anybody help me...
  4 Comments
Matt J
Matt J on 29 Mar 2013
Edited: Matt J on 29 Mar 2013
I repeat, how do you define correlation between blocks? Will the result for each pair of blocks be a scalar or something else? If you have 2 blocks will xcorr2(block1,block2) give you the correlation in the form that you want?
angel
angel on 30 Mar 2013
scalar value sir...i.e single value..

Sign in to comment.

Accepted Answer

Matt J
Matt J on 29 Mar 2013
Blocks=mat2tiles(grayImage,[16,16]);
data=cellfun(@(x)x(:)-mean(x(:)), Blocks, 'uni',0 );
data=[data{:}];
Correlations = data.'*data;
Here, Correlations(i,j) is the correlation (my definition) of the i-th and j-th block. I'm not sure if this suits your definition (see my comments above).
  4 Comments
Matt J
Matt J on 30 Mar 2013
Undefined function 'mat2tiles' for input arguments of type 'uint8'.
You were meant to download mat2tiles from the link I gave you.
now guide me how to calculate correlation between these blocks????
This is the third time you've neglected to define what you mean by "correlation". Show us how you would compute the correlation of 2 blocks in some simplified example and explain what problem you're having extending it to many blocks.
angel
angel on 8 Apr 2013
Edited: angel on 8 Apr 2013
yet i've not calculated correlation but my idea behind this is:
correlation=corr2(block1,block2);
now tell me how to calculate the correlation of these:
block 23, block 34 and block 67 having glcmLR value is 3
block 56, block 78 having glcmLR value let say 7
block 89, block 32 and block 43 having glcmLR value 2
can anybody tell me how to do this

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!