Greetings everyone.
[X, MAP] = imread('test.jpg');
RGB = ind2rgb(X,MAP);
LAB = rgb2lab(RGB);
Here I tried to convert from index to RGB image using 'ind2rgb' command, but the result is like this: Index exceeds matrix dimensions.
Error in ind2rgb (line 26) r = zeros(size(a)); r(:) = cm(a,1);
I already tried to looking for the solution on the internet, but I couldn't find it.
Hope someone who knew how to fix it, kindly give me a lead here.
Here I also attached the file that I used for this command.
Thank you before.

4 commentaires

KSSV
KSSV le 8 Nov 2017
It is because map might be [0 0] or empty matrix.
Rik
Rik le 8 Nov 2017
I don't see an error with you code, but why do you read the image as an indexed image? Why not let imread read you image as an RGB immediately?
Stephen23
Stephen23 le 8 Nov 2017
"Why not let imread read you image as an RGB immediately?"
imread does not convert indexed images to RGB.
Arygianni Valentino
Arygianni Valentino le 8 Nov 2017
Actually I was trying to use the image processing just as mentioned in this page,
https://www.mathworks.com/help/images/ref/adapthisteq.html
But I got stuck on the ind2rgb part, so I ask some help here.
Anyway, thank you very much for your comment.
I wonder, is there any way to improve the sharpness and quality of the color image?
Since I was tried to improve the quality of my picture, but all the available solution I found was for greyscale image. Thank you before.

Connectez-vous pour commenter.

 Réponse acceptée

KSSV
KSSV le 8 Nov 2017

2 votes

Try this:
[RGB, MAP] = imread('test.jpg');
[X,map] = rgb2ind(RGB,32) ;
RGB = ind2rgb(X,map);
LAB = rgb2lab(RGB);

2 commentaires

Arygianni Valentino
Arygianni Valentino le 8 Nov 2017
Thank you very much, It works!!!
ASMA BOUDI
ASMA BOUDI le 25 Mai 2020
Merci

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by