При подключении кадров камеры Android к Vision SDK сначала проверьте расположение данных. Затем определите, где происходит вращение, обрезка, масштабирование и зеркальное отображение. Обычный предварительный просмотр не доказывает, что модель получила правильные пиксели или что блоки обнаружения соответствуют правильным позициям отображения.
Имена форматов не заменяют проверки компоновки плоскости изображения.
Для изображений с несколькими цветовыми плоскостями запишите шаг строки каждой плоскости изображения, шаг пикселя и действительный диапазон данных. Не предполагайте, что строки и образцы пикселей не имеют заполнения. Документация по плоскости изображения Android определяет расстояния в байтах между соседними строками и выборками пикселей отдельно. Проверьте копирование или преобразование на соответствие фактическому формату и интерфейсу SDK. Один только предварительный просмотр не является достаточным доказательством.
Определите время жизни данных для асинхронных задач
Документация по изображениям утверждает, что доступ к ранее полученным буферам плоскостей после закрытия изображения имеет неопределенное поведение. Если асинхронной задаче требуются данные после закрытия образа, закройте образ только после копирования всех необходимых данных в буфер, принадлежащий приложению. Повторно используйте эти буферы в соответствии с условиями завершения задачи. Копирование само по себе не заменяет проверки формата и границ.
Записывайте координаты изображения и отображайте координаты отдельно.
| Этап обработки | Необходимо определение | Доказательства для сохранения |
|---|---|---|
| Исходный ввод | Размеры изображения, формат и область обрезки | Исходный кадр и допустимая область |
| Ввод модели | Порядок вращения, масштабирования или обрезки | Изображение и параметры, отправленные в SDK |
| Координаты результата | Происхождение, единицы измерения и соответствующее изображение | Результирующие значения и версия изображения |
| Наложение предварительного просмотра | Отображение размеров, границ или обрезки и зеркального отображения. | Область отображения и сравнение позиций |
Корректное отображение не проверяет весь конвейер
Видеть Документация по предварительной версии Android для ориентации датчика, ориентации устройства и размеров предварительного просмотра. Проверьте действительный контракт SDK и проверьте, поддерживает ли он ротацию или зеркалирование. Избегайте применения преобразования дважды. Сравните входные данные модели, результаты и наложения для одного и того же кадра. Без исходных входных данных оставьте путь ввода непроверенным. В этой статье объясняются методы обработки; никаких новых испытаний устройств не проводилось.
Сопутствующие услуги: Android, мобильные и встроенные SDK для машинного зрения, консультация по проекту.