Skip to main content

GUI for guided data labeling

Project description

BBO-labelgui

GUI for guided data labeling

Installation

(You do not need to clone this repository.)

  1. Install Anaconda
  2. Start Anaconda Prompt (Windows) / terminal (linux) and navigate into repository directory
  3. Create conda environment conda env create -f https://raw.githubusercontent.com/bbo-lab/ACM-traingui/master/environment.yml

Update

  1. Start Anaconda Prompt (Windows) / terminal (linux) and navigate into repository directory
  2. Update with conda env update -f https://raw.githubusercontent.com/bbo-lab/ACM-traingui/master/environment.yml --prune.

Running

  1. Start Anaconda Prompt (Windows) / terminal (linux) and navigate into repository directory
  2. Switch to environment conda activate bbo_acm-traingui
  3. Run with python -m labelgui [options ...]

Options

Labeling mode

Run with python -m labelgui [base data directory]. This starts a GUI in drone mode, for the use by assistants with limited options to influence how the program runs and were it saves. This expects the following file structure:

[base data directory]/pose/data/users/{user1,user2,...}/labeling_gui_cfg.py
[base data directory]/pose/users/

{user1,user2,...} will be presented in a selection dialog on startup. Marking results will be placed in [base data directory]/users/

Check mode

Run with

python -m labelgui [directory of labels.npz] --check [bbo_calibcam calibration npy] # to use specified npy or
python -m labelgui [directory of labels.npz] --check [labeling_gui_cfg.py folder] # to use standardCalibrationFile from labeling_gui_cfg.py or
python -m labelgui [directory of labels.npz] --check '-' # or
python -m labelgui [directory of labels.npz] --check # to use backup labeling_gui_cfg.py in labels.npy folder. (Will often fail due to different paths between checker und labeler, as relative pathes are resolved, here).

This gives sorted text output of 3d and reprojections errors. Reporjection errors above 5-10px usually indicate errors in labeling and respective frames have to be checked.

Join mode

Run with python -m labelgui [configdir of ACM-dlcdetect] --check [multiple directories containing labels.npz files] [--strict]. This joins all marked labels in the labels.npz files into the labels.npz file in the dlcdetect configuration. Marked labels overwrite existing labels framewise.

--strict only merges frames where all cameras have marked points.

Compile to exe

  1. conda activate bbo_acm-traingui.
  2. Install pyinstaller: `pip install pyinstaller.
  3. If present, empty dist/ dirctory.
  4. pyinstaller --onefile traingui.py.
  5. Distribute exe file in dist/ folder.

Note: It might be necessary to remove mkl: conda install -c conda-forge nomkl.

TODO

  • Document config
  • Document sketch file (2d sketch of animal. If not presented, 3d wireframe is shown instead)
  • Document model file

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bbo_labelgui-0.17.1.tar.gz (28.3 kB view details)

Uploaded Source

Built Distribution

bbo_labelgui-0.17.1-py2.py3-none-any.whl (30.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file bbo_labelgui-0.17.1.tar.gz.

File metadata

  • Download URL: bbo_labelgui-0.17.1.tar.gz
  • Upload date:
  • Size: 28.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.2

File hashes

Hashes for bbo_labelgui-0.17.1.tar.gz
Algorithm Hash digest
SHA256 fb66310918091e82e841438d8bb7dcc14b5ab8e03f6905b833c6494fc57f9539
MD5 5f0323ac51c8c6b6aeb555f819088c9b
BLAKE2b-256 69ee5ca3b0b3ffc6c09c1d005bf7b504f2155297f9900389b26cc1e74b15412f

See more details on using hashes here.

File details

Details for the file bbo_labelgui-0.17.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for bbo_labelgui-0.17.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9ef3c937b1158fb9fd3d7d0ad81cbecc52ec08abf25ce6482949e8252f4961c8
MD5 82c108b153faf417034c38f84c4e4242
BLAKE2b-256 03c60776731a14f24ff004cfe58951f9ddbda57d90f3a4df61a9790dae09f627

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page