
图 1. 测试图案的缩略图。下载上方链接中的全分辨率图像。
本页介绍了如何正确测试您的旋转矢量传感器实现的兼容性。当设备声明 TYPE_ROTATION_VECTOR 复合传感器功能时,应运行此测试。
测试
- 在要测试的 Android 设备上安装 OpenCV Manager。
- 从 SourceForge.net 下载
OpenCV-3.0.0-android-sdk.zip
软件包。 - 从下载的归档文件内的
apk
文件夹中找到 APK。使用带有--bypass-low-target-sdk-block
选项的adb install
命令从计算机将 APK 加载到设备上。对于运行 Android 13 或更低版本的设备,此--bypass-low-target-sdk-block
选项不是必需的。如需了解详情,请参阅安装应用。 如果已登录 Google Play 的有效帐号,请在 Google Play 中找到 OpenCV Manager,然后在上下文菜单(“...”按钮弹出的菜单)中停用自动更新。
图 2. 在 Google Play 中停用自动更新。
- 打印出链接的测试图案,打印时停用任何缩放选项。图案应适合横向的美国 Letter 纸或任何更大的纸张。
注意:上面的内嵌图片分辨率较低,仅用于说明。请勿直接将其打印为图案。
- 将图案放在水平表面上。
- 在 CTS 验证程序应用中启动旋转矢量 CV 交叉检查。按照指南开启飞行模式、关闭自动旋转以及调整自适应亮度和位置(如果尚未进行这些更改)。
图 3. 启动测试。
- 当视频预览出现时,将手机放在图案上方三英尺(或一米)处,使主摄像头朝向图案,屏幕上的黄色标记和图案上的黄色标记在同一角对齐。
图 4. 放置测试图案。
- 在保持图案完全在相机视图中的同时,按照旋转范围指示器的提示,围绕图案在三个不同的方向(逐个方向,即先方向 1,再方向 2,然后方向 3,如下图所示)旋转被测 Android 设备 (DUT)。保持运动平稳流畅,以获得最佳结果。
图 5. 操作被测设备。
- 捕获完成后,相机预览将消失,分析过程将开始。请耐心等待分析完成;这通常需要一到五分钟,具体取决于手机性能。分析完成后,手机会发出声音并振动。如果分析成功,屏幕上会显示数值结果。
图 6. 完成测试。
- 点击下一步以继续进入通过/失败屏幕并查看结果。
图 7. 通过测试。
- 遵循以下提示以获得最佳结果
- 由于这是一个复杂的手动测试,您可能需要尝试几次以获得最佳结果。
- 加速度计、陀螺仪和磁力计应在测试前进行校准,以获得良好的结果。
问题排查
- 症状:启动测试用例时或刚完成视频录制后测试崩溃。
原因:可能是 OpenCV Manager 兼容性问题。检查logcat
以确认。如果已确认,请检查已安装的 OpenCV Manager 的版本和架构。 - 症状:测试经常因“无效帧过多”错误而失败。
原因:可能是视频质量问题。确认以下条件- 测试环境光线充足。自然光通常效果最佳。但是,在没有自然光的情况下,来自多个角度的充足光线(不会形成明显阴影)也适用。避免低角度照明以减少眩光。
- 视频拍摄过程中的运动平稳。急促的运动会导致模糊并使计算机视觉软件感到困惑。
- 图案应始终完全在视频预览帧中,并位于中心附近。图案应为视频预览窗口大小的 1/4 到 1/2。如果图案太小,则精度会降低。如果图案太大,则镜头畸变会更明显,并且更难使图案始终保持在视频录制帧内。
- 相机能够很好地对焦。某些设备在视频录制过程中难以对焦。这通常是由于场景中的变化太少,例如纯色光滑的地板表面。将测试图案移动到具有纹理的表面或在测试图案周围引入物体通常会有所帮助。
- 图像稳定功能已关闭。
- 症状:俯仰和横滚测试工作正常,但偏航测试经常失败。
原因:首先,确保磁场传感器已良好校准。如果磁场传感器未校准,则旋转矢量将无法正常工作。
偏航轴也可能因视频拍摄而失败。保持设备稳定,并在测试图案周围走动/移动以进行测试的偏航部分。在手中旋转设备时很难保持视频质量。
报告反馈
如果以上步骤没有帮助,请务必按照以下反馈步骤报告您的问题。
报告错误时,请收集以下信息
- Android 错误报告
- 屏幕上出现任何错误消息的屏幕截图。
/sdcard/RVCVRecData/
的内容。如果已多次进行测试,则此文件夹包含视频文件,因此可能非常大。清除该文件夹并再次执行测试将有助于减小大小。检查内部的视频文件以查找录制中的明显问题。- OpenCV Manager 应用的屏幕截图。