ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

كاميرا ITS-in-a-Box

تعد مجموعة اختبار صورة كاميرا Android (ITS) جزءًا من أداة التحقق من مجموعة اختبار توافق Android (CTS) وتتضمن اختبارات للتحقق من محتوى الصورة. يدعم CTS Verifier أتمتة اختبار ITS باستخدام Camera ITS-in-a-box ؛ يغطي دعم الاختبارات اليدوية جميع عوامل شكل جهاز Android.

يتضمن ITS-in-a-box المزايا التالية:

  • أتمتة. لا حاجة لتدخل بشري أثناء الاختبار.
  • تقليل وقت الاختبار. يعمل الاختبار الموازي للكاميرا الأمامية / الخلفية على تقليل وقت دورة الاختبار بنسبة 50٪.
  • استكشاف الأخطاء وإصلاحها بسهولة. يؤدي اتساق بيئة الاختبار إلى عدد أقل من أخطاء الإعداد ويزيد من إمكانية التكرار.
  • كفاءة. تعمل القدرة على إعادة المحاولة للكاميرا / المشهد الفردي على تحسين كفاءة تنفيذ الاختبار.

ابدء

يتكون ITS-in-a-box من صندوق بلاستيكي مقطوع بالليزر من رسومات التصميم بمساعدة الكمبيوتر (CAD) ولوح تخطيطي وجهاز قيد الاختبار (DUT). يمكنك استخدام مجال الرؤية الواسع (WFoV) ITS-in-a-box ، القادر على اختبار كاميرات WFoV (FoV> 90 درجة) وكاميرات RFoV (FoV <90 درجة) ، أو المجال العادي لـ -عرض (RFoV) ITS-in-a-box.

لبدء استخدام Camera ITS-in-a-box:

  1. شراء أو بناء WFoV أو RFoV ITS-in-a-box.
  2. قم بتكوين الكمبيوتر اللوحي باستخدام برنامج Camera ITS.
  3. قم بإجراء الاختبارات .
  4. احصل على نتائج من DUT.

تكوين الجهاز اللوحي

يوفر هذا القسم إرشادات خطوة بخطوة لإعداد جهاز لوحي للاستخدام مع اختبارات Camera ITS الموجودة في دليل CameraITS . تستخدم هذه التعليمات جهاز Pixel C كمثال على الجهاز اللوحي. للحصول على معلومات حول متطلبات الجهاز اللوحي والتوصيات ، راجع متطلبات الجهاز اللوحي .

ملاحظة: تقوم البرامج النصية لـ Camera ITS Python تلقائيًا بتعيين الخيارات التالية على الجهاز اللوحي لك:
الإعدادات> العرض> السكون> بعد 30 دقيقة من عدم النشاط
السطوع التكيفي> إيقاف

  1. اشحن الجهاز اللوحي وقم بتشغيله. إذا طُلب منك إعداد حساب ، فتخطه (لا تتطلب Camera ITS أي حساب مقترن بالكمبيوتر اللوحي).
  2. قم بتحديث الجهاز اللوحي إلى Android 7.0 أو أعلى. Android 6.x والإصدارات الأقل لا تدعم Camera ITS.
  3. تفعيل وضع المطور .
  4. ارجع إلى الإعدادات وحدد خيارات المطور.
    تمكين الخيارات
    • على
    • إبق متيقظا
    • تصحيح أخطاء USB (يسمح هذا للمضيف بتشغيل الجهاز اللوحي في وضع التصحيح. عند توصيل الجهاز اللوحي بالمضيف لأول مرة ، يطالب الجهاز اللوحي بالسماح بتصحيح أخطاء USB؟ إذا لم يعرض الجهاز اللوحي مطالبة التصحيح ، فافصل ثم أعد توصيل لوح.)
    تعطيل الخيارات
    • تحديثات النظام التلقائية
    • تحقق من التطبيقات عبر USB
  5. حدد DUT ومعرفات الرسم البياني عن طريق تشغيل $ adb devices لسرد الأجهزة المتاحة. لتحديد device_id و chart_id ، قم بتوصيل وفصل الأجهزة ومراقبة الأجهزة التي تتصل chart_id .
  6. قم بإجراء ثلاثة عمليات تشغيل اختبارية لمنع التلميحات ومطالبات المستخدم التي يمكن أن تحجب المخططات على شاشة الكمبيوتر اللوحي.
    1. ضع الجهاز اللوحي ووجهه لأعلى على منضدة (لا تقم بتوصيل الجهاز اللوحي باللوحة الخلفية للصندوق).
    2. قم بتشغيل الأمر التالي: يتطلب المشاهدان 2 و 3
      python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,3
      
      من الجهاز اللوحي عرض صورة ، لذلك يطالب الجهاز اللوحي بالسماح لـ Drive بالوصول إلى الصور والوسائط والملفات الموجودة على جهازك؟ . امسح هذه المطالبة (وامنع المطالبات المستقبلية) بالضغط على " سماح".
    3. قم بتشغيل الأمر مرة أخرى. يطالب الجهاز اللوحي الاحتفاظ بنسخة من هذا الملف؟ ويقترح Google Drive. امسح هذه المطالبة (وامنع المطالبات المستقبلية) بالضغط على أيقونة Drive ثم إلغاء للتحميل إلى محرك الأقراص.
    4. أخيرًا ، قم بتشغيل tools/run_all_tests.py وتأكد من أن المشاهد تتغير تلقائيًا بينما tools/run_all_tests.py البرنامج النصي عبر مشاهد مختلفة. بينما تفشل معظم الاختبارات (نظرًا لعدم توجيه الكاميرا إلى المخطط) ، يمكنك التحقق من أن الجهاز اللوحي يتنقل بشكل صحيح عبر المشاهد دون عرض أي مطالبات أو نوافذ منبثقة أخرى على الشاشة.

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

قبل تشغيل ITS-in-a-box ، تأكد من أن إعداد اختبارك يتضمن الأجهزة والبرامج التالية:

  • واحد (1) ITS-in-a-box
  • جهاز لوحي واحد (1) عالي الدقة مقاس 10 بوصات لعرض المشاهد ، S / N: 5811000011
  • واحد (1) DUT مثبت عليه تطبيق CTS Verifier 7.0_8 +. مثال DUT:
    • عدد (1) بكسل NOF26W لاختبار الكاميرا الخلفية (0) ، S / N: FA6BM0305016. لتثبيت تطبيق CTS Verifier ، قم بفك ضغط android-cts-verifier.zip ثم قم بتشغيل
      adb -s FA6BM0305016 install -r android-cts-verifier/CtsVerifier.apk
      

مشاهد الجري من 0 إلى 4

لتشغيل المشاهد من 0 إلى 4 على الكاميرا الخلفية:

cd android-cts-verifier/CameraITS
. build/envsetup.sh
python tools/run_all_tests.py device=FA6BM0305016 camera=0 chart=5811000011

مثال:

الكاميرا 0 S / N: FA6BM0305016
الشكل 1. الكاميرا 0 S / N: FA6BM0305016

إعادة المشاهد

يمكنك إعادة محاولة المشاهد لكاميرا واحدة:

  • لإعادة تجربة المشاهد بكاميرا واحدة:
    python tools/run_all_tests.py device=FA6BM0305016 chart=5811000011 camera=0 scenes=3,4
    

تشغيل المشهد 5

يتطلب المشهد 5 إعدادًا خاصًا مع إضاءة محددة (للحصول على التفاصيل ، راجع CameraITS.pdf في CTS Verifier ، والذي يمكنك تنزيله من تنزيلات Compatibility Test Suite ). يمكنك تشغيل المشهد 5 بشكل منفصل (خارج الصندوق).

مشهد الكاميرا 5
الشكل 2. مشهد الكاميرا 5

لتشغيل المشهد الخامس للكاميرات الأمامية والخلفية على جهاز واحد:

python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=5
python tools/run_all_tests.py device=FA6BM0305016 camera=1 scenes=5

الحصول على النتائج

يمكنك عرض النتائج أثناء الاختبار وحفظ النتائج المكتملة كتقرير.

  • عرض النتائج. لحفظ نتائج Camera ITS كتقرير:
    1. اضغط على Pass واحفظ التقرير.
      تقرير الكاميرا ITS
      الشكل 3. تقرير الكاميرا ITS
    2. سحب التقارير من الجهاز:
      adb -s FA6BM0305016 pull /sdcard/verifierReports
      
    3. قم بفك ضغط ملف التقرير واعرض test_result.xml .
      تقارير الكاميرا ITS
      الشكل 4. تقارير الكاميرا ITS

متطلبات الجهاز اللوحي

يجب أن يكون حجم عرض الأجهزة اللوحية حوالي 10 بوصات مع دقة شاشة أكبر من 1920 × 1200 بكسل. يجب تعيين قيمة DISPLAY_LEVEL في CameraITS/tools/wake_up_screen.py وفقًا لطراز الجهاز اللوحي. يسرد الجدول أدناه الأجهزة اللوحية الموصى بها لاختبار أنظمة النقل الذكية.

جهاز عرض الحجم
(بوصة)
عرض الحجم
(بكسل)
أبعاد الجهاز اللوحي
(بوصة)
DISPLAY_LEVEL نظام التشغيل
Samsung Galaxy Tab A 10.1 10.1 1920 × 1200 9.65 × 5.88 × 0.3 192 أندرويد 9
Chuwi Hi9 Air 10.1.2 تحديث 10.1 2560 × 1600 9.52 × 6.77 × 0.31 192 أندرويد 8.1
أسوس زينباد 3 9.7 2048 × 1536 9.47 × 6.44 × 0.28 192 أندرويد 6.0
هواوي ميديا ​​باد m5 10.8 2560 × 1600 10.18 × 6.76 × 0.29 192 أندرويد 8.0
بكسل سي 10.2 2560 × 1800 9.53 × 7.05 × 0.28 96 أندرويد 8.0
سوني اكسبيريا زد 4 10.1 2560 × 1600 10 × 6.57 × 0.24 192 أندرويد 7.0

الأسئلة المتداولة (FAQs)

س 1: كيف يمكنني تحديد منصات الاختبار التي أحتاجها لجهازي؟

تختبر مراجعة RFoV ITS-in-a-box 1 كاميرات RFoV للمشهد من 0 إلى المشهد 4 في دليل CameraITS/tests . يتم تعريف RFoV على أنه 60 درجة <FoV <90 درجة . بالنسبة لكاميرات FoV الأكبر حجمًا ، قد تظهر الأضواء في الصور أو قد تغطي المخططات مساحة صغيرة جدًا في FoV ، مما يؤثر على نتائج الاختبار.

تختبر WFoV ITS-in-a-box المراجعة 2 كاميرات WFoV لاختبارات المشهد من 0 إلى المشهد 4 في دليل CameraITS/tests . يتم تعريف WFoV على أنه FoV> = 90 درجة . إنها مطابقة وظيفيًا للمراجعة 1 ، لكنها أكبر. يمكن لجهاز اختبار المراجعة 2 اختبار كل من كاميرات RFoV و WFoV في نظام Android 9 والإصدارات الأحدث.

يختبر صندوق دمج المستشعرات إزاحة توقيت الكاميرا / الجيروسكوب ومزامنة إطار أنظمة الكاميرات المتعددة مع الاختبارات في scenes=sensor_fusion . مطلوب إزاحة توقيت الكاميرا / الجيروسكوب أقل من 1 مللي ثانية REALTIME ميزة REALTIME وتطبيقات VR / AR.

يمكن اختبار الأجهزة متعددة الكاميرات باستخدام منصة واحدة لاختبارات أنظمة النقل الذكية الثابتة وجهاز دمج أجهزة الاستشعار إذا كانت الكاميرا تحمل علامة ميزة REALTIME .

يتم توفير مجموعة من أمثلة التكوينات في الجدول أدناه.

مثال كاميرا FoVs في الوقت الحالى؟ المنصات الموصى بها ملاحظات
1 75 درجة لا القس 1 أندرويد 7.0 أو أحدث
2 75 درجة نعم القس 1 + اندماج الاستشعار Android 9 أو أعلى
3 75 درجة + 95 درجة نعم Rev 2 + انصهار المستشعر Android 9 أو أعلى

س 2: كيف يمكنني تحديد جهاز الاختبار المستخدم؟

مقياس الرسم البياني يعمل مع Android 9 أو أعلى. تأكد من صحة إدخال مسافة الرسم البياني لإصدار جهاز الاختبار.

WFoV ITS-in-a-box القس 2

python tools/run_all_tests.py ... chart=# dist=22

RFoV ITS-in-a-box Rev 1 ( dist=31 هو الافتراضي)

python tools/run_all_tests.py ... chart=#

Q3: كيف يمكنني التحكم في سطوع الجهاز اللوحي؟

بشكل افتراضي ، يتم ضبط سطوع الجهاز اللوحي على 96. لتغيير السطوع على الأجهزة اللوحية التي تعمل بنظام Android 7.0 حتى Android 9 ، قم بتشغيل:

edit tools/wake_up_screen.py
DISPLAY_LEVEL=96 → DISPLAY_LEVEL=192

لتغيير السطوع على الأجهزة اللوحية التي تعمل بنظام Android 10 أو أعلى ، يمكن تغيير السطوع في سطر الأوامر عن طريق إضافة علامة brightness :

python tools/run_all_tests.py device=# camera=# chart=# brightness=192

س 4: كيف أقوم بتصحيح اختبار واحد؟

يمكن إجراء الاختبارات بشكل فردي لأغراض التصحيح ، ولكن لا يتم إبلاغ CtsVerifier.apk إلا إذا تم تشغيل المشهد بأكمله. تتم طباعة النتائج على الشاشة المحلية ويتم حفظ الصور في الدليل المحلي بدلاً من الدليل /tmp/tmp### إنشاؤه عند تشغيل tools/run_all_tests.py .

لتشغيل مشهد فردي:

  1. قم بتحميل مشهد بإضافة علامة scenes في tools/run_all_tests.py :
    python tools/run_all_tests.py device=# camera=# chart=# scenes=#
    
  2. اضغط على Control + C لإيقاف الاختبارات بعد تسجيل المشهد على أنه محمل إلى stdout .

    إذا كان المشهد الصحيح موجودًا بالفعل على الشاشة ، فقم بتنشيط الشاشة:

    python tools/wake_up_screen.py screen=#
    
  3. قم بإجراء اختبار فردي.

    python tests/scene#/test_*.py device=# camera=#

    يتم بعد ذلك إنشاء المؤامرات في الدليل المحلي ويتم طباعة stdout و stderr على الشاشة.

    للحصول على مزيد من المعلومات لتصحيح الأخطاء ، أضف عبارات print إلى البرنامج النصي. لزيادة إخراج الاختبار من أجل التصحيح ، أضف علامة debug=True .

    python tests/scene#/test_*.py device=# camera=# debug=True

س 5: لماذا أحتاج إلى إجراء اختبارات فاشلة كمشهد كامل بدلاً من إعادة إجراء الاختبارات بشكل فردي؟

يمكن إجراء الاختبارات بشكل فردي لأغراض التصحيح ، ولكن لا يتم إبلاغ CtsVerifier.apk إلا إذا تم تشغيل المشهد بأكمله.

تضمن Camera ITS أن تطبيقات الطرف الثالث لها واجهة كاميرا متوافقة. على غرار اختبار الوحدة ، يشدد كل اختبار على مواصفة واحدة في الكاميرا. للقبض على سلوك غير موثوق به ، من المتوقع أن تمر هذه الاختبارات كمجموعة لمشهد كامل. على سبيل المثال ، على الرغم من أن اختبارًا واحدًا غير موثوق به قد يجتاز إعادة تشغيل مشهد كامل ، إلا أنه من الصعب اجتياز عدة اختبارات غير موثوقة.

كمثال متطرف ، ضع في اعتبارك الحالة التي يوجد فيها 10 اختبارات في مشهد كل منها لديه احتمال 50٪ لإعادة PASS . من خلال إجراء كل اختبار على حدة ، هناك احتمال كبير أن يتمكن المشغل من الحصول على الكاميرا لتمرير Camera ITS. ومع ذلك ، إذا تم إجراء الاختبارات بشكل مجمّع كمشهد ، فهناك فرصة بنسبة 0.1٪ فقط لاجتياز المشهد.

س 6: كيف أقوم بتشغيل مشهد واحد أو إعادة ترتيب مشاهد الجري؟

بشكل افتراضي ، تقوم tools/run_all_tests.py البرنامج النصي tools/run_all_tests.py بتشغيل جميع المشاهد بالترتيب. ومع ذلك ، يمكن تشغيل المشاهد بشكل فردي أو بترتيب محدد وإبلاغ CtsVerifier.apk .

لتشغيل مشهد فردي (على سبيل المثال ، مشهد 2):

python tools/run_all_tests.py device=# camera=# chart=# scenes=2

لتشغيل أكثر من مشهد بترتيب معين:

python tools/run_all_tests.py device=# camera=# chart=# scenes=3,2

س 7: فشل عدد من اختبارات المشهد 1 مع إعداد الجهاز اللوحي ولكنها تمر بمخطط ورقي. ما هو الخطأ؟

تأكد من أن الجهاز اللوحي وبيئة الاختبار تفي بالمواصفات التالية.

مواصفات الجهاز اللوحي

تأكد من أن الجهاز اللوحي يلبي المواصفات التالية:

  • حجم الشاشة (بوصة): 10 بوصات
  • حجم العرض (بكسل): أكبر من 2000 × 1400 بكسل

لمزيد من التفاصيل ، راجع متطلبات الجهاز اللوحي .

سطوع الجهاز اللوحي

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

لمزيد من التفاصيل ، راجع كيف أتحكم في سطوع الجهاز اللوحي؟

مستوى إضاءة الصندوق (يتطلب مقياس لوكس)

تأكد من أن قيمة لوكس المستهدفة عند فتح الجهاز اللوحي تتراوح بين 100 و 300.

إذا كان مستوى lux مرتفعًا جدًا ، فإن scene1/test_param_flash_mode.py تُرجع FAIL . إذا كان مستوى اللوكس منخفضًا جدًا ، فستفشل اختبارات متعددة.

س 8: كيف أقوم بتصحيح أخطاء اختبارات اندماج المستشعر؟

  1. تأكد من أن كنت في dialout المجموعة.

    groups | egrep ‘dialout'
  2. تأكد من توصيل وحدة التحكم في اندماج المستشعر عن طريق تحديد ما إذا كانت تقنية Microchip متصلة بمنفذ USB.

    lsusb
    …
    Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc.
    …
    
  3. شغّل الاختبار عدة مرات للحصول على توزيع لمحاولات الاختبار باستخدام الأمر:

    python tools/run_sensor_fusion_box.py device=A camera=0 num_runs=10 rotator=default
    

    توجد مخرجات التشغيل في المجلد /tmp/tmp### تم إنشاؤه ضمن مجلدات sensor_fusion_# ، حيث يمثل # التشغيل. الأسباب الشائعة للفشل هي:

    1. لم يتم توسيط الهاتف بشكل صحيح.
    2. لم يتم العثور على ميزات كافية في الصورة (غالبًا ما تكون مشكلة في FoV أو في الإضاءة).
    3. عاد FAIL غير صحيح، ويجب تصحيح توقيت تعويض بين الكاميرا وجيروسكوب.

س 9: ما المعلومات التي يجب تضمينها عند الإبلاغ عن خطأ في الاختبار؟

عند الإبلاغ عن خطأ في الاختبار ، قم بتضمين الملفات والصور التي تم إنشاؤها للاختبار.

  1. إذا أجريت الاختبار من خلال tools/run_all_tests.py ، tools/run_all_tests.py بإرفاق دليل مضغوط /tmp/tmp### tools/run_all_tests.py .
  2. إذا قمت بإجراء الاختبار بمفرده ، فقم بإرفاق جميع مخرجات الشاشة والصور التي تم إنشاؤها إلى الخطأ.

قم أيضًا بتضمين تقرير الشوائب. بعد فشل الاختبار المعني ، استخدم الأمر التالي لإنشاء تقرير خطأ وإرفاق ملف مضغوط تم إنشاؤه بالخلل.

adb -s device_id bugreport

س 10: كيف أقوم بإزالة أشرطة التنقل على الأجهزة اللوحية مقاس 16:10 التي تحجب المشهد؟

بالنسبة للأجهزة اللوحية ذات نسب العرض إلى الارتفاع 16:10 (أو أكبر) ، يمكن أن يحجب شريط التنقل جزءًا من المشهد. لإخفاء شريط التنقل ، استخدم أمر adb التالي للكمبيوتر اللوحي.

adb -s device_id shell settings put global policy_control immersive.full=*