Is there a two-dimensional sinc interpolation software?
14 views (last 30 days)
Show older comments
Jaime De La Mota Sanchis
on 30 Sep 2021
Answered: Nikeet Pandit
on 10 May 2022
Hello everyone. I have found this package of software. I am interested in doing a two-dimensonal sinc interpolation as defined in the diapositives 15 to 18 of this presentation. Unfortunately. I haven't found anything.
Can anybody point me to some code that might work?
Best regards.
Jaime.
0 Comments
Accepted Answer
Star Strider
on 30 Sep 2021
One-dimensional sinc interplation is described in Ideal Bandlimited Interpolation. It may be possible to adapt it to a 2D problem.
.
2 Comments
Matt J
on 30 Sep 2021
Edited: Matt J
on 30 Sep 2021
Yes, it is possible, but this is only valid for plaid upsampling, not arbitrary interpolation.
Image=double(imread('cameraman.tif'));
M=length(Image);
t=1:M;
dt=0.2;
ts = -M:dt:2*M;
[Ts,T] = ndgrid(ts,t);
A=sinc(Ts - T);
A([1:M/dt,end+1-M/dt:end],:)=[];
ImageInterpolated = A*Image*A.';
whos Image ImageInterpolated
imshow(ImageInterpolated,[])
More Answers (2)
Matt J
on 30 Sep 2021
Since interpolation is commonly approximated by cubic spline interpolation, which you have an option for in interp2.
Vq = interp2(X,Y,V,Xq,Yq,'spline');
Nikeet Pandit
on 10 May 2022
We know that Fourier is a seperable transform... so if we want to do a Fourier 2D transform its equivalent to doing 1D transform on rows and then columns. I assume then this property holds for sinc interpolation... So I adapted the 1D example for sinc interpolation they provide on the sinc(x) documentation ... and then I applied the interpolation to the rows and then interpolation to the columns and it seemed to work
0 Comments
See Also
Categories
Find more on Interpolation in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!