Foros del Web » Programando para Internet » PHP »

Cambiar Color

Estas en el tema de Cambiar Color en el foro de PHP en Foros del Web. Hola, quiero transformar unas imagenes que tengo en color a blanco y negro, y no encuentro informacion de como realizar la transformacion de color en ...
  #1 (permalink)  
Antiguo 25/04/2005, 05:17
 
Fecha de Ingreso: abril-2005
Mensajes: 93
Antigüedad: 12 años, 7 meses
Puntos: 0
Cambiar Color

Hola, quiero transformar unas imagenes que tengo en color a blanco y negro, y no encuentro informacion de como realizar la transformacion de color en php, he buscado de como utilizar la libreria GD me podrias decir algun enlace de como realizarlo o si teneis codigo para como hacerlo. Gracias!!!!!!!1
  #2 (permalink)  
Antiguo 25/04/2005, 09:10
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
No se bien que necesitas, pero has intentado con imagecopymergegray?
http://ar2.php.net/manual/pt_BR/func...ymergegray.php
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #3 (permalink)  
Antiguo 25/04/2005, 10:03
 
Fecha de Ingreso: abril-2005
Mensajes: 93
Antigüedad: 12 años, 7 meses
Puntos: 0
Cambiar Color

Hola, lo que tengo que hacer es tengo unas fotos en color y lo que tengo que hacer es transformarlas en blanco y negro. Lo primero que he de hacer es obtener todos los piexeles de la imagen y hacer una comparacion y transformarlos a blanco o a negro dependiendo de la imagen. Tengo que transformar la imagen de una vaca, las manchas en negro y el resto del cuerpo en blanco, eso es lo que tengo que hacer. Gracias
  #4 (permalink)  
Antiguo 25/04/2005, 10:04
 
Fecha de Ingreso: abril-2005
Mensajes: 93
Antigüedad: 12 años, 7 meses
Puntos: 0
hola lo que tengo que hacer es lo siguiente. Tengo unas imagenes de unas vacas en color, y lo que tengo que hacer es transformar estas imagenes a blanco y negro, dejando las manchas de la vaca en negro y el resto del cuerpo en blanco. la manera que habia pensado en hacerlo es obtener primero el color de todos los pixeles de la imagen y despues transformarlos a blanco o a negro dependiendo de lo que me interese. Gracias!!!
  #5 (permalink)  
Antiguo 25/04/2005, 10:23
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Eso tiene que ser dinamico? no podes editarlo con photoshop o algun soft de su estilo?
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #6 (permalink)  
Antiguo 25/04/2005, 10:44
 
Fecha de Ingreso: abril-2005
Mensajes: 93
Antigüedad: 12 años, 7 meses
Puntos: 0
Si tiene que ser dinamico ya que con flash creo una galeria de imagenes y ahora tengo que realizar un script en php que me transforme esas imagenes de color a blanco y negro. Y las imagenes nunca seran fijas.
  #7 (permalink)  
Antiguo 25/04/2005, 10:51
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Con imagecopymergegray las pasas a blanco y negro, pero si queres pasar determinadas partes, de las cuales no tenes siquiera definidas las coordenadas, ya para eso, no se si haya alguna función que te diga x e y segun una gama...o parecido.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #8 (permalink)  
Antiguo 25/04/2005, 11:03
 
Fecha de Ingreso: abril-2005
Mensajes: 93
Antigüedad: 12 años, 7 meses
Puntos: 0
Imagenes

Hola, quiero obtener el color pixel a pixel de una imagen. Se puede realizar en php?. Sabeis alguna direccion de algun tutorial o el codigo para poder realizar este script. Gracias
  #9 (permalink)  
Antiguo 25/04/2005, 11:08
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Sería mas comprencible para los usuarios si continuaras en el post anterior.;)
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #10 (permalink)  
Antiguo 25/04/2005, 11:35
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por nicolaspar
Sería mas comprencible para los usuarios si continuaras en el post anterior.;)
Ya están unidos ambos temas ...

Un saludo,
  #11 (permalink)  
Antiguo 25/04/2005, 11:45
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Tienes dos opciones al parecer ..

Código PHP:
function ConvertGreyscale($image){ 
# this file outputs a grey version of specified image 

 
$total ImageColorsTotal($image); 
 for( 
$i=0$i<$total$i++){ 
    
$old ImageColorsForIndex($image$i); 
    
    
#trying to keep proper saturation when converting 
    
$commongrey = (int)(($old[red] + $old[green] + $old[blue]) / 3); 

    
ImageColorSet($image$i$commongrey$commongrey$commongrey); 
 } 

$image será tu recurso de imagen .. es decir .. lo que te resulta de hacer un imagecreatefrom....() o similar. Ahí tienes la función ImageColorsForIndex() que es la que andabas buscando junto con la otra ImageColorSet() para dar el nuevo color .. y otros cálculos con la paleta de colores ...

Y un ejemplo completo ...
Código PHP:
<? 
// $image aquí será tu "nose.jpg" ...
$image_id imageCreateFromJPEG($image); 
for(
$a=0;$a<imagecolorstotal ($image_id);$a++) 

$color ImageColorsForIndex($image_id,$i); 
$R=.299 * ($color['red'])+ .587 * ($color['green'])+ .114 * ($color['blue']); 
$G=.299 * ($color['red'])+ .587 * ($color['green'])+ .114 * ($color['blue']); 
$B=.299 * ($color['red'])+ .587 * ($color['green'])+ .114 * ($color['blue']); 
ImageColorSet($image_id$a$R$G$B); 

imageJPEG($image_id,"$image"); 
?>
(en este ejemplo .. genera el archivo nuevo sobreescribiendo el mismo .. cambia el nombre en imageJPEG() si necesitas crear la versión B&W de un original dado ...)


Extraido de .. (c) sus respectivos autores ...
http://www.webmasterworld.com/forum88/884.htm

Un saludo,
  #12 (permalink)  
Antiguo 25/04/2005, 12:32
 
Fecha de Ingreso: abril-2005
Mensajes: 93
Antigüedad: 12 años, 7 meses
Puntos: 0
Muchas Gracias, mas tarde lo probare haber si me funciona. Muchas Gracias!!!!!!! Ya te dire algo haber si me sirve!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:45.