cmpe-DroneLab / GeoFly3D

3 stars 0 forks source link

Find Out Anafi Camera Specs #9

Closed Sahin-Albayram closed 3 months ago

Sahin-Albayram commented 7 months ago

We took some pictures with drone camera. If we can find out features of drone camera using these images, it would be great Drive Link for Photos

Bera0422 commented 7 months ago

ExifTool seems to be a useful tool. I am going to have a look at that.

Bera0422 commented 7 months ago

https://medium.com/@devlog/extract-drone-photos-exif-data-to-json-using-exiftool-and-python-245b69deea64 https://exiftool.org/

It can be downloaded and tested from above. Here is an example result I got:

[{
  "SourceFile": "P0400040.JPG",
  "ExifToolVersion": 12.70,
  "FileName": "P0400040.JPG",
  "Directory": ".",
  "FileSize": "4.4 MB",
  "FileModifyDate": "2023:11:30 15:22:46+03:00",
  "FileAccessDate": "2023:11:30 15:22:56+03:00",
  "FileInodeChangeDate": "2023:11:30 15:22:54+03:00",
  "FilePermissions": "-rw-r--r--",
  "FileType": "JPEG",
  "FileTypeExtension": "jpg",
  "MIMEType": "image/jpeg",
  "JFIFVersion": 1.01,
  "ExifByteOrder": "Little-endian (Intel, II)",
  "XResolution": 72,
  "YResolution": 72,
  "ResolutionUnit": "inches",
  "ImageDescription": "Anafi 1.8.2",
  "Make": "Parrot",
  "Model": "Anafi",
  "Orientation": "Horizontal (normal)",
  "Software": "anafi-4k-1.8.2",
  "ModifyDate": "2023:11:30 14:05:33",
  "YCbCrPositioning": "Centered",
  "ExposureTime": "1/25",
  "FNumber": 2.4,
  "ExposureProgram": "Program AE",
  "ISO": 301,
  "SensitivityType": "ISO Speed",
  "ISOSpeed": 301,
  "ExifVersion": "0231",
  "OffsetTime": "+03:00",
  "DateTimeOriginal": "2023:11:30 14:05:33",
  "OffsetTimeOriginal": "+03:00",
  "CreateDate": "2023:11:30 14:05:33",
  "OffsetTimeDigitized": "+03:00",
  "ComponentsConfiguration": "Y, Cb, Cr, -",
  "ShutterSpeedValue": "1/25",
  "ApertureValue": 2.4,
  "ExposureCompensation": 0,
  "MeteringMode": "Center-weighted average",
  "Flash": "No Flash",
  "FocalLength": "4.0 mm",
  "SubSecTime": 568,
  "SubSecTimeOriginal": 568,
  "SubSecTimeDigitized": 568,
  "FlashpixVersion": "0100",
  "ColorSpace": "sRGB",
  "ExifImageWidth": 4608,
  "ExifImageHeight": 3456,
  "FocalPlaneXResolution": 7439.143084,
  "FocalPlaneYResolution": 7439.143084,
  "FocalPlaneResolutionUnit": "cm",
  "FileSource": "Digital Camera",
  "SceneType": "Directly photographed",
  "ExposureMode": "Auto",
  "WhiteBalance": "Auto",
  "LightSource": "Unknown",
  "FocalLengthIn35mmFormat": "23 mm",
  "SceneCaptureType": "Standard",
  "Contrast": "Low",
  "Saturation": "Low",
  "Sharpness": "Soft",
  "Compression": "JPEG (old-style)",
  "ThumbnailOffset": 945,
  "ThumbnailLength": 19865,
  "XMPToolkit": "GStreamer",
  "Flight_uid": "2023:11:30 14:04:41+03:00",
  "Vehicle_uuid": "PI040416BA8J099808",
  "DroneRollDegree": -0.227174,
  "DronePitchDegree": 0.502848,
  "DroneYawDegree": 72.231567,
  "CameraRollDegree": -0.020016,
  "CameraPitchDegree": -28.043741,
  "CameraYawDegree": 72.341911,
  "ModelId": "0914",
  "VisibleCameraRollDegree": -0.020010,
  "VisibleCameraPitchDegree": -28.043737,
  "VisibleCameraYawDegree": 72.341911,
  "SerialNumber": "PI040416BA8J099808",
  "SoftwareVersion": "1.8.2",
  "SoftwareBuildId": "anafi-4k-1.8.2",
  "CaptureTsUs": 700724207,
  "BootId": "4B471833594A9B396F5A21E375D12D3F",
  "RunId": "2DAA8A551C18126F4A54365FF45C0D41",
  "RunDate": "2023:11:30 14:04:41+03:00",
  "PhotoMode": "Single",
  "Pitch": 61.956276,
  "Yaw": 72.299339,
  "AboveGroundAltitude": 1.04483842849731,
  "Roll": -0.037575,
  "Date": "2023:11:30 14:05:33.568000+03:00",
  "Format": "image/jpeg",
  "Description": "Anafi 1.8.2",
  "Comment": "Anafi 1.8.2",
  "ImageWidth": 4608,
  "ImageHeight": 3456,
  "EncodingProcess": "Baseline DCT, Huffman coding",
  "BitsPerSample": 8,
  "ColorComponents": 3,
  "YCbCrSubSampling": "YCbCr4:2:2 (2 1)",
  "Aperture": 2.4,
  "ImageSize": "4608x3456",
  "Megapixels": 15.9,
  "ScaleFactor35efl": 5.8,
  "ShutterSpeed": "1/25",
  "SubSecCreateDate": "2023:11:30 14:05:33.568+03:00",
  "SubSecDateTimeOriginal": "2023:11:30 14:05:33.568+03:00",
  "SubSecModifyDate": "2023:11:30 14:05:33.568+03:00",
  "ThumbnailImage": "(Binary data 19865 bytes, use -b option to extract)",
  "CircleOfConfusion": "0.005 mm",
  "FOV": "76.1 deg",
  "FocalLength35efl": "4.0 mm (35 mm equivalent: 23.0 mm)",
  "HyperfocalDistance": "1.28 m",
  "LightValue": 5.6
}]
Bera0422 commented 7 months ago

https://medium.com/@devlog/extract-drone-photos-exif-data-to-json-using-exiftool-and-python-245b69deea64 https://exiftool.org/

It can be downloaded and tested from above. Here is an example result I got:

[{
  "SourceFile": "P0400040.JPG",
  "ExifToolVersion": 12.70,
  "FileName": "P0400040.JPG",
  "Directory": ".",
  "FileSize": "4.4 MB",
  "FileModifyDate": "2023:11:30 15:22:46+03:00",
  "FileAccessDate": "2023:11:30 15:22:56+03:00",
  "FileInodeChangeDate": "2023:11:30 15:22:54+03:00",
  "FilePermissions": "-rw-r--r--",
  "FileType": "JPEG",
  "FileTypeExtension": "jpg",
  "MIMEType": "image/jpeg",
  "JFIFVersion": 1.01,
  "ExifByteOrder": "Little-endian (Intel, II)",
  "XResolution": 72,
  "YResolution": 72,
  "ResolutionUnit": "inches",
  "ImageDescription": "Anafi 1.8.2",
  "Make": "Parrot",
  "Model": "Anafi",
  "Orientation": "Horizontal (normal)",
  "Software": "anafi-4k-1.8.2",
  "ModifyDate": "2023:11:30 14:05:33",
  "YCbCrPositioning": "Centered",
  "ExposureTime": "1/25",
  "FNumber": 2.4,
  "ExposureProgram": "Program AE",
  "ISO": 301,
  "SensitivityType": "ISO Speed",
  "ISOSpeed": 301,
  "ExifVersion": "0231",
  "OffsetTime": "+03:00",
  "DateTimeOriginal": "2023:11:30 14:05:33",
  "OffsetTimeOriginal": "+03:00",
  "CreateDate": "2023:11:30 14:05:33",
  "OffsetTimeDigitized": "+03:00",
  "ComponentsConfiguration": "Y, Cb, Cr, -",
  "ShutterSpeedValue": "1/25",
  "ApertureValue": 2.4,
  "ExposureCompensation": 0,
  "MeteringMode": "Center-weighted average",
  "Flash": "No Flash",
  "FocalLength": "4.0 mm",
  "SubSecTime": 568,
  "SubSecTimeOriginal": 568,
  "SubSecTimeDigitized": 568,
  "FlashpixVersion": "0100",
  "ColorSpace": "sRGB",
  "ExifImageWidth": 4608,
  "ExifImageHeight": 3456,
  "FocalPlaneXResolution": 7439.143084,
  "FocalPlaneYResolution": 7439.143084,
  "FocalPlaneResolutionUnit": "cm",
  "FileSource": "Digital Camera",
  "SceneType": "Directly photographed",
  "ExposureMode": "Auto",
  "WhiteBalance": "Auto",
  "LightSource": "Unknown",
  "FocalLengthIn35mmFormat": "23 mm",
  "SceneCaptureType": "Standard",
  "Contrast": "Low",
  "Saturation": "Low",
  "Sharpness": "Soft",
  "Compression": "JPEG (old-style)",
  "ThumbnailOffset": 945,
  "ThumbnailLength": 19865,
  "XMPToolkit": "GStreamer",
  "Flight_uid": "2023:11:30 14:04:41+03:00",
  "Vehicle_uuid": "PI040416BA8J099808",
  "DroneRollDegree": -0.227174,
  "DronePitchDegree": 0.502848,
  "DroneYawDegree": 72.231567,
  "CameraRollDegree": -0.020016,
  "CameraPitchDegree": -28.043741,
  "CameraYawDegree": 72.341911,
  "ModelId": "0914",
  "VisibleCameraRollDegree": -0.020010,
  "VisibleCameraPitchDegree": -28.043737,
  "VisibleCameraYawDegree": 72.341911,
  "SerialNumber": "PI040416BA8J099808",
  "SoftwareVersion": "1.8.2",
  "SoftwareBuildId": "anafi-4k-1.8.2",
  "CaptureTsUs": 700724207,
  "BootId": "4B471833594A9B396F5A21E375D12D3F",
  "RunId": "2DAA8A551C18126F4A54365FF45C0D41",
  "RunDate": "2023:11:30 14:04:41+03:00",
  "PhotoMode": "Single",
  "Pitch": 61.956276,
  "Yaw": 72.299339,
  "AboveGroundAltitude": 1.04483842849731,
  "Roll": -0.037575,
  "Date": "2023:11:30 14:05:33.568000+03:00",
  "Format": "image/jpeg",
  "Description": "Anafi 1.8.2",
  "Comment": "Anafi 1.8.2",
  "ImageWidth": 4608,
  "ImageHeight": 3456,
  "EncodingProcess": "Baseline DCT, Huffman coding",
  "BitsPerSample": 8,
  "ColorComponents": 3,
  "YCbCrSubSampling": "YCbCr4:2:2 (2 1)",
  "Aperture": 2.4,
  "ImageSize": "4608x3456",
  "Megapixels": 15.9,
  "ScaleFactor35efl": 5.8,
  "ShutterSpeed": "1/25",
  "SubSecCreateDate": "2023:11:30 14:05:33.568+03:00",
  "SubSecDateTimeOriginal": "2023:11:30 14:05:33.568+03:00",
  "SubSecModifyDate": "2023:11:30 14:05:33.568+03:00",
  "ThumbnailImage": "(Binary data 19865 bytes, use -b option to extract)",
  "CircleOfConfusion": "0.005 mm",
  "FOV": "76.1 deg",
  "FocalLength35efl": "4.0 mm (35 mm equivalent: 23.0 mm)",
  "HyperfocalDistance": "1.28 m",
  "LightValue": 5.6
}]

It appears that we do not have geo-information such as altitude, latitude, etc. It may be due to the unavailability of the GPS service while flying the drone indoors.