[Bug 251920] New: Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] New: Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920

           Summary: Digikam should match lenses on Exif.CanonCs.LensType,
                    not ExifCanonCs.Lens
           Product: digikam
           Version: 1.4.0
          Platform: Mandriva RPMs
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: Image Editor
        AssignedTo: [hidden email]
        ReportedBy: [hidden email]


Version:           1.4.0 (using KDE 4.4.3)
OS:                Linux

Digikam Lens correction wasn't automatically choosing the correct lens from the
lensfun database. Canon cameras return different information for the Lens and
LensType tags:

$ exiv2 -pa IMG_2775.JPG |grep Lens
Exif.CanonCs.LensType                        Short       1  Canon EF 70-300mm
f/4-5.6 IS USM
Exif.CanonCs.Lens                            Short       3  70.0 - 300.0 mm

While the Lens tag has valid information, the actual Lens model is only correct
in LensType.

With the attached patch (only, no other patches), digikam automatically matches
the correct lens.

Reproducible: Always

Steps to Reproduce:
Find an image taken on a Canon DSLR (I used Canon EOS 500D) with a lens listed
in the lensfun database (I used "Canon EF-S 17-85mm f/4-5.6 IS USM", which is
in lensfun 0.2.5, and and "Canon EF 70-300mm f/4-5.6 IS USM" for which I have
created a lens profile). Enter the editor, Enhance->Lens->Auto-correction

Actual Results:  
See that you need to select the lens manually.

Expected Results:  
The lens should be selected automatically.

With the attached patch, images taken with both lenses I have resulted in
automatic selection of the correct lens profile.

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920





--- Comment #1 from Buchan Milne <bgmilne mandriva org>  2010-09-21 13:20:29 ---
Created an attachment (id=51856)
 --> (http://bugs.kde.org/attachment.cgi?id=51856)
Trivial patch to use LensType tag on Canon

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Bugzilla from bgmilne@mandriva.org
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920


Buchan Milne <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #51856|0                           |1
        is obsolete|                            |




--- Comment #2 from Buchan Milne <bgmilne mandriva org>  2010-09-21 13:23:00 ---
Created an attachment (id=51857)
 --> (http://bugs.kde.org/attachment.cgi?id=51857)
Patch formatted better to retain comment alignment

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Gilles Caulier-4
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920


Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
                 CC|                            |[hidden email]
         Resolution|                            |FIXED




--- Comment #3 from Gilles Caulier <caulier gilles gmail com>  2010-09-21 13:24:05 ---
digiKam 1.5.0 has already a similar patch applied.

http://lxr.kde.org/source/extragear/graphics/digikam/libs/dmetadata/dmetadata.cpp#968

Gilles Caulier

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Bugzilla from bgmilne@mandriva.org
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920





--- Comment #4 from Buchan Milne <bgmilne mandriva org>  2010-09-21 21:19:58 ---
I applied the fix in
http://websvn.kde.org/branches/extragear/graphics/digikam/libs/dmetadata/dmetadata.cpp?r1=1165407&r2=1172473
to 1.4.0, and it did not work as expected. Instead of automatically matching
the exact lens, it matched a different lens which had a focal length range that
covered the shortest focal length. In the quick test I did, instead of matching
EF-S 17-85mm f/4-5.6 IS USM, it matched EF-S 10-22mm f/3.5-4.5 USM.

If I instead place the append call with Exif.CanonCs.LensType before
Exif.CanonCs.Lens, then it works as expected.

I should probably build from svn, but assuming no other major changes were
made, I think this is not fixed.

I can supply a sample image if that would help test (I assume some other Canon
DSLRs, such as 40D, work with the Exif.CanonCs.Lens tag, and we actually would
prefer both types to work, not one or the other).

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Gilles Caulier-4
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920





--- Comment #5 from Gilles Caulier <caulier gilles gmail com>  2010-09-21 22:10:32 ---
yes send me by mail a test image, or give me a web link to download it

Gilles Caulier

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Bugzilla from bgmilne@mandriva.org
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920





--- Comment #6 from Buchan Milne <bgmilne mandriva org>  2010-09-23 11:53:55 ---
Looks like it is fixed in trunk in r1178204

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Martin Klapetek
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920


Martin Klapetek <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]




--- Comment #7 from Martin Klapetek <martin klapetek gmail com>  2010-10-22 23:13:50 ---
In 2.0 branch it still detects the wrong lens for "Canon EF-S 18-55mm f/3.5-5.6
IS" as "Canon EF-S 10-22mm f/3.5-4.5 USM". Although the database has only
"Canon EF-S 18-55mm f/3.5-5.6" (without the IS), so that may be the problem.
I'd propose to do a regular expression match (if it isn't already, not sure).

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Gilles Caulier-4
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920





--- Comment #8 from Gilles Caulier <caulier gilles gmail com>  2010-10-23 09:32:09 ---
Martin,

There is 2 way to fix this problem: the regex is done in liblensfun using
GLib2. I suspect that code is not perfect at this place. This can be fixed in
lensfun code of course and reported to lensfun project to backport patch.

This is done by this stage 1 :

http://lxr.kde.org/source/extragear/graphics/digikam/libs/dimg/filters/lens/lensfuniface.cpp#275

Another way is to patch the digiKam lenfun interface to process a regex based
on Qt4::QString. Stage 2 is specific to Nikon camera/lens:

http://lxr.kde.org/source/extragear/graphics/digikam/libs/dimg/filters/lens/lensfuniface.cpp#280

There is the last stage :

http://lxr.kde.org/source/extragear/graphics/digikam/libs/dimg/filters/lens/lensfuniface.cpp#294

I recommend to add a new stage for Canon camera before last stage, if you
choose to patch digiKam lensfun interface source code.

Please patch trunk, i will backport later GSoC 2010 branch.

Gilles Caulier

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Martin Klapetek
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920





--- Comment #9 from Martin Klapetek <martin klapetek gmail com>  2010-10-28 13:51:27 ---
By looking at that, I think that just doing a "reverse search" could be enough.
Because now it takes the exiv data and looks into the database. But if this
string is just longer by the "IS" or something, it won't match. But if it would
be done the other way round - by matching the database to the exiv string, this
would work. Consider a use case, when the manufacturer creates just new lenses
and adds stuff to the string (like "IS" or something else) but the actual
lenses stays the same, this would still get matched with my proposed way.

Okay, I'll play with it a little and see what I can come up with.

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 251920] Digikam should match lenses on Exif.CanonCs.LensType, not ExifCanonCs.Lens

Gilles Caulier-4
In reply to this post by Bugzilla from bgmilne@mandriva.org
https://bugs.kde.org/show_bug.cgi?id=251920

Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Version Fixed In|                            |1.5.0

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel