Speed improvements of IMWARP or alternative
1 次查看(过去 30 天)
显示 更早的评论
Dear all,
I'm using imwarp for extracting a 2D image/plane from a 3D dataset, including a 3D transformation.
What I experienced is that the speed of imwarp does not depend on the size of the resample output but on the size of the input image. This surprised me a lot and implies a very inefficient implementation, at least for my purpose.
I found by searching the web, the function tformarray that I might use as well. Using this function the calculation time is reduced with a factor more than ten. I find this very surprising as well, as I expect the imwarp function is build on top of the tformarray-function (correct me if I'm wrong). Do I make a mistake?
The disadvantage is that when using tformarray, I have to construct a tmap_B that reflects the pixel index corresponding to the axis coordinates for both input and resample axis. Although this might be trivial, is there a in-build Matlab function that can do the job?
Another disadvantage is that it relies on linear axis (in pixels/voxels), and non-linear sampling needs to be resampled first (annoying when you have for example MR or CT data with varying slice thickness).
I'm looking forward to your comments and or help.
Many thanks in advance,
Kees
0 个评论
回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!