Máy ảnh đơn sắc

Các thiết bị chạy Android 9 trở lên có thể hỗ trợ camera đơ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à cận hồng ngoại (NIR), cũng như các hàm DngCreator cho camera đơn sắc.

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

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 camera đơ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 camera đơn sắc

Để quảng cáo một thiết bị camera là camera đơn sắc, Camera HAL phải đáp ứng các yêu cầu sau:

  • android.sensor.info.colorFilterArray được đặt thành MONO hoặc NIR.
  • 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ị camera sẽ LIMITED.
  • Các khoá siêu dữ liệu tĩnh liên quan đến màu sắc 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ả cá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, Camera HAL 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ả quy trình xử lý lại) bằng đị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ề Camera HAL, 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 camera đơn sắc, hãy chạy các kiểm thử CTS và VTS sau đây.

Các bài kiểm thử CTS

  • testMonochromeCharacteristics
  • CaptureRequestTest
  • CaptureResultTest
  • StillCaptureTest
  • DngCreatorTest

Kiểm thử VTS

  • getCameraCharacteristics
  • processMultiCaptureRequestPreview