[Digikam-devel] What do we want to store in the database?

Gilles Caulier caulier.gilles at gmail.com
Mon Oct 8 09:59:55 BST 2007


2007/10/7, Marcel Wiesweg <marcel.wiesweg at gmx.de>:
>
> > Hi Marcel,
> >
> > I went through all the messages in this thread
> > and tried to compare with your DBSCHEMA.ODS
> >
> http://websvn.kde.org/trunk/extragear/graphics/digikam/DBSCHEMA.ODS?view=lo
> >
>
> Arnd the reply is late but your message did not go unnoticed ;-)
> Rather it reached me just in time for my holidays.
>
> >
> > I have found a few points which are not listed
> > (very likely on purpose ;-), but let me still mention them here
> > (note that this list partially contains verbatim copies
> >
> > >from the original messages):
> >
> > - Table Tags:
> >   - comments for tags
> >     (This would for example allow to provide additional information
> >      about a person, or animal, or landscape, ...
> >      I.e., something which would not make sense to
> >      add to the comment of each of the corresponding
> >      images, because it is just the same/generally applicable)
> >      http://bugs.kde.org/show_bug.cgi?id=149372
>
> I have not changed anything in tabs and albums so far. All the other ideas
> like grouping, stored actions etc. have to wait I fear if we want to get
> out
> digikam 0.10 in a timely manner.


agree.


At least, currently I am struggling to get everything right for
> image-specific
> fields in the db.
>
> >   - additional boolean flag: visible/hidden
> >     (i.e. all images tagged by a tag marked
> >      hidden are not shown, i.e. private images etc.)
>
> Same as above.
>
> >
> > - Grouping of images
> >   http://bugs.kde.org/show_bug.cgi?id=121310
> >   (Coming from panoramae, or bracketed shots for HDR).
> >   Within a group it should be possible to select
> >   which images are visible (i.e also more than one).
> >
> >   This would also allow to group JPG and RAWs together
> >   http://bugs.kde.org/show_bug.cgi?id=147427
>
> Yes I want that. but see above.
>
> >
> > - And what about to Tag Album as well (to replace "collection"
> >   properties?) :
> >   http://bugs.kde.org/show_bug.cgi?id=133011
>
> idem
>
> >
> > - ImageInformation or ImageMetadata (?):
> >   - technical quality tags
> >     http://bugs.kde.org/show_bug.cgi?id=128333
>
> Seems to me this needs quite a bit of research still
>
> >
> > - Associate a region in an image with a tag:
> >   http://bugs.kde.org/show_bug.cgi?id=146337
> >
> >   Note that such a region should not be a property of a tag,
> >   but a property of an image. Example:
> >   If there are several persons on one image, one can
> >   first add the Person's names as tags to that image  (as right now).
> >   In addition, one may mark the region of the face
> >   and associate it with the tag.
> >     Image:
> >     Tags: - Name1
> >           - Name2
> >           - Name3
> >     Regions: - Region1   --> Tag Name1
> >              - Region2   --> Tag Name2
> >
> >   Not sure how to put this in the database scheme ...
> >   To specify the region: the simplest are rectangles,
> >   but one should also think of more complicated shapes
> >   (circle, ellipse, general svg paths) in the longer run.
> >   So it might be good to keep this in mind already when setting
> >   up the database scheme.
>
> Yes. At least points. Later!
>
> >
> > - Table ImageMetadata:
> >   - lens type (focal range in 35mm equivalent is available in
> Makernotes)
>
> This is from Makernote?


focal Length info, is avaialble from standard Exif :

==>  Exif.Photo.FocalLength  Rational  The actual focal length of the lens,
in mm. Conversion is not made to the focal length of a 35 mm film camera.

==>  Exif.Photo.FocalLengthIn35mmFilm  Short  This tag indicates the
equivalent focal length assuming a 35mm film camera, in mm. A value of 0
means the focal length is unknown. Note that this tag differs from the
<FocalLength> tag.

but _not_ lens type witch is stored by Makernotes. Problem is than all
camera maker use a dedicaced way to provide this info. For ex.:

==> Exif.Nikon3.LensType  Byte  Lens type
==> Exif.Minolta.LensID  Long
==> Exif.CanonCs.Lens  Short  'long' and 'short' focal length of lens (in
'focal units') and 'focal units' per mm

In other words, this will be infernal to get this info easily. But... Xmp
provide has a tag to simplify this task :

==> Xmp.Aux.Lens Text A description of the lens used to take the photograph.
For example, "70-200 mm f/2.8-4.0"

This will be the ultimate solution... when we will have implemented in Exiv2
core (not libkexiv2) a wrapper to import Exif (and Iptc) to Xmp ( and
vis-versa)

This is not yet done, but it's planed. This is why i recommend to delay all
Makernotes informations extraction dedicaced to fill the new DB contents.

Note : XMP support all standard Exif/Iptc tags as well (more and better),
but not Makernotes in standard. Yes, in this case all metadata will be
duplicated but Xmp will become the full replacement of Exif and Iptc.


>   - focus mode
>
> = MeteringMode or ExposureProgram?
> We'll have both in db
>
> >   - macro
>
> We will have SubjectDistanceRange
>
> >   - stabilization


==> Makernote.


>   - focus point (can be quite camera dependent)


==> Makernote.


>     http://bugs.kde.org/show_bug.cgi?id=138704
> >   - panorama mode


==> Makernote.

What is this? Any exif keys?
>
>
> >   - perhaps few original informations from pictures taken from camera as
> >     org. size, org. date, org. filename, cmaera serial number,  UUID of
> >     media, etc. to perform detection of already downloaded pictures for
> >     camera gui. This way is under discussion...
>
> Yes! This is in the works
>
> >
> > - Table GPS data
> >   - orientation (compass)
> >   - tilt (nb of degrees with regard to horizontal)
> >   - roll
>
> From where do I get these values? Can these be mapped to Exif GPS data? Or
> where do you get this information from?



More information about the Digikam-devel mailing list