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 Commenti

KSSV
KSSV il 8 Nov 2017
It is because map might be [0 0] or empty matrix.
Rik
Rik il 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 il 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 il 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.

Accedi per commentare.

 Risposta accettata

KSSV
KSSV il 8 Nov 2017

2 voti

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

2 Commenti

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

Accedi per commentare.

Più risposte (0)

Categorie

Community Treasure Hunt

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

Start Hunting!

Translated by