Download submodules/pytorch3d/tests/implicitron/test_data_cow.py from vegagoto123/UIKA: direct link, hf CLI and curl.
- Browser
- Download file 2.16 kB
-
https://huggingface.co/vegagoto123/UIKA/resolve/main/submodules/pytorch3d/tests/implicitron/test_data_cow.py
- Command line
-
hf download hf://vegagoto123/UIKA/submodules/pytorch3d/tests/implicitron/test_data_cow.py
-
curl -L -o test_data_cow.py https://huggingface.co/vegagoto123/UIKA/resolve/main/submodules/pytorch3d/tests/implicitron/test_data_cow.py
2.16 kB
| # Copyright (c) Meta Platforms, Inc. and affiliates. | |
| # All rights reserved. | |
| # | |
| # This source code is licensed under the BSD-style license found in the | |
| # LICENSE file in the root directory of this source tree. | |
| import os | |
| import unittest | |
| import torch | |
| from pytorch3d.implicitron.dataset.frame_data import FrameData | |
| from pytorch3d.implicitron.dataset.rendered_mesh_dataset_map_provider import ( | |
| RenderedMeshDatasetMapProvider, | |
| ) | |
| from pytorch3d.implicitron.tools.config import expand_args_fields | |
| from pytorch3d.renderer import FoVPerspectiveCameras | |
| from tests.common_testing import TestCaseMixin | |
| inside_re_worker = os.environ.get("INSIDE_RE_WORKER", False) | |
| class TestDataCow(TestCaseMixin, unittest.TestCase): | |
| def test_simple(self): | |
| if inside_re_worker: | |
| return | |
| expand_args_fields(RenderedMeshDatasetMapProvider) | |
| self._runtest(use_point_light=True, num_views=4) | |
| self._runtest(use_point_light=False, num_views=4) | |
| def _runtest(self, **kwargs): | |
| provider = RenderedMeshDatasetMapProvider(**kwargs) | |
| dataset_map = provider.get_dataset_map() | |
| known_matrix = torch.zeros(1, 4, 4) | |
| known_matrix[0, 0, 0] = 1.7321 | |
| known_matrix[0, 1, 1] = 1.7321 | |
| known_matrix[0, 2, 2] = 1.0101 | |
| known_matrix[0, 3, 2] = -1.0101 | |
| known_matrix[0, 2, 3] = 1 | |
| self.assertIsNone(dataset_map.val) | |
| self.assertIsNone(dataset_map.test) | |
| self.assertEqual(len(dataset_map.train), provider.num_views) | |
| value = dataset_map.train[0] | |
| self.assertIsInstance(value, FrameData) | |
| self.assertEqual(value.image_rgb.shape, (3, 128, 128)) | |
| self.assertEqual(value.fg_probability.shape, (1, 128, 128)) | |
| # corner of image is background | |
| self.assertEqual(value.fg_probability[0, 0, 0], 0) | |
| self.assertEqual(value.fg_probability.max(), 1.0) | |
| self.assertIsInstance(value.camera, FoVPerspectiveCameras) | |
| self.assertEqual(len(value.camera), 1) | |
| self.assertIsNone(value.camera.K) | |
| matrix = value.camera.get_projection_transform().get_matrix() | |
| self.assertClose(matrix, known_matrix, atol=1e-4) | |