Interpolate 1 array to another
2 次查看(过去 30 天)
显示 更早的评论
Hello,
I want to interpolate a 5x9000 numeric array onto a 2000x3000 numeric array.
Other words, I want both arrays the same size.
What code is easiest for this?
0 个评论
回答(2 个)
Image Analyst
2020-1-18
If you have the Image Processsing Toolbox, use imresize():
array1NewSize = imresize(array1, size(array2));
0 个评论
Akira Agata
2020-1-19
If you don't have the Image Processing Toolbox, interp2 would be your friend, like:
% assuming array1 is a 5x9000 numeric array
[xGrid, yGrid] = meshgrid(linspace(0,1,9000),linspace(0,1,5));
[xGrid2, yGrid2] = meshgrid(linspace(0,1,3000),linspace(0,1,2000));
array1NewSize = interp2(xGrid,yGrid,array1,xGrid2,yGrid2);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!