Python - Hacer una funcion scale para cambiar el tamaño de una imagen

   
Vista:

Hacer una funcion scale para cambiar el tamaño de una imagen

Publicado por moneyteam (14 intervenciones) el 17/01/2013 17:34:37
[PYTHON] Hola, me gustaria que alguien me ayudara a crear una funcion scale(img,h), que me permita cambiar el tamaño de una imagen, manteniendo las proporciones, usando como parametros la imagen i la altura h.
Gràcias.
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 xve

Hacer una funcion scale para cambiar el tamaño de una imagen

Publicado por xve (1229 intervenciones) el 18/01/2013 07:01:13
Buscando por internet, he encontrado este código, haber que te parece....

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# resize an image using the PIL image library
# free from:  http://www.pythonware.com/products/pil/index.htm
 
import Image
 
# open an image file (.bmp,.jpg,.png,.gif) you have in the working folder
imageFile = "zFlowers.jpg"
im1 = Image.open(imageFile)
 
# adjust width and height to your needs
width = 500
height = 420
 
# use one of these filter options to resize the image
im2 = im1.resize((width, height), Image.NEAREST)      # use nearest neighbour
im3 = im1.resize((width, height), Image.BILINEAR)     # linear interpolation in a 2x2 environment
im4 = im1.resize((width, height), Image.BICUBIC)      # cubic spline interpolation in a 4x4 environment
im5 = im1.resize((width, height), Image.ANTIALIAS)    # best down-sizing filter
 
ext = ".jpg"
im2.save("NEAREST" + ext)
im3.save("BILINEAR" + ext)
im4.save("BICUBIC" + ext)
im5.save("ANTIALIAS" + ext)


Coméntanos si te sirve, ok?
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

Hacer una funcion scale para cambiar el tamaño de una imagen

Publicado por moneyteam (14 intervenciones) el 18/01/2013 11:38:06
No me sirve , porque yo no sé la anchura a la que quiero redimensionar la imagen solo conozco la altura y a partir de la altura, la imagen tiene ser redimensionada proporcionalmente.
A ver si alguien me puede ayudar!
Gràcias.
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
Imágen de perfil de xve

Hacer una funcion scale para cambiar el tamaño de una imagen

Publicado por xve (1229 intervenciones) el 18/01/2013 17:24:26
Con este código sabrás la anchura y altura de una imagen:

1
2
3
4
5
6
7
8
9
from PIL import Image
 
image_file = "french_flag.bmp"
 
#abrimos la imagen
img = Image.open(image_file)
 
# cogemos la anchura y altura
width, height = img.size

Espero que ahora te sirva... coméntanos, ok?
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

Hacer una funcion scale para cambiar el tamaño de una imagen

Publicado por moneyteam (14 intervenciones) el 18/01/2013 19:17:21
No, a ver lo que yo tengo es una imagen con un tamaño cualquiera, pues lo que quiero es una funcion para que tenga la misma altura que otra imagen que ya tengo guardada pero que la anchura no se mantenga proporcionalmente.
Es decir quieroque la altura de una imagen cualquiera sea igual a la altura de mi patron pero que la anchura de la imagen sea proporcionalmente encogida usando el mismo factor de proporcion que ha encogido la altura.
Es decir si la altura se ha dividido por tres para que tenga la misma que el patron la anchura tambien!
A ver si alguien sabe hacerlo.
Gràcias.
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
Imágen de perfil de xve

Hacer una funcion scale para cambiar el tamaño de una imagen

Publicado por xve (1229 intervenciones) el 19/01/2013 08:48:59
Porque no lo explicas todo de golpe?
Vas pidiendo cosas, pero cada vez añades mas información.

Bien, para calculas la proporción de la imagen, es simplemente utilizando una "regla de tres"

La imagen original tiene una altura de 100

La nueva imagen tiene un tamaño de 200x80 y tiene que tener una altura de 100 y la anchura proporcional, verdad?
200=100
80=x

80x100/200=40 anchura de la nueva imagen para que sea proporcional

Esto es muy básico y es de matemáticas...
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