Cámaras monocromáticas

Los dispositivos con Android 9 o versiones posteriores admiten cámaras monocromáticas. Android 10 proporciona compatibilidad adicional con el formato de transmisión Y8, monocromático y array de filtros de color de infrarrojo cercano (NIR) metadatos estáticos y funciones DngCreator para cámaras monocromáticas.

Con esta capacidad, los fabricantes de dispositivos pueden implementar NIR y reducir el uso de memoria mediante el formato de transmisión Y8. Una cámara monocromática puede funcionar como la base cámara de un dispositivo lógico de varias cámaras para lograr mejores características de ruido en condiciones de poca luz.

Implementación

Requisitos de hardware

Para implementar esta función, tu dispositivo debe tener un sensor de cámara monocromático y un procesador de señales de imagen (ISP) para procesar la salida del sensor.

Cómo implementar una cámara monocromática

Para anunciar un dispositivo de cámara como una cámara monocromática, la La HAL de la cámara debe cumplir con los siguientes requisitos:

  • android.sensor.info.colorFilterArray se configura como MONO o NIR.
  • Se admiten BACKWARD_COMPATIBLE claves requeridas y MANUAL_POST_PROCESSING no es compatible.
  • android.control.awbAvailableModes solo contiene AUTO y android.control.awbState es CONVERTED o LOCKED dependiendo de android.control.awbLock
  • android.colorCorrection.mode, android.colorCorrection.transform y android.colorCorrection.gains no están en la solicitud ni el resultado disponibles claves. Como resultado, el dispositivo de cámara LIMITED
  • Las siguientes claves de metadatos estáticas relacionadas con el color no están presentes:

    • android.sensor.referenceIlluminant*
    • android.sensor.calibrationTransform*
    • android.sensor.colorTransform*
    • android.sensor.forwardMatrix*
    • android.sensor.neutralColorPoint
    • android.sensor.greenSplit
  • Todos los canales de color tienen los mismos valores para las siguientes claves de metadatos:

    • android.sensor.blackLevelPattern
    • android.sensor.dynamicBlackLevel
    • android.statistics.lensShadingMap
    • android.tonemap.curve
  • android.sensor.noiseProfile tiene solo un canal de color.

En el caso de los dispositivos monocromáticos compatibles con los formatos de transmisión Y8, la HAL de la cámara debe admitir cambiar los formatos de YUV_420_888 en las combinaciones de transmisión obligatorias (incluidas reprocesamiento) con formatos Y8.

En esta función, se usan las siguientes APIs públicas:

Para obtener más información sobre la HAL de la cámara, consulta docs.html. Para obtener más información sobre las APIs públicas relacionadas, consulta ImageFormat CameraCharacteristics, CaptureRequest, y CaptureResult:

Validación

Para validar tu implementación de una cámara monocromática, ejecuta el siguiente CTS y VTS.

Pruebas del CTS

  • testMonochromeCharacteristics
  • CaptureRequestTest
  • CaptureResultTest
  • StillCaptureTest
  • DngCreatorTest

Pruebas de VTS

  • getCameraCharacteristics
  • processMultiCaptureRequestPreview