Video Data Processing with Python and OpenCV

2024 ж. 29 Сәу.
61 071 Рет қаралды

In this video tutorial you will learn how to work with video data in python and openCV. Video processing and data analysis has many applications in machine learning, including object detection, pose estimation, and object tracking. Before you can run machine learning on videos you first need a good understanding of how to read and write video files using python and openCV. This tutorial walks through the basics, step by step, with some examples.
Notebook used in this video: www.kaggle.com/code/robikscub...
Timeline:
00:00 Video Data & Python
01:08 What is Video Data?
04:08 Getting Setup
06:19 Converting Videos
08:23 Displaying Video
09:13 Video Metadata
11:32 Pulling Images
17:31 Add Annotations
25:48 Saving processed video
31:33 Summary
My other videos:
Speed Up Your Pandas Code: • Make Your Pandas Code ...
Speed up Pandas Code: • Make Your Pandas Code ...
Intro to Pandas video: • A Gentle Introduction ...
Exploratory Data Analysis Video: • Exploratory Data Analy...
Working with Audio data in Python: • Audio Data Processing ...
Efficient Pandas Dataframes: • Speed Up Your Pandas D...
* KZhead: youtube.com/@robmulla?sub_con...
* Discord: / discord
* Twitch: / medallionstallion_
* Twitter: / rob_mulla
* Kaggle: www.kaggle.com/robikscube
#python #computervision #datascience

Пікірлер
  • This video saved my week-end ! Thank you so much for it !

    @VauRDeC@VauRDeC10 ай бұрын
  • Thank you! You explained very clearly on the code and how you did it. ❤

    @user-lt2px3ft4p@user-lt2px3ft4p2 ай бұрын
  • it was beautiful watching a quaestion get so quickly converted quantitaive analysis that is easily visualized.

    @linuxmill@linuxmill Жыл бұрын
    • Glad you liked it. Thanks for watching and let me know if there is anything I can do better.

      @robmulla@robmulla Жыл бұрын
  • Thank you for the tutorial! I'm interested in processing and analyzing sport video using Python. Google brought me here. I like the presentation in kaggle. Keep up your good work. I will check out all your videos!

    @LeoSo@LeoSo Жыл бұрын
    • Thanks so much for the feedback. I’m glad you found this helpful. Please share the link with anyone else you think might find it helpful.

      @robmulla@robmulla Жыл бұрын
  • Love your work as always. You should do a follow up video on using a neural network to do the labeling. I imagine it would just be some sort of CNN that outputs the coordinates for the box using the bounding pixels of the detected shapes.

    @DataCraftsman@DataCraftsman Жыл бұрын
    • Thanks! Great minds think alike. My next video will be a quick introduction to object detection using yolov5 and I run it on this dataset.

      @RobertMulla@RobertMulla Жыл бұрын
    • @@RobertMulla Awesome! Looking forward to it.

      @DataCraftsman@DataCraftsman Жыл бұрын
  • Hey thanks for the very insightful video, if I wanted to train a model with video data, do you have any recommendations on the simplest way to generate the csv file of labels and data for the segmented objects we want to annotate?

    @MrEck95@MrEck958 ай бұрын
  • Our Data professor is back !!

    @pavlostsoukias8147@pavlostsoukias8147 Жыл бұрын
    • Haha. I'm just trying to create content about things I find interesting and I hope people will learn from!!

      @robmulla@robmulla Жыл бұрын
  • Great explanation! Keep it up 👍

    @sharau.99@sharau.9910 ай бұрын
  • Very well done! Thank you for making this video.

    @vaijrb@vaijrb Жыл бұрын
    • Glad it was helpful! If you know of anyone who might learn from it please think about sharing the link.

      @robmulla@robmulla Жыл бұрын
  • This seems like what I need to get rid of flickering in my video! First I'd need to automate detecting a completely black frame (responsible for the flickering) and then copy paste the nearest valid frame (one that isn't black) onto the black frame. Wish me luck :)

    @scullyy@scullyy Жыл бұрын
  • Great work. Nice perform. Many thankss for sharing!

    @ThanhHa-zo7lp@ThanhHa-zo7lp8 ай бұрын
    • Many thanks!

      @robmulla@robmulla8 ай бұрын
  • Hi Rob I am New to the video processing and the video is very helpful. I wondering that how did you get the csv file for video so that category of the images could be built. I need to use this method to create the labels. I am using Wowza streaming server to stream the video to the analytics application where i have to capture the stream & read the stream. I am stuck at category of objects. please let me know how it can be used

    @nisheethsrivastava8345@nisheethsrivastava83458 ай бұрын
  • This is absolutely a great tutorial for beginners. Learnt a lot and the way you explain is soo perfect. I'd definitely share it with my friends. Can you if possible make video on complete kaggle project walk through and how you approach the problem?

    @vivekpadman5248@vivekpadman5248 Жыл бұрын
    • Awesome, thank you for the feedback. Please do share it with friends and/or on platforms that you think people might learn from it. I actually recorded a video walking through a kaggle competition but never released it. I do have a competition starter guide video you should check out.

      @robmulla@robmulla Жыл бұрын
  • Wow amazing thank you

    @user-bm4vj2jr9e@user-bm4vj2jr9eАй бұрын
  • Thank you for this exercise, it was very helpful but please how am i supposed to do if i don't have labels datasets or how can i buid it? thank you

    @nkrumahminsinga1541@nkrumahminsinga15419 ай бұрын
  • I haven't watched it but I already like it

    @CarolinaMunoz-vy3ni@CarolinaMunoz-vy3ni Жыл бұрын
    • Thanks Carolina! Let me know if you have any feedback once you have a chance to watch.

      @robmulla@robmulla Жыл бұрын
    • @@robmulla thanks!

      @CarolinaMunoz-vy3ni@CarolinaMunoz-vy3ni Жыл бұрын
  • Could you give us the link of the video sir? And thanks for this video ✅

    @ghadadodo3865@ghadadodo38657 ай бұрын
  • Thank you so much sir. It would be great help if you release some videos on Action Recognition, Detection , Classification in video

    @vijayalaxmiise1504@vijayalaxmiise1504 Жыл бұрын
    • Noted! Have you seen my video on object detection?

      @robmulla@robmulla Жыл бұрын
  • So did someone go in manually and identify the labels and draw the frames?

    @Az-jt2zp@Az-jt2zp7 ай бұрын
  • Me too on my first page man, good luck

    @pleasedont2270@pleasedont2270 Жыл бұрын
    • Love it. Hopefully it shows up for more people!

      @robmulla@robmulla Жыл бұрын
  • Where did you got the annotation label dataset CSV?

    @upendrad6081@upendrad608126 күн бұрын
  • Ooooh, this appeared on my KZhead front page, are you gonna finally pop off?

    @wooprime3482@wooprime3482 Жыл бұрын
    • Fingers crossed! 😅 - Thanks for commenting and (hopefully?) watching too.

      @robmulla@robmulla Жыл бұрын
  • Thanks for your amazing work sharing. I have a question about annotation. As far as I know, you have mentioned that the frame index(frameIndex) should be transformed with respect to the video frame. So you set the value as 11.9 . I want to know how to calculate the value. Thanks in advance. + I am just wondering if you have any plans of "fiftyone" package which is also an interesting toolkit for vision datsets.

    @yoonseokheo9487@yoonseokheo9487 Жыл бұрын
    • Not sure I exactly follow your question. But I need to look into that package and might make a video.

      @robmulla@robmulla Жыл бұрын
    • ​@@robmulla Thanks for answering my comment, and let me clarify my question. In the video(19:08), You add another column named "video frames" by transforming the column named "frameIndex" multiplied by 11.9. I am confused about the reason for multiplying the value(11.9) and how the value is set up.

      @yoonseokheo9487@yoonseokheo9487 Жыл бұрын
  • Legend has it he's still getting to the fun part. (alright and now to the fun part....3 min later....alright and now to the fun part) jokes. awesome video

    @andrewl.4277@andrewl.42777 ай бұрын
  • Hi, i am looking for some libraries or even frameworks on how i can find graphical items on my screen, like you can do in Auto it. E.G. if you play a video game and you want to automate pressing buttons or keys. I did it in the past in Auto It but I don't like Auto it that much and would like to do the same in Python maybe. Or even Java or C#. Is it the same as object tracking? Is OpenCV the right library for that? My problem is, it is difficult for me to find the correct documentary or tutorials because the whole topic is quite new for me and i don't know all the terminology. I am also not english, i can speak english very well, but it makes researching more difficult. Could you give me some hints on what i have to look for? It is not object tracking in video or images, it should me tracking from screen capturing. I would like to do lots of stuff with it just to learn it. Maybe something like a simple bot who can play a fighting game or a click bot for simple games. Just to learn the basics.

    @fenfire3824@fenfire38244 ай бұрын
  • What are the parameter sizes for width and height? Seems arbitrary you choose 500 or 700. Why not 5000? What does the number refer to. I have the same question for matplotlib plot sizes.

    @RichardGreco@RichardGreco Жыл бұрын
    • Great question. I think the height and width you are referring to is with the IPython display module. I found the documentation about it and this value just relates to the html height and width: github.com/ipython/ipython/blob/master/IPython/core/display.py#L1109-L1115 I believe this is just the number of pixel values displayed in the website. I might have not been clear about it, but this is different than the actual video image resolution, it's only for displaying the video in the notebook. Hope that helps!

      @robmulla@robmulla Жыл бұрын
    • @@robmulla Thank you. You were clear about the actual video resolution. I thought the answer would have been more arcane, but as always, the answer is in the documentation!

      @RichardGreco@RichardGreco Жыл бұрын
  • How to find videos full RGB values

    @maxy9095@maxy9095 Жыл бұрын
  • I can know if Vehicle is empty or not by camera in paython

    @mohammadkheder8994@mohammadkheder89947 ай бұрын
  • you can't thread the rectangles?

    @stephenkolostyak4087@stephenkolostyak40879 күн бұрын
  • Hi Thank you for the great video. Total frames is 2393. On each 100 frame you displayed 1 image. That s why you have 2393%100=24 images If i want to extract 30 images I should do 2393%80 Is it true?

    @aomo5293@aomo5293 Жыл бұрын
    • I think you might be right now I’m not completely sure.

      @robmulla@robmulla Жыл бұрын
    • @@robmulla thank you.

      @aomo5293@aomo5293 Жыл бұрын
  • I live in that neighborhood!!! So weird

    @jackkelly4277@jackkelly4277 Жыл бұрын
  • Impoet does not work in window command line. Where are you entering the import statements in Windows?

    @ChezChicago@ChezChicago Жыл бұрын
    • Import? I’m using Linux. But you could try in colab or a Kaggle notebook.

      @robmulla@robmulla Жыл бұрын
    • input_file = ‘.\\ANYFILE.mov’ ## Actual file name subprocess.run([‘ffmpeg’,’-i’,input_file,’-qscale’,’0’, ‘026c7465-309f6d33,mp4’]) ERROR: Traceback (most recent call last): File "", line 2, in File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.2544.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 488, in run with Popen(*popenargs, **kwargs) as process: File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.2544.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 800, in __init__ restore_signals, start_new_session) File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.2544.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 1207, in _execute_child startupinfo) FileNotFoundError: [WinError 2] The system cannot find the file specified

      @ChezChicago@ChezChicago Жыл бұрын
  • I did nt understand how it recognises the objects

    @SiliconSchematics@SiliconSchematics9 ай бұрын
  • I have a genuine doubt.....how do you know each and every code and you run every one of them without any errors....how did you learn coding in such a manner?

    @anuranjith2002@anuranjith20027 ай бұрын
    • Ever heard of video editing

      @sriram-xp5sg@sriram-xp5sg2 ай бұрын
  • AttributeError: module 'cv2' has no attribute 'cv2'

    @igorekudashev@igorekudashev Жыл бұрын
    • What version of cv2 are you running? I think the imports changed in one of the releases.

      @robmulla@robmulla Жыл бұрын
    • Try to use remove one cv2 inside the get function like cap.get(cv2.CAP_PROP_FRAME_COUNT)

      @phillipchananda@phillipchananda Жыл бұрын
  • how to label annatations in csv file

    @anilkarabhari8161@anilkarabhari816111 ай бұрын
    • Same question. How he got the CSV?

      @upendrad6081@upendrad608126 күн бұрын
  • how do you make it look like a movie?

    @magnuswootton6181@magnuswootton6181 Жыл бұрын
    • Sorry, I'm not understanding your question.

      @robmulla@robmulla Жыл бұрын
  • No pytesseract used here

    @newstodayyt1@newstodayyt19 ай бұрын
    • I have a video about detecting text in images where I use it!

      @robmulla@robmulla9 ай бұрын
    • @@robmulla nope do video ocr video pls

      @newstodayyt1@newstodayyt19 ай бұрын
  • Is there any way to install OpenCV through conda-forge? That's what I mainly use instead of Pip

    @jl2696@jl26962 ай бұрын
KZhead