Annotatr is a tool for creating geometric feature annotations for videos. It was created as part of a project about detecting eye features using deep neural networks and as such is still very much a work-in-progress. Right now the most important features are
- Loading/saving annotations to JSON-files
- Editing annotations using either the keyboard or direct input
- Each annotation is organised in "tracks" describing a specific property/feature for the duration of the video
- Currently points, ellipses, and rectangles are supported
- Basic copying functionality
- Easy fine-grained control of the video on a single-frame basis
- Clone this repository to your computer
- Open a terminal and go to the 'client' directory
- Run
npm install
- Just accept default settings for Semantic UI
- Cd into the semantic directory
- Run
gulp build
- Open a terminal in the 'client' directory and type
yarn start
- Open a terminal in the 'server' directory and type the following
export FLASK_APP=server.py
flask run
- The application is now ready at localhost:3000
The editor uses so-called trackfiles for storing the annotations. It's just JSON and has the following form:
{
"length": 5000,
"video_resolution": {
"width": 720,
"height": 1280
},
"tracks": [
{
"name": "eye_left",
"type": "inscribed_circle",
"data": [
]
}
]
}
Processing is a data processing framework developed specifically for computer vision purposes. It supports a wide array of transformations on trackfiles as well as videos and images and is purpose-built for easy dataset creation.