تأثير البوكيه في الكاميرا هو تأثير عمق مجال سطحي يتم إنشاؤه من خلال تمويه أجزاء من المشهد لكي لا تكون في بؤرة التركيز. في الكاميرات على الأجهزة الجوّالة، يتم الحصول على تأثير الخلفية الضبابية باستخدام معلومات العمق التي يتم الحصول عليها من الرؤية المجسمة من كاميرتَين أو من ثنائي الصمام الضوئي (PD) لكاميرا واحدة.
بدءًا من الإصدار 11 من نظام التشغيل Android، يتيح نظام 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 وCTS Verifier التالية:
CtsCameraTestCasesVtsHalCameraProviderV2_4TargetTestCameraBokehTestفي أداة التحقّق في مجموعة أدوات اختبار التوافق (CTS)