Clear Filters
Clear Filters

interpretation of imread output array values

3 views (last 30 days)
hi, I'm trying to use imread to get an array representation of an image, then search that array for places where a specific colour occurs. I can't seem to find any doumentation on how the double, presented in the array, represents the colour at that location. How do I know which number represents which colour so that i can search for it?
  7 Comments
Stephen23
Stephen23 on 22 Feb 2023
"True, but imread() doesn't support indexed images in JPG or JP2."
Could you please show a reference to indexed JPG and JP2 image formats.
I do not see how spatial image compression using frequencies/wavelets could be indexed.
DGM
DGM on 22 Feb 2023
Edited: DGM on 22 Feb 2023
It doesn't make sense to me either, and likewise, I can't find any mention of such a thing existing
... except the statement from the webdocs:
Indexed JPEG 2000 images are not supported. Only JP2 compatible color spaces are supported for JP2/JPX files. By default, all image channels are returned in the order they are stored in the file.
Which seems to suggest that maybe there exist some non-compliant files that are indexed. I don't know why else they'd point out that imread() can't read such a thing.
Even if this is all just a poorly-worded comment about being incompatible with things that don't exist, I tried to to phrase my original statement to be safe either way.

Sign in to comment.

Accepted Answer

Timothy Dunning
Timothy Dunning on 22 Feb 2023
The file is an RGB .jpg and it produces a 3D array where each value is a uint8 in the range 0-255 representing the rgb colour scale. Thanks for the help.

More Answers (0)

Categories

Find more on Convert Image Type in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!