Render rgbd images from ARKitScenes dataset.
(
hypersim_volume_id: int,
hypersim_scene_id: int,
hypersim_image_subsample: int = 4,
hypersim_num_images_per_item: int = None,
hypersim_tonemap: bool = True,
hypersim_tonemap_gamma: float = 1. / 2.2,
hypersim_tonemap_percentile: float = 90,
hypersim_tonemap_percentile_target: float = 0.7,
hypersim_tonemap_scale: float = None,
hypersim_num_hold_out_items: int = 0,
hypersim_valid_only: bool = False,
hypersim_dataset_root_dir: str = 'datasets/hypersim',
hypersim_camera_csv_filename: str = 'datasets/hypersim/metadata_camera_parameters.csv',
**kwargs,
)
| 1539 | |
| 1540 | |
| 1541 | def render_hypersim( |
| 1542 | hypersim_volume_id: int, |
| 1543 | hypersim_scene_id: int, |
| 1544 | hypersim_image_subsample: int = 4, |
| 1545 | hypersim_num_images_per_item: int = None, |
| 1546 | hypersim_tonemap: bool = True, |
| 1547 | hypersim_tonemap_gamma: float = 1. / 2.2, |
| 1548 | hypersim_tonemap_percentile: float = 90, |
| 1549 | hypersim_tonemap_percentile_target: float = 0.7, |
| 1550 | hypersim_tonemap_scale: float = None, |
| 1551 | hypersim_num_hold_out_items: int = 0, |
| 1552 | hypersim_valid_only: bool = False, |
| 1553 | hypersim_dataset_root_dir: str = 'datasets/hypersim', |
| 1554 | hypersim_camera_csv_filename: str = 'datasets/hypersim/metadata_camera_parameters.csv', |
| 1555 | **kwargs, |
| 1556 | ): |
| 1557 | """Render rgbd images from ARKitScenes dataset.""" |
| 1558 | |
| 1559 | scene_dir, scene_name = hypersim_dataset.get_hypersim_scene_info( |
| 1560 | volume_id=hypersim_volume_id, |
| 1561 | scene_id=hypersim_scene_id, |
| 1562 | dataset_root_dir=hypersim_dataset_root_dir, |
| 1563 | ) |
| 1564 | all_camera_info = hypersim_dataset.load_hypersim_camera_info( |
| 1565 | filename=hypersim_camera_csv_filename, |
| 1566 | ) |
| 1567 | |
| 1568 | dset = hypersim_dataset.HypersimDataset( |
| 1569 | scene_dir=scene_dir, |
| 1570 | camera_info=all_camera_info[scene_name], |
| 1571 | cam_idx=-1, |
| 1572 | num_images_per_item=hypersim_num_images_per_item, |
| 1573 | image_subsample=hypersim_image_subsample, |
| 1574 | tonemap=hypersim_tonemap, |
| 1575 | tonemap_gamma=hypersim_tonemap_gamma, |
| 1576 | tonemap_percentile=hypersim_tonemap_percentile, |
| 1577 | tonemap_percentile_target=hypersim_tonemap_percentile_target, |
| 1578 | tonemap_scale=hypersim_tonemap_scale, |
| 1579 | num_hold_out_items=0, |
| 1580 | ) |
| 1581 | print(f'hypersim scene {scene_name}, intrinsic:') |
| 1582 | print(dset.intrinsic) |
| 1583 | |
| 1584 | output_dir = copy.deepcopy(kwargs.get('output_dir', None)) |
| 1585 | ori_kwargs = copy.deepcopy(kwargs) |
| 1586 | |
| 1587 | # render each image set |
| 1588 | for i in range(len(dset)): |
| 1589 | kwargs = copy.deepcopy(ori_kwargs) |
| 1590 | |
| 1591 | data_dict = dset[i] |
| 1592 | input_rgbd_image: RGBDImage = data_dict['rgbd_image'] |
| 1593 | |
| 1594 | n_imgs = input_rgbd_image.rgb.size(1) |
| 1595 | print(f'number of input images = {n_imgs}') |
| 1596 | |
| 1597 | if 'pr_setting' in kwargs: |
| 1598 | kwargs['pr_setting']['ray_radius'] = 0.1 |
no test coverage detected