## load data, you only have to do it once DATA_PATH = r'C:\Users\storm\Documents\3d-object-detection-for-autonomous-vehicles\train_data' + os.sep train = pd.read_csv(DATA_PATH + 'train.csv') sample_submission = pd.read_csv(DATA_PATH + 'sample_submission.csv') lyftdata = LyftDataset(data_path=DATA_PATH, json_path=DATA_PATH + os.sep + 'data') ## show point cloud interactively cat_token = lyftdata.category[0]['token'] train = pd.read_csv(DATA_PATH + os.sep + 'train.csv') token0 = train.iloc[0]['Id'] my_sample = lyftdata.get('sample', token0) lyftdata.render_sample_3d_interactive(my_sample['token'], render_sample=False) ## sensor information sensor = 'CAM_FRONT' cam_front = lyftdata.get('sample_data', my_sample['data'][sensor]) img = Image.open(DATA_PATH + cam_front['filename']) lyftdata.render_sample_data(cam_front['token'], with_anns=False) ## look at the LIDAR data associated with my_sample lidar_top = lyftdata.get( 'sample_data', my_sample['data']['LIDAR_TOP']) # selecting LIDAR_TOP out of all LIDARs pc = LidarPointCloud.from_file(Path(DATA_PATH + lidar_top['filename']))
# Sample sample = lyft_data.get('sample', first_sample_token) # print("sample keys are, ", sample.keys()) print('list sample in the first sample token') if button.LIST_SAMPLE: lyft_data.list_sample(sample['token']) if button.REND_PC_IMG: lyft_data.render_pointcloud_in_image(sample_token=sample["token"], dot_size=1, pointsensor_channel='LIDAR_TOP', camera_channel='CAM_FRONT', out_path="./data/03") # Sample lidar in 3d if button.REND_LIDAR_3D: lyft_data.render_sample_3d_interactive(sample['token']) # Sample data sample_data = sample['data'] # print("sample data keys are, ", sample_data.keys()) # One sensor in sample data # lidar: type 1 lidar_top_channel = 'LIDAR_TOP' lidar_data = sample_data[lidar_top_channel] lidar_token = lyft_data.get('sample_data', lidar_data) # print("lidar data keys: \n", lidar_data.keys()) # start = time.time() # lyft_data.render_sample_data(lidar_data['token'], out_path=cfg.data.image) # print("lidar render time: {:.3f}".format(time.time() - start)) data_path, boxes, camera_intrinsic = lyft_data.get_sample_data(