Random_anna.mp4

indexes = cv2.dnn.NMSBoxes(boxes, confidences, 0.5, 0.4)

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)

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) random_anna.mp4

height, width, channels = frame.shape

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

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.

# Load YOLO net = cv2.dnn.readNet("yolov3.weights", "yolov3.cfg") classes = [] with open("coco.names", "r") as f: classes = [line.strip() for line in f.readlines()] # Load YOLO net = cv2

import cv2