This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

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
Release History

Release History

This version
History Node

0.2.2

History Node

0.2.1

History Node

0.2.0

History Node

0.1

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
geoselect-0.2.2-py2.7.egg (9.8 kB) Copy SHA256 Checksum SHA256 2.7 Egg Oct 21, 2015
geoselect-0.2.2.tar.gz (5.5 kB) Copy SHA256 Checksum SHA256 Source Oct 21, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting