X-Git-Url: http://git.tomasm.cz/imago.git/blobdiff_plain/fb4d31c62744561af4bc3941d1cb9da430c5c64a..f0548db6acfd9616ddafa443e45103fc6655e0e4:/gridf.py?ds=inline diff --git a/gridf.py b/gridf.py index 03e3014..3bb7c54 100644 --- a/gridf.py +++ b/gridf.py @@ -30,7 +30,7 @@ def job_4(x, y, w, z, im_l, v1, v2, h1, h2, dv, dh, size): h2 = (h2[0] + z * dh, h2[1] + z) return (distance(im_l, get_grid([v1, v2], [h1, h2], size), size)) -def find(lines, size, l1, l2, bounds, hough, do_something, im_h): +def find(lines, size, l1, l2, bounds, hough, show_all, do_something): l1 = line_from_angl_dist(l1, size) l2 = line_from_angl_dist(l2, size) v1 = V(*l1[0]) - V(*l1[1]) @@ -56,8 +56,8 @@ def find(lines, size, l1, l2, bounds, hough, do_something, im_h): #GaussianBlur is undocumented class, may not work in future versions of PIL im_l_s = im_l.tostring() - import time - start = time.time() + #import time + #start = time.time() f_dist = partial(job_4, im_l=im_l_s, v1=v1, v2=v2, h1=h1, h2=h2, dv=delta_v, dh=delta_h, size=size) @@ -73,7 +73,7 @@ def find(lines, size, l1, l2, bounds, hough, do_something, im_h): grid_lines = [[l2ad(l, size) for l in grid[0]], [l2ad(l, size) for l in grid[1]]] - print time.time() - start + #print time.time() - start ### Show error surface # @@ -82,20 +82,22 @@ def find(lines, size, l1, l2, bounds, hough, do_something, im_h): # delta_v, delta_h, x_v, y_v, x_h, y_h, size) ### + if show_all: + ### Show grid over lines # - im_t = Image.new('RGB', im_l.size, None) - im_t_l = im_t.load() - im_l_l = im_l.load() - for x in xrange(im_t.size[0]): - for y in xrange(im_t.size[1]): - im_t_l[x, y] = (im_l_l[x, y], 0, 0) - - im_t_d = ImageDraw.Draw(im_t) - for l in grid[0] + grid[1]: - im_t_d.line(l, width=1, fill=(0, 255, 0)) - - do_something(im_t, "lines and grid") + im_t = Image.new('RGB', im_l.size, None) + im_t_l = im_t.load() + im_l_l = im_l.load() + for x in xrange(im_t.size[0]): + for y in xrange(im_t.size[1]): + im_t_l[x, y] = (im_l_l[x, y], 0, 0) + + im_t_d = ImageDraw.Draw(im_t) + for l in grid[0] + grid[1]: + im_t_d.line(l, width=1, fill=(0, 255, 0)) + + do_something(im_t, "lines and grid") ### return grid, grid_lines