import os import cv2 camera_names = ["front", "back", "left", "right"] # -------------------------------------------------------------------- # (shift_width, shift_height): how far away the birdview looks outside # of the calibration pattern in horizontal and vertical directions shift_w = 300 shift_h = 300 # size of the gap between the calibration pattern and the car # in horizontal and vertical directions inn_shift_w = 20 inn_shift_h = 50 # total width/height of the stitched image total_w = 800 + 2 * shift_w total_h = 960 + 2 * shift_h # four corners of the rectangular region occupied by the car # top-left (x_left, y_top), bottom-right (x_right, y_bottom) xl = shift_w + 180 + inn_shift_w xr = total_w - xl yt = shift_h + 200 + inn_shift_h yb = total_h - yt # -------------------------------------------------------------------- project_shapes = { "front": (total_w, yt), "back": (total_w, yt), "left": (total_h, xl), "right": (total_h, xl) } # pixel locations of the four points to be chosen. # you must click these pixels in the same order when running # the get_projection_map.py script project_keypoints = { "front": [(shift_w + 200, shift_h), (shift_w + 2800, shift_h), (shift_w + 200, shift_h + 800), (shift_w + 2800, shift_h + 800)], "back": [(shift_w + 80, shift_h), (shift_w + 320, shift_h), (shift_w + 80, shift_h + 200), (shift_w + 320, shift_h + 200)], "left": [(shift_w + 80, shift_h), (shift_w + 320, shift_h), (shift_w + 80, shift_h + 200), (shift_w + 320, shift_h + 200)], "right": [(shift_h + 240, shift_w), (shift_h + 560, shift_w), (shift_h + 240, shift_w + 120), (shift_h + 560, shift_w + 120)], } car_image = cv2.imread(os.path.join(os.getcwd(), "images", "car.png")) car_image = cv2.resize(car_image, (xr - xl, yb - yt))