Skip to content

PiotrZb/Video-cutting-script

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛠️ Video-cutting-script 🛠️

An integrated tool that allows you to create databases for training the YOLO algorithm.
Features:

  • videos downloading
  • frames extraction
  • frames labeling

Directory tree 🗃️

.
└── Video-cutting-script/
    ├── Data/
    │   ├── Downloads/
    │   ├── Frames/
    │   ├── Labels/
    │   ├── Res/
    │   └── Videos/
    ├── src/
    │   ├── ConsoleGui/
    │   │   ├── cmenu.py
    │   │   └── functions.py
    │   ├── Pages/
    │   │   ├── __init__.py
    │   │   ├── CutWindow.py
    │   │   ├── DownloadWindow.py
    │   │   ├── FrameLabellingWindow.py
    │   │   └── Menu.py
    │   ├── __init__.py
    │   ├── gui.py
    │   ├── pathmanger.py
    │   └── settings.py
    ├── main.py
    ├── setup.py
    ├── README.md
    └── requirements.txt

Installation ⚙️

MacOS (ARM silicon)

You will need to install Rosetta2 emulator for the new ARM silicon

$ /usr/sbin/softwareupdate --install-rosetta --agree-to-license

After installing Rosetta2 above you can then use the Homebrew cmd and install Homebrew for ARM M1 chip:

$ arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Install Tkinter using Homebrew

$ arch -x86_64 brew install python-tk

MacOS (Intel)

Install Homebrew

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

You will need to install Tkinter using Homebrew

$ brew install python-tk

Requirements ⚙️

To install all required libraries, simply call following command in your enviroment:

pip install -r requirements.txt

Usage 👈

Paste the links to the url_list.txt file in the "Res" folder.
Each link should be on a separate line in the text file.
The videos will be saved in the "Downloads" folder.

Use video cutter module to extract frames from downloaded videos.
Thanks to the preview, you will be able to easly select interesting fragment.
If you want, you can add a prefix to the title of the extracted frames.

Labeling module allows you to create YOLO labels for exracted frames.
To make thinks easyer we added following keybindings:

  • previous frame A
  • next frame D
  • save labels S
  • clear bboxes C

GUI 🎨

  • Menu 📜


image


  • Video downloading module ⬇️


image


  • Video cutting module ✂️


image


  • Frames labeling module 🏷️


image


Contibutors 🤝

License 📄

License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages