knime-ip / knip

KNIME Image Processing Extension
https://www.knime.com/community/image-processing
49 stars 11 forks source link

Image Cropper is surprisingly slow #458

Closed imagejan closed 7 years ago

imagejan commented 7 years ago

To know what's the fastest way to get a xy-downsampled, channel-cropped, z-projected version of an image, I assembled a small test workflow:

Image Cropper Resizer Projector Speed Test.zip

I was a bit surprised to see that the Image Cropper performs much worse than the Image Resizer on the same input data (see the timer output; nodes are arranged in groups of three):

image

I would have expected that simply extracting a subset of the pixel information (crop) would be faster than actually performing a linear interpolation (resize).


In conclusion, the fastest node arrangement to achieve the task is: Image Resizer -> Projector -> Image Cropper

imagejan commented 7 years ago

I should mention that for extracting a single channel, it is probably better to use a Splitter instead of an Image Cropper even if you only require one of the channel.

The Splitter works in almost no time 😄 .

dietzc commented 7 years ago

here we go: https://github.com/knime-ip/knip/commit/954228212b69a3a73b4b24e74f58740f1645a0b6 I added some special cases.