介绍
Imatest现在支持直接从 Android 设备获取图像,适用于 Android API 级别 15 及以上版本(例如 Icecream Sandwich 及更高版本)。借助内置的 Android 应用ImatestAcquire (在某些情况下还需要 ITSservice 服务), Imatest可以远程发出图像采集命令,并通过 USB 下载采集到的数据。有了ImatestAcquire , Imatest现在可以远程测试 Android 设备。
ImatestAcquire可以借助 Android 设备上的内置相机应用拍摄图像,或者对于部分设备(见下方列表),可以使用 Android 的 CameraITS 功能。所有设备均可使用内置相机应用进行拍摄,如果设备上安装了多个相机应用,用户可以选择使用哪个。这种操作模式类似于傻瓜相机,无需用户在 Android 设备上进行任何操作(例如,用户需要按下快门按钮)。对于支持 Android Camera 2 API 的设备, ImatestAcquire 可以全自动运行,并允许用户访问重要的拍摄设置:ISO 感光度、曝光时间、图像尺寸和图像格式(YUV、JPEG 和 RAW [1] )。
*注意* 从 Imatest 5.0 开始,图像采集功能已集成到 Imatest Master 中。在 Imatest 5.0 之前,图像采集功能位于 Imatest IS 中。
ImatestAcquire 安卓应用
ImatestAcquire应用加载后,会显示主界面(如上图所示)。用户界面包含“连接” 、 “拍照”和“设置”按钮,前两个按钮还带有相应的状态指示器。由于Imatest会以自动化的方式与应用交互,因此通常无需使用这些控件。不过,下文将详细介绍。
启动时, ImatestAcquire 会开始搜索连接,以便 Imatest 可以自动连接到ImatestAcquire 。如有需要,可以使用“连接”按钮手动触发ImatestAcquire 开始搜索连接。等待连接期间,将显示“正在等待连接”的消息。连接建立后,状态指示器将更改为“已连接到 /127.0.0.1,端口 2112 ”,例如。如果在超时时间内未建立连接,则会显示“连接超时,请重试” 。
按下“拍照”按钮将使用已保存的设置手动触发图像采集并尝试传输图像。请注意,Imatest IS 会自动触发图像采集,因此无需使用此按钮。
“设置”按钮会打开“设置”界面。
设置活动“设置”活动提供对以下与捕获和连接相关的设置的访问权限:
请注意,当 Imatest 向 ImatestAcquire 请求捕获时,这些设置将被覆盖。 | ![]() |
手动捕获设置活动“设置”活动提供对以下手动捕获相关设置的访问权限:
请注意,当Imatest向ImatestAcquire请求捕获时,这些设置将被覆盖。 | ![]() |
配置您的安卓设备
要使您的 Android 设备能够与Imatest通信,设备必须通过 USB 连接到主机,并且必须在设备上启用 USB 调试模式。启用此选项后,即可通过 USB 与主机通信。您可以在“设置”应用的“开发者选项”中找到启用 USB 调试模式的选项。对于 API 级别 17(Android 4.2)及更高版本,默认情况下“开发者选项”处于隐藏状态。对于 API 版本为 15 或 16 的设备,请直接跳至“启用 USB 调试”部分。
启用开发者选项
启用开发者选项的步骤可能因设备而异,本示例以 Google Nexus 5 为例。要启用开发者选项,请打开“设置”应用,向下滚动并选择“关于手机”部分。在“关于手机”中,向下滚动找到“版本号” ,然后连续点击“版本号”七次。点击三次后,屏幕上会显示一条提示信息(见下图)。
启用 USB 调试
接下来返回“设置”应用,向下滚动,然后选择“开发者选项”部分。

请注意,在某些设备上,无需恢复出厂设置即可重新隐藏“开发者选项”。要执行此操作,请打开“设置”应用,然后选择“应用”部分。向下滚动到“全部”部分,然后向下滚动选择“设置”应用。点击“清除数据”按钮, “开发者选项”部分现在应该会再次隐藏。
配置 Imatest 
要使用Imatest进行采集,首先必须在Android 设置窗口中配置连接和采集设置,并且必须将Imatest设置为从 Android 采集。
Android 设置窗口
Android 设置窗口用于选择已连接的 Android 设备并定义该设备的采集设置。此窗口可通过Imatest主窗口的“设置”菜单和“Android 设置”菜单项访问。请注意,由于对话框需要轮询可用的 Android 设备,因此窗口可能需要一些时间才会显示。
连接配置部分
本部分允许用户创建与 Android 设备的连接。Imatest 通过 USB 转发的 TCP 连接与 Android 设备通信。由于这种连接方式,Android设备端口和主机端口均有相应的设置选项。通常情况下,无需更改这些端口。
如果您的设备已按照上述步骤正确配置,则在对话框加载时,您设备的序列号将显示在“选择设备”下拉菜单中(如果未显示,请确保已启用 USB 调试,如上所述)。选择设备后, Imatest将安装ImatestAcquire 应用(对于支持的设备,还会安装 ITSservice),并启用“启动 ImatestAcquire” 、 “重启设备”和“停止 ImatestAcquire”按钮。这些按钮允许用户从设备全新状态启动 ImatestAcquire。
采集设置部分
本节包含定义图像捕获所需的各种控件。第一个单选按钮组是“采集源”组,允许从内置应用或CameraITS进行捕获。使用内置应用采集图像将调用设备上用户选择的相机应用。CameraITS 选项将从 Android 的 CameraITS 服务采集图像,该服务仅适用于部分设备。选择“内置应用”将禁用本节中的所有其他控件,因为它们仅适用于CameraITS 。请注意,对于不支持 CameraITS 的设备,唯一可用的采集源是“内置应用” 。
CameraITS选项可控制拍摄模式、图像格式、曝光、感光度,以及自定义图像尺寸的下拉菜单和强制使用线性色调映射的复选框。拍摄模式组包含以下选项:
- 全自动- 执行完整的 3A 功能 - 自动对焦 (AF)、自动白平衡 (AWB) 和自动曝光 (AE)
- 手动- 仅限自动对焦和自动白平衡
全自动拍摄模式会禁用其他控制选项,并且仅支持 YUV 图像格式。在手动拍摄模式下,您可以修改曝光时间、ISO 感光度、图像尺寸以及是否使用线性色调映射。请注意,曝光时间、感光度和自定义尺寸的限制由设备决定。此外,设备还决定了允许的图像格式,但在手动模式下,所有允许的格式均可使用。
启用从 Imatest 获取 Android 数据
要让Imatest从 Android 设备获取图像,请点击Imatest主窗口中的“设置”菜单。然后选择“从设备获取图像”,最后选择“Android”。现在Imatest就可以从连接的 Android 设备获取图像了。
CameraITS(摄像头 2)支持的设备列表
- Google Nexus 5
已知问题
- 某些安卓设备,例如 Nexus 5,在通过 USB 3.0 端口进行稳定通信时会遇到问题。如果在几次截图后出现“错误:设备离线”的提示,请尝试将设备连接到 USB 2.0 端口重试。
[1] 截至撰写本文档时,Android 尚未在 Camera 2 API 中添加 RAW 支持。RAW 支持将在 Android 正式发布 Android API 版本 L 时提供。





