AXIS Demographic Identifier

解决方案概览

完整系统所需的不同设备、应用程序和工具概述。

AXIS Demographic Identifier

AXIS Demographic Identifier 是一款分析软件,可安装在网络摄像机上。

此应用程序适用于您想要估计行经人员的性别和年龄的零售及其他环境。AXIS Demographic Identifier 适用于数字标牌实现,以及您想要进一步了解来访者的情况。 如果与 AXIS People Counter 统计信息结合使用,输出会让您清楚了解来访的男性和女性的人数,以及进入的来访者的年龄段。

性别和年龄侦测如何工作?

每次面部追踪包括多次面部侦测,进行一次性别和一次年龄估计。 面部侦测是在图像中侦测到的人脸的一个框。 理论上,该应用程序可在每张图像中侦测多达 100 个面孔(框)。

面部追踪可以是 1 秒10 分钟,或各种持续时间,全部取决于应用程序侦测人脸的持续时间。 这意味着面部追踪可以包含 5、10000 或任意数量的面部侦测。 面部追踪时间更长,年龄和性别估计未必更准确。

若要使应用程序正常工作,正确的安装和设置很重要。

安装摄像机

摄像机放置

安装摄像机,使其朝向走过的人的面部。 应用程序容许人脸正面形成的大约 +/- 15 度的偏离、转动或倾斜角度。

  • 安装示例:
  • 此摄像机安装在出口旁边,朝向行经人员。

  • 安装摄像机,使其从高处俯视。 此摄像机安装在出口,朝向走出的人。

  • 在此数字标牌场景中,摄像机的安装位置是要直视人脸。

图像质量

用于设置面部经过的位置:

  • 对焦

  • 对比度丰富

  • 照明均匀,无反光和阴影

在因强背光导致对比度低的黑脸场景中,请考虑使用照射源补充设置,从而获得更好的面部图像。

在网络上查找设备

有关如何查找和分配 IP 地址的更多信息,请转到如何分配一个 IP 地址和访问您的设备

访问设备

  1. 打开浏览器并输入 Axis 设备的 IP 地址或主机名。

    如果您不知道 IP 地址,请使用 AXIS IP Utility 或 AXIS Device Manager 在网络上查找设备。

  2. 输入用户名和密码。 如果您是首次访问设备,则必须设置root用户密码。 请参见为root用户设置一个新密码

  3. 实时浏览页面将在您的浏览器中打开。

安全密码

重要

Axis 设备在网络中以明文形式发送初始设置的密码。 若要在首次登录后保护您的设备,请设置安全加密的 HTTPS 连接,然后更改密码。

设备密码是对数据和服务的主要保护。 Axis 设备不会强加密码策略,因为它们可能会在不同类型的安装中使用。

为保护您的数据,我们强烈建议您:

  • 使用至少包含 8 个字符的密码,而且密码建议由密码生成器生成。

  • 不要泄露密码。

  • 定期更改密码,至少一年一次。

为root用户设置一个新密码

重要

默认管理员用户名为 root。 如果 root 的密码丢失,请将设备重置为出厂默认设置。 请参见

支持提示: 密码安全确认检查
  1. 键入密码。 请按照安全密码的相关说明操作。 请参见安全密码

  2. 重新键入密码以确认拼写。

  3. 单击创建登录信息。 密码现在已配置完成。

在摄像机上安装应用

  • 许可证只能用于一台摄像机。 没有新的注册密钥,您无法在另一台摄像机上激活许可证。
  • 要在摄像机上安装应用程序,您需要有管理员权限。
  1. 将摄像机安装在网络上。

  2. 在浏览器中转到摄像机网页界面,请参见摄像机的用户手册。

  3. 转到应用

  4. 将应用程序文件 (.eap) 上载到摄像机。

  5. 激活许可证。 如果您已联网,输入许可证代码。 应用程序会自动激活许可证。

如何在脱机状态下激活许可证

  1. 要在脱机状态下激活许可证,您需要许可证密钥。 如果计算机上没有许可证密钥,请执行以下操作:
  2. 转到 www.axis.com/applications

  3. 转到许可证密钥注册。 您需要许可证代码和 Axis 设备序列号。

  4. 在计算机上保存许可证密钥文件,然后在应用程序要求提供密钥时选择该文件。

访问应用程序设置

  1. 在摄像机网页界面中,转到应用程序,启动应用程序,然后单击打开

其他设置

设置日期和时间

日期和时间设置对于摄像机长期保持正确的时间以及统计信息归于正确的时间很重要。 您可在摄像机网页界面中设置日期和时间。

  1. 在摄像机的网页界面中,转到系统 > 日期和时间

  2. 有关日期和时间设置的更多信息,请单击

创建用户账户

您可以创建具有不同权限的用户账户,让未经授权的员工可以查看统计数据,但不能更改计数器的设置。

您可在摄像机网页界面中创建用户账户。

  1. 在摄像机网页界面中,转到系统 > 用户

  2. 有关用户账户的更多信息,请单击

如何设置侦测区域

侦测区域是图像中应用程序应该侦测到人脸的区域。 在设置侦测区域时,请记住,人脸在图像中可见的时间越长,侦测效果会越好。 另外,请记住每秒的帧数 (fps) 越多,侦测就越准确。

  1. 在应用程序设置中,转到设置 > 一般

  2. 确保应用程序的状态为打开。

  3. 名称字段中键入名称。 此名称是在 AXIS Store Reporter 中显示的名称。

  4. 通过单击设置设置侦测区域

  5. 要设置侦测区域,请调整黄色窗口的大小。 窗口越小,每秒的帧数越多,侦测就越准确。

  6. 为了能够侦测到人脸,绿色窗口的大小需要至少为 50 像素

  7. 要设置您想要分析的人脸的大小,请调整绿色窗口的大小。 窗口越大,每秒的帧数越多,侦测就越准确。

  8. 转到实景来检查侦测区域。

如何触发事件

  1. 转到设置 > 事件

  2. 选择启用

  3. 单击提交

  4. 转到摄像机的网页访问事件系统。

  5. 在事件设置中,请使用触发应用程序,并在以下默认触发器之间进行选择:

    • Demographics-any_0_30 – 侦测年龄为 0 至 30 岁的人,不考虑性别

    • Demographics-any_0_31_plus – 侦测年龄为 31 岁及以上的人,不考虑性别

    • Demographics-female – 侦测女性

    • Demographics-male – 侦测男性

  6. 请按照内置的说明设置事件。

如何创建自定义触发器

在高级模式中,您可以通过自定义下列参数来创建您自己的触发器:

[top row]
触发器名称
gender
男性或女性
min_age
人物最小年龄
max_age
人物最大年龄
t_min
侦测后发起的两次面部触发之间间隔的时间量(秒)
Example

如果您想要播放 20 秒长的视频,面向 31 岁到 65 岁的女性,自定义触发器应如下所示。

"play_video_middle_age_women": {
"gender": "female",
"min_age": 31,
"max_age": 65,
"t_min": 20
}
  1. 转到设置 > 事件

  2. 选择启用

  3. 选择高级

  4. 在文本字段中,不要更改或删除各种代码字符。

  5. 在文本字段中,我们建议您复制现有的触发器,然后更改参数 gendermin_agemax_aget_min

  6. 要检查代码和内容,请单击验证

  7. 如果代码或参数出现问题,请检查代码,然后重试。 您始终可以通过单击使用默认设置重置为默认设置。

  8. 单击提交

  9. 转到摄像机的网页访问事件系统。

  10. 在事件设置中,使用触发应用程序,然后选择您刚才创建的触发器。

创建时间表

为了避免夜间或假期期间进行不必要的侦测,我们建议您设置时间表。

  1. 转到设置 > 计数时间表

  2. 要调整开始和停止时间,请移动滑块。 通过选择每日时间表,然后移动对应的滑块,来为一周的每一天设置单个时间表。

在一周中的某一天关闭应用

清除选择滑块旁边的复选框。

  • 在假期期间关闭应用
  • 假期下的日历中选择假期日期。

将应用程序的设置复制到另一台摄像机

例如,如果您想要将应用程序的设置复制到同一个商店中安装高度相同的其他摄像机,请使用复制功能。 不包括摄像机的特定设置,如应用程序许可证和摄像机名称。

  1. 若要复制应用程序的设置,请转到维护 > 参数备份

  2. 单击复制。 计算机会将文件保存在浏览器的默认下载文件夹中。

统计数据

有几个途径可以使用来自计数器的统计信息:

  • 在应用程序网页界面中,在内置的图表中查看实时的统计数据。

  • 从统计信息页面,在日和周视图中查看内置图表。 数据实时更新。

    数据可在摄像机中保存长达 90 天,并且每隔 15 分钟更新一次。 数据存储在 15 分钟时段内,表示 15 分钟周期的进出计数。

  • 通过开放 API 下载数据。 请参见 VAPIX® 库

  • 使用充当中心点的软件包 AXIS Store Data Manager 来存储和管理从全部设备收集的数据。 请参见将摄像机连接到 AXIS Store Data Manager 中的文件夹

  • 使用基于 Web 的统计解决方案 AXIS Store Reporter 来管理和监视历史数据。

  • 将统计信息下载至您的电脑,请参见下载统计数据

统计信息分为性别信息和年龄信息。 数据以两种不同方式存储在设备的 SD 卡上:

按年龄和性别,15 分钟间隔

每个面部追踪按年龄和性别类别保存,如下所示:

间隔开始间隔停止M 总计M (0–14)M (15–24)M (25–34)M (35–44)M (45–54)M (55–64)M (65–74)M (75–)
2017-12-02 08:152017-12-02 08:303111
间隔开始间隔停止W 总计W (0–14)W (15–24)W (25–34)W (35–44)W (45–54)W (55–64)W (65–74)W (75–)
2017-12-02 08:152017-12-02 08:304211

按面部追踪

空间可以足够存储约 20000 个追踪。 追踪存储在循环缓冲区中,这意味着当追踪达到 20001 个时,将覆盖第一个追踪。

如 HTTP API 部分所述,追踪使用 JSON 格式存储。

将摄像机连接到 AXIS Store Data Manager 中的文件夹

要执行此任务,应用程序必须已安装在摄像机上。

  1. AXIS Store Data Manager 中,转到,获取您要连接到的文件夹连接标识符文件夹连接密码

  2. 在摄像机网页界面中,转到设置 > 应用,然后打开应用程序的网页界面。

  3. 在应用程序网页界面中,转到设置 >报告

  4. 要启用向服务器推送数据,请选择已启用

  5. 输入 AXIS Store Data Manager,例如 http://[subdomain].asdm.axis.com/datamanager,此处 [subdomain] 被唯一名称代替。

  6. 输入文件夹连接标识符文件夹连接密码

  7. 要测试连接,请单击运行测试

  8. 单击提交

下载统计数据

  1. 转到统计数据 > 下载统计数据

  2. 选择文件格式:

    • 如果选择 .xml、.csv 或 .json 格式,您还可以选择时间间隔。

  3. 在日历中选择日期。 浏览器将文件保存在默认的下载文件夹中。

  4. 如果要下载全部可用数据,请单击文件格式旁边的下载全部

故障排查

问题操作
软件不能上载到 AXIS Store Data Manager。常见的原因是网络通信故障。 在设置 > 报告下运行连接测试,以了解有关问题根本原因的信息。
应用程序不能使用 WDR。若要尽快检测到人脸,我们建议您使用不带WDR(宽动态范围)的取景模式。 不使用 WDR,帧速会更高,面部侦测因此变得更快。 但是,如果不使用 WDR,视频流在镜头内进入强光时可能看上去较暗。 因此,我们建议您避开强背光。
应用程序在我的浏览器中不工作。使用 AXIS Demographic Identifier 时应避免使用 Internet Explorer®浏览器。 ChromeTM 或 Firefox® 效果更好,能够更快地呈现视频流。

重启应用程序

如果计数不准确或网页界面异常慢,您可以尝试重启正在运行的服务或重启设备。

要重启设备,请转到维护 > 重启

重设应用程序

转到维护 > 重置,执行以下操作之一:

  • 要清除摄像机中的全部统计数据,请单击清除数据

  • 要将应用程序的全部设置恢复为默认设置,请单击恢复设置

备份设置

  1. 若要备份应用程序的设置,请转到维护 > 参数备份

  2. 单击备份。 计算机会将文件保存在浏览器的默认下载文件夹中。

恢复设置

  1. 转到维护 > 参数备份

  2. 浏览选择之前保存的备份文件,然后单击恢复

生成日志报告

如果您在使用设备时遇到问题,可以生成日志报告。

  1. 转到维护 > 日志

  2. 单击生成日志

  3. 浏览器将在计算机上的默认下载浏览器上保存此文件。

  4. 在向支持部门提交问题时,请附上日志报告。

管理许可证

转到维护 > 注册

  • 要注册许可证,请单击注册页面

  • 如果您想要移除此产品的许可证,请单击清除注册

  • 如果您有一个更新的许可证,请单击更新许可证

人口统计标识符 API

常见示例

Example

获取实时追踪

请求
http://<servername>/local/demographics/.api?tracks-live.json
返回(示例)- 未找到活动追踪
{
  "live": {
  "tracks" : [
  ]
  }
}
返回(示例)- 找到一个活动追踪
{
  "live": {
    "tracks" : [
    {
      "time_start" : 1447749079.091622,
      "time_end" : 1447749081.011605,
      "gender_average" : 1,
      "age_average" : 20,
      "boxsize_average" : 177,
      "gender_last" : 1,
      "age_last" : 21,
      "boxsize_last" : 180
    } ]
  }
}
返回(示例)- 找到两个活动追踪
{
  "live": {
    "tracks" : [
    {
      "time_start" : 1447749104.451576,
      "time_end" : 1447749109.451567,
      "gender_average" : 1,
      "age_average" : 20,
      "boxsize_average" : 198,
      "gender_last" : 1,
      "age_last" : 18,
      "boxsize_last" : 195
    },
    {
      "time_start" : 1447749107.811568,
      "time_end" : 1447749109.451567,
      "gender_average" : -1,
      "age_average" : 21,
      "boxsize_average" : 160,
      "gender_last" : -1,
      "age_last" : 23,
      "boxsize_last" : 158
    } ]
  }
}
Example

获取结束的追踪

请求
http://<servername>/local/demographics/.api?tracks-ended.json
返回(示例)- 未找到活动追踪
{
  "ended": {
    "time_start": 1447748743.039911,
    "time_end": 1447749643.039911,
    "tracks": [
  ]
  }
}
返回(示例)- 找到一个结束的追踪
{
  "ended": {
    "time_start": 1447749887.539835,
    "time_end": 1447749947.539835,
    "tracks": [
    {
      "time_start": 1447749942.930319,
      "time_end": 1447749946.210321,
      "gender_average": 1,
      "age_average": 21,
      "boxsize_average": 219
    } ]
  }
}
返回(示例)- 找到两个结束的追踪
{
  "ended": {
    "time_start": 1447750011.470372,
    "time_end": 1447750071.470372,
    "tracks": [
    {
      "time_start": 1447750064.890142,
      "time_end": 1447750067.690133,
      "gender_average": 1,
      "age_average": 22,
      "boxsize_average": 217
    },
    {
      "time_start": 1447750066.130135,
      "time_end": 1447750067.690133,
      "gender_average": -1,
      "age_average": 18,
      "boxsize_average": 192
    } ]
  }
}
Example

获取实时的和结束的追踪

请求
http://<servername>/local/demographics/.api?tracks-live-and-ended.json&time=60
返回(示例)- 两个实时追踪和一个结束的追踪
{
  "live": {
    "tracks": [
    {
      "time_start": 1447750516.809464,
      "time_end": 1447750523.329454,
      "gender_average": 1,
      "age_average": 19,
      "boxsize_average": 218,
      "gender_last": 1,
      "age_last": 19,
      "boxsize_last": 218
    },
    {
      "time_start" 1447750521.569459,
      "time_end": 1447750523.329454,
      "gender_average": -1,
      "age_average": 17,
      "boxsize_average": 222,
      "gender_last": 260,
      "age_last": 19,
      "boxsize_last": 217
    } ]
  },
  "ended": {
    "time_start": 1447750463.936758,
    "time_end": 1447750523.936758,
    "tracks": [
    {
      "time_start": 1447750514.249470,
      "time_end": 1447750515.329465,
      "gender_average": 1,
      "age_average": 20,
      "boxsize_average": 239
    } ]
  }
}

API 规范

获取实时追踪

本 API 会返回在视频流中当前处于激活状态的实时面孔追踪记录(框)。

格式:
JSON
方法:
GET
请求
http://<servername>/local/demographics/.api?tracks-live.json

返回

请参见常见示例中的返回示例。

返回值说明
说明
<time_start>首次面孔观察的时间(秒,采用协调通用时间 [UTC] 格式)
<time-end>末次面孔观察的时间(秒)。
<gender_average>-1 代表从 <time_start> 开始的平均女性估计,1 代表平均男性估计。
<age_average>对从 <time_start> 开始的追踪的年龄估计。
<boxsize_average>从 <time_start> 开始的追踪的平均框大小。
<gender_last>末次观察时推测女性为 -1,男性为 1
<age_last>末次观察时的估计年龄。
<boxsize_last>末次观察的边框大小。

获取结束的追踪

本 API 返回之前侦测到的(已终止的)追踪记录。

格式:
JSON
方法:
GET
请求
http://<servername>/local/demographics/.api?tracks-ended.json&<time>
请求参数说明
参数说明
<time>使用 time 调整要在返回中包含的时间量(秒)。 默认值为 15 分钟。

返回

请参见常见示例中的返回示例。

返回值说明
说明
<time_start>首次面孔观察的时间(秒,采用协调通用时间 [UTC] 格式)
<time-end>末次面孔观察的时间(秒)。
<gender_average>-1 代表从 <time_start> 开始的平均女性估计,1 代表平均男性估计。
<age_average>对从 <time_start> 开始的追踪的年龄估计。
<boxsize_average>从 <time_start> 开始的追踪的平均框大小。

获取实时的和结束的追踪

本 API 结合了 获取实时追踪 中所述的实时 API 以及 获取结束的追踪 中所述的已终止 API。 它将同时返回实时信息以及已结束的追踪。

格式:
JSON
方法:
GET
请求
http://<servername>/local/demographics/.api?tracks-live-and-ended.json
请求参数说明
参数说明
<time>使用 time 调整要在返回中包含的时间量(秒)。 默认值为 15 分钟。

返回

请参见常见示例中的返回示例。

返回值说明
说明
<time_start>首次面孔观察的时间(秒,采用协调通用时间 [UTC] 格式)
<time-end>末次面孔观察的时间(秒)。
<gender_average>-1 代表从 <time_start> 开始的平均女性估计,1 代表平均男性估计。
<age_average>对从 <time_start> 开始的追踪的年龄估计。
<boxsize_average>从 <time_start> 开始的追踪的平均框大小。
<gender_last>末次观察时推测女性为 -1,男性为 1
<age_last>末次观察时的估计年龄。
<boxsize_last>末次观察的边框大小。

获取 FPS

此 API 检查人口统计算法使用的 FPS。

格式:
JSON
方法:
GET
请求
http://<servername>/demographics/.api?fps.json
返回
{
  "fps":<fps>
}

重启服务

重启人口统计服务

请求
http://<servername>/demographics/.apioperator?restart

重启摄像机

重启摄像机

请求
http://<servername>/demographics/.apioperator?reboot

获取统计数据

以 JSON 格式返回历史数据

格式:
JSON
方法:
GET
请求
http://<servername>/local/demographics/.api?export-json[&date=<date>][&res=<res>]
请求参数说明
参数说明
<date>YYYYMMDD 形式的日期
YYYYMMDD-YYYYMMDD 形式的日期间隔
YYYYMMDD,[..],YYYYMMDD 形式的以逗号分隔的日期
对于所有可用数据均为所有(默认)
<res>15m(默认)表示 15 分钟时段内的数据
1h 表示 1 小时时段内的数据
24h 表示 1 天时段内的数据

返回

此脚本返回 JSON 格式的数据。