Начиная с 27 марта 2025 г. мы рекомендуем использовать android-latest-release
вместо aosp-main
для создания и участия в AOSP. Дополнительные сведения см. в разделе Изменения в AOSP .
Монохромные камеры
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Устройства под управлением Android 9 или выше могут поддерживать монохромные камеры. Android 10 обеспечивает дополнительную поддержку формата потока Y8, статических метаданных массива монохромных и ближних инфракрасных (NIR) цветовых фильтров, а также функций DngCreator
для монохромных камер.
Благодаря этой возможности производители устройств могут реализовать монохромное или NIR-устройство камеры и сократить использование памяти, используя формат потока Y8. Монохромная камера может служить базовой физической камерой логического многокамерного устройства для достижения лучших характеристик шума при слабом освещении.
Выполнение
Требования к оборудованию
Для реализации этой функции ваше устройство должно иметь монохромный датчик камеры и процессор сигнала изображения (ISP) для обработки выходных данных датчика.
Внедрить монохромную камеру
Чтобы рекламировать камеру как монохромную камеру, HAL камеры должен соответствовать следующим требованиям:
-
android.sensor.info.colorFilterArray
имеет значение MONO
или NIR
. - Поддерживаются обязательные ключи
BACKWARD_COMPATIBLE
, а MANUAL_POST_PROCESSING
не поддерживается. -
android.control.awbAvailableModes
содержит только AUTO
, а android.control.awbState
имеет значение CONVERTED
или LOCKED
в зависимости от android.control.awbLock
. -
android.colorCorrection.mode
, android.colorCorrection.transform
и android.colorCorrection.gains
отсутствуют в доступных ключах запроса и результата. В результате устройство камеры LIMITED
. Следующие статические ключи метаданных, связанные с цветом, отсутствуют:
-
android.sensor.referenceIlluminant*
-
android.sensor.calibrationTransform*
-
android.sensor.colorTransform*
-
android.sensor.forwardMatrix*
-
android.sensor.neutralColorPoint
-
android.sensor.greenSplit
Все цветовые каналы имеют одинаковые значения для следующих ключей метаданных:
-
android.sensor.blackLevelPattern
-
android.sensor.dynamicBlackLevel
-
android.statistics.lensShadingMap
-
android.tonemap.curve
android.sensor.noiseProfile
имеет только один цветовой канал.
Для монохромных устройств, поддерживающих форматы потока Y8, HAL камеры должен поддерживать замену форматов YUV_420_888
в обязательных комбинациях потоков (включая повторную обработку) с форматами Y8.
В этой функции используются следующие публичные API:
Для получения более подробной информации о Camera HAL см. docs.html . Для получения более подробной информации о связанных публичных API см. ImageFormat , CameraCharacteristics , CaptureRequest и CaptureResult .
Проверка
Чтобы проверить реализацию вашей монохромной камеры, проведите следующие тесты CTS и VTS.
Тесты CTS
-
testMonochromeCharacteristics
-
CaptureRequestTest
-
CaptureResultTest
-
StillCaptureTest
-
DngCreatorTest
Тесты СУДС
-
getCameraCharacteristics
-
processMultiCaptureRequestPreview
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# Monochrome cameras\n\nDevices running Android 9 or higher can support\nmonochrome cameras. Android 10\nprovides additional support for the Y8 stream format, monochrome and\nnear-infrared (NIR) color filter array\nstatic metadata, and `DngCreator` functions for monochrome cameras.\n\nWith this capability, device manufacturers can implement a monochrome or\nNIR camera device and reduce memory use by using\nthe Y8 stream format. A monochrome camera can serve as the underlying physical\ncamera of a\n[logical multi-camera device](https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA)\nto achieve better low-light noise characteristics.\n\nImplementation\n--------------\n\n### Hardware requirements\n\nTo implement this feature, your device must have a monochrome camera sensor and\nan image signal processor (ISP) to process the sensor output.\n\n### Implement a monochrome camera\n\nTo advertise a camera device as a monochrome camera, the\n[Camera HAL](/docs/core/camera/camera3) must meet\nthe following requirements:\n\n- `android.sensor.info.colorFilterArray` is set to `MONO` or `NIR`.\n- `BACKWARD_COMPATIBLE` required keys are supported and `MANUAL_POST_PROCESSING` isn't supported.\n- `android.control.awbAvailableModes` only contains `AUTO` and `android.control.awbState` is either `CONVERTED` or `LOCKED` depending on `android.control.awbLock`.\n- `android.colorCorrection.mode`, `android.colorCorrection.transform`, and `android.colorCorrection.gains` aren't in available request and result keys. As a result, the camera device is [`LIMITED`](https://developer.android.com/reference/android/hardware/camera2/CameraMetadata.html#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED).\n- The following color-related static metadata keys aren't present:\n\n - `android.sensor.referenceIlluminant*`\n - `android.sensor.calibrationTransform*`\n - `android.sensor.colorTransform*`\n - `android.sensor.forwardMatrix*`\n - `android.sensor.neutralColorPoint`\n - `android.sensor.greenSplit`\n- All color channels have the same values for the following metadata keys:\n\n - `android.sensor.blackLevelPattern`\n - `android.sensor.dynamicBlackLevel`\n - `android.statistics.lensShadingMap`\n - `android.tonemap.curve`\n- `android.sensor.noiseProfile` has only one color channel.\n\nFor monochrome devices supporting Y8 stream formats, the Camera HAL must support\nswapping `YUV_420_888` formats in mandatory stream combinations (including\nreprocessing) with Y8 formats.\n\nThe following public APIs are used in this feature:\n\n- [Y8 image format](https://developer.android.com/reference/android/graphics/ImageFormat#Y8)\n- [SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO](https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO)\n- [SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR](https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR)\n- [MONOCHROME camera capability](https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_MONOCHROME) (introduced in Android 9)\n\nFor more details on the Camera HAL, see\n[docs.html](https://android.googlesource.com/platform/system/media/+/android16-release/camera/docs/docs.html).\nFor more information on related public APIs, see\n[ImageFormat](https://developer.android.com/reference/android/graphics/ImageFormat),\n[CameraCharacteristics](https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics),\n[CaptureRequest](https://developer.android.com/reference/android/hardware/camera2/CaptureRequest),\nand\n[CaptureResult](https://developer.android.com/reference/android/hardware/camera2/CaptureResult).\n\nValidation\n----------\n\nTo validate your implementation of a monochrome camera, run the following CTS\nand VTS tests.\n\n### CTS tests\n\n- `testMonochromeCharacteristics`\n- `CaptureRequestTest`\n- `CaptureResultTest`\n- `StillCaptureTest`\n- `DngCreatorTest`\n\n### VTS tests\n\n- `getCameraCharacteristics`\n- `processMultiCaptureRequestPreview`"]]