keyframer now also appends last frame

This commit is contained in:
LonicaMewinsky
2023-11-14 14:21:17 -06:00
parent 5185d1afca
commit 2bf50904b0
+2 -1
View File
@@ -78,12 +78,13 @@ class GetKeyFrames:
CATEGORY = "Frames"
def getkeyframes(self, frames, num_keyframes):
N = np.clip(num_keyframes, 2, len(frames)-1) # Save a spot for first frame
N = np.clip(num_keyframes, 2, len(frames)-2)
frames = frames
differences = [torch.norm(frames[i+1] - frames[i], p=2) for i in range(len(frames)-1)]
_, top_indices = torch.topk(torch.tensor(differences), k=N, largest=True)
keyframe_indices = sorted([index.item() + 1 for index in top_indices])
keyframe_indices.insert(0, 0)
keyframe_indices.append(len(frames)-1)
cat_keyframe_tensors = [frames[i].to(device).unsqueeze(0) for i in keyframe_indices]
cat_keyframe_tensors = torch.cat(cat_keyframe_tensors, dim = 0).to(device)