Máy ảnh đơn sắc

Các thiết bị chạy Android 9 trở lên có thể hỗ trợ máy ảnh đơn sắc. Android 10 hỗ trợ thêm định dạng luồng Y8, siêu dữ liệu tĩnh của mảng bộ lọc màu đơn sắc và gần hồng ngoại (NIR) cũng như các hàm DngCreator cho máy ảnh đơn sắc.

Với khả năng này, nhà sản xuất thiết bị có thể triển khai thiết bị máy ảnh đơn sắc hoặc máy ảnh hồng ngoại gần (NIR) và giảm mức sử dụng bộ nhớ bằng cách sử dụng định dạng luồng Y8. Máy ảnh đơn sắc có thể đóng vai trò là máy ảnh thực tế cơ bản của một thiết bị nhiều máy ảnh logic để đạt được các đặc điểm nhiễu ánh sáng yếu tốt hơn.

Triển khai

Yêu cầu về phần cứng

Để triển khai tính năng này, thiết bị của bạn phải có cảm biến máy ảnh đơn sắc và bộ xử lý tín hiệu hình ảnh (ISP) để xử lý đầu ra của cảm biến.

Triển khai máy ảnh đơn sắc

Để quảng cáo thiết bị máy ảnh dưới dạng máy ảnh đơn sắc, HAL máy ảnh phải đáp ứng các yêu cầu sau:

  • android.sensor.info.colorFilterArray được đặt thành MONO hoặc NIR.
  • Các khoá bắt buộc BACKWARD_COMPATIBLE được hỗ trợ và MANUAL_POST_PROCESSING không được hỗ trợ.
  • android.control.awbAvailableModes chỉ chứa AUTOandroid.control.awbStateCONVERTED hoặc LOCKED tuỳ thuộc vào android.control.awbLock.
  • android.colorCorrection.mode, android.colorCorrection.transformandroid.colorCorrection.gains không có trong các khoá yêu cầu và kết quả hiện có. Do đó, thiết bị máy ảnh là LIMITED.
  • Các khoá siêu dữ liệu tĩnh liên quan đến màu sau đây không có:

    • android.sensor.referenceIlluminant*
    • android.sensor.calibrationTransform*
    • android.sensor.colorTransform*
    • android.sensor.forwardMatrix*
    • android.sensor.neutralColorPoint
    • android.sensor.greenSplit
  • Tất cả kênh màu đều có cùng giá trị cho các khoá siêu dữ liệu sau:

    • android.sensor.blackLevelPattern
    • android.sensor.dynamicBlackLevel
    • android.statistics.lensShadingMap
    • android.tonemap.curve
  • android.sensor.noiseProfile chỉ có một kênh màu.

Đối với các thiết bị đơn sắc hỗ trợ định dạng luồng Y8, HAL máy ảnh phải hỗ trợ việc hoán đổi định dạng YUV_420_888 trong các tổ hợp luồng bắt buộc (bao gồm cả việc xử lý lại) với định dạng Y8.

Các API công khai sau đây được dùng trong tính năng này:

Để biết thêm thông tin chi tiết về lớp trừu tượng phần cứng (HAL) cho máy ảnh, hãy xem docs.html. Để biết thêm thông tin về các API công khai có liên quan, hãy xem ImageFormat, CameraCharacteristics, CaptureRequestCaptureResult.

Xác nhận kết quả

Để xác thực việc triển khai máy ảnh đơn sắc, hãy chạy các quy trình kiểm thử CTS và VTS sau.

Kiểm thử CTS

  • testMonochromeCharacteristics
  • CaptureRequestTest
  • CaptureResultTest
  • StillCaptureTest
  • DngCreatorTest

Kiểm thử VTS

  • getCameraCharacteristics
  • processMultiCaptureRequestPreview