【算法介绍】

基于YOLOv8的篮球计数检测系统是一种高效、精准的目标检测技术,专为篮球比赛中的篮球计数而设计。该系统利用YOLOv8这一先进的深度学习算法,通过实时分析比赛视频或图像,能够迅速且准确地识别并计数篮球的数量。

【环境配置】

 anaconda + python

【模型可以检测出类别】

  Basketball
  Basketball Hoop

  可自己再增加类型

【数据标注】

 用LabelImg标注数据

  

标记后生成的数据

标记几百张图片:

【训练模型】

用以下代码进行训练

yolo detect val data=D:/code/AI-Basketball-Shot-Detection-Tracker-master/config.yaml  model=D:/code/AI-Basketball-Shot-Detection-Tracker-master/runs/detect/train3/weights/best.pt

训练后的数据:

weights/best.pt 就是生成的模型

【检测投篮】

该项目的核心算法使用训练好的YOLOv8模型检测每一帧中的篮球和篮球架。算法分析篮球相对于篮球架的运动和位置,判断是否为成功投篮。

为了提高投篮检测的准确性,算法不仅追踪篮球的位置,还对篮球和篮球架的位置应用数据清洗技术。算法旨在过滤掉不准确的数据点,移除超过某一帧限制的数据,并防止在不同物体之间跳跃,从而保持检测的准确性。

通过线性回归算法预测篮球的轨迹,如果预测的轨迹与篮球架相交,算法就会注册为成功投篮。

具体参考:

shot_detector.py

可选择的模型:begin.pt  best.pt 或者自己加上图片自己训练自己的模型

修改模型可在shot_detector.py 修改即可

【剪辑视频】

剪辑投中的进球

剪辑不中的进球

【代码链接】

https://upload.csdn.net/creation/uploadResources/92678584

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐