import cv2 as cv import numpy as np # Giriş ve çıkış video input_video = r'data/araba.mp4' output_video = r'data/araba_output.mp4' # Video yakalama cap = cv.VideoCapture(input_video) # Video özelliklerine bak fourcc = cv.VideoWriter_fourcc(*'mp4v') # Kodek fps = int(cap.get(cv.CAP_PROP_FPS)) # Saniyedeki frame sayısı width = int(cap.get(cv.CAP_PROP_FRAME_WIDTH)) # Genişlik height = int(cap.get(cv.CAP_PROP_FRAME_HEIGHT)) # Yükseklik out = cv.VideoWriter(output_video, fourcc, fps, (width, height)) # Videoyumuzu belirtilen özelliklerde oluşturur # CUDA desteğini kontrol et cuda_enabled = cv.cuda.getCudaEnabledDeviceCount() > 0 device_label = "Device: GPU" if cuda_enabled else "Device: CPU" # Video çerçevelerini işleme hızını kontrol etmek için bekleme süresi delay = int(1000 / fps) # Milisaniye cinsinden bekleme süresi while cap.isOpened(): ret, frame = cap.read() if not ret: # Okuma başarılı ise break # Renk kanallarını ayarla b, g, r = cv.split(frame) rgb_frame = cv.merge((b, r, r)) # CPU/GPU kullanımını göstermek için etiketi çerçeve üzerine ekleyin cv.putText(rgb_frame, device_label, (10, 30), cv.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2, cv.LINE_AA) cv.imshow('Mavi video', rgb_frame) out.write(rgb_frame) # Videoya yaz # 'q' tuşuna basana kadar bekle if cv.waitKey(delay) & 0xFF == ord('q'): break cap.release() out.release() cv.destroyAllWindows()