SkalskiP / make-sense

Free to use online tool for labelling photos. https://makesense.ai
GNU General Public License v3.0
3.12k stars 517 forks source link

Video integration #348

Open H-Tudor opened 9 months ago

H-Tudor commented 9 months ago

The present tool has great capabilities but cannot be used with video files which is a big downside.

The way I see this issue, the application should be able to accept video files like .mp4 and allow you to annotate each frame (with a drop frame button to indicate that the given frame should be ignored at export) and when exporting it should return each frame of the video/s named video_file_name-frame_id in jpg or png format depending on the user selection

How I (a python developer) would approach this issue is to create a branch in the flow when you upload a file and if the file is in a video format, call a python CV2 script (or any other that knows how to process images and videos) and for each frame in each video and creates an new upload file instance named {video_file_name}_{frame_idx} and after processing the videos it shows {x} images uploaded where x = total number of frames across all files, videos and images

Given how to application is constructed, and the fact that the images are not uploaded to the server, I think (correct me if I'm wrong) that they are stored in RAM or other temp memory cache, thus a limit of total images should be in place. Another possible downsize would be image resolution (which is already a formulated issue).

github-actions[bot] commented 9 months ago

👋 Hello @H-Tudor, thank you for your interest in make-sense - free to use online tool for labelling photos! 🏷️

🐞 Bug reports

If you noticed that make-sense is not working properly, please provide us with as much information as possible. To make your life easier, we have prepared a bug report template containing all the relevant details. We know, we ask for a lot... However, please believe that knowing all that extra information - like the type of browser you use or the version of node you have installed - really helps us to solve your problems faster and more efficiently. 😉

💬 Get in touch

If you've been trying to contact us but for some reason we haven't responded to your issue yet, don't hesitate to get back to us on Gitter or Twitter.

💻 Local setup

# clone repository
git clone https://github.com/SkalskiP/make-sense.git

# navigate to main dir
cd make-sense

# install dependencies
npm install

# serve with hot reload at localhost:3000
npm start

To ensure proper functionality of the application locally, an npm 8.x.x and node.js v16.x.x versions are required. More information about this problem is available in the #16 issue.