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がandroid.control.awbLockに応じてCONVERTEDまたはLOCKEDに設定されている。android.colorCorrection.mode、android.colorCorrection.transform、android.colorCorrection.gainsが使用可能なリクエストキーと結果キーに含まれていない。そのため、カメラデバイスがLIMITEDである。色に関連する次の静的メタデータキーが指定されていない。
android.sensor.referenceIlluminant*android.sensor.calibrationTransform*android.sensor.colorTransform*android.sensor.forwardMatrix*android.sensor.neutralColorPointandroid.sensor.greenSplit
すべてのカラーチャネルの値が次のメタデータキーと同じ。
android.sensor.blackLevelPatternandroid.sensor.dynamicBlackLevelandroid.statistics.lensShadingMapandroid.tonemap.curve
android.sensor.noiseProfileにカラーチャネルが 1 つのみ指定されている。
Y8 ストリーム形式をサポートするモノクロ デバイスの場合、カメラ HAL は必須ストリームの組み合わせ(再処理を含む)で YUV_420_888 形式と Y8 形式との入れ替えをサポートする必要があります。
この機能では、次の公開 API が使用されます。
- Y8 画像形式
- SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO
- SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR
- モノクロカメラ機能(Android 9 で導入)
カメラ HAL について詳しくは、docs.html をご覧ください。関連する公開 API について詳しくは、ImageFormat、CameraCharacteristics、CaptureRequest、CaptureResult をご覧ください。
検証
モノクロカメラの実装を検証するには、次の CTS テストと VTS テストを実施します。
CTS テスト
testMonochromeCharacteristicsCaptureRequestTestCaptureResultTestStillCaptureTestDngCreatorTest
VTS テスト
getCameraCharacteristicsprocessMultiCaptureRequestPreview