예제 #1
0
 def __call__(self,speckle_size=3,filter=0):
     from gamera.core import Point, Image
     image=self.image_copy()
     if speckle_size > 0:
         image.despeckle(speckle_size)
     if filter == 0:
         filtered = image.rank(5)
     elif filter == 1:
         origin = Point(1,1)
         se = Image(Point(0,0),Point(2,2),ONEBIT)
         se.fill(1)
         filtered = image.binary_dilation(se,origin)
         filtered = filtered.binary_erosion(se,origin)
     else:
         image.invert()
         image.despeckle(5)
         image.invert()
         filtered = image
         
     return filtered