Обзор ITS камеры,Обзор ITS камеры

Camera Image Test Suite (ITS) — это фреймворк для проведения тестов изображений, полученных с помощью камеры Android. Общая цель каждого теста в ITS — настроить камеру определенным образом, сделать один или несколько снимков и проверить, содержат ли они ожидаемые данные изображения. Многие тесты требуют, чтобы камера была направлена ​​на определенную целевую диаграмму или освещена с определенной интенсивностью.

ITS находится в тестовой среде CTS Verifier в папке cts/apps/CameraITS . Устройства должны пройти тесты ITS, соответствующие поддерживаемым функциям, заявленным фреймворком камеры для сторонних приложений в качестве подмножества CTS.

Настраивать

Для запуска тестов ITS необходимо выполнить следующие действия:

  • Испытуемое устройство (DUT)
  • Основной компьютер (например, настольный компьютер или ноутбук под управлением Linux)
  • Сцена, которую запечатлела камера.

Настройка тестируемого устройства (DUT).

Для настройки тестируемого устройства выполните следующие шаги:

  1. Подключите тестируемое устройство к компьютеру через USB.
  2. Предоставьте хосту права доступа к тестируемому устройству через ADB.
  3. Установите приложение CTS Verifier ( CtsVerifier.apk ) на устройство. Для получения дополнительной информации см. раздел «Использование CTS Verifier» .

    extract root/out/host/linux-x86/cts-verfier/android-cts-verifier.zip
    cd android-cts-verifier
    adb install -r -g CtsVerifier.apk
  4. На тестируемом устройстве запустите стандартное приложение камеры и закройте все окна, которые появляются при запуске, чтобы избежать помех во время тестирования.

Настройка хоста

Для работы ITS требуется, чтобы хост-машина была подключена к тестируемому устройству через USB, имела возможность использовать ADB для управления устройством и связи с ним, а также чтобы на ней было установлено необходимое программное обеспечение.

Для настройки хост-машины убедитесь, что установлено следующее программное обеспечение.

Инструменты платформы Android SDK

Для корректной работы необходимо установить инструменты платформы Android SDK, а также добавить ADB в путь к исполняемым файлам оболочки или терминала, запущенного на хост-машине. Информацию о публично выпущенной версии инструментов платформы Android SDK см. в примечаниях к выпуску инструментов платформы SDK .

Python

Python должен быть установлен на хост-машине. Мы рекомендуем использовать встроенный дистрибутив Python, чтобы обеспечить поддержку совместимых версий. Подробную информацию о том, какие версии Python и пакетов следует установить для конкретного выпуска, см. в примечаниях к выпуску Camera ITS для соответствующего выпуска.

Мобли

Для Android 12 и выше установите тестовый фреймворк Mobly. Mobly позволяет настроить тестируемое приложение (DUT) и планшет для построения графиков в классе its_base_test . Чтобы установить тестовый фреймворк Mobly, выполните:

pip install mobly

Настройка среды

Для настройки тестовой среды выполните следующую команду:

cd CameraITS
source build/envsetup.sh

Эта команда проверяет установку Python, устанавливает переменную среды PYTHONPATH и запускает модульные тесты для модулей utils/*.py . Если в терминал не выводится никаких ошибок, среда готова к запуску тестов ITS.

Настройка сцены

Для настройки сцен мы рекомендуем использовать готовый комплект Camera ITS-in-a-box, обеспечивающий простоту автоматизации, надежность и эффективность тестирования. Тестовые стенды ITS-in-a-box поддерживают все требования к освещению, центрированию и изменению диаграмм для ITS. Кроме того, ITS-in-a-box необходим для тестирования расширений камеры .

Для ручного тестирования необходимо обеспечить следующее:

  • Испытуемое устройство установлено на штативе.
  • Для каждого теста тестируемое устройство (DUT) наводится на соответствующую сцену. (Тестовый скрипт ITS предоставляет подсказки для изменения настроек сцены перед началом тестов в новой сцене.)
  • Исследуемое устройство подключается к хост-машине через USB.
  • Во время тестирования устройство не перемещается.
  • Сцена освещается постоянным, не колеблющимся источником света. (Не используйте люминесцентные лампы, так как они вызывают мерцание.)

В тестовом скрипте ITS пользователю предлагается изменить настройки сцены перед началом тестирования в новой сцене.

Ориентацию телефона необходимо установить так, чтобы камера делала снимки без поворота. Проще всего это проверить с помощью сцен с лицами в режиме scene2. На большинстве телефонов телефон находится в альбомной ориентации, при этом задняя камера повернута против часовой стрелки, а передняя — по часовой стрелке.

Файлы конфигурации

При использовании фреймворка Mobly необходимо создать конфигурационный файл config.yml для определения тестовой среды Mobly. Ниже приведены примеры для различных сценариев использования.

Файл config.yml для сцен на планшете

Ниже приведён пример файла config.yml для сценариев, использующих планшеты. Для тестирования на планшетах ключевое слово TABLET должно присутствовать в имени тестовой среды. Во время инициализации средство запуска тестов Mobly инициализирует параметры в файле и передаёт их отдельным тестам.

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

Для запуска тестовой среды выполните команду tools/run_all_tests.py . Если параметры командной строки для камер или сцен не указаны, тест запускается со значениями из файла config.yml . Если параметры командной строки для камер или сцен указаны, они переопределяют значения в разделе TestParams файла config.yml . Например:

python tools/run_all_tests.py
python tools/run_all_tests.py camera=1
python tools/run_all_tests.py scenes=2,1,0
python tools/run_all_tests.py camera=0 scenes=scene_tele
python tools/run_all_tests.py camera=0.4 scenes=4,scene6_tele

параметр chart_scaling

В Android 17 и выше параметр chart_scaling включен в config.yml для TEST_BED_TABLET_SCENES . Этот параметр решает проблемы масштабирования диаграммы для телекамер с более широким полем зрения (FoV), предотвращая обрезку сцены и обеспечивая правильную фокусировку устройства во время тестирования.

Поддерживаемые значения для chart_scaling1 , 0.33 , 0.5 или 0.67 , по умолчанию — None . Такой подход позволяет устройствам использовать оптимальный коэффициент масштабирования, адаптированный к их конкретным требованиям, обеспечивая функциональное тестирование на всех устройствах.

Если для chart_scaling установлено значение None , тесты автоматически определяют коэффициент масштабирования с помощью chart_scaling_logic . В противном случае используется значение, указанное в config.yml , или выдается ошибка, если масштабирование недоступно.

Ниже приведён пример файла config.yml с параметром chart_scaling

TestBeds:
  -   Name: TEST_BED_TABLET_SCENES  # Need 'tablet' in name for tablet scenes
    # Use TEST_BED_MANUAL for manual testing and remove below lines:
    #     - serial <tablet_id>
    #       label: tablet
    # Test configuration for scenes[0:4, 6]
    Controllers:
        AndroidDevice:
          -   serial: <device-id>  # quotes needed if serial id entirely numeric
            label: dut
          -   serial: <tablet-id>  # quotes needed if serial id entirely numeric
            label: tablet
    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"  # quotes needed
      lighting_cntl: <controller-type>  # can be arduino or "None"
      lighting_ch: <controller-channel>
      camera: <camera-id>
      scene: <scene-name>  # if <scene-name> runs all scenes
      foldable_device: "False"  # "True" if testing foldable device
      chart_scaling: "None"  # use the values available for scene to be tested
      resultstore_upload: "False"  # "True" if results should be uploaded to ResultStore

Для включения возможности масштабирования диаграмм Camera ITS необходимы корректировки на стороне теста. Если используемый вами тест не поддерживает эту функцию, сообщите об ошибке.

Ниже приведён пример изменения параметра chart_scaling на тестовой стороне.

# load chart for scene
      its_session_utils.load_scene(
          cam, props, self.scene, self.tablet, self.chart_distance,
          chart_scaling=self.chart_scaling)

файл sensor_fusion scene config.yml

Ниже приведён пример файла config_yml для тестов sensor_fusion . Для тестирования sensor_fusion ключевое слово SENSOR_FUSION должно присутствовать в имени тестовой платформы. Android 13 и выше поддерживают только контроллер Arduino для объединения данных с датчиков из-за тестирования предварительного просмотра и стабилизации видео. Android 12 поддерживает контроллеры Arduino и Canakit.

Testbeds
  - Name: TEST_BED_SENSOR_FUSION
    # Test configuration for sensor_fusion/test_sensor_fusion.py
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut

    TestParams:
      fps: 30
      img_size: 640,480
      test_length: 7
      debug_mode: "False"
      chart_distance: 25
      rotator_cntl: arduino
      rotator_ch: 1
      camera: 0

Для запуска тестов sensor_fusion с использованием блока sensor_fusion выполните следующую команду:

python tools/run_all_tests.py scenes=sensor_fusion
python tools/run_all_tests.py scenes=sensor_fusion camera=0
python tools/run_all_tests.py scenes=scene_flash,feature_combination
python tools/run_all_tests.py scenes=checkerboard camera=1

Файл config.yml для нескольких тестовых стендов

Ниже приведён пример файла config.yml с несколькими тестовыми средами: тестовой средой для планшетов и тестовой средой для sensor_fusion . Правильная тестовая среда определяется тестируемыми сценами.

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"
      chart_loc_arg: ""
      camera: 0
      scene: <scene-name>           # if <scene-name> runs all scenes

  - Name: TEST_BED_SENSOR_FUSION
    # Test configuration for sensor_fusion/test_sensor_fusion.py
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut

    TestParams:
      fps: 30
      img_size: 640,480
      test_length: 7
      debug_mode: "False"
      chart_distance: 25
      rotator_cntl: arduino         # cntl can be arduino or canakit
      rotator_ch: 1
      camera: 0

Файл config.yml для ручного тестирования

Ниже приведён пример файла config.yml для ручного тестирования. Android 14 и выше поддерживают ручное тестирование для всех тестов, кроме тестов scene_extensions . Для ручного тестирования ключевое слово MANUAL должно присутствовать в имени тестовой среды. Кроме того, раздел AndroidDevice не может содержать серийный номер или метку для планшета.

TestBeds:
  - Name: TEST_BED_MANUAL
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut

    TestParams:
      debug_mode: "False"
      camera: 0
      scene: 1

Файл config.yml для тестирования стенда Gen2

Ниже приведён пример файла config.yml тестовой платформы TEST_BED_GEN2 . Эта тестовая платформа используется для тестов scene_ip , которые используют систему Gen2. В следующем примере показаны параметры тестовой платформы, когда система Gen2 доступна и тесты scene_ip не пропускаются.

Testbeds
  - Name: TEST_BED_GEN2
    # Test configuration for scene_ip/test_default_jca_ip.py
    Controllers:
        AndroidDevice:
          - serial: <device-id>  # quotes needed if serial id entirely numeric
            label: dut
    TestParams:
      debug_mode: "False"  # quotes are needed here
      chart_distance: 30
      rotator_cntl: gen2_rotator   # gen2 rig specific. "None" if gen2 rig not available
      rotator_ch: 0
      camera: <camera-id>
      foldable_device: "False"  # "True" if testing foldable device
      tablet_device: "False"  # "True" if testing tablet device
      lighting_cntl: gen2_lights  # gen2 rig specific. "None" if gen2 rig not available
      lighting_ch: 1
      scene: scene_ip

В следующем примере показаны параметры тестового стенда, когда установка Gen2 недоступна и тесты scene_ip пропускаются.

Testbeds
  - Name: TEST_BED_GEN2
    # Test configuration for scene_ip/test_default_jca_ip.py
    Controllers:
        AndroidDevice:
          - serial: <device-id>  # quotes needed if serial id entirely numeric
            label: dut
    TestParams:
      debug_mode: "False"  # quotes are needed here
      chart_distance: 30
      rotator_cntl: "None"   # gen2 rig specific. "None" if gen2 rig not available
      rotator_ch: <controller-channel>
      camera: <camera-id>
      foldable_device: "False"  # "True" if testing foldable device
      tablet_device: "False"  # "True" if testing tablet device
      lighting_cntl: "None"  # gen2 rig specific. "None" if gen2 rig not available
      lighting_ch: <controller-channel>
      scene: scene_ip

Для запуска теста scene_ip используйте одну из следующих команд:

python tests/scene_ip/test_default_jca_ip.py -c config.yml
python tools/run_all_tests.py camera=<camera-id> scenes=scene_ip

Проведение тестов ITS

В этом разделе описывается, как запускать тесты ITS.

Вызов тестов

После настройки устройства, хост-машины (включая окружение) и физической сцены запустите тесты ITS, используя следующий процесс.

  1. Откройте приложение CTS Verifier. В меню тестов выберите Camera ITS Test . Для Android 17 и выше тесты sensor_fusion и feature_combination находятся в дополнительной активности под названием Camera ITS Sensor Fusion Rig Test .

  2. С хост-машины запустите тесты ITS из каталога CameraITS/ . Например, для устройства с передней и задней камерами выполните следующую команду:

    python tools/run_all_tests.py

    Скрипт перебирает камеры и тестовые сцены на основе файла config.yml . Для отладки настроек мы рекомендуем запустить одну из сцен scene2 с одним тестом для максимально быстрой обработки результатов.

    Для ручного тестирования, перед запуском набора тестов ITS для каждой сцены, скрипт делает снимок текущей сцены, сохраняет его в формате JPEG, выводит путь к файлу JPEG в консоль и запрашивает у пользователя подтверждение корректности изображения. Этот цикл захвата и подтверждения повторяется до тех пор, пока пользователь не подтвердит корректность изображения. Ниже приведены сообщения, используемые в этом цикле.

    Preparing to run ITS on camera 0
    Start running ITS on camera:  0
    Press Enter after placing camera 0 to frame the test scene:
    scene1_1
    The scene setup should be: A grey card covering at least the   middle 30% of the scene
    Running vendor 3A on device
    Capture an image to check the test scene
    Capturing 1 frame with 1 format [yuv]
    Please check scene setup in /tmp/tmpwBOA7g/0/scene1_1.jpg
    Is the image okay for ITS scene1_1? (Y/N)
    

    При каждом запуске скрипта в журнал выводится сообщение, в котором для каждого теста ITS отображается либо PASS , FAIL , FAIL* , либо SKIP . FAIL* означает, что тест не пройден, но поскольку он еще не является обязательным, CtsVerifier сообщит о его прохождении как о PASS . SKIP означает, что тест пройден, потому что устройство не сообщило о проверяемой базовой возможности. Например, если устройство не сообщает через интерфейсы камеры о поддержке DNG, тесты, связанные с захватом файлов DNG, пропускаются и засчитываются как PASS .

  3. Чтобы подтвердить соответствие тестам требованиям, нажмите зеленую кнопку с галочкой. После этого пункт « Тест Camera ITS» в меню тестов CTS Verifier станет зеленым, что означает, что телефон прошел тест Camera ITS.

Параллельное тестирование тестируемых устройств

Устройства под управлением Android 14 и выше поддерживают параллельное тестирование тестируемых устройств (DUT). Это позволяет тестировать DUT параллельно на нескольких платформах, ускоряя общее тестирование. Например, параллельное тестирование позволяет одновременно тестировать камеру 0 на одной платформе и камеру 1 на другой. Для Android 17 и выше, поскольку тесты Camera ITS разделены на две активности, вы можете запускать тесты sensor_fusion и feature_combination на одном DUT, а другие тесты — на другом DUT параллельно. Все результаты параллельного тестирования агрегируются в сессии CTS Verifier на эталонном DUT. Параллельное тестирование необходимо запускать с управлением освещением Arduino, поскольку ручное управление освещением не поддерживается при параллельном тестировании. Убедитесь, что разные каналы на одном и том же контроллере Arduino управляют освещением для каждой платформы.

Ниже приведён пример файла config.yml , определяющего три тестовых стенда для параллельного запуска.

TestBeds:
  - Name: TEST_BED_TABLET_SCENES_INDEX_0
    Controllers:
        AndroidDevice:
          - serial: <device-id-0>
            label: dut
          - serial: <tablet-id-0>
            label: tablet
    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"
      lighting_cntl: "arduino"
      lighting_ch: <controller-channel-0>
      camera: 0
      scene: <scene-name>  # if <scene-name> left as-is runs all scenes
      foldable_device: "False"

  - Name: TEST_BED_TABLET_SCENES_INDEX_1
    Controllers:
        AndroidDevice:
          - serial: <device-id-1>
            label: dut
          - serial: <tablet-id-1>
            label: tablet
    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"
      lighting_cntl: "arduino"
      lighting_ch: <controller-channel-1>
      camera: 1
      scene: <scene-name>  # if <scene-name> left as-is runs all scenes
      foldable_device: "False"

  # TEST_BED_SENSOR_FUSION represents testbed index 2
  # Parallel sensor_fusion is currently unsupported due to Arduino requirements
  - Name: TEST_BED_SENSOR_FUSION
    # Test configuration for sensor_fusion
    Controllers:
        AndroidDevice:
          - serial: <device-id>
            label: dut
    TestParams:
      fps: 30
      img_size: 640,480
      test_length: 7
      debug_mode: "False"
      chart_distance: 25
      rotator_cntl: "arduino"
      rotator_ch: <controller-channel-2>
      camera: <camera-id>
      foldable_device: "False"
      tablet_device: "False"
      lighting_cntl: "None"
      lighting_ch: <controller-channel>
      scene: "sensor_fusion"

Для параллельного запуска тестовых стендов используйте следующую команду:

for i in 0 1 2; do python3 tools/run_all_tests.py testbed_index=$i num_testbeds=3 & done; wait

Предоставьте сводные результаты испытаний.

В Android 17 и выше вы можете отправлять сводные результаты тестов Camera ITS для утверждения сборки. CTS Verifier позволяет одновременно тестировать несколько сцен на нескольких устройствах и объединять результаты тестов из нескольких отчетов CTS Verifier (из разных запусков тестов или устройств) в один унифицированный отчет.

Процесс подачи заявки

Для отправки сводных результатов Camera ITS на утверждение проекта выполните следующие шаги:

  1. Подготовка устройств: Соберите два-три тестируемых устройства (DUT), имеющих абсолютно одинаковый идентификатор сборки.
  2. Установите CTS Verifier: установите последнюю версию APK-файла CTS Verifier, которую можно получить с помощью предоставленного обозревателя сборок.
  3. Выполняйте тесты параллельно:

    1. Установите тестируемые устройства на отдельных стендах.
    2. Запускайте одновременно разные сценарии Camera ITS на каждом устройстве.
    3. Сбор отчетов: После каждого запуска формируйте отчет CTS Verifier. В него включаются отчеты о сценах, в которых произошел сбой. При последующих запусках повторно запускайте только сцены, в которых произошел сбой.
  4. Отправка отчетов: Загрузите несколько отчетов CTS Verifier, собранных со всех устройств.

  5. Просмотр результатов: После загрузки отчетов просмотрите сводные результаты:

    • В разделе «Анализ теста» отображается полный список всех выполненных сцен.
    • Невыполненные или проваленные сцены перечислены в разделе «Провалы» .

      результат-агрегация-изображение-1

      Рисунок 1. Документация по сценарию, который не был реализован или провалился.

    • Сцены проезда указаны в разделе «Сводные данные по проездам» .

      результат-агрегация-изображение-2

      Рисунок 2. Сцены, отнесенные к категории «Агрегированный проход».

Статус утверждения строительства

Разрешение на строительство выдается после успешного завершения всех необходимых сцен в сводных отчетах.

модель шума DNG

Устройства, заявляющие о возможности захвата RAW или DNG-файлов, должны предоставлять модель шума в метаданных результатов захвата каждого RAW-снимка. Эта модель шума должна быть встроена в HAL камеры для каждой камеры (например, фронтальной и тыловой камер) на устройстве, заявляющем о поддержке этой функции.

Реализация модели шума

Для реализации модели шума выполните следующие шаги, чтобы сгенерировать модель шума и встроить ее в HAL камеры.

  1. Для создания модели шума для каждой камеры запустите скрипт dng_noise_model.py из каталога tools . В результате будет получен фрагмент кода на языке C. Дополнительную информацию о настройке камеры и среды захвата см. в документе DngNoiseModel.pdf в каталоге tools .

  2. Для реализации модели шума для устройства скопируйте и вставьте фрагмент кода на языке C в HAL камеры.

Проверка модели шума

Автоматизированный тест ITS tests/scene1_1/test_dng_noise_model.py проверяет модель шума, подтверждая корректность значений шума для экспозиции и усиления, предоставленных в данных камеры.

Тесты пройдены с трудом (статус теста PASS*)

В Android 17 и выше « пройдено с минимальными отклонениями » ( PASS* ) означает, что тест пройден успешно, но его показатели производительности очень близки к заданному пороговому значению. Хотя тест технически соответствует критериям прохождения, близость к границе сбоя указывает на необходимость более тщательного изучения.

Преимущества проходного балла с минимальным запасом

Статус PASS* предоставляет ряд преимуществ:

  • Система раннего предупреждения: выявляет тесты, которые находятся на грани сбоя, позволяя командам устранять проблемы до того, как они приведут к полному провалу.

  • Проактивная оптимизация: побуждает команды оптимизировать тесты и код, производительность которых находится в нижней части допустимого диапазона, тем самым повышая общую стабильность.

  • Улучшение качества: помогает поддерживать более высокий стандарт качества, выявляя области, которые могут быть подвержены будущим регрессиям при внесении незначительных изменений в код.

  • Сокращение времени отладки: благодаря раннему выявлению успешных тестов PASS* ) можно значительно сократить время и усилия, необходимые для отладки полных сбоев в будущем.

Подробности ПРОПУСКА*

Статус PASS* включает в себя следующее:

  • Определение пороговых значений: Для каждого соответствующего теста в Camera ITS определены конкретные пороговые значения, свидетельствующие о прохождении теста на грани допустимого.

  • Автоматическое обнаружение: Система автоматизации тестирования обнаруживает и классифицирует тесты как PASS* на основе заданных пороговых значений.

  • Механизм оповещения: Команды получают автоматические оповещения о любых тестах, отмеченных как PASS* , с указанием на необходимость изучения конкретного теста и его показателей.

  • Отчетность: В отчетах о тестировании и на панелях мониторинга статусы «пройдено с минимальными отклонениями» четко отображаются для лучшей наглядности как PASS* в отчете ItsTestSummary , аналогично Fail* для тестов, not_yet_mandated . Тест сохраняет зеленый статус, поскольку продолжает проходить в пределах установленных пороговых значений, чтобы избежать дальнейшей путаницы. Статус PASS* применяется только к классу тестов, а не ко всей сцене. Например, Scene_0 может считаться PASS даже если test_jitter и test_metadata имеют PASS* .

  • Мониторинг: Данные о производительности собираются по тестам, которые с трудом проходят проверку на устройстве. Это позволяет отслеживать будущие улучшения камеры, вносимые производителями оборудования, если эти тесты переходят в статус PASS .

Ниже приведён пример результатов теста с PASS* :

INFO:root:Reporting camera 1 ITS results to CtsVerifier
INFO:root:ITS results to CtsVerifier: {'scene0': {'result': 'PASS', 'TEST_STATUS': [{'test': 'test_jitter', 'status': 'PASS*'}, {'test': 'test_metadata', **'status': 'PASS*'**}, {'test': 'test_request_capture_match', 'status': 'PASS'}, {'test': 'test_sensor_events', 'status': 'PASS'}, {'test': 'test_solid_color_test_pattern', 'status': 'PASS'}, {'test': 'test_test_patterns', 'status': 'SKIP'}, {'test': 'test_tonemap_curve', 'status': 'SKIP'}, {'test': 'test_unified_timestamps', 'status': 'PASS'}, {'test': 'test_vibration_restriction', 'status': 'PASS'}], 'mpc_metrics': [], 'performance_metrics': [], 'feature_query_proto': [], 'feature_query_proto_path': [], 'summary': '/tmp/CameraITS_zojk4sdr/cam_id_1/scene0/scene_test_summary.txt', 'start': 1754330630345, 'end': 1754330764534}, 'scene1_1': {'result': 'NOT_EXECUTED'}, 'scene1_2': {'result': 'NOT_EXECUTED'}, 'scene1_3': {'result': 'NOT_EXECUTED'}, 'scene2_a': {'result': 'NOT_EXECUTED'}, 'scene2_b': {'result': 'NOT_EXECUTED'}, 'scene2_c': {'result': 'NOT_EXECUTED'}, 'scene2_d': {'result': 'NOT_EXECUTED'}, 'scene2_e': {'result': 'NOT_EXECUTED'}, 'scene2_f': {'result': 'NOT_EXECUTED'}, 'scene2_g': {'result': 'NOT_EXECUTED'}, 'scene3': {'result': 'NOT_EXECUTED'}, 'scene4': {'result': 'NOT_EXECUTED'}, 'scene6': {'result': 'NOT_EXECUTED'}, 'scene7': {'result': 'NOT_EXECUTED'}, 'scene8': {'result': 'NOT_EXECUTED'}, 'scene9': {'result': 'NOT_EXECUTED'}, 'scene_extensions/scene_hdr': {'result': 'NOT_EXECUTED'}, 'scene_extensions/scene_low_light': {'result': 'NOT_EXECUTED'}, 'scene_tele/scene6_tele': {'result': 'NOT_EXECUTED'}, 'scene_tele/scene7_tele': {'result': 'NOT_EXECUTED'}, 'scene_video': {'result': 'NOT_EXECUTED'}, 'scene5': {'result': 'NOT_EXECUTED'}, 'sensor_fusion': {'result': 'NOT_EXECUTED'}, 'feature_combination': {'result': 'NOT_EXECUTED'}, 'scene_flash': {'result': 'NOT_EXECUTED'}, 'scene_ip': {'result': 'NOT_EXECUTED'}}

Партнерам рекомендуется:

  • Мониторинг предупреждений PASS*
  • Исследуйте первопричину неудачных тестов PASS*
  • Активно оптимизируйте тесты, отмеченные как PASS*

Статус PASS* призван повысить надежность и эффективность тестирования систем видеонаблюдения с использованием камер, что приведет к созданию стабильного и высококачественного продукта.