reab5555 commited on
Commit
b68e4d5
·
verified ·
1 Parent(s): f037e1e

Update visualization.py

Browse files
Files changed (1) hide show
  1. visualization.py +4 -14
visualization.py CHANGED
@@ -217,8 +217,8 @@ def plot_posture(df, posture_scores, color='blue', anomaly_threshold=3):
217
  return fig
218
 
219
 
220
- def create_heatmap(t, mse_embeddings, mse_posture, mse_voice):
221
- frame_count = int(t * video.fps)
222
 
223
  # Normalize MSE values
224
  mse_embeddings_norm = (mse_embeddings - np.min(mse_embeddings)) / (np.max(mse_embeddings) - np.min(mse_embeddings))
@@ -245,7 +245,6 @@ def create_heatmap(t, mse_embeddings, mse_posture, mse_voice):
245
  plt.close(fig)
246
  return heatmap_img
247
 
248
- # Function to create video with heatmap
249
  def create_video_with_heatmap(video_path, df, mse_embeddings, mse_posture, mse_voice, output_folder, desired_fps, largest_cluster):
250
  print(f"Creating heatmap video. Output folder: {output_folder}")
251
 
@@ -271,20 +270,11 @@ def create_video_with_heatmap(video_path, df, mse_embeddings, mse_posture, mse_v
271
  mse_voice = np.interp(np.linspace(0, len(mse_voice) - 1, total_frames),
272
  np.arange(len(mse_voice)), mse_voice)
273
 
274
- mse_embeddings_norm = (mse_embeddings - np.min(mse_embeddings)) / (np.max(mse_embeddings) - np.min(mse_embeddings))
275
- mse_posture_norm = (mse_posture - np.min(mse_posture)) / (np.max(mse_posture) - np.min(mse_posture))
276
- mse_voice_norm = (mse_voice - np.min(mse_voice)) / (np.max(mse_voice) - np.min(mse_voice))
277
-
278
- combined_mse = np.zeros((3, total_frames))
279
- combined_mse[0] = mse_embeddings_norm
280
- combined_mse[1] = mse_posture_norm
281
- combined_mse[2] = mse_voice_norm
282
-
283
  def combine_video_and_heatmap(t):
284
  video_frame = video.get_frame(t)
285
- heatmap_frame = create_heatmap(t, mse_embeddings, mse_posture, mse_voice)
286
  combined_frame = np.vstack((video_frame, heatmap_frame))
287
- return add_timecode(combined_frame, t)
288
 
289
  final_clip = VideoClip(combine_video_and_heatmap, duration=video.duration)
290
  final_clip = final_clip.set_audio(video.audio)
 
217
  return fig
218
 
219
 
220
+ def create_heatmap(t, mse_embeddings, mse_posture, mse_voice, video_fps, total_frames):
221
+ frame_count = int(t * video_fps)
222
 
223
  # Normalize MSE values
224
  mse_embeddings_norm = (mse_embeddings - np.min(mse_embeddings)) / (np.max(mse_embeddings) - np.min(mse_embeddings))
 
245
  plt.close(fig)
246
  return heatmap_img
247
 
 
248
  def create_video_with_heatmap(video_path, df, mse_embeddings, mse_posture, mse_voice, output_folder, desired_fps, largest_cluster):
249
  print(f"Creating heatmap video. Output folder: {output_folder}")
250
 
 
270
  mse_voice = np.interp(np.linspace(0, len(mse_voice) - 1, total_frames),
271
  np.arange(len(mse_voice)), mse_voice)
272
 
 
 
 
 
 
 
 
 
 
273
  def combine_video_and_heatmap(t):
274
  video_frame = video.get_frame(t)
275
+ heatmap_frame = create_heatmap(t, mse_embeddings, mse_posture, mse_voice, video.fps, total_frames)
276
  combined_frame = np.vstack((video_frame, heatmap_frame))
277
+ return combined_frame
278
 
279
  final_clip = VideoClip(combine_video_and_heatmap, duration=video.duration)
280
  final_clip = final_clip.set_audio(video.audio)