resize image on read

2 visualizzazioni (ultimi 30 giorni)
Nathan Jessurun
Nathan Jessurun il 20 Ott 2019
Modificato: Nathan Jessurun il 20 Ott 2019
I am working with very high-resolution images, where reading in the image takes most of the processing time. Is there a more efficient method of reading a resized version of the image than X = imresize(imread('img.png'), ratio)?
The documentation for imread mentions a 'ReductionLevel' parameter, but it isn't present for my images. Moreover, it doesn't provide the same level of flexibility as imresize.
Note: I can't save a resized version of the image, since the resizing ratio changes depending on the algorithm and storage becomes an issue.
Thanks for the help!
  2 Commenti
KALYAN ACHARJYA
KALYAN ACHARJYA il 20 Ott 2019
.....very high-resolution images....
Sizes?
Nathan Jessurun
Nathan Jessurun il 20 Ott 2019
Modificato: Nathan Jessurun il 20 Ott 2019
The initial resolutions are 6000x8000x3 (rgb color)

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 20 Ott 2019
ReductionLevel is only an option for JPG images, not PNG images. 6000x8000 is not really that huge. How long does it ake to read in? You might look into the memmapfile() function.
  1 Commento
Nathan Jessurun
Nathan Jessurun il 20 Ott 2019
Modificato: Nathan Jessurun il 20 Ott 2019
True, the images are not that large, but the profiler indicates reading images (specifically 'pngreadc') constitutes about 15% of my total runtime (the program mainly consists of morphological operations). This proportion is drastically reduced when I use smaller images.
Thank you for the memmap suggestion! I will see if I can use it to read downsampled data from the image.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by