Main Menu

Lens ID consistency

Started by surfer, March 27, 2011, 09:51:15 AM

Previous topic - Next topic

Phil Harvey

ExifTool doesn't convert the numerical XMP:LensID values, so if the lens is recognized by ExifTool the information will be contain in another tag.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

surfer

I re-ran my test script with the option you proposed and actually found a few photos with exiftools "Composite:LensID" containing pure numbers.

"Composite:LensID": 6,

Do you want me to send a sample?

Phil Harvey

...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

surfer


Phil Harvey

Thanks.  The problem here is that the maker notes have been corrupted by some other image-editing software, and the LensModel tag contains invalid data (coincidentally, an ASCII "6", making the LensID numeric):

    Warning: [minor] Adjusted MakerNotes base by -56
    Warning: Invalid CanonCameraSettings data
    Warning: Invalid CanonShotInfo data
    Warning: Invalid CanonAFInfo2 data
    Warning: Invalid CanonFileInfo data
    Warning: Invalid CustomFunctions2 data
    Warning: Invalid ProcessingInfo data
    Warning: Invalid MeasuredColor data
    Warning: Invalid SensorInfo data


Just FYI, the correct adjustment to properly read these maker notes is -76, and with -F-76 you will see the correct LensID.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

surfer

I understand. I will try that.

Thanks for your help!

Phil Harvey

Quote from: Phil Harvey on May 26, 2011, 03:05:38 PM
Honestly, I don't see how I can make things consistent with these Adobe XMP tags.  I don't have enough information to properly convert the LensID numbers stored by Adobe.  Too bad they do it this way instead of just preserving the maker notes.  Dumb, really.

This was bugging me, so I added a new Composite:LensID tag which attempts to convert the Adobe XMP-aux:LensID number(s) as best I can.  This update will appear in ExifTool 8.59, which will likely be released this weekend.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

surfer

Great news Phil :)

Will I be able to access this data as usual through the LensID tag or is it a separate tag? Does this mean that photos e.g. saved in lightroom might now get the correct Lens ID?

Keep up the good work!

Phil Harvey

#23
The new Composite:LensID tag will override the XMP-aux:LensID tag unless you allow duplicate tags to be extracted (with the -a option) or specify an XMP group explicitly.  The hope is that the Composite LensID's generated from LR and Photoshop images will be correct.

- Phil

Edit: Note that this won't work for Olympus, Ricoh or Minolta cameras since Adobe doesn't store a LensID in these images (I have no idea why).  But Canon, Nikon, Pentax, Leica, Sigma, Samsung and Sony should be OK.
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Batty

Exiftool v8.61 doesn't seem to know the correct English name for this lens: "Nikon 200-400mm f/4 AF-S VR II".

The LensID tag, which usually gives me a nice displayable string, gives me this: "Lens ID : Unknown (A8 48 80 98 30 30 AA 0E)"

Phil Harvey

Quote from: Batty on July 17, 2011, 07:24:21 PM
Exiftool v8.61 doesn't seem to know the correct English name for this lens: "Nikon 200-400mm f/4 AF-S VR II".

The LensID tag, which usually gives me a nice displayable string, gives me this: "Lens ID : Unknown (A8 48 80 98 30 30 AA 0E)"

Excellent, thanks!  This will be added to the next release (version 8.62)

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Batty


Batty

Yay, I can verify the Nikon 200-400 II now shows a correct "AF-S VR Zoom-Nikkor 200-400mm f/4G IF-ED II" for the LensID tag in 8.62.

wimvan

Finally I got EXIFTOOL working ...  Nice, very nice tool.
But, I see that in all my jpg's do not shown the right lensname, while the NEF's do.
As I understood, Adobe changes this in a mess ...
It there a way to retrieve them in the correct manner ?  Or is it better making a referncetable ?  I almost uses the same type of lenses

thanks

Phil Harvey

Are the original files available?  If so, you could copy the lens name from the original to the Adobe-edited JPG.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).