做的是一个打开体系摄像头,并且举行目的检测的小demo,后期会出三个的结合,如有需要请关注三连,谢谢。
默认使用的是yolo11的权重模型文件,后期各人有自己更加精确的文件可以修改。
- def camera_detection(self):
- """
- 摄像头检测
- """
- try:
- model = YOLO('yolo11n.pt')
- camera = cv2.VideoCapture(0)
- if camera.isOpened():
- timer = QTimer()
- timer.timeout.connect(lambda: self.update_camera_frame(camera, model))
- timer.start(30)
- while True:
- if cv2.waitKey(1) & 0xFF == ord('q'):
- break
- camera.release()
- cv2.destroyAllWindows()
- else:
- print("无法打开摄像头,请检查设备是否连接正常。")
- except Exception as e:
- print(f"摄像头检测出现错误: {e}")
复制代码- def update_camera_frame(self, camera, model):
- success, frame = camera.read()
- if success:
- results = model.predict(frame)
- annotated_frame = results[0].plot()
- cv2.imshow("YOLOv11 Inference", annotated_frame)
- else:
- print("摄像头读取失败,请检查设备是否正常工作。")
复制代码 运行一下就能看见效果啦
- if __name__ == "__main__":
- detector = Detector()
- detector.camera_detection()
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |