دوربین ITS-in-a-Box

مجموعه تست تصویر دوربین Android (ITS) بخشی از تأییدکننده مجموعه تست سازگاری Android (CTS) است و شامل آزمایش‌هایی است که محتوای تصویر را تأیید می‌کند. CTS Verifier از اتوماسیون تست ITS با دوربین ITS-in-a-box پشتیبانی می کند. پشتیبانی از تست‌های دستی تمام فاکتورهای فرم دستگاه اندروید را پوشش می‌دهد.

ITS-in-a-box شامل مزایای زیر است:

  • اتوماسیون. هیچ مداخله انسانی در طول آزمایش مورد نیاز نیست.
  • عیب یابی آسان. سازگاری محیط تست منجر به خطاهای راه اندازی کمتر و افزایش تکرارپذیری می شود.
  • کارایی. امکان امتحان مجدد برای دوربین/صحنه مجزا، کارایی اجرای تست را بهبود می بخشد.

شروع کنید

ITS-in-a-box متشکل از یک جعبه پلاستیکی است که با لیزر از نقشه های طراحی به کمک کامپیوتر (CAD)، یک تبلت نمودار و یک دستگاه در حال آزمایش (DUT) برش داده شده است. جدول زیر ویژگی ها و مشخصات دکل های مختلف ITS-in-a-box موجود را شرح می دهد.

دکل فاصله نمودار محدوده FoV دوربین DUT (تقریبا) ویژگی ها
دکل پایه مدولار 22 سانتی متر 60 تا 120 درجه
  • رد پای کوچکتر
  • بریدگی دیافراگم بزرگ در جلو که امکان تست سیستم چند دوربینی را بدون مسدود کردن بریدگی دوربین‌های ثانویه فراهم می‌کند.
  • دکل قابل چرخش 90 درجه است
  • دکل پایه مدولار و دکل اکستنشن تله 22 سانتی متر - 100 سانتی متر * 10 تا 120 درجه
  • بریدگی دیافراگم بزرگ در جلو
  • پشتیبانی از تست دوربین هایی که حداقل فاصله فوکوس طولانی تری دارند (اکثر دوربین های تله)
  • WFoV ITS-in-a-box 22 سانتی متر 60 تا 120 درجه
  • ردپای بزرگ که بسیاری از موقعیت های نصب DUT را امکان پذیر می کند
  • پشتیبانی از DUT های بزرگ مانند تبلت ها
  • RFoV ITS-in-a-box 31 سانتی متر 60-90 درجه
  • تبلت نمودار
  • سیستم روشنایی داخلی
  • * طول دکل اکستنشن تله را می توان برای فواصل نمودار مختلف تنظیم کرد.

    برای شروع کار با دوربین 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. تبلت را به اندروید 7.0 یا بالاتر به روز کنید. Android 6.x و نسخه‌های پایین‌تر از Camera ITS پشتیبانی نمی‌کنند.
    3. حالت توسعه دهنده را فعال کنید.
    4. به تنظیمات برگردید و Developer options را انتخاب کنید.
      گزینه ها را فعال کنید
      • روشن
      • بیدار بمان
      • اشکال زدایی USB (این به میزبان اجازه می دهد رایانه لوحی را در حالت اشکال زدایی اجرا کند. وقتی رایانه لوحی را برای اولین بار به میزبان وصل می کنید، رایانه لوحی از «اجازه اشکال زدایی USB» می خواهد؟ اگر رایانه لوحی اعلان اشکال زدایی را نمایش نمی دهد، اتصال را قطع کرده و دوباره وصل کنید تبلت.)
      گزینه ها را غیر فعال کنید
      • به روز رسانی خودکار سیستم
      • برنامه ها را از طریق USB تأیید کنید
    5. شناسه‌های DUT و نمودار را با اجرای $ adb devices برای فهرست کردن دستگاه‌های موجود، تعیین کنید. برای تعیین device_id و chart_id ، دستگاه‌ها را وصل و جدا کنید و دستگاه‌هایی را که متصل و قطع می‌شوند مشاهده کنید.
    6. برای سرکوب نکات و درخواست‌های کاربر که می‌توانند نمودارها را روی صفحه تبلت مبهم کنند، سه اجرای آزمایشی انجام دهید.
      1. تبلت را رو به بالا روی میز قرار دهید (تبلت را به پنل پشتی جعبه وصل نکنید).
      2. دستور زیر را اجرا کنید:
        python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,3
        
        در صحنه‌های 2 و 3، رایانه لوحی باید تصویری را نمایش دهد، بنابراین رایانه لوحی از «اجازه می‌دهید Drive» به عکس‌ها، رسانه‌ها و فایل‌های دستگاه شما دسترسی داشته باشد؟ . با فشار دادن Allow این دستور را پاک کنید (و از درخواست های بعدی جلوگیری کنید).
      3. دوباره دستور را اجرا کنید. رایانه لوحی درخواست می‌کند کپی این فایل حفظ شود؟ و گوگل درایو را پیشنهاد می کند. با فشار دادن نماد Drive و سپس لغو برای آپلود در درایو، این درخواست را پاک کنید (و از درخواست‌های بعدی جلوگیری کنید).
      4. در نهایت، 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 -g android-cts-verifier/CtsVerifier.apk
        

    صحنه های مبتنی بر تبلت را اجرا کنید

    برای اجرای صحنه های 0 تا 4، 6، و scene_change در دوربین پشتی:

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

    مثال:

    دوربین 0 S/N: FA6BM0305016
    شکل 1. دوربین 0 S/N: FA6BM0305016

    صحنه ها را دوباره امتحان کنید

    می‌توانید صحنه‌ها را برای یک دوربین دوباره امتحان کنید:

    • برای امتحان مجدد صحنه ها روی یک دوربین:
      python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=3,4
      

    صحنه اجرا 5

    صحنه 5 به تنظیم خاصی با نورپردازی خاص نیاز دارد (برای جزئیات، به CameraITS.pdf در CTS Verifier مراجعه کنید، که می توانید آن را در Compatibility Test Suite Downloads دانلود کنید). شما باید صحنه 5 را جداگانه اجرا کنید (خارج از جعبه).

    صحنه دوربین 5
    شکل 2. صحنه دوربین 5

    برای اجرای صحنه 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

    الزامات تبلت

    برای Android 15 و بالاتر، تبلت‌هایی که به‌عنوان نمایشگر نمودار ITS استفاده می‌شوند باید در فهرست مجاز رایانه لوحی زیر باشند. برای فهرستی از تبلت‌هایی که از آزمایش صحنه‌های کم‌نور پشتیبانی می‌کنند، به رایانه‌های لوحی پشتیبانی‌شده برای صحنه‌های کم‌نور مراجعه کنید. برای Android 14 یا پایین‌تر، نیازمندی‌های رایانه لوحی برای Android 14 و پایین‌تر را ببینید.

    تبلت های موجود در لیست مجاز بر اساس معیارهای زیر انتخاب می شوند:

    • اندازه صفحه نمایش حدود 10 اینچ با وضوح صفحه نمایش بیشتر از 1920 در 1200 پیکسل.
    • نباید هیچ گونه سوسو زدن اندازه گیری شده ناشی از مدولاسیون عرض پالس (PWM) کم نور صفحه کنترل شده داشته باشد.
    • قادر به اجرای دستورات adb ارسال شده توسط تست های ITS و نمایش تصاویر نمودار با روشنایی صفحه نمایش دستورالعمل.

    مقدار brightness باید در config.yml مطابق مدل تبلت تنظیم شود. برای تعیین اینکه آیا مدل تبلت شما با نام دستگاه در لیست مجاز مطابقت دارد یا خیر، مقدار ro.product.device را با اجرای adb shell getprop | grep 'ro.product.device' دستور adb adb shell getprop | grep 'ro.product.device' .

    دستگاه اندازه نمایشگر
    (اینچ)
    اندازه نمایشگر
    (پیکسل)
    ابعاد تبلت
    (اینچ)
    نمایش
    روشنایی
    نام دستگاه
    (رو.محصول
    .دستگاه)
    سیستم عامل تبلت
    نسخه
    گوگل
    پیکسل سی
    10.2 2560 x 1800 9.53 x 7.05 x 0.28 96 اژدها اندروید 6+
    افتخار
    پد 8
    11 2000*1200 10.18 x 6.76 x 0.29 192 HNHEY-Q اندروید 12
    هواوی
    مدیاپد m5
    10.8 2560 x 1600 10.18 x 6.76 x 0.29 192 HWCMR09 اندروید 8+
    لنوو
    تب M10 Plus
    10.3 1920 x 1200 0.32 × 6.03 × 9.61 192 X606F اندروید 9+
    لنوو
    تب P11
    11 2000*1200 10.17 x 6.42 x 0.30 192 J606F اندروید 11+
    لنوو
    تب P11 Gen2
    11.5 2000*1200 10.59 x 6.67 x 0.29 192 TB350FU اندروید 13+
    نوکیا
    T21
    10.4 2000*1200 9.74 x 6.19 x 0.30 192 AGTA اندروید 12+
    سامسونگ
    گلکسی تب A7
    10.4 2000*1200 9.75 x 6.2 x 0.28 192 gta4lwifi اندروید 10+
    سامسونگ
    گلکسی تب A8
    10.5 1920 x 1200 9.72 x 6.73 x 0.27 192 gta8wifi اندروید 11+
    سامسونگ
    Galaxy Tab A9+
    11 1920 x 1200 10.12 x 6.64 x 0.27 192 gta9pwifi اندروید 13+
    Vivo
    پد 2
    12.1 2800 x 1968 0.26 × 7.54 × 10.47 192 DPD2221 اندروید 13+
    شیائومی
    پد 5
    11 2560 x 1600 10.18 x 6.76 x 0.29 192 نابو اندروید 13+
    شیائومی
    Redmi
    پد
    10.61 2000*1200 9.86 x 6.22 x 0.28 192 یونلو اندروید 14+
    شیائومی
    Redmi
    پد SE
    11 2560 x 1600 10.06 x 6.58 x 0.29 192 سون اندروید 13+

    تبلت های پشتیبانی شده برای صحنه های کم نور

    جدول زیر تبلت هایی را فهرست می کند که از تست صحنه های کم نور پشتیبانی می کنند. این تبلت ها می توانند به سطح روشنایی مورد نیاز برای صحنه های کم نور برسند و به DUT اجازه می دهند نمودار را به درستی در معرض دید قرار دهد.
    دستگاه نام دستگاه (ro.product.device) نسخه سیستم عامل تبلت
    هواوی
    مدیاپد m5
    HWCMR09 اندروید 8+
    سامسونگ گلکسی تب A8 gta8wifi اندروید 11+
    Samsung Galaxy Tab A9+ gta9pwifi اندروید 13+
    شیائومی پد 5 نابو اندروید 13+
    شیائومی
    Redmi
    پد SE
    سون اندروید 13+

    الزامات تبلت برای اندروید 14 و پایین تر

    تبلت ها باید دارای اندازه صفحه نمایش حدود 10 اینچ با وضوح صفحه نمایش بیشتر از 1920 در 1200 پیکسل باشند. تبلت نباید از مدولاسیون عرض پالس (PWM) برای تنظیم سطح روشنایی استفاده کند. مقدار brightness باید در config.yml مطابق مدل تبلت تنظیم شود. جدول زیر تبلت های توصیه شده برای تست ITS را به همراه نسخه های منتشر شده اندروید برای DUT که تبلت ها با آن کار می کنند، فهرست می کند.

    دستگاه اندازه نمایشگر
    (اینچ)
    اندازه نمایشگر
    (پیکسل)
    ابعاد تبلت
    (اینچ)
    نمایش
    روشنایی
    نمایش
    بیت ها
    پشتیبانی می شود
    سیستم عامل DUT
    پشتیبانی می شود
    سیستم عامل تبلت
    سامسونگ
    گلکسی تب A8
    10.5 1920 x 1200 9.72 x 6.37 x 0.27 192 8 اندروید 13+ اندروید 11+
    شیائومی
    پد 5
    11 2560 x 1600 10.03 x 6.55 x 0.27 1024 11 اندروید 12+ فقط اندروید 11
    لنوو
    تب M10 Plus
    10.3 1920 x 1200 0.32 × 6.03 × 9.61 192 8 اندروید 12+ اندروید 9+
    سامسونگ
    گلکسی تب A7
    10.4 2000*1200 9.75 x 6.2 x 0.28 192 8 اندروید 12+ اندروید 10+
    چووی
    Hi9 Air 10.1
    10.1 2560 x 1600 9.52 x 6.77 x 0.31 192 8 اندروید 7+ اندروید 8+
    ایسوس
    ZenPad 3
    9.7 2048 x 1536 0.28 × 6.44 × 9.47 192 8 اندروید 7+ اندروید 6+
    هواوی
    مدیاپد m5
    10.8 2560 x 1600 10.18 x 6.76 x 0.29 192 8 اندروید 7+ اندروید 8+
    گوگل
    پیکسل سی
    10.2 2560 x 1800 9.53 x 7.05 x 0.28 96 8 اندروید 7+ اندروید 6+
    سونی
    اکسپریا Z4
    10.1 2560 x 1600 10 x 6.57 x 0.24 192 8 اندروید 7+ اندروید 5+

    سوالات متداول

    Q1: چگونه می توانم تشخیص دهم که چه دستگاه های آزمایشی برای دستگاه خود نیاز دارم؟

    نسخه 1 RFoV ITS-in-a-box دوربین های RFoV را برای آزمایش صحنه های تبلت در فهرست CameraITS/tests آزمایش می کند. RFoV به صورت 60 درجه < FoV < 90 درجه تعریف می شود. برای دوربین‌های FoV بزرگ‌تر، ممکن است نورها در تصاویر ظاهر شوند یا نمودارها ممکن است ناحیه بسیار کوچکی در FoV را پوشش دهند که بر نتایج آزمایش تأثیر می‌گذارد.

    WFoV ITS-in-a-box revision 2 دوربین های WFoV را برای آزمایش صحنه های تبلت در فهرست CameraITS/tests آزمایش می کند. WFoV به عنوان FoV >= 90 درجه تعریف می شود. دکل آزمایشی Revision 2 از نظر عملکردی مشابه نسخه 1 است، اما بزرگتر است. ریگ آزمایشی نسخه 2 می تواند هر دو دوربین RFoV و WFoV را در اندروید 9 و بالاتر آزمایش کند. با توجه به ردپای بزرگتر، نسخه 2 ایده آل است اگر DUT یک تبلت باشد

    دکل پایه مدولار دوربین های WFoV را برای آزمایش صحنه های تبلت در فهرست CameraITS/tests آزمایش می کند. WFoV به عنوان FoV >= 90 درجه تعریف می شود. دستگاه پایه ماژولار می‌تواند دوربین‌های RFoV و WFoV را برای دستگاه‌های دارای اندروید ۹ و بالاتر آزمایش کند. همچنین از دستگاه اکستنشن تله پشتیبانی می‌کند که می‌تواند به دوربین‌های تله آزمایشی با حداقل فاصله فوکوس طولانی‌تر متصل شود. دکل پایه مدولار از نظر عملکردی مشابه WFoV ITS-in-a-box است اما کوچکتر است.

    جعبه فیوژن سنسور افست زمان‌بندی دوربین/ژیروسکوپ و همگام‌سازی قاب سیستم‌های چند دوربینی را با آزمایش‌های scenes=sensor_fusion آزمایش می‌کند. یک افست زمان‌بندی دوربین/ژیروسکوپ کمتر از ۱ میلی‌ثانیه برای پرچم ویژگی REALTIME لازم است.

    اگر دوربین دارای پرچم ویژگی REALTIME باشد، می‌توان دستگاه‌های چند دوربینی را با یک ریگ برای آزمایش‌های ثابت ITS و یک دکل فیوژن سنسور آزمایش کرد.

    مجموعه ای از تنظیمات نمونه در جدول زیر ارائه شده است.

    مثال دوربین FoVs بیدرنگ؟ دکل های توصیه شده یادداشت ها
    1 75 درجه خیر برگردان 1 یا 2 اندروید 7.0 یا بالاتر
    2 75 درجه بله پایه مدولار یا Rev 1 یا 2 و فیوژن سنسور اندروید 9 یا بالاتر
    3 75 درجه + 95 درجه بله Rev 2 + همجوشی سنسور اندروید 9 یا بالاتر
    4 75 درجه + 95 + 20 درجه بله پایه مدولار و اکستنشن تله و فیوژن سنسور اندروید 9 یا بالاتر
    5 تبلت 75 درجه + 95 درجه خیر برگردان 2 اندروید 9 یا بالاتر

    Q2: چگونه می توانم تعیین کنم که چه دستگاه آزمایشی در حال استفاده است؟

    برای تعیین دکل آزمایشی صحیح، مطمئن شوید که پارامتر فاصله نمودار درست است. دکل تست rev1 (RFoV) دارای فاصله نمودار 31 سانتی متر و دکل rev2 (WFoV) دارای فاصله نمودار 22 سانتی متر است. به طور پیش فرض فاصله نمودار روی 31 سانتی متر تنظیم شده است.

    اندروید 10 تا اندروید 11

    برای شناسایی دستگاه آزمایشی صحیح در اندروید 10 تا 11، پرچم dist را در خط فرمان اضافه کنید. مقدار پیش فرض برای dist 31 است. برای تغییر پارامتر chart_distance دستور زیر را اجرا کنید.
    python tools/run_all_tests.py ... chart=# dist=22
    

    اندروید 12 و بالاتر

    برای شناسایی دستگاه تست صحیح در اندروید 12 و بالاتر، می‌توانید فایل config.yml را ویرایش کنید تا پارامتر chart_distance را تغییر دهید.
    edit config.yml
    chart_distance: 31.0 → chart_distance: 22.0
    

    Q3: چگونه روشنایی تبلت را کنترل کنم؟

    به طور پیش فرض، روشنایی تبلت روی 96 تنظیم شده است.

    برای تغییر روشنایی تبلت‌های دارای اندروید 7.0 تا اندروید 9، اجرا کنید:

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

    برای تغییر روشنایی تبلت‌هایی که اندروید 10 تا 11 دارند، می‌توان مقدار را در خط فرمان با افزودن پرچم brightness تغییر داد:

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

    برای تغییر روشنایی تبلت‌هایی که اندروید 12 و بالاتر دارند، اجرا کنید:

    edit config.yml
    brightness: 96 → brightness: 192
    

    Q4: چگونه می توانم یک تست را اشکال زدایی کنم؟

    آزمایش‌ها را می‌توان به صورت جداگانه برای اهداف اشکال‌زدایی اجرا کرد، اما نتایج به CtsVerifier.apk گزارش نمی‌شوند مگر اینکه کل صحنه اجرا شود.

    برای اجرای یک صحنه جداگانه در اندروید 11 و پایین تر:

    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

    هنگام اجرای tools/run_all_tests.py نتایج در صفحه محلی چاپ می شوند و تصاویر به جای پوشه /tmp/tmp### ایجاد شده در فهرست محلی ذخیره می شوند.

    برای اجرای یک صحنه فردی در اندروید 12 و بالاتر:

    1. فایل config.yml را ویرایش کنید.

      edit config.yml
      camera: <camera-id> → camera:  0
      scene: <scene-name> → scene: scene1_1
    2. تست فردی را اجرا کنید.

      python tools/run_all_tests.py -c config.yml --test_bed TEST_BED_TABLET_SCENES
      

    نتایج در فهرست /tmp/logs/mobly/TEST_BED_TABLET_SCENES/ چاپ می‌شوند و بر اساس زمان اجرا مرتب شده‌اند.

    Q5: چرا باید به جای اجرای مجدد تست ها به صورت جداگانه، تست های شکست خورده را به عنوان یک صحنه کامل اجرا کنم؟

    آزمایش ها را می توان به صورت جداگانه برای اهداف اشکال زدایی اجرا کرد، اما نتایج به CtsVerifier.apk گزارش نمی شود مگر اینکه کل صحنه اجرا شود.

    Camera ITS تضمین می کند که برنامه های شخص ثالث دارای یک رابط دوربین سازگار هستند. مشابه یک تست واحد ، هر تست بر یک ویژگی واحد در دوربین تاکید دارد. برای تشخیص رفتار غیرقابل اعتماد، انتظار می رود این تست ها به صورت گروهی برای کل صحنه انجام شوند. به عنوان مثال، اگرچه یک تست غیرقابل اعتماد ممکن است در تکرار یک صحنه کامل بگذرد، اما گذراندن چندین تست غیرقابل اعتماد دشوار است.

    به عنوان یک مثال افراطی، موردی را در نظر بگیرید که در آن 10 تست در یک صحنه وجود دارد که هر کدام 50% احتمال بازگشت PASS را دارند. با اجرای هر آزمایش به صورت جداگانه، احتمال زیادی وجود دارد که یک اپراتور بتواند دوربین را وادار کند که دوربین ITS را پاس کند. با این حال، اگر آزمایش ها در مجموع به عنوان یک صحنه اجرا شوند، تنها 0.1٪ احتمال دارد که صحنه بگذرد.

    Q6: چگونه می توانم یک صحنه را اجرا کنم یا صحنه های اجرا را دوباره ترتیب دهم؟

    به طور پیش فرض، اسکریپت tools/run_all_tests.py همه صحنه ها را به ترتیب اجرا می کند. با این حال، صحنه ها را می توان به صورت جداگانه یا به ترتیب مشخص اجرا کرد و به CtsVerifier.apk گزارش کرد.

    برای اجرای یک صحنه جداگانه (مثلاً صحنه 2) یا اجرای بیش از یک صحنه به ترتیب خاص در Android 11 یا پایین تر:

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

    برای اجرای یک صحنه جداگانه یا اجرای بیش از یک صحنه به ترتیب خاص در اندروید 12 و بالاتر:

    python tools/run_all_tests.py scenes=2
    
    python tools/run_all_tests.py scenes=3,2
    

    پارامترهای اضافی در فایل config.yml تنظیم شده است.

    Q7: تعدادی از آزمایش‌های صحنه 1 با راه‌اندازی رایانه لوحی ناموفق هستند، اما با یک نمودار کاغذی تأیید می‌شوند. چه اشکالی دارد؟

    اطمینان حاصل کنید که تبلت و محیط تست دارای مشخصات زیر هستند.

    مشخصات تبلت

    مطمئن شوید که تبلت دارای مشخصات زیر است:

    • اندازه نمایشگر (اینچ): 10 اینچ
    • اندازه صفحه نمایش (پیکسل): بیشتر از 1920 در 1200 پیکسل

    برای جزئیات بیشتر، الزامات تبلت را ببینید.

    روشنایی تبلت

    اگر روشنایی نمایشگر تبلت خیلی کم باشد، ممکن است آزمایش‌ها نتایج صحیحی به دست نیاورند.

    برای جزئیات بیشتر، ببینید چگونه روشنایی تبلت را کنترل کنم؟

    سطح روشنایی جعبه (نیاز به لوکس متر)

    مطمئن شوید که مقدار لوکس هدف در باز شدن تبلت بین 100 تا 300 باشد.

    اگر سطح لوکس خیلی بالا باشد، scene1/test_param_flash_mode.py FAIL برمی‌گرداند. اگر سطح لوکس خیلی پایین باشد، چندین آزمایش با شکست مواجه می شوند.

    Q8: چگونه می توانم تست های فیوژن سنسور را اشکال زدایی کنم؟

    1. مطمئن شوید که در یک گروه dialout هستید.

      groups | egrep ‘dialout'
    2. با تعیین اینکه فناوری میکروچیپ به پورت USB متصل است، مطمئن شوید که کنترل کننده فیوژن سنسور متصل است.

      lsusb
      …
      Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc.
      …
      
    3. آزمایش را چندین بار اجرا کنید تا با دستورات زیر توزیعی از تلاش‌های آزمایشی را دریافت کنید.

      در اندروید 11 یا پایین تر:

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

      در اندروید 12 و بالاتر:

      python tools/run_sensor_fusion_box.py num_runs=10
      

      پارامترهای اضافی در فایل config.yml تنظیم شده است.

      خروجی‌های اجرا در پوشه /tmp/tmp### هستند که در زیر پوشه‌های sensor_fusion_# ایجاد شده است، جایی که # شماره اجرا است. دلایل رایج شکست عبارتند از:

      1. تلفن به درستی وسط نیست.
      2. ویژگی های کافی در تصویر یافت نمی شود (اغلب یک مشکل FoV یا نور).
      3. FAIL برگشتی معتبر است و فاصله زمانی بین دوربین و ژیروسکوپ باید اصلاح شود.

    Q9: هنگام گزارش یک باگ آزمایشی چه اطلاعاتی را باید لحاظ کنم؟

    هنگام گزارش یک باگ آزمایشی، فایل‌ها و تصاویر تولید شده را برای آزمایش اضافه کنید.

    1. اگر آزمایش را از طریق tools/run_all_tests.py انجام دادید، یک پوشه /tmp/ فشرده را به باگ پیوست کنید.
    2. اگر آزمایش را به تنهایی انجام دادید، تمام خروجی های صفحه و تصاویر تولید شده را به باگ متصل کنید.

    گزارش اشکال را نیز درج کنید. پس از شکست تست مورد نظر، از دستور زیر برای ایجاد گزارش باگ استفاده کنید و فایل فشرده تولید شده را به باگ پیوست کنید.

    adb -s device_id bugreport
    

    Q10: چگونه می توانم یک صحنه تست سنسور_فیوژن را با دوربینی اجرا کنم که حداقل فاصله فوکوس دارد و در فاصله نمودار 25 سانتی متری تصاویر تار ایجاد می کند؟

    اگر دوربین شما نمی تواند در فاصله 25 سانتی متری فوکوس کند، پانل نصب نمودار جعبه فیوژن سنسور را بردارید. نمودار را در فاصله ای قرار دهید که DUT بتواند فوکوس کند و chart_distance در config.yml به فاصله اندازه گیری شده بین DUT و نمودار تغییر دهید. شکل 5 نمونه ای از نحوه اندازه گیری فاصله نمودار را در این شرایط نشان می دهد.

    نمونه 6 تست sensor_fusion TELE
    شکل 5. اندازه گیری فاصله نمودار برای صحنه تست همجوشی سنسور
      edit config.yml
    chart_distance: 25 → chart_distance: DISTANCE_BETWEEN_DUT_AND_CHART
    

    Q11: چگونه می توانم صحنه های تست تبلت را برای دوربینی با حداقل فاصله فوکوس اجرا کنم که در فاصله نمودار 31 سانتی متری تصاویر تار ایجاد می کند؟

    اگر دوربین شما نمی تواند تصاویر شارپ و کافی را در 31 سانتی متر (عمق دستگاه تست RFoV) تولید کند، دوربین خود را در فاصله ای جلوی دستگاه نصب کنید تا صحنه نمودار تقریباً 60 درصد از میدان دوربین را پر کند. مشاهده (FoV) با تصاویر واضح تر. این فاصله می تواند کمتر از حداقل فاصله فوکوس دوربین باشد. chart_distance را در config.yml 31 سانتی متر بگذارید. مقیاس بندی نمودار در تبلت توسط دوربین FoV همانطور که در جدول زیر نشان داده شده است تعیین می شود:

    دوربین FoV ضریب مقیاس بندی نمودار
    60 > FoV > 40 0.67x
    40 > FoV > 25 0.5 برابر
    FoV < 25 0.33x

    Q12: با API منطقی چند دوربینی، کدام تست‌ها روی کدام دوربین‌ها اجرا می‌شوند؟

    اگر دوربین شما از REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA استفاده می کند، تمام تست های پشتیبانی شده ITS روی دوربین منطقی سطح بالا اجرا می شود. زیر مجموعه ای از تست های ITS روی دوربین های فرعی فیزیکی اجرا می شود و این تست ها در tools/run_all_tests.py تحت ثابت SUB_CAMERA_TESTS فهرست شده اند.