How to interpolate/grid logical data?
9 views (last 30 days)
Show older comments
Hello All,
I did not find answers for my question, so I post it here:
I have a matrix of logical gridded data (0 or 1), how could I interpolate them to finer scale gridded data?
E.g., originally, it is X=[1:3:22];Y=[1:3:10]; DATA=[0 0 0 0; 0 0 0 0; 0 1 1 0; 0 1 1 0; 0 1 1 0; 0 1 1 0; 0 0 0 0; 0 0 0 0]; Now I want to interpolate DATA to a new data (also a logical matrix), with X=[1:22];Y=[1:10];
Since I use these data to describe the shape of something. If I use interp2 or griddata, the shape of the matrix will be distorted. I could, of course, write a for loop to check point by point. But I really wish there is another elegant way to deal with this simple problem!!!
Thanks a lot,
Laura
1 Comment
Matt J
on 13 Oct 2012
Clarify what you mean by "If I use interp2 or griddata, the shape of the matrix will be distorted."
If you do interp2(DATA,(1:22),(1:10).') then the resulting matrix will be 10x22. In what way is this a distorted shape? What is the shape that you do want?
Answers (0)
See Also
Categories
Find more on Interpolation 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!