MATLAB Answers

0

Change Fractal Colors to nuances of red

Asked by Silvia Bernardi on 16 Aug 2019
Latest activity Commented on by Adam Danz
on 19 Aug 2019
Hello,
I have a series of fractals in RGB, such as the one uploaded here, and I would like to change their colors to only nuances of red, black and white. So that the structure of the image would remain in white or black and the filling will be only red. image0006v1.bmpAny suggestions would be welcome.

  2 Comments

Possibly rgb2ind() followed by using a different colormap() with ind2rgb()

Sign in to comment.

1 Answer

Answer by Subhadeep Koley on 19 Aug 2019
 Accepted Answer

Building a custom colormap might solve your issue. Similar question can be found here.
Tweaking the "hex" vector as shown below could help solve the issue.
a=imread('image0006v1.bmp');
%modify the sample points inside vec and put the hex code for as many different shades of red you want
vec = [ 100; 83; 68; 44; 30; 15; 0];
hex = ['#FF6347';'#DC143C';'#FF0000';'#B22222';'#B22222';'#8B0000';'#800000'];
raw = sscanf(hex','#%2x%2x%2x',[3,size(hex,1)]).' / 255;
%N =100;
N = size(get(gcf,'colormap'),1) % size of the current colormap
map = interp1(vec,raw,linspace(100,0,N),'spline');
rgbImage = ind2rgb(a, map);
imshow(rgbImage);

  1 Comment

The RGB vectors may be easier to work with. For example, here's a colormap that fades from black to red.
colorMap = [linspace(0,1,256)', zeros(256,2)]
colormap(colorMap);

Sign in to comment.