Comments (8)
@Ramblurr I run into this problem myself as well. I like the flags you suggested. Should probably consider what the default action would be if one of the flags were not used. I would error on the side of not clobbering data.
from elodie.
@Kraymer That's an interesting idea. Do you have that scenario often where one photo is missing geolocation information but others around it contain some?
The idea of a "fuzzy match" option is a good idea. Something is better than nothing.
from elodie.
Also, have a look at gh-16 for something similar that we added support for.
from elodie.
One probably quite comment scenario would be different sources for the images, on vacation I use both my mobile camera and a compact camera, only the mobile camera has geo location.
from elodie.
Didn't think about if the "multiple persons involved" senario, there might not be a good way of knowing to what picture a unknow'n should be matched. So a user option might good if this was implemented.
from elodie.
@zingo I suppose you could use the exif apn name to match pictures taken by one person.
from elodie.
I think this is more of a UI question. One idea is to extract specific EXIF tags from a source photo and apply them to a set of target photos.
From the command line it would look something like this.
./elodie.py apply --location --source="/path/to/file/with/accurate/exif/location.jpeg" \
/path/to/file1.jpg \
/path/to/file2.jpg \
/path/to/file3.jpg
I think doing this manually at first is okay and it can be automated later if we think it's too cumbersome and we can do it well.
from elodie.
I agree @jmathai there should be a general way to extract then apply metadata from a photo onto a set of photos.
For me the use case is definitely GPS. Photos taken on my phone have geolocation metadata, but my DSLR photos don't.
Also at the moment I'm hesitant to use --location on directories that have these photos mixed together. The smartphone photos have exact coordinates I don't want lost. Whereas the DSLR photos, I just want to get them geotagged to a general area (city, region, etc).
But right now --location will overwrite the more specific geolocation on my smartphone photos. I can workaround this by being creative with the list of photos I pass to elodie's update (update .... ./.JPG for the smartphone vs ./.ARW for the dslr etc).
In addition to extracting and applying metadata, another --create-or-ignore
/ --create-only
/ --ignore-if-exists
flag to update would be useful. (maybe I should move this to a new ticket?).
Example:
# this command would only add the GPSInfo metadata to
# media files that do not already have the tags
elodie update --create--only --location "Paris, France" /pics/my/2016/Paris Trip
from elodie.
Related Issues (20)
- api key generation fails HOT 3
- keywords based dynamic albums HOT 1
- imghdr going away
- Crash on text file NOT containing us-ascii or utf-8 in first line
- feature: able to create symlinks instead of copying
- Calculate checksum of image without EXIF-data
- Unknown Location - invalid AppKey HOT 14
- Support a time offset in addition to absolute time
- ISO 8601 datetime without capitalising the rest of the filename? HOT 1
- Dockerfile no longer resolves to a valid url for Exiftool download
- Dockerfile no longer works with debian:jessie as the base
- Unexpected int returned instead of string from metadata[part] in filesystem.py HOT 1
- Will there be an official Elodie docker image published on the cloud (ie not the Dockerfile) ?
- Elodie not recognizing videos with the .mkv file extension HOT 2
- Feature request: support for NRW and RAF files
- config.ini ignored HOT 5
- Hard to tell what the problem is when there's errors importing files HOT 7
- Need to add a test: adding a file which is already in destination
- CircleCI URL for exiftool returns 404
- Use local database for geolocation
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from elodie.