modelo convertir color matlab colors computer-vision hsv

convertir - modelo de color hsv en matlab



Modelado de espacio de color HSV en MATLAB (1)

Puedo crear un cono 3D en MATLAB, pero ¿alguien sabe cómo pintar el cono para que recree el espacio de color HSV? Sé que hay un comando:

colormap hsv;

pero ¿cómo lo uso?

Gracias por adelantado.


Supongo que quieres crear una trama similar al cono en la siguiente imagen de Wikipedia :

Una forma de hacerlo es trazar su cono y texturizar el mapa de la superficie con una imagen del espacio de color HSV. He aquí cómo puedes hacer esto:

% First, create a 100-by-100 image to texture the cone with: H = repmat(linspace(0, 1, 100), 100, 1); % 100-by-100 hues S = repmat([linspace(0, 1, 50) ... % 100-by-100 saturations linspace(1, 0, 50)].'', 1, 100); %'' V = repmat([ones(1, 50) ... % 100-by-100 values linspace(1, 0, 50)].'', 1, 100); %'' hsvImage = cat(3, H, S, V); % Create an HSV image C = hsv2rgb(hsvImage); % Convert it to an RGB image % Next, create the conical surface coordinates: theta = linspace(0, 2*pi, 100); % Angular points X = [zeros(1, 100); ... % X coordinates cos(theta); ... zeros(1, 100)]; Y = [zeros(1, 100); ... % Y coordinates sin(theta); ... zeros(1, 100)]; Z = [2.*ones(2, 100); ... % Z coordinates zeros(1, 100)]; % Finally, plot the texture-mapped surface: surf(X, Y, Z, C, ''FaceColor'', ''texturemap'', ''EdgeColor'', ''none''); axis equal

Y deberías obtener la siguiente figura: