Matlab - Convertir imágenes en Matlab

 
Vista:

Convertir imágenes en Matlab

Publicado por Jhon Elkin (3 intervenciones) el 19/02/2015 02:50:57
Buen dia comunidad, deseo que me hagan el favor y me colaboren con esta duda:

Deseo coger una imagen en Matlab y convertirla así:

RGB->HSV
RGB->CMYK
RGB->YIQ
RGB->YQV

La condición que me pusieron es que sea a pedal, osea que no utilizar las funciones predefinidas que tiene Matlab. ¿Eso si es posible? y ¿Como seria el código?, y si no es posible como seria el código de esas cuatro conversiones. De ante mano les agradezco.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JESUS
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Convertir imágenes en Matlab

Publicado por JESUS (1818 intervenciones) el 26/04/2015 05:07:45
Imagen=imread(‘localización del fichero’)
R = Imagen(:,:,1);
G = Imagen(:,:,2);
B = Imagen(:,:,3);
Una vez se tenga esto , se tiene R, G , B con un número de filas y columnas determinado por el tamaño de la imagen a cada pixel se le hace el procedimiento de acuerdo al tipo de coversión , ejemplo:
la primera RGB -> CMY
C = 1 - ( R ./ 255 );
M = 1 - ( G ./ 255 );
Y = 1 - ( B. / 255 );

y luego se pasa de CMY -> CMYK (aplicar algoritmo para cada pixel)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
k=1;
if  C < k
K = C;
end
if  M < k )
K = M;
end
if  Y < k
K = Y;
end
if k==1
C=0
M=0;
Y=0;
else
C = ( C - k ) / ( 1 - k )
    M = ( M - k ) / ( 1 - k )
    Y = ( Y - k ) / ( 1 - k )
 
if  k == 1
    C = 0
    M = 0
    Y = 0
else
    C = ( C - k ) / ( 1 - k );
    M = ( M - k ) / ( 1 - k );
    Y = ( Y - k ) / ( 1 - k );
end
 
%los otros son procedimientos similares
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar