Skip to content
English
  • There are no suggestions because the search field is empty.

Specifications of XMP Camera Tags – Pix4D Software

The XMP namespace Camera is defined by Pix4D, URI: http://pix4d.com/camera/1.0

Note: For projects that require radiometric calculations (e.g. agriculture applications), refer to the camera XMP section as well as this page which gives the specifications for the different corrections to be applied: Exif/Xmp tags for radiometric correction.

(XMP) Camera

Key Value example Type Meaning
Xmp.Camera.ModelType "fisheye" XmpText Camera model type: one of "perspective" or "fisheye".
Xmp.Camera.PrincipalPoint 2.42299,1.850154 XmpText x, c y in millimeters separated by comma.
Xmp.Camera.PerspectiveFocalLength 4.569165 XmpText For perspective camera: focal length in millimeters.
Xmp.Camera.PerspectiveDistortion

0.201690322, -0.358534038, 0.256185599, 0.004208643, 0.000268361

XmpText For perspective camera: R1, R2, R3, T1, T2 separated by a comma: How are the Internal and External Camera Parameters defined?.
Xmp.Camera.FisheyeAffineMatrix

1583.319083002,0,0,1583.319083002

Ascii For fisheye camera: Affine matrix C, D, E, F separated by comma: How are the Internal and External Camera Parameters defined?.
Xmp.Camera.FisheyeAffineSymmetric 1 Boolean For fisheye camera: If symmetric affine matrix should be used (default false).
Xmp.Camera.FisheyePolynomial

0, 1, -0.025178575, 0.167834214

Ascii For fisheye camera: Polynomial separated by comma: How are the Internal and External Camera Parameters defined?.
Xmp.Camera.RigName Airinov multiSPEC4C 1.1 XmpText Name of the rig model this image belongs to.
Xmp.Camera.RigCameraIndex 0 Short Corresponding camera index within the rig model.
Xmp.Camera.RigRelatives 0.3836, -1.27665, -0.1156 XmpText Rotation angles with respect to the reference camera. For angle convention in Pix4D: Yaw, Pitch, Roll and Omega, Phi, Kappa angles.
Xmp.Camera.CaptureUUID B9A2F3676304A83F92261B5245124F28 XmpText Unique identifier for one capture within a flight. This allows us to find that capture across different rig cameras.
Xmp.Camera.FlightUUID 7F8DC95FFCADA339805BD53338EC888 E XmpText Unique identifier for one flight
Xmp.Camera.UID 12606478859240980328 XmpString

Globally unique image identifier. Unsigned integer, must be a random number uniformly distributed in the range [0, 264-1]. The same random sequence must not be repeated in different units or for different acquisitions.

 

(XMP) Radiometric correction

Key Value example Type Meaning
Xmp.Camera.BandName {"Red", "NIR"} XmpSeq

Name of each band (sequence).
Single page image: one name for each band of the image.
Multipage image: one band name per image page. (Note: this allows only one band per page since the sequence of the sequence is not possible).
The band name must not start with the following characters: 0-9, ',', '(' or ')'.

Xmp.Camera.CentralWavelength {660, 800} XmpSeq Central wavelength of each band in nm. Similar to band names. If band names are not defined, default band names are generated.
Xmp.Camera.WavelengthFWHM {10, 10} XmpSeq Full-width half maximum of the wavelength distribution in nm.
Xmp.Camera.BlackCurrent {10, 7} XmpSeq Dark current for each band/page: Camera radiometric correction specifications.
Xmp.Camera.BandSensitivity {0.78, 0.043} XmpSeq The sensitivity of each band (pixel intensity value per irradiance).
Xmp.Camera.SunSensor {12.87, 9.72} XmpSeq Sun irradiance sensor (upwards looking sensor) raw value for each band.
Xmp.Camera.SunSensorExposureTime 0.1 XmpText Sun irradiance sensor exposure time in seconds.
Xmp.Camera.SunSensorSensitivity {16.45, 14.08} XmpSeq Sun irradiance sensor sensitivity.
Xmp.Camera.InvalidPixel {"40,593,981,291"} XmpSeq List of bad pixels as comma-separated x, y coordinate list, one sequence for each band.
Xmp.Camera.VignettingPolynomial {"0.00325, 1.983e-6, 5.0983e-9"} XmpSeq Vignetting correction by radial polynomial: 1D polynomial coefficients (one string of comma-separated values per page, 1 string for RGB images): Camera radiometric correction specifications.
Xmp.Camera.VignettingCenter {"542,912"} XmpSeq Vignetting correction by radial polynomial: Center point cx, cy in pixel (one string of comma-separated values per page): Camera radiometric correction specifications.
Xmp.Camera.VignettingPolynomial2DName {"0,0,1,0, ..., 2,2,3,1"} XmpSeq Vignetting correction by 2D polynomial: name of coefficients: n,m for c_{n,m} separated by commas (one string of comma-separated values per page): Camera radiometric correction specifications.
Xmp.Camera.VignettingPolynomial2D {"0.633287676149, 1.47936368033, ..., -1.58329242609, 0.130259802058"} XmpSeq Vignetting correction by 2D polynomial: coefficients c_{n,m} for names given by Xmp.Camera.VignettingPolynomial2DName separated by commas (one string of comma-separated values per page): Camera radiometric correction specifications.
Xmp.Camera.ColorTransform

{1, -0.114886,-0.0456918, -0.176716, 1, 0, -0.0715561, 0, 1}

XmpSeq Sequence of double, color conversion matrix (for RGB: R2R, G2R, B2R, R2G, G2G, B2G, R2B, G2B, B2B). Considering the information as a 3x3 matrix M, (R,G,B) new= M * (R,G,B).
Xmp.Camera.IsNormalized 1 Boolean Defines whether the radiometric correction is required (value 0) or the data has already been corrected (value 1) and therefore should not be corrected.

(XMP) Radiometric calibration target

Key Value example Type Meaning
Xmp.Camera.Albedo {0.22, 0.19 , 0.37} XmpSeq For radiometric calibration target images: Albedo of the disk for each band/page.
Xmp.Camera.ReflectArea {"X1,Y1,X2,Y2,X3,Y3,X4,Y4", "X1,Y1,...", ...} XmpSeq For radiometric calibration target images: polygon defining the target area for each page.
Xmp.Camera.CalibrationPicture 2 Short

Specifies if this image is a radiometric calibration target: 0 = no, 1 = yes but invalid, 2 = yes and valid.
For Sequoia cameras: 0 = no, 1 and 2 = yes.

(XMP) Position and orientation

Key Value example Type Meaning
Xmp.Camera.Yaw 72.7942 Rational or Double Orientation data in degrees. For more information on the definition of yaw, pitch, roll: Yaw, Pitch, Roll and Omega, Phi, Kappa angles.
Xmp.Camera.Pitch 1.7943 Rational or Double Orientation data in degrees. For more information on the definition of yaw, pitch, roll: Yaw, Pitch, Roll and Omega, Phi, Kappa angles.
Xmp.Camera.Roll 2.8909 Rational or Double Orientation data in degrees. For more information on the definition of yaw, pitch, roll: Yaw, Pitch, Roll and Omega, Phi, Kappa angles.
Xmp.Camera.HorizCS

EPSG:4326

EPSG:6318

XmpString The horizontal coordinate system used by the GPS receiver, i.e. by Exif.GPSInfo.GPSLatitude and Exif.GPSInfo.GPSLongitude, in the form auth:WKID, where auth is an authority (e.g. EPSG or ESRI) and WKID a well-known code.
Xmp.Camera.VertCS

EPSG:5773

EPSG:5703

XmpString The vertical coordinate system used by the GPS receiver, i.e. by Exif.GPSInfo.GPSAltitude, in the form auth:WKID, where auth is an authority (e.g. EPSG or ESRI) and WKID a well-known code, or the special value ellipsoidal for ellipsoidal height.
Xmp.Camera.GPSXYAccuracy 5 Rational Horizontal GPS Accuracy in meters.
Xmp.Camera.GPSZAccuracy 10 Rational Vertical GPS Accuracy in meters.
Xmp.Camera.GyroRate 0.0487 Rational Gyro rate during image acquisition, lower = better quality.
Xmp.Camera.IMUPitchAccuracy 0.113 Rational The value in degrees of 1-sigma of the Gaussian noise of the IMU Pitch measurement.
Xmp.Camera.IMURollAccuracy 0.087 Rational The value in degrees of 1-sigma of the Gaussian noise of the IMU Roll measurement.
Xmp.Camera.IMUYawAccuracy 1.250 Rational The value in degrees of 1-sigma of the Gaussian noise of the IMU Yaw measurement.
Xmp.Camera.NominalCameraDistance 25.87 Rational Nominal GPS distance between calibrated cameras in meters in order to have a decent overlap. Use to dynamically remove the cameras with worst quality as determined by the GyroRate such the target distance is as specified.
Xmp.Camera.AboveGroundAltitude 25.3 Rational or Double Altitude above ground/take-off location in meters (from the altimeter of the drone).
Xmp.Camera.Location [12.3759, -120.44, 12.294] XmpSeq Location as a 3-vector in the CRS given by Xmp.Camera.CartesianCRS.
Xmp.Camera.LocationAccuracy [0.4395, 0.3442, 0.2938] XmpSeq Accuracy (sigma) of the location in the units given by the Xmp.Camera.CartesianCRS. If the CRS tag contains the special value arbitrary, the units are arbitrary but the same as for the location.
Xmp.Camera.Orientation [-3.35472, 5.38485, 180.2475] XmpSeq Omega-Phi-Kappa angles in degree stating the orientation in the CRS given by Xmp.Camera.CartesianCRS . The convention is described in detail in this support page.
Xmp.Camera.OrientationAccuracy [1.2394, 1.203, 1.2943] XmpSeq Accuracy (sigma) of the orientation Omega-Phi-Kappa angles in degree.
Xmp.Camera.CartesianCRS EPSG:2227+5703 XmpString

CRS definition for the geolocation and orientation provided by the tags XMP.Camera.Location and XMP.Camera.Orientation.

One of:

  • A WKT string version 2 describing a Cartesian 3D CRS.
  • A string in the format Authority:code+code where the first code is for a 2D CRS and the second one is for a vertical CRS (e.g. EPSG:4326+5773).
  • A string in the form Authority:code+Authority:code where the first code is for a 2D CRS and the second one is for a vertical CRS.
  • A string in the form Authority:code where the code is for 3D CRS.
  • The special value arbitrary  for a completely arbitrary isometric 3D CRS without any scale.

(XMP) Sun irradiance position and orientation

Key Value example Type Meaning
Xmp.Camera.SunSensorYaw 72.7942 Rational or Double Sun irradiance sensor orientation data in degrees. For more information on the definition of yaw, pitch, roll: Yaw, Pitch, Roll and Omega, Phi, Kappa angles.
Xmp.Camera.SunSensorPitch 1.7943 Rational or Double Sun irradiance sensor orientation data in degrees. For more information on the definition of yaw, pitch, roll: Yaw, Pitch, Roll and Omega, Phi, Kappa angles.
Xmp.Camera.SunSensorRoll 2.8909 Rational or Double Sun irradiance sensor orientation data in degrees. For more information on the definition of yaw, pitch, roll: Yaw, Pitch, Roll and Omega, Phi, Kappa angles.
Xmp.Camera.SunSensorRelativeRotation 175, 0, 0 XmpSeq Relative angle between camera and sunshine sensor in the omega, phi, kappa system (same as rig relatives).

(XMP) Bit-depth reduction

Key Value example Type Meaning
Xmp.Camera.TransformAlpha {55684.1, 58672.8, 58889.1} XmpSeq

Sequence of double, alpha parameter for each band.

This and the following two tags are used to undo a gamma transform which has been applied to fit data in 8bit space without losing the dynamic range:
pixel_final = alpha * pixel_normalized^gamma + beta;

where pixel_normalized is the pixel value stored in the JPG image scaled to the [0,1] interval.

Xmp.Camera.TransformBeta {9850.9, 6862.2, 6645.91} XmpSeq Sequence of double, beta parameter for each band.
Xmp.Camera.TransformGamma {2.12109, 2.6243, 2.33549} XmpSeq Sequence of double, gamma parameter for each band.

(XMP) Miscellaneous

Key Value example Type Meaning
Xmp.Camera.SensorBitDepth 14 Short Bit depth of the original sensor
Xmp.Camera.SensorTemperature 43.4 Double

Temperature of the sensor (degree Celsius)