ضبابية الكاميرا

الخلفية الضبابية في الكاميرا هي تأثير ضبابي في عمق المجال يتم إنشاؤه عن طريق تمويه أجزاء من المشهد بحيث لا تكون محل التركيز. يظهر ضبابي في كاميرات الهواتف الجوّالة باستخدام معلومات متعمقة تم الحصول عليها من رؤية الاستيريو من الكاميرات أو من الصمامات الضوئية المزدوجة (PD) لكاميرا واحدة.

بدءًا من نظام التشغيل Android 11، سيمثل نظام Android الأساسي تتوافق مع عمليات تنفيذ خلفية ضبابية وتوفّر واجهات برمجة تطبيقات لإتاحة الميزة إلى تطبيقات تابعة لجهات خارجية

التنفيذ

لإتاحة ميزة "ضبابية الصورة" في الكاميرا على جهازك، عليك اتّباع الخطوات التالية:

  • الإعلان عن ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES:

    وتكون هذه العلامة بتنسيق مصفوفة صف مكونة من ثلاثة أعداد صحيحة، ويكون كل صف بتنسيق {mode, maxWidth, maxHeight}. بالإضافة إلى {ANDROID_CONTROL_EXTENDED_SCENE_MODE_DISABLED, 0, 0}، يجب أن تكون طبقة تجريد الأجهزة (HAL) للكاميرا أيضًا بإدراج أحد ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTURE و وضعان (ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUS) مع الحد الأقصى لأحجام البث.

  • عرض الإعلانات ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_ZOOM_RATIO_RANGES:

    هذه العلامة بتنسيق مصفوفة {minZoomRatio, maxZoomRatio}، الذي يحتوي على جميع نطاقات نسبة التكبير/التصغير لمشهد ممتد مفعَّل بنفس الترتيب كما في ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES نطاق التكبير أو التصغير تعني السمة [1.0, 1.0] أنّ ميزة التكبير/التصغير غير متاحة.

  • تعبئة ANDROID_CONTROL_USE_EXTENDED_SCENE_MODE بوصة ANDROID_CONTROL_AVAILABLE_MODES

لكي يفعّل التطبيق ميزة الخلفية الضبابية، يجب أن يضبط التطبيق ANDROID_CONTROL_MODE. إلى ANDROID_CONTROL_USE_EXTENDED_SCENE_MODE و ANDROID_CONTROL_EXTENDED_SCENE_MODE إلى أحد أوضاع المشهد الممتدة المتوافقة. يُرجى العِلم أنّ تطبيق خلفية ضبابية قد يؤدي إلى زيادة استهلاك الذاكرة بسبب في حساب الاستيريو.

إذا تعذّر تطبيق وضع المشهد الممتد على كل إطار وينتج عن ذلك التأخيرات غير المتوقعة عند التفعيل/الإيقاف، وتشمل ANDROID_CONTROL_EXTENDED_SCENE_MODE بوصة ANDROID_REQUEST_AVAILABLE_SESSION_KEYS وفي الوقت نفسه، نفِّذ طريقة واحدة (ICameraDeviceSession::isReconfigurationRequired()) لتجنُّبها لإعادة تكوين أوضاع المشهد الممتدة التي لا تتطلب إعادة تكوين.

التحقُّق

للتحقق من صحة ميزة الخلفية الضبابية على جهازك، يمكنك تشغيل أجهزة CTS وVTS وVTS التالية اختبارات CTS Verifier:

  • CtsCameraTestCases
  • VtsHalCameraProviderV2_4TargetTest
  • CameraBokehTest في أداة CTS Verifier