X-Git-Url: http://git.tomasm.cz/imago.git/blobdiff_plain/adb3df32314977f59a091897da1f826662853f87..2ce682559a6257f5822ebfc545b4f07b43a42ce7:/src/gridf2.py?ds=sidebyside diff --git a/src/gridf2.py b/src/gridf2.py index ce50be7..4f276fd 100644 --- a/src/gridf2.py +++ b/src/gridf2.py @@ -29,7 +29,6 @@ def nearest(lines, point): def nearest2(lines, point): return min(map(lambda l: dst(point, points_to_line(*l)), lines)) -size = (520, 390) def generate_models(sgrid, lh): for f in [0, 1, 2, 3, 5, 7, 8, 11, 15, 17]: @@ -68,6 +67,7 @@ def test(): import matplotlib.pyplot as pyplot import time + size = (520, 390) points = pickle.load(open('edges.pickle')) lines = pickle.load(open('lines.pickle')) @@ -134,11 +134,11 @@ def find(lines, size, l1, l2, bounds, hough, show_all, do_something, logger): l1s = random.sample(l1, 2) l1s.sort(key=lambda l: l[1]) sgrid = map(lambda l:linef.line_from_angl_dist(l, size), l1s) - middle = lambda m: ((m, 0),(m, 390)) + middle = lambda m: ((m, 0),(m, size[1])) middle = middle(gm.intersection((sgrid[0][0], sgrid[1][1]), (sgrid[0][1], sgrid[1][0]))[0]) lh = (gm.intersection(sgrid[0], middle), gm.intersection(sgrid[1], middle)) - sc1_n, gridv_n = min(map(lambda g: (score(g, l1, 210), g), generate_models(sgrid, lh))) + sc1_n, gridv_n = min(map(lambda g: (score(g, l1, size[1] / 2 + 15), g), generate_models(sgrid, lh))) if sc1_n < sc1: sc1, gridv = sc1_n, gridv_n @@ -147,11 +147,11 @@ def find(lines, size, l1, l2, bounds, hough, show_all, do_something, logger): l2s = random.sample(l2, 2) l2s.sort(key=lambda l: l[1]) sgrid = map(lambda l:linef.line_from_angl_dist(l, size), l2s) - middle = lambda m: ((0, m),(520, m)) + middle = lambda m: ((0, m),(size[0], m)) middle = middle(gm.intersection((sgrid[0][0], sgrid[1][1]), (sgrid[0][1], sgrid[1][0]))[1]) lh = (gm.intersection(sgrid[0], middle), gm.intersection(sgrid[1], middle)) - sc2_n, gridh_n = min(map(lambda g: (score(g, l2, 275), g), generate_models(sgrid, lh))) + sc2_n, gridh_n = min(map(lambda g: (score(g, l2, size[0] / 2 + 15), g), generate_models(sgrid, lh))) if sc2_n < sc2: sc2, gridh = sc2_n, gridh_n gridv, gridh = lines2grid(gridv, gridh), lines2grid(gridh, gridv)