[Python-es] Recorte circular de una imagen
gerardo Juarez
gerardojuarez en buyteknet.info
Mar Ago 30 01:25:44 CEST 2011
Viendo el código de ejemplo, no será que el modo de la imagen no permite
que se guarde la información del canal alfa?
http://stackoverflow.com/questions/1233772/pil-does-not-save-transparency
gerardo Juarez wrote:
> Creo que necesitas usar capas ("layers"). Un formato como PNG, con
> fondo transparente y tu imagen circular encima.
> He usado muy poco PIL, pero me parece que debe de poder hacerse. Si
> tienes restricciones de formato, primero habría que hacer el PNG y
> luego convertir al formato resultante, pero no todos los formatos
> soportan un fondo transparente.
>
> saludos
> Gerardo
>
> Victor Ramirez wrote:
>>
>>
>> El 27 de agosto de 2011 23:59, José Gómez Castaño <jgcasta en gmail.com
>> <mailto:jgcasta en gmail.com>> escribió:
>>
>> Hola
>>
>> Estoy intentando recortar una zona circular central de una imagen
>> y guardarla en otra, para luego procesar la nueva imagen sin la
>> información de la zona externa. Con el código de abajo consigo
>> hacer el recorte y crear la nueva imagen, pero cuando la voy a
>> tratar, es como si no hubiera desaparecido la zona exterior.
>>
>> Sabéis alguna forma de recortar una imagen con forma circular?
>>
>> from PIL import Image, ImageOps, ImageDraw
>>
>> size = (512, 475)
>> mask = Image.new('L', size, 0)
>> draw = ImageDraw.Draw(mask)
>> draw.ellipse((0, 0) + size, fill=255)
>> im = Image.open('src.jpg')
>> output = ImageOps.fit(im, mask.size,centering=(0.5, 0.5))
>> output.putalpha(mask)
>> output.save('salida.png')
>>
>>
>>
>> Gracias y un saludo
>>
>>
>> Hola,
>> para procesar una parte de una imagen igual te convendría tratar
>> solamente esa parte sin tener que recortarla y guardarla, por
>> ejemplo, con la librería de opencv puedes usar la función ROI (region
>> of interest), la cual selecciona la región que te interese para luego
>> tratarla.
>> Espero que te ayude un poco,
>> Un saludo !!
>>
>>
>>
>> -- José Gómez Castaño
>> www.meridi.es <http://www.meridi.es/>
>> www.astroide.es <http://www.astroide.es/>
>> http://twitter.com/jgcasta
>>
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org <mailto:Python-es en python.org>
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>>
>>
>>
>> --
>> http://virako.wordpress.com
>> http://tablerogo.wordpress.com
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
Más información sobre la lista de distribución Python-es