From 49b35c093987f7864b5c70c8298b7b950baefaea Mon Sep 17 00:00:00 2001 From: Tomas Musil Date: Sat, 12 Jul 2014 07:43:31 +0200 Subject: [PATCH] fix bug in components filter --- src/filters.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/filters.py b/src/filters.py index a879ee9..f24a822 100644 --- a/src/filters.py +++ b/src/filters.py @@ -5,6 +5,7 @@ preserved. """ from PIL import Image, ImageFilter +import numpy as np import pcf @@ -49,7 +50,6 @@ def peaks(image): image_l = image.load() new_image = Image.new('L', image.size) new_image_l = new_image.load() - for x in range(2, image.size[0] - 2): for y in range(2, image.size[1] - 2): pix = (sum([sum([ @@ -83,8 +83,7 @@ def components(image, diameter): # TODO comment # TODO refactor image_l = image.load() - new_image = Image.new('L', image.size) - new_image_l = new_image.load() + new_image_l = np.zeros(image.size, dtype=np.int) components = [None] comp_counter = 1 @@ -107,7 +106,7 @@ def components(image, diameter): s.remove(0) c = s.pop() new_image_l[x, y] = c - components[c].add((x,y)) + components[c].add((x, y)) else: s.remove(0) c1, c2 = s.pop(), s.pop() @@ -136,7 +135,11 @@ def components(image, diameter): s.remove(0) c = s.pop() new_image_l[x, y] = c - components[c].add((x,y)) + try: + components[c].add((x, y)) + except AttributeError: + print s, c + raise AttributeError else: s.remove(0) c1 = s.pop() -- 2.4.2