File size: 975 Bytes
6226c23
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import gradio as gr
from transformers import VideoMAEForVideoClassification, VideoMAEFeatureExtractor
import cv2

# Modeli ve özellik çıkarıcıyı yükleyin
model_name = "MCG-NJU/videomae-base-finetuned-kinetics"
model = VideoMAEForVideoClassification.from_pretrained(model_name)
feature_extractor = VideoMAEFeatureExtractor.from_pretrained(model_name)

# Video işleme ve sınıflandırma fonksiyonu
def classify_video(video):
    cap = cv2.VideoCapture(video)
    frames = []
    while cap.isOpened():
        ret, frame = cap.read()
        if not ret:
            break
        frames.append(frame)
    cap.release()

    inputs = feature_extractor(frames, return_tensors="pt")
    outputs = model(**inputs)
    predicted_class = outputs.logits.argmax(-1).item()
    return f"Predicted class: {predicted_class}"

# Gradio arayüzü kurma
demo = gr.Interface(
    fn=classify_video,
    inputs="file",
    outputs="text",
    title="Video Classifier"
)

demo.launch()