Clear Filters
Clear Filters

mat2cell operation coordinates cell

2 views (last 30 days)
i have problem with cell operation. i have 2 cells, first cell is A. A has 8*8 blocks and every blocks has 8*8 pixel. the second cell is B, B has 13*13 blocks and every blocks has 8*8 pixel.
coordinates cell A (X1,Y1) and coordinates cell B (X2,Y2)
i want to process two cells to find e and f. e=X1-(0.5*X2) and f=Y1-(0.5.Y2). so finally the output, i have 169 value of e and f.
  3 Comments
Internazionale
Internazionale on 1 Mar 2013
yes, for A{1,1} compare with all blocks in B cell. so for A{1,1} have 169 values of e and f
Image Analyst
Image Analyst on 2 Mar 2013
So you have two cells. Two separate 1 element cells, not a a by 2 cell array. And the first cell is called "A" and the second cell is called "B". So, in the cell called "A" do you have a 64 row by 64 column matrix of uint8 values? Not sure how you're defining blocks and pixels, but if your array in "A" is 8 blocks tall and each block is 8 pixels tall, then that means that the whole thing is 64 pixels tall (=8*8). Am I understanding it correctly?
And B is a single cell also with one uint8 in the array, just like A, except that the uint8 array in B is 13*8 pixels tall and 13*8 pixels wide. Correct?
If so, why are you even messing with cells and not just using regular numerical arrays which are much easier to use?

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 1 Mar 2013
Edited: Walter Roberson on 2 Mar 2013
[X2, Y2, X1, Y1] = ndgrid(1:size(B,1), 1:size(B,2), 1:size(A,1), 1:size(A,2));
E = X1 - X2./2;
F = Y1 - Y2./2;
e = squeeze(mat2cell(E, size(B,1), size(B,2), ones(1,size(A,1)), ones(1,size(A,2))));
f = squeeze(mat2cell(F, size(B,1), size(B,2), ones(1,size(A,1)), ones(1,size(A,2))));
  2 Comments
Internazionale
Internazionale on 2 Mar 2013
what do you mean with variable B ? matlab can not defined variable B.
Walter Roberson
Walter Roberson on 2 Mar 2013
Your question included " the second cell is B, B has 13*13 blocks and every blocks has 8*8 pixel."
That B.

Sign in to comment.

More Answers (0)

Categories

Find more on Large Files and Big Data in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!