Interpolate matrix in 4D
54 次查看(过去 30 天)
显示 更早的评论
I have a matrix data of size 20,10,20,10.
It is a 3D object that changes across time (10 time points which represent 10 seconds)
I would like to create a smooth transition interpolating values to subdivide those 10 seconds into e.g., 10th of a second, so 100 time points in total.
How to go about this in Matlab?
0 个评论
回答(1 个)
Matt J
2023-3-8
3 个评论
Matt J
2023-3-8
编辑:Matt J
2023-3-8
what does the [1,1,1,10] mean?
It means make the 4th dimension 10 times bigger.
I want to preserve the values in A(:,:,:,1) and in A(:,:,:,10), which must be identical to the values in the Ainterp(:,:,:,1) and Ainterp(:,:,:,100). And the new values should be interpolated accordingly.
griddedInterpolant will do that.
A=rand(20,10,20,10);
F=griddedInterpolant(A);
Ainterp=F({1:20,1:10,1:20,linspace(1,10,100)});
whos A Ainterp
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!