Adición de un marco negro a un uso de pitón imagen

Tobitor:

Tengo un conjunto de datos con un par de imágenes con diferentes tamaños. Para entrenar a mi red neuronal que quería cambiar el tamaño de estas imágenes a un tamaño común añadiendo un marco negro alrededor de todos mis imágenes. Use el siguiente código:

from PIL import Image 
import numpy as np 


old_im = Image.open('C:/Users/tobis/OneDrive/Desktop/Masterarbeit/data/2017-IWT4S-HDR_LP-dataset/crop_h1/I00002.png')
old_size = old_im.size
print(old_size)

new_size = (800, 800)
print(new_size)
new_im = Image.new("RGB", new_size)   ## luckily, this is already black!
new_im.paste(old_im, ((new_size[0]-old_size[0])/2,
                      (new_size[1]-old_size[1])/2))

Y consiguió este error:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-37-3363f60dba3b> in <module>
     11 new_im = Image.new("RGB", new_size)   ## luckily, this is already black!
     12 new_im.paste(old_im, ((new_size[0]-old_size[0])/2,
---> 13                       (new_size[1]-old_size[1])/2))

~\.conda\envs\python36\lib\site-packages\PIL\Image.py in paste(self, im, box, mask)
   1466             self.im.paste(im, box, mask.im)
   1467         else:
-> 1468             self.im.paste(im, box)
   1469 
   1470     def alpha_composite(self, im, dest=(0, 0), source=(0, 0)):

TypeError: integer argument expected, got float

No sé por qué tengo este error. Revisé los tipos de entradas de mi variables y son todos los números enteros y no hay flotadores ... También estoy sorprendido de que la primera sustracción parece estar bien y el segundo se eleva un problema ...

¿Puede alguien ayudarme?

segunda Guerra Mundial :

La división está produciendo un número de coma flotante, pero el método requiere enteros.

new_size = (800, 800)
print(new_size)
new_im = Image.new("RGB", new_size)   ## luckily, this is already black!
x = int((new_size[0]-old_size[0])/2)
y = int((new_size[1]-old_size[1])/2))
new_im.paste(old_im, (x,y))

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=384592&siteId=1
Recomendado
Clasificación