correct colors on linux (camera)
[imago.git] / filters.py
index 991ce75..a5d00e6 100644 (file)
@@ -1,11 +1,6 @@
 from PIL import Image
 
-from commons import clear
-
 def edge_detection(image):
-    clear()
-    print "edge detection"
-
     image_l = image.load()
     new_image = Image.new('L', image.size)
     new_image_l = new_image.load()
@@ -25,9 +20,6 @@ def edge_detection(image):
     return new_image
 
 def peaks(image):
-    clear()
-    print "peak extraction"
-
     image_l = image.load()
     new_image = Image.new('L', image.size)
     new_image_l = new_image.load()
@@ -47,9 +39,6 @@ def peaks(image):
     return new_image
 
 def high_pass(image, height):
-    clear()
-    print "high pass filter"
-
     image_l = image.load()
     new_image = Image.new('L', image.size)
     new_image_l = new_image.load()
@@ -64,9 +53,6 @@ def high_pass(image, height):
     return new_image
 
 def components(image):
-    clear()
-    print "components center filter"
-
     image_l = image.load()
     new_image = Image.new('L', image.size)
     new_image_l = new_image.load()
@@ -116,4 +102,34 @@ def components(image):
         new_image_l[int(round(float(x_c)/c)), int(round(float(y_c)/c))] = 255
 
 
-    return new_image
\ No newline at end of file
+    return new_image
+
+def half_centers(image):
+    image_l = image.load()
+    new_image = Image.new('L', image.size)
+    new_image_l = new_image.load()
+    
+    x_s = 0
+    y_s = 0
+    n = 0
+    for x in range(0, image.size[0] / 2):
+        for y in range(0, image.size[1]):
+            if image_l[x, y] > 127:
+                x_s += x
+                y_s += y
+                n += 1
+    new_image_l[x_s / n, y_s / n] = 255
+
+    x_s = 0
+    y_s = 0
+    n = 0
+    for x in range(image.size[0] / 2, image.size[0]):
+        for y in range(0, image.size[1]):
+            if image_l[x, y] > 127:
+                x_s += x
+                y_s += y
+                n += 1
+    new_image_l[x_s / n, y_s / n] = 255
+
+    return new_image
+