Exemplo n.º 1
0
def pipeline(img):
    chessboard_images = glob.glob('../data/main/camera_cal/*.jpg')
    nx = 9  # chessboard corners in x direction
    ny = 6  # chessboard corners in y direction
    calibration_result = calibrate_camera(chessboard_images, (nx, ny))
    mtx = calibration_result["mtx"]
    dist = calibration_result["dist"]

    undistorted_img = cv2.undistort(img, mtx, dist, None, mtx)
    binary = find_line_edges(undistorted_img)
    line_edges = np.dstack((binary, binary, binary)) * 255
    return line_edges
def pipeline(img):
    out = np.array(img, copy=True)

    chessboard_images = glob.glob('../data/main/camera_cal/*.jpg')
    nx = 9  # chessboard corners in x direction
    ny = 6  # chessboard corners in y direction
    calibration_result = calibrate_camera(chessboard_images, (nx, ny))
    mtx = calibration_result["mtx"]
    dist = calibration_result["dist"]

    undistorted_img = cv2.undistort(img, mtx, dist, None, mtx)
    binary = find_line_edges(undistorted_img)
    l_line, r_line = hough_transformation(binary)

    cv2.line(out, (l_line.get_x1(), l_line.get_y1()),
             (l_line.get_x2(), l_line.get_y2()), (250, 0, 0), 10)
    cv2.line(out, (r_line.get_x1(), r_line.get_y1()),
             (r_line.get_x2(), r_line.get_y2()), (250, 0, 0), 10)
    return out
Exemplo n.º 3
0
import matplotlib.pyplot as plt
from image_processing.calibration import calibrate_camera
from image_processing.image_processing import find_line_edges
from image_processing.transform import perspective_transform
from image_processing.sliding_window import fit_polynomial

chessboard_images = glob.glob('../data/main/camera_cal/*.jpg')
nx = 9  # chessboard corners in x direction
ny = 6  # chessboard corners in y direction
calibration_result = calibrate_camera(chessboard_images, (nx, ny))
mtx = calibration_result["mtx"]
dist = calibration_result["dist"]
img = cv2.imread('../data/main/test_images/straight_lines1.jpg')
undistorted_img = cv2.undistort(img, mtx, dist, None, mtx)
img_rgb = cv2.cvtColor(undistorted_img, cv2.COLOR_BGR2RGB)
binary = find_line_edges(undistorted_img)
lines_img = np.dstack((binary, binary, binary)) * 255

warped, M, Minv, src, dst = perspective_transform(binary)

left_fitx, right_fitx, ploty, out_img = fit_polynomial(warped)

f, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, figsize=(24, 9))

ax1.imshow(img_rgb)
ax1.set_title('Original Image', fontsize=50)

ax2.imshow(lines_img)
ax2.set_title('Binary', fontsize=50)

ax3.plot(left_fitx, ploty, color='yellow')