Urządzenia z Androidem w wersji 9 lub nowszej mogą obsługiwać aparaty monochromatyczne. Android 10 zapewnia dodatkową obsługę formatu strumienia Y8, statycznych metadanych monochromatycznego i podczerwennego (NIR) filtra barwnego oraz funkcji DngCreator
w przypadku aparatów monochromatycznych.
Dzięki tej funkcji producenci urządzeń mogą stosować kamery monochromatyczne lub podczerwieni i zmniejszyć wykorzystanie pamięci, korzystając z formatu strumienia Y8. Aparat monochromatyczny może służyć jako aparat fizyczny urządzenia z wieloma aparatami, aby uzyskać lepsze właściwości dotyczące szumów przy słabym oświetleniu.
Implementacja
Wymagania sprzętowe
Aby wdrożyć tę funkcję, urządzenie musi mieć monochromatyczny czujnik aparatu i procesor sygnału obrazu (ISP) do przetwarzania danych wyjściowych czujnika.
Wdróż kamerę monochromatyczną
Aby reklamować urządzenie z kamerą jako urządzenie z kamerą monochromatyczną, interfejs Camera HAL musi spełniać te wymagania:
android.sensor.info.colorFilterArray
ma wartośćMONO
lubNIR
.- Obsługiwane są klucze wymagane
BACKWARD_COMPATIBLE
, a nie obsługiwany jest kluczMANUAL_POST_PROCESSING
. - Element
android.control.awbAvailableModes
zawiera tylko elementAUTO
, a elementandroid.control.awbState
ma wartośćCONVERTED
lubLOCKED
w zależności od elementuandroid.control.awbLock
. android.colorCorrection.mode
,android.colorCorrection.transform
iandroid.colorCorrection.gains
nie są dostępne w kluczach żądania i rezultatu. W efekcie kamera jestLIMITED
.Nie ma tych kluczy metadanych statycznego dotyczących kolorów:
android.sensor.referenceIlluminant*
android.sensor.calibrationTransform*
android.sensor.colorTransform*
android.sensor.forwardMatrix*
android.sensor.neutralColorPoint
android.sensor.greenSplit
Wszystkie kanały kolorów mają te same wartości w przypadku tych kluczy metadanych:
android.sensor.blackLevelPattern
android.sensor.dynamicBlackLevel
android.statistics.lensShadingMap
android.tonemap.curve
android.sensor.noiseProfile
ma tylko jeden kanał kolorów.
W przypadku urządzeń monochromatycznych obsługujących formaty strumienia Y8 interfejs HAL aparatu musi obsługiwać zastępowanie formatów YUV_420_888
w obowiązkowych kombinacjach strumieni (w tym ponowne przetwarzanie) za pomocą formatów Y8.
Ta funkcja korzysta z tych publicznych interfejsów API:
- Format obrazu Y8
- SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO
- SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR
- Funkcja aparatu MONOCHROME (wprowadzona w Androidzie 9)
Więcej informacji o interfejsie HAL aparatu znajdziesz w dokumentacji. Więcej informacji o powiązanych interfejsach API znajdziesz w dokumentacji dotyczącej ImageFormat, CameraCharacteristics, CaptureRequest oraz CaptureResult.
Weryfikacja
Aby zweryfikować implementację monochromatycznej kamery, uruchom te testy CTS i VTS.
Testy CTS
testMonochromeCharacteristics
CaptureRequestTest
CaptureResultTest
StillCaptureTest
DngCreatorTest
Testy VTS
getCameraCharacteristics
processMultiCaptureRequestPreview