Kamera bokeh

Kamera bokeh, bir sahnenin bazı bölümlerinin odakta kalmaması için bulanıklaştırılmasıyla oluşturulan sığ bir alan derinliği efektidir. Mobil cihazlardaki kameralarda bokeh efekti, iki kameranın stereo görüşünden veya tek bir kameranın çift fotodiyodundan (PD) elde edilen derinlik bilgileri kullanılarak elde edilir.

Android 11'den itibaren Android platformu, bokeh uygulamalarını destekler ve özelliği üçüncü taraf uygulamalarına sunmak için API'ler sağlar.

Uygulama

Kamera bokeh özelliğini cihazınızda kullanabilmek için aşağıdakileri yapın:

  • ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES reklamı yapın:

    Bu etiket, her biri {mode, maxWidth, maxHeight} biçiminde olan üç tam sayı kümesi dizisi biçimindedir. Kamera HAL'i, {ANDROID_CONTROL_EXTENDED_SCENE_MODE_DISABLED, 0, 0}'e ek olarak ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTURE ve ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUS modlarından birini veya ikisini de karşılık gelen maksimum akış boyutlarıyla birlikte listelemelidir.

  • ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_ZOOM_RATIO_RANGES için reklam verin:

    Bu etiket, etkin bir genişletilmiş sahne modu için tüm yakınlaştırma oranı aralıklarını ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES ile aynı sırada içeren bir {minZoomRatio, maxZoomRatio} dizisi biçimindedir. [1.0, 1.0] olan yakınlaştırma aralığı, yakınlaştırmanın desteklenmediği anlamına gelir.

  • ANDROID_CONTROL_AVAILABLE_MODES konumunda ANDROID_CONTROL_USE_EXTENDED_SCENE_MODE değerini doldurun.

Bir uygulamanın bokeh özelliğini tetiklemesi için ANDROID_CONTROL_MODE değerini ANDROID_CONTROL_USE_EXTENDED_SCENE_MODE olarak, ANDROID_CONTROL_EXTENDED_SCENE_MODE değerini ise desteklenen genişletilmiş sahne modlarından birine ayarlamalıdır. Bokeh'in uygulanmasının, stereo hesaplama nedeniyle ek bellek tüketimine yol açabileceğini unutmayın.

Desteklenen genişletilmiş sahne modu kare başına uygulanamıyorsa ve etkinleştirildiğinde/devre dışı bırakıldığında beklenmedik gecikmelere neden oluyorsa ANDROID_CONTROL_EXTENDED_SCENE_MODE öğesini ANDROID_REQUEST_AVAILABLE_SESSION_KEYS içine ekleyin. Aynı zamanda, yeniden yapılandırma gerektirmeyen genişletilmiş sahne modlarında yeniden yapılandırma yapılmasını önlemek için ICameraDeviceSession::isReconfigurationRequired() yöntemini uygulayın.

Doğrulama

Cihazınızdaki bokeh özelliğini doğrulamak için aşağıdaki CTS, VTS ve CTS Doğrulayıcı testlerini çalıştırın:

  • CtsCameraTestCases
  • VtsHalCameraProviderV2_4TargetTest
  • CTS Doğrulayıcı'da CameraBokehTest