ক্যামেরা আইটিএস-ইন-এ-বক্স

Android Camera Image Test Suite (ITS) হল Android Compatibility Test Suite (CTS) Verifier-এর অংশ এবং এতে ছবি বিষয়বস্তু যাচাই করে এমন পরীক্ষা অন্তর্ভুক্ত রয়েছে। CTS ভেরিফায়ার ক্যামেরা আইটিএস-ইন-এ-বক্স সহ আইটিএস পরীক্ষা অটোমেশন সমর্থন করে; ম্যানুয়াল পরীক্ষার জন্য সমর্থন সমস্ত অ্যান্ড্রয়েড ডিভাইস ফর্ম ফ্যাক্টর কভার করে।

আইটিএস-ইন-এ-বক্সে নিম্নলিখিত সুবিধা রয়েছে:

  • অটোমেশন। পরীক্ষার সময় কোনো মানুষের হস্তক্ষেপের প্রয়োজন নেই।
  • সহজ সমস্যা সমাধান. পরীক্ষার পরিবেশের সামঞ্জস্যতা কম সেটআপ ত্রুটির দিকে পরিচালিত করে এবং প্রজননযোগ্যতা বাড়ায়।
  • দক্ষতা. পৃথক ক্যামেরা/দৃশ্যের জন্য পুনরায় চেষ্টা করার ক্ষমতা পরীক্ষা সম্পাদনের দক্ষতা উন্নত করে।

এবার শুরু করা যাক

আইটিএস-ইন-এ-বক্সে একটি প্লাস্টিকের বাক্স রয়েছে যা কম্পিউটার-এডেড ডিজাইন (সিএডি) ড্রয়িং, একটি চার্ট ট্যাবলেট এবং পরীক্ষাধীন একটি ডিভাইস (ডিইউটি) থেকে লেজার কাটা হয়। আপনি ওয়াইড ফিল্ড-অফ-ভিউ (WFoV) ITS-in-a-box ব্যবহার করতে পারেন, যা WFoV (FoV > 90 ডিগ্রি) এবং RFoV (FoV <90 ডিগ্রি) ক্যামেরা, অথবা নিয়মিত ফিল্ড-অফ উভয় পরীক্ষা করতে সক্ষম। -ভিউ (RFoV) আইটিএস-ইন-এ-বক্স।

ক্যামেরা আইটিএস-ইন-এ-বক্স দিয়ে শুরু করতে:

  1. একটি WFoV বা RFoV আইটিএস-ইন-এ-বক্স কিনুন বা তৈরি করুন।
  2. ক্যামেরা আইটিএস সফ্টওয়্যার দিয়ে একটি ট্যাবলেট কনফিগার করুন
  3. পরীক্ষা চালান
  4. DUT থেকে ফলাফল পান

ট্যাবলেট কনফিগার করুন

এই বিভাগটি CameraITS ডিরেক্টরিতে অবস্থিত ক্যামেরা আইটিএস পরীক্ষার সাথে ব্যবহারের জন্য একটি ট্যাবলেট সেট আপ করার জন্য ধাপে ধাপে নির্দেশাবলী প্রদান করে। এই নির্দেশাবলী একটি উদাহরণ ট্যাবলেট হিসাবে একটি Pixel C ব্যবহার করে৷ অনুমোদিত ট্যাবলেটগুলির সম্পূর্ণ তালিকা দেখতে, ট্যাবলেট অনুমোদিত তালিকা দেখুন।

দ্রষ্টব্য: ক্যামেরা আইটিএস পাইথন স্ক্রিপ্টগুলি আপনার জন্য ট্যাবলেটে স্বয়ংক্রিয়ভাবে নিম্নলিখিত বিকল্পগুলি সেট করে:
সেটিংস > প্রদর্শন > ঘুম > নিষ্ক্রিয়তার ৩০ মিনিট পর
অভিযোজিত উজ্জ্বলতা > বন্ধ

  1. ট্যাবলেটটি চার্জ করুন এবং এটি চালু করুন। একটি অ্যাকাউন্ট সেট আপ করার জন্য অনুরোধ করা হলে, এটি এড়িয়ে যান (ক্যামেরা আইটিএস ট্যাবলেটের সাথে যুক্ত কোনো অ্যাকাউন্টের প্রয়োজন নেই)৷
  2. ট্যাবলেটটিকে Android 7.0 বা উচ্চতর সংস্করণে আপডেট করুন৷ Android 6.x এবং নিম্ন সংস্করণ ক্যামেরা ITS সমর্থন করে না।
  3. বিকাশকারী মোড সক্ষম করুন৷
  4. সেটিংসে ফিরে যান এবং বিকাশকারী বিকল্পগুলি নির্বাচন করুন৷
    বিকল্পগুলি সক্ষম করুন
    • চালু
    • জেগে থাক
    • USB ডিবাগিং (এটি হোস্টকে ট্যাবলেটটিকে ডিবাগ মোডে চালানোর অনুমতি দেয়৷ আপনি যখন প্রথমবার ট্যাবলেটটিকে হোস্টের সাথে সংযুক্ত করেন, তখন ট্যাবলেটটি অনুরোধ করে USB ডিবাগিংয়ের অনুমতি দিন? যদি ট্যাবলেটটি ডিবাগ প্রম্পট প্রদর্শন না করে, সংযোগ বিচ্ছিন্ন করুন তারপর পুনরায় সংযোগ করুন ট্যাবলেট।)
    অপশন অক্ষম করুন
    • স্বয়ংক্রিয় সিস্টেম আপডেট
    • ইউএসবি এর মাধ্যমে অ্যাপস যাচাই করুন
  5. উপলব্ধ ডিভাইসগুলি তালিকাভুক্ত করতে $ adb devices চালিয়ে DUT এবং চার্ট আইডি নির্ধারণ করুন। 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-এ ট্যাবলেটটিকে একটি চিত্র প্রদর্শনের প্রয়োজন হয়, তাই ট্যাবলেটটি আপনার ডিভাইসে ফটো, মিডিয়া এবং ফাইলগুলি অ্যাক্সেস করতে ড্রাইভকে অনুমতি দেয়? . অনুমতি টিপে এই প্রম্পটটি সাফ করুন (এবং ভবিষ্যতের প্রম্পটগুলি প্রতিরোধ করুন)।
    3. আবার কমান্ড চালান। ট্যাবলেট এই ফাইলের একটি কপি রাখতে অনুরোধ করে? এবং Google ড্রাইভের পরামর্শ দেয়। ড্রাইভ আইকন টিপে এই প্রম্পটটি সাফ করুন (এবং ভবিষ্যতের প্রম্পটগুলি প্রতিরোধ করুন) তারপরে ড্রাইভে আপলোড করার জন্য বাতিল করুন
    4. অবশেষে, tools/run_all_tests.py চালান এবং নিশ্চিত করুন যে বিভিন্ন দৃশ্যের মাধ্যমে স্ক্রিপ্ট চক্রের সাথে দৃশ্যগুলি স্বয়ংক্রিয়ভাবে পরিবর্তিত হয়৷ যদিও বেশিরভাগ পরীক্ষা ব্যর্থ হয় (যেহেতু ক্যামেরাটি চার্টে নির্দেশিত নয়), আপনি যাচাই করতে পারেন যে ট্যাবলেটটি পর্দায় কোনো প্রম্পট বা অন্যান্য পপআপ প্রদর্শন না করেই দৃশ্যের মধ্য দিয়ে সঠিকভাবে চক্রাকারে চলে।

পরীক্ষা চালান

আইটিএস-ইন-এ-বক্স চালানোর আগে, নিশ্চিত করুন যে আপনার পরীক্ষা সেটআপে নিম্নলিখিত হার্ডওয়্যার এবং সফ্টওয়্যার অন্তর্ভুক্ত রয়েছে:

  • এক (1) আইটিএস-ইন-এ-বক্স
  • দৃশ্য প্রদর্শনের জন্য ট্যাবলেট অনুমোদিত তালিকায় একটি (1) ট্যাবলেট, S/N: 5811000011
  • একটি (1) DUT যাতে CTS ভেরিফায়ার 7.0_8+ অ্যাপ ইনস্টল করা আছে। উদাহরণ DUT:
    • পিছনের ক্যামেরা(0) পরীক্ষার জন্য একটি (1) Pixel NOF26W, S/N: FA6BM0305016। CTS ভেরিফায়ার অ্যাপ ইনস্টল করতে, android-cts-verifier.zip আনজিপ করুন তারপর
      adb -s FA6BM0305016 install -r -g android-cts-verifier/CtsVerifier.apk
      
      চালান

ট্যাবলেট-ভিত্তিক দৃশ্যগুলি চালান

পিছনের ক্যামেরায় 0 থেকে 4, 6, এবং দৃশ্য_পরিবর্তন চালানোর জন্য:

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-এর জন্য নির্দিষ্ট আলো সহ বিশেষ সেটআপ প্রয়োজন (বিশদ বিবরণের জন্য, CTS ভেরিফায়ারে CameraITS.pdf দেখুন, যা আপনি সামঞ্জস্য পরীক্ষা স্যুট ডাউনলোডে ডাউনলোড করতে পারেন)। আপনাকে অবশ্যই দৃশ্য 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

ফলাফল পান

আপনি পরীক্ষার সময় ফলাফল দেখতে এবং একটি রিপোর্ট হিসাবে সম্পূর্ণ ফলাফল সংরক্ষণ করতে পারেন.

  • ফলাফল দেখুন. ক্যামেরা আইটিএস ফলাফল একটি রিপোর্ট হিসাবে সংরক্ষণ করতে:
    1. পাস টিপুন এবং প্রতিবেদনটি সংরক্ষণ করুন।
      ক্যামেরা আইটিএস রিপোর্ট
      চিত্র 3. ক্যামেরা আইটিএস রিপোর্ট
    2. ডিভাইস থেকে রিপোর্ট টানুন:
      adb -s FA6BM0305016 pull /sdcard/verifierReports
      
    3. রিপোর্ট ফাইলটি আনজিপ করুন এবং test_result.xml দেখুন।
      ক্যামেরা আইটিএস রিপোর্ট
      চিত্র 4. ক্যামেরা আইটিএস রিপোর্ট

ট্যাবলেট অনুমোদিত তালিকা

তালিকার ট্যাবলেটগুলি নিম্নলিখিত মানদণ্ডের উপর ভিত্তি করে বেছে নেওয়া হয়েছে:

  • 1920 x 1200 পিক্সেলের বেশি স্ক্রীন রেজোলিউশন সহ প্রায় 10 ইঞ্চি প্রদর্শনের আকার
  • পালস-উইডথ মড্যুলেশন (PWM) নিয়ন্ত্রিত স্ক্রিন ডিমিং এর কারণে কোন পরিমাপিত ফ্লিকারিং হওয়া উচিত নয়
  • আইটিএস পরীক্ষা দ্বারা প্রেরিত অ্যাডবি কমান্ড কার্যকর করতে সক্ষম এবং নির্দেশিত স্ক্রীন উজ্জ্বলতা সহ চার্ট চিত্রগুলি প্রদর্শন করতে সক্ষম
ট্যাবলেট মডেল অনুযায়ী brightness মান config.yml এ সেট করা আবশ্যক। নীচের সারণীটি ট্যাবলেটগুলির সাথে কাজ করে এমন DUT-এর জন্য Android রিলিজ সংস্করণগুলির সাথে ITS পরীক্ষার জন্য অনুমোদিত ট্যাবলেটগুলির তালিকা রয়েছে৷

যন্ত্র প্রদর্শনীর আকার
(ইঞ্চি)
প্রদর্শনীর আকার
(পিক্সেল)
ট্যাবলেট মাত্রা
(ইঞ্চি)
প্রদর্শন
উজ্জ্বলতা
ডিভাইসের নাম
(ro. পণ্য
.যন্ত্র)
সমর্থিত
DUT OS
সমর্থিত
ট্যাবলেট ওএস
গুগল
পিক্সেল সি
10.2 2560 x 1800 9.53 x 7.05 x 0.28 96 ড্রাগন Android 7+ Android 6+
সম্মান
প্যাড 8
11 2000 x 1200 10.18 x 6.76 x 0.29 192 HNHEY-Q Android 14+ অ্যান্ড্রয়েড 12
হুয়াওয়ে
মিডিয়াপ্যাড m5
10.8 2560 x 1600 10.96 x 6.85 x 0.27 192 HWCMR09 Android 7+ Android 8+
লেনোভো
ট্যাব M10 Plus Gen1
10.3 1920 x 1200 9.61 x 6.03 x 0.32 192 X606F Android 12+ Android 9+
স্যামসাং
গ্যালাক্সি ট্যাব A7
10.4 2000 x 1200 9.75 x 6.2 x 0.28 192 gta4lwifi Android 12+ Android 10+
স্যামসাং
গ্যালাক্সি ট্যাব A8
10.5 1920 x 1200 9.72 x 6.37 x 0.27 192 gta8wifi Android 13+ Android 11+
স্যামসাং
গ্যালাক্সি ট্যাব A9+
11 1920 x 1200 10.12 x 6.64 x 0.27 192 gta9pwifi Android 14+ Android 13+
ভিভো
প্যাড 2
12.1 2800 x 1968 10.47 x 7.54 x 0.26 192 DPD2221 Android 14+ Android 13+
শাওমি
প্যাড 5
11 2560 x 1600 10.03 x 6.55 x 0.27 192 nabu Android 12+ Android 13+
শাওমি
রেডমি
প্যাড
10.61 2000 x 1200 9.86 x 6.22 x 0.28 192 ইউনলুও Android 14+ Android 14+
শাওমি
রেডমি
প্যাড এসই
11 2000 x 1200 10.06 x 6.58 x 0.29 192 xun Android 14+ Android 13+

সচরাচর জিজ্ঞাস্য

প্রশ্ন 1: আমি কীভাবে নির্ধারণ করব যে আমার ডিভাইসের জন্য আমার কোন পরীক্ষার রিগ প্রয়োজন?

RFoV আইটিএস-ইন-এ-বক্স রিভিশন 1 ক্যামেরা CameraITS/tests ডিরেক্টরিতে দৃশ্য 0 থেকে দৃশ্য 4 পরীক্ষার জন্য RFoV ক্যামেরা পরীক্ষা করে। RFoV 60° < FoV <90° হিসাবে সংজ্ঞায়িত করা হয়। বৃহত্তর FoV ক্যামেরাগুলির জন্য, আলোগুলি চিত্রগুলিতে প্রদর্শিত হতে পারে বা চার্টগুলি FoV-এর খুব ছোট একটি এলাকাকে কভার করতে পারে, যা পরীক্ষার ফলাফলগুলিকে প্রভাবিত করে৷

WFoV আইটিএস-ইন-এ-বক্স রিভিশন 2 ক্যামেরা CameraITS/tests ডিরেক্টরিতে দৃশ্য 0 থেকে দৃশ্য 4 পরীক্ষার জন্য WFoV ক্যামেরা পরীক্ষা করে। WFoV কে FoV >= 90° হিসাবে সংজ্ঞায়িত করা হয়। এটি কার্যকরীভাবে রিভিশন 1 এর সাথে সমান, কিন্তু বড়। রিভিশন 2 টেস্ট রিগ অ্যান্ড্রয়েড 9 এবং উচ্চতর উভয় RFoV এবং WFoV ক্যামেরা পরীক্ষা করতে পারে।

সেন্সর ফিউশন বক্স ক্যামেরা/জাইরোস্কোপ টাইমিং অফসেট এবং মাল্টি-ক্যামেরা সিস্টেম ফ্রেম সিঙ্ক পরীক্ষা করে scenes=sensor_fusionREALTIME ফিচার পতাকার জন্য 1 ms এর কম একটি ক্যামেরা/জাইরোস্কোপ টাইমিং অফসেট প্রয়োজন৷

মাল্টি-ক্যামেরা ডিভাইসগুলি স্ট্যাটিক আইটিএস পরীক্ষার জন্য একটি একক রিগ এবং ক্যামেরার REALTIME বৈশিষ্ট্য ফ্ল্যাগ থাকলে সেন্সর ফিউশন রিগ দিয়ে পরীক্ষা করা যেতে পারে।

উদাহরণ কনফিগারেশনের একটি সেট নীচের টেবিলে প্রদান করা হয়েছে.

উদাহরণ ক্যামেরা FoVs প্রকৃত সময়? প্রস্তাবিত rigs মন্তব্য
1 75° না রেভ 1 বা 2 Android 7.0 বা উচ্চতর
2 75° হ্যাঁ রেভ 1 বা 2 + সেন্সর ফিউশন Android 9 বা উচ্চতর
3 75° + 95° হ্যাঁ রেভ 2 + সেন্সর ফিউশন Android 9 বা উচ্চতর

প্রশ্ন 2: কোন টেস্ট রিগ ব্যবহার করা হচ্ছে তা আমি কীভাবে নির্ধারণ করব?

সঠিক পরীক্ষা রিগ মনোনীত করতে, চার্ট দূরত্ব পরামিতি সঠিক কিনা তা নিশ্চিত করুন। rev1 টেস্ট রিগ (RFoV) এর চার্টের দূরত্ব 31 সেমি, এবং rev2 রিগ (WFoV) এর চার্টের দূরত্ব 22 সেমি। ডিফল্টরূপে চার্টের দূরত্ব 31 সেমিতে সেট করা হয়।

Android 10 থেকে Android 11

অ্যান্ড্রয়েড 10 থেকে 11-এ সঠিক টেস্ট রিগ সনাক্ত করতে কমান্ড লাইনে dist ফ্ল্যাগ যোগ করুন। dist জন্য ডিফল্ট মান হল 31chart_distance প্যারামিটার পরিবর্তন করতে নিম্নলিখিত কমান্ডটি চালান।
python tools/run_all_tests.py ... chart=# dist=22

অ্যান্ড্রয়েড 12

অ্যান্ড্রয়েড 12-এ সঠিক পরীক্ষার রিগ সনাক্ত করতে আপনি chart_distance প্যারামিটার পরিবর্তন করতে config.yml ফাইলটি সম্পাদনা করতে পারেন।
edit config.yml
chart_distance: 31.0 → chart_distance: 22.0

প্রশ্ন 3: আমি কীভাবে ট্যাবলেটের উজ্জ্বলতা নিয়ন্ত্রণ করব?

ডিফল্টরূপে, ট্যাবলেটের উজ্জ্বলতা 192 এ সেট করা আছে।

Android 9 এর মাধ্যমে Android 7.0 চালিত ট্যাবলেটগুলিতে উজ্জ্বলতা পরিবর্তন করতে, চালান:

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

অ্যান্ড্রয়েড 10 থেকে 11 চলমান ট্যাবলেটগুলিতে উজ্জ্বলতা পরিবর্তন করতে, brightness ফ্ল্যাগ যুক্ত করে কমান্ড লাইনে মান পরিবর্তন করা যেতে পারে:

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

Android 12 চালিত ট্যাবলেটগুলিতে উজ্জ্বলতা পরিবর্তন করতে, চালান:

edit config.yml
brightness: 192 → brightness: 96

প্রশ্ন 4: আমি কিভাবে একটি একক পরীক্ষা ডিবাগ করব?

পরীক্ষাগুলি ডিবাগিংয়ের উদ্দেশ্যে পৃথকভাবে চালানো যেতে পারে, তবে ফলাফলগুলি CtsVerifier.apk এ রিপোর্ট করা হয় না যদি না পুরো দৃশ্যটি চালানো হয়।

অ্যান্ড্রয়েড 11 এবং তার নিচের সংস্করণে একটি পৃথক দৃশ্য চালানোর জন্য:

  1. tools/run_all_tests.py :
    python tools/run_all_tests.py device=# camera=# chart=# scenes=#
    
    scenes পতাকা যোগ করে একটি দৃশ্য লোড করুন
  2. দৃশ্যটি stdout এ লোড হওয়ার পর পরীক্ষা বন্ধ করতে Control+C টিপুন।

    যদি সঠিক দৃশ্যটি ইতিমধ্যেই স্ক্রিনে থাকে তবে স্ক্রীনটি জাগিয়ে দিন:

    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### ডিরেক্টরির পরিবর্তে ছবিগুলি স্থানীয় ডিরেক্টরিতে সংরক্ষিত হয়।

Android 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/ রান টাইম অনুসারে সাজানো ডিরেক্টরিতে মুদ্রিত হয়।

প্রশ্ন 5: কেন আমাকে পৃথকভাবে পরীক্ষাগুলি পুনরায় চালানোর পরিবর্তে একটি সম্পূর্ণ দৃশ্য হিসাবে ব্যর্থ পরীক্ষা চালানোর দরকার?

পরীক্ষাগুলি ডিবাগিংয়ের উদ্দেশ্যে পৃথকভাবে চালানো যেতে পারে, তবে ফলাফলগুলি CtsVerifier.apk এ রিপোর্ট করা হয় না যদি না পুরো দৃশ্যটি চালানো হয়।

ক্যামেরা আইটিএস নিশ্চিত করে যে তৃতীয় পক্ষের অ্যাপগুলির একটি সামঞ্জস্যপূর্ণ ক্যামেরা ইন্টারফেস রয়েছে৷ একটি ইউনিট পরীক্ষার অনুরূপ, প্রতিটি পরীক্ষা ক্যামেরায় একটি একক স্পেসিফিকেশন জোর দেয়। অবিশ্বস্ত আচরণ ধরার জন্য, এই পরীক্ষাগুলি একটি সম্পূর্ণ দৃশ্যের জন্য একটি গ্রুপ হিসাবে পাস করার আশা করা হচ্ছে। উদাহরণস্বরূপ, যদিও একটি একক অবিশ্বাস্য পরীক্ষা একটি সম্পূর্ণ দৃশ্যের পুনঃরান পাস করতে পারে, তবে একাধিক অবিশ্বস্ত পরীক্ষায় উত্তীর্ণ হওয়া কঠিন।

একটি চরম উদাহরণ হিসাবে, সেই ক্ষেত্রে বিবেচনা করুন যেখানে একটি দৃশ্যে 10টি পরীক্ষা রয়েছে যার প্রতিটিতে PASS ফেরত দেওয়ার 50% সম্ভাবনা রয়েছে। প্রতিটি পরীক্ষা পৃথকভাবে চালানোর মাধ্যমে, একটি অপারেটর ক্যামেরা ITS পাস করার জন্য ক্যামেরা পেতে পারে এমন একটি উচ্চ সম্ভাবনা রয়েছে। যাইহোক, যদি একটি দৃশ্য হিসাবে পরীক্ষাগুলি সামগ্রিকভাবে চালানো হয়, তবে দৃশ্যটি পাস হওয়ার সম্ভাবনা মাত্র 0.1% আছে।

প্রশ্ন 6: আমি কীভাবে একটি একক দৃশ্য চালাব বা রানের দৃশ্যগুলিকে পুনরায় সাজাতে পারি?

ডিফল্টরূপে, স্ক্রিপ্ট 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

Android 12-এ একটি নির্দিষ্ট ক্রমে একটি পৃথক দৃশ্য চালানো বা একাধিক দৃশ্য চালানোর জন্য:

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

অতিরিক্ত প্যারামিটার config.yml ফাইলে সেট করা আছে।

প্রশ্ন 7: ট্যাবলেট সেটআপে বেশ কয়েকটি দৃশ্য 1 পরীক্ষা ব্যর্থ হয় কিন্তু একটি কাগজের চার্ট দিয়ে পাস হয়। কোনো সমস্যা?

নিশ্চিত করুন যে ট্যাবলেট এবং পরীক্ষার পরিবেশ নিম্নলিখিত বৈশিষ্ট্যগুলি পূরণ করে৷

ট্যাবলেট উজ্জ্বলতা

ট্যাবলেট প্রদর্শনের উজ্জ্বলতা খুব কম হলে পরীক্ষাগুলি সঠিক ফলাফল নাও পেতে পারে।

আরও বিশদ বিবরণের জন্য, দেখুন আমি কীভাবে ট্যাবলেটের উজ্জ্বলতা নিয়ন্ত্রণ করব?

বক্স লাইটিং লেভেল (লাক্স মিটার প্রয়োজন)

ট্যাবলেট খোলার সময় লক্ষ্য লাক্স মান 100 থেকে 300 এর মধ্যে রয়েছে তা নিশ্চিত করুন৷

লাক্স লেভেল খুব বেশি হলে, scene1/test_param_flash_mode.py FAIL প্রদান করে। লাক্স লেভেল খুব কম হলে একাধিক পরীক্ষা ব্যর্থ হয়।

প্রশ্ন 8: আমি কীভাবে সেন্সর ফিউশন পরীক্ষাগুলি ডিবাগ করব?

  1. আপনি একটি dialout গ্রুপে আছেন তা নিশ্চিত করুন।

    groups | egrep ‘dialout'
  2. মাইক্রোচিপ প্রযুক্তি USB পোর্টের সাথে সংযুক্ত কিনা তা নির্ধারণ করে সেন্সর ফিউশন কন্ট্রোলার সংযুক্ত রয়েছে তা নিশ্চিত করুন৷

    lsusb
    …
    Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc.
    …
    
  3. নিম্নলিখিত কমান্ডগুলির সাথে পরীক্ষার প্রচেষ্টার বিতরণ পেতে একাধিকবার পরীক্ষা চালান।

    Android 11 বা তার নিচের সংস্করণে:

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

    Android 12 এ:

    python tools/run_sensor_fusion_box.py num_runs=10
    

    অতিরিক্ত প্যারামিটার config.yml ফাইলে সেট করা আছে।

    রান আউটপুটগুলি sensor_fusion_# ফোল্ডারের অধীনে তৈরি করা /tmp/tmp### ফোল্ডারে থাকে, যেখানে # হল রান নম্বর। ব্যর্থতার সাধারণ কারণ হল:

    1. ফোনটি সঠিকভাবে কেন্দ্রীভূত নয়।
    2. ছবিতে পর্যাপ্ত বৈশিষ্ট্য পাওয়া যায় না (প্রায়শই একটি FoV বা আলোর সমস্যা)।
    3. ফিরে আসা FAIL বৈধ, এবং ক্যামেরা এবং জাইরোস্কোপের মধ্যে অফসেট টাইমিং সংশোধন করতে হবে।

প্রশ্ন 9: টেস্টিং বাগ রিপোর্ট করার সময় আমার কোন তথ্য অন্তর্ভুক্ত করা উচিত?

একটি টেস্টিং বাগ রিপোর্ট করার সময়, পরীক্ষার জন্য তৈরি করা ফাইল এবং ছবিগুলি অন্তর্ভুক্ত করুন৷

  1. আপনি যদি tools/run_all_tests.py এর মাধ্যমে পরীক্ষা চালান, বাগটিতে একটি zipped /tmp/ ডিরেক্টরি সংযুক্ত করুন।
  2. আপনি নিজে পরীক্ষা চালিয়ে গেলে, বাগটিতে সমস্ত স্ক্রীন আউটপুট এবং জেনারেট করা ছবি সংযুক্ত করুন।

এছাড়াও একটি বাগ রিপোর্ট অন্তর্ভুক্ত করুন। প্রশ্নে পরীক্ষা ব্যর্থ হওয়ার পরে, একটি বাগ রিপোর্ট তৈরি করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন এবং তৈরি করা জিপ ফাইলটিকে বাগটিতে সংযুক্ত করুন।

adb -s device_id bugreport

প্রশ্ন 10: আমি কীভাবে 25 সেমি চার্ট দূরত্বে ঝাপসা ছবি তৈরি করে এমন একটি ক্যামেরার সাথে একটি ন্যূনতম ফোকাস দূরত্ব সহ একটি সেন্সর_ফিউশন পরীক্ষার দৃশ্য চালাব?

যদি আপনার ক্যামেরা 25 সেন্টিমিটার দূরত্বে ফোকাস করতে না পারে, তাহলে সেন্সর ফিউশন বক্সের চার্ট-মাউন্টিং প্যানেলটি সরিয়ে ফেলুন। চার্টটি এমন দূরত্বে রাখুন যেখানে DUT ফোকাস করতে পারে এবং config.ymlchart_distance DUT এবং চার্টের মধ্যে পরিমাপ করা দূরত্বে পরিবর্তন করতে পারে। চিত্র 5 এই পরিস্থিতিতে চার্টের দূরত্ব কীভাবে পরিমাপ করতে হয় তার একটি উদাহরণ দেখায়।

sensor_fusion TELE পরীক্ষার উদাহরণ6
চিত্র 5. সেন্সর ফিউশন পরীক্ষার দৃশ্যের জন্য চার্টের দূরত্ব পরিমাপ করা
  edit config.yml
chart_distance: 25 → chart_distance: DISTANCE_BETWEEN_DUT_AND_CHART

প্রশ্ন 11: আমি কীভাবে ন্যূনতম ফোকাস দূরত্ব সহ একটি ক্যামেরার জন্য ট্যাবলেট পরীক্ষার দৃশ্য চালাব যা 31 সেমি চার্ট দূরত্বে অস্পষ্ট চিত্র তৈরি করে?

যদি আপনার ক্যামেরা 31 সেমি (RFoV টেস্ট রিগের গভীরতা) তে পর্যাপ্ত তীক্ষ্ণ ছবি তৈরি করতে না পারে, তাহলে আপনার ক্যামেরাটি রিগের সামনে দূরত্বে মাউন্ট করুন যাতে চার্ট দৃশ্যটি ক্যামেরা ফিল্ডের প্রায় 60% পূরণ করতে পারে। তীক্ষ্ণ ছবি সহ দেখুন (FoV)। এই দূরত্ব ক্যামেরার ন্যূনতম ফোকাস দূরত্বের চেয়ে কম হতে পারে। config.ymlchart_distance 31 সেমিতে ছেড়ে দিন। ট্যাবলেটে চার্ট স্কেলিং ক্যামেরা FoV দ্বারা নির্ধারিত হয় যেমনটি নিম্নলিখিত টেবিলে দেখানো হয়েছে:

ক্যামেরা FoV চার্ট স্কেলিং ফ্যাক্টর
60 > FoV > 40 0.67x
40 > FoV > 25 0.5x
FoV < 25 0.33x

প্রশ্ন 12: লজিক্যাল মাল্টি-ক্যামেরা এপিআই সহ, কোন পরীক্ষাগুলি কোন ক্যামেরাগুলিতে চালানো হয়?

আপনার ক্যামেরা REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA ব্যবহার করলে, সমস্ত সমর্থিত ITS পরীক্ষাগুলি শীর্ষ-স্তরের লজিক্যাল ক্যামেরায় চালানো হয়৷ ITS পরীক্ষার একটি উপসেট শারীরিক সাব-ক্যামেরাগুলিতে চালিত হয় এবং এই পরীক্ষাগুলি SUB_CAMERA_TESTS ধ্রুবকের অধীনে tools/run_all_tests.py এ তালিকাভুক্ত করা হয়।