Version: 0.9.2-final (using KDE KDE 3.5.8) Installed from: Ubuntu Packages I'd like to have a functionality in digikam that shows me (e.g. in a side pane) information about a picture that isn't stored in the Exif but that can be derived of it. Possible candidates for that are: - image angle (horizontal, vertical and diagonal) (function of focal length and sensor size) - depth of field (function of focal length, aperture and focus distance as well as the circle of confusion) - size of diffraction (function of aperture) The size of the circle of confusion should be adjustable. Interesting sizes are the "classic" d/1500 (picture diameter divided by 1500), 1 pixel (thus dependend on the sensor) and a user settable DPI amount for an user settable image size. Once these formulas are implemented (there are many internet resources for them) it also would be interesting to have an aditional menu entry where you can select a camera model and a lens for it and digikam will show you the calculated values (as a table and perhaps a graph) independend from actual pictures. So you don't need to go one of the many internet pages that calculate the DoF for you - you can do it yourself in digikam :) BTW: I haven't seen one calculator so far that calculates a series of DoF (for different apertures) that takes care of the diffraction at the same time (if the aperture gets too big, you don't need to care about the user set circle of confusion as the diffraction will generate a bigger one anyway...) So digikam could be the first who does that :)
AS I just stumbled over it in a different context: A motion blur calculator would also be a great addition :) (PS: if you need the formulas for all these calculations I can try to collect them for you...)
Christian, Absolutly, we need formulas + context to use + full descriptions to add on API doc... else nothing will be done (:=))) We working on more important parts currently (Database improvements + XMP support + KDE4 port). So all help is very usefull. Gilles Caulier
> > Absolutly, we need formulas + context to use + full descriptions to add on API doc... else nothing will be done (:=))) Here are some collected formulas for part one (more might come later...) The information of this post comes from http://www.dslr-forum.de/showthread.php?t=21047 (for those that can understand German...). Some definitions: f: the real focal length in mm (the number on the lens; independent of the sensor size) f_equiv: the felt focal length when used on a crop camera by comparing the picture angle Y: the crop factor (Canon DSLRs have e.g. mostly 1.6) s_[o,p]: size of the object (the thing infront of the camera) or the picture (i.e. 1/2 of the sensor chip) in mm d_[o,p]: distance of the object or the picture (i.e. sensor) to the principal plane of the lens in mm S: the size of the sensor in mm (and thus S = 2*s_p) - depending on the context it might be length, height or diameter S = [36mm x 24mm] / Y V: reproduction scale, the ratio between picture size and object size V := s_o / s_p a°: picture angle (the real one, not the simplified one with the object at infinity; changes with focus setting) a°_inf: picture angle when d_o = infinity (that's the one usually used in advertising material of the manufacturer) I'm assuming that the EXIF will tell me: f, d_o, S to calculate the rest here are some formulas: class optics (just for background; not needed): 1/f = 1/d_o + 1/d_p s_o/d_o = s_p/d_p interesting for the digiKam user (thus the results should be shown in this whish): Y = [36mm x 24mm] / S V = f/(d_o-f) a° = 2 * arctan( S*(d_o-f)/(2*f*d_o) ) a°_inf = 2 * arctan( S / (2*f) ) (note to the reader: this shows us that focal length at a croped camera = crop_factor * real focal length is *only* correct when the lens is focused at infinity! Thus:) f_equiv = f*Y / (1 - f/d_o + f*Y/d_o) V is important for macro photos (that have about a 1:1 ratio). It should be displayed differently, depending on its value: if( V < 1 ) printf( "%f : 1", 1/V ); else printf( "1 : %f", V ); > > We working on more important parts currently (Database improvements + XMP support + KDE4 port). So all help is very usefull. I know. :)
Here is a database of camera sensor sizes released under creative commons, it may be useful for this wish: http://en.wiki.autopano.net/Cameras.txt
> I'm assuming that the EXIF will tell me: f, d_o, S d_o: I think this is the biggest issue, to be investigated next: the distance information of the subject is not always (or most of the time?) not available in the exif. For example for Canon 350D the field Exif.CanonSi.SubjectDistance does not provide any information. But maybe it is somewhere hidden in the makernotes ... See also this information: http://www.openphotographyforums.com/forums/showthread.php?p=1101&mode=threaded#post1101 For users of EOS-1Ds Mark III, EOS-1D Mark III or EOS 40D things seem to be better: http://dpnow.com/forum2/showthread.php?t=4613 Is the situation better for other brands?
My Canon EOS 400D and my Canon IXUS both are showing in digiKam a value in Subject Distance - I don't know its unit though (cm?) When there's no distance information the coresponding formulas should be greyed out or show an "-" (or something like that). a°_inf and assuming infinity for f_equiv should still work though.
I would to know if some work can be done by Exiv2 here, to compute non Exif photo informations. This can be suitable to have these info from command line too. Your viewpoint ? Gilles Caulier
Possible. It would be done along the lines of this: http://dev.exiv2.org/issues/show/505 Concern is that the info discussed here is not "basic info", i.e., for most people this will be a waste of resources. To address this, we could maybe make these computations optional. More importantly, Exiv2 is not ready for this feature, yet. It requires the unified metadata container (#585). Andreas
In digiKam 7.3.0, we have a new ExiFtool metadata viewer on the right side bar. https://imgur.com/D9Kvnqn ExifTool has a "Composite" section which is exactly dedicated to show computed values from camera settings. https://exiftool.org/TagNames/Composite.html In ExifTool settings, user can customize Composite entries, as i can see. This is exactly what we need to solve this entry. Gilles Caulier