/Geo-Image-Viewer

A project that groups dumping-site locations based on geotag metadata of images

Primary LanguageJava

Geo Image Viewer

This project was originally created for Ghana to help them categorize and locate their dumpingsites, which unfortunately can be found everywhere in the country. You will see this at some places in the app (some things are labeled "dumpingsite" instead of "waypoint", you can choose a dumpingsity type, ...). But of course you can also use this project to categorize other coordinates from pictures into locations.

Features

  • import (folders with) images by dragging and dropping them onto the map
  • any errors while uploading images are indicated
  • change map representation (Default, OSM, Satellite, Hybrid)
  • change app behavior in the settings menu
  • view all dumpingsites with their information in a table
  • get information about one location on the sidebar panel
  • zoom and move the map
  • move the waypoints, the app will dynamically update the coordinates
  • inform yourself about the features in the tutorial
  • system for logging errors while importing images
  • start map and import images via console
  • activate/deactivate logging via console
  • the app saves the state of itself when a user closes it, so no information is lost if you open the app the next time
  • load map via an api
  • images are grouped to dumpingsites
  • take a screenshot of the map without the UI

Usage

Drag and drop pictures with GPS-Information from your local explorer onto the map, the program will show you where they were taken.

Command line arguments

shortcut option argument 1 description
-h --help prints help message and exits
-l --log-file /path/to/file enables logging and sets log file accordingly
-d --image-directory /path/to/directory sets image directory accordingly

Dependencies

We use this library, so we can support many file types at once with little effort.

This library helps us to draw the maps from OpenStreetMap.

In order to parse command line arguments, we use this library.

We are using this library to easily read and write CSV files.

Requirements

This project uses Maven to manage its dependencies. The next instructions can only be followed if Maven has been successfully installed onto your system.

Building the app

The following commands should provide you a running build.

1. Build script:

Works on most GNU+Linux based operating systems (Build + Execute): /path/to/geoimageviewer/build.sh

2. Manual procedure:

cd /path/to/geoimageviewer
mvn clean package
java -jar target/geoimageviewer-1.0-SNAPSHOT.jar

3. Executable file:

You can also use the executable file from the Releases tab in GitHub to execute this project

Documentation

UML diagrams

Latest UML diagram:

Image failed to load

The UML diagrams for this project are stored here.

Did you find any bugs or have ideas for new features?

Feel free to contact me via the following options:


or create an Issue