Hello,
Ok it seems my first example is stupid. But have a look at this:
from scipy.misc import *
from pylab import *
n = 11
tab = zeros([n,n])
for i in range(n):
tab[n/2,i] = 1.
matshow(tab)
for angle in range(8):
angleDegre = angle * 180. / 8
rotated = imrotate(tab,angleDegre,interp='bilinear') /255.
matshow(rotated)
show()
knowing that imrotate is based on PIL's rotate.
There is a uneccessary translation.
No big deal: now I use: scipy.ndimage.interpolation.rotate
Bye bye.
Mathieu
Mathieu Galtier wrote:
Hello,
am I right to think that the rotate function of PIL 1.1.6 is broken?
Try this simple example:
import Image
import numpy as np
tab = np.random.rand(100).reshape(10,10)
im = Image.fromarray(tab)
assert(im == im.rotate(0))
I went a bit further and it seems that rotate translates the image of
one pixel or so.
Cheers
Mathieu
_______________________________________________
Image-SIG maillist - Image-SIG@python.org
http://mail.python.org/mailman/listinfo/image-sig