def get_P_rect(self, scene_data, calibs, get_2cam_dict=True):
     # calib_file = scene_data['dir'].parent/'calib_cam_to_cam.txt'
     calib_file = scene_data['dir']/'calib.txt'
     if get_2cam_dict:
         P_rect = {}
         for cid in ['00', '01', '02', '03']:
             P_rect[cid], _ = self.read_odo_calib_file(calib_file, cid=self.cid_to_num[cid])
             if calibs['rescale']:
                 P_rect[cid] = scale_P(P_rect[cid], calibs['zoom_xy'][0], calibs['zoom_xy'][1])
         return P_rect
     else:
         P_rect, _ = self.read_odo_calib_file(calib_file, cid=self.cid_to_num[cid])
         if calibs['rescale']:
             P_rect = scale_P(P_rect, calibs['zoom_xy'][0], calibs['zoom_xy'][1])
     return P_rect
예제 #2
0
    def get_P_rect(self, calib_file, calibs):
        # width, height = calib_data['resolution']
        # cam_info.distortion_model = 'plumb_bob'
        # D = np.array(calib_data['distortion_coefficients'])
        # cam_info.R = [1, 0, 0, 0, 1, 0, 0, 0, 1]
        calib_data = loadConfig(calib_file)
        fu, fv, cu, cv = (
            calib_data["Camera.fx"],
            calib_data["Camera.fy"],
            calib_data["Camera.cx"],
            calib_data["Camera.cy"],
        )
        K = np.array([[fu, 0, cu], [0, fv, cv], [0, 0, 1]])

        P_rect_ori = np.concatenate((K, [[0], [0], [0]]), axis=1)
        # rescale the camera matrix

        if calibs["rescale"]:
            P_rect_scale = scale_P(
                P_rect_ori, calibs["zoom_xy"][0], calibs["zoom_xy"][1]
            )
        else:
            P_rect_scale = P_rect_ori

        return P_rect_ori, P_rect_scale
 def get_P_rect(self, scene_data, calibs, get_2cam_dict=True):
     # calib_file = scene_data['dir'].parent/'calib_cam_to_cam.txt'
     calib_file = scene_data["dir"] / "calib.txt"
     if get_2cam_dict:
         P_rect = {}
         for cid in ["00", "01", "02", "03"]:
             P_rect[cid], _ = read_odo_calib_file(
                 calib_file, cid=self.cid_to_num[cid]
             )
             if calibs["rescale"]:
                 P_rect[cid] = scale_P(
                     P_rect[cid], calibs["zoom_xy"][0], calibs["zoom_xy"][1]
                 )
         return P_rect
     else:
         P_rect, _ = read_odo_calib_file(calib_file, cid=self.cid_to_num[cid])
         if calibs["rescale"]:
             P_rect = scale_P(P_rect, calibs["zoom_xy"][0], calibs["zoom_xy"][1])
     return P_rect
    def get_P_rect(self, calib_file, calibs):
        # calib_file = scene_data['dir'].parent/'calib_cam_to_cam.txt'

        calib_data = loadConfig(calib_file)
        height, width, K, D = load_intrinsics(calib_data)
        transformation_base_camera = load_extrinsics(calib_data)
        P_rect = np.concatenate((K, [[0], [0], [0]]), axis=1)
        if calibs["rescale"]:
            P_rect = scale_P(P_rect, calibs["zoom_xy"][0],
                             calibs["zoom_xy"][1])
        return P_rect, transformation_base_camera