With out knowing more about how you are making/displaying the images in TK I can't be totaly sure about this, but I belive that images in TK are not actualy freed when you undef 'them', by them I mean the variable that holds the image object. Acording to the Tk::Image docs you should use
to delete an image from the image manager. If your not using Tk:Image or a derivative you should check the documents for it to see how it recomends freeing images.
In general Tk keeps a lot of internal refrences to data that keeps perl from GCing them. Most of the time this is important and nessisary, but it means you need to be more carefull that they get cleaned up when you are done with them.