deneme / app.py
mbesinci's picture
Update app.py
9f07d73 verified
raw
history blame
1.76 kB
import gradio as gr
import cv2
import torch
from transformers import AutoModelForImageTranslation # Bu, örnek bir model. Gerçek model ismini buraya yazmanız gerekebilir.
# Göz teması düzeltme modeli - model adını uygun bir modelle değiştirin
model = AutoModelForImageTranslation.from_pretrained("username/gaze_correction_model") # model yolunu doğru şekilde ayarlayın
# Video işlemi fonksiyonu
def correct_gaze_in_video(video_path):
# Video dosyasını aç
cap = cv2.VideoCapture(video_path)
fps = cap.get(cv2.CAP_PROP_FPS)
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
# Çıkış videosu için ayarlar
output_path = "corrected_gaze_output.mp4"
fourcc = cv2.VideoWriter_fourcc(*'mp4v')
out = cv2.VideoWriter(output_path, fourcc, fps, (width, height))
while cap.isOpened():
ret, frame = cap.read()
if not ret:
break
# Göz temasını düzeltmek için her kareyi işleme (örnek bir işleme işlemi)
inputs = preprocess_image(frame) # Görüntüyü modele uygun hale getir (normalize, resize vb.)
corrected_frame = model(inputs)
# Çıkışı video dosyasına ekleyin
out.write(corrected_frame)
# Kaynakları serbest bırak
cap.release()
out.release()
return output_path
# Gradio arayüzü
iface = gr.Interface(
fn=correct_gaze_in_video, # İşlem fonksiyonumuz
inputs="file", # Kullanıcıdan video dosyası girişi
outputs="file", # İşlenmiş video dosyası çıktısı
title="Gaze Correction in Video",
description="Upload a video to correct gaze direction."
)
iface.launch()