Search Unity

Question ARCameraManager: Automatic Prior Image Processing in XRCpuImage

Discussion in 'AR' started by J_Kost, Aug 30, 2021.

  1. J_Kost

    J_Kost

    Joined:
    Feb 16, 2021
    Posts:
    32
    I have tried to find a definitive answer for this before asking here, but came up mostly dry:

    Are images automatically undistorted (e.g. using the intrinsics available via TryGetIntrinsics()) before being exposed in the XRCpuImage obtained with TryAcquireLatestCpuImage()? I am mainly interested in Android, but are there any differences between Android and iOS in this regard?
    I would also be very grateful for information on which other image processing steps are performed, if any, before I can get my hands on the data via the XRCpuImage.

    You might be able to refer to this to save you from having to lay the ground work for your answer:

    I have found a short overview of the image processing behavior in the Android camera subsystem: Basic image processing steps done at the hardware level in Android Camera
    It mentions three CaptureRequest modes: OFF, FAST and HIGH_QUALITY. Which progressively enable more of the steps in the image processing pipeline on the right in the image below. Is this (still) accurate? If so, which mode does ARFoundation use?

     
    Last edited: Aug 31, 2021
  2. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,822
    AR Foundation returns the images from provider libraries: ARCore and ARkit.