Cámaras monocromáticas

Los dispositivos que ejecutan Android 9 o versiones posteriores pueden admitir cámaras monocromáticas. Android 10 proporciona compatibilidad adicional con el formato de transmisión Y8, los metadatos estáticos del array de filtro de color monocromático e infrarrojo cercano (NIR) y las funciones DngCreator para las cámaras monocromáticas.

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

Implementación

Requisitos de hardware

Para implementar esta función, el dispositivo debe tener un sensor de cámara monocromática y un procesador de señal 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, el HAL de la cámara debe cumplir con los siguientes requisitos:

  • android.sensor.info.colorFilterArray se configura como MONO o NIR.
  • Se admiten las claves obligatorias de BACKWARD_COMPATIBLE, pero no MANUAL_POST_PROCESSING.
  • android.control.awbAvailableModes solo contiene AUTO y android.control.awbState es CONVERTED o LOCKED según android.control.awbLock.
  • android.colorCorrection.mode, android.colorCorrection.transform y android.colorCorrection.gains no están en las claves de solicitud y resultado disponibles. Como resultado, el dispositivo de cámara es LIMITED.
  • No están presentes las siguientes claves de metadatos estáticos relacionados con el color:

    • 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 monocromos que admiten formatos de transmisión Y8, la HAL de la cámara debe admitir el intercambio de formatos YUV_420_888 en combinaciones de transmisiones obligatorias (incluido el reprocesamiento) con formatos Y8.

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

Para obtener más detalles 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 la implementación de una cámara monocromática, ejecuta las siguientes pruebas de CTS y VTS.

Pruebas del CTS

  • testMonochromeCharacteristics
  • CaptureRequestTest
  • CaptureResultTest
  • StillCaptureTest
  • DngCreatorTest

Pruebas de VTS

  • getCameraCharacteristics
  • processMultiCaptureRequestPreview