## How do I use a .lut file (or the equivalent in MATLAB) to reference pixels in a grayscale image and assign them new values for pseudocoloring based on the LUT?

### Elliott Gorman (view profile)

on 9 Jul 2018
Latest activity Commented on by Anton Semechko

on 10 Jul 2018

### Anton Semechko (view profile)

Hey, everyone. I'm creating a program to analyze grayscale images into pseudocolored images. Currently, my program works; however, it's fairly slow. The program currently iterates through each pixel and assigns it a new value, based on what I selected through tons of ifs and elseifs. As you could imagine, it does take quite some time to run (about a minute). I want to rewrite this code in order to utilize a LookUp Table for the R, G, and B layers as the values I assign them now are essentially constants, thus an LUT would work great. I'm just struggling trying to actually utilize it in matlab.
Really, what I need to know how to do is have a LookUp Table with x-values of 0-255, and corresponding y-values that will eventually become the multiplier for the original pixel (after some analysis of course), and actually utilize this table to change pixel values instead of iterating through like the program does now. Is it possible to use an LUT in this way with MATLAB?

R2015a

### Anton Semechko (view profile)

on 10 Jul 2018

There is a Matlab function that maps gray values to RGB values using custom made look-up-tables. Its called 'ind2rgb': https://www.mathworks.com/help/matlab/ref/ind2rgb.html

Anton Semechko

### Anton Semechko (view profile)

on 10 Jul 2018
In that case you would have to modify your gray-scale (i.e., index) image. For example, suppose that the range of intensities in your image (im) varies between 0 and 64, and size of the LUT is 256-by-3. To ensure that 0 maps to LUT(1,:) and 64 to LUT(256,:), rescale intensities in im to the range [0 255]. For this particular example, this would be done as follows:
im=unit8((255/64)*double(im));
Elliott Gorman

### Elliott Gorman (view profile)

on 10 Jul 2018
Ah, I was thinking about that but was weary about changing the values of the pixels beforehand as they are very important. I got that cleared up and a idea to fix that though. Thanks for all of your help!
Anton Semechko

### Anton Semechko (view profile)

on 10 Jul 2018
You are welcome, Elliott