MATLAB: Increase RGB image saturation.

imagergbsaturation

How would I go about increasing the saturation of an RGB image?

Best Answer

This is easier in HSV colorspace:
RGB = rand(100, 100, 3);
HSV = rgb2hsv(RGB);
% "20% more" saturation:
HSV(:, :, 2) = HSV(:, :, 2) * 1.2;
% or add:
% HSV(:, :, 2) = HSV(:, :, 2) + 0.2;
HSV(HSV > 1) = 1; % Limit values
RGB = hsv2rgb(HSV);