| | import os |
| |
|
| | import torch |
| |
|
| | import kornia |
| | from kornia.testing import assert_close |
| |
|
| |
|
| | class TestSaveLoadPointCloud: |
| | def test_save_pointcloud(self): |
| | height, width = 10, 8 |
| | xyz_save = torch.rand(height, width, 3) |
| |
|
| | |
| | filename = "pointcloud.ply" |
| | kornia.utils.save_pointcloud_ply(filename, xyz_save) |
| |
|
| | |
| | xyz_load = kornia.utils.load_pointcloud_ply(filename) |
| | assert_close(xyz_save.reshape(-1, 3), xyz_load) |
| |
|
| | |
| | if os.path.exists(filename): |
| | os.remove(filename) |
| |
|
| | @staticmethod |
| | def test_inf_coordinates_save_pointcloud(): |
| | |
| | height, width = 10, 8 |
| | xyz_save = torch.rand(height, width, 3) |
| |
|
| | |
| | |
| | xyz_save[0, 0, :] = float('inf') |
| | |
| | xyz_save[0, 1, 0] = float('inf') |
| | |
| | xyz_save[1, 0, :-1] = float('inf') |
| |
|
| | |
| | filename = "pointcloud.ply" |
| | kornia.utils.save_pointcloud_ply(filename, xyz_save) |
| |
|
| | |
| | xyz_correct = xyz_save.reshape(-1, 3)[1:, :] |
| |
|
| | |
| | xyz_load = kornia.utils.load_pointcloud_ply(filename) |
| | assert_close(xyz_correct, xyz_load) |
| |
|
| | if os.path.exists(filename): |
| | os.remove(filename) |
| |
|