Skip to main content

Imaging Client GUI for manual classification

Project description

Client Graphical User Interface

This client GUI is used for manual imaging target classification through the BYU AUVSI imaging server.

Setup

End-user

If you just want to use the client to classify images, and don't plan on doing any development with it, here's how you can set it up.

Ubuntu:

sudo apt install python3-pip python3-tk
pip3 install byu-auvsi-imaging-client

And to run you can simply enter:

./.local/bin/img_gui

You may also consider adding ~/.local/bin/ to your PATH:

export PATH="$HOME/.local/bin:$PATH"

Development

To develop and contribute to this gui, clone the imaging repository.

This gui was built with tkinter in python3 and relies on a few packages

sudo apt install python3-tk python3-tk
./setup/dev_setup.sh

Use

For development you should run the gui in its local directory:

cd ...../src/imaging/client
python gui.py

If installed via pip, simply run it as a script:

./~/.local/bin/img_gui

Sub Functions

This gui is built with with a tkinter tab framework. Each tab is initialized at startup which creates each container label and widget on each tab. Only one tab runs at a time.

lib/client_rest.py contains all functions that interact with the server
lib/tabX.py contains the functions for tab X
lib/tab_tools.py contains helper functions used by multiple tabs

Releasing on Pypi

Travis takes care of most of the heavy lifting when you want to release a new version of the gui onto pip/Pypi. In order to release a new version, you need to do two things:

  1. Update the VERSION variable in client/setup.py to whatever the new version is going to be called. If you dont do this, the new code will NOT be uploaded onto Pypi!

  2. Update the self.version_num at the top of the file client/lib/tab0.py to display on the gui the correct current version number.

  3. Create a release tag on github that matches the VERSION. (Goto Releases->Create a new Release). Once a commit is tagged as a release, Travis will kick off and build deploy the current code to PyPi and thus to pip.

Future Updates

The header of each file contains possible future improvements

Project details


Download files

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

Files for byu-auvsi-imaging-client, version 0.1.5
Filename, size File type Python version Upload date Hashes
Filename, size byu_auvsi_imaging_client-0.1.5-py3-none-any.whl (240.1 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size byu-auvsi-imaging-client-0.1.5.tar.gz (177.4 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page