summaryrefslogtreecommitdiffstats
path: root/camera/docs/metadata_properties.xml
diff options
context:
space:
mode:
Diffstat (limited to 'camera/docs/metadata_properties.xml')
-rw-r--r--camera/docs/metadata_properties.xml24
1 files changed, 19 insertions, 5 deletions
diff --git a/camera/docs/metadata_properties.xml b/camera/docs/metadata_properties.xml
index 32b9fcf4..2bac770e 100644
--- a/camera/docs/metadata_properties.xml
+++ b/camera/docs/metadata_properties.xml
@@ -3669,8 +3669,9 @@ xsi:schemaLocation="http://schemas.android.com/service/camera/metadata/ metadata
calibration.
</description>
<units>
- Pixels in the android.sensor.info.activeArraySize coordinate
- system.
+ Pixels in the
+ android.sensor.info.preCorrectionActiveArraySize
+ coordinate system.
</units>
<details>
The five calibration parameters that describe the
@@ -3710,6 +3711,19 @@ xsi:schemaLocation="http://schemas.android.com/service/camera/metadata/ metadata
so `[x_s, y_s]` is the pixel coordinates of the world
point, `z_s = 1`, and `w_s` is a measurement of disparity
(depth) in pixel coordinates.
+
+ Note that the coordinate system for this transform is the
+ android.sensor.info.preCorrectionActiveArraySize system,
+ where `(0,0)` is the top-left of the
+ preCorrectionActiveArraySize rectangle. Once the pose and
+ intrinsic calibration transforms have been applied to a
+ world point, then the android.lens.radialDistortion
+ transform needs to be applied, and the result adjusted to
+ be in the android.sensor.info.activeArraySize coordinate
+ system (where `(0, 0)` is the top-left of the
+ activeArraySize rectangle), to determine the final pixel
+ coordinate of the world point for processed (non-RAW)
+ output buffers.
</details>
<tag id="DEPTH" />
</entry>
@@ -5778,19 +5792,19 @@ xsi:schemaLocation="http://schemas.android.com/service/camera/metadata/ metadata
android.sensor.info.pixelArraySize:
1. Choose a pixel (x', y') within the active array region of the raw buffer given in
- android.sensor.info.preCorrectedActiveArraySize, otherwise this pixel is considered
+ android.sensor.info.preCorrectionActiveArraySize, otherwise this pixel is considered
to be outside of the FOV, and will not be shown in the processed output image.
1. Apply geometric distortion correction to get the post-distortion pixel coordinate,
(x_i, y_i). When applying geometric correction metadata, note that metadata for raw
buffers is defined relative to the top, left of the
- android.sensor.info.preCorrectedActiveArraySize rectangle.
+ android.sensor.info.preCorrectionActiveArraySize rectangle.
1. If the resulting corrected pixel coordinate is within the region given in
android.sensor.info.activeArraySize, then the position of this pixel in the
processed output image buffer is `(x_i - activeArray.left, y_i - activeArray.top)`,
when the top, left coordinate of that buffer is treated as (0, 0).
Thus, for pixel x',y' = (25, 25) on a sensor where android.sensor.info.pixelArraySize
- is (100,100), android.sensor.info.preCorrectedActiveArraySize is (10, 10, 100, 100),
+ is (100,100), android.sensor.info.preCorrectionActiveArraySize is (10, 10, 100, 100),
android.sensor.info.activeArraySize is (20, 20, 80, 80), and the geometric distortion
correction doesn't change the pixel coordinate, the resulting pixel selected in
pixel coordinates would be x,y = (25, 25) relative to the top,left of the raw buffer