def test_random_perturbation(): for trials in range(100): localization = np.random.rand((3)) * np.random.uniform(1, 100) perturbation = random_perturbation(localization, 0) assert np.allclose(perturbation, localization) shift = np.random.uniform(-3, 3) perturbation = random_perturbation(localization, shift)
def _sample_parameters(self): distance = sample_uniformly(self.distance) camera_origin = sample_point_in_sphere(distance, self.top_only) camera_origin = random_perturbation(camera_origin, self.epsilon) light_intensity = sample_uniformly(self.light_intensity) return camera_origin, light_intensity
def _sample_camera_origin(self): distance = sample_uniformly(self.distance) camera_origin = sample_point_in_sphere(distance, self.top_only) camera_origin = random_perturbation(camera_origin, self.epsilon) return camera_origin