Commit c55b395b authored by liyinhao's avatar liyinhao
Browse files

change pts_instance_mask and pts_sementic_mask

parent f1a0211e
...@@ -45,22 +45,19 @@ class PointSample(object): ...@@ -45,22 +45,19 @@ class PointSample(object):
else: else:
return points[choices] return points[choices]
def __call__(self, results, seed=None): def __call__(self, results):
points = results.get('points', None) points = results.get('points', None)
pts_color = results.get('pts_color', None)
points, choices = self.points_random_sampling( points, choices = self.points_random_sampling(
points, self.num_points, return_choices=True) points, self.num_points, return_choices=True)
pts_instance_mask = results.get('pts_instance_mask', None)
pts_semantic_mask = results.get('pts_semantic_mask', None)
results['points'] = points results['points'] = points
if pts_color is not None: if pts_instance_mask is not None and pts_semantic_mask is not None:
pts_color = pts_color[choices] pts_instance_mask = pts_instance_mask[choices]
instance_labels = results.get('instance_labels', None) pts_semantic_mask = pts_semantic_mask[choices]
semantic_labels = results.get('semantic_labels', None) results['pts_instance_mask'] = pts_instance_mask
instance_labels = instance_labels[choices] results['pts_semantic_mask'] = pts_semantic_mask
semantic_labels = semantic_labels[choices]
results['instance_labels'] = instance_labels
results['semantic_labels'] = semantic_labels
results['pts_color'] = pts_color
return results return results
......
...@@ -18,31 +18,22 @@ def test_indoor_sample(): ...@@ -18,31 +18,22 @@ def test_indoor_sample():
[-0.9186557, -1.7041215, 2.0562649, 2.1351335], [-0.9186557, -1.7041215, 2.0562649, 2.1351335],
[-1.0128691, -1.3394243, 0.040936, 0.1198047]]) [-1.0128691, -1.3394243, 0.040936, 0.1198047]])
scannet_results['points'] = scannet_points scannet_results['points'] = scannet_points
scannet_instance_labels = np.array([15, 12, 11, 38, 0, 18, 17, 12, 17, 0]) scannet_pts_instance_mask = np.array(
scannet_results['instance_labels'] = scannet_instance_labels [15, 12, 11, 38, 0, 18, 17, 12, 17, 0])
scannet_pts_color = np.array([[77., 74., 63.], [176., 166., 156.], scannet_results['pts_instance_mask'] = scannet_pts_instance_mask
[178., 164., 153.], [240., 235., 237.], scannet_pts_semantic_mask = np.array([38, 1, 1, 40, 0, 40, 1, 1, 1, 0])
[58., 58., 59.], [245., 236., 229.], scannet_results['pts_semantic_mask'] = scannet_pts_semantic_mask
[158., 148., 141.], [195., 184., 178.], scannet_results = scannet_sample_points(scannet_results)
[193., 181., 174.], [105., 102., 97.]]) scannet_points_result = scannet_results.get('points', None)
scannet_results['pts_color'] = scannet_pts_color
scannet_semantic_labels = np.array([38, 1, 1, 40, 0, 40, 1, 1, 1, 0])
scannet_results['semantic_labels'] = scannet_semantic_labels
scannet_results = scannet_sample_points(scannet_results, 0)
scannet_point_cloud_result = scannet_results.get('points', None)
scannet_pcl_color_result = scannet_results.get('pts_color', None)
scannet_instance_labels_result = scannet_results.get( scannet_instance_labels_result = scannet_results.get(
'instance_labels', None) 'pts_instance_mask', None)
scannet_semantic_labels_result = scannet_results.get( scannet_semantic_labels_result = scannet_results.get(
'semantic_labels', None) 'pts_semantic_mask', None)
scannet_choices = np.array([2, 8, 4, 9, 1]) scannet_choices = np.array([2, 8, 4, 9, 1])
assert np.allclose(scannet_points[scannet_choices], assert np.allclose(scannet_points[scannet_choices], scannet_points_result)
scannet_point_cloud_result) assert np.all(scannet_pts_instance_mask[scannet_choices] ==
assert np.allclose(scannet_pts_color[scannet_choices],
scannet_pcl_color_result)
assert np.all(scannet_instance_labels[scannet_choices] ==
scannet_instance_labels_result) scannet_instance_labels_result)
assert np.all(scannet_semantic_labels[scannet_choices] == assert np.all(scannet_pts_semantic_mask[scannet_choices] ==
scannet_semantic_labels_result) scannet_semantic_labels_result)
np.random.seed(0) np.random.seed(0)
...@@ -60,7 +51,7 @@ def test_indoor_sample(): ...@@ -60,7 +51,7 @@ def test_indoor_sample():
[0.56485355, 1.5747732, -0.804522, 0.4814307], [0.56485355, 1.5747732, -0.804522, 0.4814307],
[-0.0913099, 1.3673826, -1.2800645, 0.00588822]]) [-0.0913099, 1.3673826, -1.2800645, 0.00588822]])
sunrgbd_results['points'] = sunrgbd_point_cloud sunrgbd_results['points'] = sunrgbd_point_cloud
sunrgbd_results = sunrgbd_sample_points(sunrgbd_results, 0) sunrgbd_results = sunrgbd_sample_points(sunrgbd_results)
sunrgbd_choices = np.array([2, 8, 4, 9, 1]) sunrgbd_choices = np.array([2, 8, 4, 9, 1])
sunrgbd_points_result = sunrgbd_results.get('points', None) sunrgbd_points_result = sunrgbd_results.get('points', None)
assert np.allclose(sunrgbd_point_cloud[sunrgbd_choices], assert np.allclose(sunrgbd_point_cloud[sunrgbd_choices],
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment