def hough_horizontal(edges, fn, hough_line_len=30, save=True, show=True): div = 9 hough_end = math.pi/2 de = 180/div hough_start = math.pi/2 - math.pi/div ds = 0 hough_gap = 0.001 hough_line_gap = 5 hough_angle = np.arange(hough_start,hough_end, hough_gap) lines = probabilistic_hough_line(edges, threshold=30, line_gap=hough_line_gap,line_length=hough_line_len, theta=hough_angle) plt.close() plt.imshow(edges, cmap=plt.cm.gray) pts = [] for line in lines: p0, p1 = line pts.append(p0) pts.append(p1) plt.plot((p0[0], p1[0]), (p0[1], p1[1]), linewidth=1, color='g') if save: feature = 'h_range' + str(int(ds))+ '_' + str(int(de)) + '_gap' + str(int(hough_line_gap)) + '_len' + str(int(hough_line_len)) fn = fn + feature plt.title('horizontal hough line' + feature ) saveplot(plt, fn) return pts, lines
def hough_all(edges, linesv, linesh, fn, save=True, show=True): plt.imshow(edges, cmap=plt.cm.gray) for line in linesv: p0, p1 = line plt.plot((p0[0], p1[0]), (p0[1], p1[1]), linewidth=1, color='r') for line in linesh: p0, p1 = line plt.plot((p0[0], p1[0]), (p0[1], p1[1]), linewidth=1, color='r') plt.title('hough lines') saveplot(plt, fn)