Football AI Tutorial: From Basics to Advanced Stats with Python

Поделиться
HTML-код
  • Опубликовано: 24 ноя 2024

Комментарии • 254

  • @giancarlocestarolli6049
    @giancarlocestarolli6049 2 месяца назад +60

    That’s an amazing video! Few people in the world provide such great content for free. 1 hour of pure learning.

    • @Roboflow
      @Roboflow  2 месяца назад +9

      I’m soooo glad people can see the effort I put into this video.

    • @PlayGameToday
      @PlayGameToday Месяц назад

      Roboflow is not free

  • @schneidershades
    @schneidershades 3 месяца назад +30

    Thank you so much. I got into Object detection and python with your guidance and help in just 2 months to solve problems in the football infrastructure. Thank you

    • @Roboflow
      @Roboflow  3 месяца назад +3

      so awesome to hear that those tutorials really help people!

    • @VideoScopeAlpha
      @VideoScopeAlpha 3 месяца назад +5

      @Roboflow They certainly do, and I've been working on something during weekends for the last few weeks. I'm hoping to finish it soon and will share the results here.

  • @benephr
    @benephr Месяц назад +25

    i lost it when "it's called football"😂THAT'S RIGHT BROOOO!

  • @vagdrak6575
    @vagdrak6575 3 месяца назад +31

    the moment he said it is called football --> insta sub

    • @Roboflow
      @Roboflow  3 месяца назад +6

      That was a risky move. I bet it can work both ways haha

  • @viveksapkale1577
    @viveksapkale1577 Месяц назад +3

    Your video provides valuable insights into computer vision, and we truly appreciate the depth of information you share. it helps many of us learn and grow. Thank you for your dedication and efforts! 😊

  • @aishidiot
    @aishidiot 3 месяца назад +11

    This is absolutely GOLD ! Haven't watched it but it's on my list. Have been following your updates on TW !

    • @Roboflow
      @Roboflow  3 месяца назад

      haha if you read my X posts you probably already know everything haha

  • @mind6861
    @mind6861 3 месяца назад +24

    Very true 🤣
    Nothing is free except your tutorials
    Thank you for your efforts 🌹🌹

    • @Roboflow
      @Roboflow  3 месяца назад +1

      I see you decided not to skip model training section ;)

  • @calebcauthon1117
    @calebcauthon1117 3 месяца назад +7

    your initial tutorial was my intro to computer vision and helped me get pretty far. this one has lots of unblockers. I was doing homography before, but I didnt know about keypoint detection. another unblocker is the specifics of how you did classes for training. should help me a lot!

    • @Roboflow
      @Roboflow  3 месяца назад +1

      Awesome to hear that! You came back after almost 2 years for part 2.

  • @daferrari7
    @daferrari7 29 дней назад +1

    from Indonesia wanna say, thank you, the video so clear and easy to underestand, moreover enthusiast like me...

    • @Roboflow
      @Roboflow  28 дней назад

      My pleasure! Awesome to read comments like this

  • @Ghost21PG
    @Ghost21PG 3 месяца назад +2

    This will be one of the best projects I could've ever wished for❤️
    Thanks a lot Sir

    • @Roboflow
      @Roboflow  3 месяца назад

      I love sports + computer vision combo!

  • @FranciscoBerkemeier
    @FranciscoBerkemeier 2 месяца назад +1

    You could probably now train player movement to deduce a realistic model for video games! Probably moving away from Python I guess, but that would be extraordinary, with tweakable speed and intelligence, even if resolution is relatively low. Suggestion is better than perfection. Wonderful stuff!

  • @Deutschzeit
    @Deutschzeit 3 месяца назад +1

    Thank you for encouraging me to pursue a career in this field with your videos :)

    • @Roboflow
      @Roboflow  3 месяца назад

      It is really cool field to have career in!

  • @skipius
    @skipius 2 месяца назад +3

    Thank you so much for this video. Im currently working on getting it to work for my volleyball matches.

    • @Roboflow
      @Roboflow  2 месяца назад +1

      Really? I’d love to see your results!

  • @RyanGooch-t5n
    @RyanGooch-t5n 3 месяца назад +1

    Amazing video, thanks for sharing! I did my postdoc research in computer vision, using similar techniques, including even the perspective transforms, to ultimately automate error calculations for solar mirrors. I feel your pain on the keypoint labeling, that takes forever :'). Even though that was only 4 years ago, it's amazing how much progress has been made and how much easier it is to manage these models, datasets, and transformations. My postdoc work would have been so much easier in 2024 than it was in 2020, thanks to these developments and tutorials like yours 😁

    • @Roboflow
      @Roboflow  3 месяца назад +1

      Thanks a lot Ryan! 4 years in AI space feels like forever. I can’t even imagine what will happen over the next 4 years. It’s also super validating to hear you used similar strategies, and super interesting you’ve done this in completely different field. We are organizing community session next week. Is there any chance I could show some visualizations from your work on solar panels?

    • @RyanGooch-t5n
      @RyanGooch-t5n 3 месяца назад

      @@Roboflow Sure thing! Please send me an email and I can share images and more info

  • @prometheus6001
    @prometheus6001 2 месяца назад +53

    Tell them ohhhh!!! It's called Football!!! FUUTBALL... The sports where you use your foot to play the ball. Not your hands.

    • @Roboflow
      @Roboflow  2 месяца назад +4

      EXACTLY!

    • @FCFénixFC
      @FCFénixFC Месяц назад +1

      I wonder how many people are upset that in Italy it's called calcio and not football. No one cares.

    • @cecilarthur3579
      @cecilarthur3579 Месяц назад

      Amen brother!

    • @topkek670
      @topkek670 Месяц назад +1

      google soccer and be surprised

    • @iionccub365old
      @iionccub365old Месяц назад

      It's soccer, which is a variant of the broader term football

  • @alvarofelipe1273
    @alvarofelipe1273 3 месяца назад +2

    Amazing video, thanks bro. You are my hero in CV

    • @Roboflow
      @Roboflow  3 месяца назад

      thanks a lot!

  • @cynorsense
    @cynorsense 2 дня назад

    Also stitching across various cameras is also very interesting thought.

  • @khanhtuongtranlam9141
    @khanhtuongtranlam9141 2 месяца назад +1

    Thank you. I am researching for my final project at my university. My topic is the same one you made. I hope we can discuss it more. Thank you so much, bro.

    • @Roboflow
      @Roboflow  2 месяца назад

      you can always find me on LinkedIn and X

  • @henriqueabreu4436
    @henriqueabreu4436 11 дней назад

    You are a Hero my friend!

  • @proximus323
    @proximus323 3 месяца назад +3

    Piłka nożna 😊

    • @Roboflow
      @Roboflow  3 месяца назад

      nie da się ukryć haha

  • @RicardoBennesby
    @RicardoBennesby 3 месяца назад +1

    I could't wait to watch this video! Thank you for sharing!

    • @Roboflow
      @Roboflow  3 месяца назад +1

      Let me know if you like it and if you have some questions or cool ideas

  • @maveriktn
    @maveriktn 3 месяца назад +2

    Thanks Peter this video is very useful!

    • @Roboflow
      @Roboflow  3 месяца назад

      Great to hear that!

  • @kof3317
    @kof3317 2 месяца назад +1

    thanks a lot. I am currently applying this to field hockey. I have completed player object detection and am working on pitch keypoint detection.

    • @Roboflow
      @Roboflow  2 месяца назад +1

      wooooow! I’d love to see some results!

    • @kof3317
      @kof3317 2 месяца назад

      @@Roboflow haha, I'm currently focused on building up the dataset, and once I finish with the keypoint detection, I'll share the notebook. The biggest issue with field hockey is the rolling substitutions. As mentioned in the Q&A video, when players disappear from the screen, they are sometimes recognized as different players. When a substitution happens, I would have to manually switch the player, but I still don't know exactly how to handle that.

  • @danielisflying
    @danielisflying 3 месяца назад +1

    You are blessed! Thank you for this great effort.

  • @dbarca10
    @dbarca10 Месяц назад

    Dude this is sick! great tutorial!

  • @LouisDuran
    @LouisDuran 3 месяца назад +1

    Thank you for this tutorial. I plan to run through it soon!

    • @Roboflow
      @Roboflow  3 месяца назад +1

      Let me know how you liked it

  • @t_o_ny
    @t_o_ny Месяц назад +1

    Crushing it Piotr!!!!!

  • @tylerweirtube
    @tylerweirtube 3 месяца назад +1

    Amazing, thank you for recording this.

    • @Roboflow
      @Roboflow  3 месяца назад

      my pleasure!

  • @SBARTSTV
    @SBARTSTV 2 месяца назад +1

    Great!

  • @pratyushkumarkarna9666
    @pratyushkumarkarna9666 2 месяца назад +1

    wow. Even though I have not that much knowledge of ML, the video was great

    • @Roboflow
      @Roboflow  2 месяца назад

      I was trying really hard to make it easy to follow even to people without ML background.

  • @alvarozambrana9661
    @alvarozambrana9661 3 месяца назад +2

    Amazing!!

  • @brmgha
    @brmgha 2 месяца назад

    thank you from Egypt

  • @flasssss
    @flasssss 2 месяца назад +1

    this is hilarious huge project !

    • @Roboflow
      @Roboflow  2 месяца назад

      thanks a lot! so cool to see people are still excited about Football AI even several weeks after release

  • @slickvickmusic
    @slickvickmusic 29 дней назад +1

    Hi really enjoy your videos ! You mentioned at one point that detection takes approximately 1S, so we’d need to optimize the model to reach 30fps for realtime detection. To your knowledge, has anyone explored detection using previous frames’ detections as hints? We know people and objects typically don’t teleport so knowing a little bit about where it was and the direction they were last moving can help isolate the detection to a much smaller search space? Then periodically run the “larger” model to reset

  • @Eriiiiiiiick
    @Eriiiiiiiick Месяц назад +1

    VERY COOL SIRS and MADMANS

    • @Roboflow
      @Roboflow  Месяц назад

      I love the enthusiasm! 🔥

  • @AbhishekAgrawal-dv1id
    @AbhishekAgrawal-dv1id 3 месяца назад +2

    Good you cleared it out, never understood "soccer"! Lol.

    • @Roboflow
      @Roboflow  3 месяца назад

      Haha! I decided that important things need to be explained right at the beginning.

  • @ericjones7300
    @ericjones7300 2 месяца назад +1

    Outstanding video. Oh....and Go Barcelona!!! :-)

    • @Roboflow
      @Roboflow  2 месяца назад

      thank you very very much!

  • @antonzizic3483
    @antonzizic3483 3 месяца назад +1

    thank you very much for sharing this knowledge !

    • @Roboflow
      @Roboflow  3 месяца назад

      My pleasure!

  • @osamaelatfi2583
    @osamaelatfi2583 7 дней назад

    Great video!

  • @ingush1989
    @ingush1989 2 месяца назад +1

    God bless you brother

  • @GisleHoelAarhus
    @GisleHoelAarhus 2 месяца назад +1

    Thanks alot!! Greatly appreciate it

    • @Roboflow
      @Roboflow  2 месяца назад

      my pleasure!

  • @salahidin
    @salahidin 3 месяца назад +2

    It would be great to have this in real-time

    • @Roboflow
      @Roboflow  3 месяца назад +1

      There are 100% easy optimizations that can bring us closer to… 15 FPS. Going faster than this can be challenging :)

  • @VideoScopeAlpha
    @VideoScopeAlpha 3 месяца назад +2

    When training the initial model for player detection, how does the model distinguish between a player and a referee?
    - If the model's distinction is based on the color of clothing, will it still work if the clothing colors are changed?
    - For example, if referees typically wear yellow shirts, what happens if players in another match wear a similar color?
    - In some training annotations, I noticed that a person (possibly a coach) standing outside the field wearing black clothing was not labeled as a player and, therefore, is not detected (as expected). I'm curious how the model understands these differences.

    • @Roboflow
      @Roboflow  3 месяца назад +2

      VERY GOOD QUESTION! In general hard to tell how exactly does it work, but during data collection I tried really hard to include refs in different outfits - red, black and yellow. I think the model just learn that refs have outfits visually different than most of people on the field.
      As for refs on the sidelines, they have flags and I think this is how model knows, people one the sidelines without flags are not refs.

  • @fernandodutra3788
    @fernandodutra3788 3 месяца назад +1

    Really great content, congrats! May I ask why did you choose to detect the key points every frame instead of using optical flow, knowing there are many features in the video (incl the pitch) which are static?
    Additionally, how would you approach tracking of the ball in 3D if you wanted to have high accuracy for the ball position?

    • @Roboflow
      @Roboflow  3 месяца назад +1

      Cool questions. Correct me if I’m wrong but optical flow won’t take me all the way. It only shows me that „something moved there” but does not tell me what it is. So if I want to know where are my reference points it won’t be able to do it. Because it does not know what points are interesting to me. Second of all pitch is not really static. You see pitch all the time but only some part of it. And you need a solution that will tell you what part of pitch is it.
      I didn’t really thought deeply about what model would I use to support 3D ball detection. But I recently was playing with 3D keypoint detection models that gave me 3D coordinates of human pose. I’d start there. But I’m open to other ideas.

    • @fernandodutra3788
      @fernandodutra3788 3 месяца назад

      Thanks for the swift answer. What I thought with optical flow is that given an initial state (1st frame) we can use anchor points known to be static in the world in order to estimate how the camera is moving. With that you can calculate how points in one frame relate to the next. But you are right, this approach is very fragile because it relies on having a set of anchor points which are always visible in the footage.
      For the 3D ball trajectory, because we know the physics of the ball movement, I’d probably start with trying a Kalman filter. One model for when the ball is in the air and another one for when on the ground. Use ball size in pixels as an estimate of how far from the camera it is. This is evidently very noisy but hopefully the dynamics of the kalman filter would smooth the trajectory

  • @EdoardoResta
    @EdoardoResta 2 месяца назад +1

    Wow! Genius!!!!

    • @Roboflow
      @Roboflow  2 месяца назад

      Thanks a lot!

  • @PetreDiaconescu
    @PetreDiaconescu 3 месяца назад +4

    If tracking is lost in a frame for a player, then the next track_id that’s assigned to the same player is different, which makes it impossible to track the same player for the whole game. Is it possible in any way to fix this? Or even assign the jersey number as an alternative id?
    Great video btw

    • @Roboflow
      @Roboflow  3 месяца назад +1

      Jersey number assignment is a lot more complex task than it seems, so I would treat it as something extra and not a potential solution.
      At the end of the video I shortly talk about next steps in tracking - using ReID models or more advanced trackers like MASA. In short we need trackers that take into consideration object location but also its appearance.

  • @sinavahid5194
    @sinavahid5194 2 месяца назад

    youre a life saver

  • @bahwateengezeur7516
    @bahwateengezeur7516 2 месяца назад +1

    Amazing video! I was wondering how much features you could add ≠ how much more data can be extracted. Lets say you have competitions where besides goals / assists nothing is tracked, but I do have access to full matches. Would it be possible to for each player individual extract data using this particular software, shots on target, passes completed, interceptions etc?

    • @Roboflow
      @Roboflow  2 месяца назад

      Short answer is yes, but that project would need a lot more work to get there. The most problematic part is actually player tracking and avoiding tracker ID swaps. That can happen especially if you want to process whole video. Do you want to run it real time or process games offline?

    • @bahwateengezeur7516
      @bahwateengezeur7516 2 месяца назад

      @@Roboflow I believe offline would work best since it isn't always easy to gain access to full live matches of these types of competitions. To run it all automaticly would be a lot more work as well. If you have any ideas on how to realize this project I'd love to discuss it with you!

  • @TheBradleydwyer
    @TheBradleydwyer 3 месяца назад +1

    Nice video. Really enjoyed it.
    I don’t quite understand why we use SigLIP for the team ID vs using an additional class in the object detection model (“player team 1” vs “player team 2”). Is there some complicating factor that makes that not work well?

    • @Roboflow
      @Roboflow  3 месяца назад

      This is something that I clearly did not explained because you are not the first one to ask this question. So the problem is that every time different teams play. In one game red play against blue team. In different yellow against white team. There is no way you could annotate data in a way general enough you could apply it to any game in the future. Solution that I presented is general. And does not require you annotate all data with more info.

    • @TheBradleydwyer
      @TheBradleydwyer 3 месяца назад

      Ah that makes sense.
      Is soccer similar to other sports where the “away” team usually wears white/light jerseys and home wears dark/color jerseys? Wonder if home/away classes would be enough to generalize on

  • @rossanovinicius7373
    @rossanovinicius7373 2 месяца назад +2

    Basically I should create a new project for every team or new video I would like to analyze?

    • @Roboflow
      @Roboflow  2 месяца назад +2

      Hi! No. Everything can sit in a single project. Why do you think you need to split data?

  • @khoatrinh7825
    @khoatrinh7825 Месяц назад

    If we master in this type of analysis, what is a professional occupation we can get into in the sport/football industry?

  • @ErcoleBellucci
    @ErcoleBellucci 2 месяца назад

    Crazy tutorial, what are the specs of your pc?
    better local or cloud setup?

  • @Marc-up3gg
    @Marc-up3gg 2 месяца назад +2

    This wouldnt work very well without a high overhead viewpoint right? The visual noise of crowd and sideline players would botch the CV from working properly I assume?

    • @Roboflow
      @Roboflow  2 месяца назад

      Yup! We cover all important considerations at the end of the video. If you want to use ground-level cameras this problem becomes borderline unsolvable.

  • @kultura_pasa
    @kultura_pasa 2 месяца назад +2

    It is very cool! One question. I want the AI to count the passes and receptions of the ball between the lines by itself. I don't understand how to do this. How to write a condition

    • @Roboflow
      @Roboflow  Месяц назад

      I’m afraid it won’t ba a simple condition. To do it well, you’d need to calculate ball movement direction and speed and than use those conditions to detect ball being passed.

  • @thiagopereiradossantos588
    @thiagopereiradossantos588 2 месяца назад +1

    Nice thanks for sharing , but I have a question , I'd like to know if you use one model for each classe or unique model for detect all class during the game ?

    • @Roboflow
      @Roboflow  Месяц назад +1

      I use one model to detect ball, player, goalkeeper and referee.

  • @zakazaka
    @zakazaka 3 месяца назад +1

    00:00:49 - damn straight!

    • @SkalskiP
      @SkalskiP 3 месяца назад

      population of subscribers from Europe is increasing haha

    • @JasonLiu-w3v
      @JasonLiu-w3v 2 месяца назад

      @@SkalskiP You also got subscribers from China haha. In China, We call this sport 足球 which literally means football. 足 shares the same meaning with foot and 球 means ball.

  • @ALOKSHARMAMD
    @ALOKSHARMAMD 2 месяца назад +1

    oh wow, what a nice find. can you tell me what techniques is required to make this real-time assuming a 30fps input and same output? do i need to implement this in deepstream?

    • @Roboflow
      @Roboflow  2 месяца назад

      Stream processing is not the reason here. You’d need to train smaller architectures not YOLOv8x but YOLOv8s or m. But most importantly make embeddings calculation faster.

    • @ALOKSHARMAMD
      @ALOKSHARMAMD 2 месяца назад

      @@Roboflow thank you, i will try that my goal is to do live video feed processing. the concept is same where i need to capture keypoints and map it to a 2d map & mark trajectory but for a different project.

  • @knobico1337
    @knobico1337 2 месяца назад +1

    Great video!!
    I'm trying to put this project together based on your video, but I'm stuck because I haven't figured out exactly what TeamClassifier's predict() method does. I searched in the Colab code but was unsuccessful. Could you describe the exact code for that method?

    • @Roboflow
      @Roboflow  2 месяца назад

      All the code for TeamClassifier is here: github.com/roboflow/sports

    • @knobico1337
      @knobico1337 2 месяца назад +1

      @@Roboflow Thank you very much!!!!

    • @Roboflow
      @Roboflow  2 месяца назад

      @@knobico1337 pleasure!

  • @psalav
    @psalav 2 месяца назад +1

    I would really like if you can do something similar but with tennis!!

    • @Roboflow
      @Roboflow  2 месяца назад

      Tennis is 100% on my TODO list along with basketball. I just need to work on other projects in the meantime:/

  • @hideweapon1361
    @hideweapon1361 29 дней назад +1

    sir i tested model on other video but problem is cant detect main referee as referee but as player, also sometimes detect penalty spot as ball (this when track ball) what is the solution pls

    • @Roboflow
      @Roboflow  26 дней назад

      I mention problems like this at the end of the video. It all depends on specific football footage you want you use, but usually the solution is to expand dataset and add new images. Then retraining the model.

  • @Mesenqe
    @Mesenqe 2 месяца назад

    Thank you so much. Computer vision experts, what are you waiting, subscribe and like. :)

  • @mushafsibtain
    @mushafsibtain 2 месяца назад

    Thats an amazing video!! Is it possible that i can discuss you about my project personally and you can guide me how to do that thing? I would be so grateful..

    • @Roboflow
      @Roboflow  2 месяца назад

      Unfortunately not… I used to do it but now I get too many requests like this. It would be a full time job :/ sorry

  • @Rock_Film
    @Rock_Film 3 месяца назад

    Thanks Bro❤

  • @mrlike9051
    @mrlike9051 Месяц назад

    Thank you dude ! Visca barça

  • @felipemoura7461
    @felipemoura7461 3 месяца назад +1

    Thanks for the video. Fantastic. Is it possible to run in our own GPU, in WIN10 system?

    • @Roboflow
      @Roboflow  3 месяца назад +1

      It is possible to run it on your own GPU (100% if you have Linux). I’m not sure about the windows part. I did not installed anything on windows in 15 years. :/

  • @p.logesharavind3528
    @p.logesharavind3528 2 месяца назад +1

    You have created one custom model, with this model, will we able to use for other match videos ? for tracking

    • @Roboflow
      @Roboflow  2 месяца назад

      Model is open so you can use it. As for „will it work” I discuss it towards the end of the video.

  • @RanaUmar-m4c
    @RanaUmar-m4c 2 месяца назад

    Quick Question ! I'm working on a system. Some person on Reddit provide me with your football video that will help me build my project that is to count how many customers come into a retail store and also track employee activity, especially their working hours. One problem I’m facing is that the system assigns a new ID whenever it loses sight of a person, which throws off the customer count and causes issues with tracking employees too.
    Also, since the store uses multiple stationary cameras (unlike moving cameras covering whole feild), it gets tricky to keep track of the same person across all the cameras. How can I solve this issue, especially syncing the cameras to avoid assigning new IDs?

  • @venkateshs7539
    @venkateshs7539 26 дней назад

    First of all huge thank you ! but I cannot find the video with all the analytics it is only giving me a frame like in the video but I want the full video with analytics like u did, how can I get it? I cannot find it in the contents folder , it has only the sample data and input data

  • @estadisticamatematica8737
    @estadisticamatematica8737 3 месяца назад +1

    "What real application is it used for? I mean, what are the benefits of this? Thank you for the video!"

    • @Roboflow
      @Roboflow  3 месяца назад

      Real football and basketball teams use data like this to for examples trade players looking for this that suit their play-style the best. Another usecase could be data overlay during game broadcasts or automated referees.

  • @SababAdad
    @SababAdad 3 месяца назад +2

    Hi. Can you please tell me in which folder you're saving the output result video that you've shown in the tutorial?

    • @Roboflow
      @Roboflow  3 месяца назад +1

      If you run it in Colab, I save in `/content` which is the default output directory

    • @SababAdad
      @SababAdad 3 месяца назад

      @@Roboflow So, all the output videos that you've shown in the tutorial will be saved in '/content' folder, right?

  • @DikimanuCompany
    @DikimanuCompany 2 месяца назад +1

    Bro do a accident detection and alert system model using yolov8

  • @jeremykim1236
    @jeremykim1236 2 месяца назад +1

    incredible video! I copied your notebook and added a way to correct the ball tracking when the ball is in the air. Can I connect with you to discuss on Linkedin or twitter?

    • @Roboflow
      @Roboflow  2 месяца назад

      big if true! absolutely! what's your X handle?

    • @jeremykim1236
      @jeremykim1236 2 месяца назад

      it’s jeremy9k27 - I also replied to one of your threads on x with a screenshot of my results 👍

  • @sachinperera4230
    @sachinperera4230 2 месяца назад +1

    curious to know how the models would perform when the teams wear kits with similar colours?

    • @Roboflow
      @Roboflow  2 месяца назад +1

      This rarely happen as there are rules to prevent that. But we can test if you have any video we could use.

  • @jerryamoah1687
    @jerryamoah1687 2 месяца назад

    Hello Robo. I have some issues: TypeError: unhashable type: 'numpy.ndarray'. What do I do?

    • @Roboflow
      @Roboflow  2 месяца назад

      Looks like you use frames / crops as keys in Python dictionary. Is it happening in our code?

  • @FelipeArrudaMoura
    @FelipeArrudaMoura 2 месяца назад

    Thanks for the video. I am checking that, for some videos and some players, the IDs are changing between the teams, even very different teams' colors. Any tips to increase clustering performance?

  • @mihajloivkovski2694
    @mihajloivkovski2694 Месяц назад

    Hi, can you provide me the link from the first video you have published about Football AI on this channel. You mentioned that is published 2 years ago?

  • @raphaild279
    @raphaild279 2 месяца назад +1

    Can you tell me how the yolov8 architecture works? I would like to ask how to train the model to recognize circles and output, instead of the width and height of the bounding quadrangle, the x/y location and radius.

    • @Roboflow
      @Roboflow  2 месяца назад

      we have dedicated YOLOv8 tutorials on this channel; did you have a chance to watch it?

    • @raphaild279
      @raphaild279 2 месяца назад

      @@Roboflow Yes, and what about the second question. who can help?

  • @pysoft
    @pysoft 3 месяца назад

    🔥🔥

  • @TalebTuradi
    @TalebTuradi 2 месяца назад

    Great job.I have implemented the code how can I save the video to view the shot from the match

    • @Roboflow
      @Roboflow  2 месяца назад

      We explain saving and downloading video from Google Colab in the video.

  • @최일웅-c7w
    @최일웅-c7w Месяц назад

    At which point do I have to start watching to skip over the training part? I am getting confused because the material is very difficult to understand. Also have you provided all the files and resources to start off from that point?

  • @neerajr1582
    @neerajr1582 3 месяца назад +1

    I am currently working on a project to identify players using their jersey numbers. I trained a YOLO model to detect players, another YOLO model to detect the jersey region, and a third model to predict the jersey number. After making predictions, I swap the track ID with the detected jersey number. However, the issue I'm facing is that the track ID keeps changing throughout the video. How can I maintain the detected jersey number consistently throughout the video?

    • @Roboflow
      @Roboflow  3 месяца назад +2

      Awesome project! Would love to take a look at some visualizations from project like this! I’m currently working on tracks stitching. That would allow you to maintain same tracker ID.

    • @neerajr1582
      @neerajr1582 3 месяца назад

      @@Roboflow Waiting for a good outcome

  • @froukehermens2176
    @froukehermens2176 3 месяца назад +1

    Instead of the embeddings I have used image classification for a different but related task.

    • @Roboflow
      @Roboflow  3 месяца назад +1

      Let me explain why I went with embeddings and not classification: problem with football is that every game is different. In one game you have white vs red. In other you have blue vs yellow. So I’d need to have separate classes for all of them. Embeddings is general solution. It doesn’t matter who plays. And it does not require annotation.

  • @ניסאביטן
    @ניסאביטן 2 месяца назад +1

    Hi man, great tutorial! I would like to ask you a few questions. How can I contact you? Tnx!

  • @DavidSantos-ms2bz
    @DavidSantos-ms2bz 2 месяца назад +1

    Thank you so much for stating the sport's correct name hahaha

    • @Roboflow
      @Roboflow  2 месяца назад

      Haha oh that was the easiest part of making this tutorial

  • @user-wx6hw8hm6q
    @user-wx6hw8hm6q 2 месяца назад +1

    Hi quick question, so I'm trying to use the best.pt model from your yolov5 + bytracking video and it's not really tracking my own dataset, does the best.pt model you made only work on the dataset from kaggle?

    • @petarpetkovic5275
      @petarpetkovic5275 2 месяца назад +1

      Hi, I will try to answer on this question, best.pt is yolo v8 model fine-tuned on specific kaggle dataset as he mentioned, so the best.pt model is output from training showed in 10:00. If you want to use the same video, this model should work fine, but if you want specific football game, you should fine-tune model on that game. You can label data on roboflow with label assist tool and then fine-tune model on your dataset. There is plenty tutorials about that on youtube, check it out!

    • @Roboflow
      @Roboflow  2 месяца назад

      hi all :) I cover this topic towards the end of the video. The distribution of train dataset and data you run the model on should be similar. So if I use TV footage and you use for example video made with phone standing on the sideline, the model would need to be fine-tuned.

  • @QuarkLearns-in7uc
    @QuarkLearns-in7uc 2 месяца назад +1

    I'm reviewing the scripts, and I've noticed that some of your Collab codes don't appear in main.py. Am I making things too complex?
    I'm little bit confused bc of that

    • @Roboflow
      @Roboflow  2 месяца назад

      The code in script might be vastly different than the code in colab. I recommend Colab as the reference.

  • @bero8062
    @bero8062 Месяц назад +1

    output video does not show up inside /content or any other directory in google colab.

  • @MuhammadMominRauf
    @MuhammadMominRauf 2 месяца назад +1

    Recently i started a similar project but my main concern is real-time analysis
    is there any way i can connect with you either email or linkedin

    • @Roboflow
      @Roboflow  2 месяца назад

      Just leave comment under my LinkedIn post and I’ll invite you

  • @rithikkumar7683
    @rithikkumar7683 3 месяца назад +1

    using this as base knowledge in which fields we can apply this for a day2 day life prob?

    • @SkalskiP
      @SkalskiP 3 месяца назад

      the most obvious choice is traffic analysis in large-area stores; people want to know how customers move, where do they stop

    • @rithikkumar7683
      @rithikkumar7683 3 месяца назад

      @@SkalskiP thank you sir

  • @MiltonTouchdown
    @MiltonTouchdown 20 дней назад

    I encountered this error: "len(bbox) does not match len(segments)" in the dataset for the football-field-detection Computer Vision Project on "2024-08-19 7:51pm". I had to use de previous version (v14). Saludos!

  • @nafiserfan3576
    @nafiserfan3576 Месяц назад +1

    I encounter an error while trying to continue deploying the trained model with the current version of ultralytics (8.2.103) instead of the said dependency (8.0.196). Suggestions?

    • @Roboflow
      @Roboflow  Месяц назад

      Hi! It’s just a warning. No need to worry about it. Just confirm.

    • @nafiserfan3576
      @nafiserfan3576 Месяц назад

      @@Roboflow leads to an error not a warning for me: "404 Client Error: Not Found for url: ..."

    • @ivancoppola01
      @ivancoppola01 Месяц назад +1

      @@nafiserfan3576 Same for me

  • @ArqamAnsari-v8j
    @ArqamAnsari-v8j Месяц назад

    AttributeError:module 'numpy' has no attribute 'float'.
    Getting this error while executing last chunk of code

  • @benephr
    @benephr Месяц назад

    Hi, can I input a video file of a full match and let it generate a video containing all touches by a certain player?

  • @DiffQ_Bro
    @DiffQ_Bro 2 месяца назад +1

    Can you detect someone taking a shot?

  • @2kceltics
    @2kceltics Месяц назад

    Is there a similar tool for basketball games analysis ?

  • @ParkiOfficial
    @ParkiOfficial 3 месяца назад +1

    is it possible to make a pass counter for both teams ?

    • @SkalskiP
      @SkalskiP 3 месяца назад +1

      yup! that would be a natural extension of that project, we know the accurate ball path so it should not be overly complicated

  • @miquelarisa
    @miquelarisa 5 дней назад

    I’m currently working on a football player tracking algorithm using computer vision. I’ve been following a tutorial and testing it with a specific video that has a tactical camera angle (recorded from a high and static perspective).
    I’d like to test my algorithm on more videos with similar recording angles to validate its performance. Does anyone know where I can find such videos?

  • @yunqiguo9100
    @yunqiguo9100 3 месяца назад +1

    Very nice tutorial! Hope to see the parts with Player ReID!

    • @Roboflow
      @Roboflow  3 месяца назад +1

      Judging by the frequency of my work on football AI it will come in 2 years. Haha I hope not. ReID is really something I want to do at some point.

  • @thewatcher4940
    @thewatcher4940 2 месяца назад +1

    After training when I run: %cd {HOME}
    Image(filename=f'{HOME}/runs/detect/train/confusion_matrix.png', width=600)
    I got error
    FileNotFoundError: [Errno 2] No such file or directory: '/content/runs/detect/train/confusion_matrix.png'
    what is wrong ?

    • @Roboflow
      @Roboflow  2 месяца назад

      Is it possible that you interrupted your training somehow and restarted it once again?

    • @thewatcher4940
      @thewatcher4940 2 месяца назад +1

      ​@@Roboflow Yes you had right. This is result of my lack of knowledge of Roboflow environment, but I still learn.😅 Thank you for clue

    • @Roboflow
      @Roboflow  2 месяца назад

      @@thewatcher4940 uuuuf! I was scared for a second haha

  • @DomiSiki
    @DomiSiki 2 месяца назад +1

    Can you calculate distance covered for each player?

    • @Roboflow
      @Roboflow  2 месяца назад +1

      Yup. At this point you have everything you need to calculate distance

    • @DomiSiki
      @DomiSiki 2 месяца назад

      @@Roboflow perfect.
      Would this work for futsal?
      This could be great app.
      Once finished, what you need to do, upload the video from the game for example? Would that be enough?