Untitled
unknown
plain_text
a year ago
1.8 kB
4
Indexable
import cv2 import numpy as np # Parametri pentru cerc center = (130, 190) start_radius = 5 end_radius = 150 # Parametri pentru linie line_color = (0, 255, 0) # Verde line_thickness = 2 # Parametri pentru text text = "Laborator VA" text_color = (255, 255, 255) # Alb font = cv2.FONT_HERSHEY_SIMPLEX font_scale = 1 text_thickness = 2 # Deschideți fluxul video cap = cv2.VideoCapture('nume_fisier_video.mp4') frame_width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) frame_height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) fps = cap.get(cv2.CAP_PROP_FPS) total_frames = int(cap.get(cv2.CAP_PROP_FRAME_COUNT)) # Creați video de ieșire out = cv2.VideoWriter('rezultat.avi', cv2.VideoWriter_fourcc(*'DIVX'), fps, (frame_width, frame_height)) # Iterați prin fiecare cadru for i in range(total_frames): ret, frame = cap.read() if not ret: break # Adăugați cerc radius = int(start_radius + (end_radius - start_radius) * (i / total_frames)) cv2.circle(frame, center, radius, (255, 0, 0), -1) # Adăugați linie cv2.line(frame, (0, i * frame_height // total_frames), (frame_width, i * frame_height // total_frames), line_color, line_thickness) # Adăugați text cv2.putText(frame, text[:int(i * len(text) / total_frames)], (50, 50), font, font_scale, text_color, text_thickness) # Suprascrieți colțul din dreapta-jos cu conținutul colțului din dreapta-sus al cadrului anterior if i > 0: frame[100:, 100:] = prev_frame[:frame_height - 100, 100:] # Scrieți cadru în video de ieșire out.write(frame) # Salvați cadru anterior pentru suprascriere prev_frame = frame.copy() # Afișați progresul print(f"Frame {i}/{total_frames} processed") # Eliberați resursele cap.release() out.release() cv2.destroyAllWindows()
Editor is loading...
Leave a Comment