دستگاههای دارای اندروید ۹ یا بالاتر میتوانند از دوربینهای تک رنگ پشتیبانی کنند. اندروید 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.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 های عمومی زیر در این ویژگی استفاده می شوند:
- فرمت تصویر Y8
- SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO
- SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR
- قابلیت دوربین MONOCHROME (معرفی شده در اندروید 9)
برای جزئیات بیشتر در مورد دوربین HAL، به docs.html مراجعه کنید. برای اطلاعات بیشتر در مورد APIهای عمومی مرتبط، به ImageFormat ، CameraCharacteristics ، CaptureRequest و CaptureResult مراجعه کنید.
اعتبار سنجی
برای تأیید اجرای دوربین تک رنگ، آزمایشهای CTS و VTS زیر را اجرا کنید.
تست های CTS
-
testMonochromeCharacteristics -
CaptureRequestTest -
CaptureResultTest -
StillCaptureTest -
DngCreatorTest
تست های VTS
-
getCameraCharacteristics -
processMultiCaptureRequestPreview