ملاحظات إصدار "حزمة اختبار صور الكاميرا" لنظام التشغيل Android 13

يتضمن إصدار Android 13 عددًا من التغييرات على قسم تكنولوجيا المعلومات في الكاميرا بالإضافة إلى التغييرات المتزايدة مثل الإصدارات المحدثة من Python والحزم واختبار تحديثات الأجهزة، يتيح Android 13 اختبار الفيديو.

تلخّص هذه الصفحة التغييرات التي طرأت على تكنولوجيا المعلومات في الكاميرا لنظام التشغيل Android 13- وتندرج التغييرات ضمن سبع فئات واسعة:

إصدارات Python والحزم

يتوافق Android 13 مع إصدارات Python التالية بالإضافة إلى إصدارات ومكتبات Python المتوافقة في Android 12:

إضافات ملفات الإعداد

بسبب إضافة عنصر تحكّم في الإضاءة لاختبار test_auto_flash.py، تم يحتاج الملف config.yml إلى معلمتين إضافيتين لوحدة التحكم قناة الإضاءة. لتحديد ما إذا كان الجهاز قيد الاختبار (DUT) قابلاً للطي أو لا، يتطلب ملف config.yml معلمة إضافية ثالثة يجب إلى كل من قسم الاندماج القائم على الجهاز اللوحي وأجهزة الاستشعار.

TestBeds:
  - Name: TEST_BED_TABLET_SCENES
    # Test configuration for scenes[0:4, 6, _change]
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut
          - serial: 5B16001229
            label: tablet

    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"  # "True" or "False"; quotes needed
      lighting_cntl: <controller-type>  # "arduino" or "None"; quotes needed
      lighting_ch: <controller-channel>
      camera: 0
      foldable_device: "False". # set "True" if testing foldable
      scene: <scene-name>  # if <scene-name> runs all scenes

اختبار التغييرات

المشهد1_1/test_Black_white.py

يشمل اختبار test_black_white التحقّق من تشبُّع تشبُّع القنوات. متوافقة مع إصدارات Android السابقة، ما يعني أنّ المتطلبات أول مستوى لواجهة برمجة تطبيقات للتحقق من تشبّع اللون في القناة هو Android 10-

المشهد1_2/test_yuv_plus_raw.py

يتعامل اختبار test_yuv_plus_raw مع أدوات استشعار غير بنسبة عرض إلى ارتفاع 16:9 أو 4:3 لتوفير دعم أفضل لـ RAW. إذا لم يتمكن الاختبار من العثور على تنسيق شائع بين تنسيق RAW لأداة الاستشعار والتنسيق YUV للالتقاط، يقارن الاختبار التقاط RAW إلى أكبر قيمة YUV في التقاط حتى لو كانت نسب العرض إلى الارتفاع مختلفة.

المشهد2_a/test_faces.py

تمت إعادة احتساب test_faces في test_num_faces.

المشهد2_a/test_num_faces.py

يتعامل اختبار test_num_faces مع اقتصاص أداة الاستشعار ووضع مستطيلات للوجه بشكل صحيح على التقاطات كاميرا UW التي تم اقتصاصها.

المشهد3/test_lens_position.py

إيقاف اختبار test_lens_position نهائيًا في Android 13-

المشهد 6/test_zoom.py

تمت إعادة ضبط اختبار test_zoom للسماح بإجراء اختبار أسهل للمؤلفين رقم ثلاثة وأربعة وأنظمة الكاميرات. إذا اختبرت الكاميرا بشكل صحيح على مدى 10 أضعاف نطاق التكبير أو التصغير، يتم الخروج من الاختبار بشكل صحيح. يتيح هذا إجراء اختبار التكبير/التصغير في مسافة الرسم البياني.

المشهد_change/test_scene_change.py

إيقاف اختبار test_scene_change نهائيًا في Android 13-

الاختبارات الجديدة المستندة إلى الأجهزة اللوحية

يتضمّن Android 13 اختبارَين جديدَين مستنِدَين إلى الأجهزة اللوحية. يكون كلا الاختبارَين إلزاميًا للأجهزة التي يتم إطلاقها باستخدام الإصدار 13 من Android، ولكن يتم تخطّيه بالنسبة إلى الأجهزة التي تتم ترقيتها إلى الإصدار 13 من نظام التشغيل Android

المشهد اسم الاختبار المستوى الأول لواجهة برمجة التطبيقات الوصف
2_a اختبار_الفلاش_التلقائي 33 يعمل هذا الإعداد على تأكيد تفعيل الوميض التلقائي في المشاهد المظلمة.
2_ب اختبار_yuv_jpg_capture_sameness 33 التأكد من أن عمليات التقاط الصور بتنسيق YUV وJPEG متطابقة من حيث البت.

المشهد2_a/test_auto_flash.py

يضيف Android 13 اختبار test_auto_flash.

المعلمات

  • flash: يتم تخطّي الاختبار في حال عدم توفّر الفلاش.

الطريقة

يهيئ الاختبار طلب الالتقاط للوميض التلقائي ويعرض مشهدًا التي تتطلب حدث فلاش. الإضاءة في جهاز الاختبار والجهاز اللوحي مطفأً لتقديم مشهد مظلم لخوارزمية التعرض التلقائي للضوء. الاختبار لضبط تسلسل من التقاط NUM_FRAMES مع تفعيل الفلاش التلقائي. إذا كانت يعرض الإعداد AE_STATE FLASH_REQUIRED. يتأكد الاختبار من أنّ الفلاش إطلاق النار في الالتقاطات.

يمكن التحكّم بالإضاءة يدويًا عندما يُطلب منك ذلك، أو تلقائيًا باستخدام وحدة تحكّم Arduino مع إمكانية التحكم في الإضاءة تمت إضافتها للاختبار الآلي تحوّل في يؤدي مجلد الأدوات lighting_control_utils إلى تمركز الرمز البرمجي للتحكم في والإضاءة في الاختبارات.

المشهد2_a/test_yuv_jpeg_capture_sameness.py

نظام التشغيل Android 13 يضيف test_yuv_jpeg_capture_sameness الاختبار.

المعلمات

  • streamUseCase: تحدّد هذه العلامة ما إذا كانت الكاميرا تتوافق مع حالة استخدام البث.
  • android.jpeg.quality: لضبط جودة JPEG على 100

الطريقة

يلتقط هذا الاختبار صورتين باستخدام أكبر تنسيقين شائعين لملفات YUV وJPEG مع على نفس نسبة العرض إلى الارتفاع الخاصة بأكبر تنسيق JPEG ولا تتجاوز درجة دقة 1920 × 1440. يضبط الاختبار jpeg.quality على 100 ويلتقط سطحًا مزدوجًا. طلبك. ثم يحوّل الصورتين إلى صفائف نموذج أحمر أخضر أزرق ويحسب الجذر الثلاثي الأبعاد متوسط الفرق التربيعي (RMS) بين الصورتين. الفرق بين التفاوت على 1%.

اختبار الفيديو

فريق تكنولوجيا المعلومات في الكاميرا يوفّر إمكانية اختبار الفيديو على أجهزة Android 13-

يضيف Android 13 الاختبارات التالية:

المشهد اسم الاختبار المستوى الأول لواجهة برمجة التطبيقات الوصف
4 test_preview_stabilization_fov 33 يتم التأكّد من أنّ معاينة الفيديو لا يتم اقتصاصها كثيرًا عند تفعيل ميزة التثبيت.
4 اختبار_نسبة_الفيديو_و_الاقتصاص 33 لتأكيد تنسيقات الفيديوهات بتنسيقات مختلفة، ونسبة العرض إلى الارتفاع، والاقتصاص
الدمج بين المستشعرات test_preview_stabilition 33 لتأكيد عمل تثبيت المعاينة
الدمج بين المستشعرات اختبار_تثبيت_الفيديو 33 لتأكيد عمل ميزة تثبيت الفيديو

المشهد4/test_preview_stabilization_fov.py

نظام التشغيل Android 13 يضيف test_preview_stabilization_fov الاختبار. يتحقّق هذا الاختبار من أحجام المعاينة المتوافقة للتأكّد من أنّ صورة FoV ليست تم اقتصاصها بشكل غير ملائم.

الطريقة

يلتقط الاختبار فيديوهَين، أحدهما تم تفعيل وضع "تثبيت المعاينة" فيه والآخر. مع إيقاف تثبيت المعاينة. يتم تحديد إطار تمثيلي من كل وتحليله للتأكد من أن تغييرات FoV في مقطعي الفيديو ضمن المواصفات.

على وجه التحديد، يتحقق الاختبار من وجود المعلمات التالية سواء كانت مع أو بدون تثبيت المعاينة:

  • ويظل استدارة الدائرة ثابتًا.
  • ويظل مركز الدائرة ثابتًا.
  • يتغير حجم الدائرة بما لا يزيد عن 20%، مما يعني أن موضع الإحالة بحد أقصى 20٪.

المشهد4/test_video_aspect_ratio_and_crop.py

نظام التشغيل Android 13 يضيف test_video_aspect_ratio_and_crop الاختبار. تماثِل test_aspect_ratio_and_crop اختبار التقاط الصور الثابتة، يفحص هذا الاختبار تنسيقات الفيديو المتوافقة لضمان عدم تمديد إطارات الفيديو أو اقتصاصها بشكل غير ملائم. ويتم اختبار كل جودة الفيديو التي يتم الإبلاغ عنها ذاتيًا. بالإضافة إلى ذلك، إذا تتوافق الكاميرا مع فيديو HLG10، تم اختبار فيديو 10 بت.

نظام التشغيل Android 13 يضيف get_available_video_qualities إلى its_session_utils. لمشاركة الرمز الشائع يتضمّن اختبارات حالية، يتضمّن Android 13 أيضًا تجربتَين جديدتَين وظيفتي الخدمات العامة، image_fov_utils وvideo_processing_utils.

الطريقة

يلتقط الاختبار صورة مرجعية بتنسيق RAW أو أعلى جودة درجة الدقة JPEG في حال عدم توافق RAW. من الصورة المرجعية، حجم الدائرة وموقعها. يتم بعد ذلك أخذ مقاطع فيديو قصيرة مع جميع جودة الفيديو المدعومة. ويتم استخراج الإطار المرجعي النهائي من كل وجودة الفيديو. من الإطار المرجعي، مجال الرؤية (FoV)، يتم توسيطه (الاقتصاص) ونسبة العرض إلى الارتفاع لكل جودة فيديو.

بالنسبة إلى حساب FoV، يقارن الاختبار حجم دائرة إطار الفيديو حجم الدائرة المحسوبة من حجمي الصورة المرجعية والفيديو بالنسبة إلى عمليات التحقق من الاقتصاص، يقارن الاختبار بين إطار الفيديو في الوسط والمرجع توسيط الصور. للتحقق من نسبة العرض إلى الارتفاع، فإن استخدام المشهد هو دائرة سوداء كبيرة على خلفية بيضاء، ويحدد الاختبار نسبة العرض إلى الارتفاع من الدائرة ويتحقق من عدم تشويه الإطار.

Sense_fusion/test_preview_stabilization.py

يضيف Android 13 اختبار "test_preview_stabilization" الذي يختبر جميع درجات المعاينة المتوافقة حتى 1920×1080. يستخدم الاختبار جهاز اختبار انصهار أجهزة الاستشعار تتطلب وحدة التحكم الجديدة بالدمج بمستشعر الإصدار 2 أو ترقية البرامج الثابتة الإصدارات السابقة من وحدة تحكم Arduino. لمزيد من التفاصيل حول وحدة التحكم الجديدة، يُرجى الاطّلاع على تحديثات الأجهزة وإضافاتها.

الطريقة

يتم تحريك الهاتف ببطء على زاوية تبلغ 15 درجة تقريبًا ويتم عرض تم تفعيل التثبيت. ثم تتم مقارنة تدوير الصور دوران الجيروسكوب.

Sense_fusion/test_video_stabilization.py

يضيف Android 13 اختبار "test_video_stabilization" الذي يختبر درجات جودة الفيديو المتوافقة حتى 1920×1080. فيديو QCIF بدقة منخفضة الجودة. يستخدم الاختبار دالة جهاز اختبار انصهار أجهزة الاستشعار تتطلب وحدة التحكم الجديدة بالدمج بمستشعر الإصدار 2 أو ترقية البرامج الثابتة الإصدارات السابقة من وحدة تحكم Arduino. لمزيد من التفاصيل حول وحدة التحكم الجديدة، يُرجى الاطّلاع على تحديثات الأجهزة وإضافاتها.

الطريقة

وتحرك أداة الاختبار الهاتف ببطء على زاوية تبلغ 15 درجة تقريبًا مع تم تفعيل تثبيت المعاينة. ثم تتم مقارنة تدوير الصور دوران الجيروسكوب.

تحديثات الأجهزة والإضافات

يشمل Android 13 ترقية إلى الإصدار المستند إلى Arduino وحدة التحكّم بالدمج بجهاز استشعار النُسخ السابقة 2. تشمل هذه الترقية التغييرات على كل من الأجهزة والبرامج الثابتة. تسمح الترقية وحدة التحكم لضبط سرعة الدوران والتحكم في البرق. تشمل الترقية أيضًا درعًا جديدًا (كما هو موضح في الشكل 1)، والذي يوفر ثلاث قنوات الدوران وثلاث قنوات للتحكم في الإضاءة.

Arduino Shield rev2.0

الشكل 1. الإصدار 2.0 من Arduino Shield مع التحكّم في الدوران والإضاءة

بالإضافة إلى ذلك، وبالنسبة إلى الإصدار 13، لن تحتاج إلى تثبيت البرامج الثابتة يجب تحديث وحدات التحكم لتفعيل التحكم في سرعة الدوران. هذه البرامج الثابتة يمكن تنزيله من:

لمزيد من المعلومات حول وحدة التحكّم الجديدة، يُرجى الاطّلاع على وحدة التحكّم بدمج استشعار Android 13

دعم بشأن اختبار الأجهزة القابلة للطي

إتاحة اختبار Android 13 للأجهزة القابلة للطي الأجهزة. لتفعيل واجهة برمجة التطبيقات للكاميرات المتعددة للأجهزة القابلة للطيّ، يعرض حالة الهاتف (Folded أو Unfolded) مطلوب أثناء الاختبار. لتفعيل الاستطلاع بشأن حالة الهاتف في جميع رموز DUT، بما في ذلك الأجهزة غير القابلة للطي الهواتف، قم بتشغيل أمر adb التالي بعد اتصال DUT بالمضيف.

adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier