abreza commited on
Commit
2477854
·
1 Parent(s): c065381

add logging for helper keyframes in simulation visualization

Browse files
visualization/logger.py CHANGED
@@ -138,3 +138,24 @@ class SimulationLogger:
138
 
139
  except Exception as e:
140
  print(f"Error logging camera frame {frame_idx}: {str(e)}")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
138
 
139
  except Exception as e:
140
  print(f"Error logging camera frame {frame_idx}: {str(e)}")
141
+
142
+ def log_helper_keyframes(self, helper_keyframes: List[Dict[str, Any]]) -> None:
143
+ if not helper_keyframes:
144
+ return
145
+
146
+ try:
147
+ helper_positions = np.array([
148
+ vector3_to_numpy(frame['position']) for frame in helper_keyframes
149
+ ])
150
+ rr.log(
151
+ "world/helper_keyframes",
152
+ rr.Points3D(
153
+ helper_positions,
154
+ colors=np.full((len(helper_positions), 4),
155
+ [1.0, 1.0, 0.0, 1.0])
156
+ ),
157
+ timeless=True
158
+ )
159
+
160
+ except Exception as e:
161
+ print(f"Error logging helper keyframes: {str(e)}")
visualization/visualizer.py CHANGED
@@ -29,6 +29,9 @@ def visualize_simulation(file, simulation_index: Optional[int]) -> Optional[str]
29
  logger.log_camera_trajectory(simulation['cameraFrames'])
30
  logger.log_camera_frames(simulation['cameraFrames'])
31
 
 
 
 
32
  rr.save(rrd_path)
33
 
34
  return rrd_path
 
29
  logger.log_camera_trajectory(simulation['cameraFrames'])
30
  logger.log_camera_frames(simulation['cameraFrames'])
31
 
32
+ if 'helper_keyframes' in simulation:
33
+ logger.log_helper_keyframes(simulation['helper_keyframes'])
34
+
35
  rr.save(rrd_path)
36
 
37
  return rrd_path