Random_anna.mp4

layer_names = net.getLayerNames() output_layers = [layer_names[i - 1] for i in net.getUnconnectedOutLayers()]

cv2.imshow("Image", frame) if cv2.waitKey(1) & 0xFF == ord('q'): break

import cv2

class_ids = [] confidences = [] boxes = [] for out in outs: for detection in out: scores = detection[5:] class_id = np.argmax(scores) confidence = scores[class_id] if confidence > 0.5 and classes[class_id] == "person": # Filter by class and confidence # Object detected center_x = int(detection[0] * width) center_y = int(detection[1] * height) w = int(detection[2] * width) h = int(detection[3] * height) # Rectangle coordinates x = int(center_x - w / 2) y = int(center_y - h / 2) boxes.append([x, y, w, h]) confidences.append(float(confidence)) class_ids.append(class_id)

video.release() cv2.destroyAllWindows() This example focuses on object detection. Depending on your specific needs, you might need to adjust libraries, models, or entirely different approaches. Ensure you have the necessary models and configuration files (like yolov3.weights , yolov3.cfg , and coco.names for the YOLOv3 example) downloaded and properly referenced. random_anna.mp4

video = cv2.VideoCapture('random_anna.mp4')

# Detecting objects blob = cv2.dnn.blobFromImage(frame, 0.00392, (416, 416), (0, 0, 0), True, crop=False) net.setInput(blob) outs = net.forward(output_layers) layer_names = net

font = cv2.FONT_HERSHEY_SIMPLEX colors = np.random.uniform(0, 255, size=(len(classes), 3)) for i in range(len(boxes)): if i in indexes: x, y, w, h = boxes[i] label = str(classes[class_ids[i]]) confidence = str(round(confidences[i], 2)) color = colors[i] cv2.rectangle(frame, (x, y), (x + w, y + h), color, 2) cv2.putText(frame, label + " " + confidence, (x, y + 20), font, 2, color, 2)