Skip to main content

A script to select photos from a set, based on geographical location.

Project description

A script to select photos from a set, based on geographical location. Either via a decimal latitude/longitude point. Or a photo taken in the desired location, it will look for exif standerized gps lat- and longitude tags.

Installing

Pip

The easiest way is to use pip to download and install the script.

pip install geoselect

Get (latest) source

# clone this repo
clone https://github.com/FreekKalter/geoselect.git
cd geoselect

# initialize virtual environment (optional, but recommended)
virtualenv venv
source venv/bin/activate

# install (--editable to hack on code whithout running pip install again)
pip install --editable .

Using

There are 2 ways to specify the location to select on. LOCATION can be a “latitude,longitude” specified in decimal degrees like: “41.40338, 2.17403”. Or it can be a path to a photo with exif gps coordinates, it will then search for photos taken at the same location. It will search within a specified radius (default: 1 km).

If --path is set, geoselect will look at that location for images with common file extensions (jpg, jpeg, gif, bmp, png). This can be set to something else with the --extensions parameter. If --path is not set, paths to pictures are taken from stdinput. This way it can be used as a stream filter, like most unix/linux commandline utils. For example take the following pipeline: find /home/fkalter/photos -name '*holiday*' | geoselect --radius 10 "40.783068, -73.965350" | wc -l To count the number of pictures taken in/around central park wich have ‘holiday’ in the filename.

A (expiremental) feature uses the time a picture is taken to gues at wich location it is made. Sometimes the device used to make the picture takes a while to get a ‘gps fix’. So it might not register the gps coordinates for the first picture in a series. The -- time-based option looks for any pictures taken in a short time before or after a picture with the specified location is taken. Because it is very likely pictures taken very shortly after each ohter are taken at roughly the same location.

usage: geoselect.py [-h] [--path PATH] [--extentions EXTENTIONS] [--copy-to COPYTO] [--time-based] [--radius RADIUS]
                    [-V]
                    location

A script to select photos from a set, based on geographical location. Either via a decimal latitude/longitude point.
Or a photo taken in the desired location, it will look for exif standerized gps lat- and longitude tags.

positional arguments:
  location              location given in decimal degrees like: "40.783068, -73.965350", or a path to a photo with
                        exif gps info

optional arguments:
  -h, --help            show this help message and exit
  --path PATH           path to look for image files, if not set files will be taken from stdin
  --extentions EXTENTIONS
                        comma separated list of extension to look for in PATH
  --copy-to COPYTO      path where found photos should be copied
  --time-based          also add photos wich themselfs dont have gps information, but are taken in a short time
                        before or after one that has (in the right location)
  --radius RADIUS       radius of area (in kilometers) to select photos from
  -V, --version         show program's version number and exit

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
geoselect-0.2.2-py2.7.egg (9.8 kB) Copy SHA256 hash SHA256 Egg 2.7 Oct 21, 2015
geoselect-0.2.2.tar.gz (5.5 kB) Copy SHA256 hash SHA256 Source None Oct 21, 2015

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 DigiCert DigiCert EV certificate StatusPage StatusPage Status page