[Image-SIG] malloc error

nicholas Pye nick.pye at gmail.com
Wed Dec 31 17:39:46 CET 2008


Hello,

I have a peice of code that repeatidly draws new images (draw_image)  
and then compares the images drawn against an origional image  
(image_cost).

If I remove the PIL functions in these functions the rest of the code  
runs fine, and does not exhibit a memory leak, however when using PIL  
repeatidally in these functions I soon run out of memory. It's as if  
PIL is caching the images in memory or not cleaning up memory ... I've  
tried png, gif formats all eventually give a malloc of the period of  
the code run.

error

Python(2046) malloc: *** mmap(size=16777216) failed (error code=12)


def draw_image(popmember,path,img_tick,poly_vector_len):
     img=Image.new('RGB',(300,300),(0,0,0))
     d = aggdraw.Draw(img)
     for strand in range(len(popmember)):
          vector = split_strand(popmember[strand],"vec",poly_vector_len)
          rgb = split_strand(popmember[strand],"rgb",poly_vector_len)
          alpha =  
split_strand(popmember[strand],"alpha",poly_vector_len)
          b = aggdraw.Brush(tuple(rgb),alpha[0])
          d.polygon(vector,b)
     d.flush()
     img.save(path + str(img_tick) + '.jpg','PNG')

def image_cost(path,image2,img_tick):
  h1 = Image.open(path+image2).histogram()
  h2 = Image.open(path+str(img_tick)+'.png').histogram()
  rms = math.sqrt(reduce(operator.add,map(lambda a,b: (a-b)**2, h1,  
h2))/len(h1))
  return rms
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/image-sig/attachments/20081231/b4e58b50/attachment-0001.htm>


More information about the Image-SIG mailing list