Пример #1
0
def process_image(image):

    lanes_found = True
    leftx_pixel_pos = []
    lefty_pixel_pos = []
    rightx_pixel_pos = []
    righty_pixel_pos = []

    frame = Frame(l_line, r_line, mtx, dist)

    # call method to return lane line pixels
    lanes_found, leftx_pixel_pos, lefty_pixel_pos, \
    rightx_pixel_pos, righty_pixel_pos = frame.get_raw_line_pixels(image)
    l_line.set_ploty(frame.ploty)
    r_line.set_ploty(frame.ploty)

    # if a lane was found....
    if lanes_found:
        left_fit = l_line.fit_poly_lines(leftx_pixel_pos, lefty_pixel_pos)
        right_fit = r_line.fit_poly_lines(rightx_pixel_pos, righty_pixel_pos)
        left_fitx = l_line.get_line_poly_pix(left_fit)
        right_fitx = r_line.get_line_poly_pix(right_fit)

        l_line.addline(left_fit, left_fitx)
        r_line.addline(right_fit, right_fitx)
        # frame.visualise_poly()
    else:
        print('no lines found')

    image_with_marking = frame.create_output_drive_view(frame.image_undistorted, \
                                                        l_line, r_line, frame.Minv)

    return image_with_marking