Modify

Opened 3 years ago

Closed 3 years ago

#22211 closed defect (othersoftware)

"Model" EXIF tag is altered when geotagging pictures

Reported by: PanierAvide Owned by: Don-vip
Priority: normal Milestone:
Component: Plugin apache-commons Version: tested
Keywords: template_report Cc:

Description (last modified by PanierAvide)

What steps will reproduce the problem?

  1. Load this image in JOSM by drag & drop : https://files.pavie.info/depot/tmp/P4250059.JPG
  2. Update position and orientation of picture in JOSM (drag picture, ctrl + drag for orientation)
  3. Right click on picture layer, and "write coordinates in image file"

What is the expected result?

Image EXIF tags are updated for position and orientation, other EXIF tags are not changed.

What happens instead?

EXIF tag "Model" is altered, changes from "SP-720UZ" to "P720-UZ". This is problematic for applications that rely on camera make / model to compute information like field of view.

Similar issues happen with this image ( https://files.pavie.info/depot/tmp/Coffee-cup-apple-iphone.jpg ) where Model tag goes from "Canon EOS 6D" to "Canon EOS 6D0".

Please provide any additional information below. Attach a screenshot if possible.

Original EXIF tags (exiftool -S file.jpg)

ExifToolVersion: 12.42
FileName: P4250059.JPG
Directory: /tmp
FileSize: 3.0 MB
FileModifyDate: 2022:07:12 09:22:40+02:00
FileAccessDate: 2022:07:12 09:22:40+02:00
FileInodeChangeDate: 2022:07:12 09:22:40+02:00
FilePermissions: -rw-r--r--
FileType: JPEG
FileTypeExtension: jpg
MIMEType: image/jpeg
ExifByteOrder: Little-endian (Intel, II)
ImageDescription: OLYMPUS DIGITAL CAMERA
Make: OLYMPUS IMAGING CORP.
Model: SP-720UZ
Orientation: Horizontal (normal)
XResolution: 72
YResolution: 72
ResolutionUnit: inches
Software: Version 1.0
ModifyDate: 2015:04:25 15:36:11
YCbCrPositioning: Co-sited
ExposureTime: 1/250
FNumber: 7.5
ExposureProgram: Creative (Slow speed)
ISO: 100
SensitivityType: Standard Output Sensitivity
ExifVersion: 0230
DateTimeOriginal: 2015:04:25 15:36:11
CreateDate: 2015:04:25 15:36:11
ComponentsConfiguration: Y, Cb, Cr, -
ExposureCompensation: 0
MaxApertureValue: 3.2
MeteringMode: Multi-segment
LightSource: Unknown
Flash: Off, Did not fire
FocalLength: 4.7 mm
SpecialMode: Normal, Sequence: 0, Panorama: (none)
CameraID: OLYMPUS DIGITAL CAMERA
EquipmentVersion: 0100
CameraType2: SP-720UZ
FocalPlaneDiagonal: 7.74 mm
BodyFirmwareVersion: 1.004
CameraSettingsVersion: 0100
PreviewImageValid: Yes
PreviewImageStart: 2843829
PreviewImageLength: 150880
MacroMode: Off
FlashMode: Off
WhiteBalance2: Auto
WhiteBalanceBracket: 0 0
SceneMode: Landscape
MagicFilter: Off; 0; 0; 0
DriveMode: Single Shot
PanoramaMode: Off
ImageProcessingVersion: 0112
DistortionCorrection2: On
FacesDetected: 0 0 0
FaceDetectArea: (Binary data 191 bytes, use -b option to extract)
MaxFaces: 8 8 8
FaceDetectFrameSize: 0 0 0 0 0 0
Warning: [minor] MakerNotes tag 0x6000 IFD format not handled
UserComment: 
FlashpixVersion: 0100
ColorSpace: sRGB
ExifImageWidth: 4288
ExifImageHeight: 3216
InteropIndex: R98 - DCF basic file (sRGB)
InteropVersion: 0100
FileSource: Digital Camera
CustomRendered: Normal
ExposureMode: Auto
WhiteBalance: Auto
DigitalZoomRatio: 0
FocalLengthIn35mmFormat: 26 mm
SceneCaptureType: Landscape
GainControl: None
Contrast: Normal
Saturation: Normal
Sharpness: Normal
GPSVersionID: 2.3.0.0
GPSLatitudeRef: North
GPSLongitudeRef: West
PrintIMVersion: 0300
Compression: JPEG (old-style)
ThumbnailOffset: 2544
ThumbnailLength: 11535
ImageWidth: 4288
ImageHeight: 3216
EncodingProcess: Baseline DCT, Huffman coding
BitsPerSample: 8
ColorComponents: 3
YCbCrSubSampling: YCbCr4:2:2 (2 1)
Aperture: 7.5
ImageSize: 4288x3216
Megapixels: 13.8
PreviewImage: (Binary data 150880 bytes, use -b option to extract)
ScaleFactor35efl: 5.6
ShutterSpeed: 1/250
ThumbnailImage: (Binary data 11535 bytes, use -b option to extract)
GPSLatitude: 48 deg 8' 20.59" N
GPSLongitude: 1 deg 56' 54.98" W
CircleOfConfusion: 0.005 mm
FOV: 69.4 deg
FocalLength35efl: 4.7 mm (35 mm equivalent: 26.0 mm)
GPSPosition: 48 deg 8' 20.59" N, 1 deg 56' 54.98" W
HyperfocalDistance: 0.54 m
LightValue: 13.8

EXIF tags after JOSM edit

ExifToolVersion: 12.42
FileName: P4250059.JPG
Directory: /tmp
FileSize: 3.0 MB
FileModifyDate: 2022:07:12 09:24:47+02:00
FileAccessDate: 2022:07:12 09:24:47+02:00
FileInodeChangeDate: 2022:07:12 09:24:47+02:00
FilePermissions: -rw-r--r--
FileType: JPEG
FileTypeExtension: jpg
MIMEType: image/jpeg
ExifByteOrder: Little-endian (Intel, II)
ImageDescription: OLYMPUS DIGITAL CAMERA
Make: OLYMPUS IMAGING CORP.
Model:  P-720UZ
Orientation: Horizontal (normal)
XResolution: 72
YResolution: 72
ResolutionUnit: inches
Software: Version 1.0
ModifyDate: 2015:04:25 15:36:11
YCbCrPositioning: Co-sited
ExposureTime: 1/250
FNumber: 7.5
ExposureProgram: Creative (Slow speed)
ISO: 100
SensitivityType: Standard Output Sensitivity
ExifVersion: 0230
DateTimeOriginal: 2015:04:25 15:36:11
CreateDate: 2015:04:25 15:36:11
ComponentsConfiguration: Y, Cb, Cr, -
ExposureCompensation: 0
MaxApertureValue: 3.2
MeteringMode: Multi-segment
LightSource: Unknown
Flash: Off, Did not fire
FocalLength: 4.7 mm
SpecialMode: Normal, Sequence: 0, Panorama: (none)
CameraID: OLYMPUS DIGITAL CAMERA
EquipmentVersion: 0100
CameraType2: SP-720UZ
FocalPlaneDiagonal: 7.74 mm
BodyFirmwareVersion: 1.004
CameraSettingsVersion: 0100
PreviewImageValid: Yes
PreviewImageStart: 2843829
PreviewImageLength: 150880
MacroMode: Off
FlashMode: Off
WhiteBalance2: Auto
WhiteBalanceBracket: 0 0
SceneMode: Landscape
MagicFilter: Off; 0; 0; 0
DriveMode: Single Shot
PanoramaMode: Off
ImageProcessingVersion: 0112
DistortionCorrection2: On
FacesDetected: 0 0 0
FaceDetectArea: (Binary data 191 bytes, use -b option to extract)
MaxFaces: 8 8 8
FaceDetectFrameSize: 0 0 0 0 0 0
Warning: [minor] MakerNotes tag 0x6000 IFD format not handled
UserComment: 
FlashpixVersion: 0100
ColorSpace: sRGB
ExifImageWidth: 4288
ExifImageHeight: 3216
InteropIndex: R98 - DCF basic file (sRGB)
InteropVersion: 0100
FileSource: Digital Camera
CustomRendered: Normal
ExposureMode: Auto
WhiteBalance: Auto
DigitalZoomRatio: 0
FocalLengthIn35mmFormat: 26 mm
SceneCaptureType: Landscape
GainControl: None
Contrast: Normal
Saturation: Normal
Sharpness: Normal
GPSVersionID: 2.3.0.0
GPSLatitudeRef: North
GPSLongitudeRef: West
GPSImgDirectionRef: True North
GPSImgDirection: 301.8067162
PrintIMVersion: 0300
Compression: JPEG (old-style)
ThumbnailOffset: 2402
ThumbnailLength: 11535
ImageWidth: 4288
ImageHeight: 3216
EncodingProcess: Baseline DCT, Huffman coding
BitsPerSample: 8
ColorComponents: 3
YCbCrSubSampling: YCbCr4:2:2 (2 1)
Aperture: 7.5
ImageSize: 4288x3216
Megapixels: 13.8
PreviewImage: (Binary data 150880 bytes, use -b option to extract)
ScaleFactor35efl: 5.6
ShutterSpeed: 1/250
ThumbnailImage: (Binary data 11535 bytes, use -b option to extract)
GPSLatitude: 48 deg 8' 24.38" N
GPSLongitude: 1 deg 57' 1.25" W
CircleOfConfusion: 0.005 mm
FOV: 69.4 deg
FocalLength35efl: 4.7 mm (35 mm equivalent: 26.0 mm)
GPSPosition: 48 deg 8' 24.38" N, 1 deg 57' 1.25" W
HyperfocalDistance: 0.54 m
LightValue: 13.8

JOSM metadata

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2022-07-07 23:02:39 +0200 (Thu, 07 Jul 2022)
Revision:18513
Build-Date:2022-07-08 01:30:57
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (18513 fr) Linux Manjaro Linux
Memory Usage: 600 MB / 6144 MB (391 MB allocated, but free)
Java version: 19-ea+29-2143, Oracle Corporation, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1920×1080 (scaling 1.00×1.00) :0.1 1920×1080 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: fr_FR.utf8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: fr_FR
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: XFCE

Plugins:
+ ColorPlugin (1537115529)
+ OpeningHoursEditor (35924)
+ PicLayer (1.0.2)
+ apache-commons (35924)
+ apache-http (35924)
+ buildings_tools (35997)
+ conflation (0.6.9)
+ ejml (35924)
+ geotools (35959)
+ jackson (35958)
+ jaxb (35952)
+ jna (35924)
+ jts (35976)
+ log4j (35924)
+ measurement (35978)
+ opendata (35984)
+ photo_geotagging (35933)
+ photoadjust (35893)
+ reverter (35999)
+ tageditor (35893)
+ todo (30306)
+ turnlanes (35978)
+ turnlanes-tagging (v0.0.5)
+ undelete (35893)
+ utilsplugin2 (36001)
+ wikipedia (605)

Tagging presets:
+ ${HOME}/Stockage/Code/gares21/JOSM/Gares21-preset.xml
+ https://raw.githubusercontent.com/osmlab/name-suggestion-index/main/dist/presets/nsi-josm-presets.min.xml

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/PublicTransport&zip=1
- ${HOME}/Stockage/Documents/OpenStreetMap/building_style.mapcss
- https://raw.githubusercontent.com/yopaseopor/indoormap/master/indoormap-style.mapcss
- ${HOME}/Stockage/Documents/OpenStreetMap/Styles_Lane_and_Road_Attributes_own.zip
+ https://josm.openstreetmap.de/josmfile?page=Styles/Sidewalks&zip=1
+ ${HOME}/Stockage/Code/gares21/JOSM/railway-station.mapcss
- ${HOME}/Stockage/Code/OpenLevelUp/src/styles/default.mapcss
- ${HOME}/Stockage/Code/OpenLevelUp/src/styles/details.mapcss
- /tmp/elemstyles.mapcss

Validator rules:
- https://josm.openstreetmap.de/josmfile?page=Rules/OsmoseValidations&zip=1
- https://josm.openstreetmap.de/josmfile?page=Rules/SuspisciousSwimming_Pool&zip=1
- <josm.pref>/Rules_FranceSpecificRules.validator.mapcss
- ${HOME}/Stockage/Documents/OpenStreetMap/indoor.validator.mapcss
- <josm.pref>/Pictures.validator.mapcss
- https://josm.openstreetmap.de/josmfile?page=Rules/KeepRight&zip=1
- https://www.openrailwaymap.org/validator/openrailwaymap.validator.mapcss
- https://josm.openstreetmap.de/josmfile?page=Rules/OSMLint&zip=1
- https://josm.openstreetmap.de/josmfile?page=Rules/QAToolInspiredValidations&zip=1
+ ${HOME}/Stockage/Code/gares21/JOSM/railway-station.validator.mapcss

Last errors/warnings:
- 00002.863 W:  Indoor wall: Could not get presets icon presets/frame.png
- 00002.871 E: Impossible de trouver l'image "presets/platform_rail.png"
- 00002.871 W:  Quai ferroviaire: Could not get presets icon presets/platform_rail.png
- 00002.889 E: Impossible de trouver l'image "styles/standard/transport/ticket-machine.png"
- 00002.889 W:  Food vending machine: Could not get presets icon styles/standard/transport/ticket-machine.png
- 00003.274 E: Skipping to the next rule, because of an error:
- 00003.276 E: org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.ParseException: Encountered " <IDENT> "des "" at line 201, column 21.
- 00003.283 W: Initializing map style ${HOME}/Stockage/Code/gares21/JOSM/railway-station.mapcss terminé(e)s en 11 ms (1 errors, 0 warnings)
- 00003.288 W: Échec du chargement des styles de rendu de '/tmp/elemstyles.mapcss'. Lʼexception était : java.nio.file.NoSuchFileException: /tmp/elemstyles.mapcss
- 00003.289 E: java.nio.file.NoSuchFileException: /tmp/elemstyles.mapcss

Attachments (0)

Change History (5)

comment:1 by PanierAvide, 3 years ago

Description: modified (diff)

comment:2 by PanierAvide, 3 years ago

Description: modified (diff)

comment:3 by PanierAvide, 3 years ago

Description: modified (diff)

comment:4 by taylor.smock, 3 years ago

Component: Plugin photo_geotaggingCore

This looks like a bug in metadata-extractor (which we use to write back the exif data). I just updated metadata-extractor in r18514 as part of a general dependency update. I'll check and see if that fixed it.

I'll note that when I was stepping through the code, everything we sent to be written was OK -- we aren't even touching the Model field.

See https://github.com/drewnoakes/metadata-extractor/releases/tag/2.18.0 for the changes.

EDIT: Looks like it is still a problem.

Last edited 3 years ago by taylor.smock (previous) (diff)

comment:5 by taylor.smock, 3 years ago

Component: CorePlugin apache-commons
Owner: changed from team to Don-vip
Resolution: othersoftware
Status: newclosed

I was wrong. We were actually using the apache commons imaging library. I have tracked down the upstream bug: https://issues.apache.org/jira/browse/IMAGING-319

The last release was in May 2022, and the previous release was August 2020. I don't know when the next release will be.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Don-vip.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.