resize image on read

4 ビュー (過去 30 日間)
Nathan Jessurun
Nathan Jessurun 2019 年 10 月 20 日
編集済み: Nathan Jessurun 2019 年 10 月 20 日
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 件のコメント
KALYAN ACHARJYA
KALYAN ACHARJYA 2019 年 10 月 20 日
.....very high-resolution images....
Sizes?
Nathan Jessurun
Nathan Jessurun 2019 年 10 月 20 日
編集済み: Nathan Jessurun 2019 年 10 月 20 日
The initial resolutions are 6000x8000x3 (rgb color)

サインインしてコメントする。

採用された回答

Image Analyst
Image Analyst 2019 年 10 月 20 日
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 件のコメント
Nathan Jessurun
Nathan Jessurun 2019 年 10 月 20 日
編集済み: Nathan Jessurun 2019 年 10 月 20 日
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.

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by