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.13.0.tar.gz (28.9 kB view details)

Uploaded Source

Built Distribution

bbo_labelgui-0.13.0-py3-none-any.whl (30.9 kB view details)

Uploaded Python 3

File details

Details for the file bbo-labelgui-0.13.0.tar.gz.

File metadata

  • Download URL: bbo-labelgui-0.13.0.tar.gz
  • Upload date:
  • Size: 28.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for bbo-labelgui-0.13.0.tar.gz
Algorithm Hash digest
SHA256 adfeade8cdd5098bc9287e6933c4a9ffa074b9d59d6d5aabfa6618e5bf1e5459
MD5 d585222c56c527991f193a9232fd58b9
BLAKE2b-256 b20325a4d2af62ac9b01212028bed4b0386254bbb0ef09e2771dfecba17d9d09

See more details on using hashes here.

File details

Details for the file bbo_labelgui-0.13.0-py3-none-any.whl.

File metadata

File hashes

Hashes for bbo_labelgui-0.13.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3390d5671f30771251460f3703bd78b3c9a0fb4a09d104ffafc32fe46ec302b2
MD5 2a59c3e808a5d5912f6812768bd5903d
BLAKE2b-256 92be14fb169c9e8cf8c19b1f815437142e5ac6d5f55e0844758e39076f3f829e

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