[vtkusers] ImageReslice and Interpolation Can anyone help?

David Gobbi dgobbi at atamai.com
Wed Jun 13 07:40:07 EDT 2007


Hi Janny,

If your original data points do not form a complete, regular grid, then 
vtkImageReslice won't give you the result you want.  You can't use 
vtkImageReslice to fill in the gaps.

Instead, you could try using vtkDelaunay2D to triangularize the data 
followed by vtkProbeFilter to interpolate the data.  A limitation of 
ProbeFilter is that it always does linear interpolation, and it cannot 
interpolate beyond the hull of the original set of points.

 - David


Janny Dong wrote:
> I am trying to get a color contour map out of several data points. 
> Let's say, I need a nice and smooth 2D color map of dimension 5*5, so 
> that's 25 points. I know the positions of the points of course, but I 
> only know 10 data values (scalars). Therefore I need some 
> interpolation to get to know data values (scalars) at all positions 
> and map them to colors.
>
> I put my data into ImageData, and I am using ImageReslice in order to 
> do the interpolation I want. I constructed pipelines following the 
> example David Gobbi provided at 
> http://public.kitware.com/cgi-bin/viewcvs.cgi/*checkout*/Examples/ImageProcessing/Cxx/ImageSlicing.cxx?root=VTK&content-type=text/plain 
> <http://public.kitware.com/cgi-bin/viewcvs.cgi/*checkout*/Examples/ImageProcessing/Cxx/ImageSlicing.cxx?root=VTK&content-type=text/plain>
>
> Then I got an image as attached. For now, I just input 10 random 
> scalar values to 10 positions. I used cubic interpolation. What I want 
> is interpolation over the whole image area, not just near every point. 
> How can I achieve such visualization effect?
>
> Actually I just tried everything to get the visualization effect from 
> the Matlab functions griddata, which fits a surface of the form z = 
> f(x,y) to the data in the (usually) nonuniformly spaced vectors 
> (x,y,z), but I couldn't find a way in VTK to do the interpolation. I 
> read from Matlab help document that the griddata methods (nearest 
> neighbor, cubic, linear) are based on a Delaunay triangulation of the 
> data that uses Qhull. However I have no experience with Qhull and not 
> much time to dig into it. Also, I have to do the project in C++ not 
> Matlab. VTK is such a powerful visualization tool so I hope I could do 
> it with VTK.
>
> Thanks a lot.
> Janny
>
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> This is the private VTK discussion list. 
> Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
>   




More information about the vtkusers mailing list