[Digikam-users] Workflow with raw+jpeg

Duncan Hill digikam at nacnud.force9.co.uk
Wed Mar 8 06:43:39 GMT 2006

On Tuesday 07 March 2006 20:18, Gilles Caulier typed:
> Le Mardi 7 Mars 2006 17:38, Markus Spring a écrit :

> > This complex leads to another issue: Having raw files and derived work,
> > it would be nice to have the possibility to cluster those. Are there
> > already any thoughts on this issue?
> Sorry for my poor English. I don't understand what you mean exactly by
> "cluster" ?

Not to speak for Markus, but it's possibly what I'm thinking of.

Every file has a unique fingerprint, and this can be represented by a SHA1 or 
MD5 digest of the file data.  If digiKam were to store the digest in the 
database of each file name, and showFoto played nicely, it would be possible 
to say 'file with sha 123 is a child of file with sha 999.  file with sha 432 
is also a child of 999'.

With that kind of linking present, the interface is now one step closer to 
'right-click this file, show me all children' - grouping or clustering all of 
the child photos that are linked by modifications around the master file.  
Taking the linking in reverse, you can also say 'show me all related photos' 
- this would find the parent link, and from the parent find all other 
children.  The tree of links can get fairly deep, but the algorithms for 
dealing with trees in SQL are well published and from what I remember, fairly 
fast, especially since (I'm guessing) most people will have a root node, and 
maybe 5 child nodes (master image, child images).

This extends into something I've been pondering - the ability for digiKam and 
showFoto to collaborate and somehow store the actions and values used to 
generate a photograph.  Given a series of actions and values, I can re-create 
any edited image in my collection - once I have the master file.

To extend it further, provide a way to export the actions and values as a 
script file.  I can now edit the script file, and re-run it against the same 
master file to get a different child - and running it would be from within 
showFoto or digiKam so the database gets updated.

Oh, and finally, for existing collections, merely (hah!) provide a way to 
select 2 photos, and set one as parent.  The other is immediately a child.

There is the limited case where a child might have multiple parents - a 
collage image.  I haven't considered how to deal with that.

And really finally, the benefit of using the fingerprints in the database 
means that digiKam becomes resistant to external tampering by file managers 
and fingers.  When a file goes missing, but the same checksum appears in 
another album, merely update the database to point to the new album.

More information about the Digikam-users mailing list