Bug 199189 - GPS correlator does not allow offset in seconds
Summary: GPS correlator does not allow offset in seconds
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Geolocation-Correlator (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR wishlist
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-07-06 21:05 UTC by Milan Knížek
Modified: 2017-08-18 19:29 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In: 1.0.0


Attachments
additional user offset in mins and secs (6.68 KB, patch)
2009-09-25 17:03 UTC, Johannes Wienke
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Milan Knížek 2009-07-06 21:05:21 UTC
Version:            (using KDE 4.2.2)
OS:                Linux
Installed from:    Ubuntu Packages

GPS correlator should allow the user to set a time difference in seconds between the camera and UTC + time zone to correct wrongly set time in the camera.

At the moment, it offers only time zone selection.

The reasoning is that quite often, the clock in camera is not very precise and instead of setting it every time it is easier to take a picture of the GPS device with displayed time and later simply calculate the difference between EXIF time and displayed time of GPS.
Comment 1 Johannes Wienke 2009-09-25 17:03:51 UTC
Created attachment 37171 [details]
additional user offset in mins and secs

I've created a patch that allows specifying and additional user offset with minutes and seconds.
Comment 2 Pieter Edelman 2009-09-25 18:15:58 UTC
Isn't it better to link this to the time adjust plugin? Reimplementing this feature feels a bit like a duplication of effort.
Comment 3 Johannes Wienke 2009-09-25 19:03:36 UTC
How exactly do you think of this. To my mind this is mostly some gui work and using the whole gui of the time adjust plugin looks too complicated for this task in my opinion.
Comment 4 Pieter Edelman 2009-09-30 09:03:48 UTC
Well, it just doesn't seem logical to me to not correct the photo times when you know they are wrong.
My workflow is that I first correct the faulty photo times (with the time and date adjust plugin) and then use the correct time to match them to the GPS tracks.

It could be as simple as just adding a button labeled "Correct camera clock offset" or something similar that opens the time adjust plugin.
Comment 5 Johannes Wienke 2009-09-30 10:31:21 UTC
But it's a user decision which workflow to use and I can also understand this workflow. As long as the camera date is only off a few seconds I wouldn't either change the exif time (which means touching all files two times: one time for changing the date and one time for adding the gps position. For my large raw format this is really a time consuming task). Sometimes I also like playing with the offset until I think the positions fit best to the photos. Therefore it's really handy to have this offset option directly in the dialog to adjust it correlate, re-adjust, correlate... and so on. For me this was also one missing feature why I always used another tool for this task and not digikam.
Comment 6 caulier.gilles 2009-09-30 10:53:20 UTC
Johannes, Pieter,

Let's me introduce a way, not yet implemented in digiKam/libkipi/kipi-plugins, but that i would to code in the future...

In digiKam, go to Batch Queue Manager. On the bottom/right, just near History/Custom Tool/Base Tools, i would to add Kipi Tools view.

Now, you can feel the power of BQM : You make a list of kipi tools to apply, as GPSSync and AdjustTime to a set of items. No need to dupplicates features in kipi tools, like you need currently.

To export kipi-plugins as BQM tool, we need to patch libkipi to export core plugins action + plugins settings widget for configuration. Plugins need to be adapted accordingly. In digiKam BQM Batch Tools Manager need to be patched to queries all kipi tools and create proper BQM tools instance accordingly.

It's not a simple task, sure, but very usefull for end users.

We will talking about in details at Coding Sprint, and if you like the idea, start to implement something like that...

Gilles Caulier
Comment 7 Johannes Wienke 2009-09-30 11:03:57 UTC
This sounds like a good idea, but I'm a bit afraid that novices won't find this feature then. I also had to search some time until I found out what I can to with the batch queue manager and how to use it efficiently. So to me this seems mainly like a GUI problem. Maybe we could add a menu to the menu bar that provides quick access to pre-programmed tool sets in the batch queue manager and that is customizable for advanced users. This is one of the main problems I see for the usability of the bqm.

Also, with the way you describe, we would have to think about a solution how to display the elected coordinates per image directly (as text and in a map)?
Comment 8 caulier.gilles 2009-09-30 11:12:49 UTC
>Also, with the way you describe, we would have to think about a solution how to
>display the elected coordinates per image directly (as text and in a map)?

By this way, only specific task can be exported to BQM, especially Batch process. For GPSSync, nothing can be done with map, but to synchronize item with a GPX file is possible.

Gilles
Comment 9 Johannes Wienke 2009-09-30 11:17:32 UTC
(In reply to comment #8)
> >Also, with the way you describe, we would have to think about a solution how to
> >display the elected coordinates per image directly (as text and in a map)?
> 
> By this way, only specific task can be exported to BQM, especially Batch
> process. For GPSSync, nothing can be done with map, but to synchronize item
> with a GPX file is possible.

But isn't that the important point? Selecting the date offset, correlating and checking the positions on a map and if it doesn't fit, re-adjusting and so on?
Comment 10 caulier.gilles 2009-09-30 11:34:05 UTC
Well, for your workflow, certainly. But with BQM, only batch process can be integrated. No part where user need to set someting for each item individualy...

Gilles
Comment 11 Johannes Wienke 2009-09-30 11:37:58 UTC
I didn't mean to set something per image. Just the ability to view the assigned location on a map quickly after correlation but before writing the exif data. Otherwise there would be the same problem of wasting time with writing locations that potentially need to be readjusted.
Comment 12 Pieter Edelman 2009-09-30 18:23:20 UTC
I can understand Johannes argument. In fact I used to do that myself before I figured out that it is easier to make a picture of my GPS unit displaying the time and use that photo to work out the clock delta, which is now implemented in the date and time adjust tool.

Maybe it is better to do it the following way (just brainstorming here):
1. Create time offset fields (hours, minutes and seconds) in the correlator window. The correlator takes the values from this field into account when calculating the points.
2. Create a button that summons the reference photo window from the time and date adjust plugin. It doesn't change exif times, but just fills in the data fields from point 1.
3. Make a checkbox "adjust metadata times". When it is checked, not only the GPS coordinated are written to the metadata, but the timestamp is also corrected.

Anyway, I think the GUI of the correlator is long overdue for a redesign (see bug #195944), but this way would mean relatively little change. The only big drawback is that a class from another plugin has to be called.
Comment 13 Milan Knížek 2009-10-04 14:06:04 UTC
I would vote for the proposal of Johannes:
x to set the default time offset as per GPS vs Exif
x have the possibility to see on the map where the location per each image is
x have the possibility to update image metadata and file date&time with the corrected time
x and run it at once for all the images in the queue.

As I understand, BQM does not support such a workflow, so a re-worked GUI for the correlator would be an option.

The requirement for visual feedback on the map is that GPS correlation often results in error (well, it is even in its name) due to missing saved track points (bad signal, too large time gap, etc.).
Comment 14 Michael G. Hansen 2009-11-30 11:20:33 UTC
SVN commit 1056472 by mghansen:

Fix handling of timezones for the camera time. Handle timezones automatically if the timezone of the camera is the same as the timezone of the system.

Also, add the possibility to adjust the camera time offset in seconds for now using the patch by Johannes Wienke.

BUG: 214210
CCBUG: 199189



 M  +2 -1      NEWS  
 M  +22 -12    gpssync/gpsdataparser.cpp  
 M  +4 -3      gpssync/gpsdataparser.h  
 M  +130 -20   gpssync/gpssyncdialog.cpp  
 M  +1 -0      gpssync/gpssyncdialog.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1056472
Comment 15 caulier.gilles 2009-11-30 11:44:45 UTC
Please test current implementation from svn. I would to know if patch solve the problem and if this entry can be added to NEWS file as well for the release.

I plan to make tarball tomorow. 

Thanks in advance for your help

Gilles Caulier
Comment 16 Milan Knížek 2009-12-03 21:07:43 UTC
Thanks for the patch, the fine time offset seems to work for me. (1.0.0-rc tarball)